← エントランス

第4展示室: 言葉と注意

ホーム

ここからは「言葉」を扱います。2017年、Googleの研究者たちが発表した論文 「Attention Is All You Need」が、いまのChatGPTやClaudeにまで続く Transformerという仕組みの出発点になりました。まずは一番シンプルな 「次に来る文字を当てるだけの機械」から。

言語モデルの原型

展示A: 次の文字を当てるだけの機械

夏目漱石「坊っちゃん」(青空文庫、パブリックドメイン)から、直前2文字→ 次の1文字、という組み合わせの出現回数を数えただけの、ごく単純な統計モデルです。 「生成」を押すと、この統計だけを頼りに1文字ずつ文章もどきを作っていきます。

次の文字の確率(上位5候補)
自分のテキストで学習し直す

好きな文章を貼り付けて「このテキストで学習し直す」を押すと、統計を 作り直して同じ仕組みで生成できます(短いと単調な繰り返しになりやすいです)。

もっと詳しく: これがChatGPTの原理と同じ?

驚くかもしれませんが、原理は本当に同じです。「直前の文脈から、次に 来るものを予測する」——これが言語モデルの土台です。違うのは (1)文脈の長さ(この展示は2文字だけ、ChatGPTは数千〜数十万文字分)、 (2)文脈の覚え方(この展示は単純な頻度表、本物はニューラルネットワークの 重み)、(3)規模(この展示は1つの文庫本、本物はインターネット規模の テキスト)です。次の展示Bで、「文脈をどう覚えるか」の要であるAttentionの 中身を見ていきます。

2017年

展示B: Attention機構の中身

短い文を単語(トークン)に分け、それぞれを平面上の点(2次元の「意味 ベクトル」)として置きました。点はドラッグで動かせます。下のトークンを クリックして選ぶと、そのトークンが他のどのトークンに強く注目しているかが 線の太さで表示されます。

Wq(クエリ)
Wk(キー)
Wv(バリュー)
これは仕組みの模型です。本物のAttentionは数千次元・数十層からなり、 重みは学習によって自動的に決まります。この展示のWq/Wk/Wvは学習された ものではなく、あなたがスライダーで自由に決めた値です。
もっと詳しく: Q・K・Vという比喩

Attentionは、各トークンから3つの役割のベクトルを作ります—— Q(クエリ、「自分は何を探しているか」)、K(キー、「自分は何を持っているか という見出し」)、V(バリュー、「自分が実際に持っている中身」)。 あるトークンのQと、他の全トークンのKとの近さ(内積)を測り、 softmaxで正規化したものが「注目の重み」です。その重みでVを 足し合わせたものが出力になります。図書館で例えるなら、Qが 「探している本のテーマ」、Kが「本の背表紙のタイトル」、Vが 「本の中身」に近いイメージです。

RNN(以前の主流だった逐次型のネットワーク)は文を先頭から1語ずつ 順番にしか処理できませんでしたが、Attentionは全トークンの関係を 一度に(並列に)計算できます。これが2017年の論文タイトル 「Attention Is All You Need」の核心であり、GPU(第3展示室で 触れた並列計算装置)との相性の良さが、その後の大規模化を 後押ししました。

本物の学習済みモデルで見る

ここまでは「あなたが動かす模型」でした。ここからは、このサーバー上で 実際に学習させた極小のTransformer(ひらがな+句読点87種類の語彙、 2層・層あたり2ヘッド、パラメータ数約22,700個)が、本物の学習によって どんなattentionパターンを獲得したかを見られます。

最終損失(学習時): - パラメータ数: -
これは本物の学習済みモデルです。あなたはこの重みを操作できません—— これが実際の学習によって得られた結果です。