Skip to main content

자기지도 학습 소개

자기지도학습에 대한 간략한 소개로, 앞으로 연재될 자기지도학습 보고서 시리즈의 첫 번째 글입니다. 이 글은 AI 번역본입니다. 오역이 의심되면 댓글로 알려주세요.
Created on September 15|Last edited on September 15

🧾 목차



🧐 자기지도학습이란 무엇일까요?

성인의 마음을 흉내 내는 프로그램을 만들려고 애쓰는 대신, 왜 아이의 마음을 흉내 내는 프로그램을 만들려고 하지 않는가? -- 앨런 M. 튜링, 컴퓨팅 기계와 지능, 1950
당신은 정확히 언제 상식을 갖추게 되었는지 기억하나요? 태어날 때부터 가지고 있었을까요? 우리가 성장하면서 길러 가는 직관이 사실 상식인 것은 아닐까요?
잠깐만요, 분명 이 블로그는 자기지도학습에 대해 다룬다고 했잖아요! 그런데 왜 이렇게 질문이 많은 거죠?
지능의 본질은 예측하는 능력이다! - 얀 르쿤[1] 우리는 산악 지대에서 실제로 길에서 떨어져 보지 않아도 그 결과가 죽음에 이른다는 것을 알 수 있다고 말한다. 이런 지식, 즉 예측하는 능력이야말로 우리를 ‘지적’ 존재로 만드는 요인일 것이다.
자기지도학습에 관한 진부한 밈.
Self-Supervised Learning(SSL)이 무엇인지에 대한 질문에 답하자면, 데이터를 통해 감독 신호가 스스로 주어지는 비지도 학습의 한 형태로 이해할 수 있다. [2]즉, 사람의 개입으로 데이터를 라벨링하는 대신, 데이터 샘플들 사이의 관계를 도출하는 문제로 이해한다. 자기지도학습을 이야기할 때 우리는 이를 다음과 같이 정의한다 프리텍스트 태스크 마스킹된 데이터 자체나 그 특징을 예측하도록 학습한다. 이렇게 학습된 표현은 이후 일부 라벨을 제공하고 모델을 미세 조정하여 실제 과제나 다운스트림 태스크를 해결하는 데 활용된다.
그림: 이 예시에서는 자기지도학습을 사용해 데이터의 빈칸을 채운다. 이를 위해 데이터의 일부를 마스킹하고, 나머지 부분은 모델이 볼 수 있도록 제공한다. 출처: 얀 르쿤의 강의[1]
파이프라인 관점에서 SSL은 다음과 같이 정의할 수 있다:
  • 주석 없이 프리텍스트 태스크로 모델을 학습한다.
  • 라벨을 활용해 특정 태스크에 맞게 모델을 미세 조정한다.
에서 멋진 CVPR 2021 튜토리얼[2]발표자는 영화 카라테 키드와 자기지도학습을 비유했다. 매일 반복하는 집안일로 근육 기억을 형성하는 과정이 프리텍스트 태스크이고, 그렇게 습득한 기술을 미세 조정해 카라테를 수행하는 것이 다운스트림 태스크라는 것이다!
베스트 키드 - 재킷 장면

🔍 SSL을 더 세분류할 수 있을까요?

그럼요! 자기지도학습 분야에서는 여러 가지 분류 체계가 등장하고 있습니다. 오늘은 그중에서도 대조 학습과 비대조 학습이라는 분류를 다루겠습니다!
또 다른 흥미로운 접근으로는 교사-학생(Teacher-Student) 방식과 클러스터링 기반 자기지도학습 방법이 있다.

🌇🏙 대조적 자기지도학습

SimCLR: 시각 표현의 대조학습을 위한 간단한 프레임워크 [3] 자기 지도에 대조 학습을 도입해 활용한 아마도 최초의 연구였다.

🧐 대조 학습이란 무엇일까요?

