본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
Self-supervised learning; 자기 지도 학습
사람이 붙인 레이블 대신 데이터 자체에서 정답을 만들어 내어 표현을 학습하는 기계 학습 방법

자기 지도 학습(self-supervised learning, SSL)은 레이블이 없는 데이터에서 스스로 감독 신호를 만들어 학습하는 방법이다. 문장의 일부 단어를 가리고 그 단어를 맞히게 하거나, 지금까지의 글을 보고 다음 단어를 예측하게 하거나, 같은 사진을 두 가지로 변형해 서로 같은 사진임을 알아보게 하는 식이다. 정답은 원래 데이터에 들어 있으므로 사람이 레이블을 붙일 필요가 없다. 얀 르쿤과 이샨 미스라는 2021년 메타 AI 블로그 글에서 자기 지도 학습을 "데이터 자체에서 감독 신호를 얻는" 방법으로 설명하고, 사람과 동물이 세상에 대한 배경 지식을 쌓는 방식에 가깝다는 점에서 "지능의 암흑 물질"이라 불렀다.[1]

형식상으로는 입력과 정답의 짝으로 학습하는 지도 학습이지만, 레이블을 사람이 주지 않는다는 점에서 비지도 학습의 한 갈래로 분류되기도 한다. 목적은 대개 그 작업 자체를 잘하는 것이 아니라, 그 과정에서 다른 작업에 옮겨 쓸 수 있는 좋은 표현(representation)을 얻는 것이다. BERT, GPT 계열을 비롯한 대형 언어 모델, 이미지 인코더, 음성 인식 모델의 사전 학습이 모두 자기 지도 학습이며, 레이블 없는 대규모 데이터를 쓸 수 있게 해 파운데이션 모델 시대를 연 핵심 기법이다.

프리텍스트 과제와 하위 과제

편집 원본 편집

자기 지도 학습은 보통 두 단계로 쓴다.

  • 프리텍스트 과제(pretext task): 표현을 배우기 위해 만든 보조 문제. 가린 단어 맞히기, 다음 토큰 예측, 이미지 회전 각도 맞히기 등이다. 학생이 교과서 연습 문제를 푸는 것처럼, 프리텍스트 과제를 잘 푸는 것 자체가 최종 목표는 아니다.
  • 하위 과제(downstream task): 실제로 풀고 싶은 문제. 사전 학습한 모델을 가져와 분류, 객체 탐지, 질의응답 등에 적용한다.

사전 학습한 표현을 하위 과제에 쓰는 방법은 다음과 같다.

  • 선형 평가(linear probing): 인코더를 고정하고 그 위에 선형 분류기만 학습한다. 표현의 품질을 재는 표준 평가 방식이다.
  • k-최근접 이웃 평가: 표현 공간에서 가까운 이웃의 레이블로 분류해 본다.
  • 미세조정: 인코더까지 함께 조금 더 학습한다. 자세한 내용은 전이 학습 문서 참고.
  • 퓨샷·제로샷 활용: 대형 언어 모델은 추가 학습 없이 프롬프트만으로 하위 과제를 수행하기도 한다. 자세한 내용은 인컨텍스트 러닝 문서 참고.
계열 학습 신호 대표 방법 주 분야
자기회귀 예측 앞부분을 보고 다음 요소를 예측 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 비전, 영상

자기회귀 예측

편집 원본 편집

데이터를 순서대로 놓고 앞부분으로 다음 요소를 예측한다. 정답은 바로 다음에 실제로 나온 요소다. 2013년 Word2Vec은 주변 단어로 가운데 단어를(또는 그 반대로) 예측하며 단어 임베딩을 학습했다.[2] OpenAI는 2018년 6월 트랜스포머를 대량의 텍스트로 비지도 사전 학습한 뒤 지도 학습으로 미세조정하는 방법을 발표했고(GPT-1),[3] 이후 GPT 계열과 대부분의 대형 언어 모델이 다음 토큰 예측으로 사전 학습된다. 자세한 내용은 자기회귀 언어 모델, 언어 모델 문서 참고.

