심층 신경망(Deep Neural Network)이란?
- 실제 학습데이터들은 입력벡터의 차원이 크고 개수가 몇 만개 이상이므로 복잡한 신경망 네트워크가 필요
- 다층 신경망을 여러 겹의 계층으로 쌓아서 학습 모델을 구현한 것
- 딥러닝 알고리즘
과적합(Overfitting)
- 과적합은 분류 모델이 훈련 데이터의 각 샘플에 너무 가깝게 맞춰지는 현상
- 과적합이 발생할 경우, 훈련 데이터에 대해 정확도가 100%에 가깝게 수렴하지만 새로운 데이터에 대한 분류 성능이 떨어짐
과소적합(Underfitting)
- 훈련 데이터에 대해 학습이 부족하여 데이터의 다양성을 반영하지 못하는 분류 모델이 선택되는 현상
※ 과적합은 Layer 수가 너무 많거나 변수가 복잡해서 발생
Batch
- 1 epoch 의미 : 전체 학습 데이터를 모두 학습한 후 가중치를 갱신하는 것을 1 epoch이라고 함
- 전체 학습 데이터에 대해서 1epoch에서 1번만 가중치를 갱신
Mini-Batch
- 미니배치는 전체 데이터를 N 등분하여 각각의 학습 데이터를 배치 방식으로 학습
- 학습 데이터 100개, batch size 20이라 할 때, 5개의 서브데이터셋이 생성되고 1epoch에서 5번의 가중치 갱신가능
정규화 방법
Dropout
- 드롭아웃은 과적합을 해결할 수 있는 효과적인 방법
- 학습 시 전체 신경망 중 일부만 사용하도록 함
- 학습 단계마다 일부 뉴런을 사용하지 않으므로, 신경망 특징이 특정 뉴런에 고정되는 것을 방지
- 가중치의 균형이 잡히도록하여 과적합을 방지
- 학습 시간이 오래걸리는 단점이 있음
배치 정규화 (Batch Normalization)
- 이전 층의 출력값들을 정규분포로 정규화하는 작업
- 미니 배치별로 학습을 할 때마다 이전 레이어의 출력값을 정규화하여 사용하기 때문에 초기화 문제에서 비교적 자유로워지는 장점을 가짐
- 은닉 레이어에서 정규화를 하면서 입력분포가 일정하게 됨으로 학습률에 크게 영향을 받지 않음
- 학습률을 높게 설정할 수 있음, 학습속도 개선
- 과적합 위험을 줄일 수 있으므로 드롭아웃 기법을 대체할 수 있음
- 심층 레이어로 인한 오류 역전파과정에서 기울기가 소멸되는 현상, Gradient Vanishing 문제를 해결할 수 있음
'Deep Learning' 카테고리의 다른 글
다층 인공 신경망 (0) | 2022.02.12 |
---|---|
퍼셉트론 (0) | 2022.02.12 |
회귀 분석 (0) | 2022.02.08 |
딥러닝 프레임 워크 (0) | 2022.02.04 |