Dropout

신민기·2025년 11월 17일

AI

목록 보기
14/17

Dropout

Dropout은 모델에 노드를 랜덤으로 선택하여 비활성화하는 것인데
이러한 Dropout은 overfitting을 막는데 도움을 준다.

overfitting을 어떻게 막을까?

Dropout으로 학습을 할 때 랜덤으로 노드를 비활성화하여 학습한다.
이렇게 학습하여 loss를 하나 구하고 다시 랜덤으로 비활성화하는 것을 반복한다.

위와 같이 dropout을 이용하면 overfitting을 막는데 도움을 준다.

우선 첫번째로 특정 노드나 특정 패턴에만 의존하지 못하게 한다.
노드들을 랜덤으로 선택해 비활성화해서 네트워크는 "특정 뉴런 몇 개만 믿고 답을 내는" 식의 과적합 패턴을 만들 수가 없다.
또한 특정 feature에 과도하게 집중하지 않게 만들 수 있다.

두번째로 앙상블(ensemble) 효과가 있다.
dropout을 할 때마다 작은 네트워크로 학습시키는 것과 똑같기 때문에 작은 네트워크를 합쳐서 학습시키는 것과 비슷한 효과가 난다.

결론

위와 같은 이유들로 Dropout을 모델을 학습할 때 적용시키면 overfitting을 막는데 도움을 주니 Dropout을 사용해보는게 좋을 듯 하다.

profile
AI 어렵다

0개의 댓글