Skip to main content

Self-Supervised Learning Overview

Self-Supervised Learning (SSL) は、人間の label を使わずに、データ自身から supervision signal を作って representation を学ぶ枠組みです。Vision、language、video、speech、graph などあらゆる領域に広がっており、近年の foundation model の中核です。

大きな family

Family何を予測するか代表例
ContrastivePositive / negative の対比SimCLR、MoCo
Non-contrastiveAugmentation 不変BYOL、SimSiam
Masked modelingMasked pixel / tokenMAE、BEiT
Self-distillationTeacher の representationDINO、DINOv2
Predictive (JEPA)Target embeddingI-JEPA、V-JEPA
GenerativeデータそのものDiffusion、AR

詳細カテゴリ

カテゴリ内容
Contrastive LearningSimCLR、MoCo、BYOL、SimSiam
Masked Image ModelingMAE、BEiT、SimMIM
Self-DistillationDINO、DINOv2、DINOv3
JEPAI-JEPA、V-JEPA、V-JEPA 2

なぜ重要か

  • 大規模ラベルなしデータが現実的に手に入る
  • Foundation model の事前学習方式として主流
  • Downstream task (classification、segmentation、3D、video、robot) に転移可能
  • JEPA や masked modeling は world model と直結

数式で見る SSL の統一的な見方

Self-Supervised Learning の各 family は、一見するとかなり違って見えますが、「context から target に関する信号を予測する」という形でまとめて見ることができます。

LSSL= ⁣(gϕ ⁣(fθ(xc)),sg ⁣(hθˉ(xt)))\mathcal{L}_{\mathrm{SSL}} = \ell\!\left( g_\phi\!\left(f_\theta(x_c)\right), \mathrm{sg}\!\left(h_{\bar{\theta}}(x_t)\right) \right)

ここで、xcx_c は model に見せる context、xtx_t は予測したい target です。fθf_\theta は trainable な encoder、gϕg_\phi は predictor や prediction head、hθˉh_{\bar{\theta}} は teacher encoder または tokenizer に相当します。θˉ\bar{\theta} は多くの場合に θ\theta の EMA で更新される teacher parameter です。sg()\mathrm{sg}(\cdot) は stop-gradient を表し、target 側に直接 gradient を流さないことを意味します。

この式の気持ちは、「人間が付けた label を使わずに、入力自身から作った target を当てることで、下流 task に使いやすい representation を得る」というものです。Family ごとの差は、主に target の作り方と loss \ell の選び方に現れます。

Familyxcx_cxtx_t の作り方TargetLoss \ell の例気持ち
Contrastive Learning同じ画像の異なる viewPositive view と negative viewInfoNCE同じ意味の view を近づけ、別の画像を遠ざける
Masked Image Modelingvisible patches と masked patchesPixel または discrete tokenMSE / CE隠された patch を当てるために画像構造を学ぶ
Self-Distillationstudent view と teacher viewTeacher distributionCE / KL安定した teacher の出力を student が追いかける
JEPAcontext block と target blockTarget representationL1 / L2Pixel ではなく抽象表現を予測する

この見方を使うと、SSL の設計は「どの情報を隠すか」「何を target として信頼するか」「collapse をどう防ぐか」という三つの問題に分解できます。

関連ページ

主なソース