Supervised learning - Overview
์ฐ๋ฆฌ์๊ฒ ์ฃผ์ด์ง๋ ๊ฒ๋ค
- ์ด๋ค input-output pairs๊ฐ training set์ผ๋ก ์ฃผ์ด์ง๊ณ ,
- ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ M์ด training sets๋ฅผ ๋ฐ์์ output์ ๋์ ๋, ์ค์ training set๊ณผ์ ์ฐจ์ด๋ฅผ ์ ์ ์๋ function์ด ์ฃผ์ด์ง๋ค(loss function)
- ํ๊ฐ์ฉ sets๊ฐ ์ฃผ์ด์ง๋ค. (validation & test)
๊ฒฐ์ ํด์ผํ๋ ๊ฒ๋ค
- ๊ฐ์ค (hyperthesis) ex svm ๋ฑ๋ฑ... ๋ญ๋ก ํ ๊ฑด์ง
- ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ (optimization algorithm)
๊ทธ๋ผ supervised learning์ ๋ญ ํ๋? — ์ ์ ํ algorithm๊ณผ model์ ์๋์ผ๋ก ์ฐพ๋๋ค!
- ์ต์ ํ ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํด์ ๊ฐ ๊ฐ์ค ์์ ๊ฐ์ฅ ์ข์ ๋ชจ๋ธ์ ์ฐพ๋๋ค.
- training set์ ์ฌ์ฉํด ๊ฐ์ค ๋ณ ์ต์ ์ ๋ชจ๋ธ์ ์ฐพ๋๋ค
- model selection : validation set์ ์ฌ์ฉํด ๊ทธ ์ค ๊ฐ์ฅ ์๋๋ ๊ฒ์ ๋ฝ๋๋ค (hyperparameter optimization์ด ์ด ๋จ๊ณ์ ํด๋น๋๋ค)
- reporting : test set์ผ๋ก ํ๊ฐ (์ด ๋, ๊ฐ set๋ค์ ์ ๋ ์์ด๋ฉด ์๋๊ณ , ๋ฐ์ดํฐ๊ฐ ์ฃผ์ด์ก์ ๋ ์ ๋๋ ์ผ ํ๋ค.)
๊ทธ๋ฌ๋๊น overview ๋ญ๋๋ฉด
- ํฐ ๋ฐ์ดํฐ ์ ์ training, validation, test๋ก ๊ตฌ๋ถ
- ๊ฐ fair example ์ ๋ชจ๋ธ์ ๋ฃ์ด ์ค์ ์์ ์ฐจ์ด๋ฅผ ์ธก์ ํ ์ ์๋ loss function
- hyperthesis ์ ํ๊ณ
- opimization algorithm ์ ํด์ ๋จธ์ ์ ์ฃผ๋ฉด
- ๋ชจ๋ธ๊ณผ ์๊ณ ๋ฆฌ์ฆ์ ์๋์ผ๋ก ์ฐพ์์ค๋ค
์ฆ, ๋ญ๊ฐ ์ค์ํ๋๋ฉด
How to decide Hypothesis set
์ด๋ค ์ข ๋ฅ์ ๋ฌธ์ ๋ฅผ ์ฒ๋ฆฌํ ๊ฑด์ง? ์๋ฅผ๋ค์ด classification์ธ์ง, regression์ธ์ง ๋ฑ๋ฑ..
- ์ด์ ๋ฐ๋ผ SVM์ผ์ง Naive bayes classifier์ผ์ง ๋ฑ๋ฑ / SVR์ผ์ง linear regression์ผ์ง gaussian process์ผ์ง ๋ฑ๋ฑ.. ์ ํ๋ค.
hyperparameters set์ ์ด๋ป๊ฒ ํ ์ง
- ์ด๊ฑธ ์ ํ ๋๋ง๋ค hypothesis set์ด ํ๋์ฉ ์๊ธฐ๋ ๊ฒ์
- ์ผ๋ฐ์ ์ผ๋ก NN์ ๊ฒฝ์ฐ ์ ํด์ผํ๋ ๊ฑด 2๊ฐ. (weights, bias vector)
neural network architecture์ ์ด๋ป๊ฒ ๋์์ธํ๋?
- ์ ํด์ง ๊ฒ์ด ์๋ค. ๋์ ์ด๋ค ์๊ณ ๋ฆฌ์ฆ์ด๋ ์ํคํ ์ณ๊ฐ ์๋์ง ์ฐธ๊ณ ํ ์ ์๋ค
- DAG (์ฐธ๊ณ )
์๋ฅผ ๋ค์ด classification์ ํ๊ณ ์ถ์๋ฐ..
- logistic regression
- positive / negative class ๋ถ๋ฅ
- dot product + bias + sigmoid function
- ์ฅ์ : reusability — tensorflow, pytorch ๋ฑ์์ node๋ฅผ ๊ตฌํํด๋์๊ธฐ ๋๋ฌธ์ ์ฐ๊ฒฐ์ ๋ง ๊ณ ๋ฏผํ๋ฉด ๋จ
- ์ฆ, ๊ทธ๋ํ๋ฅผ ๊ทธ๋ฆฌ๊ณ hyperparameter ๊ฐ ์ค์ ํ๋ฉด ๋
How to decide a loss function
loss function์ ์ด๋ป๊ฒ define ํ ๊น?
๋ณดํต ์ ์ฐ๋ ๊ฒ๋ค MSE .. MLL ์ด๋ฐ๊ฒ ์๊ธด ํ๋ฐ ์ฐ๋ค๋ณด๋ฉด ์ด์งธ์ ๊ทธ๊ฑธ ์จ์ผํ๋์ง ๊ถ๊ธ์ฆ์ด ์๊ธฐ๊ธฐ ์์ — ์ฌ์ค์ probability ๋ฅผ ๊ณ ๋ คํ๋ ๊ฒ์ด์๋ค!
probability
- ์ฌ๊ฑด์งํฉ(Event Set) : ๋ชจ๋ ๊ฐ๋ฅํ ์ฌ๊ฑด์ ์งํฉ
- Ω={e1,e2,โฏ,eD}
- ์ด๋ฒคํธ ๊ฐฏ์๊ฐ ์ ํ์ผ๋ : ์ด์ฐ(Descrete)
- ์ด๋ฒคํธ ๊ฐฏ์๊ฐ ๋ฌดํ์ผ๋ : ์ฐ์(Continuous)
- ํ๋ฅ ๋ณ์(Random Variable): ์ฌ๊ฑด์งํฉ ์์ ์ํ์ง๋ง ์ ์๋์ง ์์ ์ด๋ค ๊ฐ. event set ์ค ์ด๋ค ๊ฒ์ด๋ผ๋ ๋ ์ ์๋ค.
- ํ๋ฅ (Probability): ์ฌ๊ฑด์งํฉ์ ์ํ ํ๋ฅ ๋ณ์์๊ฒ ์ด๋ค ๊ฐ์ ์ง์ ํด์ฃผ๋ ํจ์
- p(X=ei)
- x ๊ฐ i๋ฒ์งธ event๋ฅผ ๊ฐ์ง๋ ๊ฒ์ด ‘์ผ๋ง๋ ๊ฐ๋ฅํ์ง’ ์ธก์
- ํน์ฑ(Properties)
- Non-negatives: p(X=ei)≥0 , ํ๋ฅ ์ (-)๊ฐ ๋ ์ ์์.
- Unit volume: ∑e∈Ωp(X=e)=1 , ๋ชจ๋ ํ๋ฅ ์ ํฉ์ 1.
probability๋ก ์ด๋ป๊ฒ ๋น์ฉํจ์ (loss function)๋ฅผ ์ฐพ๋?
- Input(x) ๊ฐ์ด ์ฃผ์ด์ก์ ๋ ์ Output(y) ๊ฐ์ด y’ ์ผ ํ๋ฅ ์ ๊ตฌํ๋ ๊ฒ
- ์ธ๊ณต์ ๊ฒฝ๋ง ๋ชจ๋ธ์ด ์กฐ๊ฑด๋ถ ํ๋ฅ ๋ถํฌ๋ฅผ ์ถ๋ ฅํ๋ฉด ์ด๋ฅผ ์ฌ์ฉํด์ ๋น์ฉํจ์๋ฅผ ์ ์ ํ ์ ์๋ค!
๊ทธ๋ ๋ค๋ฉด ์ด๋ค ํ๋ฅ ๋ถํฌ๊ฐ ์๋?
- ์ด์ง ๋ถ๋ฅ: ๋ฒ ๋ฅด๋์ด(Bernoulli) ๋ถํฌ
- y๊ฐ 0์ผ ํ๋ฅ (1-๋ฎค)
- y๊ฐ 1์ผ ํ๋ฅ (๋ฎค)
- ์ฆ ํ๋ผ๋ฏธํฐ๊ฐ ๋ฎค (0<๋ฎค<1) ํ๋ → ์ฌ๊ธฐ์ sigmoid function(input์ 0๋๋ 1๋ก ๋งคํํด์ฃผ๋ ํจ์)๋ฅผ ์ ์ฉํด distribution output ๋ง๋ค์ด๋
- ๋ค์ค ๋ถ๋ฅ: ์นดํ
๊ณ ๋ฆฌ(Categorical) ๋ถํฌ
- ์๋ฅผ๋ค์ด text classification. ์์ํ์ด ์ธ ๊ฐ ์ด์์ผ ๋.
- ๋์จ ๋ชจ๋ output์ ๋ํ์ ๋ 1์ด ๋์ด์ผ ํจ
- softmax function(๋ค ๋ํ ํ 1๋ก ๋ ธ๋ฉํ, ๋น์จ๋ก ๋๋ ๋ฒ๋ฆฐ๋ค)
- function space ๊ด์ ์ผ๋ก ๋ณผ ๋ sigmoid function๊ณผ softmax function์ด ๋น์ทํด๋ณด์ด์ง๋ง, parameter space ๊ด์ ์์ ๋์ ๋์ผํ์ง ์์ผ๋ฏ๋ก ๊ตฌ๋ถํด ์ฌ์ฉ.
- ์ ํ ํ๊ท: ๊ฐ์ฐ์์(Gaussian) ๋ถํฌ
- ๋คํญ ํ๊ท: ๊ฐ์ฐ์์ ๋ฏน์ค์ณ(Mixture of Gaussians)
์๋์ผ๋ก ๋น์ฉํจ์(loss function)์ ์ํ๊ธฐ
- ์ธ๊ณต์ ๊ฒฝ๋ง ๋ชจ๋ธ์ด ์กฐ๊ฑด๋ถ ํ๋ฅ ๋ถํฌ๋ฅผ ์ถ๋ ฅํ๋ฉด ์ด๋ฅผ ์ฌ์ฉํด์ ๋น์ฉํจ์๋ฅผ ์ ์ ํ ์ ์๋ค.
- ์ต๋ํ ๋ชจ๋ธ์ด ์ถ๋ ฅํ ์กฐ๊ฑด๋ถ ํ๋ฅ ๋ถํฌ๊ฐ ํ๋ จ ์ํ์ ํ๋ฅ ๋ถํฌ์ ๊ฐ๊ฒ ๋ง๋๋ ๊ฒ.
- ์ฆ ๋ชจ๋ ํ๋ จ ์ํ์ด ๋์ฌ ํ๋ฅ ์ ์ต๋ํ
- ์ต๋ ์ฐ๋ ์ถ์ (Maximum Likelihood Estimation) : ์๋์ผ๋ก loss function ์ ์ํ ์ ์๋ค.
- ์ต์ํ๋ฅผ ํ๊ธฐ ์ํด์ ์์ ๋ง์ด๋์ค ๋ถํธ๋ฅผ ๋ถ์ฌ์ค๋๋ค. (-1 ์ ๊ณฑํฉ๋๋ค.)
- ์ต์ข ์ ์ผ๋ก, loss function์ ์์ ๋ก๊ทธํ๋ฅ (Negative Log-probabilities)์ ํฉ์ผ๋ก ๊ฒฐ์ .
How to optimize
So far,
- hyperthesis๋ฅผ ๊ฒฐ์ ํ๊ณ DAG๋ฅผ ๊ทธ๋ ค๋ณด์.
- DAG์ parameter๋ค์ด ์ ํด์ก๋ค๋ฉด ๋ฌด์ํ hyperthesis sets ์ค์์ ๋ชจ๋ธ์ ๊ฒฐ์ ํ ๊ฒ์ด๋ค.
- neural network์๋ ๋น์ฐํ output์ด ์์ ๊ฒ์ด๋ค. ์ด ๋ output์ด ํ๋์ value๊ฐ ์๋๋ผ distribution์ด๋ผ๋ฉด ์์ ๋ก๊ทธํ๋ฅ (Negative Log-probability)๋ฅผ ๊ณ์ฐํ ์ ์๋ค.
- ์ด ํ๋ฅ ์ ํฉ์ด ์ต์ข ์ ์ผ๋ก loss function์ด ๋๋ค. loss function์ ์์ ์๋ก ์ข๋ค.
- ์ฆ, ์ง๊ธ๊น์ง ์ฐ๋ฆฌ๊ฐ ์๋ ๊ฒ
- arbitrary architecture๋ก neural network๋ฅผ ๋ง๋ค์๋ค.
- loss๋ฅผ ๊ณ์ฐํ๋ค.
- ์ด ๋๊ฐ์ง๋ DAG๋ก ํํ๋์๋ค.
- ์ด์ ๋ญ ๋ ์์์ผ ํ๋?
- optimization algorithm ์ ์ ํด์ผ๊ฒ ๊ณ ,
- ์ ํ optimization algorithm์ ์ด๋ป๊ฒ DAG์ ํ๋ผ๋ฏธํฐ๋ก์จ ํ์ฉํ ์ง ์์์ผ๊ฒ ๋ค.
์ด์ฐจํผ ๋ฌด์ํ ๊ฒฝ์ฐ์ ์ ์ค ํ๋๋ฅผ ๋ฐ๋ก ์ฐพ๊ธฐ ํ๋ค๋ค๋ฉด, ๋ฐ๋ณต์ ์ผ๋ก ์ต์ ํํ์.
- random guided search
- ๋๋ฉ์ ์ ๋์ผ์๋ก ์ํ๋ง์ ๋ง์ดํด์ผํด์ ํจ์จ์ฑ์ด ๋จ์ด์ง
- ์ฅ์ : ์ด๋ค ๋น์ฉํจ์๋ฅผ ์ฌ์ฉํด๋ ๋ฌด๊ด
- ๋จ์ : ์ฐจ์์ด ์์ ๋๋ ์ ๋์ง๋ง, ์ฐจ์์ ์ ์ฃผ ๋๋ฌธ์ ์ปค์ง ์๋ก ์ค๋๊ฑธ๋ฆผ. ์ํ๋ง(sampling) ์ ๋ฐ๋ผ์ ์ค๋๊ฑธ๋ฆผ.
- ๋ง์ฝ continuous, differentiableํ๋ค๋ฉด? → gradient-based optimization
- gradient descent
- ๋ฏธ๋ถ์ ํ์ฉํด ์ต์ ํํ๋ค.
- learning rate ๋ฑ ์์ฃผ ์์ ํ๋ผ๋ฏธํฐ๋ฅผ ์ถ๊ฐํ๋ค. ์ด๋ค ๋ฐฉํฅ์ผ๋ก ํ๋ฌ๊ฐ ๋ ์์์ง๋์ง ์ ์ ์์ด์ง๋ค.
- ํ ๋ฒ gradient๋ฅผ ๊ณ์ฐํ ์ ์๋ค๋ฉด optimization ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ ธ๋ค ์ธ ์ ์๋ค
- random guided search์ ๋ค๋ฅธ ์ ์? learning rate- ์ด๊ฒ์ ๋งค์ฐ ์ฌ์ธํ๊ฒ ์ ํด์ผ ํ๋ค. ๋๋ฌด ํฌ๋ฉด ์ค๋ฒ์ํ ์ผ์ด๋๋ค.
- ์ฅ์ : Random Guided search ์ ๋นํด์ ํ์์์ญ์ ์์ง๋ง ํ์คํ ๋ฐฉํฅ์ ์ ํ ์ ์๋ค.
- ๋จ์ : ํ์ต๋ฅ (Learning Rate)์ด ๋๋ฌด ํฌ๊ฑฐ๋ ์์ผ๋ฉด ์ต์ ์ ๊ฐ์ผ๋ก ๋ชป๊ฐ ์๋ ์๋ค.
๊ทธ๋ผ gradient๋ฅผ ์ด๋ป๊ฒ ๊ณ์ฐํ๋?
- automatic differentiation (autograd, ์๋๋ฏธ๋ถ๋ฒ)
- ํ๋ผ๋ฏธํฐ๋ ๋ง๊ณ , ๋ ธ๋๋ ๋ง๋ค. gradient ๊ณ์ฐ์ด ์ด๋ ต๋ค. ๊ทธ๋์ ๊ณ ์๋ ๊ฒ.
- DAG๋ differentiable(๋ฏธ๋ถ๊ฐ๋ฅ) ํ๋ค. chain rule์ด ๊ฐ๋ฅํ๋ค
- ๊ณผ์
- ๊ฐ ๋ ธ๋์์ Jacobian-vector product์ ๊ณ์ฐํฉ๋๋ค.
- ๋น์ํ ๊ทธ๋ํ(DAG) ์ญ์์ผ๋ก ์ ํํฉ๋๋ค.
- ์ฅ์
- Gradient ๋ฅผ ์์ผ๋ก ์ง์ ๊ณ์ฐํ ํ์ ์์
- [front-end]์ [back-end]์ ๋ถ๋ฆฌ
- [front-end] ๋น์ํ ๊ทธ๋ํ(DAG)๋ฅผ ๋ง๋ฆ์ผ๋ก์จ ๋ด๋ด๋ท(๋ชจ๋ธ)์ ๋์์ธํ๋๋ฐ ์ง์ค.
- [back-end] ๋์์ธ ๋ ๋น์ํ ๊ทธ๋ํ(DAG)๋ ํ๊ฒ ์ปดํจํฐ ์ฅ์น๋ฅผ ์ํ ํจ๊ณผ์ ์ธ ์ฝ๋๋ก ์ปดํ์ผ๋จ. — ํ์ดํ ์น, ํ ์ํ๋ก์ฐ ๊ฐ์ Framework ๊ฐ๋ฐ์๋ค์ด ํ๊ฒ์ ๋ง์ถฐ ์๋ง๊ฒ ๊ตฌํํ๋ฉด ์ฌ์ฉ์๋ค์ ์ฌ์ฉ๋ง ํ๋ฉด ๋จ (๋ฌผ๋ก ์์์ผ ๋์์ด ๋๊ธด ํ๋ค..)
Gradient-based optimization
- gradient-based optimization (๊ฒฝ์ฌ ๊ธฐ๋ฐ ์ต์ ํ ๊ธฐ๋ฒ)
- training set loss๊ฐ ๊ฐ sample์ ๋ํ loss์ ํฉ์ด๋ฏ๋ก, parameter๊ฐ ๋ง์ผ๋ฉด ์๊ฐ์ด ์ค๋๊ฑธ๋ฆฐ๋ค.
- stochastic gradient descent (ํ๋ฅ ์ ๊ฒฝ์ฌ ํ๊ฐ๋ฒ)
- noise๋ random value๊ฐ ๋ผ์ด์์.
- ๋ฐ์ดํฐ๊ฐ ํธํฅ๋์๋ค๋ฉด? correnction์ ์ ๊ฒฝ์ฐ๋ฉด ๋๋ค. ๋ชฌํ ์นด๋ฅผ๋ก(Monte Carlo method), ๋๋ important sampling. ์ด๋ค ๊ฒ์ด ํธํฅ๋์๋์ง๋ ๋ชจ๋ฅด๋ ์ํฉ์ด๋ผ๋ฉด validation set์ ์กฐ์ฌ์ค๋ฝ๊ฒ ์ค์ ํ๋ ์๋ฐ์ ์๋ค. natural distribution์ด๋ ๋น์ทํ๊ฒ ๋ง๋ค์ด์ early stopping์ ํ๋ ๊ฒ ์ต์ ์.
- sample์ ์ผ๋ถ๋ฅผ ๋ช ๊ฐ๋ง ๊ณจ๋ผ์ ๊ณ์ฐํ๋ฉด ์ ์ฒด ๋น์ฉ์ ๊ทผ์ฌ๊ฐ(approximate)์ ๊ฐ๋ค๋ ๊ฐ์
- mini batch ์ ํ : m๊ฐ์ ํ๋ จ ์ํ ์ ํ
- mini batch ๊ฒฝ์ฌ ๊ณ์ฐ
- parameter ์ ๋ฐ์ดํธ
- validation set loss์ ๋ ์ด์ ์ง์ ์ด ์์ ๋ stop (early stopping)
- early stopping : overfitting ๋ฐฉ์งํ๊ธฐ์ ๊ฐ์ฅ ์ข์ ์๊ณ ๋ฆฌ์ฆ. validation loss ๊ฐ์ฅ ๋ฎ์ ๊ณณ์์ ํ๋ จ์ ๋ฉ์ถ๋ ๊ฒ.
- adaptive learning rate : stochastic gradinet descent๋ learning rate์ ๋ฏผ๊ฐํจ. noise๊ฐ ํฐ ์ํฉ์์ ์ด๋ค ๊ฒ๋ค์ ์จ์ผ optimization ํ ์ ์๋? → adam, adadelta ๋ฑ๋ฑ์ด module๋ก ๋์์์.
-
๐ก๋ณธ ํ์ด์ง๋ ์กฐ๊ฒฝํ ๊ต์๋ ‘๋ฅ๋ฌ๋์ ์ด์ฉํ ์์ฐ์ด์ฒ๋ฆฌ’ ๊ฐ์๋ฅผ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค.
Uploaded by Notion2Tistory v1.1.0