Overfitting and Regularization
Overfitting / Underfitting
์ด ๋ธ๋ก๊ทธ์์๋ ์ฌ๋ฌ ์ฐจ๋ก ๊ธฐ๋ณธ ์ธํ ์ผ๋ก ์ธ๊ธํ, Deep learning์ ๊ธฐ๋ณธ ํ๋ ์์ํฌ (์ฌ์ค์, ์ข๋ generalํ๊ฒ machine learning ๋ด์ง๋ regression ์ ์ฒด์ ์ ์ฉ๋๋ ํ๋ ์์ ๋๋ค) ๋ฅผ ๋์๋ณด๋ ๊ฒ์ผ๋ก ์์ํ๊ฒ ์ต๋๋ค.
- ๋ฏธ์ง์ ํจ์ $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$๋ก ์๊ฐํฉ๋๋ค.
Optimizer์ ๊ดํ ํฌ์คํ ์์๋ ์ด ์ค, ๊ทธ๋์ ์ด๋ป๊ฒ ์ต์ ํํ ์ง ๋ฅผ ์๊ฐํ์ต๋๋ค. ์ฌ๊ธฐ์๋, ์กฐ๊ธ ๋ค๋ฅธ ๋ฌธ์ ๋ฅผ ์๊ฐํด ๋ณด๋ ค๊ณ ํฉ๋๋ค.
์ฐ๋ฆฌ๊ฐ ๋ฅ๋ฌ๋์ด๋ , ์ผ๋ฐ์ ์ธ ๋จธ์ ๋ฌ๋์ด๋ ์ด์ฉํด์ $f$๋ฅผ ์์๋ด๋ ค๋ ์ด์ ๋ ์๋ ์ด๋ฏธ ์ฃผ์ด์ง $x^i$ ๋ค ์ธ์, ์๋ก์ด ์ $z$๊ฐ ๋ค์ด์์ ๋ $f(z)$๋ฅผ ์๊ณ ์ ํ๋ ๊ฒ์ ๋๋ค. ์๋ฅผ๋ค์ด ์ฌ์ง 1๋ง ์ฅ์ ์ด์ฉํด์ ๊ฐ์ ๊ณ ์์ด๋ฅผ ๊ตฌ๋ถํ๋ ํจ์ $g_\theta$๋ฅผ ํ๋ จํ๊ณ ๋๋ฉด, ํ๋ จ๊ณผ์ ์์ ํ๋ฒ๋ ๋ณธ ์ ์๋ ์๋ก์ด $z$๊ฐ ๊ฐ์ธ์ง ๊ณ ์์ด์ธ์ง๋ฅผ ์์๋ผ ์ ์์ด์ผ ํฉ๋๋ค. ์ ํ๋ ์์ ๊ทธ๋์ ๋ค์ ๋ ๊ฐ์ง ์๋ฌธ์ด ์๊ธธ ์ ์์ต๋๋ค.
- $\ell$์ ํ๋ํฐ์ด๋ฏ๋ก, $z$๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ํ์ ํ๋ ๊ฒ์ ์๋ก์ด ๋ฐ์ดํฐ์ ๋ํด $\ell(f(z), g_\theta(z))$ ๊ฐ ์์์ผ๋ฉด ์ข๊ฒ ๋ค๊ณ ์๊ฐํ ์ ์์ต๋๋ค. ๊ทธ๋ฐ๋ฐ, ์ฐ๋ฆฌ๋ $x^i$๋ค์ ๋ํด์ $g_\theta$๋ฅผ ํ๋ จํ์ต๋๋ค. $f$๊ฐ ๋งค์ฐ ์ด์ํ๊ฒ ์๊ธด ํจ์๋ผ๋ฉด, $g_\theta$๋ฅผ ์๋ฌด๋ฆฌ ์ ์ต์ ํํด ์๋๋ผ๋ ์์ ํ ๋ค๋ฅธ ์ด์๊ฐ ๋ฐ์ํ ์๋ ์์ต๋๋ค.
- ์ ์ด์, $g$๊ฐ ๋ชจ๋ ํจ์์ ๊ณต๊ฐ์ด ์๋ $g_\theta$๋ก ํํ๋๋ ํจ์๊ณต๊ฐ์ ๋ถ๋ถ์งํฉ๋ง์ ์๊ฐํ๋๋ฐ $f$๋ ์ถฉ๋ถํ ๊ฐ๊น์ด ํจ์๊ฐ $g_\theta$๋ค์ ์งํฉ์ ์๊ธฐ๋ ํ ์ง๋ ๋ชจ๋ฅผ ์ผ์ ๋๋ค.
์ด ๋๊ฐ์ง ์ด์๋ฅผ ๋ฅ๋ฌ๋์์๋ (๋ณด๋ค ์ผ๋ฐ์ ์ผ๋ก, ํต๊ณํ์์๋) ๊ฐ๊ฐ overfitting / underfitting์ด๋ผ๊ณ ๋ถ๋ฆ ๋๋ค. ์ฆ,
- Overfitting ์ด๋, ์ฐ๋ฆฌ๊ฐ ๊ฐ์ง ๋ชจ๋ธ $g_\theta$๊ฐ ํ๋ จ์ ์ ๋์ง๋ง ๋ฏธ์ง์ ๋ฐ์ดํฐ์ ๋ํ ์ฑ๋ฅ์ด ๊ทธ์ ๋ฏธ์น์ง ๋ชปํ๋ ๊ฒฝ์ฐ์ ๋๋ค. ์ฐ๋ฆฌ๊ฐ ์ ์๊ณ ์๋ ์ธ๊ฐ์ ํ์ต๊ณผ ๋น๊ตํด๋ณด๋ฉด, ๊ฐ์ ์ฑ ์ ๊ณ์ ๋ณด๋ค ๋ณด๋ ๊ทธ ์ฑ ์ ์ ํ์ง๋ง ์๋ก์ด ๋ฌธ์ ๋ฅผ ์ฃผ๋ฉด ๋ชป ํธ๋(โฆ) ์ํฉ์ด๋ผ๊ณ ํ ์ ์๊ฒ ์ต๋๋ค.
- Underfitting ์ด๋, $g_\theta$๋ฅผ ์ถฉ๋ถํ ์ ์ต์ ํํ์ง ๋ชปํ ์ํฉ์ ๋๋ค. ์ญ์ ์ธ๊ฐ์ ํ์ต๊ณผ ๋น๊ตํด๋ณด๋ฉด ๊ทธ๋ฅ ๊ณต๋ถ๊ฐ ๋ ๋ ์ํฉ์ ๋๋ค.
์์์ ๊ตณ์ด ์ธ๊ฐ์ ํ์ต์ ๋น์ ํ ์ด์ ๊ฐ ์์ต๋๋ค. ํด๊ฒฐ์ฑ ๋ ์ฝ๊ฐ motivation์ด ๋น์ทํฉ๋๋ค.
- ๋จผ์ , Underfitting ์ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ํ๋ จ์ ๋ ํ๊ฑฐ๋ (๊ณต๋ถ๋ฅผ ๋ ์ํค๋ ๋๋) ์๋๋ฉด ๋ ์ข์ ๋ชจ๋ธ์ ๊ฐ๋ฐํ๋ ๊ฒ์ ๋๋ค (์ด๊ฑดโฆ์ธ๊ฐ์ ํ์ต์ผ๋ก ์น๋ฉด ์คํฏ์ ๋ฌธ์ ์์ ์ธ์ ํ๋๊ฑฐ๋ผ ์ข ์ ๋งคํฉ๋๋ค ใ ใ ;;)
- Overfitting ์ ํ๋ จ์ด ์๋ชป๋๊ณ ์๋ ๊ฒ์ ๋๋ค. ์ฆ ๋ชจ๋ธ์ด ํ์ ์ด์์ผ๋ก ํ๋ จ๋ฐ์ดํฐ์ ํน์ง์ ์ก์๋ด๊ณ ์๋ค๋ ์ ์ด๊ณ , ์ด๊ฒ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ด๋ค๊ฑฐ๋ (์์ ๊ณต๋ถํ ์๋ฃ๋ฅผ ๋ ์ฃผ๋ ๋๋์ ๋๋ค), ์๋๋ฉด regularization์ด๋ผ๋ ๋ฐฉ๋ฒ์ ์ด์ฉ, ํ์ต์ด ํ๋ จ๋ฐ์ดํฐ์ ๋ฏธ์ธํ ํน์ง๋ณด๋ค๋ ์ข๋ ํฐ๊ทธ๋ฆผ์ ์ง์คํ๋๋ก ์ ๋ํฉ๋๋ค.
์ฌ๊ธฐ์๋ Overfitting์ ์ค์ด๋ regularization์ ์ฃผ๋ชฉํฉ๋๋ค. Underfitting์ ๋ ๊ฐํ ๋ชจ๋ธ์ ์ฐ๊ฑฐ๋, ๋ฐ์ดํฐ๋ฅผ ๋๋ฆฌ๊ฑฐ๋, ํ๋ จ์ ๋๋ฆฌ๋ ๋ฑ ์ข๋ ์ง๊ด์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ๊ทน๋ณต์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ๋ค๋ฃจ์ง ์์ต๋๋ค.
Weight Decay / L2 Regularization
์ฐ๋ฆฌ๋ SGD๋ฅผ ์ด์ฉํ์ฌ, ๋ค์๊ณผ ๊ฐ์ด weight $\theta$ ๊ฐ์ ์กฐ์ ํ๋ ์์ผ๋ก training์ ์ํํฉ๋๋ค. \(\theta^{k+1} = \theta^k - \alpha g^k\) Weight decay๋, ๋ค์๊ณผ ๊ฐ์ด SGD update๋ฅผ ์์ ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. \(\theta^{k+1} = (1 - \alpha \lambda) \theta^k - \alpha g^k\) ์ฆ, ๋งค๋ฒ $\theta$์ ๊ฐ์ด ์กฐ๊ธ์ฉ decayํฉ๋๋ค.
์ด ๊ฐ์ ๋๋ก๋ L2 Regularization์ด๋ผ๊ณ ๋ถ๋ฆฝ๋๋ค. ๊ทธ ์ด์ ๋, ์ update๋ฅผ ์ ๋ณด๋ฉด $\alpha$๊ฐ $\lambda \theta^k$์ ๊ณฑํด์ ธ ์๊ณ , ์ด๋ ์ฆ $\lambda \theta^k$ ๊ฐ ๋ญ๊ฐ $g^k$์ฒ๋ผ gradient์ค๋ฌ์ด ๊ฐ์์ ์๋ฏธํ๋ ๋ฐ์ ์ฐพ์ ์ ์์ต๋๋ค. ์ฆ, Loss function์ ์ ์กฐ์ ํ ๋ค์ ์ผ๋ฐ SGD๋ฅผ ์ฐ๋ฉด, ์ผ๋ฐ Loss function์ ๋ํด์ weight decay ํ ๊ฒ๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์ป๋๋ค๋ ์ ์ ๋๋ค.
์ ํํ, ๋ค์๊ณผ ๊ฐ์ loss function์ ์ฐ๋ฉด weight decay์ ๋์น๊ฐ ๋ฉ๋๋ค. \(\frac{1}{N} \sum_{i = 1}^{N} \ell(f_\theta(x^i), y^i) + \frac{\lambda}{2} \norm{\theta}^2\) ์ด ๊ณ์ฐ์ ๊ฐ๋จํ๊ฒ verifyํ ์ ์๋ ๋ฏธ๋ถ ๊ณ์ฐ์ด๋ฏ๋ก ์๋ตํฉ๋๋ค. ํต์ฌ ์์ด๋์ด๋, โWeight๊ฐ์ด ์ปค์ง๋ ๊ฒ์ ๊ธฐ๋ถ๋์๊ฒ ๋ฐ์๋ค์ด์โ ๋ผ๋ ๊ฒ์ ๋๋ค. ๋ชจ๋ธ์ด ํ์ ๋ ๋ฐ์ดํฐ์ ๋ํด overfittingํ๊ธฐ ์ํด์๋ ๊ฐ ํ๋ผ๋ฏธํฐ๊ฐ์ด ํฌ๊ฒ fluctuateํ๋ค๋ ๊ฒ์ ์ญ์ด์ฉํ๋ ์์ด๋์ด์ ๋๋ค.
์๋ฅผ ๋ค์ด, 6๊ฐ์ ์ $(0, 0), (2, 4), (4, 16), (6, 35), (8, 65), (10, 99)$ ๋ฅผ polynomial regression ํ๋ค๊ณ ์๊ฐํด ๋ด ์๋ค. ์ด ๋ฐ์ดํฐ๋ $y = x^2$ ๋ฅผ โ๊ฑฐ์โ ๋ฐ๋ผ๊ฐ๋ฏ๋ก, 2์ฐจ์์ ์ด์ฉํ์ฌ approximateํ๋ฉด $y = x^2$ ์ ๋๊ฐ ์ฌ๋ฐ๋ฅธ ํ๋ จ ๊ฒฐ๊ณผ๊ฐ ๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฐ๋ฐ, ์ฌ๊ธฐ์ 5์ฐจ์์ ์ด์ฉํ๋ฉด training error๊ฐ 0์ธ ๋ชจ๋ธ์ ๋ง๋ค ์ ์์ต๋๋ค (Lagrange Interpolation). ๋น์ฐํ ํ๋ จ ๋ฐ์ดํฐ๋ฅผ 100% ๋ง์ถ๋๋์ unseen data์ ํฌ๊ฒ ์ด๊ธ๋๋ ์ข์ง ๋ชปํ (overfitting์ด ์ฌํ) ๋ชจ๋ธ์ธ๋ฐ, ์ด ๋ชจ๋ธ์ ์๋ฌดํผ ํผํ ํด๋ณด๋ฉด ๊ทธ ๊ฒฐ๊ณผ๋ $-\frac{x^5}{240}+\frac{37 x^4}{384}-\frac{73 x^3}{96}+\frac{323 x^2}{96}-\frac{287 x}{120}$ ์ ๋๋ค. ๊ณ์๊ฐ ํจ์ฌ ํฌ๋ค๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
์ด๋ ๊ฒ, ์ค๋ฒํผํ ์ด ์ผ์ด๋๋ฉด ๋์ฒด๋ก ๊ณ์๊ฐ ํฌ๊ฒ ๋๋ฐ๋ ์ผ๋ค์ด ๋ฒ์ด์ง๋๋ค. ๋ฐ๋ผ์, ๋ฐ๋๋ก ๊ณ์๊ฐ ์ปค์ง๋๊ฑธ supressํ๋ฉด, ์ค๋ฒํผํ ์ ์ผ๋ถ ์ค์ผ ์ ์์ต๋๋ค.
Weight decay๋ 2-norm์ loss์ ๋ํด์ L2 regularization์ด์ง๋ง, ๊ฐ์ ๋ ผ๋ฆฌ๋ก L1, L3 ๋ฑ ๋ค๋ฅธ norm์ ์ด์ฉํ๋ regularization๋ ๊ฐ๋ฅํฉ๋๋ค.
Dropout
Dropout์ ํ๋ จ์ค์ ์ผ๋ถ ๋ด๋ฐ์ ์ฃฝ์ด๊ณ , ๊ทธ ๊ฐ๋งํผ์ ๋์ค์ ๋ณด์ ํด์ฃผ๋ ๋ฐฉ๋ฒ์
๋๋ค.
(์ด๋ฏธ์ง ์ถ์ฒ : Dive To Deep Learning)
์ฆ, ๊ฐ ๋ ์ด์ด์์ $p$ํ๋ฅ ๋ก ๊ฐ ๋ด๋ฐ์ ์ฃฝ์ธ๋ค์, ์ด์๋จ์ ๋ด๋ฐ์ ๋ํด์๋ ๊ฐ์ค์น์ $\frac{1}{1-p}$ ๋งํผ์ ๊ณฑํด์ ์ ์ฒด์ ๊ฐ์ค์น ํฉ์ ์ ์งํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ์ํ์ ์ผ๋ก๋ ํจ์์ smoothness๋ฅผ ์ข๋ ๊ฐ์ ํ๋ ๋ฐฉํฅ์ผ๋ก ๊ทธ๋ด๋ฏํ argument๊ฐ ์๋๋ฐ, ๋ณ๋ก rigorousํ์ง๋ ์์ต๋๋ค. ๋ค๋ง in practice ์ ์๋ํ๊ธฐ ๋๋ฌธ์ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค.
Data Augmentation
์ด ๋ฐฉ๋ฒ์ ๊ฐ๋จํ ์ค๋ช ํ์๋ฉด ๋ฐ์ดํฐ์ ๋ณํ์ ๊ฐํด์ ๋ฐ์ดํฐ ์์ฒด๋ฅผ ์ข๋ ๊ฐํํ๋ ๊ฒ์ ๋๋ค. ์ธ๊ฐ์ ํ์ต์ผ๋ก ์น์๋ฉด, ๊ฐ์ ๋ฌธ์ ์์ ์ซ์๋ฅผ ๋ฐ๊พผ ์ ์ ๋ฅผ ๋ ํ๋๋ก ์ํค๋ ๋๋์ธ๋ฐ์.
๋ํ์ ์ผ๋ก Convolutional Neural Network๊ฐ์๊ฑธ ์ด์ฉํด์ classification์ ํ๋ ์ํฉ์ ์๊ฐํด ๋ณด๊ฒ ์ต๋๋ค. ์ด๋ค ์ฌ์ง $X_1$์ ๊ณ ์์ด๋ผ๊ณ ํ๋จํ ์ ์๋ ๋คํธ์ํฌ๋, $X_1$์ ๊ฐ๋ก๋ก 180๋ ๋ค์ง์ (์ข์ฐ๋์นญ) ์ฌ์ง๋ ๊ณ ์์ด๋ผ๊ณ ํ๋จํ ์ ์์ด์ผ ํฉ๋๋ค. ๋ํ, ์ด๋ฏธ์ง ์ ์ฒด์ ์ฝ๊ฐ์ ๋ ธ์ด์ฆ๊ฐ ์๊ฑฐ๋, ์ด๋ฏธ์ง์ ํฌ๊ธฐ๊ฐ ๋ฐ๋๊ฑฐ๋, ๊ฐ๋ก์ธ๋ก์์ ์์ ํฝ์ ๋งํผ์ ๋บ๋ค๊ฑฐ๋, 5๋์ ๋ ๋๋ ค๋์ ์ฌ์ง๋ ๋ค ๊ณ ์์ด๋ผ๊ณ ํ๋จํ ์ ์์ด์ผ ํฉ๋๋ค.
๋ฐ๋ผ์, ์ด๋ฐ ๋ฐฉ๋ฒ๋ค์ ์ด์ฉํ๋ค๋ฉด, ๊ณ ์์ด ์ฌ์ง ํ ์ฅ์ ๋ง์น ์ฌ๋ฌ ๋ฐ์ดํฐ์ธ๊ฒ์ฒ๋ผ ์ฌ์ฉํ ์ ์๊ธฐ ๋๋ฌธ์
- ๋จ์ํ ๋ฐ์ดํฐ๋ฅผ ๋๋ฆฐ๊ฒ์ฒ๋ผ ์๊ฐํ๋๋ผ๋, ์ ํ๋ จ์ด ์ ๋๋์ง ์ง๊ด์ ์ผ๋ก ๋ฉ๋๊ฐ๋ฅํ๋ฉฐ
- ๊ฒฐ์ ์ ์ผ๋ก, โenforceํ๊ณ ์ถ์ ์ฑ์งโ - ์๋ฅผ๋ค์ด, โ์ข์ฐ๋์นญํด๋ ๋ผ๋ฒจ์ด ๋ฐ๋์ง ์๋๋คโ ๋ฅผ ์ง์ ์ฃผ์ ํ ์ ์์ต๋๋ค.
๊ทธ๋์, ์ด๋ค augmentation์ ํ ์ง๋ ๋ฐ์ดํฐ๋ฅผ ๋ณด๊ณ ์ง์ ํํด์ผ ํฉ๋๋ค. ์๋ฅผ๋ค์ด ์๊ธ์จ๋ฅผ ํ๋จํ๋ ํ์คํฌ๋ผ๋ฉด ์ข์ฐ๋์นญ ๊ฐ์๊ฒ์ ์ธ ์ ์์ต๋๋ค (๋์นญํ๋ฉด ๋ผ๋ฒจ์ด ๋ฐ๋๊ธฐ ๋๋ฌธ์) ๊ทธ๋ฌ๋ ๋์ ์๊น์ ๋ฐ๊พธ๋ augmentation์ด ๊ฐ๋ฅํ ์์ ๋๋ค.
Conclusion
Overfitting์ ๋ชจ๋ธ์ด ๋ณต์กํ๊ณ ๊น์ด์ง์๋ก ๋ ๋ง์ด ๋ฐ์ํ๋ค๋ ์ ์์ ํ๋์ ์์ ๋ ๊ฐํ(?) ๋ชจ๋ธ์ด ๋ฑ์ฅํจ์ ๋ฐ๋ผ ๋ ํฐ ๋ฌธ์ ๋ก ๋ค๊ฐ์ต๋๋ค. ์ด๋ฌํ overfitting์ ๋ง๊ธฐ ์ํ ์ฌ๋ฌ regularization ๋ฐฉ๋ฒ๋ค์ ๋๋ถ๋ถ์ ๋ชจ๋ธ์์ ๋ค์ํ๊ฒ ์ฌ์ฉ๋๋ฉฐ, ์๋ก์ด ๋ชจ๋ธ์ ์ค๊ณํ ๋ ํ์์ ์ธ ์์๋ผ๊ณ ํ ์ ์๊ฒ ์ต๋๋ค.