Unsupervised Learning, Autoencoders
Unsupervised Learning
Unsupervised (๋๋, Self-supervised) ์ ์๋ฏธ๋, ์ ๋ต์ด ์ ๊ณต๋์ง ์๋ ๋จธ์ ๋ฌ๋ ์ํฉ์ ๋งํฉ๋๋ค. ์ด๊ฒ ๋ฌด์จ ๋ง์ธ์ง ์์๋ณด๊ธฐ ์ํด, ์ด์ ์ ์์๋ณธ supervised learning์ ๊ธฐ๋ณธ ํ๋ ์์ผ๋ก ๋์๊ฐ๋ณด๊ฒ ์ต๋๋ค.
- ๋ฏธ์ง์ ํจ์ $f$์ ๋ํด ์๊ณ ์ ํ๋๋ฐ,
- ๋ชจ๋ ์ง์ ์ด ์๋ ์ด๋ค ์ง์ $x_i$ ๋ค์์๋ง ๊ทธ ๊ฐ $f(x^i) = y^i$ ๋ฅผ ์๊ณ ์๊ณ ,
- ๊ทธ๋์ ์ด๋ค ํ๋ํฐ $\ell$ ์ ์ ์ํด์, $\sum_i \ell(f(x^i), g(x^i))$๊ฐ ์์ $g$๋ฅผ $f$์ ๊ทผ์ฌ-ํจ์๋ก ์๊ฐํ๊ณ ์ถ์ต๋๋ค.
- ๊ทธ๋ฐ๋ฐ ์ด $g$๋ฅผ ๋ชจ๋ ํจ์์ ๊ณต๊ฐ์์ ์ต์ ํํ๋ ๊ฒ์ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ๋ฅํ์ง ์์ผ๋ฏ๋ก,
- ์ด๋ค parameter $\theta$ ์ ์ํด ํํ๋๋ ํจ์๊ณต๊ฐ์ ๋ถ๋ถ์งํฉ $g_\theta$๋ง์ ์๊ฐํ๋ฉฐ,
- $\minimize \sum_i \ell(f(x^i), g_\theta(x^i))$ by moving $\theta$๋ก ์๊ฐํฉ๋๋ค.
์ฌ๊ธฐ์, โsupervisionโ ์ ์ ๋ต $f(x^i) = y^i$ ๋ฅผ ๋งํฉ๋๋ค. ์ด๋ฅผ ์ด๋ฏธ ์๊ณ ์๋ ๊ฒฝ์ฐ (์๋ฅผ ๋ค์ด, Imagenet ๋ฐ์ดํฐ๋ ์ฌ๋์ ์๋ฉ ๊ณ ์ฉํด์ ์ด๋ฏธ์ง๋ฅผ ์ค์ ๋ก ๊ตฌ๋ถํ์ต๋๋ค) ๋ ์์ง๋ง, ๋ง์ ๊ฒฝ์ฐ์ ์ด ๋ฐ์ดํฐ๋ฅผ ๋ชจ์ผ๋ ๊ณผ์ ์์ฒด๊ฐ ๋งค์ฐ ๋น์ธ๊ฑฐ๋ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์๋, ์ด ํ๋ ์์ ๊ณผ๊ฐํ ํฌ๊ธฐํ๊ณ , supervision ์์ด ๋ฐ์ดํฐ ์์ฒด์ ๋ด๋ถ์ ์ธ ๊ตฌ์กฐ๋ฅผ ํ์ตํ๋๋ก ํ๊ณ ์ ํฉ๋๋ค.
์ฆ, unsupervised learning์ด๋:
- ๋ฐ์ดํฐ $X_1, \dots X_n$ ์ด ์ฃผ์ด์ง ๋,
- ๊ทธ ๋ด๋ถ์ ์ด๋ค ๊ตฌ์กฐํ๊ฐ ์ผ๋งํผ ์งํ๋์๋์ง๋ฅผ ์ค์ฉ์ ์ผ๋ก ์ ์๋ฏธํ ์ด๋ค loss function $\mathcal{L}(\theta)$ ์ ํ์ต๊ฐ๋ฅํ ํํ๋ก ๋ง๋ค์ด์
- ์ด๋ฅผ ์ต์ ํํ๋ ๋ฐฉํฅ์ผ๋ก ์๊ฐํฉ๋๋ค.
Supervised learning๊ณผ๋ ๋ฌ๋ฆฌ, ์ด ํ๋ ์๋ง ์ฝ์ด์๋ ๋ฌด์์ ํ๊ณ ์ถ์์ง๊ฐ ๋ณ๋ก ๋ช ํํ์ง ์์ต๋๋ค. ๊ทธ๋์ ๋ํ์ ์ธ ์์์ธ Autoencoder๋ฅผ ์ง์ ์ดํด๋ณด๊ณ ์ ํฉ๋๋ค.
Autoencoder
Autoencoder๋ ๊ฐ๋จํ ์์ถ์ฒ๋ผ ์๊ฐํ๋ ๊ฒ์ด ๊ฐ์ฅ ํธํ๊ฒ ์ดํดํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์ฐ๋ฆฌ๋ ์ด๋ค ํจ์ $E_\theta$ ์ $D_\phi$๋ฅผ ๋ง๋ค์ด์, $E_\theta$ ๊ฐ ๋ชจ๋ธ์ ์ด๋ค ํน์ง์ ์ธ์ฝ๋ฉ ํ๊ณ , $D_\phi$ ๊ฐ ๋ฐ๋๋ก ์ด๋ฅผ ๋์ฝ๋ฉ ํ๋๋ก ํ๊ณ ์ ํฉ๋๋ค. ์ฆโฆ $\R^n$ ์์, $\R^m$ ์ผ๋ก ๊ฐ๋ ํจ์ $E_\theta$์, (์ํ์ ์ผ๋ก ์กด์ฌํ์ง ์๋) ๊ทธ ์ญํจ์ ๋น์ทํ $D_\phi$๋ฅผ ๋ง๋ค๊ณ ์ ํฉ๋๋ค.
์ด๋, ๋ค์๊ณผ ๊ฐ์ ๊ฐ์ ์๊ฐํฉ๋๋ค. \(\mathcal{L}(\theta, \phi) = \expect{\norm{X - D_\phi(E_\theta(X))}^2}\) ์ด ๊ฐ์ด ์๋ค๋ ๊ฒ์, $D(E(X))$ ๊ฐ $X$๋ฅผ ๊ฑฐ์ ๊ทธ๋๋ก ๊ฐ์ ธ๊ฐ๋ค๋ ์๋ฏธ์ ๋๋ค. ๋ค์ ๋งํด, $E(X)$๋ ์ผ์ข ์ ์์ถ ์ ์ํํ๊ณ , $D$๋ ์ด ์์ถ์ ํด์ ํ๋ ํจ์๊ฐ ๋ฉ๋๋ค.
์ฌ์ ํ, ์ฐ๋ฆฌ๋ expectation์ ์ง์ ์ต์ ํํ ์ ์๊ณ , ๋ฐ์ดํฐ๋ง์ ์ด์ฉํด์ ๋ญ๊ฐ๋ฅผ ํด์ผ ํ๋ฏ๋ก, \(\mathcal{L}(\theta, \phi) = \frac{1}{N} \sum_{i = 1}^{N} \norm{X_i - D_\phi(E_\theta(X_i))}^2\) ์ด ๊ฐ์ ๋์ ์ต์ ํํ ๋ค์, $\theta, \phi$๊ฐ ์ ์ต์ ํ๋์ด ์ค์ ๋ก๋ expectation์ด ์๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค. ์ด๋ ์ฌ์ค ์์์ ์ค๋ช ํ supervised learning์ ์๋ฆฌ์์๋ ์ ์ฉํ๋ ๋ฐฉ๋ฒ (์ถฉ๋ถํ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ํตํด ์ต์ ํํ๋ฉด ์๋ง๋ ์๋ํ ๊ฒ์ด๋ค) ์ด๋ฏ๋ก, ์ด๋ฌํ ๋ ผ์ฆ์ (๋น๊ต์ ) ํฉ๋ฆฌ์ ์ด๋ผ๊ณ ํ ์ ์๊ฒ ์ต๋๋ค.
์ด๊ฑธ๋ก ๋ญ ํ ์ ์์์ง๋ ๊ต์ฅํ ๋ค์ํฉ๋๋ค.
- Encoder๋ ์ผ์ข ์ ์์ถ ์๊ณ ๋ฆฌ์ฆ์ด๋ฏ๋ก, ์ถฉ๋ถํ ์ ํ๋ จํ autoencoder๋ฅผ ๊ทธ๋ฅ ์ด๋ฏธ์ง ์์ถ๊ฐ์๊ฑฐ์ ์จ๋ ๋ฉ๋๋ค.
- ๋ฐ์ดํฐ์ noise๋ฅผ ์ ๊ฑฐํ ์ ์์ต๋๋ค. Encoder-Decoder๋ ์๋ง๋ ๋ฐ์ดํฐ์ inherentํ ๊ตฌ์กฐ๋ฅผ ๋ฐ์ํ๊ณ ์์ ๊ฒ์ด๋ฏ๋ก, noise๋ encoding๊ณผ์ ์ ๋ณ๋ก ์ ์๋ฏธํ๊ฒ ๋ฐ์๋์ง ์์ ๊ฒ์ด๋ฉฐ, decodingํ ๋ ๊ทธ noise๊ฐ ์ค์ด๋ค ๊ฒ์ด๋ผ๊ณ ์๊ฐํ ์ ์์ต๋๋ค.
- ๋ฐ์ดํฐ์ anomally๋ฅผ ์ก์๋ผ ์ ์์ต๋๋ค. ์ด๋ฏธ ์ถฉ๋ถํ ์ ํ๋ จํ Encoder-Decoder์ ๋ํด, $\norm{X - D_\phi(E_\theta(X))}^2$๊ฐ ๋ค๋ฅธ ๋ฐ์ดํฐ์ ๋นํด ํน์ดํ๊ฒ ํฐ ๋ญ๊ฐ๊ฐ ์๋ค๋ฉด, ์ด ๋ฐ์ดํฐ์๋ ๋ค๋ฅธ ๊ฐ๋ค๊ณผ ๋ค๋ฅธ ์ด๋ค ์์ ๊ฐ ์๋ค๊ณ ์๊ฐํ ์ ์์ต๋๋ค.
- Label์ ์์ง๋ง, ๋น์ทํ ๊ฒ๋ค๋ผ๋ฆฌ ๋ฌถ๋๊ฒ์ ๊ฐ๋ฅํฉ๋๋ค. K-means๊ฐ์ clustering.
์ฐธ๊ณ ๋ก, classical machine learning์ ๋ํ์ ์ธ ์๊ณ ๋ฆฌ์ฆ ์ค ํ๋์ธ PCA(Principal Component Analysis)๋ $E$๋ก $y = Ax$๋ฅผ, $D$๋ก $y = A^T x$๋ฅผ ์ฐ๋ autoencoder๋ผ๊ณ ์๊ฐํ ์ ์์ต๋๋ค. ์ด๋ ๋์ค์ PCA์ ๋๋ ๋ฐ๋ก ํฌ์คํ ํ ์์ ์ด๋ฏ๋ก ๊ทธ๋ ์ถ๊ฐํ๊ฒ ์ต๋๋ค.