-정방(Feedforward) 연산 이후, 에러(Error) 예측값과 실제값과의 오차를 후방(Backward)으로 다시 보내줌으로써, 많은 노드를 가진 MLP라도 최적의 Weight와 Bias를 학습하는 기법
-가중치들(wn) 각각에 대해 별도로 경사하강을 관찰하고, 누적오차 감소에 가장 큰 기여를 하는(기울기가 가장 가파른 쪽의) 가중치 한 개 값을 이동시키는 방법을 반복하여 해를 찾아 가는 기법
-다중퍼셉트론의 은닉층 학습의 한계를 해결: 출력층의 오차를 역전파하여 은닉층을 학습
1)전파(propagation)단계
학습 벡터로부터 실제 출력값을 출력하고,
목적값(target value)와 실제 출력값의 차이인
오차를 계산하여 각 층에 전달
2) 가중치 수정단계
전파된 오차를 이용하여 가중치를 수정
Vanishing Gradient(기울기 소멸 문제)
-역전파 알고리즘을 학습을 통해 가중치를 수정할 때, 은닉층으로 오차가 거의 전달 되지 않는 문제
-은닉층을 여러 단계 거치는 딥러닝에서 가중치를 수정하기 위해 미분을 반복적으로 사용하면서 기울기가 0이 되어버려 학습이 중단되는 문제
-원인 : data set 부족, 컴퓨터 파워 부족, 초기 가중치 값 오류, 활성함수 선택 오류
-해결 방안 : Drop Out, GPU활용 , ReLU 활성화 함수 적용
시그모이드 미분값은 약 0.3 이하
DROPOUT
-오류역전파의 문제점을 개선한, 신경망 학습시 임의의 노드를 생략하고 학습하는 알고리즘
-학습 시, weight의 동조화 되는 현상 회피
무작위로 일부 Node를 Dropout. 단, 학습 시에만 활용됨.
Overfitting(과적합), Underfitting(부적합)
Overfitting(과적합)
- 학습데이터에 성능이 좋지만 실제 데이터에 관해 성능이 떨어지는 현상
- Supervised Learning 을 통해 만들어진 모델이 학습 데이터(Training data) 내에서는 분류가 잘되나, 새로운 데이터(Unseen Data or Test Data )에서는 분류성능이 떨어지는 상황
Underfitting(부적합)
- 적정 수준의 학습을 하지 못해 실제 성능이 떨어지는 현상
ü조기 종료(early stopping) :
정확도가 떨어지는 순간 학습 종료
정확도가 떨어지는 순간 학습 종료
ü가중치 감소
ü드롭아웃
해결기법 | 상세설명 |
Drop out | 학습 중에 은닉층의 뉴런을 무작위로 삭제하여 과적합을 예방하는 기법 |
Weight decay (가중치 감소) |
학습 과정에서 큰 가중치에 대해서 큰 페널티를 부과하여 과적합을 예방하는 기법, 모든 가중치의 각각 손실 함수에 1/2λW2 |
Validation Set | Validation Set을 통한 모델에 대한 성능 평가 수행 |
교차검증 (Cross-validation) |
ØLeave-One-Out CV (LOOCV) : 첫 번째 값을 제외하고 training set 적용
ØLeave-p-Out CV(LpOCV)
Øk-fold CV (KFCV) : 전체 데이터를 k등분 후, 각 등분을 한번씩 테스트 (평균값 이용)
ØRepeated Learning-Testing (RLT) : 랜덤하게 validation과 training set 분리 후 테스트(평균값 이용)
|
728x90
'딥러닝' 카테고리의 다른 글
경사하강법(Gradient Descent Method) (0) | 2021.11.30 |
---|---|
신경망 학습 매커니즘 (0) | 2021.11.30 |
활성화 함수(Activation Function)-(1/3) (0) | 2021.11.30 |
인공지능의 연구 목적은 무엇인가? 아실로마 AI 원칙 (ASILOMA AI Principles) (0) | 2021.11.30 |
이미지? 음성? 소설책? 무엇이든지 만들어내는 인공신경망, GAN(Generative Adversarial Networks) (0) | 2021.11.30 |