|
出典: Xi Xiaoyao Tech Talk 原著者: Xiaoxi, ZenMoore 機械の錯覚は別として、大規模モデルがその潜在能力を最大限に発揮するのを妨げている現在の制約について言えば、コンテキストの長さの制限は間違いなくその 1 つです。 大規模オープンソースモデルの開発を支えてきたLLaMAファミリーに、新たなメンバーLongLLaMAが加わりました。このLLaMAモデルの拡張(強化)版は、パフォーマンスの低下をほとんど伴わずに、LLaMAのコンテキスト長を10万まで拡張することに成功しました。 LongLLaMa がどれだけ「長い」のかは、記事全体に表示されるロゴを見ればわかります。
LongLLaMA は、Focused Transformer (FOT) メソッドを導入することで、パフォーマンスを維持しながら LLoMA のコンテキスト長を 100k まで拡張します。 下図に示すように、LongLLaMAはオリジナルのLLaMAモデルと比較して、プロンプト長が長くなるにつれて優れたパフォーマンスを示しています。コンテキスト長が10万文字になった時点でのみ精度が大幅に低下しますが、それでも94.5%の精度を達成しています。 コンテキスト長が256kの場合でも、LongLLaMAは73%の精度を達成しています。一方、オリジナルのLLaMAはコンテキスト長が2kになるとパフォーマンスが急激に低下し、長いテキストプロンプト入力を全く処理できなくなりました。 大規模モデルのコンテキストの拡張を実現するために、LongLLaMA 論文の著者はまず、「大規模モデルはなぜ長いテキストのプロンプトを効果的に処理できないのか」という疑問を検討しました。 確かに、これはTransformerモデルの基本アーキテクチャに関連しています。しかし、論文の著者らは、時間計算量の増加に加えて、ドキュメント数の増加に伴い、関連トークンと無関係トークンの割合が減少することを観察しました。これにより、無関係な値に関連するキーと関連値に関連するキーが重複するようになり、モデルは異なるセマンティクスを持つキーをさらに区別する必要が生じます。 著者らはこの問題を「注意散漫問題(Distraction Issue)」と名付けました。論文の中で、研究チームはこの注意散漫問題こそが、大規模モデルがコンテキスト長によって制限される原因の核心であると主張しています。そこで、彼らはTransformerモデルのシンプルな拡張であるFocused Transformer (FOT)を提案しています。これは下図の通りです。 Focused Transformerは主にメモリアテンションレイヤーとCrossBatch技術を採用しています。推論中、緑のメモリアテンションレイヤーはkNNを用いて外部メモリを照会することで、コンテキスト長を効果的に拡張します。メモリアテンションレイヤーは主にCrossBatchを用いて学習されます。 具体的には、Memory Attention Layersでは、𝑙∈𝐿内の各クエリは、ローカルコンテキストと、メモリ内のkNNを用いて計算されたk個のベストマッチキーに焦点を当てます。そして、メモリ全体は、𝑙によって以前に処理されたキーと値のペアで埋められます。一方、CrossBatchは、Memory Attention Layersが長いテキスト内の「関連する値を持つキー」にさらに注意を払うようにすることを目的としています。CrossBatchの処理は、関連する文書からのd-1個のコンテキストを正サンプルとして、無関係な文書からのd-1個のコンテキストを負サンプルとして使用する対照学習の考え方を借用しています。対照学習を通じて、Memory Attention Layersは関連するキーと無関係なキーと値のペアをより適切に区別することができます。 標準Transformerと比較すると、上図に示すように、一般的なTransformerの学習プロセスでは、関連文書と無関係文書を効果的に区別できていません(正負のサンプルが均等に分布しています)。文書数が増えるにつれて、注意が散漫になります。しかし、 Focused Transformerは、CrossBatchの学習目標を通じて、モデルが長いテキスト内の関連キーと無関係なキーと値のペアの空間構造に効果的に焦点を合わせ、区別できるようにすることで、注意散漫の問題を解決します。 著者らは、LongLLaMAのコンテキスト長を長くすることで、Few-Shot Learningの精度にどのような影響があるのかを、2つの下流タスク(TREC質問分類とWebQS質問回答)で検証しました。下図に示すように、コンテキスト長を長くすることで、両方のタスクの精度が効果的に向上し、特にTREC質問分類で優れた結果が得られました。著者らは、TRECデータセットには50のカテゴリがあるのに対し、2kのコンテキスト長では100例しかサポートできないと考えています。これらの100例には一部のカテゴリが出現せず、タスクを完了できない可能性が非常に高いです。コンテキスト長を長くすることで、このリスクを大幅に軽減できます。 著者らはまた、これら 2 つのタスクにおける FOT 法と従来の方法のパフォーマンスの違いを比較し、FOT 法が従来の方法のコンテキスト長を上回るだけでなく、より良い結果を達成することを示しました。 ロングコンテキストタスク以外でも、LongLLaMA は通常のタスクで従来の LLaMA と同様のパフォーマンスを維持できるため、LongLLaMA は LLaMA よりも強力な代替手段になり得ることがわかります。 LongLLaMAの性能分析に加えて、著者らはFOTの性能を検証するための広範な実験も実施しました。具体的には、以下の3つの疑問に答えたいと考えています。
まず最初の質問に答えるために、外部メモリとしてキーと値のマッピングが与えられた場合、モデルは特定のキーに関連付けられた値が何であるかを答える必要があります。下の図に示すように、FOTは16MBのメモリを効果的に利用して92%の精度を達成できますが、通常のTransformerは4KBで精度が大幅に低下します。 次に、2つ目の質問についてですが、FOTを用いて既存モデルを微調整した場合、既存モデルのコンテキスト長は増加するのでしょうか?著者らは、まず標準的なTransformerモデルを10万ステップの事前学習で学習させ、その後FOTを用いて1万ステップの微調整を行い、4つのデータセットでそのパープレキシティを評価しました。FOT微調整法は、64kコンテキストにおいてパフォーマンスを効果的に向上させ、他の同等のモデル拡張手法よりも優れた性能を示しました。これは、FOTが他の大規模既存モデルのコンテキスト長を増加させる可能性を秘めていることを示しています。 最後に、3番目の質問に関して、著者らはPG-19データセットを使用しました。メモリサイズの増加に伴い、無関係な文書はモデルの学習を妨げる一種の「干渉」とみなすことができます。下の図からわかるように、dが高いほどパープレキシティは低下しており、 FOT法は無関係なデータの増加によって引き起こされる干渉を効果的に処理し、干渉に対してより堅牢であることを示しています。 実際、FOTの設計はMemorizing Transformerと密接な関係があることを示しています。著者らは、Memorizing Transformerとは異なり、FOT法は2つの異なるアプローチ、すなわち学習プロトコル(対照学習目標)と記憶統合(kNN想起)を採用していると主張しています。著者らは、FOT法はMemorizing Transformerと組み合わせることで、より優れた性能を発揮できる可能性があると考えています。CrossBatch法を用いた499,000ステップの学習後、Memorizing Transformer目標を用いた1,000ステップの微調整を行った結果、モデル性能の大幅な向上が確認されました。 細長いアルパカ(LongLLaMA)は、論文著者によってGitHubでオープンソース化されており、LONGLLAMA-3BのチェックポイントはHugging Faceで公開されています。これは既存のLLaMAコードと組み合わせて使用できます。論文とプロジェクトのアドレスは以下の通りです。 論文タイトル: |