注:本博客定义为学习笔记,为本人通过一些材料和书籍整理而来,或许会有些许心得体会。
线性回归
模型
公式如下:
f(x)=wx+b(0)
给定一组样本(x1,y1)(x2,y1)…(xi,yi)…(xn,yn),若要用一个函数来拟合所有样本点的y值,可以用公式0来进行拟合。图如下(来自百度百科):
损失函数
L(w,b)=∑i=1n(f(x)−yi)2
最小二乘参数估计
令均方误差最小化,即:
(w∗,b∗)=argmin(w,b)∑i=1n(f(xi)−yi)2=argmin(w,b)∑i=1n(wxi+b−yi)2
分别令L(w,b)对w和b进行微分,令微分为0:
∂L(w,b)∂w=0∂L(w,b)∂b=0
求出结果如下:
wb=∑i=1nyi(xi−x¯)∑i=1nx2i−1n(∑i=1nxi)2=1n∑i=1n(yi−wxi)
多元线性回归
f(xi)=wTx+b
xi=(xi1;xi2;…;xid)
令w=(w;b)
同样应用最小二乘法进行参数估计,得
w∗=argminw(y−xw)T(y−xw)
令L(w)=(y−xw)T(y−xw),对L(w)求导为0,得:
∂L(w)∂w=2xT(y−xw)=0
逻辑回归
模型
P(Y=1|x)P(Y=0|x)=11+e−w⋅x+b=ew⋅x+b1+ew⋅x+b=1−P(Y=1|x)=11+ew⋅x+b
令w=(w;b),此时,观察:
logP(Y=1|x)P(Y=0|x)=w⋅x
即求对数之后是线性的,因此逻辑回归是对数线性模型。
逻辑回归是分类任务,图如下:
sigmoid函数
sigmoid函数公式如下:
f(x)=11+e−x
图像如下所示:

sigmoid函数有一个很好的特性,即:
f′(x)=f(x)(1−f(x))
极大似然估计
似然函数为:
L(w)=∏i=1nP(Y=1|xi)yiP(Y=0|xi)1−yi
对其求对数,得对数似然函数:
logL(w)=∑i=1n[yilogew⋅xi1+ew⋅xi+(1−yi)log11+ew⋅xi]=∑i=1n[yi(w⋅xi)−log(1+ew⋅xi)]
最大化对数似然函数,即可求出参数w的估计值。
损失函数
损失函数为负的对数似然函数:
L(w)^=−1nlogL(w)=−1n∑i=1n[yi(w⋅xi)−log(1+ew⋅xi)]
将L(w)^记为L(w),即
L(w)=−1n∑i=1n[yi(w⋅xi)−log(1+ew⋅xi)]
因此,极大化对数似然函数,即极小化损失函数。可用梯度下降法、拟牛顿法等优化方法来进行参数估计。
梯度下降
梯度下降法是一种迭代性的优化算法,先随机选取初始点w0,然后用下面的公式更新参数w,直到满足终止条件为止。
w=w−α∂L(w)w
其中,α为学习率,
∂L(w)w=−1n∑i=1n(yi−ew⋅x1+ew⋅x)xi
梯度下降过程如下:
参考资料
李航,《统计学习方法》
赵志勇,《Python机器学习算法》
周志华,《机器学习》
Peter,《机器学习实战》
寒小阳,七月在线机器学习工程师
邹博,小象学院机器学习升级版