'xavier initialization'에 해당되는 글 1건

  1. 2020.01.02 [머신러닝/딥러닝] Weight 초기화 잘해보자
Deep Learning2020. 1. 2. 22:30
반응형

 김성훈 교수님의 [모두를 위한 딥러닝] 강의 정리

 - https://www.youtube.com/watch?reload=9&v=BS6O0zOGX4E&feature=youtu.be&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm&fbclid=IwAR07UnOxQEOxSKkH6bQ8PzYj2vDop_J0Pbzkg3IVQeQ_zTKcXdNOwaSf_k0

 - 참고자료 : Andrew Ng's ML class

  1) https://class.coursera.org/ml-003/lecture

  2) http://holehouse.org/mlclass/ (note)



1. 모든 wieght 초기값을 0으로 설정한다면,

 - deep learning 알고리즘은 동작하지 않음

 

2. RBM(Restricted Boltzmann Machine)을 이용한 weight 초기화

 - Hinton et al. (2006) "A Fast Learning Algorightm for Deep Belief Nets" - Restricted Boltzmann Machine

 - Restriction = 같은 layer 안 어떤 연결도 존재하지 않음

 

 - forward : 현재 layer에 들어온 x값에 대해 weight을 계산한 값을 다음 layer에 전달
   backward : 전달받은 값을 거꾸로 현재 layer에 weight 값을 계산하여 전달

 - forward, backward 계산을 반복하여 최초 전달된 x와 에측한 값(x hat)간 차이가 최소가 되는 weight 발견

 

 - deep belief net : 이러한 RBM 방식으로 초기화된 모델

 - Fine Tuning : 이러한 방식으로 초기화하여 학습(learning)을 시작하면 시간이 매우 단축됨

 

3. Xavier/He initialization

 - Xavier : 입력값(fan_in)과 출력값(fan_out) 사이 난수를 선택하여 입력값의 제곱근으로 나눔

 - He : 입력값을 반으로 나눈 제곱급을 사용함. (Xavier보다 넓은 범위의 난수를 생성)

 

4. 그 밖에 다양한 초기화 방법

반응형
Posted by CCIBOMB