概述
线性回归和逻辑回归是机器学习中最基本的两个模型,线性回归一般用来解决预测问题,逻辑回归一般解决分类问题,线性回归模型和逻辑回归模型之间既有区别又有关联。
线性回归模型
假定训练数据集为
T={(x1,y1),(x2,y2),...,(xn,yn)}
拟合函数为
f(xi)=wxi+b,i=1,2,...,n
用最小二乘法,既是找到一条直线,使所有样本数据到直线的欧式距离之和最小,所以损失函数为
J(w,b)=i=1∑n(f(xi)−yi)2=i=1∑n(yi−wxi−b)2
求损失函数的最小值
argw,bminJ(w,b)=w,bmini=1∑n(f(xi)−yi)2=w,bmini=1∑n(yi−wxi−b)2
对其求导
∂w∂J(w,b)=∂w∂(∑i=1n(w2xi2+(yi−b)2−2wxi(yi−b)))=2i=1∑n(wxi2−xi(yi−b))
∂b∂J(w,b)=∂b∂(∑i=1n(w2xi2+(yi−b)2−2wxi(yi−b)))
=∂b∂(∑i=1n(w2xi2+(yi2−2byi+b2)−2wxiyi+2wxib))=2i=1∑n(b+wxi−yi)=2nb−2i=1∑n(yi−wxi)
另两个偏导等于0,求w和b
w=∑i=1nxi2∑i=1nxi(yi−b)=∑i=1nxi2∑i=1nxi(yi−yˉ+wxˉ)
=∑i=1nxi2∑i=1nxi(yi−yˉ+wxˉ)=∑i=1nxi2∑i=1n(xi(yi−yˉ)+wxixˉ))
=∑i=1nxi2−nxˉ2∑i=1n(xi(yi−yˉ))=∑i=1nxi2−nxˉ2∑i=1nxiyi−nxˉyˉ
b=n1i=1∑nyi−wn1i=1∑nxi=yˉ−wxˉ
从而得到线性回归的拟合函数
逻辑回归模型
对应二分类问题,输出
y∈{0,1},可以通过对线性回归模型添加Sigmoid激活函数实现逻辑回归模型,Sigmoid函数如下:
y=1+e−z1
它可以将
z的值转化为接近
0或
1的
y值,并且在
z=0附近变化很陡,线性回归模型加入Sigmoid激活函数后变为
y=1+e−(wx+b)1
其对数几率函数为
ln1−yy=wx+b
如果将
y视为类后验概率
p(y=1∣x),则上式可以表示为
lnp(y=0∣x)p(y=1∣x)=wx+b
所以有二项逻辑回归模型如下
⎩⎪⎨⎪⎧p(y=1∣x)=1+exp(wx+b)exp(wx+b)p(y=0∣x)=1+exp(wx+b)1st.x∈Rn,y∈{0,1}
逻辑回归比较两个条件概率的大小,将实例
x分配到概率较大的一类
假设:
P(y=1∣x)=π(x),P(y=0∣x)=1−π(x)
似然函数:
i=1∏n[π(xi)]yi[1−π(xi)]1−yi
对数似然函数:
L(w)=i=1∑n[yilogπ(xi)+(1−yi)log(1−π(xi))]
=i=1∑n[yilog1−π(xi)π(xi)+log(1−π(xi))]
=i=1∑n[yi(w⋅xi+b)−log(1+exp(w⋅xi+b))]
对
L(w)求极大值,得
w的估计值,这样问题就变成了以对数似然函数为目标函数的最优化问题,逻辑回归通常采用梯度下降或拟牛顿法
L(W)为目标函数,最优化为:
argmaxlikelihoodw(L(w))
∂w∂L(w)=i=1∑nyixi−i=1∑n1+exp(wxi+b)exp(wxi+b)xi=i=1∑n(yi−1+exp(−(wxi+b))1)xi