LLMにおけるメニーショット・インコンテキスト学習のパワーを解き放つ
メニーショット・インコンテキスト学習は、入力コンテキスト内の複数の例を観察することによってモデルが予測を生成するNLPテクニックである。
シリーズ全体を読む
- OpenAIのChatGPT
- GPT-4.0と大規模言語モデルの秘密を解き明かす
- 2024年のトップLLM:価値あるもののみ
- 大規模言語モデルと検索
- ファルコン180B大型言語モデル(LLM)の紹介
- OpenAIウィスパー高度なAIで音声をテキストに変換する
- OpenAI CLIPを探る:マルチモーダルAI学習の未来
- プライベートLLMとは?大規模言語モデルをプライベートで実行 - privateGPTとその先へ
- LLM-Eval:LLMの会話を評価するための合理的なアプローチ
- CohereのRerankerを使いこなし、AIのパフォーマンスを向上させる
- PagedAttentionを用いた大規模言語モデルサービングの効率的なメモリ管理
- LoRAの説明LLMを微調整するための低ランク適応
- 知識の蒸留:妥当性を犠牲にすることなく、大規模で計算量の多いLLMから小規模なLLMへ知識を移行する
- RouteLLM: LLM展開におけるコストと品質のトレードオフをナビゲートするオープンソースフレームワーク
- 検証者-検証者ゲームがLLM出力の可読性を向上させる
- 金魚のように、暗記をするな!ジェネレーティブLLMで暗記を軽減する
- LLMにおけるメニーショット・インコンテキスト学習のパワーを解き放つ
- 双眼鏡でLLMを発見:機械生成テキストのゼロショット検出
##数ショット・インコンテキスト学習 vs 多ショット・インコンテキスト学習
大規模言語モデル (LLMs)は、数ショットインコンテキスト学習 (ICL)において印象的な能力を示している。LLMは、推論中に提供される限られた入出力例から学習することで、パラメータを変更することなくタスクを実行する。インコンテキスト学習(In-Context Learning: ICL)の分野では、これまで数ショット学習が標準的であった。しかし、GPT-3やLlama 2のような以前のLLMでは、コンテキストウィンドウが制限されていたため、しばしば制限に直面していた。
LLM領域における最近の進歩により、コンテキストウィンドウが拡張され、多ショットインコンテキスト学習(ICL)の探索が可能になった。多ショット学習は、モデルにより多くの例集合を提供し、より効果的な理解と汎化を助ける。
数ショットのICLは単純なタスクには有効であるが、複雑な推論や高次元の問題ではしばしば失敗する。これは、小さなコンテキストウィンドウ内でタスクを指定する能力が限られているためである。研究者らは、これらの課題を克服し、多ショットICLの可能性を探るために、様々なタスクにおいて、コンテキスト内の例(ショット)の数をスケーリングすることがパフォーマンスに与える影響を調査する。
多ショットICLは、特に複雑な推論、問題解決、アルゴリズム計算を必要とするタスクにおいて、多ショットICLを常に上回る。コンテキストウィンドウ内のトークン数が数十万に達すると、最適な性能が達成される。このことは、多ショットインコンテキスト学習(ICL)のスケーラビリティと有効性を示している。
さらに、多ショットICLは事前学習のバイアスを克服し、未知のタスクへの適応を可能にする。ICLは数値入力による高次元関数の学習が可能であり、自然言語処理(NLP)以外にも応用が広がる。また、教師ありfine-tuningに匹敵する性能を発揮し、タスクに特化した学習の必要性を減らす可能性がある。
図-複数のタスクにおけるコンテクスト内学習(ICL)の多ショット対少数ショット](https://assets.zilliz.com/Figure_Many_shot_vs_few_shot_in_context_learning_ICL_across_several_tasks_e18ca197de.png)
図:複数のタスクにまたがるコンテキスト内学習(ICL)の多ショット対少数ショット|出典
このブログでは、Gemini 1.5 Proに代表されるように、幅広いタスクにわたる多ショットICLの貢献について議論する。包括的な理解については、Many-Shot ICLの論文を参照してください。
拡張コンテキストウィンドウによるコンテキスト内学習の拡張
スケーリング・インコンテキスト学習(Scaling In-Context Learning: ICL)とは、LLMがコンテキストウィンドウ内で処理する例(多ショット)の数を増やすことで、タスクのパフォーマンスを向上させる能力のことである。従来のトレーニングによってモデルの重みを調整する代わりに、モデルはプロンプトで直接提供される例(ショット)から動的に学習する。
コンテキストウィンドウを拡張した最近の先進的なLLMは、ICLのスケーリングを効果的なアプローチにしている。Gemini 1.5 Pro](https://arxiv.org/abs/2403.05530)のようなモデルは、1つのコンテキストで最大100万トークンを処理することができ、少数ショット学習(限られた例)から多数ショット学習(充実した例)に移行することの利点を示している。
インコンテキスト学習のスケーリングはどのように機能するのか?
ICLのスケーリングのプロセスは簡単である:
プロンプトの構築:** プロンプトは、目的のタスクを提示する多くの入出力ペア(例または「ショット」)を含んで作成される。
予測のための入力:** 予測が必要な新しい入力は、この多くのショットのプロンプトの最後に追加される。
モデル予測:** LLMは、重みの更新なしに、新しい入力を含むプロンプト全体を処理し、多数のショット例から識別したパターンと関係に基づいて予測を生成する。
図-各タスクでテストされた最良のパフォーマンスと最大ショット数のコンテキスト長](https://assets.zilliz.com/Figure_Context_length_for_best_performing_and_the_maximum_number_of_shots_tested_for_each_task_ab2e51cf50.png)
図:各タスクのベストパフォーマンスと最大テストショット数のコンテキストの長さ| 出典
データボトルネックの克服:強化ICLと教師なしICL
多ショットインコンテキスト学習は大きな可能性を示すが、高品質で人間が生成した出力が必要であるという課題がある。この限界は、目的のタスクをモデルに効果的に示すために多数の例が必要であることに起因する。このような大量の人間が注釈を付けたデータを得ることは、リソース集約的で時間がかかる可能性がある。
このデータのボトルネックに対処するために、2つのアプローチが導入された:**強化ICLと教師なしICLである。
強化された文脈内学習:モデルが生成する根拠を活用する
強化されたICLでは、インコンテクスト学習のために、人間が書いた論理的根拠ではなく、モデルが生成した論理的根拠を使用する。そのプロセスには以下が含まれる:
根拠生成:**ゼロショットまたは数ショットの思考連鎖 (CoT)プロンプトが、各トレーニング問題に対して複数の推論連鎖(根拠)を生成する。
理由付けのフィルタリング:** 生成された理由付けは、最終的な答えの正しさに基づいてフィルタリングされます。これにより、正しい解答を導く根拠のみがICLに使用されます。
プロンプトの構築:** 選択されたモデルが生成した理由付けとそれに対応する問題は、文脈内の例題として配置されます。
モデルによって生成された理論的根拠を使用する強化ICLは、必要なデータ量を削減しながら、人間が注釈を付けた例題と同様のタスクパフォーマンスを達成する。
教師なしインコンテキスト学習:入力のみからの学習
教師なしICLはデータ依存を最小化するためにさらに一歩進む。これは多ショットプロンプトから根拠を完全に削除し、入力のみでモデルをプロンプトすることを提案する。プロンプトの構造は以下の通りである:
プロンプトの構成は以下の通りである:前置き:「以下のような問題が出題されます:」のような簡単な前置きが文脈を設定する。
未解決の入力:**解答を求める問題または入力のリストが提示される。
出力形式の指定:**ゼロショットの指示、または出力を示す数ショットのプロンプトが、モデルを希望する出力形式へ導くために含まれる。
教師なしICLの背後にある仮説は、LLMが必要な知識を持っていれば、膨大な量の問題入力が事前学習中に獲得した関連概念の活性化を引き起こすことができるというものである。このアプローチは、必要なデータが最小限のため、幅広く適用できると考えられている。しかし、タスクを定義するために出力例が重要である場合、教師なしICLは有効でない可能性がある。
メニーショット・インコンテキスト学習の評価と洞察
多ショットインコンテキスト学習(ICL)の有効性を評価するために、多ショットICLと多ショットICLの比較実験が様々なタスクで行われた。
機械翻訳
メニーショットICLは低リソース言語の翻訳性能を大幅に向上させる。FLORES-200ベンチマーク](https://aclanthology.org/D19-1632.pdf)では、特に英語からベンバ語への翻訳において、多ショットICLは1ショットのGeminiプロンプトと比較して15.3%の改善を示している。英語からクルド語への翻訳では、多ショットICLで4.5%の改善が見られる。
多ショットICLは、ベンバ語とクルド語の両方で最先端のchrF2++スコアを達成し、NLLBとGoogle翻訳のスコアを上回った。これは、特に学習データが限られている言語を扱う場合に、多ショットICLが翻訳品質を向上できることを示している。
図-機械翻訳(MT)テストパフォーマンス](https://assets.zilliz.com/Figure_Machine_Translation_MT_test_performance_f06050e81d.png)
図:機械翻訳(MT)のテスト性能|出典
要約
メニーショットICLは、XSumでほぼ最適なパフォーマンスを達成した。これは要約用に微調整されたPEGASUSやmT5のような特殊なモデルの結果に近づいている。XLSum](https://arxiv.org/abs/2106.13822)での性能は、ショット数が多いほど一般的に向上する。これは、XSumにおける多ショット学習からのポジティブな移行を示している。XSumデータセットを用いると、50以上のインコンテキスト例で性能が悪化する。これはおそらくプロンプトの飽和か干渉効果によるものであろう。驚くべきことに、このモデルは幻覚を見せる。学習例にはそのような情報がないにもかかわらず、捏造された日時を含む要約を生成する。
図-要約- XSum dev set, XSum test performance](https://assets.zilliz.com/Figure_Summarization_X_Sum_dev_set_X_Sum_test_performance_5774032094.png)
図:要約:XSum dev set, XSum test performance | ソース
ロジスティクス領域におけるプランニング
メニーショットICLは、ロジスティクス領域におけるLLMのプランニング能力を大幅に向上させる。ロジスティクスの目標は、トラックや飛行機を使って都市間で荷物を効率的に輸送することである。成功率はショット数が増えるにつれて大幅に向上し、多ショットプロンプトでは62%に達する。Fast-Downwardのような専門的なプランナーのレベルには達していないが、多ショットICLはLLMの常識的なプランニング能力を向上させる可能性を示している。
図-インコンテクスト計画](https://assets.zilliz.com/Figure_In_context_planning_497884bec5.png)
図:インコンテクスト計画|出典
報酬のモデリング
多ショット ICL は、特にコード検証タスクにおいて、コンテキスト内で報酬モデルを学習す る際にも有益である。インコンテキストの例数が増加するにつれて、モデルはコード解の正しさを正確に検証することができるようになる。このことは、ベストオブ4の精度の向上によって証明される。わずか16のインコンテクスト例で、数発のプロンプトを使用した検証器のベストオブ4精度はPass@1精度を上回る。Pass@1精度とは、検証者なしで正しい解を選択する精度のことである。
さらに、Gemini 1.0 Proモデルで128ショットのICLを使用することにより、Pass@1精度の77.25%とPass@4精度の90%の間の性能差が効果的に縮まります。精度の向上だけでなく、正解と不正解を区別するモデルの信頼性も、多ショットICLによって向上します。
図- GSM8Kコードの解をチェックするための学習検証器](https://assets.zilliz.com/Figure_Learning_Verifiers_for_checking_GSM_8_K_code_solutions_3ce10086a6.png)
図:GSM8Kコードの解をチェックするためのベリファイアの学習|出典
問題解決
HendrycksMATH](https://paperswithcode.com/dataset/math)とGSM8Kの問題解決ベンチマークでは、強化ICLと教師なしICLの両方が強力な性能を示し、グランドトゥルース解を用いたICLを上回ることが多い。
モデルが生成した解を用いた強化ICLは、人間が生成した解を用いたICLを常に上回ります。約25の例でプラトーに達し、多数の例でも性能を維持する。
問題入力のみを使用する教師なしICLも、グラウンドトゥルース解を使用するICLを上回る。
MATHプロンプトを用いた強化ICLは、GSM8Kデータセットにおいて強力な転移性能を示す。多ショット設定では、MATH解を用いたICLや教師なしICLを上回る。
図- 問題解決のための多ショット強化ICLと教師なしICL](https://assets.zilliz.com/Figure_Many_shot_Reinforced_and_Unsupervised_ICL_for_problem_solving_43b078c1b1.png)
図:問題解決のための多ショット強化ICLと教師なしICL|出典
質問応答
グランドトゥルースの根拠を持つ多ショットICLは、Google-Proof QA (GPQA)の困難な質問応答ベンチマークにおいて精度を大幅に向上させる。5ショットから125ショットまで性能が向上し、Claude-3 Opusのような最先端のモデルの精度に近づいた。
モデルによって生成された根拠を使用する強化ICLは、特に25ショットまで、グランドトゥルースの根拠を使用するICLの性能に匹敵するか上回る。
教師なしICLは一貫性のない傾向を示す。グランドトゥルースの理論的根拠を用いたICLよりも良い結果を出すこともあるが、一般的には強化ICLよりも劣っている。
図-GPQAにおける教師なしICLと強化ICLの比較](https://assets.zilliz.com/Figure_Many_shot_Reinforced_and_Unsupervised_ICL_for_GPQA_ee72410f28.png)
図:GPQAのためのメニーショット強化ICLと教師なしICL|出典
アルゴリズムと記号的推論
アルゴリズム推論タスクのBig-Bench Hardスイートにおいて、強化ICLは教師なしICLを常に上回った。どちらのタイプも標準的な3ショットCoTプロンプトの性能を上回る。強化ICLは、8タスク中7タスクにおいて、プロンプトの数に応じて概ね単調な改善を示す。場合によっては、たった3ショットの強化ICLが、人間が書いた3ショットのCoTプロンプトを上回る。これは、モデルが生成した理由付けの有効性を示している。
図-Big-Bench Hardにおけるショット数を変化させた強化ICLと教師なしICL](https://assets.zilliz.com/Figure_Reinforced_and_Unsupervised_ICL_with_varying_numbers_of_shots_on_Big_Bench_Hard_c8dee6f095.png)
図Big-Bench Hardでショット数を変化させた強化ICLと教師なしICL|出典
事前学習バイアスの克服
Financial PhraseBank (FP)データセットを使用したセンチメント分析タスクでは、多ショットICLにより、モデルは事前学習バイアスを克服し、反転ラベル、抽象ラベル、デフォルトラベルで同等のパフォーマンスを達成することができる。
既存のセンチメントバイアスに抵触する可能性のある反転ラベルや抽象ラベルを使用した場合、当初、性能はショット数の少ないデフォルトラベルに遅れをとる。しかし、ショット数が増加するにつれて、反転ラベルや抽象ラベルの精度は劇的に向上する。最終的にはデフォルトラベルの性能に近づく。反転ラベルを用いた予測に対するモデルの信頼度は、最初は低下するが、ショット数が増えるにつれて急激に上昇する。
図-多ショットICLによる事前学習バイアスの克服](https://assets.zilliz.com/Figure_Overcoming_pre_training_bias_with_many_shot_ICL_38b510854c.png)
図:多ショットICLによる事前トレーニングバイアスの克服|出典
非自然言語タスクの学習
多衝突ICLは、数値入力で抽象的な数学関数を学習する能力を示し、その汎化能力を強調する。様々な入力次元(16, 32, 64)を持つバイナリ線形分類タスクにおいて、多衝撃ICLはランダムな偶然性を大きく上回る。これはk-nearest neighborのベースラインの精度とほぼ一致する。
図-様々な入力次元でのコンテキスト内分類](https://assets.zilliz.com/Figure_In_context_classification_with_varying_input_dimensions_22ae0fae49.png)
図:入力次元を変化させたインコンテキスト分類|出典
逐次パリティ関数の学習において、大規模言語モデル上の多ショットICLは、20倍大きなデータセットでゼロから学習したGPT-2中位モデルの性能を上回る。
図- 逐次パリティ関数の学習](https://assets.zilliz.com/Figure_Learning_sequential_parity_function_in_contex_6c56d858a7.png)
図:逐次パリティ関数のインコンテキスト学習|出典
SFTとの比較
直接比較すると、低リソース機械翻訳において、多変数文脈内学習(ICL)は教師あり微調整(SFT)に匹敵する性能を示す。これは、同じ例数を使用した場合でも同様である。このことは、英語からベンバ語への翻訳結果からも明らかである。これは、特定のタスクにおいて、多ショットICLが、計算コストの高いSFTの代替となり得ることを示している。
低リソース翻訳におけるSFTと多ショットICLの比較.png](https://assets.zilliz.com/Figure_Comparing_SFT_with_many_shot_ICL_on_low_resource_translation_cb884ec3e5.png)
図:低リソース翻訳におけるSFTと多ショットICLの比較|出典
他のLLMの多ショット能力
実験の大半はGemini 1.5 Proで行われた。GPT-4-TurboやClaude-3-Opusなど、他のロングコンテクストLLMを使った評価もある。これらのモデルも、メリットの程度は異なるが、多ショットインコンテキスト学習の恩恵を受ける。Gemini 1.5Flashのような小型のLLMもまた、多ショットICLを使用することで、より強力な少数ショット機能を持つ大型LLMに匹敵するか、それ以上の性能を達成することができる。
図-低リソース機械翻訳におけるGPT-4-TurboとClaude-3-Opusを使用したメニーショットICL](https://assets.zilliz.com/Figure_Many_shot_ICL_with_GPT_4_Turbo_and_Claude_3_Opus_on_low_resource_machine_translation_4efe8c44ac.png)
図:GPT-4-TurboとClaude-3-Opusを使用した低リソース機械翻訳による多ショットICL|出典
次トークン予測損失という指標
次トークン予測損失は、言語モデルの性能を評価するために一般的に使用される指標です。これは、先行トークンが与えられたときに、モデルがシーケンスの次のトークンをどの程度予測できるかを定量化するものです。ネクストトークン予測損失が低いほど、一般的に性能が高いことを示します。文脈の長さが長くなるにつれて、次のトークンの予測損失は一貫して減少する傾向があります。しかし、ネクストトークン予測損失の傾向だけに頼ることは、特に問題解決や推論タスクにおいて、ICLの性能の信頼できる指標とはならないかもしれない。その理由は以下の通りである:
複数の有効な解:** 問題解決タスクには多くの正しい思考連鎖(CoT)解が存在する可能性がある。たった1つの解に基づいて対数尤度を計算すると、モデルの問題解決能力を正確に反映しない可能性があります。
継続的なNLLの減少:*** 負の対数尤度(NLL)は、実際のタスクの成績が横ばいになったり、低下し始めたりしても、減少し続けます。例えば、MATHやGPQAのようなタスクの成功率は、ある回数試行すると減少し始めますが、NLLは減少し続けます。
例えば、MATHやGPQAのようなタスクの成功率は、ある試行回数を超えると低下し始めるが、NLLは低下し続ける。転送パフォーマンスとの整合性:知識がある問題解決領域から別の領域へ転送される場合(例えば、GSM8Kの問題を解くためにMATHのプロンプトを使用する)、実際の転送パフォーマンスが向上したにもかかわらず、NLLの変化はわずかである。
ショット数の関数としての負対数尤度(NLL).png
図ショット数の関数としての負の対数尤度(NLL)|出典
##多ショット・インコンテキスト学習の意味
LLMのための多ショットインコンテキスト学習(ICL)は、この分野にいくつかの重要な意味を持つ。それらは以下の通りである:
への依存度の低減** 微調整: ****多ショットインコンテキスト学習(ICL)は、場合によっては教師あり微調整(SFT)とほぼ同等の性能を発揮する。このことは、LLMの学習方法を変える可能性を示している。LLMをより汎用的で適応性のあるものにするために、多ショットICLを使用することで、計算コストのかかるタスク固有の微調整の必要性を減らすことができる。
性能の向上:**最も顕著な利点は、少数ショットから多ショットインコンテキスト学習に移行した際に、様々なタスクで見られた大幅な性能向上である。これは、LLMがより多くのインコンテクスト例を与えることで、タスクの詳細をよりよく理解し、より効果的に汎化できることを示している。
NLPの枠を超えた応用の拡大:**数値入力による高次元関数を学習する多ショットICLは、従来のNLPタスク以外にもICLを応用する新たな可能性を開く。これは、LLMが回帰、分類、科学的モデリングのような数値データを含むタスクに使用される可能性を示しており、新しいドメインへの適用を拡大する。
結論と今後の研究の方向性
メニーショット・インコンテキスト学習(ICL)は、大規模言語モデル(LLM)の能力を向上させるための貴重な技術となっている。LLMに多数のインコンテキスト例(ショット)を与えることで、様々なタスクにおいて大幅な性能向上が見られた。これには、機械翻訳、要約、問題解決、推論などが含まれる。多数のショットを持つICLは、微調整への依存を減らし、LLMをより適応的で汎用的なものにする可能性がある。注目すべきは、小規模なLLMも多ショットICLから大きな恩恵を受けることができ、大規模なモデルの性能を上回る可能性があることである。
今後の研究の方向性
今後の研究において、いくつかの有望な方向性が、大きな進歩や新たな発見につながる可能性がある。理解を深め、現在の課題に取り組むためには、これらの道を探ることが重要である。
多様なLLMの多ショット能力を評価する:**多ショットICLの評価を拡大し、より広範なLLMを包含することが極めて重要である。これには、異なるアーキテクチャ、サイズ、トレーニングデータを持つモデルが含まれる。この多様性は、多ショット性能に影響を与える要因を包括的に理解するために重要である。
メニーショットプロンプトの最適化:***メニーショットプロンプトを最適化するテクニックを調査することで、効果を高めることができる。これには、様々な例選択戦略、順序付け方法、プロンプトエンジニアリング技術の探求が含まれる。
ロバストな評価指標の開発:***多ショットICLのパフォーマンスの多面的な側面を正確に理解する評価指標を設計することが重要である。これは推論や問題解決のような複雑なタスクにおいて特に重要である。これには、解の多様性、推論の質、分布の変化に対する頑健性などを考慮した評価基準を探求することが含まれる。
教師なしICLの可能性:**教師なしICLはまだ初期段階にあり、その能力と限界を理解するためにさらなる調査が必要である。将来的な研究により、より広範なタスクにおける実現可能性を探り、その有効性を向上させる技術を開発する可能性がある。
MATHやGPQAのようなタスクのように、プロンプトの例数がある閾値を超えると性能が低下する場合がある。今後の研究では、この性能低下の理由を調査し、それを軽減する戦略を開発する必要がある。
関連リソース
メニーショットICL論文多ショットインコンテキストラーニング
論文多ショットICL論文: [多ショットインコンテキスト学習](Few-shot Fine-tuning vs. In-context Learning):公正な比較と評価 ](https://arxiv.org/abs/2305.16938)
大規模言語モデルと検索](https://zilliz.com/learn/large-language-models-and-search)
LLM-Eval: A Streamlined Approach to Evalating LLM Conversations](https://zilliz.com/learn/streamlined-approach-to-evaluating-llm-conversations)
LLM-Eval: LLMの会話を評価するための合理的なアプローチ]() Be like a Goldfish, Don't Memorize!生成的LLMにおける暗記を軽減する
知識の蒸留:大規模で計算量の多いLLMから、妥当性を犠牲にすることなく、より小さなLLMへ知識を転送する](https://zilliz.com/learn/knowledge-distillation-from-large-language-models-deep-dive)
LoRAの説明:LLMを微調整するための低ランク適応](https://zilliz.com/learn/lora-explained-low-rank-adaptation-for-fine-tuning-llms)
GPT-4.0と大規模言語モデルの秘密を解く](https://zilliz.com/learn/what-are-llms-unlock-secrets-of-gpt-4-and-llms)