Transformer
Less than 1 minute
Transformer
機械翻訳の決定版。機械学習。別名: AttentionIsAllYouNeed
- arxiv:1706.03762 Attention Is All You Needという論文で提唱された。
- The Annotated Transformer
- 原論文から解き明かす生成AIの3章にも詳しい
- Attention is All You Needのメモ - なーんだ、ただの水たまりじゃないか 大した事書いてないが。
ConvS2Sの進化版と考えられる。
PositionEmbeddings
マルチヘッドアテンション
マルチヘッドの所についてのメモ。 Q, K, Vを8個(H=8)に分離する訳だが、 次元とかがややこしいので。
入力の次元 で、Wのアウトプットの方はQ, K, V共通で全て 64。
ようするに512次元の入力を、64次元の出力にするWを8つ用意して、掛ける。図のLinearがこれ。
図1
全ての位置の入力に対して同じWを掛ける。
FFのコネクション
以下のdense_relu_denseが呼ばれそう。
tensor2tensor/tensor2tensor/layers/common_layers.py at master · tensorflow/tensor2tensor
denseは以下っぽい。
tf.keras.layers.Dense - TensorFlow v2.16.1
Noteの所に、rankが2以上だとlast axisだけをdotすると書いてあるのでd_modelに対してだけdotするという事で良さそうかな。 入力は(バッチ, token列, d_model)というテンソルだろう。