ワンショット学習とは、AIモデルが1枚(またはごく少数)の訓練データだけを用いて、新しいカテゴリの対象を正しく識別できるようになる機械学習の手法です。大量のデータ収集が難しい状況での活用が期待されています。
ワンショット学習とは
一言でいうと、ワンショット学習とは「たった1枚の画像や例を見るだけで、AIがその特徴を学習し新しい未知の対象を識別できるようになる少データ学習手法」です。
詳しく解説
通常の機械学習や深層学習では、AIに特定の物体や文字を正しく認識させるために何千枚、何万枚もの訓練データが必要となります。しかし、人間の子供は新しい動物や文字を教えられるとき、たった1回見せられただけでそれを理解し識別できるようになります。この人間の認知の仕組みを模倣したのがワンショット学習です。背景として、現実世界ではすべてのカテゴリについて大量の学習データを集めることがコストや時間の面で困難であるという課題があります。ワンショット学習では、事前学習済みのモデルを用いて特徴量を抽出し、未知のデータとの類似度を比較することで、わずか1枚のサンプルでも高精度な識別を実現します。
具体例・使われ方
具体的な利用例としては、新しい社員の顔写真を1枚登録するだけで即座に認識できる社内セキュリティシステムや、過去に見たことがない希少な病変の画像を1枚のサンプルをもとに医師の診断支援としてAIが検知する医療画像解析などが挙げられます。
似た用語との違い
一般的な機械学習やディープラーニングが「大量のデータ」を必要とするのに対し、ワンショット学習は「1枚のデータ」を対象とします。また、類似する概念として数枚程度のデータを使う「フューショット学習(少データ学習)」がありますが、ワンショット学習はその中でも特にサンプル数が1枚に限定された極端なケースを指します。
注意点
ワンショット学習の注意点として、事前に大量の異なるデータを用いた広範な事前学習(メタ学習など)が不可欠であり、学習コストやモデル構築の難易度自体が低いわけではない点が挙げられます。また、1枚のデータにノイズや偏りがあると認識精度が著しく低下するという限界もあります。