《machine learning》6逻辑回归

6.1 离散分类问题

线性回归算法不适用分类问题。

6.2 假设表示(方程)

逻辑函数(sigmoid函数): g ( z ) = 1 1 + e − z g(z)={1\over 1+e^{-z}} g(z)=1+ez1
逻辑回归假设函数:
h θ ( x ) = g ( Θ T x ) = 1 1 + e − Θ T x h_\theta(x)=g(\Theta^Tx)={1\over 1+e^{-\Theta^Tx}} hθ(x)=g(ΘTx)=1+eΘTx1
在这里插入图片描述

h(x)指的是在给定参数 Θ \Theta Θ的前提下,y=1(患病)的概率
条件概率:
h θ ( x ) = P ( y = 1 ∣ x ; Θ ) h_\theta(x)=P(y=1|x;\Theta) hθ(x)=P(y=1x;Θ)
在这里插入图片描述

6.3 判定界限

若果 h ( x ) > = 0.5 h(x)>=0.5 h(x)>=0.5,判定会患病即" y = 1 y=1 y=1"
反之 h ( x ) < 0.5 h(x)<0.5 h(x)<0.5,判定不会患病即" y = 0 y=0 y=0"
又因为 h θ ( x ) = g ( Θ T x ) = 1 1 + e − Θ T x h_\theta(x)=g(\Theta^Tx)={1\over 1+e^{-\Theta^Tx}} hθ(x)=g(ΘTx)=1+eΘTx1。由图像可知:
Θ T x > 0 \Theta^Tx>0 ΘTx>0时, h θ ( x ) = g ( Θ T x ) > 0.5 h_\theta(x)=g(\Theta^Tx)>0.5 hθ(x)=g(ΘTx)>0.5
Θ T x < 0 \Theta^Tx<0 ΘTx<0时, h θ ( x ) = g ( Θ T x ) < 0.5 h_\theta(x)=g(\Theta^Tx)<0.5 hθ(x)=g(ΘTx)<0.5

在这里插入图片描述
假设函数: h θ ( x ) = g ( θ 0 + θ 1 x 1 + θ 2 x 2 ) h_\theta(x)=g(\theta_0+\theta_1x_1+\theta_2x_2) hθ(x)=g(θ0+θ1x1+θ2x2)
判定界限: Θ T x = 0 = θ 0 + θ 1 x 1 + θ 2 x 2 \Theta^Tx=0=\theta_0+\theta_1x_1+\theta_2x_2 ΘTx=0=θ0+θ1x1+θ2x2
下面的例子中判定界限: − 3 + x 1 + x 2 = 0 -3+x_1+x_2=0 3+x1+x2=0
在这里插入图片描述
通过构造高次多项式的判定边界函数可以获得复杂的判定边界:
在这里插入图片描述

6.4 损失函数

如果直接用线性回归中的损失函数,其中的
h ( x ) − y = g ( Θ T x ) − y = 1 1 + e − Θ T x − y h(x)-y=g(\Theta^Tx)-y={1\over 1+e^{-\Theta^Tx}}-y h(x)y=g(ΘTx)y=1+eΘTx1y
该损失函数不是凸函数,有很多局部最优解。不适用于逻辑回归。
在这里插入图片描述
使用对数函数作为损失函数。
下图所示将患病y=1作为预测前提,损失函数为 C o s t ( h θ ( x ) , y ) = − l o g ( h θ ( x ) ) Cost(h_\theta(x),y)=-log(h_\theta(x)) Cost(hθ(x),y)=log(hθ(x))。损失函数值越大,证明预测错了,其实是没患病,损失函数值很小,证明预测正确,确实患病了。
在这里插入图片描述
下图所示将没患病y=0预测前提,损失函数为 C o s t ( h θ ( x ) , y ) = − l o g ( 1 − h θ ( x ) ) Cost(h_\theta(x),y)=-log(1-h_\theta(x)) Cost(hθ(x),y)=log(1hθ(x))。损失函数值越大,证明预测错了,其实是患病了,损失函数值很小,证明预测正确,确实没患病。
在这里插入图片描述

6.5 简化损失函数并求梯度

用一个函数表示y=1和y=0的两种情况:
C o s t ( h θ ( x ) , y ) = − y l o g ( h θ ( x ) ) − ( 1 − y ) l o g ( 1 − h θ ( x ) ) Cost(h_\theta(x),y)=-ylog(h_\theta(x))-(1-y)log(1-h_\theta(x)) Cost(hθ(x),y)=ylog(hθ(x))(1y)log(1hθ(x))

损失函数:
J ( Θ ) = − 1 m ∑ i = 1 m [ l o g h θ ( x ( i ) ) + ( 1 − y i ) l o g ( 1 − h θ ( x ( i ) ) ) ] J(\Theta)=-{1\over m}\sum^m_{i=1}[logh_\theta(x^{(i)})+(1-y^{i})log(1-h_\theta(x^{(i)}))] J(Θ)=m1i=1m[loghθ(x(i))+(1yi)log(1hθ(x(i)))]
优化函数:求偏导数推得梯度函数:
θ j : = θ j − α ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x ( i ) = θ j − α ∑ i = 1 m ( 1 1 + e − Θ T x − y ( i ) ) x ( i ) \theta_j:=\theta_j-\alpha\sum^m_{i=1}(h_\theta(x^{(i)})-y^{(i)})x^{(i)}=\theta_j-\alpha\sum^m_{i=1}({1\over 1+e^{-\Theta^Tx}}-y^{(i)})x^{(i)} θj:=θjαi=1m(hθ(x(i))y(i))x(i)=θjαi=1m(1+eΘTx1y(i))x(i)
= θ j − α ∑ i = 1 m ( 1 1 + e − ( θ 0 + θ 1 x 1 + θ 2 ( x 2 ) 2 + ⋯ + ) − y ( i ) ) x ( i ) =\theta_j-\alpha\sum^m_{i=1}({1\over 1+e^{-(\theta_0+\theta_1x_1+\theta_2(x_2)^2+\cdots+)}}-y^{(i)})x^{(i)} =θjαi=1m(1+e(θ0+θ1x1+θ2(x2)2++)1y(i))x(i)
在这里插入图片描述

6.6 高级优化函数

高级优化函数:

  • 共轭梯度法
  • BFGS
  • L-BFGS
    优点:
  • 不需要手动选择学习率 α \alpha α
  • 收敛速度远远快于梯度下降
    缺点:
  • 更复杂

逻辑回归解决多类别分类问题

构造 C n 2 C^2_n Cn2个伪两类别分类问题
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值