Up レイヤー構造 作成: 2025-05-24
更新: 2025-05-24


  • レイヤー構造
    入力層の出力
      LEN(S) × D 行列
      X(S) = ( x_ij )
    は,学習ブロックに入力される。

    学習ブロックは,層 (layer) 構造になっている。。
    層の枚数を,「深さ(depth)」と呼ぶ。

    たとえば:
      GPT-2 small: 12層
      GPT-3: 96層
      GPT-4: 非公開だが多数層


    複数の層は、同じ処理を繰り返すためのもの。
    層の意味づけは,「トークンの意味が,層を重ねるごとに深まっていく」。

    各層において,処理は Self-Attention が中心。
    層は,Self-Attention の基本操作がより堅牢に働くように設計されている。

    1層ずつ出力が伝播。
    最終出力から損失を計算し,誤差逆伝播で全層を更新する。
    これが,つぎの入力テクストの処理環境になる。


  • 「繰り返し」処理の流れ
       X^(1) = ( x_ij^(1) ) = X(S)
       Z^(1) = ( z_ij^(1) ) = Z      x_i^(ℓ)       │       │Self-Attention(全語と相互作用)       ↓      z_i^(ℓ)(文脈情報を含んだ中間出力)       │       │Residue (残差接続)       ↓   x_i^(ℓ) + z_i^(ℓ)       │       │LayerNorm (正規化)       ↓      z'_i^(ℓ)       │       │FeedForward Network(各語ごとに)       ↓      y_i^(ℓ)       │       │Residue       ↓   z'_i^(ℓ) + y_i^(ℓ)       │       │LayerNorm       ↓      y'_i^(ℓ) = x_i^(ℓ+1)
    記号法
    • 層の数を
         NL (Number of Layers)
      で表す。
    • 最終出力の LEN(S)×D 行列 ( y'_i^(NL) ) を
        O = ( o_i ),  o_i = y'_i^(NL)
      で表す。

    こうして,TV(ID_i) の更新 (「成長」) に向けた中間出力ベクトルの処理が:
      x_i^(1) → x_i^(2) → ‥‥ → x_i^(NL) → o_i
    というように,層の数だけ繰り返される。


  • Self-Attention の役割
    • 入力 x_i^(ℓ) は,TV(ID_i) の更新 (「成長」) に向けた中間出力で,文脈情報が注入されたベクトル。
    • x_i^(ℓ) に対し,他の全ての x_j^(ℓ) との関係性を計算し,「その文脈にふさわしい形」に変換。
    • 重み行列 $W_Q^(ℓ), W_K^(ℓ), W_V^(ℓ) が,この変換に使われる。
    • 変換されたベクトル z_i^(ℓ) を,「TV(ID_i) の更新に向けた中間出力」として出力する。


  • FeedForward Network の役割
    • 入力の z'_i^(ℓ) を,MLP(2層NN)に通す。
      これの意味づけは,「各トークンの特徴を,非線形に強調・変形」。
    • 全体の構造を見ず,トークン単体で処理(=並列化しやすい)。
    • 出力 y_i^(ℓ) は, 「文脈付き+強調済み ベクトル」。


  • 並列処理
    第 ℓ 層の中間出力の流れ:
      x_i^(ℓ) → z_i^(ℓ) → y_i^(ℓ) → x_i^(ℓ+1)

    この処理を,i = 1 から i = LEN(S) まで──即ち「文 S 全体にわたって」──並列に処理する:
      x_i^(1) → z_i^(1) → y_i^(1) → x_i^(1+1)
        ‥‥‥‥
      x_i^(NL) → z_i^(NL) → y_i^(NL) → o_i


  • 重み行列
    • 重み行列は,層ごとに異なる:
        W_Q^(ℓ), W_K^(ℓ), W_V^(ℓ)
        W_O^(ℓ), W_FF^(ℓ)
        MLPの W_1^(ℓ), W_2^(ℓ)
        など
    • 学習では、それぞれの層で「異なる機能を果たす」ように最適化される
    • ベクトル x_i^(ℓ) は、各層で「深い意味」を獲得していく