이름에서 알 수 있듯이, 임베딩 공간에서 주어진 두 샘플을 서로 대비하도록 학습합니다! 예를 들어 어떤 이미지가 있고, 그 이미지와 관련된 두 개의 샘플이 있다고 해봅시다. 하나는 그 이미지와 유사하고, 다른 하나는 유사하지 않습니다. 유사한 샘플은 양의 샘플(positive sample), 유사하지 않은 샘플은 음의 샘플(negative sample)입니다. 이제 네트워크가 이 둘을 구분하도록 학습시키는 것입니다! 이 Ishan Misra의 clip[4] 간단한 말로 개념을 이해하기에 제가 가장 좋아하는 예 중 하나예요!
대조 손실은 동일한 범주를 나타내는 양의 샘플들의 임베딩 간 거리를 최소화하고, 서로 다른 범주에서 온 경우 그 거리를 최대화하도록 학습한���.
Lcontrastive(ra,rp,rn)=max(0,m+d(ra,rp)d(ra,rn))\huge L_{contrastive}(r_a,r_p,r_n) = max(0,m + d(r_a,r_p) - d(r_a,r_n))

이 대조 손실 (이 블로그 글에는 깔끔한 요약이 있습니다[5]) 앵커와 음성 샘플 사이의 거리를 최대화하는 것을 목표로 한다 d(ra,rn)d(r_a,r_n) 양의 샘플과 앵커 이미지 사이의 거리와 비교했을 때 d(ra,rp)d(r_a,r_p).
아래 그림은 …에 대한 개요를 보여줍니다 SimCLR[3] 프레임워크. 이 아키텍처에서 두 네트워크는 f()f \, (\cdot) 그리고 g()g \, (\cdot) 증강된 이미지의 임베딩이 원본 이미지와는 유사하고, 클래스에 상관없이 서로 다른 이미지와는 비슷하지 않도록 하는 대조 학습의 개념을 구현하기 위해 두 네트워크를 함께 학습한다.
그림: SimCLR 프레임워크
손실 함수에서 양의 샘플과 음의 샘플 간의 대조 학습을 활용한 또 다른 흥미로운 논문은 비지도 시각 표현 학습을 위한 모멘텀 컨트라스트(MoCo)[7]다음의 다른 글들도 함께 살펴보세요 완전 연결 자기 지도 학습에 대하여.


🧑‍⚖️ 비대조 자기 지도 학습

양성과 음성 샘플 간의 대비가 바로 대조 학습을 이루는 핵심입니다. 그런데 지금 우리가 다루는 것은 ‘비대조’ 학습이므로, 벡터 공간에서의 거리를 비교하지 않는 것이 분명합니다!
비대조 SSL은 오직 양성 샘플만으로 작동합니다. 최근에는 다음과 같은 여러 방법들이 제안되었으며 BYOL[7] , SimSiam[8] 그리고 DirectPred[9] 오직 양성 샘플만 활용하면서도 매우 우수한 성능을 보였습니다.
SimSiam[8] 간단한 시암 구조(Siamese Network)를 활용하며, 을 사용하지 않고도 뛰어난 성과를 보고합니다.
  1. 음성 샘플 쌍
  2. 대용량 배치
  3. 모멘텀 인코더
그림: BYOL[8] 아키텍처
~의 경우에는 BYOL[7]두 개의 네트워크가 있으며, 아키텍처는 동일하지만 파라미터는 다릅니다. 이 중 하나는 고정되어 있고 ‘타깃’ 네트워크라고 부르며, 다른 하나는 학습 가능한 ‘온라인’ 네트워크입니다.
입력 tt 학습 가능한 ‘온라인’ 네트워크와 그 증강을 거칩니다 tt' 고정된, 즉 타깃 네트워크를 통과하고 나면 두 개의 임베딩을 얻게 됩니다. 목표는 MSE 손실을 사용하여 이 임베딩들 사이의 거리를 최소화하는 것입니다.
맞습니다. SSL의 최신 기법들에 대한 블로그도 모두 곧 공개될 예정입니다! 계속 지켜봐 주세요. 완전 연결.

💪🏻 SSL의 활용 분야

📚 자연어 처리에서의 Self-Supervised Learning

