対照学習とは、似たデータ(正例)同士の表示ベクトルを近づけ、異なるデータ(負例)同士の表示ベクトルを遠ざけるようにモデルを訓練する機械学習の支援手法です。ラベルなしデータから特徴量を効果的に獲得できる自己教師あり学習の代表的なアプローチであり、画像認識や自然言語処理、マルチモーダルAIなど広範な分野で活用されています。
対照学習とは
対照学習を一言でいうと、似ているデータ同士を引き寄せ、異なるデータ同士を遠ざけることでデータの特徴量を効率的に学ぶ表現学習の手法です。
詳しく解説
従来の機械学習では、人間が大量の正解ラベルを付与する教師あり学習が一般的でしたが、ラベル付けには膨大なコストがかかる課題がありました。これに対し対照学習は、ラベルがないデータから意味のある特徴を抽出する自己教師あり学習の主要な手法として注目されています。具体的には、同じ画像に拡大や回転などの加工を施したペアを「正例」、まったく別の画像をペアを「負例」とし、正例の特徴ベクトルを近づけ、負例の特徴ベクトルを遠ざけるように損失関数を計算してモデルを学習させます。これにより、ラベルなしデータから汎用的なデータ表現を獲得する表現学習が可能となります。
具体例・使われ方
利用例としては、画像検索システムやマルチモーダルAIの代表格であるCLIPなどが挙げられます。CLIPではテキストと画像を対照学習させることで、説明文に合致する画像を精度高く検索・生成できます。また、医療画像の分類や音声データの類似度判定など、専門的でラベル付けが困難な領域でも活用が進んでいます。
似た用語との違い
教師あり学習との違いは、明示的な正解ラベルの有無です。教師あり学習が「この画像は猫」という分類ラベルを直接予測するのに対し、対照学習はデータ構造そのものの類似性に基づいて学習します。また、通常の自己教師あり学習の中には元画像を復元する生成モデルなどもありますが、対照学習は比較を通じて特徴量を獲得する点に違いがあります。
注意点
対照学習では、適切な正例と負例のペア設計(データ拡張の手法やネガティブサンプルの選定)が精度を大きく左右します。負例の数が不十分だと効果的な学習が進まない場合や、似ているはずのデータを誤って負例として扱ってしまうリスクがある点に注意が必要です。