1.简介
回归是指预测的输出值为连续的实值; 线性是说预测函数是属性的线性组合.
f
(
x
)
=
w
T
x
+
b
(1)
f(\boldsymbol x)=\boldsymbol w^T\boldsymbol x+b \tag 1
f(x)=wTx+b(1)
线性模型(linear model)简单, 易于建模, 但却蕴含着机器学习的重要思想.由于
w
\mathbf w
w直观地表达了各属性在预测中的重要性, 所以线性模型有着很好的可解释性(comprehensibility).
2. 目标函数
均方误差, square loss, 是回归任务中最常用的性能度量. 它有着很好的几何意义, 因为对应的是常用的欧几里得距离.
所以, 用
w
∗
,
b
∗
分别表示模型中
w
,
b
的
解
w^*,b^* \text {分别表示模型中} w, b的解
w∗,b∗分别表示模型中w,b的解,则
(
w
∗
,
b
∗
)
=
arg
min
w
,
b
∑
[
y
i
−
(
w
T
x
i
+
b
)
]
2
(2)
(\boldsymbol w^*,b^*)=\arg \min_{\boldsymbol w,b} \sum [y_i- (\boldsymbol w^T\boldsymbol x_i+b)]^2 \tag 2
(w∗,b∗)=argw,bmin∑[yi−(wTxi+b)]2(2)
3. 求解算法
3.1 最小二乘法
least square method.
基于均方误差最小化进行模型求解的方法称为最小二乘法.
这里为线性最小二乘法, 可求得问题的闭式解, 是 全局最优.
将式(2)做些改动, w由θ表示, b忽略, 同时改写为矩阵形式, 得
J
(
θ
)
=
1
2
(
X
θ
−
Y
)
T
(
X
θ
−
Y
)
J(\theta)=\frac 12 (X\theta-Y)^T(X\theta-Y)
J(θ)=21(Xθ−Y)T(Xθ−Y)
where
X
∈
R
m
∗
n
,
θ
∈
R
n
∗
1
,
Y
∈
R
m
∗
1
X\in R^{m*n}, \theta\in R^{n*1},Y\in R^{m*1}
X∈Rm∗n,θ∈Rn∗1,Y∈Rm∗1
闭式解为:
θ
∗
=
(
X
T
X
)
−
1
X
T
Y
\theta^*=(X^TX)^{-1}X^TY
θ∗=(XTX)−1XTY
直观
记
E
(
w
,
b
)
=
∑
i
=
1
m
[
y
i
−
(
w
T
x
i
+
b
)
]
2
(3)
E_{(w,b)}=\sum_{i=1}^m [y_i- (\boldsymbol w^T\boldsymbol x_i+b)]^2 \tag 3
E(w,b)=i=1∑m[yi−(wTxi+b)]2(3)
先考虑最简单的情形,
x
⃗
\vec x
x向量只有一维, 那么分别对w和b进行求导(机器学习西瓜版Page-54):
∇
w
E
(
w
,
b
)
=
2
(
w
∑
i
=
1
m
x
i
2
−
∑
i
=
1
m
(
y
i
−
b
)
x
i
)
(3.1)
\nabla_w E(w,b)=2(w\sum_{i=1}^m x_i^2-\sum_{i=1}^m (y_i-b)x_i) \tag {3.1}
∇wE(w,b)=2(wi=1∑mxi2−i=1∑m(yi−b)xi)(3.1)
∇
b
E
(
w
,
b
)
=
2
(
m
b
−
∑
i
=
1
m
(
y
i
−
w
i
)
)
(3.2)
\nabla_b E(w,b)=2(mb-\sum_{i=1}^m (y_i-w_i)) \tag{3.2}
∇bE(w,b)=2(mb−i=1∑m(yi−wi))(3.2)
然后令(3.1)式与(3.2)式为零可得到w和b最优解的闭式(closed-form)解
w
=
∑
i
=
1
m
y
i
(
x
i
−
x
ˉ
)
∑
i
=
1
m
x
i
2
−
1
m
(
∑
i
=
1
m
x
i
)
2
(3.3)
w=\frac{\sum_{i=1}^m y_i(x_i-\bar x)}{\sum_{i=1}^m x_i^2-\frac 1 m(\sum_{i=1}^m x_i)^2} \tag {3.3}
w=∑i=1mxi2−m1(∑i=1mxi)2∑i=1myi(xi−xˉ)(3.3)
b
=
1
m
∑
i
=
1
m
(
y
i
−
w
x
i
)
(3.4)
b=\frac 1 m \sum_{i=1}^m(y_i-wx_i) \tag{3.4}
b=m1i=1∑m(yi−wxi)(3.4)
3.2 迭代法
梯度下降法, 牛顿法等, 这些属于迭代法, 求得的为局部最优.
参考
- sklearn, linear_model