AI解剖教室 · Part 6 トランスフォーマーを組み立てる
第60章 ベクトルから単語へ
Q. 96層を通って出てきたのは、12,288個の数のベクトル。これをどうやって「行く」という単語に変えるのでしょう?
- 96層を通り終えると、単語ごとにベクトルが1本ずつ出てきます。次の言葉を決めるのは、最後の単語「学校に」のベクトルです。
- このベクトルを単語帳のトークン1つ1つと比べて点数をつけます。向きが似ているほど点数が高くなります(第9章 内積)。
- 単語帳のトークンは約5万個、50,257個。だから点数も50,257個出ます。この点数をロジット(logit)といいます。
- 行く3.0点、行った2.1点、遅れた1.5点、ピザ −1.0点。残りの5万個あまりは、ほとんどが −9点くらいです。
- ここで第14章のソフトマックス! eの累乗にして、5万個全部の合計で割ります。全部足すと約38.72です。
- 行く52%、行った21%、遅れた12%。残りの5万個あまりが少しずつ集まって14%になりました。
- あとは確率どおりに1つ選んで、文の最後につなげます(第1、2章)。設計図に出力 + ソフトマックスが入りました!
この章のまとめ
- 最後の層から出た、最後の単語のベクトルで次の言葉を決める。
- トークン約5万個(50,257個)と1つずつ比べて点数(ロジット)をつける。12,288 × 50,257の行列の積が1回(第11章)。
- ソフトマックス(第14章)で確率にして、1つ選んでつなげる。行く52%、行った21%、遅れた12%。