2 ポイント 投稿者 GN⁺ 2025-03-06 | まだコメントはありません。 | WhatsAppで共有

ブログ紹介

  • Sebastian Raschkaの書籍 "Build a Large Language Model (from Scratch)" をベースにしたブログシリーズの8本目の記事。
  • 今回の記事では、"trainable self-attention" を実装する方法を扱っている。

GPT型デコーダ専用トランスフォーマーベースLLMの動作方式

  • 文字列をトークンに分割し、各トークンをベクトル列にマッピングしてトークン埋め込みを生成する。
  • 位置埋め込みを生成して入力埋め込みシーケンスを作る。
  • 入力埋め込みを使って各トークンに対する注意スコアを生成する。
  • 注意スコアを正規化して注意重みを生成する。
  • 各トークンに対するコンテキストベクトルを生成する。

スケーリングされた内積注意メカニズム

  • 入力シーケンスを3つの行列(クエリ、キー、値)に射影して注意スコアを計算する。
  • 注意スコアを正規化して注意重みを生成し、これを使ってコンテキストベクトルを計算する。
  • この一連の処理はすべて効率的な行列積によって実行される。

行列を使った空間間の射影

  • 行列はベクトルを別の次元の空間へ射影するために使われる。
  • 入力埋め込みをクエリ、キー、値の空間へ射影して注意スコアを計算する。

注意スコアの正規化

  • 注意スコアを正規化するためにソフトマックス関数を使う。
  • 次元の平方根で割って正規化し、小さな勾配の問題を解決する。

コンテキストベクトルの生成

  • 注意重みを使って各トークンのコンテキストベクトルを計算する。
  • 入力埋め込みを値空間へ射影し、注意重みによる加重和でコンテキストベクトルを生成する。

次のステップ

  • 因果的自己注意とマルチヘッド注意を扱う予定。
  • 自己注意メカニズムの「なぜ」についても掘り下げる予定。

結論

  • このブログ記事は自己注意メカニズムを理解する助けになる。
  • 追加の質問や意見はコメントで残せる。

まだコメントはありません。

まだコメントはありません。