ML:基礎技法學習
Package:scikit-learn
課程:機器學習技法
簡介:第五講 Kernel Logistic Regression
若 \(err \geq err_{0/1}\),當縮小 \(err\) 時,相當於也是在做分類
而從圖中看來
$$ \begin{matrix} -\infty & \leftarrow & ys & \rightarrow & +\infty \\ \approx -ys & & \color{Purple}{ err_{SVM}}(s,y) & & \approx 0 \\ \approx -ys & & (ln\ 2)\cdot \color{Orange}{ err_{SCE}}(s,y) & & \approx 0 \end{matrix} $$ 故 L2-regularized logistic regression 其實就相當於在做 soft margin SVM
sklearn.kernel_ridge.KernelRidge
Package:scikit-learn
課程:機器學習技法
簡介:第五講 Kernel Logistic Regression
SVM as Regularized Model
$$
\underset{b,\mathbf{w}}{min}\ \ \frac{1}{2}\mathbf{w}^T\mathbf{w}+C\sum_{n=1}^{N}max(1-y_n(\mathbf{w}^T\mathbf{z}_n+b),0)
$$
- large margin \(\Leftrightarrow \) fewer hyperplanes \(\Leftrightarrow \) L2 regularization of short W
- soft margin \(\Leftrightarrow \) special \(\widehat{err}\)
- larger C or C \(\Leftrightarrow \) smaller \(\lambda\) \(\Leftrightarrow \) less regularization
regularized LogReg \(\Rightarrow\) approximate SVM
- linear score \(s=\mathbf{w}^T\mathbf{z}_n+b\)
- \(err_{0/1}(s,y)=[ys \le 0]\)
- \(\color{Purple}{\widehat{err}_{SVM}}(s,y) = max(1-ys,0)\)
- \(\color{Orange}{err_{SCE} }(s,y)=log_2(1+e^{-ys})\)
若 \(err \geq err_{0/1}\),當縮小 \(err\) 時,相當於也是在做分類
而從圖中看來
$$ \begin{matrix} -\infty & \leftarrow & ys & \rightarrow & +\infty \\ \approx -ys & & \color{Purple}{ err_{SVM}}(s,y) & & \approx 0 \\ \approx -ys & & (ln\ 2)\cdot \color{Orange}{ err_{SCE}}(s,y) & & \approx 0 \end{matrix} $$ 故 L2-regularized logistic regression 其實就相當於在做 soft margin SVM
Platt's Model
$$
\begin{align*}
g(x) &= \theta (A\cdot (\mathbf{w}_{SVM}^T\boldsymbol\Phi (\mathbf{x})+b_{SVM})+B)\\
&=\theta (A\cdot (\sum_{SV}\alpha _ny_nK(\mathbf{x}_n,\mathbf{x})+b_{SVM})+B)\\
&=\theta (\sum_{SV}A\alpha _ny_nK(\mathbf{x}_n,\mathbf{x})+Ab_{SVM}+B)\\
\underset{A,B}{min} &\ \ \frac{1}{N}\sum_{n=1}^{N}log\left ( 1+e^{-y_n\left (A\cdot (\underset{\boldsymbol\Phi _{SVM}(\mathbf{x}_n)}{\underbrace{\mathbf{w}_{SVM}^T\boldsymbol\Phi (\mathbf{x})+b_{SVM}}})+B \right )} \right )
\end{align*}
$$
\(\boldsymbol\Phi _{SVM}(\mathbf{x}_n)\) 可視需求代入,像是 Kernel SVM 如上推導
- 這不是 Z 空間中最好的 LogReg 解,只是還不錯的解,需用 KLR 得最好解
- 若 \(
\mathbf{w}_{SVM}\) 夠好,通常 \(A > 0\)
假如 \(A < 0\),表示 SVM 在亂做,不然怎麼會完全反向 - 若 \( b_{SVM}\) 夠好,通常 \(B \approx 0\)
- 與原本 SVM 的邊界不一定一樣,因為 \(B\) 做了平移
- 如何解 LogReg
Kernel Logistic Regression (KLR)
Representer Theorem
claim: for any L2-regularized linear model
$$ \underset{\mathbf{w}}{min}\ \ \frac{\lambda}{N}\mathbf{w}^T\mathbf{w}+\frac{1}{N}\sum_{n=1}^{N}err(y_n,\mathbf{w}^T\mathbf{z}_n) $$ optimal \(\mathbf{w}_*=\sum_{n=1}^{N}\beta _n\mathbf{z}_n\)
最佳化 \(\mathbf{w}_*\) 必是 \(\mathbf{z}_n\) 的線性組合
claim: for any L2-regularized linear model
$$ \underset{\mathbf{w}}{min}\ \ \frac{\lambda}{N}\mathbf{w}^T\mathbf{w}+\frac{1}{N}\sum_{n=1}^{N}err(y_n,\mathbf{w}^T\mathbf{z}_n) $$ optimal \(\mathbf{w}_*=\sum_{n=1}^{N}\beta _n\mathbf{z}_n\)
最佳化 \(\mathbf{w}_*\) 必是 \(\mathbf{z}_n\) 的線性組合
$$
\begin{align*}
\underset{\boldsymbol\beta}{min}\ \ E_{in}(\boldsymbol\beta) &=\underset{\boldsymbol\beta }{min}\ \ \frac{\lambda}{N}\sum_{n=1}^{N}\sum_{m=1}^{N}\beta _n\beta _mK(\mathbf{x}_n,\mathbf{x}_m)+\frac{1}{N}\sum_{n=1}^{N}ln\left ( 1+e^{-y_n\sum_{m=1}^{N}\beta _mK(\mathbf{x}_m,\mathbf{x}_n)} \right )\\
&=\underset{\boldsymbol\beta }{min}\ \ \frac{\lambda}{N}\boldsymbol\beta^T\mathbf{K}\boldsymbol\beta+\frac{1}{N}\sum_{n=1}^{N}ln\left ( 1+e^{-y_n\boldsymbol\beta^T \mathbf{K}_{(:,n)}} \right )\\
\end{align*}
$$
因無限制條件,可利用 GD/SGD/... 求解
$$
$$
\begin{align*}
\bigtriangledown E_{in}(\boldsymbol\beta) &= \frac{\lambda}{N}2 \mathbf{K}^T\boldsymbol\beta+\frac{1}{N}\sum_{n=1}^{N}\frac{-y_n \mathbf{K}_{(:,n)}}{1+e^{y_n\boldsymbol\beta^T \mathbf{K}_{(:,n)}}}\\
\end{align*}
$$
$$
- 兩種不同的角度
- KLR = linear model of \(\boldsymbol\beta\)
- \(\sum_{n=1}^{N}\sum_{m=1}^{N}\beta _n\beta _mK(\mathbf{x}_n,\mathbf{x}_m) = \boldsymbol\beta^T\mathbf{K}\boldsymbol\beta\),一種特別的 regularizer
- \(\sum_{m=1}^{N}\beta _mK(\mathbf{x}_m,\mathbf{x}_n)\) 可視同 \(\boldsymbol\beta\) 與 轉換過的資料 作內積
- kernel 作用在 轉換 與 regularizer
- KLR = linear model of \(\mathbf{w}\)
- 藏在 kernel 中,且為 L2 regularizer
- \(\boldsymbol\beta\)
- 長度為 \(N\),同資料個數
- \(\beta_n\) 通常不為 0,與 \(\alpha_n\) 相反
參考
sklearn.svm.SVCsklearn.kernel_ridge.KernelRidge
留言
張貼留言