4 逻辑回归
逻辑回归的假设函数为sigmoid函数,把较大范围变化的输出值挤压到(0,1)内,因此也被称为挤压函数
(4.1)
h
θ
(
x
)
=
1
1
+
e
−
θ
T
x
h_\theta(x)=\frac{1}{1+e^{-\theta^Tx}}\tag{4.1}
hθ(x)=1+e−θTx1(4.1)
h
θ
(
x
)
h_\theta(x)
hθ(x)代表输入为x时y=1的概率
4.1 决策边界
若规定 h θ ( x ) ≥ 0.5 h_\theta(x)\ge0.5 hθ(x)≥0.5时y=1, h θ ( x ) < 0.5 h_\theta(x)<0.5 hθ(x)<0.5时y=0,则可得出当 θ T x ≥ 0 \theta^Tx\ge0 θTx≥0时y=1,当 θ T x < 0 \theta^Tx<0 θTx<0时y=0
若拟合确定参数 θ \theta θ后, θ T x \theta^Tx θTx构成决策边界
- 决策边界不是训练集的属性,当给定参数 θ \theta θ后就决定了决策边界
4.2 单个样本代价函数
若用线性回归的代价函数,sigmoid函数会导致产生非凸函数,梯度下降法会陷入局部最优。
(4.2)
Cost
(
h
θ
(
x
)
,
y
)
=
{
−
l
o
g
(
h
θ
(
x
)
)
,
if
y
=
1
−
l
o
g
(
1
−
h
θ
(
x
)
)
,
if
y
=
0
\text{Cost}(h_\theta(x),y)=\begin{cases} -log(h_\theta(x)),&\text{if}\ y=1\\ -log(1-h_\theta(x)),&\text{if}\ y=0 \end{cases}\tag{4.2}
Cost(hθ(x),y)={−log(hθ(x)),−log(1−hθ(x)),if y=1if y=0(4.2)
4.3 逻辑回归函数的代价函数
(4.3) J ( θ ) = 1 m ∑ i = 1 m cost ( h θ ( x ( i ) ) , y ( i ) ) = − 1 m [ ∑ i = 1 m y ( i ) log h θ ( x ( i ) ) + ( 1 − y ( i ) ) log ( 1 − h θ ( x ( i ) ) ) ] \begin{aligned} J(\theta) &=\frac{1}{m} \sum_{i=1}^{m} \operatorname{cost}(h_{\theta}(x^{(i)}), y^{(i)}) \\ &=-\frac{1}{m}[\sum_{i=1}^{m} y^{(i)} \log h_{\theta}(x^{(i)})+(1-y^{(i)}) \log (1-h_{\theta}(x^{(i)}))] \end{aligned}\tag{4.3} J(θ)=m1i=1∑mcost(hθ(x(i)),y(i))=−m1[i=1∑my(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))](4.3)
再用不同算法使代价函数最小
4.3.1 梯度下降法
(4.4) θ j = θ j − α ∂ ∂ θ j J ( θ ) = θ j − α ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i ) \begin{aligned} \theta_j&=\theta_j-\alpha\frac{\partial}{\partial\theta_j}J(\theta)\\ &=\theta_j-\alpha\sum_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)} \end{aligned}\tag{4.4} θj=θj−α∂θj∂J(θ)=θj−αi=1∑m(hθ(x(i))−y(i))xj(i)(4.4)
- 与多元线性回归梯度下降法不同之处在于假设函数不同
- 当特征范围很大时,可同样采用特征缩放使梯度下降收敛更快
4.3.2 其他高级算法
- 共轭梯度法
- BFGS
- L-BFGS
无需手动选择学习率,且收敛速度高于梯度下降法,但算法更为复杂
4.4 多类别分类
每次提取一个类别作为正类,其余为负类,重复多次得出多个假设函数作为多个分类器
对新样本预测时,分别使用每个分类器进行预测,并汇总所有结果,分类最多的结果作为对新样本的预测结果