← 記事一覧に戻る

連載「Self-Attentionを実装する」

公開順に読み進められる連載です。

  1. Self-Attentionの「it」が「animal」を見る、あの図は学習済みの射影行列がないと成り立たなかった

    Self-Attention(QKV)の仕組みをnumpyで実装して検証した記録。Transformerの解説でよく見る「itがanimalに注目する」という図が、学習済みの射影行列なしでは成り立たないことを実験で確認。注意の重み行列を実際に計算して可視化している。

  2. Self-Attentionにとって文はただの「単語の集合」だった。位置エンコーディングを実装して、順序という情報がどう埋め込まれるかを確かめてみた

    Transformerの位置エンコーディングを実装し、語順の情報がどう埋め込まれるかを検証した記録。sin/cos埋め込みを外すとSelf-Attentionが「単語の集合」しか見なくなることを、実際の出力の比較で示した。

  3. 自分のブログ49記事でミニGPTを学習させたら、「位置エンコーディング」と「.envを呼ぶ」を書き出した

    文字レベルのGPT(2層Transformer)をnumpyだけで実装し、このブログ自身の49記事12万字で学習させた記録。数値微分との一致(相対誤差1e-8)で実装の正しさを確認したうえで、生成テキストがランダムな文字列から文体を獲得していく過程を追った。