未完待续,欢迎大家点赞收藏关注博主,谢谢支持
SGD的数学细节
给定一系列训练数据:
( x 1 , y 1 ) , … , ( x n , y n ) (x_1, y_1), \ldots, (x_n, y_n) (x1,y1),…,(xn,yn) 其中 x i ∈ R m x_i \in \mathbf{R}^m xi∈Rm 是点的坐标, y i ∈ R y_i \in \mathcal{R} yi∈R ( y i ∈ { − 1 , 1 } y_i \in\{-1, 1\} yi∈{−1,1} )是分类标签。
我们的目标是训练出一个线性评价函数
f
(
x
)
=
w
T
x
+
b
f(x) = w^T x + b
f(x)=wTx+b ,模型参数为
w
∈
R
m
w \in \mathbf{R}^m
w∈Rm ,截距为
b
∈
R
b \in \mathbf{R}
b∈R.
给0-1分类做预测,时 我们看
f
(
x
)
f(x)
f(x)的符号. 模型参数通过最小化由以下式子给出的正则化训练误差来得到:
E
(
w
,
b
)
=
1
n
∑
i
=
1
n
L
(
y
i
,
f
(
x
i
)
)
+
α
R
(
w
)
E(w,b) = \frac{1}{n}\sum_{i=1}^{n} L(y_i, f(x_i)) + \alpha R(w)
E(w,b)=n1i=1∑nL(yi,f(xi))+αR(w)
L
L
L 是一个损失函数,衡量了模型的拟合程度 ,
R
R
R是一个正则化项(也叫作惩罚),对系统的复杂性进行惩罚;
α
>
0
\alpha>0
α>0 is a 非负的超参数,控制了正则化的强度。
对
L
L
L的不同选择可以实现不同的分类器或回归器:
- Hinge (soft-margin): equivalent to Support Vector Classification: L ( y i , f ( x i ) ) = max ( 0 , 1 − y i f ( x i ) ) L(y_i, f(x_i)) = \max(0, 1 - y_i f(x_i)) L(yi,f(xi))=max(0,1−yif(xi)).
- Perceptron: L ( y i , f ( x i ) ) = max ( 0 , − y i f ( x i ) ) L(y_i, f(x_i)) = \max(0, - y_i f(x_i)) L(yi,f(xi))=max(0,−yif(xi)).
- Modified Huber: L ( y i , f ( x i ) ) = max ( 0 , − y i f ( x i ) ) L(y_i, f(x_i)) = \max(0, - y_i f(x_i)) L(yi,f(xi))=max(0,−yif(xi)), if y i f ( x i ) > 1 y_i f(x_i) >1 yif(xi)>1 and L ( y i , f ( x i ) ) = − 4 y i f ( x i ) L(y_i, f(x_i)) = -4 y_i f(x_i) L(yi,f(xi))=−4yif(xi) otherwise.
- Log: equivalent to Logistic Regression. L ( y i , f ( x i ) ) = log ( 1 + exp ( − y i f ( x i ) ) ) L(y_i, f(x_i)) = \log(1 + \exp (-y_i f(x_i))) L(yi,f(xi))=log(1+exp(−yif(xi))).
- Least-Squares: Linear regression (Ridge or Lasso depending on R). ∣ y i − f ( x i ) ∣ ≤ ε |y_i - f(x_i)| \leq \varepsilon ∣yi−f(xi)∣≤ε.
- Huber: less sensitive to outliers than least-squares. It is equivalent to least squares when ∣ y i − f ( x i ) ∣ ≤ ε |y_i - f(x_i)| \leq \varepsilon ∣yi−f(xi)∣≤ε and L ( y i , f ( x i ) ) = ε ∣ y i − f ( x i ) ∣ − 1 2 ε 2 L(y_i, f(x_i)) = \varepsilon |y_i - f(x_i)| - \frac{1}{2}\varepsilon^2 L(yi,f(xi))=ε∣yi−f(xi)∣−21ε2, otherwise.
- Epsilon-Insensitive: (soft-margin) equivalent to Support Vector Regression. L ( y i , f ( x i ) ) = max ( 0 , ∣ y i − f ( x i ) ∣ − ε ) L(y_i, f(x_i)) = \max(0, |y_i - f(x_i)| - \varepsilon) L(yi,f(xi))=max(0,∣yi−f(xi)∣−ε).
上述所有损失函数都可以视为错误分类错误(0-1 损失)的上限,如下图所示。
正则化项 ( penalty 参数) 的选择包括如下几种形式:
- L2 norm: R ( w ) : = 1 2 ∑ j = 1 m w j 2 = ∣ ∣ w ∣ ∣ 2 2 R(w) := \frac{1}{2} \sum_{j=1}^{m} w_j^2 = ||w||_2^2 R(w):=21∑j=1mwj2=∣∣w∣∣22
- L1 norm: R ( w ) : = ∑ j = 1 m ∣ w j ∣ R(w) := \sum_{j=1}^{m} |w_j| R(w):=∑j=1m∣wj∣.这导致稀疏的解
- Elastic Net:
R
(
w
)
:
=
ρ
2
∑
j
=
1
n
w
j
2
+
(
1
−
ρ
)
∑
j
=
1
m
∣
w
j
∣
R(w) := \frac{\rho}{2} \sum_{j=1}^{n} w_j^2 +(1-\rho) \sum_{j=1}^{m} |w_j|
R(w):=2ρ∑j=1nwj2+(1−ρ)∑j=1m∣wj∣, L2 和 L1的凸组合, 其中
ρ
\rho
ρ 为
1 - l1_ratio
.
下图显示了二维参数空间中不同正则化项的轮廓 ( m = 2 m=2 m=2) ,当 R ( w ) = 1 R(w)=1 R(w)=1时.
最小均方误差线性回归
问题描述:
输入一组带标签的样本集,一共有
m
m
m个数据:
x
1
,
x
2
,
…
,
x
m
\mathbf{x}_{1},\mathbf{x}_{2},\dots,\mathbf{x}_{m}
x1,x2,…,xm,对应的标签为向量
y
=
[
y
1
,
y
2
,
…
,
y
m
]
\mathbf{y}=[{y}_{1},{y}_{2},\dots,y_{m}]
y=[y1,y2,…,ym],每个样本
x
i
\mathbf{x}_{i}
xi为一个
d
d
d维向量,代表
d
d
d个特征,标签为
y
i
y_{i}
yi(标量).
把数据集
D
D
D 表示为一个
m
×
d
m \times d
m×d大小的矩阵
X
X
X ,其中每行对应于一个样本,该行的
d
d
d 个元素对应于样本的
d
d
d 个属性值:
X
=
[
x
1
x
2
⋮
x
m
]
(3)
X= \left[ \begin{matrix} \mathbf{x}_{1} \\ \mathbf{x}_{2} \\ \vdots \\ \mathbf{x}_{m} \end{matrix} \right] \tag{3}
X=⎣⎢⎢⎢⎡x1x2⋮xm⎦⎥⎥⎥⎤(3)
其中 x i = [ x i , 1 , x i , 2 , … , x i , d ] \mathbf{x}_{i}=[x_{i,1},x_{i,2},\dots,x_{i,d}] xi=[xi,1,xi,2,…,xi,d]
我们的目标是通过学习得到一个线性评价函数
f
(
x
i
)
=
x
i
w
T
+
b
f(\mathbf{x}_{i})=\mathbf{x}_{i}\mathbf{w}^{T}+b
f(xi)=xiwT+b
其中系数
w
=
[
w
1
,
.
.
.
,
w
d
]
\mathbf{w} = [w_1, ..., w_d]
w=[w1,...,wd]
截距为
b
b
b(标量)
使得残差平方和:
∑
i
=
1
m
(
y
i
−
f
(
x
i
)
)
2
=
∣
∣
f
(
X
)
−
y
∣
∣
2
2
=
∣
∣
X
w
T
+
b
−
y
∣
∣
2
2
\sum\limits_{i=1}^{m}(y_{i}-f(\mathbf{x}_{i}))^{2}=||f(X) - \mathbf{y}||_2^2=||X\mathbf{w}^T+b - \mathbf{y}||_2^2
i=1∑m(yi−f(xi))2=∣∣f(X)−y∣∣22=∣∣XwT+b−y∣∣22最小
下面对最佳的
w
\mathbf{w}
w和
b
b
b求解
以下详细推导过程摘自南瓜书
算法
为了便于计算,我们我们把 w \mathbf{w} w 和 b 合并成一个向量 : w ^ = [ w , b ] \hat\mathbf{w}=[\mathbf{w},b] w^=[w,b],并把目标函数化成关于 w ^ \hat\mathbf{w} w^的形式
令
E
w
^
=
(
y
−
X
w
^
)
T
(
y
−
X
w
^
)
E_{\hat\mathbf{w}}=(\mathbf{y}-\mathbf{X}\hat\mathbf{w})^{T}(\mathbf{y}-\mathbf{X}\hat\mathbf{w})
Ew^=(y−Xw^)T(y−Xw^), 下面令目标函数对
w
^
\hat\mathbf{w}
w^求微分
令上式为零可得
w
^
\hat\mathbf{w}
w^ 的最优解