Regularization? Normalization?
두 가지 개념이 동시에 '정규화'로 번역되면서 혼선이 생김
Regularization
정칙화
- 주로 사용되는 기능: Weight Reg.(L1, L2), Dropout, Batch Norm.
- 오버피팅을 해결하는 방법, train loss를 증가시켜 오버피팅을 강제로 방해함
train loss - valid/test loss 사이의 차이를 감소시킴
Normalization
정규화
- 주로 사용되는 기능: Z-score, minmax scaler
- 데이터의 형태를 트레이닝에 적합하게 전처리하는 과정
피처의 범위 분포를 동일하게 하여 문제를 좀더 간단하게 변경
L1 (Lasso) VS L2 (Ridge)
- 데이터 선형 모델링으로 성능 평가
- L1 에 비해 L2 regression을 사용했을 때 데이터 분포를 더 잘 따라가는 모습을 보인다
Lp norm
Norm은 벡터나 행렬, 함수 등의 거리를 나타내는 것으로 우린 여기서 벡터값만 다룸
정의는 wikipedia에서 확인하기!
Dropout
논문 제목 : Dropout: A Simple Way to Prevent Neural Networks from Overfitting
논문 발표 시점 : 2014년
논문 링크 : https://jmlr.org/papers/v15/srivastava14a.html
Batch Normalization
논문 제목 : Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
논문 발표 시점 : 2015년
논문 링크 : https://arxiv.org/pdf/1502.03167.pdf
위 두가지 내용은 논문 꼭 확인하기!
새롭게 알게된 것들
- 수학적인 내용이 많아 쉽게 이해되지는 않았지만, 인공지능에 있어서 핵심 부품으로 성능에 상당한 영향을 미친다는 것을 알게되었다
Dropout, Batch normalization
은 쌍으로 꼭 다시 자료조사하기
한 주의 회고
- 인공지능 모델 기저에 깔린 수학적인 배경들을 한 번에 받아들이는 것은 쉽지않았다. 한번 두번 여러번 맛을 본다는 느낌으로 꾸준히 관심가지기
- 대학원에서 논문 내용을 파악하고, 이해하는 작업을 해와서 얼마나 다행인지 모른다.(그리고 생각보다 이런 것들을 경험해본 사람이 없다는 것에 놀람)
- 대학원 경험에서 하나 더 생각해보니, 머릿속에 넣어두면 언젠가는 쓸모가 있겠지라는 생각이...
다음 주의 다짐
- 주말에 한 주 동안 작성한 자료들을 꼭 돌아보기
- 노드 밀리지 말고 바로바로 처리할 수 있도록 노력하기
- 수면 시간 지키면서 컨디션 조절하기