Transformer
Transformer (機械学習モデル) - Wikipedia
Transformer (deep learning architecture) - Wikipedia
Transformer: アテンションが主要部品の系列変換モデル [深層学習] | CVMLエキスパートガイド
Amazon.co.jp: ChatGPTの頭の中 (ハヤカワ新書 009) : スティーヴン・ウルフラム, Stephen Wolfram, 稲葉 通将, 高橋 聡: 本
perceptron
パーセプトロン - Wikipedia
多層パーセプトロン - Wikipedia
neuron
神経細胞 - Wikipedia
樹状突起 - Wikipedia
シナプス - Wikipedia
neural network (人工神經網)
ニューラルネットワーク - Wikipedia
人工神経 - Wikipedia
$ y=\varphi\left(\sum_{i=1}^m w_i x_i+b\right)
入力$ x_1,\dots,x_m
重み附け$ w_1,\dots,x_m
bias 項$ b
出力$ y
活性化函數$ \varphi
活性化函數 (activation function。傳達函數 (transfer function))
活性化関数 - Wikipedia
非線形函數でないと多層にする價値が無い
ReLU 函數$ x_+
形式ニューロン - Wikipedia
$ y=H\left(\sum_{i=1}^m w_i x_i-h\right)
Heaviside の階段函數$ H
閾値$ h
全か無かの法則 - Wikipedia
ヘッブの法則 - Wikipedia
ヘブ則 - 脳科学辞典
囘歸型 neural network (RNN)
回帰型ニューラルネットワーク - Wikipedia
長・短期記憶 (LSTM)
長・短期記憶 - Wikipedia
疊み込み neural network (CNN)
畳み込みニューラルネットワーク - Wikipedia
埋め込み (embedding)
埋め込み層 (Embedding Layer) [自然言語処理の文脈で] | CVMLエキスパートガイド
word2vec
word2vec (単語埋め込み) | CVMLエキスパートガイド
seq2seq (系列變換 model)
seq2seq (sequence-to-sequence) [機械翻訳] | CVMLエキスパートガイド
encoder-decoder
seq2seq with attention | CVMLエキスパートガイド
注意機構 (attention mechanism)
アテンション (機械学習) - Wikipedia
系列変換モデルとアテンション機構 [seq2seq から Transformer まで] | CVMLエキスパートガイド
seq2seq with attention | CVMLエキスパートガイド
マルチヘッドアテンション (Multi-head Attention) [Transformerの部品] | CVMLエキスパートガイド
位置符号化 (Positional Encoding) [Transformerの部品] | CVMLエキスパートガイド
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin "Attention is All You Need" 2017/6/12
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin "Attention Is All You Need" 2017
Attention Is All You Need - Wikipedia
現在主流の系列變換 model は、encoder・decoder 構成における複雜な再歸型 neural network または疊み込み neural network を基盤としてゐる。特に性能の高い model では、encoder と decoder 閒に注意機構を導入することで性能を向上させてゐる。本硏究では、注意機構のみに基づく新たな簡素な network architecture「Transformer」を提案する。この model では、再歸處理や疊み込み處理を完全に排除してゐる。2 種類の機械飜譯 task における實驗結果から、これらの model が品質面で優れてゐるだけでなく、竝列處理性に優れ、學習時閒も大幅に短縮可能であることが明らかとなった。本 model は WMT 2014 英語-ドイツ語飜譯 task において 28.4 BLEU score を達成し、ensemble 手法を含む既存の最高記錄を 2 BLEU point 以上上囘る性能を示した。WMT 2014 英語-フランス語飜譯 task においては、8 臺の GPU を用ゐて 3.5 日閒の學習を行った結果、單一 model としての最先端性能となる 41.8 BLEU score を達成し、文獻中の最高性能 model と比較して學習 cost を大幅に削減した。さらに、Transformer が他の task にも良好に一般化することを、大規模 dataset と限定 dataset の兩方を用ゐた英語構文解析 task への適用によって實證した。
briefing 資料:Attention Is All You Need
要旨
論文「Attention Is All You Need」は、sequence 變換 task のための新しい network architecture「Transformer」を提案する。この model の最大の特徵は、從來の encoder・decoder model で主流であった囘歸型 neural network (RNN)や疊み込み neural network (CNN)を完全に排除し、注意機構のみに依存してゐる點にある。
Transformer は、主に以下の點で劃期的な成果を達成した :
1. 品質の向上 : WMT 2014 の英語-ドイツ語飜譯 task で、既存の ensemble model を含む最高記錄を 2.0 BLEU 以上上囘る 28.4 BLEU という新たな最高 score を樹立した。英語-フランス語飜譯 task においても、單一 model として 41.8 BLEU という新たな最高水準を達成した。
2. training 效率の大幅な向上 : 囘歸型 neural network (RNN)の逐次的な計算という制約を排除したことで、竝列化が大幅に進んだ。これにより、從來の最高性能 model と比較して、training に要する時閒が劇的に短縮された (例へば、8 基の P100 GPU で 3.5 日)。
3. 優れた汎用性 : 機械飜譯だけでなく、英文構文解析のような構造的制約が強い task にも應用され、task 特有の tuning をほとんど行はずに、既存の高性能 model に匹敵する、あるいはそれを上囘る結果を示した。
この architecture は、自己注意 (self-attention) と multi-head 注意 (multi-head attention) を中核技術とし、入力と出力 sequence 閒の大域的な依存關係を效率的に捉へる。Transformer の登場は、自然言語處理分野における model architecture の paradigm shift を促し、その後の多くの最先端 model の基礎となってゐる。
1. 背景:従来の配列変換モデルの課題
Transformerが提案される以前、言語モデリングや機械翻訳といったシーケンス変換タスクでは、囘歸型 neural network (RNN)(特に長・短期記憶 (LSTM)やGRU)を用いたエンコーダ・デコーダアーキテクチャが主流であった。
囘歸型 neural network (RNN)の限界: 囘歸型 neural network (RNN)は、隠れ状態h_tを前の隠れ状態h_{t-1}と現在の入力tから計算するという構造を持つ。この「逐次的」な性質は、トレーニング例内での計算の並列化を妨げる大きな制約となる。シーケンスが長くなるにつれて、この問題は深刻化し、メモリ制約からバッチ処理も制限される。また、信号がネットワークを伝播する経路が長くなるため、長距離の依存関係を学習することが困難であった。
疊み込み neural network (CNN)の課題: 逐次計算を減らす試みとして疊み込み neural network (CNN)ベースのモデル(例: ByteNet, ConvS2S)も登場した。これらは並列計算が可能だが、2つの任意の位置間の信号を関連付けるために必要な操作回数が、位置間の距離に応じて線形または対数的に増加する。そのため、遠く離れた位置間の依存関係を学習することがより困難になるという課題があった。
アテンションメカニズムは、これらのモデルと組み合わせて使用されることで、距離に関係なく依存関係をモデル化する能力を示していたが、Transformer以前は囘歸型 neural network (RNN)や疊み込み neural network (CNN)と併用されるのが一般的であった。
2. Transformerモデルのアーキテクチャ
Transformerは、再帰や畳み込みを完全に排除し、アテンションメカニズムのみに基づいて入力と出力間の大域的な依存関係を捉える、初のシーケンス変換モデルである。
2.1. 基本構造:エンコーダ・デコーダ
Transformerは、多くのニューラルシーケンス変換モデルと同様に、エンコーダ・デコーダ構造を踏襲している。
エンコーダ: 入力シーケンス (x₁, ..., xₙ) を、連続的な表現のシーケンス z = (z₁, ..., zₙ) にマッピングする。エンコーダは、同一の構造を持つN=6層のスタックで構成される。各層は2つのサブレイヤー(マルチヘッド自己アテンション、位置単位の全結合フィードフォワードネットワーク)を持つ。
デコーダ: エンコーダの出力 z を受け取り、出力シーケンス (y₁, ..., yₘ) を一度に1要素ずつ生成する。デコーダも同様にN=6層のスタックで構成される。各層は、エンコーダの2つのサブレイヤーに加えて、エンコーダスタックの出力に対してマルチヘッド・アテンションを実行する3番目のサブレイヤーを持つ。
各サブレイヤーの周りには残差接続(Residual Connection)が採用され、その後に層正規化(Layer Normalization)が続く。
2.2. 中核技術:アテンションメカニズム
スケール化ドット積アテンション (Scaled Dot-Product Attention)
Transformerで用いられるアテンションは「スケール化ドット積アテンション」と呼ばれる。
機能: クエリ(Query)、キー(Key)、バリュー(Value)の3つのベクトルを入力とし、出力はバリューの重み付き和として計算される。各バリューに割り当てられる重みは、クエリと対応するキーの互換性関数によって計算される。
計算式: Attention(Q, K, V) = softmax( (Q * Kᵀ) / √dₖ ) * V
スケーリング: √dₖ でスケーリングする点が特徴である。キーの次元 dₖ が大きい場合、ドット積の値が大きくなりすぎ、softmax関数の勾配が極端に小さくなる問題が発生する。このスケーリングは、その影響を緩和し、学習を安定させるために行われる。
マルチヘッド・アテンション (Multi-Head Attention)
単一のアテンション関数を実行する代わりに、Transformerはマルチヘッド・アテンションを用いる。
構造: クエリ、キー、バリューを、学習可能な異なる線形射影を用いて h 回(本論文ではh=8)にわたって dₖ, dₖ, dᵥ 次元の空間にそれぞれ射影する。これらの射影された各バージョンに対して並列にアテンション関数を実行し、得られた dᵥ 次元の出力値を連結して、再度線形射影することで最終的な出力を得る。
利点: この構造により、モデルは異なる位置の異なる表現部分空間からの情報に共同で注意を向けることが可能になる。単一のアテンションでは、平均化によってこの能力が阻害されてしまう。
Transformerにおけるアテンションの3つの使用法
1. エンコーダ-デコーダ・アテンション: クエリは前のデコーダ層から、キーとバリューはエンコーダの出力から来る。これにより、デコーダ内のすべての位置が入力シーケンスのすべての位置に注意を向けることができる。
2. エンコーダ自己アテンション: キー、バリュー、クエリのすべてがエンコーダ内の前の層の出力から来る。エンコーダ内の各位置が、前の層のすべての位置に注意を向けることができる。
3. マスク付きデコーダ自己アテンション: デコーダ内の各位置が、その位置までのすべての位置に注意を向けることを可能にする。自己回帰的な性質を維持するため、デコーダ内での左向きの情報流を防ぐマスキングが適用される(softmaxへの入力のうち、不正な接続に対応する値を-∞に設定)。
2.3. その他の構成要素
位置単位のフィードフォワードネットワーク (Position-wise Feed-Forward Networks): 各エンコーダ層とデコーダ層には、アテンション・サブレイヤーに加えて、全結合フィードフォワードネットワークが含まれる。これは各位置に個別かつ同一に適用される。
位置エンコーディング (Positional Encoding): モデルには再帰も畳み込みもないため、シーケンスの順序情報を利用するために、位置に関する情報を注入する必要がある。入力埋め込みに、異なる周波数のサイン関数とコサイン関数からなる「位置エンコーディング」が加算される。
3. 自己アテンションの優位性
自己アテンション層を、従来の囘歸型 neural network (RNN)や疊み込み neural network (CNN)層と比較すると、以下の3つの点で優れている。
レイヤータイプ 層ごとの計算量 逐次実行される演算の最小数 最大パス長
自己アテンション O(n² · d) O(1) O(1)
再帰的 (囘歸型 neural network (RNN)) O(n · d²) O(n) O(n)
畳み込み (疊み込み neural network (CNN)) O(k · n · d²) O(1) O(logₖ(n))
nはシーケンス長、dは表現の次元数、kは畳み込みのカーネルサイズ
並列化: 自己アテンション層は、一定数の逐次実行操作(O(1))ですべての位置を接続する。一方、囘歸型 neural network (RNN)層はO(n)の逐次操作を必要とする。これにより、Transformerは大幅な並列化が可能となり、トレーニング時間が短縮される。
長距離依存関係の学習: ネットワーク内での順方向および逆方向の信号が通過しなければならない経路の長さは、長距離依存関係の学習能力に影響を与える重要な要素である。自己アテンションでは、任意の2つの入出力位置間のパス長がO(1)と短いため、長距離依存関係の学習が容易になる。
解釈可能性: 副次的な利点として、自己アテンションはより解釈可能なモデルをもたらす可能性がある。アテンションの分布を可視化することで、個々のアテンションヘッドが文の構文的・意味的構造に関連する異なるタスクを学習している様子が観察された。
4. 実験結果と評価
4.1. 機械翻訳
Transformerは、2つの主要な機械翻訳タスクで、品質とトレーニングコストの両面で最先端の性能を示した。
モデル BLEU (EN-DE) BLEU (EN-FR) トレーニングコスト (FLOPs)
GNMT + RL Ensemble 26.30 41.16 1.8 · 10²⁰
ConvS2S Ensemble 26.36 41.29 7.7 · 10¹⁹
Transformer (base model) 27.3 38.1 3.3 · 10¹⁸
Transformer (big) 28.4 41.8 2.3 · 10¹⁹
英語-ドイツ語翻訳 (WMT 2014): 大規模モデル(Transformer (big))はBLEUスコア28.4を達成し、これまでに報告された最高のモデル(アンサンブルを含む)を2.0 BLEU以上上回る新記録を樹立した。ベースモデルでさえ、すべての先行研究を上回った。
英語-フランス語翻訳 (WMT 2014): 大規模モデルはBLEUスコア41.8を達成し、従来の単一モデルの最高性能を上回った。その際のトレーニングコストは、以前の最先端モデルの4分の1未満であった。
4.2. モデルのバリエーション分析
Transformerの各コンポーネントの重要性を評価するために、ベースモデルに変更を加えて性能の変化を測定した。
アテンションヘッド数: ヘッド数が1の場合、性能が0.9 BLEU低下した。一方で、ヘッド数が多すぎる(32)場合も品質が低下し、8ヘッドが最適な設定であることが示された。
キーの次元 (dₖ): キーの次元を減らすとモデルの品質が損なわれた。これは、互換性の決定が容易ではなく、ドット積よりも洗練された互換性関数が有益である可能性を示唆している。
モデルサイズ: 予想通り、より大きなモデル(d_model, d_ffを増加)は性能が向上した。
正則化: ドロップアウトは過学習を避けるのに非常に有効であることが確認された。
4.3. 英文構文解析
Transformerが他のタスクに汎化できるかを評価するため、英文構文解析の実験が行われた。このタスクは出力が強い構造的制約を受け、入力より大幅に長くなるという特有の課題がある。
結果: タスク固有のチューニングがほとんどないにもかかわらず、モデルは驚くほど良好に機能し、Recurrent Neural Network Grammar を除くすべての先行研究よりも優れた結果を達成した。
特筆すべき点: 囘歸型 neural network (RNN) based のモデルとは対照的に、Transformer は4万文のみの小規模なデータセットでトレーニングした場合でも、BerkeleyParser を上回る性能を示した。
5. 結論と將來の展望
本硏究は、encoder・decoder architecture で最も一般的に使用される再歸的な層を multi-head 自己注意に置き換へ、注意のみに基づいた初の sequence 變換 model である Transformer を提示した。
この model は、飜譯 task において、再歸的または疊み込み層に基づく architecture よりも大幅に高速に training でき、2 つの WMT task で新たな最高水準を達成した。
今後の展望として、以下の點が擧げられてゐる。
他の task への應用。
text 以外の modality (畫像、音聲、video) を扱ふ問題への擴張。
大規模な入出力を效率的に處理するための局所的・制限的注意機構の調査。
生成をより逐次的でなくすこと。