第六章 逻辑回归

逻辑回归 (Logistic regression)

一. 线性模型

线性模型试图学一个通过d个属性的线性组合来进行预测的函数

f(x)=w1x1+w2x2+...wdxd+bf(x)=w1x1+w2x2+...wdxd+b

f(x)=wTx+bf(x)=wTx+b

参数w,bw,b学得之后,模型就得以确定。

线性回归

回归任务的损失函数——平方误差
数据集D=(x1,y1),(x2,y2),...(xm,ym)D=(x1,y1),(x2,y2),...(xm,ym)
xx是一元 的,f(xi)=wxi+b

(w,b)=argminw,bi=1m(f(xi)yi)2(w∗,b∗)=arg⁡minw,b⁡∑i=1m(f(xi)−yi)2

=argminw,bi=1m(yiwxib)2=arg⁡minw,b⁡∑i=1m(yi−wxi−b)2

=argminw,bE(w,b)=arg⁡minw,b⁡E(w,b)

基于平方误差最小化来进行模型的求解的方法称为最小二乘法
w,bw,b求导,令导数为0就得到最优解的闭式解
E(w,b)w=2(wi=1mx2ii=1m(yib)xi)∂E(w,b)∂w=2(w∑i=1mxi2−∑i=1m(yi−b)xi)

E(w,b)b=2(mbi=1m(ywxi))∂E(w,b)∂b=2(mb−∑i=1m(y−wxi))

更一般的情况,样本x是由d个属性描述的,此时称为多元线性回归
f(X)=Xw=x(1)1x(1)2x(1)mx(2)1x(2)2x(2)mx(d)1x(d)2x(d)m111w1w2wdby=y1y2ymf(X)=Xw=[x1(1)x1(2)⋯x1(d)1x2(1)x2(2)⋯x2(d)1⋮⋮⋱⋮xm(1)xm(2)⋯xm(d)1][w1w2⋮wdb]≈y=[y1y2⋮ym]

平方误差
w=argminw(yXw)T(yXw)w∗=arg⁡minw⁡(y−Xw)T(y−Xw)

=argminwE(w)=arg⁡minw⁡E(w)

求导
E(w)w=2XT(Xwy)∂E(w)∂w=2XT(Xw−y)

导数为0
2XTXw=2XTy2XTXw=2XTy

XTXXTX为满秩矩阵(可逆矩阵)
w=(XTX)1XTyw∗=(XTX)−1XTy

X 的列数大于行数,则XTXXTX不满秩 为什么??

广义线性模型

线性回归模型

y=wTx+by=wTx+b

对数线性回归模型
lny=y=wTx+blny=y′=wTx+b

更一般地, g(.)g(.)单调可微
y=g1(wT,x+b)y=g−1(wT,x+b)

二. 逻辑回归(对数几率回归)

逻辑回归是一个分类算法,因为它的原理里面却残留着回归模型的影子。(回归模型+logistic function)
在广义线性模型中我们得到回归模型产生的预测值z=wTx+bz=wTx+b,
对于二分类任务只需要将z映射到y{0,1}y∈{0,1}
逻辑回归就是用对数几率函数(logistic function)或者称sigmoid函数

y=11+ez=11+e(wTx+b)=e(wTx+b)e(wTx+b)+1y=11+e−z=11+e−(wTx+b)=e(wTx+b)e(wTx+b)+1

这里写图片描述
预测结果z大于0,判为正例;小于0判为反例。(阶跃函数也可以办得到)
但是logistic function 单调可微,不仅仅预测出类别,还可以得到近似概率。
yy视为样本作为正例的可能性,则1y是其反例的可能性。
P(y=1|x)=e(wTx+b)e(wTx+b)+1P(y=1|x)=e(wTx+b)e(wTx+b)+1

P(y=0|x)=1e(wTx+b)+1P(y=0|x)=1e(wTx+b)+1

定义对数几率为
logP(y=1|x)P(y=0|x)=wTx+blogP(y=1|x)P(y=0|x)=wTx+b

对数几率是输入x的线性函数

模型+策略+算法

二元的逻辑回归算法的模型是学习条件概率

P(y=1|x)=e(wTx+b)e(wTx+b)+1P(y=1|x)=e(wTx+b)e(wTx+b)+1

P(y=0|x)=1e(wTx+b)+1P(y=0|x)=1e(wTx+b)+1

策略令每个样本属于其真实标记的概率越大越好,(似然函数最大化)
给定数据集{(xi,yi)}mi=1{(xi,yi)}i=1m, 对数似然函数
l(w,b)=i=1mlnp(yi|xi;w,b)l(w,b)=∑i=1mlnp(yi|xi;w,b)

算法
为方便表示,(w,b)(w,b)其实可以表示在一起,见上多元线性回归公式部分w=(w;b);x=(x,1)w=(w;b);x=(x,1)

P(y=1|x)=π(x),P(y=0|x)=1π(x)P(y=1|x)=π(x),P(y=0|x)=1−π(x)


p(yi|xi;w)=π(x)yi(1π(x))1yip(yi|xi;w)=π(x)yi(1−π(x))1−yi

重写对数似然函数

l(w)=i=1mlnp(yi|xi;w)l(w)=∑i=1mlnp(yi|xi;w)

=i=1mln[π(x)yi(1π(x))1yi]=∑i=1mln[π(x)yi(1−π(x))1−yi]

=i=1m[yilnπ(xi)+(1yi)ln(1π(xi))]=∑i=1m[yilnπ(xi)+(1−yi)ln(1−π(xi))]

=i=1m[yilnπ(xi)1π(xi)+ln(1π(xi))]=∑i=1m[yilnπ(xi)1−π(xi)+ln(1−π(xi))]

=i=1m[yi(wTxi)ln(1+ewTxi)]=∑i=1m[yi(wTxi)−ln(1+ewTxi)]

求梯度
Lw=i=1myixTiewTxi1+ewTxixTi∂L∂w=∑i=1myixiT−ewTxi1+ewTxixiT

=i=1m(yiπ(xi))xTi=∑i=1m(yi−π(xi))xiT

更新公式
w=wηi=1m(yiπ(xi))xTiw=w−η∑i=1m(yi−π(xi))xiT

梯度下降 更新公式 。。。收敛得到的解是最优解,因为目标函数是凸的
多项逻辑回归 多分类。。。

参考文献
【1】周志华 《机器学习》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值