08 l2-regularized 線性模型
我們來回顧一下 SVM 模型。
$$
\begin{align}
\mathop{\arg\min}_{\mathbf{w}, b, \boldsymbol{\xi}} &\ \ \ \
\frac{1}{2} \mathbf{w}^T\mathbf{w} + C \sum _{n=1}^N \xi_n \\
\text{subject to} &\ \ \ \
\forall i, y_i (\mathbf{w}^T\mathbf{x_i} + b) \ge 1 - \xi_n \\
\text{ } &\ \ \ \
\forall n, \xi_n \ge 0
\end{align}
$$
他可以被進一步轉成
$$
\begin{align}
\mathop{\arg\min}_{\mathbf{w}, b} &\ \ \ \
\frac{1}{2} \mathbf{w}^T\mathbf{w} + C \sum _{n=1}^N max(1 - y_i (\mathbf{w}^T\mathbf{x_i} + b), 0) \\
\end{align}
$$
在 SVM 的陳述當中,有沒有發現 $\frac{1}{2} \mathbf{w}^T\mathbf{w}$ 這部份看起來跟 $l_2$ regularization 一樣。後半部份是跟誤差有關。
如果分類分對的話,$y_i (\mathbf{w}^T\mathbf{x_i} + b)$ 就會是大於等於 1,這樣的話後面整項計算起來就會是 0。
如果分類分對但是離線太近的話,$y_i (\mathbf{w}^T\mathbf{x_i} + b)$ 就會是小於 1,這樣後面整項會是一個小於 1 的值,代表離線太近了,算是些微的誤差。
如果分類都分錯,$y_i (\mathbf{w}^T\mathbf{x_i} + b)$ 根本就是負值,後面整項會是一個大於 1 的值,代表離線太遠了,算是很大的誤差。
Hinge error
這樣的誤差計算方式稱為 hinge error,也就是:
$$
E(y, \hat{y}) = max(1 - y\hat{y}, 0)
$$
$l_2$ -regularized linear model
所以我們根本可以把模型看成是一個 $l_2$ -regularized 的線性模型。
$$
\mathop{\arg\min}_{\mathbf{w}, b} \frac{1}{2} \mathbf{w}^T\mathbf{w} + C \sum _{n=1}^N E(y, \hat{y})
$$
不懂 regulariztion 的朋友請左轉 我之前寫過的鐵人文章。
基本上,你想把誤差函數換成其他的東西都可以,像是變成 kernel $l_2$ -regularized linear regression (kernel ridge regression)。
$$
y = \mathbf{w}^T\phi(\mathbf{x}) + b \\
E(y, \hat{y}) = \frac{1}{N} (y - \hat{y})^2 \\
\mathop{\arg\min}_{\mathbf{w}, b} \frac{1}{2} \mathbf{w}^T\mathbf{w} + C \sum _{n=1}^N E(y, \hat{y})
$$
或是你想要 kernel $l_2$ -regularized logistic regression。
$$
y = \mathbf{w}^T\phi(\mathbf{x}) + b \\
E(y, \hat{y}) = \frac{1}{N} log(1 + exp(-y\hat{y})) \\
\mathop{\arg\min}_{\mathbf{w}, b} \frac{1}{2} \mathbf{w}^T\mathbf{w} + C \sum _{n=1}^N E(y, \hat{y})
$$
整理
hinge error | least square error | |
---|---|---|
regression | SVR ($\epsilon$-insensitive error) | kernel ridge regression |
$$ \mathop{\arg\min} \frac{1}{2} \mathbf{w}^T\mathbf{w} + C\sum _{i=1}^N (\xi_i + \xi_i’) $$ | $$ \mathop{\arg\min} \frac{1}{N} \sum _{i=1}^N (\mathbf{w}^T\phi(\mathbf{x}_i) + b - y_i)^2 + \frac{\lambda}{2} \mathbf{w}^T\mathbf{w} $$ | |
classification | soft-margin SVM | LSSVM |
$$ \mathop{\arg\min} \frac{1}{2} \mathbf{w}^T\mathbf{w} + C\sum _{i=1}^N \xi_i $$ | $$ \mathop{\arg\min} \frac{1}{2} \mathbf{w}^T\mathbf{w} + C\sum _{i=1}^N (1 - y_i(\mathbf{w}^T\phi(\mathbf{x}_i) + b))^2 $$ |
SVR:
$$
\xi_i = max(y_i - (\mathbf{w}^T\phi(\mathbf{x}_i) + b) - \epsilon, 0) \\
\xi_i’ = max((\mathbf{w}^T\phi(\mathbf{x}_i) + b) - y_i - \epsilon, 0)
$$
soft-margin SVM:
$$
\xi_i = max(1 - y_i(\mathbf{w}^T\phi(\mathbf{x}_i) + b), 0)
$$