입력의 일부를 가리고 원래 내용을 맞히게 한다.

  • BERT: 문장의 일부 토큰을 가리고 양쪽 문맥으로 원래 토큰을 맞히는 마스크 언어 모델로 사전 학습했다.[4] 자세한 내용은 BERT, 양방향 언어 모델 문서 참고.
  • MAE(masked autoencoder): 이미지 패치의 75%처럼 높은 비율을 가리고 픽셀을 복원한다. 인코더는 보이는 패치만 처리하고 가벼운 디코더가 복원을 맡아 학습이 3배 이상 빨라졌으며, ImageNet-1K 데이터만으로 ViT-Huge가 87.8% 정확도를 냈다.[5]
  • wav2vec 2.0: 음성의 잠재 표현 일부를 가리고 대조 과제로 맞히게 해 음성 표현을 학습한다.[6] 자세한 내용은 음성 인식 문서 참고.
  • data2vec: 음성, 이미지, 텍스트에 같은 방법을 쓰기 위해, 가린 입력으로 전체 입력의 문맥화된 잠재 표현을 예측하게 했다.[7]

잡음 제거 오토인코더처럼 망가뜨린 입력에서 원본을 복원하는 방식도 같은 계열이며, 확산 모델의 학습 목표도 잡음 제거라는 점에서 닮았다.

수작업 프리텍스트 과제

편집 원본 편집

2015~2018년 무렵 비전 분야에서는 사람이 고안한 문제를 풀게 했다.

  • 이미지 두 조각의 상대 위치 맞히기(2015)[8]
  • 섞인 조각을 원래 순서로 맞추는 직소 퍼즐(2016)[9]
  • 흑백 사진에 색 입히기(2016)[10]
  • 이미지가 몇 도 회전되었는지 맞히기(2018)[11]

이런 과제는 물체를 이해해야 풀 수 있도록 설계되었지만, 과제에만 쓸모 있는 지름길(예: 조각 경계의 색수차)을 배우는 문제가 있어 이후 대조 학습으로 넘어갔다.

대조 학습(contrastive learning)은 같은 데이터에서 나온 두 관점(양성 쌍)의 표현은 가깝게, 다른 데이터의 표현(음성 예제)과는 멀게 만든다. 이미지라면 같은 사진을 자르기, 색 변환, 흐리기 등으로 두 번 변형한 것을 양성 쌍으로 쓴다. 표준 손실은 InfoNCE로, 2018년 대조 예측 부호화(CPC)에서 제안되었다.[12]

ℒ=−log⁡exp⁡(sim(zi,zj)/τ)∑k≠iexp⁡(sim(zi,zk)/τ)

