手推记录-logistic regression (逻辑斯蒂回归)

本文深入探讨了线性回归和逻辑斯蒂回归的基本原理,包括目标函数、梯度下降法及局部加权线性回归等内容,并详细解析了这两种算法在实际应用中的参数更新过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先看线性回归

hθ(x)=θ0x0+θ1x1++θnxn=θTxhθ(x)=θ0x0+θ1x1+⋯+θnxn=θTx

这里的n表示该样本有n维特征。
目标函数

J(θ)=12i=1m(hθ(x(i))y(i))2J(θ)=12∑i=1m(hθ(x(i))−y(i))2

这里的i表示第i个样本。
为了求目标函数最小,采用梯度下降迭代,为了方便,假设只有一个样本

θiJ(θ)=θi12(hθ(x)y)2=(hθ(x)y)θi(hθ(x)y)=(hθ(x)y)θi(θ0x0+θ1x1++θixi++θnxny)=(hθ(x)y)xi∂∂θiJ(θ)=∂∂θi12(hθ(x)−y)2=(hθ(x)−y)∗∂∂θi(hθ(x)−y)=(hθ(x)−y)∗∂∂θi(θ0x0+θ1x1+⋯+θixi+⋯+θnxn−y)=(hθ(x)−y)∗xi

参数θiθi更新,

θi:=θiαθiJ(θ)=θiα(hθ(x)y)xiθi:=θi−α∂∂θiJ(θ)=θi−α(hθ(x)−y)∗xi

在m个样本的情况下,

θi:=θiα1mj=1m(hθ(x(j))y(j))x(j)iθi:=θi−α1m∑j=1m(hθ(x(j))−y(j))∗xi(j)

这样的梯度下降每次更新都需要所有样本,称为批梯度下降。当样本数量多的时候,训练慢

随机梯度下降法:它的具体思路是在更新每一参数时都使用一个样本来进行更新,

forj=1θitom:=α(hθ(x(j))y(j))x(j)iforj=1tom:θi=α(hθ(x(j))−y(j))∗xi(j)

但是随机梯度下降法不能得到最优解,只会在最优解附近徘徊
局部加权线性回归,将目标函数添加权值修改为,

J(θ)=12i=1mw(i)(hθ(x(i))y(i))2J(θ)=12∑i=1mw(i)∗(hθ(x(i))−y(i))2

其中,

w(i)=exp((x(i)x)22τ2)τw(i)=exp(−(x(i)−x)22τ2),τ是波长函数,控制权值下降速率

(x(i)x)(x(i)−x)很小的时候,w(i)w(i)接近1,反之接近0。也就是说,距离x越近的样本x(i)x(i)获得的权值越高。

解释一下为什么用误差的平方和作为目标函数,
首先,

y(i)=θTx(i)y(i)=θTx(i)

但是由于会有误差,所以还要加上一个误差项,

y(i)=θTx(i)+ξiy(i)=θTx(i)+ξi

根据中心极限定理,由于误差项是好多好多相互独立的因素影响的综合影响,我们有理由假设其服从高斯分布,而且均值是0,方差为某个定值δ2δ2
因此,概率密度函数为,

P(ξi)=12πδexp(ξ2i2δ2)P(ξi)=12πδexp(−ξi22δ2)

也就是,

P(y(i)|x(i);θ)=12πδexp((y(i)θTx(i))22δ2)P(y(i)|x(i);θ)=12πδexp(−(y(i)−θTx(i))22δ2)

在给定一个θθ,在x(i)x(i)的情况下,类别为y(i)y(i)的概率。
误差项又是相互独立的,那么ξiξi似然函数,

L(θ)=p(y|x;θ)=i=1mP(y(i)|x(i);θ)=i=1m12πδexp((y(i)θTx(i))22δ2)L(θ)=p(y|x;θ)=∏i=1mP(y(i)|x(i);θ)=∏i=1m12πδexp(−(y(i)−θTx(i))22δ2)

对数似然,

logL(θ)=logi=1m12πδexp((y(i)θTx(i))22δ2)=mlog12πδ+i=1m(y(i)θTx(i))22δ2logL(θ)=log∏i=1m12πδexp(−(y(i)−θTx(i))22δ2)=mlog12πδ+∑i=1m−(y(i)−θTx(i))22δ2

为了使l(θ)l(θ)极大,也就是让(y(i)θTx(i))22=J(θ)(y(i)−θTx(i))22=J(θ)极小,这也就是损失函数。

逻辑斯蒂回归是一个分类算法,以二分类为例,y{0,1}y∈{0,1},有了线性回归的基础,那么逻辑斯蒂回归就是要让hθ(x)hθ(x)的值在0~1闭区间。即,

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

其中gg函数称为logistic函数,或者sigmoid函数。
y取1的概率等于hθ(x),取0的概率为1hθ(x)1−hθ(x),即,

p(y|x;θ)=hθ(x)y(1hθ(x))1yp(y|x;θ)=hθ(x)y(1−hθ(x))1−y

似然函数,

L(θ)=p(y|x;θ)=i=1mP(y(i)|x(i);θ)=i=1mhθ(x(i))y(i)(1hθ(x(i)))1y(i)L(θ)=p(y|x;θ)=∏i=1mP(y(i)|x(i);θ)=∏i=1mhθ(x(i))y(i)(1−hθ(x(i)))1−y(i)

对数似然,

l(θ)=logL(θ)=i=1my(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))l(θ)=logL(θ)=∑i=1my(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))

梯度下降法 ,参数迭代,

θi:=θi+α1mj=1m(y(j)hθ(x(j)))x(j)iθi:=θi+α1m∑j=1m(y(j)−hθ(x(j)))∗xi(j)

线性回归和逻辑斯蒂回归迭代方式表面上一模一样,但是hθ函数并不相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值