Deep Learning2020. 1. 3. 23:24
반응형

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

 - 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. Overfitting을 방지하는 3가지 방법

 (1) training data 많이 모으기

  - data가 많은 경우 training set, validation set, test set으로 나누어 진행 가능

  - 영역별 data 크기가 커지므로 overfitting 확률이 낮아짐

 (2) feature 개수 줄이기

  - 서로 비중이 다른 feature가 섞여서 weight 경합시 좋지 않은 결과가 나올 수 있음

  - deep learning은 sigmoid 대신 ReLU 함수를 이용하거나, dropout 등을 통해 해결 가능

 (3) regularization

  - weight이 너무 큰 값을 갖지 않도록 제한

 

2. Dropout

 - 전체 노드를 weight 계산에 참여시키지 않고, 일부만 참여시키는 아이디어

 

 - TensorFlow 구현 : relu 함수 호출 후 다음 layer에 전달하기 전 dropout 함수를 호출. 그 비율은 0~1 사이로 랜덤하게.

 

3. Ensemble (앙상블) :  최소 2%에서 4~5% 상당의 성능 향상을 보임

 1) 데이터를 여러개의 training set으로 나누어 동시에 학습을 진행

 2) 모든 학습이 끝나면 결과를 통합

반응형
Posted by CCIBOMB