여기서 zi,zj는 양성 쌍의 표현, 분모의 합은 양성 하나와 여러 음성 예제를 포함하며, sim은 코사인 유사도, τ는 온도 매개변수다. 양성 쌍을 여러 후보 중에서 골라내는 분류 문제로 볼 수 있다.

  • 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]

  • 프리텍스트 과제와 증강의 설계: 어떤 과제와 데이터 증강을 쓰느냐에 따라 배우는 표현이 달라진다. 이미지에 맞는 증강이 다른 분야에는 맞지 않을 수 있다.
  • 연산 비용: 대조 학습은 큰 배치를, 언어 모델 사전 학습은 막대한 데이터와 연산을 요구한다.
  • 지름길 학습: 프리텍스트 과제를 표면적 단서로 풀어 버려 의미 있는 표현을 배우지 못할 수 있다.
  • 평가: 표현의 품질을 재려면 결국 하위 과제와 레이블이 필요하다. 선형 평가와 미세조정 결과가 서로 다르게 나오기도 한다.
  • 데이터 품질과 편향: 걸러지지 않은 웹 데이터의 편향과 오류를 그대로 흡수한다. 자세한 내용은 알고리즘 편향 문서 참고.
  1. ↑ Yann LeCun, Ishan Misra, Self-supervised learning: The dark matter of intelligence, Meta AI 블로그, 2021-03-04
  2. ↑ Tomas Mikolov 외, 〈Efficient Estimation of Word Representations in Vector Space〉, 2013. arXiv:1301.3781
  3. ↑ OpenAI, Improving language understanding with unsupervised learning, 2018-06-11
  4. ↑ Jacob Devlin 외, 〈BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding〉, 2018. arXiv:1810.04805
  5. ↑ Kaiming He 외, 〈Masked Autoencoders Are Scalable Vision Learners〉, 2021. arXiv:2111.06377
  6. ↑ Alexei Baevski 외, 〈wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations〉, 2020. arXiv:2006.11477
  7. ↑ Alexei Baevski 외, 〈data2vec: A General Framework for Self-supervised Learning in Speech, Vision and Language〉, 2022. arXiv:2202.03555
  8. ↑ Carl Doersch, Abhinav Gupta, Alexei A. Efros, 〈Unsupervised Visual Representation Learning by Context Prediction〉, 2015. arXiv:1505.05192
  9. ↑ Mehdi Noroozi, Paolo Favaro, 〈Unsupervised Learning of Visual Representations by Solving Jigsaw Puzzles〉, 2016. arXiv:1603.09246
  10. ↑ Richard Zhang, Phillip Isola, Alexei A. Efros, 〈Colorful Image Colorization〉, 2016. arXiv:1603.08511
  11. ↑ Spyros Gidaris, Praveer Singh, Nikos Komodakis, 〈Unsupervised Representation Learning by Predicting Image Rotations〉, 2018. arXiv:1803.07728
  12. ↑ Aaron van den Oord, Yazhe Li, Oriol Vinyals, 〈Representation Learning with Contrastive Predictive Coding〉, 2018. arXiv:1807.03748
  13. ↑ Kaiming He 외, 〈Momentum Contrast for Unsupervised Visual Representation Learning〉, 2019. arXiv:1911.05722
  14. ↑ Ting Chen 외, 〈A Simple Framework for Contrastive Learning of Visual Representations〉, 2020. arXiv:2002.05709
  15. ↑ Alec Radford 외, 〈Learning Transferable Visual Models From Natural Language Supervision〉, 2021. arXiv:2103.00020
  16. ↑ Jean-Bastien Grill 외, 〈Bootstrap your own latent: A new approach to self-supervised Learning〉, 2020. arXiv:2006.07733
  17. ↑ Xinlei Chen, Kaiming He, 〈Exploring Simple Siamese Representation Learning〉, 2020. arXiv:2011.10566
  18. ↑ Jure Zbontar 외, 〈Barlow Twins: Self-Supervised Learning via Redundancy Reduction〉, 2021. arXiv:2103.03230
  19. ↑ Adrien Bardes, Jean Ponce, Yann LeCun, 〈VICReg: Variance-Invariance-Covariance Regularization for Self-Supervised Learning〉, 2021. arXiv:2105.04906
  20. ↑ Mathilde Caron 외, 〈Emerging Properties in Self-Supervised Vision Transformers〉, 2021. arXiv:2104.14294
  21. ↑ Maxime Oquab 외, 〈DINOv2: Learning Robust Visual Features without Supervision〉, 2023. arXiv:2304.07193
  22. ↑ Mahmoud Assran 외, 〈Self-Supervised Learning from Images with a Joint-Embedding Predictive Architecture〉, 2023. arXiv:2301.08243
  23. ↑ Adrien Bardes 외, 〈Revisiting Feature Prediction for Learning Visual Representations from Video〉, 2024. arXiv:2404.08471
  24. ↑ Ting Chen 외, 〈Big Self-Supervised Models are Strong Semi-Supervised Learners〉, 2020. arXiv:2006.10029