π κ΅λ΄ 'μΈκ³΅μ§λ₯' μμ μ ν΅ν΄ 곡λΆν λ΄μ©μ μ 리ν κ²μ λλ€.
μμ½
β Universal approximation theorem
β‘ Activation function
β’ DNN : why deep?
β£ Random Initialization
- tanh, ReLU : κ°μ€μΉκ° 0μΌλ‘ κ³ μ
- sigmoid : κ°μ€μΉκ° suboptimal matrix ννλ‘ μ λ°μ΄νΈ
β€ Application example : Face recognition
1οΈβ£ Universal approximation thm , activation function
β Universal approximation theorems
π μΆ©λΆν κ°μ€μΉκ° μ μ©λμμ λ, MLP λ‘ μ΄λ ν ν¨μλ κ·Όμ¬μν¬ μ μλ€.
- hidden layer μ μλ hidden unit μ κ°μκ° μΆ©λΆν λ§λ€λ©΄ 2κ°μ layer λ‘ κ΅¬μ±λ MLP λ‘ λͺ¨λ ν¨μλ₯Ό κ·Όμ¬μν¬ μ μλ€.
π€ κ·Έλ λ€λ©΄ λ₯λ¬λμ μ μ¬μ©νλκ° →ν¨μ¨μ±μ λ¬Έμ
β‘ νμ±ν ν¨μ
π νμ±ν ν¨μλ non-linearlity λ₯Ό λΆμ¬νμ¬ NN μΌλ‘ λΉμ νμ μΈ λ¬Έμ λ₯Ό ν μ μλλ‘ νλ€.
- λΉμ ν ν¨μλ₯Ό ν΅ν΄ κ° layer μ¬μ΄λ₯Ό λΉμ νμ μΌλ‘ μ°κ²°μμΌμ€λ€.
- κΆκ·Ήμ μΌλ‘ μΈμμ μλ 볡μ‘ν λ¬Έμ λ linear νκ² ν μ μλ λ¬Έμ κ° λ λ§λ€.
- νμ±νν¨μκ° μ‘΄μ¬ν΄μΌ layer λ₯Ό μμΌλ©° feature extraction μ ν΅ν΄ space transformation μ μνν μ μλ€.
π¨ νμ±ν ν¨μκ° μμΌλ©΄ 곡κ°λ³νμ΄ λ°μνμ§ μμ layer λ₯Ό μμλ μ νλ³νλ§ λ°μν¨
μΈ΅μ μλ κ²μ΄ 무μλ―Έ ν΄μ§ π
πΎ μ°Έκ³ : linear vs non-linear
β’ νμ±ν ν¨μ μ’ λ₯
π νμ±ν ν¨μλ‘ λ―ΈλΆ κ°λ₯νκ³ non-linear ν ν¨μκ° μμ£Ό μ¬μ©λλ€.
π Gradient descent (μμ ν) κ³μ°μ νμν νμ±ν ν¨μ λ―ΈλΆ
2οΈβ£ DNN
β Deep Neural network
π layer λ₯Ό λ§μ΄ μμ λ€νΈμν¬ = DNN
π Fully-connected Network (Dens layer) : λ΄λ°λ€μ΄ μ κ²°ν© λμ΄μλ μν
π Convolution Neural Network : layer κ° μ κ²°ν© λμ΄ μμ§ μλ€.
π λ΄λ° μ¬μ΄μ κ²°ν© ννμ λ°λΌ μ’ λ₯κ° λ€μνλ€.
π μλ‘ λ€λ₯Έ κ²°ν© ννμ layer λ₯Ό μμ΄μ λͺ¨λΈμ μμ±νκΈ°λ νλ€.
β‘ κΉμ μΈ΅μ νμ±νλ μ΄μ ft. Circuit Theory Analogy
π Small (hidden units) n-layer dnn == Shallower network with exponentially more hidden units
π¨ κ·Έλ¬λ ν¨μ¨μ±μ μΌμͺ½ network κ° λ μ’μ!
- λ΄λ° κ°μλ μ λλΌλ μΈ΅μ κΉμ΄ μμ network κ° μ€νλ € λΉμ ν λ³νμ΄ μ¬λ¬λ² λ°μνλ©° λ 볡μ‘ν task λ₯Ό μ½κ² μνν μ μλ€.
β’ Forward propagation in DNN
β£ Backpropagation in DNN
π dw, dz, dy λ‘ μ°μ°λλ μ°μκ³Όμ μ΄ν΄νκΈ°!
π MLP μμ μ 리νλ gradient descent μ°μ° κ³Όμ λμ ν΄μ μ΄ν΄ν κ²
π dW = error(1)* input
π error(1) = error(2) * W * f '
π» error(2) * W = dy = input gradient
β€ hyperparameters
π Parameter
- κΈ°κ³κ° training μ ν΅ν΄ κ°μ update νλ€.
π HyperParameter
- trial error, μ¦ μ¬λμ΄ μ§μ κ°μ λ°κΏκ°λ©° μ΅μ μ κ°μ κ²°μ ν΄μΌ νλ€.
β₯ Random Initialization problem
π μ΄κΈ°κ°μ λ€λ₯΄κ² μ€μ νλ©΄ νλ ¨ κ²°κ³Όλ λ¬λΌμ§λ€.
- μ΄κΈ°κ°μ μ μ€μ ν΄μ£Όλ κ²λ λ§€μ° μ€μνλ€ ββ
- μΌλ°μ μΌλ‘λ small random number λ‘ μ΄κΈ°κ°μ μ€μ νλ€.
π μ΄κΈ°κ°μ 0μΌλ‘ μ€μ ν λ λ°μνλ λ¬Έμ μ
(1) νμ±ν ν¨μκ° tanh λ ReLU μΌλ
- Weight κ°μ΄ 0μμ λ²μ΄λμ§ λͺ»νλ©° weight update κ° μ΄λ£¨μ΄μ§μ§ μλλ€.
(2) νμ±ν ν¨μκ° Sigmoid μΌλ
- weight matrix κ° μΉΌλΌλ³λ‘ νμ κ°μ κ°μΌλ‘λ§ κ°±μ λλ suboptimal ν νμμ΄ λ°μνκΈ° λλ¬Έμ μ΅μ μ weight κ°μ μ°Ύμ§ λͺ»νλ λ¬Έμ κ° λ°μνλ€.
- weight κ°μ΄ λ€μν΄μΌ νλ ¨λ μ μ΄λ£¨μ΄μ§λ€.
β κ²°λ‘ μ κ°μ€μΉ μ΄κΈ°κ°μ 0μΌλ‘ μ€μ νλ©΄ μ!λ!λ€!
3οΈβ£ DNN μ μμ© : Face recognition
β Training data
π layer λ₯Ό λ§μ΄ μμ λ€νΈμν¬ = DNN
- μ 체 20λͺ μΌλ‘ ꡬμ±λμ΄ μκ³ , ν μ¬λλΉ 32κ°μ νλ°± μ¬μ§μ΄ μ‘΄μ¬νλλ° κ° μ¬μ§λ³λ‘ μ¬λμ νμ , μΌκ΅΄ λ°©ν₯, μ κΈλΌμ€ μ°©μ© μ λ¬΄κ° λ€λ₯΄κ² μ€μ λμ΄ μλ€. μλ μ΄λ―Έμ§ λ°μ΄ν°λ 120x128 ν¬κΈ°μ ν½μ λ‘ μ΄λ£¨μ΄μ Έ μλ€.
- λͺ©νλ μ¬λμ΄ μ΄λλ°©ν₯μ λ³΄κ³ μλμ§ left, right, straight ahead, up μ€μ νλλ₯Ό λ§μΆλ κ²
- 120x128 pixel μ μλ³Έ μ΄λ―Έμ§λ₯Ό 30x32 ν¬κΈ°λ‘ λ³νμν¨ ν, 2d μΈ matrix λ₯Ό 1dλ‘ flatten μμΌ ν¬κΈ°κ° 960μΈ λ²‘ν°λ₯Ό μ λ ₯μΌλ‘ λ£λλ€.
- hidden unit μ 3κ°, output unit μ 4κ°
- μ΅μ’ μ μΌλ‘ 960 x 3 x 4 network κ° νλ ¨λλ€.
β‘ DNN design
π Input Encoding : μΈνμ μ΄λ€ ννλ‘ νννμ¬ NNμ λ£μκΉ?
(1) Feature extraction (preprocessing)
- μ¬λμ΄ μ§μ κ²°μ ν key feature λ₯Ό λ½μ μΈνμΌλ‘ λ£μ΄μ€λ€.
- (μ) μ΄λ―Έμ§ λ°μ΄ν°μμ edge, region of uniform intensity λ± νΉμ λΆλΆμ μΆμΆν΄ μΈνμΌλ‘ λ£μ΄μ€λ€.
- (λ¨μ ) νΌμ²λ₯Ό μΆμΆνλλ° μκ°μ΄ μ€λ κ±Έλ¦¬κ³ , νΌμ²μ κ°μκ° μ΄λ―Έμ§λ§λ€ λ€λ₯΄κ² μΆμΆλλ, μ¦ input κ°μκ° κ³ μ λμ§ μλ λ¬Έμ μ μ΄ λ°μν μ μλ€. λ°λΌμ μ΄ λ°©λ²μ μ μ¬μ©νμ§ μλλ€.
(2) Coarse-resolution
- μ°μ°λμ μ€μ΄κΈ° μν΄ μ΄λ―Έμ§μ ν¬κΈ°λ₯Ό μ€μ΄λ λ°©λ²μ΄λ€.
- Face recognition λ μ΄ λ°©λ²μ μ¬μ©νμ¬ 120x128 μ΄λ―Έμ§ ν½μ μ 30x32 ν¬κΈ°λ‘ μ€μλ€. μ¦ μ°μ°λμ΄ 16λ°° κ°μνλ€κ³ λ³Ό μ μλ€. (κ°λ‘ 1/4, μΈλ‘ 1/4)
- μλ³Έ μ΄λ―Έμ§λ₯Ό κ·Έλλ‘ μΈνμΌλ‘ λ£μ΄μ£Όλ κ² λ³΄λ¨, course resolution μ νμ¬ μλ³Έ μ΄λ―Έμ§λ₯Ό μμ½ν ννλ‘ λ£μ΄μ£Όλ κ²μ΄ 볡μ‘λλ₯Ό μ€μ¬ μ€νλ € νμ΅μλ λ μ’λ€.
π Output Encoding
(1) One Unit Scheme
- multiple threshold values λ₯Ό μ¬μ©νμ¬ output μ΄ 1κ°λ‘ λμΆλλ νν λ°©μμ μ¬μ©
(2) Multiple Unit Scheme
- single threshold value λ₯Ό μ¬μ©νμ¬ λ€μμ output μ λμΆνλ ννμμ μ¬μ©
- One hot encoding μ΄ λνμ μΈ ννμ
- 1κ³Ό 0μΌλ‘ ꡬμ±λ μν«μΈμ½λ© λ°©μλΏ μλλΌ κ° κ°μ 'νλ₯ κ°'μΌλ‘ νννλ ννμλ μ‘΄μ¬νλ€.
- multiple output νννλ©΄ 1. target function μ νννλλ° μμ΄μ μμ λκ° λλ€ 2. κ°μ₯ ν° κ°κ³Ό κ·Έ λ€μμΌλ‘ ν° κ°μ μ°¨μ΄κ° ν΄μλ‘ nn μ΄ λ κ²°κ³Όμ μμ μλ€κ³ ν΄μνλ confidence λ°©λ²μ μ¬μ©ν μ μλ€ λ μ₯μ μ΄ μλ€.
(3) Ground Truth μ νν
- Target κ°μ μν«μΈμ½λ©μΌλ‘ λμΆνλ κ² λ³΄λ¨ μ€λ₯Έμͺ½κ³Ό κ°μ μμμ λ°©μμΌλ‘ νννλ κ²μ΄ μ’λ€.
- κ°λ Ή μκ·Έλͺ¨μ΄λ ν¨μλΌκ³ νλ©΄, μκ·Έλͺ¨μ΄λλ μ΅λκ°μ΄ 0.99999λ‘ μ λ΅μΈ 1μ κ·Όμ ν΄μ§κΈ° μν΄ bound μμ΄ κ°μ€μΉκ° κ³μ μ¦κ°νλ λ¬Έμ μ μ΄ λ°μνλ€. 0.9λ μκ·Έλͺ¨μ΄λκ° λμΆν΄λΌ μ μλ bound κ° μλ κ°μ΄λ―λ‘ κ°μ€μΉκ° μ νν κ°μΌλ‘ κ²°μ λ μ μλ€.
- π κ·Έλ¬λ μ€μ λ₯λ¬λμμλ μΌμͺ½ μν« μΈμ½λ© νμμΌλ‘ ννν¨
π Network architecture
- μλμΈ΅μ λͺ κ° μ¬μ©ν κ²μΈκ° π trial error
- νλμ layer μ λν΄ λͺ κ°μ μλλ Έλλ₯Ό μ¬μ©ν κ²μΈκ° π trial error
π Hyperparameters
- νμ΅λ₯ μ€μ
- 0μ κ°κΉμ΄ μμ κ°μΌλ‘ κ°μ€μΉλ₯Ό μ΄κΈ°ννλ€.
- κ΅μ°¨κ²μ¦μ ν΅ν΄ μν¬ν¬ μλ₯Ό κ²°μ νλ€.
- κ²μ¦ λ°μ΄ν° μ μμ κ°μ₯ μ’μ μ±λ₯μ λ³΄μΈ nn μ κ΅¬μ‘°κ° μ΅μ’ nn μ΄ λλ€.
'1οΈβ£ AIβ’DS > π Deep learning' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[μΈκ³΅μ§λ₯] Training CNN (0) | 2022.04.26 |
---|---|
[μΈκ³΅μ§λ₯] CNN (0) | 2022.04.23 |
[μΈκ³΅μ§λ₯] MLP (0) | 2022.04.21 |
[μΈκ³΅μ§λ₯] Basic Neural Network (0) | 2022.04.21 |
[μΈκ³΅μ§λ₯] Introduction to AI/Deep learning (0) | 2022.04.21 |
λκΈ