[Boostcamp AI Tech] [U-stage] 6주차 Day 3 학습 기록

bluegun·2021년 9월 8일
0

AI Tech 2기 활동

목록 보기
26/87

오늘은 새로 나온 강의는 없어서 어제 피어 세션 때 얘기했던 CutMix, Softmax의 soft labeling, CE와 KL-divergence에 대해 조사하였다.

CutMix

  • 각 class의 이미지 두 장을 mix하는 기법 중 하나

  • 한 image의 random 부분을 crop한 후, 그 위치에 그 크기만큼 다른 image를 넣은 새로운 image를 만든다.

  • 일반적으로 CutOut, MixUp보다 더 좋은 성능을 발휘한다.(CutOut 데이터나 MixUp 데이터로 학습한 모델에 대한 경우가 아닌 모든 상황에 해당한다.)

  • 각 image에 대해 특정 부분이 제거되고 나머지 부분을 통해 class를 판단해야 하므로, feature를 여러 군데에서 학습하게 해 generalization이 잘 된다.

Softmax의 soft labeling

  • 일반적으로 classification에서 softmax를 사용할 때, 예측값이 1에 가깝게, 나머지는 0에 가깝게 학습이 될텐데, 이 때 예측한 클래스와 나머지 클래스 간의 값의 차이가 크다. 즉 hard labeling이라고 할 수 있다.

  • 이로 인해 Knowledge distillation과 같은 경우, Student model과 Teacher model의 각각의 예측을 구할 때 일반 softmax를 사용하면, 예측한 class 이외의 정보를 잃어버릴 수 있다.(예를 들어 어떤 image의 class가 고양이지만 개의 feature도 0.2만큼 들어있다고 할 때, soft label로는 (0.8, 0.2)로 표현할 수 있겠지만, 일반 softmax로는 (1,0)으로 나오므로 개의 feature를 학습할 수 없게 된다.)

  • 따라서 이런 경우 softmax의 hyperparameter T를 증가시켜, 각 예측값 간의 차이를 smoothing 시켜, 다른 특징들도 잘 학습할 수 있게 해준다.

CE와 KL-divergence

  • 둘 다 이론적으로 큰 차이는 없다.

  • 다만 CE는 Ground truth가 있는 문제에서 주로 사용하고, KL-divergence는 Ground truth가 없는 문제에서 주로 사용하는 것 같다고 멘토님께서 말씀해주셨다.

  • 최근에는 KL-divergence 대신 CE를 쓰는 경우도 있다고 한다.

  • 아직 정확한 차이는 잘 모르겠다. 공부가 필요하다.

피어 세션

  • 위에 설명한 CutMix 내용을 팀원이신 지유님께서 발표해주셨다. 너무 정리를 잘해주셔서 이해하기 좋았고, 직접 작성하신 내용이라 여기에 못 올리는 게 아쉬울 정도였다.

느낀 점

  • 강의나 과제 하느라 바빠서 개인적으로 궁금했던 개념이나 그런 것들을 잘 조사하지 못했는데, 오늘 시간 내서 공부해보니 확실히 견문이 넓어지는 느낌이 나서 좋았다.

0개의 댓글