SVM——支撐向量機【Latex原稿】
阿新 • • 發佈:2018-12-01
\documentclass[a4paper,11pt]{ctexart} \title{支援向量機} \author{} \date{} \usepackage{geometry} \usepackage{cite} \usepackage{latexsym} \usepackage{amsmath} \usepackage{amsfonts} \CTEXsetup[name={第,節}]{section} \CTEXsetup[beforeskip = {20bp plus 1ex minus 0.2ex}]{section} \CTEXsetup[afterskip = {6bp plus 0.2ex}]{section} \CTEXsetup[format = {\zihao{4}\bfseries}]{section} \CTEXsetup[name={第,小節}]{subsection} \CTEXsetup[beforeskip = {12bp plus 1ex minus 0.2ex}]{subsection} \CTEXsetup[afterskip = {6bp plus 0.2ex}]{subsection} \CTEXsetup[format = {\fontsize{13bp}{15.6bp}\selectfont\bfseries}]{subsection} \CTEXsetup[beforeskip = {12bp plus 1ex minus 0.2ex}]{subsubsection} \CTEXsetup[afterskip = {6bp plus 0.2ex}]{subsubsection} \CTEXsetup[format = {\zihao{-4}\bfseries}]{subsubsection} \geometry{ a4paper, hmargin = 2.6cm, top = 2.92cm, bottom = 3.03cm, headheight = 0.45cm, headsep = 0.55cm, footskip = 1.05cm } \begin{document} \maketitle \pagestyle{plain} \section{線性分類問題} 考慮輸入空間 $X$ 為 $\mathbb{R}^N (N \geq 1)$ 的一個子集,輸出空間為 $Y = \{-1,+1\}$,目標函式為 $f: X \to Y$。二分類任務可以表述為:利用根據未知分佈 $D$ 從樣本空間 $X$ 獨立同同分布取樣得到的樣本集合 $S = ((x_1,y_1),(x_2,y_2), \ldots, (x_m,y_m))$, 並且 $f(x_i) = y_i, \forall\; i \in [1, m]$,我們希望從假設函式空間 $H$ 中找出一個最優的 $h \in H$,使得如下泛化誤差最小: \begin{equation} R_D(h) = \Pr_{x \sim D} [h(x) \neq f(x)]. \end{equation} 一個自然而簡單的假設是目標函式為線性分類器,或者說是 $N$ 維空間中的超平面: \begin{equation} H = \{ \mathbf{x} \mapsto sign(\mathbf{w} \cdot \mathbf{x} + b): \mathbf{w} \in \mathbb{R}^N, b \in \mathbb{R}\}. \end{equation} 具有上述形式的函式 $h$ 將超平面 $\mathbf{w} \cdot \mathbf{x} + b = 0$ 兩側的點標註為 $+1$ 和 $-1$,因而上述學習問題被稱為“線性分類問題”。 \section{SVM——線性可分情形} 假設樣本集合 $S$ 是線性可分的,即存在超平面完美地將樣本集合中的正負樣本分開。由於引數空間是連續的,必然存在無窮多個在樣本集上完成分類任務的超平面。因此,我們可以選擇一個最“好”的超平面,使得正負樣本與超平面 之間具有最大邊界。 \subsection{主優化問題} 注意到對超平面的引數 $(\mathbf{w},b)$ 等比例放縮並不改變超平面的幾何性質,因此可以通過適當的放縮使得 $\min_{(\mathbf{x},y) \in S} |\mathbf{w} \cdot \mathbf{x} + b|=1$,放縮後的超平面稱為\textbf{規範超平面}。由定義可得,對樣本中的任意 $x_i(i \in [1,m])$,有 $|\mathbf{w} \cdot \mathbf{x_i} + b| \geq 1$。 從解析幾何的結論可知,空間中任意一點 $x_0 \in \mathbb{R}^N$ 到超平面 $\mathbf{w} \cdot \mathbf{x} + b = 0$ 的距離為: \begin{equation} \frac{|\mathbf{w} \cdot \mathbf{x_0} + b|}{||\mathbf{w}||}. \end{equation} 對於規範超平面,定義其邊界大小 $\rho$ 為: \begin{equation} \rho = \min_{(\mathbf{x},y) \in S} \frac{|\mathbf{w} \cdot \mathbf{x} + b|}{||\mathbf{w}||} = \frac{1}{||\mathbf{w}||} \end{equation} 因此,求取具有最大邊界的超平面可以表述為如下優化問題: \begin{eqnarray} \max_{\mathbf{w},b} && \frac{1}{||\mathbf{w}||} \nonumber\\ subject\;to: && y_i(\mathbf{w} \cdot \mathbf{x} + b) \geq 1, \forall\; i \in [1,m] \nonumber \end{eqnarray} 等價於: \begin{eqnarray} \label{eqnarray:prime} \min_{\mathbf{w},b} && \frac{1}{2}||\mathbf{w}||^2\\ subject\;to: && y_i(\mathbf{w} \cdot \mathbf{x} + b) \geq 1, \forall\; i \in [1,m] \nonumber \end{eqnarray} 顯而易見,該優化問題的目標函式為凸函式,約束條件為線性不等式組,因而是典型的二次規劃問題(QP),可以用成熟的商業求解器求解。 \subsection{對偶優化問題} 對優化問題(\ref{eqnarray:prime})引入拉格朗日乘子 $\alpha_i \geq 0, i \in [1,m]$,構造拉格朗日函式 $$L(\mathbf{w},b,\mathbf{\alpha}) = \frac{1}{2}||\mathbf{w}||^2 - \sum_{i=1}^{m}\alpha_i[y_i(\mathbf{w} \cdot \mathbf{x} + b)-1],$$ 得到原目標函式的對偶函式為 \begin{eqnarray} g(\mathbf{\alpha}) & = &\inf_{\mathbf{w},b} L(\mathbf{w},b,\mathbf{\alpha}) \nonumber\\ & = & \sum_{i=1}^{m}\alpha_i + \inf_{\mathbf{w}}\bigg\{\frac{1}{2}||\mathbf{w}||^2 - (\sum_{i=1}^{m}\alpha_i y_i\mathbf{x})\cdot\mathbf{w} \bigg\} + \inf_{b}\bigg\{- \sum_{i=1}^{m}\alpha_i y_ib\bigg\} \nonumber\\ & = & \left\{ \begin{array}{ll} \sum_{i=1}^{m}\alpha_i - \sum_{i,j=1}^{m}\alpha_i \alpha_j y_i y_j(\mathbf{x_i} \cdot \mathbf{x_j})& \textrm{如果 $\sum_{i=1}^{m}\alpha_i y_i = 0$}\\ -\infty & \textrm{其他情況}\\ \end{array} \right. \end{eqnarray} 因而,對偶問題可以表述為: \begin{eqnarray} \label{eqnarray:dual} \max_{\mathbf{\alpha}} && \sum_{i=1}^{m}\alpha_i - \sum_{i,j=1}^{m}\alpha_i \alpha_j y_i y_j(\mathbf{x_i} \cdot \mathbf{x_j})\\ subject\;to: && \sum_{i=1}^{m}\alpha_i y_i = 0 \nonumber\\ && \alpha_i \geq 0,\;\; i=1,\ldots,m \nonumber \end{eqnarray} 對偶優化問題的目標函式為凸函式,約束條件為線性不等式組,也是典型的二次規劃問題(QP)。 \subsection{支援向量} 由於原問題和對偶問題的不等式約束條件都是線性的,強對偶條件成立,故最優解滿足KKT條件: \begin{eqnarray} \label{eq:KKT1} \bigtriangledown_{\mathbf{w}}L = \mathbf{w}-\sum_{i=1}^{m} \alpha_i y_i \mathbf{x}_i = 0 &\Longrightarrow& \mathbf{w} = \sum_{i=1}^{m} \alpha_i y_i \mathbf{x}_i \\ \label{eq:KKT2} \bigtriangledown_{b}L = -\sum_{i=1}^{m} \alpha_i y_i = 0 &\Longrightarrow& \sum_{i=1}^{m} \alpha_i y_i = 0 \\ \label{eq:KKT3} \forall i, \alpha_i[y_i((\mathbf{w} \cdot \mathbf{x_i} + b)-1] = 0 &\Longrightarrow& \alpha_i = 0 \vee y_i(\mathbf{w} \cdot \mathbf{x_i} + b) = 1. \end{eqnarray} 從互補鬆弛條件(\ref{eq:KKT3})可知,若 $\mathbf{x}_i$ 不是距離分離超平面最近的點,即 $|\mathbf{w} \cdot \mathbf{x}_i + b| \neq 1$,則必有 $\alpha_i = 0$。反映在等式 (\ref{eq:KKT1})中,說明上述 $\mathbf{x}_i$ 對超平面方向的選擇沒有影響。因此,決定分離超平面方向 $\mathbf{w}$ 的只有那些使 $y_i(\mathbf{w} \cdot \mathbf{x}_i + b) = 1$ 成立的樣本點,稱這些點為\textbf{支撐向量}。 \section{SVM——線性不可分情形} 在資料線性不可分時,無法找到引數 $(\mathbf{w},b)$ 使得 $\mathbf{w}\cdot\mathbf{x}_i+b$ 與 $y_i$ 的符號一致,也就是說,對任意超平面 $\mathbf{w}\cdot\mathbf{x}+b = 0$,存在 $\mathbf{x}_i \in S$ 使得 \begin{equation} y_i[\mathbf{w}\cdot\mathbf{x}_i+b] < 1. \end{equation} 為此,我們引入鬆弛變數 $\xi_i \geq 0$,使得 \begin{equation} y_i[\mathbf{w}\cdot\mathbf{x}_i+b] \geq 1-\xi_i. \end{equation} 這樣一來,主優化問題改寫成: \begin{eqnarray} \label{eqnarray:prime2} \min_{\mathbf{w},b} && \frac{1}{2}||\mathbf{w}||^2 + C\sum_{i=1}^{m}\xi_i^p\\ subject\;to: && y_i(\mathbf{w} \cdot \mathbf{x} + b) \geq 1-\xi_i, \nonumber \\ && \xi_i \geq 0. \; i\in [1,m] \nonumber \end{eqnarray} 下面只考慮 $p=1$ 時的情形。 \subsection{對偶優化問題} 對優化問題(\ref{eqnarray:prime2})引入拉格朗日乘子 $\alpha_i,\beta_i \geq 0, i \in [1,m]$,構造拉格朗日函式 $$L(\mathbf{w},b,\mathbf{\xi},\mathbf{\alpha},\mathbf{\beta}) = \frac{1}{2}||\mathbf{w}||^2 + C\sum_{i=1}^{m}\xi_i - \sum_{i=1}^{m}\alpha_i[y_i(\mathbf{w} \cdot \mathbf{x} + b)-1+\xi_i] - \sum_{i=1}^{m}\beta_i\xi_i,$$ 得到原目標函式的對偶函式為 \begin{eqnarray} g(\mathbf{\alpha},\mathbf{\beta}) & = &\inf_{\mathbf{w},b,\mathbf{xi}} L(\mathbf{w},b,\mathbf{\xi},\mathbf{\alpha},\mathbf{\beta}) \nonumber\\ & = & \sum_{i=1}^{m}\alpha_i \nonumber\\ && + \inf_{\mathbf{w}}\bigg\{\frac{1}{2}||\mathbf{w}||^2 - (\sum_{i=1}^{m}\alpha_i y_i\mathbf{x})\cdot\mathbf{w} \bigg\} \nonumber\\ && + \inf_{b}\bigg\{- \sum_{i=1}^{m}\alpha_i y_ib\bigg\} \\ && + \inf_{\mathbf{\xi}}\bigg\{ \sum_{i=1}^{m}(C-\alpha_i-\beta_i)\xi_i\bigg\} \nonumber\\ & = & \left\{ \begin{array}{ll} \sum_{i=1}^{m}\alpha_i - \sum_{i,j=1}^{m}\alpha_i \alpha_j y_i y_j(\mathbf{x_i} \cdot \mathbf{x_j}), & \textrm{如果 $\sum_{i=1}^{m}\alpha_i y_i = 0$ 且 $\alpha_i+\beta_i = C$,}\\ -\infty, & \textrm{其他情況。}\\ \end{array} \right. \nonumber \end{eqnarray} 因而,對偶問題可以表述為: \begin{eqnarray} \max_{\mathbf{\alpha}} && \sum_{i=1}^{m}\alpha_i - \sum_{i,j=1}^{m}\alpha_i \alpha_j y_i y_j(\mathbf{x_i} \cdot \mathbf{x_j}) \nonumber\\ subject\;to: && \sum_{i=1}^{m}\alpha_i y_i = 0 \nonumber\\ && \alpha_i + \beta_i = C, \nonumber \\ && \alpha_i \geq 0, \nonumber\\ && \beta_i \geq 0, \;\; i=1,\ldots,m \nonumber \end{eqnarray} 等價於: \begin{eqnarray} \label{eqnarray:dual2} \max_{\mathbf{\alpha}} && \sum_{i=1}^{m}\alpha_i - \sum_{i,j=1}^{m}\alpha_i \alpha_j y_i y_j(\mathbf{x_i} \cdot \mathbf{x_j})\\ subject\;to: && \sum_{i=1}^{m}\alpha_i y_i = 0 \nonumber\\ && 0 \leq \alpha_i \leq C, \;\; i=1,\ldots,m \nonumber \end{eqnarray} \subsection{KKT條件} 線性不可分問題的最優解滿足如下KKT條件: \begin{eqnarray} \label{eq:KKT21} \bigtriangledown_{\mathbf{w}}L = \mathbf{w}-\sum_{i=1}^{m} \alpha_i y_i \mathbf{x}_i = 0 &\Longrightarrow& \mathbf{w} = \sum_{i=1}^{m} \alpha_i y_i \mathbf{x}_i \\ \label{eq:KKT22} \bigtriangledown_{b}L = -\sum_{i=1}^{m} \alpha_i y_i = 0 &\Longrightarrow& \sum_{i=1}^{m} \alpha_i y_i = 0 \\ \label{eq:KKT23} \bigtriangledown_{\xi_i}L = C-\alpha_i-\beta_i = 0 &\Longrightarrow& \alpha_i + \beta_i = C \\ \label{eq:KKT24} \forall i, \alpha_i[y_i((\mathbf{w} \cdot \mathbf{x_i} + b)-1+\xi_i] = 0 &\Longrightarrow& \alpha_i = 0 \vee y_i(\mathbf{w} \cdot \mathbf{x_i} + b) = 1-\xi_i.\\ \label{eq:KKT25} \forall i, \beta_i\xi_i = 0 &\Longrightarrow& \beta_i = 0 \vee \xi_i = 0. \end{eqnarray} 結合 (\ref{eq:KKT23})和(\ref{eq:KKT24}),(\ref{eq:KKT25})可改寫成: \begin{equation} \alpha_i = C \vee y_i(\mathbf{w} \cdot \mathbf{x_i} + b) = 1. \end{equation} 這說明,對於 $\alpha_i \neq 0$ 對應的支撐向量 $\mathbf{x}_i$,要麼正好落在邊界平面上: $y_i(\mathbf{w} \cdot \mathbf{x_i} + b) = 1$,要麼其對應的 $\alpha_i$ 正好等於$C$。 \section{核函式} 從對偶問題 (\ref{eqnarray:dual})和 (\ref{eqnarray:dual2})發現,優化問題的目標函式只和樣本點的內積 $(\mathbf{x}_i,\mathbf{x}_j)$ 有關。由此可以設想,把單純的內積用某種二元函式 $K(\mathbf{x}_i,\mathbf{x}_j)$ 替換,使其等效於在另一種維度的空間(稱之為\textbf{特徵空間})裡做內積運算,這樣或許能將原空間中的線性不可分問題變換成特徵空間中的線性可分問題。 \paragraph{多項式核函式} 對常數 $c >0$,定義 \texttt{d維多項式核函式}{} 為: \begin{equation} \forall \mathbf{x,x'} \in \mathbb{R}^N, K(\mathbf{x,x'}) = (\mathbf{x}\cdot\mathbf{x'}+c)^d \end{equation} \paragraph{高斯核函式} 對常數 $\sigma >0$,定義 \texttt{高斯核函式}{} 或者 \texttt{徑向基函式}{} 為: \begin{equation} \forall \mathbf{x,x'} \in \mathbb{R}^N, K(\mathbf{x,x'}) = exp\big(-\frac{||\mathbf{x'}-\mathbf{x}||^2}{2\sigma^2}\big) \end{equation} \paragraph{sigmoid核函式} 對常數 $a,b \geq 0$,定義 \texttt{sigmoid核函式}{} 為: \begin{equation} \forall \mathbf{x,x'} \in \mathbb{R}^N, K(\mathbf{x,x'}) = tanh(a(\mathbf{x}\cdot\mathbf{x'})+b) \end{equation} 因此,基於核函式的 SVM 表述為如下問題: \begin{eqnarray} \label{eqnarray:kernel} \max_{\mathbf{\alpha}} && \sum_{i=1}^{m}\alpha_i - \sum_{i,j=1}^{m}\alpha_i \alpha_j y_i y_j K(\mathbf{x_i},\mathbf{x_j})\\ subject\;to: && \sum_{i=1}^{m}\alpha_i y_i = 0 \nonumber\\ && 0 \leq \alpha_i \leq C, \;\; i=1,\ldots,m \nonumber \end{eqnarray} \end{document}