第 2 章

Transformer の中核メカニズム

Attentionメカニズム、Encoder-Decoderアーキテクチャ、フィードフォワードネットワークと残差接続を深く理解し、Transformerの動作原理を習得する。

Attention メカニズム:Transformer の魂

Attention メカニズムは Transformer の核心であり、モデルが入力シーケンスの異なる部分に「注目」し、それらの関係を理解できるようにする。

Self-Attention:自己注意力

Self-Attentionにより、シーケンス内の各位置は他のすべての位置に直接注目できる:

1
Query (Q):現在地でどのような情報を検索したいか
2
Key (K):他の場所でどのような情報が提供されているか
3
Value (V):実際の情報内容
4
計算プロセス:Attention(Q, K, V) = softmax(QK^T / √d_k) V

Multi-Head Attention:マルチヘッドアテンション

複数のAttentionヘッドが並列で動作し、さまざまな角度から情報を理解する:

  • 並列計算:複数のヘッドが同時に計算し、互いに干渉しない
  • 異なる視点:各ヘッドは異なる関係(構文、意味、位置など)に注目する
  • 情報融合:複数のヘッドの出力を結合した後、線形変換を行う
  • 表現力:マルチヘッド機構はモデルの表現力を大幅に高める

位置エンコーディング(Positional Encoding)

Attention メカニズム自体には位置情報が含まれていないため、位置エンコーディングによって注入する必要があります:

  • 正弦位置エンコーディング:sin/cos関数を使用して位置エンコーディングを生成する
  • 学習可能な位置エンコーディング:BERTなどのモデルは学習可能な埋め込みを使用する
  • 相対位置エンコーディング:相対位置に注目し、絶対位置ではなく
  • 制約:固定位置エンコーディングでは超長系列(例:1M+ tokens)を扱いにくい

蛍光ペン理論:Attentionを直感的に理解する方法

蛍光ペンで重要箇所をマークする比喩は、Attention メカニズムの動作原理を理解する助けになります。

比喩で説明

記事を読んでいると想像してください。蛍光ペンで重要な部分をマークするように:

1
読書プロセス:あなたは一語ずつ読み、それぞれの単語の意味を理解する
2
重点をマークする:重要な情報に出会ったら、蛍光ペンでマークする
3
関連理解:マークされた語は文脈上の関係を理解するのに役立ちます
4
Attentionの役割:Attention はモデルの「蛍光ペン」で、重要な情報を自動的にマークして関連付ける

実例

文:"The cat sat on the mat"
モデルが "sat" を処理するとき、Attention メカニズムは:
• 高い注意重み → "cat"(主語)
• 中間の注意重み → "on", "mat"(位置情報)
• 低い注意重み → "The"(冠詞)

Encoder-Decoder アーキテクチャ

Transformer の元のアーキテクチャには Encoder と Decoder が含まれますが、実際のアプリケーションではさまざまな変種が登場しています。

Encoder(エンコーダー)

入力シーケンスを理解し、中間表現を生成する:

  • Self-Attention:入力シーケンス内の内部関係を理解する
  • Feed-Forward:非線形変換
  • 出力:各位置のコード化された表現
  • アプリ:BERT、RoBERTa などの理解タスク

Decoder(デコーダー)

Encoderの出力に基づいてターゲットシーケンスを生成する:

  • Masked Self-Attention:生成された部分のみが見える
  • Cross-Attention:Encoderの出力に注目する
  • 生成:目標シーケンスのトークンを1つずつ生成する
  • アプリ:GPT、T5 などの生成タスク

実際のアプリケーションのバリエーション

GPT(Decoder Only)

アーキテクチャ:Decoder のみ、Cross-Attention 層を削除

特徴:自己回帰生成、左から右へテキストを生成

アプリ:テキスト生成、対話、コード生成

BERT(Encoder Only)

アーキテクチャ:Encoder のみ、双方向理解

特徴:入力シーケンス全体を同時に見て、双方向のコンテキスト

アプリ:テキスト分類、質問応答、固有表現認識

T5(Encoder-Decoder)

アーキテクチャ:完全なEncoder-Decoder構造

特徴:統一されたフレームワーク。すべてのNLPタスクはテキストからテキストへ変換される

アプリ:翻訳、要約、Q&A などの多様なタスク

フィードフォワードネットワークと残差接続

Feed-Forward Network、Residual Connection、および Layer Normalization は、Transformer の安定した学習における重要なコンポーネントです。

Feed-Forward Network (FFN)

フィードフォワード नेटवर्कは各位置に対して独立に非線形変換を行う:

  • 構造:2 層の全結合ネットワークで、間に活性化関数がある(通常は ReLU または GELU)
  • 役割:モデルの非線形表現能力を強化する
  • 特徴:各位置を独立に処理でき、並列計算が可能
  • パラメータ:FFNは通常、モデルのパラメータの大部分を占めます(例:GPT-3では66%)

Residual Connection(残差接続)

入力をそのまま出力に加算し、深層ネットワークの勾配消失問題を解決する:

  • 数式:output = input + sublayer(input)
  • 役割:勾配伝播のための「高速道路」を提供する
  • 効果:モデルがより深いネットワークを学習できるようにする(例:GPT-3は96層)
  • ソース:ResNet の成功事例から学ぶ

Layer Normalization(レイヤー正規化)

各層の出力を正規化して、学習プロセスを安定させる:

  • 位置:Attention と FFN の後、残差接続の前
  • 役割:安定した活性値の分布により、学習収束を高速化
  • 効果:より大きな学習率を使用でき、トレーニングがより安定する
  • バリアント:Pre-LN(サブ層の前で正規化)vs Post-LN(サブ層の後で正規化)

Transformer Block の完全な構造

Transformer Block:
1. Multi-Head Self-Attention
2. Add & Norm(残差接続 + 層正規化)
3. Feed-Forward Network
4. Add & Norm(残差接続 + 層正規化)

複数の Transformer Block を積み重ねて深層ネットワークを形成し、各 Block には上記の構造が含まれます

学習成果

この章を終えると、あなたは:

  • 1Attention メカニズムの数学的原理(Query、Key、Value)と計算プロセスを深く理解する
  • 2Multi-Head Attention が複数の観点から情報を理解する仕組みと、位置エンコーディングの役割を習得する
  • 3GPT(Decoder only)とBERT(Encoder only)のアーキテクチャの違いと応用シーンを理解する
  • 4Feed-Forward Network、Residual Connection、Layer Normalization の役割を理解する