本文へスキップ

Transformer(モデル構造)

この記事は7で読めます

ざっくり言うと

Transformer(トランスフォーマー)とは、2017年の論文「Attention Is All You Need」で提案された、深層学習モデルの設計図です。文章のように順番のあるデータを、注意機構という仕組みを中心にして扱います。

注意機構は、どの言葉にどれだけ重きを置いて読むかを計算するしくみです。この設計図は、その後の多くの言語モデルへ大きな影響を与えました。

生成AIを知るうえで、外せない基礎用語です。とはいえ、AIの性能がTransformerだけで決まるわけではありません。

出来ばえを左右する要素は、ほかにもあります。

  • 学習に使ったデータ
  • 学習の方法
  • モデルの規模
  • 答えを出すときの処理

イメージ

Transformerが出てくる前は、RNNというやり方が代表的でした。順番のあるデータを扱うモデルで、前の計算結果を次へ渡しながら、順番に処理していました。

Transformerは、注意機構によって入力中の離れた位置どうしの関係を計算します。前の結果を待たずに済むので、学習のときは位置ごとの処理を並列化しやすくなりました。原論文の機械翻訳実験でも、そこが従来方式との違いとして示されています。

ただし、文章を生成するモデルは、推論時には通常、次のトークン(文章を細かく区切った単位)を一つずつ生成します。Transformerなら入力から出力まで一度に全部できあがる、という意味ではありません。

正確には

Transformerは、2017年6月にarXivで発表された論文「Attention Is All You Need」で提案されました。書いたのは、Googleの研究者Ashish Vaswani氏らです。深層学習のモデル構造(アーキテクチャ)にあたり、当初は機械翻訳のタスク向けに設計されました。

Google Researchの公式ブログでも、Transformerは「言語理解のための新しいニューラルネットワーク構造」として紹介されています。それ以前に主流だったRNN(再帰型ニューラルネットワーク)やCNN(畳み込みニューラルネットワーク)とは、異なるアプローチをとる点が特徴とされています。

原論文のTransformerは、Self-Attentionだけでできているわけではありません。次のような部品を組み合わせた、エンコーダー・デコーダー構造です。

  • 注意機構を複数並べて使うMulti-Head Attention
  • 位置ごとのFeed-Forward Network
  • 残差接続
  • Layer Normalization
  • 語順を伝えるPositional Encoding

Transformerが大きな変化だった理由

IBMの解説によれば、Transformerの最大の革新は、Self-Attention(自己注意機構)という仕組みを中心に据えたことです。

観点代表的なRNN/LSTM原論文のTransformer
系列の処理前の状態に依存して順番に進む入力の各位置を並列に計算しやすい
離れた位置の関係多数の逐次ステップを通る注意機構で直接参照できる
生成時方式による自己回帰型は通常トークンごとに生成

学習時に系列処理を並列化しやすいことが、Transformerのポイントの一つです。原論文でも、RNNや畳み込みを使わず注意機構を中心に構成し、機械翻訳で高い品質と学習時間の短縮を報告しています。

ただし、モデルの大規模化をTransformerだけの効果として説明することはできません。

Self-Attentionは何をしている?

Transformerの中心にある仕組みです。ごく大まかに言うと、あるトークンを処理するとき、参照できるほかのトークンへどれだけ重みを置くかを計算します。

この処理によって、各位置を周囲の文脈に応じた表現へ変換できます。とはいえ、この計算だけで出力の正しさが保証されるわけではありません。

さきほどの付箋と糸でいえば、どこへどれだけ太い糸を張るかを文脈に合わせて計算しているのが、Self-Attentionです。前のほうに書いた条件を後の処理でも参照できるのは、この仕組みのおかげです。

扱える長さにはモデルごとの上限があり、範囲内でも重要な条件を常に正しく使えるとは限りません。だから指示は整理して書くのが、実務上のコツです。

細かい数式まで追う必要はありません。Self-Attentionは、参照できるトークン間の関係に重みを付け、文脈に応じた表現を作る仕組みです。そこだけ押さえておきましょう。

ニュースや製品説明でTransformerという言葉が出てきたら、AIの中身そのものではなく、多くのモデルが採用している基本設計だと読み替えてください。細部を忘れても、この読み替えだけ残っていれば大丈夫です。

今のAIとTransformerのつながり

原論文は翻訳向けのエンコーダー・デコーダー構成でした。その後は、さまざまな派生が研究されています。入力の表現を作る側を中心に使う構成、次のトークンを生成する側を中心に使う構成、画像や音声を扱う応用などです。

構成の例主な役割注意点
エンコーダー・デコーダー入力系列を別の系列へ変換原論文の機械翻訳が代表例
エンコーダー中心入力全体の表現を作る分類などに使われる
デコーダー中心直前までのトークンから次を生成自己回帰型LLMで使われる構成

GPTという呼び名は、Generative Pre-trained Transformerの頭文字をつなげたものです。一方で、Transformerという語は、特定企業のチャットサービス全体を指す言葉ではありません。

関連用語

やってみよう

よくある質問

Q. Transformerとは何ですか?
A. 2017年の論文「Attention Is All You Need」で提案された、深層学習モデルの設計図です。文章のように順番のあるデータを、注意機構という仕組みを中心にして扱います。
Q. それまでのやり方と比べて、何が変わったのですか?
A. 以前の代表だったRNNは、前の計算結果を次へ渡しながら順番に処理していました。Transformerは注意機構で離れた位置どうしの関係を計算するため、学習のときに位置ごとの処理を並列化しやすくなりました。
Q. Self-Attention(自己注意機構)は、何をしているのですか?
A. あるトークンを処理するとき、参照できるほかのトークンへどれだけ重みを置くかを計算しています。「彼女」「それ」のような言葉が何を指すのかを、文脈に応じた表現として作る仕組みです。
Q. 「Transformer採用」と書かれていれば、性能が高いということですか?
A. そうとは限りません。Transformerは製品名ではなく設計の名前で、同じ系統でも層の構成や学習方法は大きく違います。出来ばえは学習データや規模などにも左右されるため、名前だけでは判断できません。

公開: 更新: ✓ 公式情報と照合:

参考ソース

判断クイズ

「Transformer採用」と書かれたモデルを、どこまで同じものとみなせますか?

3問です。答えるとその場で解説が出ます。全問終えたら、「回答を記録する」で学習の記録に残せます。

1. 2つのモデルについて「どちらもTransformerなので、中身は同じです」と説明されました
2. 「Transformerは並列処理なので、答えも一度に全部できあがります」と言われました
3. あるクローズドモデルの構成を資料に書こうとしたら、公式のモデルカードには「Attentionを使う」とだけ書かれていました

全問に答えると、回答を記録できます。

残るのは「答えたかどうか」だけで、正解数は保存されません。この端末の中だけに残り、別の端末には引き継がれません。

この教科書は無料で全文公開しています。仕事で使えるところまで進みたい方は、実習と資料がそろった生徒プランをどうぞ。

生徒プランを見る(14日間無料)

あわせて読みたい