結論
Zero-shotは、解きたいタスクの例を1つも与えず、指示やクラス名などの説明だけを手がかりに推論させる方式です。Few-shotは少数の例を与えてから推論させる方式で、大規模言語モデルのプロンプトで使う場合は、Zero-shotと同じくモデルの重みを更新しません。
比較表
| 観点 | Zero-shot | Few-shot |
|---|---|---|
| 与える例の数 | 0(指示やクラス名などの説明だけ) | 少数。GPT-3の論文の評価では、多くの場合10〜100個 |
| 大規模言語モデルでの使い方 | 「次の文を英語に訳してください」のように指示だけを書く | 入力と答えの組を数個並べ、最後に本番の入力を置く |
| 画像認識での例 | CLIPで、クラス名を「〇〇の写真」という文にし、画像と最も近い文のクラスを選ぶ | クラスごとに数枚の画像だけを与え、新しいクラスを見分ける(N-way K-shotの課題) |
| 重みの更新 | しない | プロンプトで例を与える使い方ではしない。メタ学習などで数回だけ更新する方法もある |
| 強み | 例を集めて用意する手間がかからない | 出力の形式や判断の基準を、例で具体的に伝えられる |
| 弱み | 形式があいまいなタスクでは、説明だけでは意図が伝わりにくい | 例の選び方や並べ方で結果が変わることがある。例が増えるほどプロンプトが長くなる |
| 例が1つの場合 | 例を1つでも与えればZero-shotではない(One-shotと呼ぶ) | One-shotとして別に扱う。シラバスもFew-shotとOne-shotを別のキーワードに挙げている |
| シラバス項目 | 技術分野 項目32 マルチモーダル | 技術分野 項目31 転移学習・ファインチューニング |
| G検定での問われ方 | 例を1つも与えない点でのOne-shot・Few-shotとの区別、CLIPがラベル付きデータなしで分類する仕組み | 与える例の数による区別、重みを更新しない点でのファインチューニングとの違い |
最終確認日:2026年11月1日
それぞれの説明
Zero-shotとFew-shotは、新しいタスクに対して例をいくつ与えるかで区別する言葉です。「ショット」は与える例の数を表し、例が0ならZero-shot、1つならOne-shot、少数ならFew-shotです。どちらも、事前学習で幅広い知識を身につけたモデルを使うことが前提になります。
Zero-shot
Zero-shotでは、解きたいタスクの例を1つも与えません。代わりに、指示やクラス名などの説明を与えます。大規模言語モデルなら、「次の文を英語に訳してください」と書くだけです。
画像ではCLIPが代表例です。クラス名を「〇〇の写真」という文にし、画像と最も近い文を選んで分類します。CLIPの論文は、ImageNetの学習用画像約128万枚を1枚も使わずに、それらで学習した元のResNet-50と同等の精度を示しました。例を集める手間はかかりませんが、出力の形式などが説明だけでは伝わりにくいことがあります。
Few-shot
Few-shotでは、少数の例を与えます。大規模言語モデルでは、入力と答えの組をいくつかプロンプトに並べ、最後に本番の入力を置きます。2020年のGPT-3の論文はこの使い方をFew-shotと呼び、評価では多くの場合10〜100個の例を使いました。例で形式や基準を具体的に示せるため、Zero-shotより精度が上がることが多くあります。ただし、例の選び方や並べる順番で結果が変わることも報告されています。
画像認識などでは、クラスごとに数枚の画像だけで新しいクラスを見分ける課題もFew-shotと呼びます。こちらでは、メタ学習で身につけた初期値から、少ない回数だけ重みを更新する方法も使われます。
ファインチューニングとの違い
プロンプトで例や指示を与えるZero-shotとFew-shotは、どちらもモデルの重みを更新しません。多くの場合、数千件以上のラベル付きデータで重みを更新するファインチューニングとは、この点が異なります。例の数と、重みを更新するかどうかの2点を押さえると、選択肢を見分けやすくなります。
見分けるコツ
- 「ショット」は与える例の数です。0ならZero-shot、1つならOne-shot、少数ならFew-shotと、数で見分けます。
- Zero-shotでも、指示やクラス名という説明は与えます。「何の情報も与えずに解く」という意味ではありません。
- プロンプトで例を見せても重みは変わりません。多くのラベル付きデータで重みを更新するならファインチューニングで、Few-shotとは別の方法です。
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
Zero-shotとは、モデルが事前学習の段階も含めて一度もデータを見ていない状態で、推論させることを指す。
答えを見る
答え × 誤り
Zero-shotの「ゼロ」は、解きたいタスクの例の数です。モデルは事前学習で幅広い知識を得ており、その知識と指示やクラス名を手がかりに推論します。
-
大規模言語モデルにFew-shotで例を示すとき、同じ例を使っても、並べる順番を変えるだけで精度が大きく変わることがある。
答えを見る
答え ◯ 正しい
GPT-3などを使った実験で、例の選び方やプロンプトの形式に加え、例の順番によっても、精度が当て推量に近い水準から最高水準に近い水準まで変わりうると報告されています(Zhaoら、2021年)。
-
ラベル付きの例をまったく用意できない新しい分類タスクでも、Zero-shotであれば試すことができる。
答えを見る
答え ◯ 正しい
Zero-shotではクラス名や指示などの説明だけを与えるため、例を集める前でも使えます。精度が足りなければ、数個の例を用意してFew-shotを試します。
関連問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目31 転移学習・ファインチューニング)
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目32 マルチモーダル)
- Tom B. Brown et al., Language Models are Few-Shot Learners (2020) (1 Introduction、2 Approach(Fine-Tuning、Few-Shot、One-Shot、Zero-Shotの定義))
- Alec Radford et al., Learning Transferable Visual Models From Natural Language Supervision (2021)
- Tony Z. Zhao, Eric Wallace, Shi Feng, Dan Klein, Sameer Singh, Calibrate Before Use: Improving Few-Shot Performance of Language Models, ICML 2021 (Abstract)
- Chelsea Finn, Pieter Abbeel, Sergey Levine, Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks, ICML 2017
ほかの違い比較
- アジャイルとウォーターフォールの違い 進め方とAI開発での使い分け
- 赤池情報量規準(AIC)とベイズ情報量規準(BIC)の違い 罰則の重さ
- バギングとブースティングの違い 並列か逐次か、減らす誤差の違い
- バッチ正規化とレイヤー正規化の違い 平均と分散を計算する範囲の違い
- バッチ学習・ミニバッチ学習とオンライン学習の違い 更新回数とぶれ
- BERTとGPTの違い エンコーダとデコーダ、学習課題の違い
- CBOWとスキップグラムの違い 予測の向きと学習の速さ
- 分類問題と回帰問題の違い 出力の形で見分けるコツと評価指標
- CNN・RNNとTransformerの違い 得意なデータと計算の並列性
- 協調フィルタリングとコンテンツベースフィルタリングの違い 仕組み
- 共分散と相関係数の違い 式の関係と単位・値の範囲
- データ汚染とAdversarial Attackの違い 学習時か推論時かと対策
- 決定木とランダムフォレストの違い 解釈のしやすさと精度・安定性
- 深さ優先探索と幅優先探索の違い 調べる順番・最短解・メモリ
- 営業秘密と限定提供データの違い 3つの要件と刑事罰の有無
- Faster R-CNNとYOLOの違い 2段階型と1段階型、速度と精度
- GANと拡散モデル(Diffusion Model)の違い 学習と生成の仕組み
- GANとVAEの違い 識別器の有無と学習の仕組み
- GDPRと個人情報保護法の違い 法的根拠・本人の権利・制裁金
- 勾配降下法と誤差逆伝播法の違い 勾配を使う側と求める側
- グリッドサーチとランダムサーチの違い 試行回数の決まり方と効率
- ホールドアウト検証と交差検証の違い 分割回数・計算量・使い分け
- 画像分類(物体識別)と物体検出の違い 出力の形と使い分け
- 委託・第三者提供と共同利用の違い 同意の要否と受け手が使える範囲
- k-means法と階層的クラスタリングの違い クラスタ数を決める時期と計算量
- 個人情報・個人データと保有個人データの違い 範囲の入れ子とかかる義務
- 個人情報と個人識別符号の違い 包含関係と当たる例・当たらない例
- L1正則化とL2正則化の違い 罰則の形と重みが0になるか
- 最小二乗法と最尤法の違い 推定の基準と結果が一致する条件
- LIMEとSHAPの違い 局所近似とシャープレイ値の使い分け
- LSTMとGRUの違い ゲートの数と記憶セルの有無
- 機械学習とディープラーニングの違い 包含関係と特徴量の決め方
- 平均絶対値誤差(MAE)と平均二乗誤差(MSE)の違い 外れ値への強さ
- 正規化と正則化の違い 目的と代表的な手法を表で整理
- 主成分分析(PCA)と特異値分解(SVD)の違い 目的と計算の関係
- 主成分分析(PCA)とt-SNEの違い 線形か非線形か、保つ構造の違い
- 適合率と再現率の違い 分母の違いと重視する場面
- プルーニング・量子化と蒸留の違い 何を減らすかと元モデルの扱い
- Q学習とSARSAの違い 更新式の1か所と方策オン・オフ
- RNNとLSTMの違い 記憶セルと勾配消失の起きにくさ
- Self-AttentionとSource-Target Attentionの違い Q・K・Vの出どころ
- セマンティック・インスタンスとパノプティックの違い 背景と個体の扱い
- 新規性と進歩性の違い 比べ方とAI発明での論点
- シグモイド関数とソフトマックス関数の違い 出力の合計と使い分け
- ソフトローとハードローの違い 法的拘束力の有無と日本・EUの例
- 強いAIと弱いAIの違い 心をもつと考えるかの違い
- 教師あり学習・教師なし学習と強化学習の違い 学習の手がかりと代表例
- 特許権と著作権の違い 発生・保護対象・期間とAIでの使い分け
- 匿名加工情報と仮名加工情報の違い 加工の程度と第三者提供の可否
- 転移学習とファインチューニングの違い 重みを固定するか更新するか
- 請負契約と準委任契約の違い 完成義務とAI開発での使い分け