読み方 : コントラスティブロス

Contrastive Loss

概要

Contrastive Lossとは、機械学習で予測と正解の誤差を評価するのに用いる誤差関数の一つで、データ間の類似度にもとづいて距離関係を学習するためのもの。似ているサンプル同士を近づけ、異なるサンプル同士を遠ざけるようにモデルを更新するのに用いられる。
Contrastive Lossのイメージ画像

入力された二つのサンプルのペアと、それらが同じクラスか異なるクラスかを示すラベルを用いて定義される。一般的な形式では、同じクラスと判断される正例ペア(positive pair)については距離を小さくする方向に誤差が算出され、異なるクラスと判断される負例ペア(negative pair)では距離が一定以上離れるように誤差が算出される。

モデルはサンプルを埋め込み空間に写像する過程で、類似したデータは近く、非類似データは遠くという構造を自然に形成することができる。距離としてはユークリッド距離が広く用いられるが、目的に応じて他の距離尺度が採用されることもある。

なお、負例に対しては「マージン」と呼ばれる閾値が設定される。これは、異なるクラスに属するデータ同士が特徴空間上で最低限保つべき最小距離のことで、この値より大きく離れていれば損失を与えない仕組みになっている。異なるデータ同士がすでに遠く離れている場合に、無理にさらに遠ざけようとすることがなくなる。

Contrastive Lossは顔認証や類似画像検索など、データの類似度に基づいて識別を行う領域で活用されてきた。ラベルが限られた状況でもデータ構造をうまく捉えられる点が注目され、自己教師あり学習などにも応用されている。

(2025.11.27更新)