メインコンテンツまでスキップ

Fusion-in-Decoder: 複数パッセージの検索が生成型QAをどのように改善するか

· 約8分
Mike Thrift
Mike Thrift
Marketing Manager

検索拡張生成(RAG)の成否は、ジェネレータが複数のドキュメントに分散した証拠をいかに上手く統合できるかにかかっています。IzacardとGraveによる2021年のEACL論文「Leveraging Passage Retrieval with Generative Models for Open Domain Question Answering」は、一見単純なアーキテクチャの修正を提案しています。それは、パッセージを独立してエンコードし、それらすべてをデコーダーで融合させるという手法で、当時主流だったRAGフレームワークを大幅に上回る性能を示しました。私が今この論文を読んでいるのは、その設計原理がBeancountエージェントにおける元帳QAに直接応用できるからです。エントリをどのように検索するかを決定する前に、どの融合戦略が実際に機能するかを理解することは非常に価値があります。

論文の概要

2026-05-26-fusion-in-decoder-passage-retrieval-generative-qa

LewisらによるオリジナルのRAG (arXiv:2005.11401) は、高密度検索(dense retriever)とBARTジェネレータを組み合わせていますが、ジェネレータが一度に1つの検索パッセージのみを条件とするように強制し、シーケンス単位(RAG-Sequence)またはトークン単位(RAG-Token)でパッセージを周辺化しています。IzacardとGraveは、これを拘束条件であると特定しました。一度に1つのパッセージしか見ることができないモデルは、複数のドキュメントに散らばった証拠を三角測量(triangulate)することが困難だからです。

彼らのFiD(Fusion-in-Decoder)ソリューションはエレガントです。検索された各パッセージは質問と連結され、T5のエンコーダーによって独立してエンコードされます。エンコーダーはパッセージごとに1回実行され、完全に並列化可能です。その後、デコーダーはすべてのパッセージ表現の連結に対して同時にクロスアテンション(cross-attention)を実行します。エンコーダーの計算量はパッセージ数に対して線形に増加しますが、重要なのは、デコーダーがすべての生成ステップにおいてパッセージの境界を越えてアテンションを向けられる点です。この論文では、ジェネレータのバックボーンとしてT5-baseとT5-largeを使用しています。

主なアイデア

  • 100個の検索パッセージを使用したFiD-largeは、Natural Questionsで51.4%、TriviaQA openで67.6%の厳密一致(exact match)を達成しました。これに対し、RAG-Sequenceはそれぞれ47.5%と56.1%であり、約4〜11ポイントの向上が見られます。
  • Natural Questionsのパフォーマンスはパッセージ数に応じて単調に増加します。1パッセージで37.3%、10で48.8%、50で50.8%、100で51.4%となります。限界収益は減少しますが、マイナスに転じることはありません。
  • パッセージ数を10から100に増やすと、TriviaQAで6%、Natural Questionsで3.5%改善しました。これは、デコーダーが単に上位のパッセージを選択しているだけでなく、真に情報を集約している証拠です。
  • エンコード工程は並列化が容易です。各(質問、パッセージ)のペアは独立して処理されるため、実時間はハードウェアに応じてサブ線形にスケールします。
  • 7億7千万パラメータのFiD-baseは、クローズドブック(外部知識なし)のT5-11Bを上回ります(NQで44.1%対36.6%)。これは、検索によって小規模なモデルがその実力以上の成果を出せることを示しています。

評価されている点と課題

中心的な結果は堅牢であり、広く再現されています。独立したエンコードと共同でのデコードというアーキテクチャの洞察は非常に明快です。エンコーダーの前にすべてのパッセージを単純に連結することで発生する二次的な自己アテンションの爆発を回避しつつ、デコーダーにすべての検索証拠に対するグローバルなコンテキストを提供しています。

この論文がほとんど触れていない制限は、推論時においてデコーダーのクロスアテンションがボトルネックになる点です。クロスアテンションは、生成ステップごとに、デコーダーレイヤーごとにすべてのエンコーダーのKey-Valueペアをロードする必要があり、それらのKey-Valueテンソルはパッセージ数に応じて線形に増加します。2023年の追跡研究であるFiDO (arXiv:2212.08153) は、マルチヘッドアテンションをマルチクエリアテンションに置き換え、クロスアテンション層を削減することで、精度をほとんど落とさずに推論を7倍高速化できることを示しました。これは、オリジナルのFiDデコーダーがタスクの要求に対して大幅にオーバーエンジニアリングされていることを示唆しています。

また、この論文が探求していないキャリブレーションのギャップもあります。この論文は厳密一致(exact match)を報告していますが、これは、たまたま正確な標準回答文字列を生成したシステムを評価するものです。複数のパッセージにわたる発見を要約するような事実統合タスク(スパンを抽出するのではなく)において、厳密一致はエラーを過小評価し、信頼度を過大評価してしまいます。金融の設定では、それ以外は正しい文章の中に間違った数字が1つ混じっているだけで深刻な失敗となるため、厳密一致は指標として全く不適切です。

なぜこれが金融AIにとって重要なのか

Beancountの元帳QAは、その性質上、複数パッセージの検索問題です。「すべての口座において、第3四半期の旅行にいくら使ったか?」という質問には、異なる日付、口座、通貨タイプの数十のトランザクションエントリを統合する必要があります。FiDの中心的な知見である「生成モデルは多くの検索パッセージを統合できること、そしてコンテキストが多いほどパフォーマンスが向上すること」は、非常に心強いものです。

実用的な設計上の示唆は具体的です。BeancountのQAレイヤーを構築する際、通常の上位5件ではなく、より多くの候補エントリ(50〜100件)を取得し、ジェネレータにそれらすべてへの共同アクセス権を与えることは、リランキングに頼って1つの正解を選ばせるよりも優れた結果をもたらす可能性が高いです。また、FiDアーキテクチャは元帳の構造とも綺麗に一致します。各トランザクションエントリを独立してエンコードし(安価で並列化可能)、その後デコーダーがそれらすべてを統合して回答を生成することができます。

推論コストの懸念は本番環境への導入において現実的な問題ですが、FiDOの追跡研究は、精度の低下なしにアーキテクチャレベルで解決可能であることを示しています。金融エージェントにとってより差し迫った制限は、FiDが短い生成出力を伴うファクトイド(事実)型QA向けに設計されていることです。元帳分析には、金額の加算や比率の計算といった多段階の算術演算が必要になることが多く、FiDのジェネレータは本質的にそれをインタープリタにルーティングしません。FiDスタイルの融合と、PAL(Program-Aided Language models)スタイルのコード生成ヘッドを組み合わせることが、数値の正確性を確保するための自然な次のステップとなるでしょう。

次に読むべきもの

  • FiDO (arXiv:2212.08153, ACL Findings 2023) — マルチクエリアテンションとクロスアテンションの削減により、FiDの精度を維持したまま推論を7倍高速化。FiDを本番環境に導入する前に不可欠な研究です。
  • REALM: Retrieval-Augmented Language Model Pre-Training (arXiv:2002.08909, ICML 2020) — Guuらによる、推論時だけでなく「事前学習」段階で検索を組み込む方法の提案。FiDが構築された上流の動機付けを提供しています。
  • Atlas: Few-shot Learning with Retrieval Augmented Language Models (arXiv:2208.03299, JMLR 2023) — Izacardら自身による、検索器とリーダーの共同トレーニングを用いた少数学習(few-shot)設定へのFiDの拡張。この一連の研究の最も完全な統合です。