GPT-4やLlama、Claudeといった大規模言語モデルは、2017年にGoogleの研究者が発表した「Transformer」というフレームワークの上に構築されています。このTransformerをベースにしたAIモデルがどのように機能するのかを視覚化したツール「Transformer Explainer」が、ジョージア工科大学のPolo Club of Data Scienceによって公開されています。

Transformer Explainer

https://poloclub.github.io/transformer-explainer/

Transformer Explainerの見方は、以下のムービーを見ると一発でわかります。

Transformer Explainer: Learn How LLM Transformer Models Work - YouTube

Transformer Explainerにアクセスするとこんな感じ。



右上にある「Temperture」は、次の単語を予測する際の確率分布に影響を与える変数です。スライドバーを左右に動かすことで確率分布が変動し、次に出力される単語も変化します。



上部にある入力欄に直接文章を入力してもOK。



入力欄の右にある「Generate」ボタンをクリックすると、設定しているTempertureに基づいて確率分布が算出され、次の単語が出力されます。



この確率分布はどのように生成されているのかというのは左側の「Embedding」から見ていくとわかります。このEmbeddingでは、入力された文字列をトークンという単位に分解し、ベクトルに変換しています。Transformer Explainerの「Embedding」という部分をクリックすると、トークンが変換されていく様子が可視化されます。



そして、このベクトルからQuery、Key、Valueという3つの入力を算出します。この計算過程は、トークンからのびる青いラインをクリックすると表示されます。



そして、Transformerの基幹はデータの中から予測に役立つものを重み付けして注目する「Attention」という機構で、中央部分の「Multi-Head Attention」を見ると、QueryとKeyの内積をSoftmaxという関数で正規化して重みを算出し、Valueとの積を取ることで出力結果を生成している様子が示されました。



Transformer Explainerはオープンソースで開発されており、MIT LicenseのもとでソースコードがGitHubで公開されています。

GitHub - poloclub/transformer-explainer: Transformer Explained: Learn How LLM Transformer Models Work with Interactive Visualization

https://github.com/poloclub/transformer-explainer