Support Vector Machine ์์๋ณด๊ธฐ
Back to : dl-theory
์ด ๋งํฌ ์ supervised learning setup์ ๊ธฐ๋ฐํฉ๋๋ค.
Support Vector Machines
๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ Linear Classification model ์ค ํ๋์ธ support vector machine (SVM) ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.
์ด๋ค ๋ฐ์ดํฐ $x_1, \dots x_n$ ๊ณผ ์ด๋ค์ โboolean labelโ ์ด ์ฃผ์ด์ ธ ์๋ค๊ณ ์๊ฐํ๊ณ , ์ด๋ค์ ๋ถ๋ฅํ๋ ๋ฌธ์ ๋ฅผ ์๊ฐํ๊ฒ ์ต๋๋ค. ์ฆ, $y_i \in \Set{1, -1}$ ์ด๊ณ , ์ฌ๊ธฐ์ $f : \R^n \to \Set{1, -1}$์ ์ถ์ธกํ๊ณ ์ถ์๋ฐ, $f(x_i) = y_i$ ๋ฅผ ์๊ณ ์๋ ์ํฉ์ ๋๋ค.
๊ฐ์ฅ ๊ฐ๋จํ ๋ชจ๋ธ๋ก, ๊ณต๊ฐ์์ ์ดํ๋ฉด์ ํ๋ ๊ทธ์ด์ ๊ทธ ์๋ 1, ์๋๋ -1๋ก ๋๋ ๋ฒ๋ฆฌ๋ ๋ฐฉ๋ฒ์ ์๊ฐํ ์ ์์ต๋๋ค. ์ฆ, parameter $\theta = (w, b)$ ์ ๋ํด, ๋ค์๊ณผ ๊ฐ์ ๋ชจ๋ธ์ ์ก์ต๋๋ค. \(g_{w, b}(x) = \sgn(w^T x + b)\) (์ฌ๊ธฐ์ $\sgn$์ ์์/์์์ ๊ฐ๊ฐ 1, -1์ ๋ถ์ฌํ๋ ํจ์์ ๋๋ค) ์ฐ๋ฆฌ๋ ์ด ๋ชจ๋ธ์ด $f$๋ฅผ ์ approximateํ๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค. ์ด๋ $w$์ $b$์ ๋ฐ๋ผ decision boundary (1/-1์ ๊ฐ๋ฅด๋ ์ ) ์ด ์ดํ๋ฉด ํํ๋ก ๋ํ๋๊ธฐ ๋๋ฌธ์, ์ด๋ฅผ โLinear Classifierโ ๋ผ ํ ์ ์์ต๋๋ค.
์ด์ , ์ฐ๋ฆฌ๋ ๋ค์์ ์ต์ํํ๋ $w, b$๋ฅผ ์๊ฐํ๋ฉด ๋ฉ๋๋ค. \(\underset{w \in \R^n, b \in \R}{\minimize}\ \abs{g_{w, b}(x_i) - y_i}^2\) ์ด์ฐจํผ $\abs{g_{w, b}(x_i) - y_i}$๋ 0์ด๊ฑฐ๋ ($g$๊ฐ ๋ง์ ๊ฒฝ์ฐ) 2์ด๋ฏ๋ก ($g$๊ฐ ํ๋ฆฐ ๊ฒฝ์ฐ) ์ ๊ณฑ์ ํ๋ ๋ง๋ ๋ณ๋ก ์๊ด์ ์์ต๋๋ค.
Large Margin Classification
๋ง์ฝ, โ์ฌ๋ฐ๋ฅธ ๊ฒฐ๊ณผโ ๊ฐ ์ฌ๋ฌ ๊ฐ์ธ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด ๋ณด๊ฒ ์ต๋๋ค. ์ฆ, \(\underset{w \in \R^n, b \in \R}{\minimize}\ \abs{g_{w, b}(x_i) - y_i}^2\) ์ด ๋ฌธ์ ์์, ๊ฒฐ๊ณผ๊ฐ์ด 0์ธ $w, b$๊ฐ ์ฌ๋ฌ ๊ฐ์ธ ๊ฒฝ์ฐ์ ๋๋ค. ์ด๋ฅผ ๊ทธ๋ฆผ์ผ๋ก ๋ํ๋ด๋ฉด,
(๊ทธ๋ฆผ ์ถ์ฒ : Wikipedia)
์ด ๊ทธ๋ฆผ์์, ์ด๋ก์ ์ $H_3$์ ๋ถ๋ฅ๊ฐ ์ฌ๋ฐ๋ฅด์ง ์์ผ๋ฏ๋ก ์น์ฐ๊ณ , $H_1$ ๊ณผ $H_2$๋ฅผ ๋น๊ตํ๋ ์ํฉ์ ๋๋ค. $H_1$๋ณด๋ค $H_2$๊ฐ ๋ญ๊ฐ ์ฌ์ด์ ๋น ๊ณต๊ฐ์ ๊น๋ํ๊ฒ ์๋ผ์ฃผ๊ณ ์๋ ๋๋์ ๋ฐ๋๋ฐ, ์ด๋ ์ ์์ ๋ฐ์ดํฐ๊ฐ ๋จ์ด์ง ์ ๋ - margin ์ด ๋ณด๋ค ํฌ๊ธฐ ๋๋ฌธ์ ๋๋ค. margin์ด ํฌ๋ค๋ ๊ฒ์, ์ง๊ธ ๋ณธ ๋ฐ์ดํฐ์ โ๋น์ทํโ ๋ฐ์ดํฐ๊ฐ ๋ ๋ค์ด์์๋ - ์ฆ, ์ ๊ทธ๋ฆผ์์, ํฐ์ ๋๋ ๊ฒ์์ ์ ๋ค์ด ๋ชฐ๋ ค์๋ ๋ถ๋ถ ์ฃผ์์ ์๋ก์ด ์ ์ด ๋ ์ฐํ์ ๋ - ์ฌ๋ฐ๋ฅด๊ฒ ๋ถ๋ฅํ ๊ฒ์ผ๋ก ์๊ฐํ ์ ์๋ค๋ ์๋ฏธ์ ๋๋ค.
๋ฐ๋ผ์, ๊ฐ๋ฅํ๋ค๋ฉด margin์ด ํฐ ์ดํ๋ฉด์ ๊ณ ๋ฅด๋ ๊ฒ์ด ๋ฐ๋์งํฉ๋๋ค.
์ด๋, Margin์ด ์ด๋ป๊ฒ ๊ณ์ฐ๋๋์ง๋ฅผ ์๊ฐํด ๋ด ์๋ค. margin์ด๋ผ๋ ๊ฒ์ ์ดํ๋ฉด์์ ๊ฐ์ฅ ๊ฐ๊น์ด ๋ฐ์ดํฐ ์ ๋ค์ ์ํด ์ ์๋๋ฉฐ, $w$์ $b$๋ฅผ ์ ๋นํ ์์๋ฐฐํ๋ฉด, ์ด ์ดํ๋ฉด์ ๋ฒ์ ๋ฒกํฐ $w$์ ๊ฐ์ ๋ฒ์ ๋ฒกํฐ๋ฅผ ๊ฐ์ง๋ฉด์ (ํํํ๋ฉด์) $y_i = 1$์ธ ๊ฐ์ฅ ๊ฐ๊น์ด ๋ฐ์ดํฐ์ ์ ์ง๋๋ ํ๋ฉด์ด ์ ํํ $w^T x + b = 1$ ์ด ๋๊ฒ ํ ์ ์์ต๋๋ค. ์ฆ, $y_i = 1$ ์ธ ๋ชจ๋ ์ ๋ค์ ๋ํด, $w^T x + b \geq 1$ ์ด ๋จ์ ๊ฐ์ ํ๋ค๋ ์๋ฏธ์ ๋๋ค. ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก $y_i = -1$์ธ ์ ๋ค์ ๋ํด $w^T x + b \leq -1$ ์ด ๋๊ฒ ํ ์ ์์ผ๋ฏ๋ก, ์ฐ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ์ ์ ์ฝ ์กฐ๊ฑด ์ผ๋ก ๋ฐ๊ฟ ์ ์์ต๋๋ค. \(y_i (w^T x_i + b) \geq 1\) ์ด์ , ์ด ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๋ชจ๋ ์ดํ๋ฉด $(w, b)$ ๋ค์ ์ฌ๋ฐ๋ฅธ classifier๋ค์ ๋๋ค. ๊ทธ๋ฐ๋ฐ, ์ด์ margin์ ๋ ํ๋ฉด $w^T x + b = 1$ ๊ณผ $w^T x + b = -1$ ์ฌ์ด์ ๊ฑฐ๋ฆฌ๊ฐ ๋๋ฉฐ, ์ด๋ ๊ธฐํ์ ์ผ๋ก ${2}/{\norm{w}}$ ๊ฐ ๋ฉ๋๋ค. ์ฆ, margin์ด ์ต๋์ธ ์ฌ๋ฐ๋ฅธ classifier๋ฅผ ์ฐพ๋ ๋ฌธ์ ๋ ๋ณธ์ง์ ์ผ๋ก ๋ค์์ ์ ์ฝ ์๋ ์ต์ ํ ๋ฌธ์ ๊ฐ ๋ฉ๋๋ค. \(\underset{w \in \R^n, b \in \R}{\minimize}\ \norm{w}^2 \quad \subto \ \ y_i (w^T x_i + b) \geq 1\) ์ฌ๊ธฐ์๋ $\norm{\cdot}$์ ์ต์ ํํ๋ ๊ทธ ์ ๊ณฑ์ ์ต์ ํํ๋ ์ํ์ ์ผ๋ก๋ ๊ฐ์ ๋ฌธ์ ์ง๋ง, computationalํ๊ฒ๋ ์ ๊ณฑ์ ์ต์ ํํ๋ ๋ฌธ์ ๋ฅผ Quadratic Program ์ผ๋ก ํด๊ฒฐํ ์ ์๊ธฐ ๋๋ฌธ์, ์๊ณ ๋ฆฌ์ฆ์ ์ธ ์ธก๋ฉด์์ ์ ๊ณฑ์ ์ต์ ํํฉ๋๋ค.
Soft Margin SVM
์ ๋ฌธ์ ๋ ๊ฒฐ๊ตญ ์ฃผ์ด์ง ๋ฐ์ดํฐ๋ ์์ ํ ํ๋ฉด์ผ๋ก ๋ถ๋ฆฌํ ์ ์๋ค, ์ฆ linearly seperable ํ๋ค๋ ๊ฐ์ ์ ์ก๊ณ ํด๊ฒฐํ ๊ฒ์ ๋๋ค. ๋น์ฐํ ์ฐ๋ฆฌ๋ โ๊ฑฐ์โ linearly seperableํ ๋ฌธ์ ๋ก ์ด ๋ ผ์ฆ์ด ํ์ฅ๋์์ผ๋ฉด ์ข๊ฒ ๊ณ , ํฌ๊ฒ ๋๊ฐ์ง ๋ฐฉ๋ฒ (์๋ก ๋์น์ธ) ์ด ์์ต๋๋ค.
์ ์ฝ ์๋ ์ต์ ํ์ ๊ด์ ์ ์ด์ด๊ฐ์, ๋ค์๊ณผ ๊ฐ์ด ๋ฌธ์ ๋ฅผ ๋ณํํฉ๋๋ค. \(\underset{w \in \R^n, b \in \R}{\minimize}\ \norm{w}^2 + C \sum h_i \quad \subto \ \ y_i (w^T x_i + b) \geq 1 - h_i\) ์ฆ, $y_i (w^T x_i + b)$๊ฐ 1๋ณด๋ค ์กฐ๊ธ ์์์ง๋๊ฑธ ํ์ฉํ๋ ๋์ , ์ด๋ฅผ ๋ฐ์ํ์ฌ margin์ ํด๋นํ๋ ๊ฐ์ penalizeํ๊ฒ ๋ค๋ ์๋ฏธ์ ๋๋ค.
๋๋, ์์ ์ ์ฝ ์๋ ์ต์ ํ ๋ฌธ์ ๋ก ๋ฐ๊พธ๋ ๋์ , Hinge Loss ๋ฅผ ๋์ ํ ์ ์์ต๋๋ค. \(\underset{w \in \R^n, b \in \R}{\minimize}\ \norm{w}^2 + C \sum \max(0, 1 - y_i (w^T x_i + b))\)
Computationalํ๊ฒ ๋ณด๊ธฐ๊ฐ ์ข๋ ํธํ ์ ์ฝ ์๋ ์ต์ ํ ๊ด์ ์ ๊ฐ์ ธ๊ฐ๊ฒ ์ต๋๋ค. ์ด์ , ์ด ๋ฌธ์ ๋ Lagrangian Multiplier (Primal-Dual) ๋ฐฉ๋ฒ์ ์ด์ฉํ์ฌ ํด๊ฒฐํ ์ ์์ต๋๋ค. ๋ํ, ์ดํ์ ๊ณ์ฐ์ ์ํด $\norm{w^2}$ ๋์ $\frac{1}{2}\norm{w^2}$ ๋ฅผ ์ต์ ํํ๊ฒ ์ต๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, \(\mathcal{L}(w, b, h, \alpha, \eta) = \frac{1}{2}\norm{w^2} + C \sum h_i + \sum \alpha_i(1 - h_i - y_i (w^T x_i + b)) - \sum \eta_i h_i\) ์ด ํจ์์ ๋ํ Lagrangian dual์ ์๊ฐํ๊ธฐ ์ํด, ํธ๋ฏธ๋ถ๋ค์ ๊ณ์ฐํ๋ฉด \(\begin{align} \pdv{\mathcal{L}}{w} &= w - \sum \alpha_i y_i x_i = 0\\ \pdv{\mathcal{L}}{b} &= - \sum \alpha_i y_i = 0 \\ \pdv{\mathcal{L}}{h_i} &= C - \alpha_i + \eta_i = 0 \end{align}\) ์ด์ , ์ด ์กฐ๊ฑด๋ค์ $\mathcal{L}$ ์ ๋์ ํด ๋ฃ์ผ๋ฉด ๋ค์์ ์ป์ต๋๋ค. \(\minimize \ \frac{1}{2}\alpha^T Q \alpha - \alpha^T 1 \quad \subto \ \ \alpha^T y = 0, \alpha_i \in [0, C]\) ์ด๋ $Q$๋ $Q_{ij} = y_i y_j \inner{x_i}{x_j}$ ์ธ ํ๋ ฌ์ ๋๋ค. ์ด๋ ๊ฒฐ๊ตญ linear constraint๋ฅผ ๊ฐ์ง quadratic ์ต์ ํ ๋ฌธ์ ์ด๋ฏ๋ก, quadratic programming ์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค. (์ฐธ๊ณ : ์ํคํผ๋์ ๋ ๋ฐ๋๋ก maximization ๋ฌธ์ ๋ก ์ ๋ฆฌํ๊ธฐ ๋๋ฌธ์, ์ต์ ํ ๋ฐฉํฅ์ด ๋ฐ๋์ ๋๋ค. ์ํ์ ์ผ๋ก๋ ๋์น์ด๋ฉฐ ๊ณ์ฐ์ ์ผ๋ก๋ ์ฌ์ค ๊ฐ์ต๋๋ค.)
Kernel Methods
SVM์ ๊ธฐ๋ณธ์ ์ผ๋ก linear ํ์ง๋ง, kernel method๋ฅผ ์ด์ฉํ๋ฉด nonlinearํ decision boundary๋ฅผ ์ก๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค.
์์ธํ ๊ฒ์ ๋ณ๋ ํฌ์คํ (๋์ธ๋ฒ์ ๊ฑธ์ณ์) ํ ์์ ์ด์ง๋ง, ๊ฐ๋จํ ๋ ผ์ฆํ์๋ฉด ์ด๋ ์ต๋๋ค.
(๊ทธ๋ฆผ ์ถ์ฒ : Benyamin Ghojogh et al,
Reproducing Kernel Hilbert Space,
Mercerโs Theorem, Eigenfunctions, Nystrรถm Method, and Use of Kernels in Machine Learning: Tutorial and Survey)
์ด์ ๊ฐ์ด, ๊ณ ์ฐจ์์์๋ ์ ํ์ผ๋ก ๋ถ๋ฆฌ๊ฐ ๊ฐ๋ฅํจ์๋ ๋ถ๊ตฌํ๊ณ ์ ์ฐจ์์ผ๋ก ๋๋ฌ๋๋ค ๋ณด๋ ์ ํ์ผ๋ก ๋ถ๋ฆฌ๊ฐ ๋ถ๊ฐ๋ฅํด์ง ๋ฐ์ดํฐ๊ฐ ์๋ค๊ณ ์๊ฐํด ๋ณด๊ฒ ์ต๋๋ค. ์ ์ ํ mapping $\phi$ ๋ฅผ ๋ง๋ค์ด์, $\phi(x_i)$ ๋ค์ ๋ถ๋ฆฌํ ์ ์๋ค๋ฉด ๋ ๊ฐํ classification์ด ๊ฐ๋ฅํ ๊ฒ์ ๋๋ค. ์ด๋ฅผ Kernel method ๋ผ ํ๋ฉฐ, ์ด๋ ๋ฐ์ดํฐ๋ค์ด ์ฌ๋ผ๊ฐ ์๋ ์๋ก์ด ๊ณต๊ฐ์ RKHS (Reproducing Kernel Hilbert Space) ๋ผ ํฉ๋๋ค.
Back to : dl-theory