距離学習【metric learning】
概要

通常の分類手法があらかじめ定めたカテゴリーにデータを振り分けるのに対し、距離学習ではデータ間の近さを判定する基準そのものを獲得させる。これにより、既存のカテゴリーに含まれない未知のデータでも、他のデータとの類似度を算出できるようになる。
機械学習ではデータ間の距離(似ている度合い)を計算する場面が多く、「ユークリッド距離」や「コサイン類似度」「マンハッタン距離」などの尺度が用いられてきた。しかし、これらの一般的な尺度だけでは、対象となるデータの性質や目的に十分適合しないことがある。距離学習では、教師データや「この組は似ている」「この組は異なる」といった情報を利用し、対象の問題に適した距離尺度を学習によって身につける。
近年では深層学習(ディープラーニング)と組み合わせた「深層距離学習」が行われており、ニューラルネットワークが特徴抽出と距離の最適化を同時に行う。代表的な手法には、2つの入力を同時に処理して特徴量を近づける「シャムネットワーク」(Siamese Network)や、基準となるデータとそれに似たデータ、似ていないデータの3つの組み合わせを用いる「トリプレットロス」(Triplet Loss)がある。
距離学習の性能は、学習データに含まれる類似・非類似の関係やラベルの品質に左右されやすく、適切な学習用データの準備が求められる。また、表現学習や埋め込み学習とも関連が深く、画像や文章、音声など異なる種類のデータを共通の特徴空間へ写像して類似性を扱う技術としても用いられている。
応用分野としては顔認証や画像検索、異常検知、商品推薦(レコメンド)などがある。顔認証システムでは登録された顔写真と照合対象の写真の距離を計算し、一定の基準より近ければ同一人物と判定する。製造業の不良品検知では、正常品同士のデータを近く、不良品のデータを遠くに配置するよう学習させ、異常の検出に役立てる。ECサイトのレコメンド機能でも、利用者の閲覧履歴や購入商品の類似度を距離で表現し、関心の高い商品を提示する仕組みに応用されている。