자기 지도 학습은 2013년부터 NLP 분야에서 본격적으로 부상했으며, 그 계기는 다음의 도입이었다 Word2Vec[10]. Word2Vec는 자기 지도 방식으로 단어 임베딩을 학습하며, 주변 단어들로부터 중심 단어를 예측함으로써 맥락 정보를 활용합니다! 예를 들어, 중심 단어가 주어졌을 때 예측된 단어의 확률을 계산합니다.
저자들은 1,000억 단어 규모의 Google News 데이터셋으로 사전학습한 word2vec 임베딩도 공개했다. 흥미롭게도, 이 임베딩은 어떤 인간의 개입 없이 학습되었음에도 매우 뛰어난 성능을 보였다! 아래 그림은 논문에서 제시한 벡터 예시로, 국가와 수도에 대한 모델 성능을 보여준다.

여기에서 단어 임베딩에 대한 다른 글도 확인해 보세요:

BERT와 RoBERTa 같은 SSL 기반 트랜스포머 모델은 마스킹된 단어 예측으로 모델을 학습한 뒤, 특정 작업에 맞게 파인튜닝된다. mBART와 mT5와 같은 최신 기계 번역 모델 대부분도 Self-Supervised Learning 지향적이다.
널리 알려진 GPT 모델들은 SSL을 활용해 다음에 올 가능성이 높은 단어를 예측합니다. ALBERT는 주어진 두 문장의 순서가 올바른지 판단하는 흥미로운 SSL 기법을 사용합니다!
Google Research가 선보인 또 하나의 흥미로운 연구는 Pegasus이다. 이는 훌륭한 블로그[12] Google AI는 추상적 텍스트 요약을 위한 Self-Supervised Learning 기반 모델인 Pegasus에 대해 소개합니다.

👁 컴퓨터 비전에서의 Self-Supervised Learning

NLP에서 마스킹된 단어 예측이나 다음에 올 가능성이 높은 단어를 예측하는 프리텍스트 태스크를 사용했던 것과 마찬가지로, 컴퓨터 비전에서는 이미지나 비디오를 활용해 프리텍스트 태스크를 설계할 수 있다. 예측해야 할 “미지”를 맞��다는 점은 동일하다. 회전 예측, 퍼즐 맞추기, 비디오 프레임 순서 맞추기와 같은 프리텍스트 태스크가 사용되었다.
의료 영상처럼 수작업 라벨링이 방대한 영역에서는 대조학습 기반 접근법이 큰 기여를 했다. 이 블로그 전반에서 논의했듯이, 최근에는 SimCLR, MoCo, SwAV 등 여러 방법이 제안되어 시각적 특징과 관련된 과제를 해결해 오고 있다.

📖 참고문헌

  1. SimCLR: 시각 표현의 대조학습을 위한 간단한 프레임워크 Ting Chen, Simon Kornblith, Mohammad Norouzi, Geoffrey Hinton 지음
  2. 비지도 시각 표현 학습을 위한 모멘텀 콘트라스트, Kaiming He, Haoqi Fan, Yuxin Wu, Saining Xie, Ross Girshick 지음
  3. 자기 잠재 표현 부트스트랩: Self-Supervised Learning을 위한 새로운 접근법 Jean-Bastien Grill, Florian Strub, Florent Altché, Corentin Tallec, Pierre H. Richemond, Elena Buchatskaya, Carl Doersch, Bernardo Avila Pires, Zhaohan Daniel Guo, Mohammad Gheshlaghi Azar, Bilal Piot, Koray Kavukcuoglu, Rémi Munos, Michal Valko 지음
  4. DirectPred: 대조 쌍 없이 Self-Supervised Learning 동역학 이해하기 위안둥 톈, 신레이 천, 수리야 강굴리 지음
  5. 단어와 구의 분산 표현과 그 합성성 토마스 미콜로프, 일리야 수츠케버, 카이 천, 그렉 코라도, 제프리 딘 지음
  6. PEGASUS: 추상적 텍스트 요약을 위한 최신 모델 피터 J. 리우, 자오 자오 지음

이 문서는 AI 번역본입니다. 오역 가능성이 있다면 댓글로 알려 주세요. 원문 보고서는 아래 링크에서 확인할 수 있습니다: 원문 보고서 보기