Generalization이 잘 되도록 학습에 규제를 걸어서 학습 및 테스트 데이터에 잘 동작할 수 있도록 하는 방법이다.
Ealry stopping
검증 데이터를 활용했을 때 loss가 어느 시점부터 감소하지 않고 증가하기 시작하면 학습을 종료시킨다.
Parameter norm penalty (Weight decay)
Neural network 파라미터가 너무 커지지 않게 규제한다.
totalcost=loss(D;W)+2α∥W∥22
Data Augmentation
데이터가 한정적이기 때문에 개수가 부족할 경우 딥러닝이 잘 동작하지 못하기 때문에 데이터를 증강해 개수를 보완한다.
Noise Robustness
데이터 증강과 유사하지만 차이는 입력 데이터뿐만 아니라 Neural network weight에도 nosie를 넣는다.
Label Smoothing
데이터 두 개를 추출해서 학습 데이터를 하나만 보는 것이 아니라 두 데이터를 섞어서 사용한다.
Dropout
일반적으로 특정 확률로 Neural network의 weight를 0으로 바꾼다.
- 각각의 뉴런들이 robust한 조금 더 특징을 잡을 수 있다고 해석된다
Batch Normalization
Neural network의 각각의 레이어에 값들을 정규화시킨다.
- Batch Norm
- Layer Norm
- Instance Norm
- Group Norm
μB=m1i=1∑mxiσB2=m1i=1∑m(xi−μB)2xi^=σB2+ϵxi−μB