Transformer (機械学習モデル)
各デコーダは、セルフ・アテンション機構、エンコーディングに関するアテンション機構、FFサブレイヤの3コンポーネントで構成されている。デコーダはエンコーダと同様に機能する、エンコーダによって生成されたエンコーディングから関連情報を引き出す追加のアテンション機構が挿入される。
最初のエンコーダと同様に、最初のデコーダは、エンコーディングではなく、位置情報と出力シーケンスの埋め込みを入力として受け取る。ただし、Transformer は現在または将来の出力を使用して出力を予測するべきではないため、この逆の情報フローを防ぐために出力シーケンスを部分的にマスクする必要がある。最後のデコーダーの後には、最終的な線形変換とsoftmax層が続き、語彙に対する出力確率が生成される。
Transformer は機械翻訳や時系列予測などの自然言語処理の分野で主に応用されてきた。GPT(GPT-1、GPT-2、GPT-3、GPT-4、ChatGPT)、BERT、XLNet、RoBERTaなどの多くの事前トレーニング済みモデルは、Transformer がそのような自然言語処理関連のさまざまなタスクを実行する能力を実証しており、以下の様な現実世界のタスクに応用しうる。
機械翻訳
自動要約
自然言語生成
固有表現抽出(NER)
生物学的配列分析
2020年には、Transformer のアーキテクチャを用いた GPT-2 をファインチューニングすることで、チェスをプレイできることが示された。
Google の研究チームが 2020 年に発表した Vision Transformer では、Transformer のアーキテクチャを画像認識の分野に適用することで、畳み込みニューラルネットワークを凌駕する成績が得られた。
Transformer モデルは、TensorFlow や PyTorch などの主要なディープラーニングフレームワークに実装されている。
Transformer の単純な実装の疑似コードを以下に示す。