位置情報
Self-Attention は 順序を区別しない(置換等変)。 そのため位置の情報を別途注入する必要がある。
「猫が犬を追う」と「犬が猫を追う」を 区別できなければ言語モデルにならない。
主な方式#
| 方式 | 内容 |
|---|---|
| 正弦波 | 固定の三角関数を埋め込みに足す(原論文) |
| 学習可能 | 位置ごとのベクトルを学習する |
| RoPE | Query と Key を位置に応じて回転させる |
| ALiBi | Attention スコアに距離に比例した罰を足す |
RoPE#
現在の主流。埋め込みベクトルを 2 次元ずつの組に分け、 位置 に応じた角度で回転させる。
内積を取ると
相対位置 にだけ依存する形になる。 絶対位置ではなく相対位置が自然に表現される点が優れている。
長さの外挿#
訓練時より長い系列を扱えるかは実用上重要な問題。
- 学習可能な位置埋め込み … 訓練長を超えると破綻する
- RoPE … 補間や基底周波数の調整で拡張できる
- ALiBi … 外挿性が高いとされる
長文脈対応をうたうモデルの多くは、 RoPE のスケーリング調整と追加学習を組み合わせている。
参考文献#
- Ashish Vaswani et al. Attention Is All You Need. NeurIPS, 2017. https://arxiv.org/abs/1706.03762
- Jianlin Su et al. RoFormer: Enhanced Transformer with Rotary Position Embedding. Neurocomputing 568, 2024. https://doi.org/10.1016/j.neucom.2023.127063
- Ofir Press, Noah A. Smith, Mike Lewis. Train Short, Test Long: Attention with Linear Biases Enables Input Length Extrapolation. ICLR, 2022. https://arxiv.org/abs/2108.12409