곡λΆλ₯Ό μμνκΈ° μμ ν°μ€ν 리 λ°©λ¬Έμ 100λͺ μ λ¬μ±νλ€πλΈλ‘κ·Έ λ°©λ¬Έμ λ°±λͺ λ¬μ±!
μλ‘μ΄ μ¬λ λ°±λͺ μ λ§λ¬λ€κ³ μκ°νλ©΄ κ½€ λλ¨ν μ«μκ° μλκΉ μ€μ€λ‘λ₯Ό μΉμ°¬ν¨κ³Ό
λμμ λ κΎΈμ€ν κΈμ μ¬λ¦¬κΈ°λ₯Ό λ€μ§νλ©°! μ€λμ 곡λΆλ₯Ό μμν΄ λ³΄μ.
* μ΄ κΈμ λ€μ΄λ² λΆμ€νΈ μ½μ€μ λ₯λ¬λ κΈ°μ΄ λ€μ§κΈ° κ°μλ₯Ό μκ°νλ©° μ 리ν κΈμ λλ€.
μ€λμ λ₯λ¬λμμ νμ©νλ Neural Network ꡬ쑰μ Multi-Layer Perceptronμ λν΄ μμ보μ.
0. Neural Network λ?
ν¬μ λ₯μ μ κ²½λ§μ λͺ¨λ°©νκ³ μ νλ μμ€ν
μ΄λ€.
(λΉνκΈ°λ μλ₯Ό λͺ¨λ°©νμ§λ§, κΌ μμ λ°©μμΌλ‘λ§ λ μ§λ μλλ€.
μ΄κ² λ¬΄μ¨ λ§μ΄λ νλ©΄ μ μ°¨ λ°μ νλ©° νλ‘ν λ¬λ μμ§ λ±μ μΆκ°νκ³ μ’μ μ±λ₯μ λ΄κΈ° μν΄μ λ€μν μ°μ°μ μΆκ°νλ κ³Όμ μμ μ²μμ λͺ©μ μΈ μμ μμ§μμ λͺ¨λ°©νλ κ²μμλ μ΄ννλ€λ κ²μ΄λ€.)
μ΄μ λ§μ°¬κ°μ§λ‘, λ₯λ¬λμ΄ μ΄κΈ°μλ μ¬λμ λλ₯Ό λͺ¨λ°©νκ³ μ νμμΌλ, νμ¬λ μΈκ°μ λλ₯Ό λͺ¨λ°©νλ€λ λͺ©μ μ ν¨μ¬ λ λμκ° μνμ μΈ μ κ·Όλ°©μμ ν΅ν΄ μ’μ μ±λ₯μ λ΄κ³ μλ€.
λ°λΌμ λ₯λ¬λμ λν λ μ¬λ°λ₯Έ μ μλ λ€μκ³Ό κ°λ€.
function approximators that stack affine transformations followed by nonlinear transformations
: λ΄κ° μ μν function(λͺ¨λΈ)μΌλ‘ κ·Όμ¬νλ ν¨μλ‘
νλ ¬ κ³± μ°μ°κ³Ό λΉμ νμ°μ°(activation function)μ΄ λ°λ³΅μ μΌλ‘ μνλλ€.
1. κ°μ₯ λ¨μν Neural Network - 1D Linear Neural Network (1μ°¨μ μ ννκ·)
μ μΌ λ¨Όμ κ°μ₯ κ°λ¨ν Neural Network κ΅¬μ‘°μΈ μ ννκ·μ λν΄ μ΄ν΄λ³΄μ.
1μ°¨μ μ ννκ· λ¬Έμ λ μ λ ₯ : 1μ°¨μ ⇒ μΆλ ₯ : 1μ°¨μ μΌ λ, μ΄λ₯Ό κ°μ₯ μ κ·Όμ¬νλ $ y=wx+b $ λ₯Ό ꡬνλ κ²μ΄λ€.
μμ λ§νλ―, λ₯λ¬λμ λ°μ΄ν°, λͺ¨λΈ, μμ€ν¨μλ‘ μ μν μ μλ€.
- Data : $ D=\left\{(x_i, y_i) \right\}_{i=1}^{N} $
- Model : $ \hat{y}=wx+b $
- Loss : $ loss=\frac{1}{N} \sum_{i=1}^{N}(y_i-\hat{y_i})^2 $
μ¬μ°¨ λ§νμ§λ§, μ°λ¦¬μ λͺ©μ μ Loss functionμ Minimize νλ
⇒ μ΅μ μ νλΌλ―Έν° w, bλ₯Ό μ°Ύλ κ²μ΄λ€.
μ΄λ, μ΅μ μ wμ b κ°μ ꡬνλ λ§μ μκ³ λ¦¬μ¦μ΄ μλλ°, κ·Έμ€ back propagationμ μ¬μ©ν΄ 보μ.
Step 1. Loss ν¨μλ₯Ό κ°κ° wμ bμ λν΄ νΈλ―ΈλΆ νλ€.
- Loss ν¨μμ wμ λν νΈλ―ΈλΆ λ°©μ μ ($\frac{\partial loss}{\partial w}$)
$\frac{\partial loss}{\partial w}=\frac{\partial }{\partial w}\frac{1}{N}\sum_{i=1}^{N}(y_i-\hat{y_i})^2$
$=\frac{\partial }{\partial w}\frac{1}{N}\sum_{i=1}^{N}(y_i-wx_i-b)^2$
$=-\frac{1}{N}\sum_{i=1}^{N}-2(y_i-wx_i-b)x_i $
- Loss ν¨μμ bμ λν νΈλ―ΈλΆ λ°©μ μ($ \frac{\partial loss}{\partial b}$)
$ \frac{\partial loss}{\partial b}=\frac{\partial }{\partial b}\frac{1}{N}\sum_{i=1}^{N}(y_i-\hat{y_i})^2$
$=\frac{\partial }{\partial b}\frac{1}{N}\sum_{i=1}^{N}(y_i-wx_i-b)^2$
$=-\frac{1}{N}\sum_{i=1}^{N}-2(y_i-wx_i-b)x_i $
Step 2. κ° νλΌλ―Έν°μ νΈλ―ΈλΆκ°μ λ°μν΄ μ λ°μ΄νΈνλ€.(Gradient Decent λ°©μ μ΄μ©)
cf) Gradient Decent : κ° νλΌλ―Έν°μ loss functionμ νΈλ―ΈλΆ κ°μ λΉΌλ λ°©λ²(⇔Gradient Ascent)
$ w \leftarrow w-\eta \frac{\partial loss}{\partial w} $
$ b \leftarrow b-\eta \frac{\partial loss}{\partial b} $
κ·Έλ λ€λ©΄ $\eta$ : Stepsize(=learning rate)λ μ΄λ»κ² μ ν κΉ?
- λ무 ν¬λ©΄ Loss ν¨μμ μ΅μκ°μ κ³μ°νμ§ λͺ»νκ³ κ³μ μ»€μ Έλ λ°©ν₯μΌλ‘ λμκ°λ€.
- λ무 μμΌλ©΄ λ§€μ° λλ¦° μλλ‘ νμ΅μ΄ μ§νλκΈ° λλ¬Έμ λΉν¨μ¨μ μ΄λ€.
μμμ μ λΉν μ ν΄μΌ νλλ°,
⇒ λ€μ κ°μμ μ΅μ ν(Optimization) λ°©λ²λ‘ μμ Adaptive learning rateμ λν΄ νμ΅νκ² λλλ° μ΄ λ°©λ²μ μ΄μ©νλ©΄ step sizeλ₯Ό μλμΌλ‘ λ°κΏμ€λ€κ³ νλ€.
2. Linear Neural Network
μμ λ΄μ©μ νμ₯ν΄ λ³΄μ.
μ λ ₯ : mμ°¨μ ⇒ μΆλ ₯ : nμ°¨μ μΌ λμ μ ν λͺ¨λΈμ μ°Ύμ보μ.
νλ ¬λ³ν(νλ ¬κ³±=affine transform) μλ‘ λ€λ₯Έ μ°¨μμ 맀ννλ κ²μ΄λ€.
μμμ μΌλ‘λ
$y=W^Tx+b$ (y, x, bλ 벑ν°μ΄κ³ , Wλ νλ ¬)μΌλ‘ μ μν μ μκ³ , κ·Έλ¦ΌμΌλ‘ λνλ΄λ©΄ λ€μκ³Ό κ°λ€.
3. μ΄λ»κ² λ₯λ¬λμ΄ μ’μ μ±λ₯μ λΌκΉ
μΈκ°μ λλ₯Ό λͺ¨λ°©νκΈ° λλ¬Έμμ λλ΅μμ λ²μ΄λ보μ.
λ₯λ¬λμ ννλ ₯μ ννλ ₯μ λν μ λͺ ν μ λ¦¬κ° μλ€.
Universal Approximators theorem(μ 리)
there is a single hidden layer feedforward network that approximates any measurable function to any desired degree of accuracy on some compact set K
: νλ λ μ΄μ΄κ° 1κ° μλ λ΄λ΄ λ€νΈμν¬μ ννλ ₯μ λλΆλΆμ μ°μμ μΈ ν¨μ(μ°λ¦¬κ° νννκ³ μ νλ λλΆλΆμ ν¨μ)μ λν΄ λνλΌ μ μλ€.
νμ§λ§, μ΄ κ°μ€μ μ‘΄μ¬μ±λ§μ 보μΈλ€. λ΄κ° νμ΅μν¨ λ΄λ΄ λ€νΈμν¬κ° λͺ©μ ν¨μμ μ΄λ»κ² λ€κ°κ° μ μλμ§μ λν μλ―Έλ μλλ€.
4. Multi Layer Perceptron λ€μΈ΅ λ μ΄μ΄ νΌμ νΈλ‘
μ, μ΄μ μμ λ§νλ λ₯λ¬λμ μ μλ₯Ό λ€μ νλ² λ μ¬λ € 보μ.
λ΄κ° μ μν function(λͺ¨λΈ)μΌλ‘ κ·Όμ¬νλ ν¨μλ‘
νλ ¬ κ³± μ°μ°(affine transformations)κ³Ό λΉμ νμ°μ°(activation function)μ΄
λ°λ³΅μ μΌλ‘ μνλλ λ°©μμΌλ‘ μλνλ€.
λ°λΌμ μΌλ°μ μΈ λ₯λ¬λ λͺ¨λΈμ λ€μκ³Ό κ°μ μμΌλ‘ ννν μ μλ€.
μ νμ°μ°⇒ λΉμ νμ°μ°(=nonlinear transformation) ⇒ μ νμ°μ°,,,, μ λ°λ³΅
cf) μ©μ΄μ 리
μ νμ°μ°(=νλ ¬κ³±μ°μ°=affine transformation), λΉμ ν μ°μ°(=νμ±νν¨μ=nonlinear transformation)
κ·Έλ λ€λ©΄ μ λΉμ ν μ°μ°μ ν¬ν¨μμΌμΌ ν κΉ?
λͺ¨λ μ ν μ°μ°μ λ€λ₯Έ νλμ μ ν μ°μ°μΌλ‘ ννν μ μκΈ° λλ¬Έμ μΈ΅μ ꡬμ±νμ§ λͺ»νκΈ° λλ¬Έμ΄λ€.
xμ λν΄ νλ ¬ $W_1, W_2$λ₯Ό κ³±νλ€κ³ μκ°ν΄ 보μ.
$W_1W_2$μ νλ ¬κ³±μ λ€λ₯Έ νλ ¬ $W_3$λ‘ ν λ²μ ννν μ μλ€.
$W_1W_2x = W_3x$
νλ ¬μ λ€μκ³Ό κ°μ νΉμ§μΌλ‘ μΈν΄ Layer(μΈ΅)μ μΆκ°ν μ μκΈ° λλ¬Έμ λΉ μ ν μ°μ°μ μΆκ°νμ¬ μΈ΅μ νννλ€.
μ΄μ λΉμ ν μ°μ°(nonlinear function)μ λν΄ μ‘°κΈ λ μ΄ν΄λ³΄μ.
λΉμ ν μ°μ°μΌλ‘ λ³΄ν΅ Activation function(νμ±ν¨μ)λ₯Ό μ¬μ©νλλ° μ¬λ¬ κ°μ§ μ’ λ₯κ° μλ€.
- Step function
- RELU
- Sigmoid
- Hyperbolic Tangent
μ, λ₯λ¬λμ λν λͺ¨λ κ΅¬μ± μμ(μ νμ°μ°, λΉμ νμ°μ°) λ€μ μ΄ν΄λ΄€μΌλ μ΄μ λ€μ€ λ μ΄μ΄ νΌμ νΈλ‘ μ ννν΄ λ³΄μ.
μμ ) 3 Layer μ€μ 2 hidden layerκ° μλ λ΄λ΄ λ€νΈμν¬ νννκΈ°.
$ y=W_{3}^{T}h_2=W_{3}^{T}\rho_2(W_{2}^{T}h_1)=W_{3}^{T}\rho_2 W_{2}^{T}\rho_1(W_{1}^{T}x) $
μμ ν΅ν΄ μ΄ν΄λ³Έ μ©μ΄μ νΉμ§
hidden layer : μ νμ°μ°κ³Ό λΉμ νμ°μ°μΌλ‘ ꡬμ±layer : μ ν μ°μ°μ λͺ λ² νλμ§
'μΈκ³΅μ§λ₯πΎ > λ₯λ¬λ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[μΈκ³΅μ§λ₯ λ₯λ¬λ] 0. λ₯λ¬λ κΈ°μ΄ μ§μ(1) (1) | 2023.03.19 |
---|