【学习笔记】斯坦福大学公开课(机器学习) 之逻辑斯蒂回归

如果在遇到一些分类问题,用回归算法来做预测时,我们会发现这些算法得出的模型会不尽人意。甚至在一些很明显的情况下,函数值不会比1大或者比0小,即目标值 y{0,1}
针对这种情况,我们改变假设函数 hθ(x) ,把假设函数写成如下模型:

hθ(x)=g(θTx)=11+eθTx

其中
g(z)=11+ez

被称为逻辑斯蒂函数。这个函数作图如下:
逻辑斯蒂函数
从图形可以看出,当自变量 z 趋于无穷大时,函数值趋近1,反之,当自变量z趋于无穷小时,函数值趋于0。所以函数值是一直在0和1之间徘徊。
再介绍一个逻辑斯蒂函数导数的性质。
g(z)=ddz11+ez=1(1+ez)2(ez)=11+ez(11(1+ez))=g(z)(1g(z))

我们得到了逻辑斯蒂函数模型,我们如何来求 θ ?跟之前的推导一样,我们用最大似然估计来求导 θ 的值。
我们设定
P(y=1|x;θ)P(y=0|x;θ)==hθ(x)1hθx

这两个式子可以写成更简洁的形式:
p(y|x;θ)=(hθ(x))y(1hθ(x))1y

我们假设有m个样本,他们之间都是独立的,我们就可以把最大似然函数写为如下:
L(θ)=p(y⃗ |X;θ)=i=1mp(y(i)|x(i);θ)=i=1m(hθ(x(i)))y(i)(1hθ(x(i)))1y(i)

我们为了方便求得最大似然值,我们对这个式子求对数:
l(θ)=logL(θ)=i=1my(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))

我们怎样才能得到最大值,我们用 梯度上升的方法,对参数 θ 进行迭代,使得值达到最大,即 θ:=θ+αθl(θ) ,其中 α 是学习率。
接下来,我们需要求 l(θ) 的梯度:
θjl(θ)=(y1g(θTx)(1y)11g(θTx))θjg(θTx)=(y1g(θTx)(1y)11g(θTx))g(θTx)(1g(θTx))θjθTx=(y(1g(θTx))(1y)g(θTx))xj=(yhθ(x))xj

上面的推导过程运用了逻辑斯蒂回归求导公式, g(z)=g(z)(1g(z))
把求导的结果代入梯度上升公式:
θ:=θj+α((y(i)hθ(x(i)))x(i)j)

到这里就得到我们迭代过程中更新 θ 参数的式子。这个式子与线性回归的式子很相似,不同的是假设函数 hθ(x(i)) ,一个是线性回归模型,一个是逻辑斯蒂回归模型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值