Few-shot Learning(フューショット学習)とは?AI・機械学習の用語辞典

用語「フューショット学習」について説明。ChatGPTなどの言語モデルが少数の例文から効率的に学習し、多様なタスクを解決できることを指す。大量データが必要な一般的な機械学習や既存モデルの再学習(ファインチューニング)と比べ手軽。また、コンピュータビジョンなど他の機械学習分野でも、少量データから学習する同じ用語が使用されている。

» 2023年12月04日 05時00分 公開
[一色政彦デジタルアドバンテージ]
「AI・機械学習の用語辞典」のインデックス

連載目次

用語解説

 自然言語処理においてフューショット学習Few-shot Learning)とは、ファインチューニングなどによる言語モデルのパラメーター(=ニューラルネットワークの重みなど)のアップデートなしに、少数の例文(Examples、見本:Examplars)を文脈(コンテキスト)内でデモンストレーションとして提示するだけで、さまざまなタスクを解決できる能力を持つことである。2022年末以降で話題となっているChatGPTやGoogle Bardなどに搭載されている言語モデル(GPT-4やGemini)は、フューショット学習の能力を持つ言語モデルの一例だ(図1)。

図1 フューショット学習(Few-shot Learning)のイメージ 図1 フューショット学習(Few-shot Learning)のイメージ
参考論文“Language models are few-shot learners”(Tom B. Brown, et al. @ OpenAI., arXiv, 2020.)のFigure 2.1
図中の「プロンプト」は、指示や質問などのテキストのこと。ここでは「cheese ⇒ 」というプロンプトに対して、英語からフランス語に翻訳して「fromage」という正解の回答が得られる想定である。

 例文/見本が1つだけの場合は、特別に「言語モデルのワンショット学習One-shot learning)」とも呼ばれる。

 例文がない場合は、「言語モデルのゼロショット学習Zero-shot Learning)」と呼ばれる(参考:GPT-2の論文『Language models are unsupervised multitask learners』)。ゼロショット学習については、こちらで用語解説しているので、この記事と見比べると分かりやすいだろう。

 なお、本稿で説明している「言語モデルのフューショット学習」は主に、OpenAIが2020年5月に公開したGPT-3(大規模言語モデル)に関する論文『Language models are few-shot learners』OpenAIの公式サイト)に基づいた内容となっている。GPT-3以降(GPT-3.5やGPT-4など)の最近で話題に挙がる「フューショット学習」は、本稿で説明している意味で使われているケースがほとんどだと思われるが、人工知能/機械学習(特にコンピュータビジョン)の分野では、以前から「Few-shot Learning」(フューショット学習)や「One-shot Learning」(ワンショット学習)という用語が存在していた(後述)。そのため、人や記事などによっては違う論文に基づく「フューショット学習」や「ワンショット学習」を指している可能性があることに注意してほしい。

 フューショット学習は、方法(method)を示す用語として単にフューショットFew-shot)と呼ばれることも多い。他の単語(「機能」「タスク」「設定」「プロンプト」など)と組み合わせて表現されることもあり、例えばフューショット学習を行うためのプロンプト(テキスト)の書き方に着目して、フューショット・プロンプティングFew-shot Prompting)と呼ばれたりする(参考:『Prompt Engineering Guide』というサイトの「Few-shotプロンプティング」)。さらに、思考の連鎖(CoT:Chain of Thought)というテクニックとフューショットを組み合わせたプロンプティングのテクニックに、例文として「問題を解く手順」までも含めたプロンプトを書くFew-shot-CoTというのもある(参考:「思考の連鎖(Chain of Thought)でChatGPTからよりよい応答を引き出そう:ChatGPT入門」)。

 また、より大きな言語モデルになるほど文脈内の情報(例文/見本など)をますます効率的に利用することが分かっており、これをコンテキスト内学習In-Context Learning)とも呼ぶ(前掲の「GPT-3に関する論文」内に説明がある)。コンテキスト内学習についての説明では、基本的にフューショット・プロンプト/ワンショット・プロンプト/ゼロショット・プロンプトの3手段と、思考の連鎖(CoT)が取り上げられる。

 以前からある、人工知能/機械学習、特にコンピュータビジョンにおけるフューショット学習Few-shot Learning)には幾つかのアプローチがあり、例えば、

  1. 少量の訓練データを使って学習する手法
  2. 訓練済みモデルに対して、少量のデータを使って転移学習やメタ学習(=複数の関連タスクから問題解決のパターンを学ぶこと)を行う手法

などがある。これらについてより詳しく知りたい場合は、YouTube動画「Few-Shot 学習 - 学習データが少ないときのディープラーニング - ビジョンセンサーチャンネル」がお勧めだ(筆者がネット検索して探した中では最も分かりやすいと感じた)。フューショット学習の論文は多数あるが、1の代表的な論文には「Prototypical Networks for Few-shot Learning」(2017年)が、2の代表的な論文には「Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks」(2017年)などがある。包括的な調査論文も幾つかあり、代表的な論文には「A Comprehensive Survey of Few-shot Learning: Evolution, Applications, Challenges, and Opportunities」(2022年)がある。

「AI・機械学習の用語辞典」のインデックス

AI・機械学習の用語辞典

ここを更新しました(2023年12月4日)

フューショット学習の定義をより分かりやすく書き直しました。

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。