Transformerとは
Transformerは、2017年に Google の研究者らが論文「Attention Is All You Need」で発表したアーキテクチャです。RNN のように系列を1つずつ順番に処理するのではなく、**Attention(注意機構)**によって系列内のすべての要素の関係を同時に計算します。これにより、離れた単語同士の関係を直接とらえられ、並列計算もできるため、大規模な学習が可能になりました。ChatGPT を含む現在の大規模言語モデルはほぼすべて Transformer を基盤にしています。もともとは機械翻訳のために提案されましたが、画像や音声にも応用されています。
Self-Attention と位置エンコーディング
**Self-Attention(自己注意力)**は、文中の各単語が同じ文の中の他のどの単語とどれくらい関係が深いかを計算し、文脈に応じて重みづけする仕組みです。「それ」が何を指すか、といった離れた関係もとらえられます。
ただし Self-Attention はすべての単語を同時に扱うため、そのままでは「何番目の単語か」という語順の情報を持ちません。そこで各単語の位置を表す情報を加える位置エンコーディングが必要になります。
エンコーダとデコーダ、GPT と BERT
Transformer は、入力を理解するエンコーダと、出力を生成するデコーダで構成されます。
| GPT | BERT | |
|---|---|---|
| 開発 | OpenAI | Google(2018年) |
| 使う部分 | デコーダ | エンコーダ |
| 読み方 | 左から右へ、次の単語を予測(自己回帰) | 文全体を双方向に読む |
| 得意 | 文章生成 | 文章の分類、質問応答などの「理解」 |
GPT(Generative Pre-trained Transformer)は、大量のテキストで事前学習し、次の単語を順に予測して文章を生成します。BERTは、事前学習に MLM(Masked Language Model)(文中の一部の単語を隠して前後の文脈から当てる)と NSP(Next Sentence Prediction)(2つの文が連続しているかを判定する)を用い、文脈を深く理解する表現を獲得しました。
BERT の派生モデル
- RoBERTa: NSP を廃止し、より大量のデータと長い学習、動的なマスキングで性能を高めた。
- ALBERT(A Lite BERT): 埋め込み行列の分解や層間のパラメータ共有でパラメータ数を大きく減らし、軽量化した。
試験で問われる観点
- Transformer は2017年発表、Attention が中核、並列計算が可能、文章以外にも応用可能。
- Self-Attention は単語同士の関係の重みづけ。位置エンコーディングは語順の補完。
- GPT はデコーダ・生成向き・OpenAI、BERT はエンコーダ・理解向き・Google。
- MLM は穴埋め、NSP は次文判定。RoBERTa は NSP 廃止、ALBERT は軽量化。