Today I Learned
written by 602
뉴욕대학교 Lecun 교수의 Deep Learning Course,
2020년 강의영상으로 최신 트렌드도 반영한 강의라는 점에서 유용한 코스다.
이번 주차 딥러닝 스터디에서는 10강 Self-Supervised Learning을 다루었다.
처음 접하는 내용이 대부분이라 꽤나 어려웠다🤦♀️
👀 Lecun DL Course) Lecture 10. Self-Supervised Learning
Main Idea
세상의 대부분 이미지는 label이 없다.
Obtain labels using "semi-automatic" process instead
cf) SSL in NLP
Pretext task
1. Context Autoencoders
- Fill in the blanks of image(이미지 빈칸 예측)
2. RotNet
- 이미지를 각 각도로 로테이션한 데이터를 가지고 이미지의 회전 각도를 예측하는 task
3. JigSAW
- 이미지를 n등분해서 셔플한 후, 퍼즐맞추기처럼 이미지의 순서 예측
4. Evaluation
- pre-train을 가지고 target task에서 fine-tuning한 성능 평가
2018년 이후의 물음
- pretext task 성능을 높이는 것 말고 내 목적에 맞는 Invariant mapping이 중요한 것 아닌가!
- represantation should be stable for slightly transformed version of image
- 비슷한 이미지는 공간상의 비슷한 위치에 모여있어야 한다
- semantically related images should be aligned together
Contrastive Learning
Idea Flow
Problem
일반적인 지도학습 과정은 target이 정해져있고 input이 target에 가까워지도록학습이 되는것이고 SSL은 비슷한 두 타겟이 가까워지도록 학습이되는 것인데 target들이 움직이는 문제 발생
즉, 타겟이 고정되지 않음
Solution
-
SimCLR - Google의 아이디어 (ICML 2020)
-
MoCo - Momentum Encoder
- augment된 이미지가 통과하는 네트워크를 업데이트하지 않고 다른 target만 움직이도록
- encoder가 momentum 방식으로 서서히 학습되는, 복사되는 네트워크 사용
- Encoder와 비슷하면서 움직임의 변동폭을 최소한으로 줄이는 방식
- 지도학습보다 Fine-tuning 성능이 더 높더라!
추가 Point
- 서로 다른 친구들을 밀지 말고 같은 친구들끼리 당기기만 하자
- 이렇게 했을 때 문제점: 한 점으로 다 모이게 되면 loss는 적게 수렴 but 바람직하지 않다
- 따라서 최신 논문들은 당기되, 한점으로 모이지는 않도록 하는 방법을 다루고 있음
- ICLR 2020에 여러 방법론들 등장
- 애초에 그럼 Contrastive Learning이 올바른 방식인가? -> Generative가 더 적합하지 않을까?
- 강화학습에서의 적용(데이터 구하기는 어렵지만 유망한 분야)