注:本博客定义为学习笔记,为本人通过一些材料和书籍整理而来,或许会有些许心得体会。
线性回归
模型
公式如下:
f(x)=wx+b(0)
(0)
f
(
x
)
=
w
x
+
b
给定一组样本 (x1,y1)(x2,y1)…(xi,yi)…(xn,yn) ( x 1 , y 1 ) ( x 2 , y 1 ) … ( x i , y i ) … ( x n , y n ) ,若要用一个函数来拟合所有样本点的y值,可以用公式0来进行拟合。图如下(来自百度百科):
损失函数
L(w,b)=∑i=1n(f(x)−yi)2
L
(
w
,
b
)
=
∑
i
=
1
n
(
f
(
x
)
−
y
i
)
2
最小二乘参数估计
令均方误差最小化,即:
(w∗,b∗)=argmin(w,b)∑i=1n(f(xi)−yi)2=argmin(w,b)∑i=1n(wxi+b−yi)2
(
w
∗
,
b
∗
)
=
arg
min
(
w
,
b
)
∑
i
=
1
n
(
f
(
x
i
)
−
y
i
)
2
=
arg
min
(
w
,
b
)
∑
i
=
1
n
(
w
x
i
+
b
−
y
i
)
2
分别令L(w,b)对w和b进行微分,令微分为0:
∂L(w,b)∂w=0∂L(w,b)∂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)
w
=
∑
i
=
1
n
y
i
(
x
i
−
x
¯
)
∑
i
=
1
n
x
i
2
−
1
n
(
∑
i
=
1
n
x
i
)
2
b
=
1
n
∑
i
=
1
n
(
y
i
−
w
x
i
)
多元线性回归
f(xi)=wTx+b
f
(
x
i
)
=
w
T
x
+
b
xi=(xi1;xi2;…;xid) x i = ( x i 1 ; x i 2 ; … ; x i d )
令 w=(w;b) w = ( w ; b )
同样应用最小二乘法进行参数估计,得
w∗=argminw(y−xw)T(y−xw)
w
∗
=
arg
min
w
(
y
−
x
w
)
T
(
y
−
x
w
)
令 L(w)=(y−xw)T(y−xw) L ( w ) = ( y − x w ) T ( y − x w ) ,对L(w)求导为0,得:
∂L(w)∂w=2xT(y−xw)=0
∂
L
(
w
)
∂
w
=
2
x
T
(
y
−
x
w
)
=
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
P
(
Y
=
1
|
x
)
=
1
1
+
e
−
w
⋅
x
+
b
=
e
w
⋅
x
+
b
1
+
e
w
⋅
x
+
b
P
(
Y
=
0
|
x
)
=
1
−
P
(
Y
=
1
|
x
)
=
1
1
+
e
w
⋅
x
+
b
令 w=(w;b) w = ( w ; b ) ,此时,观察:
logP(Y=1|x)P(Y=0|x)=w⋅x
l
o
g
P
(
Y
=
1
|
x
)
P
(
Y
=
0
|
x
)
=
w
⋅
x
即求对数之后是线性的,因此逻辑回归是对数线性模型。
逻辑回归是分类任务,图如下:
sigmoid函数
sigmoid函数公式如下:
f(x)=11+e−x
f
(
x
)
=
1
1
+
e
−
x
图像如下所示:
sigmoid函数有一个很好的特性,即:
f′(x)=f(x)(1−f(x))
f
′
(
x
)
=
f
(
x
)
(
1
−
f
(
x
)
)
极大似然估计
似然函数为:
L(w)=∏i=1nP(Y=1|xi)yiP(Y=0|xi)1−yi
L
(
w
)
=
∏
i
=
1
n
P
(
Y
=
1
|
x
i
)
y
i
P
(
Y
=
0
|
x
i
)
1
−
y
i
对其求对数,得对数似然函数:
logL(w)=∑i=1n[yilogew⋅xi1+ew⋅xi+(1−yi)log11+ew⋅xi]=∑i=1n[yi(w⋅xi)−log(1+ew⋅xi)]
log
L
(
w
)
=
∑
i
=
1
n
[
y
i
log
e
w
⋅
x
i
1
+
e
w
⋅
x
i
+
(
1
−
y
i
)
log
1
1
+
e
w
⋅
x
i
]
=
∑
i
=
1
n
[
y
i
(
w
⋅
x
i
)
−
log
(
1
+
e
w
⋅
x
i
)
]
最大化对数似然函数,即可求出参数w的估计值。
损失函数
损失函数为负的对数似然函数:
L(w)^=−1nlogL(w)=−1n∑i=1n[yi(w⋅xi)−log(1+ew⋅xi)]
L
(
w
)
^
=
−
1
n
log
L
(
w
)
=
−
1
n
∑
i
=
1
n
[
y
i
(
w
⋅
x
i
)
−
log
(
1
+
e
w
⋅
x
i
)
]
将 L(w)^ L ( w ) ^ 记为 L(w) L ( w ) ,即
L(w)=−1n∑i=1n[yi(w⋅xi)−log(1+ew⋅xi)]
L
(
w
)
=
−
1
n
∑
i
=
1
n
[
y
i
(
w
⋅
x
i
)
−
log
(
1
+
e
w
⋅
x
i
)
]
因此,极大化对数似然函数,即极小化损失函数。可用梯度下降法、拟牛顿法等优化方法来进行参数估计。
梯度下降
梯度下降法是一种迭代性的优化算法,先随机选取初始点
w0
w
0
,然后用下面的公式更新参数w,直到满足终止条件为止。
w=w−α∂L(w)w
w
=
w
−
α
∂
L
(
w
)
w
其中, α α 为学习率,
∂L(w)w=−1n∑i=1n(yi−ew⋅x1+ew⋅x)xi
∂
L
(
w
)
w
=
−
1
n
∑
i
=
1
n
(
y
i
−
e
w
⋅
x
1
+
e
w
⋅
x
)
x
i
梯度下降过程如下:
参考资料
李航,《统计学习方法》
赵志勇,《Python机器学习算法》
周志华,《机器学习》
Peter,《机器学习实战》
寒小阳,七月在线机器学习工程师
邹博,小象学院机器学习升级版