スライディングウィンドウアテンションとは
スライディングウィンドウアテンションとは、各単語が直前の一定数の単語だけに注目することで、長い文章を効率よく扱えるようにするアテンションの工夫です。英語ではSliding Window Attention、略してSWAと呼ばれます。視界を区切る窓を文章の上で少しずつずらし、近くだけを見ていくイメージ。大規模言語モデル(LLM)の処理を軽くする狙いがあります。
なぜ長文に強いのか
通常のアテンションは、一つの単語があらゆる単語を見渡す総当たり。文章が長くなるほど見るべき組み合わせが急増し、計算コストの膨らみが悩みの種でした。では、どう抑えるのか。SWAは、各単語が見る相手を直前の窓(Mistral 7Bでは4096単語)に絞ります。見る範囲を限るぶん、長い文章ほど計算が軽くなり、費用を抑えやすくなります。契約書のような長文をAIに読ませたい企業にとって、効いてくる工夫でしょう。
Topic窓は4096でも、その外を忘れるわけではない
「窓は4096単語だけ」と聞くと、それより前を完全に忘れると思いがちです。ところが層を重ねると、情報はバケツリレーのように窓を越えて先へ伝わっていく。Mistral 7Bでは32の層を通して、理論上は約131,000単語先まで届くと説明されています。窓の外も、間接的にはちゃんとつながっているわけです。
スライディングウィンドウアテンションに関するよくある質問
- Sliding Window Attentionを使うと精度は落ちますか?
- 離れた箇所どうしの直接の関係は捉えにくくなる場合があります。多くのモデルは層の重ね方や他の工夫で補い、長文を安く扱う利点とのバランスを取っています。
- Sliding Window Attentionはどんなモデルで使われていますか?
- 長文を効率よく扱うために複数のモデルで採用されており、2023年10月公開のMistral 7Bが代表例です。長い文書を安く処理したい用途と相性がよい工夫です。