[U] Week 3 - Regularization

JaeJun Lee ·2022년 10월 3일
0

부스트캠프 AI Tech

목록 보기
17/30

Generalization이 잘 되도록 학습에 규제를 걸어서 학습 및 테스트 데이터에 잘 동작할 수 있도록 하는 방법이다.

Ealry stopping

검증 데이터를 활용했을 때 loss가 어느 시점부터 감소하지 않고 증가하기 시작하면 학습을 종료시킨다.

Parameter norm penalty (Weight decay)

Neural network 파라미터가 너무 커지지 않게 규제한다.

totalcost=loss(D;W)+α2W22total\, cost=loss(D;W)+\frac{\alpha}{2}\Vert W\Vert^2_2

Data Augmentation

데이터가 한정적이기 때문에 개수가 부족할 경우 딥러닝이 잘 동작하지 못하기 때문에 데이터를 증강해 개수를 보완한다.

  • 데이터에 따라 적용 기법을 잘 고려해야 한다

Noise Robustness

데이터 증강과 유사하지만 차이는 입력 데이터뿐만 아니라 Neural network weight에도 nosie를 넣는다.

Label Smoothing

데이터 두 개를 추출해서 학습 데이터를 하나만 보는 것이 아니라 두 데이터를 섞어서 사용한다.

  • MixUp
  • CutOut
  • CutMix

Dropout

일반적으로 특정 확률로 Neural network의 weight를 0으로 바꾼다.

  • 각각의 뉴런들이 robust한 조금 더 특징을 잡을 수 있다고 해석된다

Batch Normalization

Neural network의 각각의 레이어에 값들을 정규화시킨다.

  • Batch Norm
  • Layer Norm
  • Instance Norm
  • Group Norm
    μB=1mi=1mxiσB2=1mi=1m(xiμB)2xi^=xiμBσB2+ϵ\mu_B=\frac{1}{m}\sum^m_{i=1}x_i \qquad \sigma^2_B=\frac{1}{m}\sum^m_{i=1}(x_i-\mu_B)^2 \\{}\\ \hat{x_i}=\frac{x_i-\mu_B}{\sqrt{\sigma^2_B+\epsilon}}

0개의 댓글