AI

フューショット・ラーニングとは何か?

限られたデータでAIモデルを学習させ、効率的で現実的なソリューションを提供する数ショット学習の方法をご覧ください。
1 分読
What is Few-Shot Learning blog image

数ショット学習は、AIと機械学習に変革をもたらした。数ショット学習では、アルゴリズムは小さなデータセットで学習される。限られたデータでAIモデルを訓練する必要がある場合、数ショット学習はまさにあなたが探していたソリューションかもしれない。

フューショット・ラーニングはどこで使われるのか?

少数点学習は、実世界のいたるところで応用されている。真の汎用LLMが必要であろうと、AIを使ったスクレイピングが必要であろうと、数発学習はあなたのモデルで少なくともある程度は使われるだろう。

  • これ
  • ロボット工学物を拾うことを学習するとき、自律型ロボットは大規模なデータセットを必要としない。彼らはプロセスを経験し、そして一般化を行う。
  • パーソナライズされた技術:携帯電話のキーボードやフィットネスウォッチは、数ショット学習を非常に効果的に使用している。
  • 医薬品新薬を発見する際、科学者は非常に限られたデータセットを使用することが多い。数ショット学習は、初期の試験で活用することで、スピードアップを図ることができる。
  • 言語処理:言語学者や考古学者は、しばしば未使用の死語を扱う必要がある。このような文献の最初の手による情報源は乏しい。AIは、これらの言語の解読を支援するために、数ショット学習を使用することができます。
  • 画像認識:顔認識には数ショットの学習が必要です。ほとんどの人は、一人の人物の何千枚もの写真を使ってAIを訓練するつもりはない。これと同じ考え方が、絶滅危惧種や希少種にも当てはまる。

数撃ちゃ当たる学習と他のパラダイムとの比較

Few-shot学習は、n-shot学習と呼ばれる、より広範な機械学習技法の一部である。nショット学習では、nはモデルが学習されるクラスごとのラベル付き例数を表す。

以下はNショット学習の他の例である。

  • ゼロショット:モデルは、見たことのないクラスを推測するために予備知識を使う。馬とトラについて訓練されたモデルを想像してほしい。このモデルはシマウマを見たことがないが、縞模様のある馬はシマウマであると推測できる。
  • ワンショット:モデルは1クラスにつき1つの例のみで学習される。スマートフォンが1枚の写真からあなたの顔を学習し、画面のロックを解除できるようにする場合、これはワンショット学習である。

数発学習はどのように機能するのか?

Few-Shotは、Zero-ShotやOne-Shotよりも広範であるが、それでも非常に限られたデータセットに依存している。適切なトレーニングデータがあれば、モデルは素早く一般化を行い、パターンや傾向を特定することができる。

ゼロショットやワンショットと同様に、数ショット学習は以下の原則の上に成り立っている。

  • 事前知識の活用:モデルは、以前のタスクから得た知識とトレーニングを使用して、新しい未見のデータからパターンを特定する。
  • タスク固有の適応:モデルは、限られた例で新しいデータを適切に扱うために、内部表現(クラス)と意思決定プロセスを変更する。
  • 小さなデータセットからの汎化:注意深く選択された訓練データにより、モデルはわずか数サンプルを見ただけで効率的に汎化することができる。

数発学習の種類

数撃ちゃ当たるの学習は定石ではない。常に進化し続けるAI業界の一部なのだ。しかし、次のセクションで紹介するテクニックについては、業界は一般的なコンセンサスに達している。

トランスファー・ラーニング

トランスファー学習図

モデルがあるタスクから学習し、その知識を新しいタスクで使うことを “転移学習 “と呼ぶ。人間と同じように、AIも過去の経験を利用して新しい状況に適応することができる。モデルの知識は移転し、新しいタスクを達成しようとするときに関連するようになる。

AIにコールオブデューティをプレイさせることを想像してほしい。そのAIにフォートナイトをプレイさせる。AIはすでに狙い方、動き方、戦闘戦略を知っている。このモデルはコールオブデューティーの経験があるため、フォートナイトをプレイする際に成功する可能性が高くなる。

転移学習はAIや機械学習に限ったことではない。人間は日々、転移学習を活用している。トランスファー学習は農業革命の主な原動力となった。先史時代の人類は、ある種の食物を育てる方法を学んだ。私たちの祖先は、その技術を他のあらゆる植物性食品に転用した。最終的には、同じ原理を家畜の家畜化にも応用した。

データ補強

データ補強図

数発学習を拡張するために、データ補強を使うことができる。現実の世界では、現実のデータに類似した架空のデータを生成することがよくある。この場合、架空のデータにランダム性やノイズを加えることが多い。

内挿と外挿は、データの補強を理解しやすくする。下のグラフを見てほしい。ご覧のように、実際のデータは4つしかありません。点線はこれらの点を使ってパターンを作ります。これらの点を使って、X=5ならY=10、X=0ならY=0と外挿できる。

グラフを使ったデータ補強

私たちは限られたデータの中から傾向を特定することができる。一旦トレンドがわかれば、元のデータで示されたルールに従うことで、無限の追加データを生成することができる。式(Y = 2X)は、4ショットのデータセットを無限の点セットに増強する。

現実の世界では、完璧なものなど存在せず、上記のような例はしばしば存在しない。馬のAIトレーニングを想像してみてほしい。茶色の馬の本物の写真が1枚あったとする。巧みに編集して、赤馬、黒馬、白馬、シマウマの写真を手に入れたとする。たった1枚の馬の写真から、あなたははるかに大きなデータセットを生成した。

