Logistic Regrestion (逻辑斯蒂克回归)
为什么使用Logistic regression
给定训练数据,有无数种Linear regression分类(超平面 W x + b Wx+b Wx+b),无法确定两个超平面孰优孰劣。导致了线性回归模型分类的方法鲁棒性差,在整体数据上分类精度较差。针对上述问题,引入了Logistic regression。
什么是Logistic regression
Logistic regression采用假设检验的思想,设
y
^
=
P
(
y
=
1
∣
x
,
θ
)
=
1
1
+
e
−
θ
T
x
θ
=
[
w
1
,
w
2...
w
n
,
b
]
,
x
=
[
x
1
,
x
2...
x
n
,
1
]
\hat y=P(y=1| x,\theta) = \frac 1 {1+e^{-\theta^Tx}}\\ \theta = [w1, w2...wn,b], x =[x1,x2...xn,1]
y^=P(y=1∣x,θ)=1+e−θTx1θ=[w1,w2...wn,b],x=[x1,x2...xn,1]
概率P表示假设:
y
=
1
y=1
y=1 的置信度。同理可得
1
−
y
^
=
P
(
y
=
0
∣
x
,
θ
)
=
e
−
θ
T
x
1
+
e
−
θ
T
x
1-\hat y=P(y=0| x,\theta) = \frac {e^{-\theta^Tx}} {1+e^{-\theta^Tx}}
1−y^=P(y=0∣x,θ)=1+e−θTxe−θTx
表示假设y=0的置信度。
令
P
(
Y
∣
x
,
θ
)
=
y
^
y
+
(
1
−
y
^
)
1
−
y
P(Y|x,\theta) = \hat y ^y + (1-\hat y)^{1-y}
P(Y∣x,θ)=y^y+(1−y^)1−y
示整体的假设检验概率。 使用log函数对P进行简化:
l
o
g
P
=
y
l
o
g
(
y
^
)
+
(
1
−
y
)
l
o
g
(
1
−
y
^
)
log P = y log(\hat y) + (1-y)log(1-\hat y)
logP=ylog(y^)+(1−y)log(1−y^)
l
o
g
P
log P
logP 表示全体假设成立的概率。Logistic regression 目标为使得全体假设成立的概率最大化所对应的参数
θ
\theta
θ .
所以,由此可以得到用于优化的损失函数 :
L
o
s
t
(
x
,
θ
)
=
−
l
o
g
P
=
−
y
l
o
g
(
y
^
)
−
(
1
−
y
)
l
o
g
(
1
−
y
^
)
\begin{align*} Lost(x,\theta) &= -log P \\ &= -y log(\hat y) - (1-y)log(1-\hat y)\\ \tag{5} \end{align*}
Lost(x,θ)=−logP=−ylog(y^)−(1−y)log(1−y^)
其中,计算置信度的函数为sigmoid函数:
s
i
g
m
o
i
d
(
x
)
=
1
1
+
e
−
x
(6)
sigmoid(x) = \frac 1 {1+e^{-x}}\tag{6}
sigmoid(x)=1+e−x1(6)
计算梯度:
d
w
i
=
(
y
^
−
y
)
×
x
i
d
b
=
y
^
−
y
(7)
dw_i = (\hat y -y)\times x_i\\ db = \hat y - y \tag{7}
dwi=(y^−y)×xidb=y^−y(7)