자기 지도 학습
더 많은 작업
- Self-supervised learning; 자기 지도 학습
- 사람이 붙인 레이블 대신 데이터 자체에서 정답을 만들어 내어 표현을 학습하는 기계 학습 방법
자기 지도 학습(self-supervised learning, SSL)은 레이블이 없는 데이터에서 스스로 감독 신호를 만들어 학습하는 방법이다. 문장의 일부 단어를 가리고 그 단어를 맞히게 하거나, 지금까지의 글을 보고 다음 단어를 예측하게 하거나, 같은 사진을 두 가지로 변형해 서로 같은 사진임을 알아보게 하는 식이다. 정답은 원래 데이터에 들어 있으므로 사람이 레이블을 붙일 필요가 없다. 얀 르쿤과 이샨 미스라는 2021년 메타 AI 블로그 글에서 자기 지도 학습을 "데이터 자체에서 감독 신호를 얻는" 방법으로 설명하고, 사람과 동물이 세상에 대한 배경 지식을 쌓는 방식에 가깝다는 점에서 "지능의 암흑 물질"이라 불렀다.[1]
형식상으로는 입력과 정답의 짝으로 학습하는 지도 학습이지만, 레이블을 사람이 주지 않는다는 점에서 비지도 학습의 한 갈래로 분류되기도 한다. 목적은 대개 그 작업 자체를 잘하는 것이 아니라, 그 과정에서 다른 작업에 옮겨 쓸 수 있는 좋은 표현(representation)을 얻는 것이다. BERT, GPT 계열을 비롯한 대형 언어 모델, 이미지 인코더, 음성 인식 모델의 사전 학습이 모두 자기 지도 학습이며, 레이블 없는 대규모 데이터를 쓸 수 있게 해 파운데이션 모델 시대를 연 핵심 기법이다.
자기 지도 학습은 보통 두 단계로 쓴다.
- 프리텍스트 과제(pretext task): 표현을 배우기 위해 만든 보조 문제. 가린 단어 맞히기, 다음 토큰 예측, 이미지 회전 각도 맞히기 등이다. 학생이 교과서 연습 문제를 푸는 것처럼, 프리텍스트 과제를 잘 푸는 것 자체가 최종 목표는 아니다.
- 하위 과제(downstream task): 실제로 풀고 싶은 문제. 사전 학습한 모델을 가져와 분류, 객체 탐지, 질의응답 등에 적용한다.
사전 학습한 표현을 하위 과제에 쓰는 방법은 다음과 같다.
| 계열 | 학습 신호 | 대표 방법 | 주 분야 |
|---|---|---|---|
| 자기회귀 예측 | 앞부분을 보고 다음 요소를 예측 | Word2Vec, GPT 계열, CPC, PixelCNN | 언어, 음성 |
| 마스크 예측 | 가린 부분을 복원 | BERT, MAE, wav2vec 2.0, data2vec | 언어, 비전, 음성 |
| 수작업 프리텍스트 과제 | 데이터 변환을 맞히기 | 패치 위치 예측, 직소 퍼즐, 색 복원, 회전 예측 | 비전(초기) |
| 대조 학습 | 같은 데이터의 두 관점은 가깝게, 다른 데이터는 멀게 | CPC, MoCo, SimCLR, CLIP | 비전, 멀티모달 |
| 비대조 결합 임베딩 | 음성 예제 없이 두 관점의 표현을 일치시키되 붕괴를 막는다 | BYOL, SimSiam, Barlow Twins, VICReg, DINO | 비전 |
| 결합 임베딩 예측 구조(JEPA) | 가린 부분의 픽셀이 아니라 표현을 예측 | I-JEPA, V-JEPA | 비전, 영상 |
입력의 일부를 가리고 원래 내용을 맞히게 한다.
- BERT: 문장의 일부 토큰을 가리고 양쪽 문맥으로 원래 토큰을 맞히는 마스크 언어 모델로 사전 학습했다.[4] 자세한 내용은 BERT, 양방향 언어 모델 문서 참고.
- MAE(masked autoencoder): 이미지 패치의 75%처럼 높은 비율을 가리고 픽셀을 복원한다. 인코더는 보이는 패치만 처리하고 가벼운 디코더가 복원을 맡아 학습이 3배 이상 빨라졌으며, ImageNet-1K 데이터만으로 ViT-Huge가 87.8% 정확도를 냈다.[5]
- wav2vec 2.0: 음성의 잠재 표현 일부를 가리고 대조 과제로 맞히게 해 음성 표현을 학습한다.[6] 자세한 내용은 음성 인식 문서 참고.
- data2vec: 음성, 이미지, 텍스트에 같은 방법을 쓰기 위해, 가린 입력으로 전체 입력의 문맥화된 잠재 표현을 예측하게 했다.[7]
잡음 제거 오토인코더처럼 망가뜨린 입력에서 원본을 복원하는 방식도 같은 계열이며, 확산 모델의 학습 목표도 잡음 제거라는 점에서 닮았다.
대조 학습(contrastive learning)은 같은 데이터에서 나온 두 관점(양성 쌍)의 표현은 가깝게, 다른 데이터의 표현(음성 예제)과는 멀게 만든다. 이미지라면 같은 사진을 자르기, 색 변환, 흐리기 등으로 두 번 변형한 것을 양성 쌍으로 쓴다. 표준 손실은 InfoNCE로, 2018년 대조 예측 부호화(CPC)에서 제안되었다.[12]
여기서 는 양성 쌍의 표현, 분모의 합은 양성 하나와 여러 음성 예제를 포함하며, 은 코사인 유사도, 는 온도 매개변수다. 양성 쌍을 여러 후보 중에서 골라내는 분류 문제로 볼 수 있다.
- MoCo(2019): 음성 예제를 큐에 쌓아 두고, 키 인코더를 쿼리 인코더의 이동 평균으로 천천히 갱신해 크고 일관된 사전을 만들었다. 7개 탐지·분할 과제에서 지도 사전 학습을 앞섰다.[13]
- SimCLR(2020): 메모리 뱅크 없이 큰 배치 안의 다른 이미지를 음성 예제로 썼다. 데이터 증강의 조합이 결정적이고, 표현과 손실 사이에 작은 신경망(투영 헤드)을 두면 성능이 크게 오르며, 큰 배치와 긴 학습이 유리하다는 점을 보였다. 선형 평가에서 ImageNet top-1 76.5%로 지도 학습한 ResNet-50과 같은 수준에 이르렀다.[14]
- CLIP(2021): 이미지와 그 이미지를 설명하는 텍스트를 양성 쌍으로 삼아 대조 학습했다. 이미지와 텍스트를 같은 공간에 놓아 제로샷 분류가 가능해졌다.[15] 자세한 내용은 CLIP (인공지능) 문서 참고.
두 관점의 표현을 같게 만들라고만 하면, 모든 입력에 같은 벡터를 내는 자명한 해로 무너지는 표현 붕괴(collapse)가 일어난다. 대조 학습은 음성 예제로 이를 막지만 큰 배치나 메모리가 필요하다. 음성 예제 없이 붕괴를 막는 방법들이 나왔다.
- BYOL(2020): 온라인 신경망이 다른 관점에 대한 목표 신경망의 표현을 예측하고, 목표 신경망은 온라인 신경망의 느린 이동 평균으로 갱신한다. 음성 예제 없이 ResNet-50 선형 평가 74.3%를 기록했다.[16]
- SimSiam(2020): 이동 평균 없이 한쪽 가지의 기울기 전파를 끊는 것만으로도 붕괴를 피할 수 있음을 보였다.[17]
- Barlow Twins(2021): 두 관점 표현의 상호 상관 행렬을 단위 행렬에 가깝게 만들어 차원 사이의 중복을 줄인다.[18]
- VICReg(2021): 각 차원의 분산을 일정 이상으로 유지하는 항을 명시적으로 넣어 붕괴를 막는다.[19]
- DINO(2021): 레이블 없는 자기 증류(self-distillation)로, 학생 신경망이 교사 신경망(학생의 이동 평균)의 출력 분포를 따라 하게 한다. 비전 트랜스포머에 적용하자 별도 학습 없이도 특징에 물체 분할 정보가 드러났고, ViT-Base 선형 평가 80.1%를 기록했다.[20] 2023년 DINOv2는 정제한 대규모 데이터로 범용 시각 특징을 학습했다.[21]
결합 임베딩 예측 구조(Joint-Embedding Predictive Architecture, JEPA)는 얀 르쿤이 제안한 방향으로, 가린 부분의 픽셀이나 토큰을 그대로 복원하는 대신 그 부분의 표현을 예측한다. 예측할 수 없는 세부(나뭇잎 하나하나의 모양 등)에 모델 용량을 쓰지 않고 의미 있는 정보에 집중하게 하려는 것이다.
- I-JEPA(2023): 이미지의 한 영역(문맥 블록)으로 같은 이미지의 다른 여러 영역(목표 블록)의 표현을 예측한다. 손으로 설계한 데이터 증강에 의존하지 않으며, ViT-Huge/14를 A100 16장으로 72시간 안에 학습했다.[22]
- V-JEPA(2024): 같은 아이디어를 영상에 적용해 특징 예측만으로 영상 표현을 학습했다.[23]
JEPA는 환경이 어떻게 변할지 내부 표현으로 예측하는 월드 모델 연구와 연결된다.
| 구분 | 레이블 | 학습 신호 | 주 목적 |
|---|---|---|---|
| 지도 학습 | 사람이 붙인 레이블 | 정답과의 오차 | 특정 과제 해결 |
| 비지도 학습 | 없음 | 데이터 구조(거리, 밀도, 재구성) | 군집, 차원 축소, 분포 추정 |
| 자기 지도 학습 | 없음(데이터에서 자동 생성) | 가린 부분, 다음 요소, 관점 간 일치 | 옮겨 쓸 수 있는 표현, 사전 학습 |
| 준지도 학습 | 일부만 | 레이블 오차 + 무레이블 데이터의 일관성 | 레이블이 적을 때의 과제 해결 |
| 강화 학습 | 없음 | 환경의 보상 | 순차적 의사결정 |
자기 지도 사전 학습과 준지도 학습은 함께 쓰이기도 한다. 2020년 SimCLRv2 논문은 큰 자기 지도 모델을 소량의 레이블로 미세조정한 뒤 지식 증류하는 방식이 강력한 준지도 학습이 된다고 보고했다.[24]
- 언어: 거의 모든 언어 모델과 대형 언어 모델이 다음 토큰 예측이나 마스크 예측으로 사전 학습된 뒤 지도 미세조정과 인간 피드백 기반 강화 학습을 거친다.
- 비전: 레이블 없는 대량의 이미지로 백본을 학습한 뒤 분류, 객체 탐지, 분할에 쓴다. 의료 영상처럼 레이블이 귀한 분야에서 특히 유용하다.
- 음성: 레이블 없는 녹음으로 사전 학습해 적은 전사 데이터로도 음성 인식 모델을 만든다.
- 멀티모달: 이미지-텍스트 쌍의 대조 학습으로 비전-언어 모델의 시각 인코더를 만든다. 자세한 내용은 멀티모달 인공지능 문서 참고.
- 임베딩: 검색과 추천에 쓰는 텍스트 임베딩, 임베딩 모델도 대조 학습으로 만든다.
- 프리텍스트 과제와 증강의 설계: 어떤 과제와 데이터 증강을 쓰느냐에 따라 배우는 표현이 달라진다. 이미지에 맞는 증강이 다른 분야에는 맞지 않을 수 있다.
- 연산 비용: 대조 학습은 큰 배치를, 언어 모델 사전 학습은 막대한 데이터와 연산을 요구한다.
- 지름길 학습: 프리텍스트 과제를 표면적 단서로 풀어 버려 의미 있는 표현을 배우지 못할 수 있다.
- 평가: 표현의 품질을 재려면 결국 하위 과제와 레이블이 필요하다. 선형 평가와 미세조정 결과가 서로 다르게 나오기도 한다.
- 데이터 품질과 편향: 걸러지지 않은 웹 데이터의 편향과 오류를 그대로 흡수한다. 자세한 내용은 알고리즘 편향 문서 참고.
- ↑ Yann LeCun, Ishan Misra, Self-supervised learning: The dark matter of intelligence, Meta AI 블로그, 2021-03-04
- ↑ Tomas Mikolov 외, 〈Efficient Estimation of Word Representations in Vector Space〉, 2013. arXiv:1301.3781
- ↑ OpenAI, Improving language understanding with unsupervised learning, 2018-06-11
- ↑ Jacob Devlin 외, 〈BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding〉, 2018. arXiv:1810.04805
- ↑ Kaiming He 외, 〈Masked Autoencoders Are Scalable Vision Learners〉, 2021. arXiv:2111.06377
- ↑ Alexei Baevski 외, 〈wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations〉, 2020. arXiv:2006.11477
- ↑ Alexei Baevski 외, 〈data2vec: A General Framework for Self-supervised Learning in Speech, Vision and Language〉, 2022. arXiv:2202.03555
- ↑ Carl Doersch, Abhinav Gupta, Alexei A. Efros, 〈Unsupervised Visual Representation Learning by Context Prediction〉, 2015. arXiv:1505.05192
- ↑ Mehdi Noroozi, Paolo Favaro, 〈Unsupervised Learning of Visual Representations by Solving Jigsaw Puzzles〉, 2016. arXiv:1603.09246
- ↑ Richard Zhang, Phillip Isola, Alexei A. Efros, 〈Colorful Image Colorization〉, 2016. arXiv:1603.08511
- ↑ Spyros Gidaris, Praveer Singh, Nikos Komodakis, 〈Unsupervised Representation Learning by Predicting Image Rotations〉, 2018. arXiv:1803.07728
- ↑ Aaron van den Oord, Yazhe Li, Oriol Vinyals, 〈Representation Learning with Contrastive Predictive Coding〉, 2018. arXiv:1807.03748
- ↑ Kaiming He 외, 〈Momentum Contrast for Unsupervised Visual Representation Learning〉, 2019. arXiv:1911.05722
- ↑ Ting Chen 외, 〈A Simple Framework for Contrastive Learning of Visual Representations〉, 2020. arXiv:2002.05709
- ↑ Alec Radford 외, 〈Learning Transferable Visual Models From Natural Language Supervision〉, 2021. arXiv:2103.00020
- ↑ Jean-Bastien Grill 외, 〈Bootstrap your own latent: A new approach to self-supervised Learning〉, 2020. arXiv:2006.07733
- ↑ Xinlei Chen, Kaiming He, 〈Exploring Simple Siamese Representation Learning〉, 2020. arXiv:2011.10566
- ↑ Jure Zbontar 외, 〈Barlow Twins: Self-Supervised Learning via Redundancy Reduction〉, 2021. arXiv:2103.03230
- ↑ Adrien Bardes, Jean Ponce, Yann LeCun, 〈VICReg: Variance-Invariance-Covariance Regularization for Self-Supervised Learning〉, 2021. arXiv:2105.04906
- ↑ Mathilde Caron 외, 〈Emerging Properties in Self-Supervised Vision Transformers〉, 2021. arXiv:2104.14294
- ↑ Maxime Oquab 외, 〈DINOv2: Learning Robust Visual Features without Supervision〉, 2023. arXiv:2304.07193
- ↑ Mahmoud Assran 외, 〈Self-Supervised Learning from Images with a Joint-Embedding Predictive Architecture〉, 2023. arXiv:2301.08243
- ↑ Adrien Bardes 외, 〈Revisiting Feature Prediction for Learning Visual Representations from Video〉, 2024. arXiv:2404.08471
- ↑ Ting Chen 외, 〈Big Self-Supervised Models are Strong Semi-Supervised Learners〉, 2020. arXiv:2006.10029