データ補強についての詳細はこちらをご覧ください。

メタ・ラーニング

メタ学習ダイアグラム

メタ学習は、実際のデータよりも問題解決に重きを置いている。メタ・ラーニングでは、モデルは大きな問題を小さな問題に分解し、問題の種類によって異なる戦略を使うように教えられる。小学校で習った演算の順序を思い出してほしい。

次の問題を見てみよう:(2+(2*3))/4=?この問題を解くには、この問題を分解する必要がある。

(2+(2*3))/4=?

  1. 2*3=6.これを単純化すると、(2 + 6)/4となる。
  2. 2+6=8.問題は8/4になった。
  3. 8/4=2.より小さな問題の連鎖は、(2+(2*3))/4=2を証明することにつながる。

大きな問題を小さなステップに分割することで、答えは2であるという結論に達することができる。そして、それぞれの小さな問題に対して適切な戦略を用いる。これはメタ学習と呼ばれる。機械は、無数の異なるシナリオに適用できる問題解決戦略を学習する。

初期に習った別の例を見てみよう。文は大文字で始まり、句読点で終わる必要がある。モデルがこれを学ぶとき、単に文章の書き方を学ぶのではない。モデルが学ぶのは、人間が読んで理解できる方法で、すべてのアイデアを効果的に伝える方法なのだ。

上記の他の例と同様、メタ学習は機械学習に適応される以前、何十万年もの間、人々によって使われてきた。

メトリック・ラーニング

メトリクス学習ダイアグラム

メトリック学習では、モデルは単にラベルを割り当てるのではなく、データ間の類似性を比較するように学習される。そして、メトリクスを比較する関数を使用し、新しいデータが以前に見たデータにどれだけ近いかを確認する。Teachable Machineでは、画像を使って実験を行い、メトリック学習が実際にどのように機能するかを見ることができる。

猫の写真一式を使ってモデルを訓練するとしよう。モデルはこれらの画像を分析し、毛並み、ひげ、耳の形などのさまざまな特徴を比較することを学習する。

モデルのトレーニングが終わったら、新しい猫の写真を与える。この新しい写真のデータと学習データを比較する。毛並み、ひげ、耳の形などのデータポイントを見て、類似度スコアを計算する。新しい画像が以前のデータと98%類似していれば、モデルはその画像が猫である可能性が高いと判断する。

もしモデルが他の方法で “猫はかわいい “と言うように訓練されていれば、この新しい画像が猫であることを98%確信した後、他の訓練タイプから追加のロジックを実行し、”あなたの猫の写真はかわいい!”と言うかもしれない。

少数ショット学習に内在する問題

少数点学習を扱う場合、データセットの少なさは長所でもあり短所でもある。機械学習には様々な落とし穴がある。以下のような問題を避けるためには、前のセクションで説明した概念を使って、より小さなモデルをトレーニングする必要がある。

一般化

数ショットのモデルは顔認識などではうまくいくが、まったく新しいシナリオを扱う場合、データがこれまで見てきたものと十分に類似していないと失敗することが多い。

従来のLLMは、数百万、時には数十億、数兆のデータポイントを与えられる。これによって、モデルは効果的に外れ値を処理し、見たことのないデータを扱っても適切な予測を行うことができる。

鉛筆で描かれた猫の画像を数枚しか見たことのないモデルは、現実世界の猫の画像を認識できないかもしれない。ロバストなデータセットがなければ、モデルは常にロバストな一般化を行うことはできない。

データの多様性

小規模なデータセットでは、大規模なデータセットに存在する真の多様性を捉えることができないことが多い。あるモデルが少人数のデータセットで学習され、そのすべての住所が米国にあったとする。このモデルはバイアスがかかり、すべての人がアメリカ出身であると仮定してしまう可能性が高い。広範で多様なデータセットを使えば、この問題を軽減することができます。当社のデータセットは、モデルのパフォーマンスを向上させるのに役立ちます。

2010年代後半、この問題は世界中のAIモデルを悩ませた。この問題は、現代のAIでもまだ時々頭をもたげてくる。ソーシャル・メディア上で学習されたモデルは、しばしばソーシャル・メディア上で目にしたバイアスを拾ってしまう。2010年代後半の人種差別的なAIボットの話は、誰もが聞いたことがあるだろう。このようなことが起こるのだ。

フィーチャー表現

データの多様性の問題は諸刃の剣である。仮に動物を認識するモデルを考えてみよう。もしこのモデルが、猫はすべて4本足だとしか学習していないとしたら、馬の写真を見て、それが猫に驚くほど似ていると判断するだろう。

顔認識モデルが、顔には目、耳、口、鼻があることを学習しても、これらの特徴を学習データと適切に比較するように教えられていなければ、モデルは誤った(そして時には危険な)結果を出すことになる。もしこれらの特徴を持つ誰もがあなたの携帯電話のロックを解除できるのであれば、これはセキュリティ上の大問題となる。

結論

数ショット学習は、大規模なデータセットの必要性を減らすことができる。人間はごく初期から数ショット学習を使ってきた。AIに適応させたのはごく最近のことだ。いくつかのハードルがある。汎化、データの多様性、特徴表現は、小さなモデルを作成する際に大きな障害となる。転移学習、データ増強、メタ学習、メトリック学習は、大規模モデルだけでなく小規模モデルにおいても、これらの課題を克服する素晴らしいツールを与えてくれる。