論文解説 Attention Is All You Need — 再帰を捨てたモデルは何を証明したのか
Transformerの原論文を、本文だけを根拠に読み解く。スケーリング付き内積注意の式、なぜルートd_kで割るのか、アブレーションが暴いた設計の急所、そして論文自身が認めた限界まで。
要点
- 「Attention Is All You Need」は、系列変換モデルから再帰も畳み込みも完全に取り除くという提案でした。
- RNNは本質的に逐次的で学習サンプル内の並列化を阻むが、Transformerは全位置を同時に見て重み付けします。
- 任意の2位置を関連づける演算数は、ByteNetやConvS2Sでは距離とともに増えるが、Transformerでは定数回です。
- 注意重みで位置を平均するため実効解像度が下がり、それをMulti-Head Attentionで打ち消す設計です。
- WMT 2014で英独28.4 BLEU・英仏41.8 BLEUを、8基のGPUで3.5日の学習で達成しました。
Attention Is All You Need
一次資料 — この記事の根拠
論文の発表 2017-06-12→この解説の公開 2026-08-039年2か月後
Attention Is All You NeedAshish Vaswani, Noam Shazeer, Niki Parmar ほか · 2017-06-12 · v7arXiv:1706.03762論文ページ·PDF原文の要旨(Abstract)を読む
The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a new simple network architecture, the Transformer, based solely on attention mechanisms, dispensing with recurrence and convolutions entirely. Experiments on two machine translation tasks show these models to be superior in quality while being more parallelizable and requiring significantly less time to train. Our model achieves 28.4 BLEU on the WMT 2014 English-to-German translation task, improving over the existing best results, including ensembles by over 2 BLEU. On the WMT 2014 English-to-French translation task, our model establishes a new single-model state-of-the-art BLEU score of 41.8 after training for 3.5 days on eight GPUs, a small fraction of the training costs of the best models from the literature. We show that the Transformer generalizes well to other tasks by applying it successfully to English constituency parsing both with large and limited training data.
伝言ゲームをやめて、円卓会議にする
2017年6月に arXiv へ投稿された "Attention Is All You Need"(Vaswani ら8名、Google Brain / Google Research ほか)は、系列変換モデルから再帰も畳み込みも完全に取り除くという提案でした。
当時の主流は RNN や CNN による encoder-decoder で、性能の良いモデルは encoder と decoder を注意機構でつないでいました(Abstract)。RNN は入力・出力の記号位置に沿って計算を分解し、位置 の隠れ状態 を「1つ前の隠れ状態 と位置 の入力」から作ります。論文はこの構造を「本質的に逐次的であり、学習サンプル内での並列化を阻む」と指摘します。しかもメモリ制約がサンプル間のバッチングを制限するため、系列が長くなるほど問題は深刻になる(§1)。
たとえるなら、RNN は一列に並んだ伝言ゲームです。列の端にある情報を反対の端へ届けるには、間の全員を経由しなければならない。Transformer が採ったのは円卓会議で、全員が同時に全員の発言を見渡し、自分にとって誰が重要かを重み付けする方式です。
論文はこの円卓方式だけで、WMT 2014 英独翻訳で 28.4 BLEU(アンサンブルを含む既存最良を 2 BLEU 以上上回る)、英仏で 41.8 BLEU を、8基の GPU で3.5日という学習コストで達成したと報告しています(Abstract、表2)。base モデルに至っては 8基の P100 GPU で12時間です(§1、§5.2)。
直感: 「2点間の距離」を定数にする
なぜ再帰を捨てられるのか。論文の背景説明(§2)が急所を突いています。同じく逐次計算を減らそうとした ByteNet や ConvS2S では、任意の2位置の信号を関連づけるのに必要な演算数が、位置の距離とともに増えます(ConvS2S は線形、ByteNet は対数)。だから遠い依存関係ほど学習しづらい。Transformer ではこれが定数回に落ちます。
ただし論文はここで代償も明記します。注意重みで位置を平均するため実効解像度が下がるという副作用があり、それを Multi-Head Attention で打ち消す、という設計です(§2)。「注意は万能だから」ではなく「安くなった代わりにボケた解像度を複数ヘッドで買い戻す」という等価交換として提示されている点は、読み落とされがちです。
§4 では自己注意を選ぶ根拠を3つの軸で整理します。層あたりの総計算量、並列化可能な計算量(必要な逐次演算の最小回数)、そして長距離依存の最大パス長です。
| 層の種類 | 層あたり計算量 | 逐次演算 | 最大パス長 |
|---|---|---|---|
| 自己注意 | |||
| 再帰 | |||
| 畳み込み | |||
| 自己注意(近傍 に制限) |
表1が示すのは、自己注意が「計算量で常に勝つ」わけではないという事実です。論文自身が書いているとおり、自己注意が再帰層より速いのは系列長 が表現次元 より小さいときで、それは word-piece や byte-pair の文表現では「たいていの場合そうである」から成立している(§4)。前提条件つきの勝利なのです。
仕組み: スケーリング付き内積注意
論文の注意機構の定義はきわめて簡潔です。「クエリと key-value 対の集合を出力に写す関数。出力は value の重み付き和で、各 value の重みはクエリと対応する key の互換性関数で決まる」(§3.2)。
そして式(1)(§3.2.1):
ここで はクエリ・キー・バリューを行方向に詰めた行列、 はキーの次元です。
つまりこの式が言っているのは、「すべてのクエリをすべてのキーと突き合わせて点数を出し、その点数を で小さくしてから合計1の重みに直し、その重みでバリューを混ぜ合わせる」ということだけです。注目すべきは、式のどこにも位置が出てこないこと。単語を並べ替えても出力は同じ順で並べ替わるだけなので、語順は別途あとから足してやらねばなりません(§3.5、後述)。Q・K・V が何を表しているかを図で追いたい場合は Attention機構を1から理解する が対応します。
なぜ で割るのか。 論文は加法的注意(1層の順伝播ネットで互換性を計算)と比較し、理論計算量は同程度でも内積注意のほうが「高度に最適化された行列積の実装が使えるため、実際には遥かに速くメモリ効率が良い」と述べます。ところが が大きいと、スケーリングなしの内積注意は加法的注意に負ける。その理由として論文が挙げるのが脚注1の見積もりです。 と の各成分が平均0・分散1の独立な確率変数なら、内積 は平均0・分散 。次元が上がるほど内積の絶対値が大きくなり、softmax が勾配の極端に小さい領域へ押し込まれる。だから標準偏差 で割って戻す(§3.2.1)。論文はここを "We suspect that …"(推測する)と書いており、証明ではなく仮説として提示されている点は正確に押さえるべきです。
マルチヘッド(§3.2.2)は、 次元のまま1回注意を計算する代わりに、学習された別々の線形射影で 回投影してから並列に注意を計算し、連結してもう一度射影します。
つまり上の式は、「注意の計算を 本まるごと別々に走らせ、出てきた 個の結果を横につなげ、最後にもう1枚の行列 を掛けて1つの出力に混ぜ直す」と言っています。
そして下の式は、その1本1本(ヘッド)が式(1)とまったく同じ計算であること、ただし をそのまま使わず、ヘッドごとに専用の射影 で細い次元に落としてから使う、ということ。同じ単語列を、ヘッドごとに違う角度から見せるための仕掛けです。
論文の説明は「異なる表現部分空間の情報に、異なる位置で同時に注意を向けられるようになる。単一ヘッドでは平均化がそれを阻害する」。、 とし、各ヘッドの次元を割った分、総計算コストは全次元シングルヘッドとほぼ同じになると述べています(§3.2.2)。ヘッドを増やすのは「重くする」ことではありません。
残りの部品も簡潔です。encoder は 層、各層は「マルチヘッド自己注意」と「位置ごとの全結合順伝播網」の2サブ層で、それぞれ残差接続と層正規化 で包む。(§3.1)。decoder は同じ6層に「encoder 出力へのマルチヘッド注意」を第3のサブ層として挿入し、自己注意では softmax 入力のうち不正な接続を にマスクします(§3.1、§3.2.3)。
順伝播網は素朴で、内部次元 。論文は「カーネルサイズ1の畳み込み2つ」と言い換えています(§3.3、式(2)):
要するに「各位置のベクトルをいったん2048次元に広げ、負の値を0に潰し、また512次元に畳み直す」だけの処理です。同じ2枚の行列を全位置に使い回し、ここでは位置どうしが一切混ざらない——混ぜるのは注意サブ層の仕事で、この層は各位置を独立に加工する係、と役割が分かれています。
位置情報は正弦・余弦の位置エンコーディングを埋め込みに足して与えます。波長は から までの等比数列。この関数を選んだ理由も論文は仮説として書いています。任意の固定オフセット に対して が の線形関数で表せるので、相対位置で注意することを学びやすいだろう、と(§3.5)。ここで論文が採った絶対位置の足し込みと、その後に主流となった相対位置・RoPE までの流れは 位置エンコーディングを1から理解する にまとめています。
実験が示したこと、示していないこと
学習設定は英独が約450万文対(共有語彙 約37000の BPE)、英仏が3600万文(32000 word-piece)で、バッチは約25000ソーストークンと25000ターゲットトークン(§5.1)。最適化は Adam(, , )、学習率は warmup 4000ステップまで線形に上げ以降ステップ数の逆平方根で下げる(§5.3、式(3))。正則化は残差ドロップアウト とラベル平滑化 (§5.4)。
結果(表2)は base が英独 27.3 / 英仏 38.1、big が 28.4 / 41.8。学習コストは推定 FLOPs で base 、big と、GNMT+RL( / )などより小さい。ただしこの FLOPs は「学習時間 × GPU 数 × GPU の持続単精度性能の見積もり」を掛けた推定値だと脚注2に明記されています。なお §6.1 の本文は英仏 big を「41.0 BLEU」と書いており、Abstract と表2 の 41.8 と食い違ったままです。
面白いのはアブレーション(§6.2、表3)です。
- ヘッド数: 1ヘッドは最良設定より 0.9 BLEU 悪い。ただし多すぎても落ちる( で BLEU 25.4、base の 25.8 より下)。
- キー次元 を削ると品質が落ちる。論文はここから「互換性の判定は簡単ではなく、内積より洗練された互換性関数が有益かもしれない」と自分の設計への疑いを述べています。
- 位置エンコーディングを学習型埋め込みに置き換えても、ほぼ同じ結果(PPL 4.92 / BLEU 25.7 対 base の 4.92 / 25.8、行(E))。正弦波を選んだのは、訓練時より長い系列へ外挿できるかもしれないという期待からで、その外挿性能自体はこの論文では検証されていません(§3.5)。
汎化の確認として英語の句構造解析も試しています。4層・ を WSJ の約4万文だけで学習して F1 91.3、半教師あり(約1700万文)で 92.7(§6.3、表4)。タスク固有のチューニングをほとんどせずに、Recurrent Neural Network Grammar(93.3)を除く既報を上回った、というのが論文の主張です。
限界と未検証点
論文自身が認めている点:
- 計算量は系列長の2乗。 なので、自己注意が再帰より有利なのは のときに限る(§4、表1)。非常に長い系列には注意を近傍 に制限する案を挙げていますが、「今後さらに調べる予定」であってこの論文では実験されていません(§4)。
- 注意重み平均による実効解像度の低下(§2)。マルチヘッドは緩和策であって、消滅させたわけではありません。
- 互換性関数としての内積の限界が、アブレーション行(B)から示唆されている(§6.2)。
- 評価範囲は狭い。機械翻訳2タスクと英語句構造解析1タスクだけです。テキスト以外のモダリティ(画像・音声・映像)、局所的・制限付き注意、生成の非逐次化はいずれも「今後の計画」として結論部に列挙されています(§7)。このうち画像への持ち込みを実際にやってみせた代表例は 論文解説: ViT — 画像を単語のように扱う で扱っています。
- 解釈可能性の主張は弱い。付録の可視化は、層5/6の複数ヘッドが 'making … more difficult' の長距離依存を追っている「ように見える」、'its' の照応解決に関わっている「ように見える」というもので、論文の語も "appear to" / "seems related" です(図3〜5)。定量評価ではありません。
※本記事執筆時点(2026年)の補足(原論文の主張ではなく筆者の注記): この論文が残した の計算量と という前提は、その後の長文脈化の流れで最も強い制約になりました。長文脈の扱い、位置表現の設計、encoder-decoder ではない構成など、現在の実装は本論文の構成そのままではありません。本記事の数値はすべて本論文の報告値であり、後続研究の数値は含めていません。
実務Tips
以下は論文の記述に基づく筆者の運用解釈です。
- 注意を自作するなら を落とさない。 が大きいほど内積の分散が に比例して膨らみ、softmax が飽和する(§3.2.1 脚注1)。学習が進まない自作注意のバグとして最初に疑う場所です。
- ヘッド数は「多いほど良い」ではない。表3(A) は1ヘッドが明確に悪く、32ヘッドも base より悪いことを示しています。
- の削減は魅力的だが品質を落とす(表3(B))。軽量化はまず他の場所から。
- 評価スコアの一部は後処理由来。論文は base で最後の5、big で20チェックポイントを平均し、ビーム幅4・長さペナルティ で探索しています(§6.1)。他手法と比較するときはここを揃えないと数字が動きます。
- 検証 perplexity だけで判断しない。ラベル平滑化 0.1 は「perplexity を悪化させるが accuracy と BLEU を改善する」と明記されています(§5.4)。
- 位置表現の選択に悩みすぎない(少なくともこの規模の翻訳では)。学習型埋め込みと正弦波はほぼ同じ結果でした(表3(E))。
まとめ
- 主張は「注意だけで系列変換ができる」ではなく、「距離に依らない定数パス長を得る代わりに解像度を失い、それをマルチヘッドで買い戻す」という交換条件の提示です(§2)。
- 式そのものは式(1)と式(2)だけ。難しさは の理由(§3.2.1 脚注1)と、ヘッド分割でコストが増えない理屈(§3.2.2)に集約されます。
- 論文は自分の弱点も書いています。、実効解像度、内積互換性関数の限界、評価タスクの狭さ(§4、§6.2、§7)。
原論文: Vaswani et al., "Attention Is All You Need" (arXiv:1706.03762, 2017)
コメント
コメントにはログインが必要です