【机器学习】逻辑回归(Linear Regression)模型推导

来源:互联网 发布:美国ip代理软件 编辑:程序博客网 时间:2024/06/15 02:57
LR中文翻译作逻辑斯蒂回归,用于二分类。为什么回归和分类搅在一起了呢。因为可以这样想:线性回归 y=θTx 得到的结果是一个实数。如果我们将这个结果“压缩”到 [0,1] 之间,那么就可以表示概率接近1的程度,进而可以用来二分类。最简单的“压缩”可以是单位阶跃函数:

但单位阶跃函数是不连续的,在求导的过程中会产生问题。所以,我们用sigmoid函数来近似单位阶跃函数:

σ(x)=11+ex

可以看到,在0附近其函数值变化较快。

从而我们得到:

  • 样本 xi 属于1的概率:

hθ(xi)=p(yi=1|xi)=σ(θTxi)=11+eθTxi

  • 样本 xi 属于0的概率:

p(yi=0|xi)=1σ(θTxi)=eθTxi1+eθTxi

将两式合并:

p(y|x)=(hθ(x))y(1hθ(x))1y

对所有样本取最大似然:

L(θ)=i=1mp(yi|xi)

hθ(x)=g(θTx)=11+eθTx
取对数得:

l(θ)=logL(θ)=logi=1mp(yi|xi)=i=1mlogp(yi|xi)=i=1mlog[(hθ(xi))yi(1hθ(xi))1yi]=i=1m[yilog(hθ(xi))+(1yi)log(1hθ(xi))]=i=1m[yilog(g(θTxi))+(1yi)log(1g(θTxi))]

sigmoid函数导数形式为: σ(x)=σ(x)(1σ(x))
参数第 j 个分量的梯度:

l(θ)θj=i=1m[yi1ggθj(1yi)11ggθj]=i=1m[yi1gg(θTxi)θj(1yi)11gg(θTxi)θj]=i=1m[yi1gg(1g)xji(1yi)11gg(1g)xji]=i=1m(yig(θTxi))xji

由于要求最大似然,所以用梯度上升法:

θjk+1=θjk+ηi=1m(yig(θTkxi))xji

阅读全文
0 0
原创粉丝点击