AI解剖教室 · Part 11 卒業プロジェクト
第93章 自分のトークナイザーをつくる
Q. 自分のデータにぴったりのトークンは、どうやって決めるのでしょう?
- モデルは文章をそのまま読めず、トークンの番号だけを読みます(第29章)。いちばんかんたんなのは、1文字を1トークンにする方法です。
- ことわざを文字で切ると、トークンは1,140個、種類は345。行の終わりの改行も1トークンです。
- BPEは、となり合って出てくる2つのかけらを数えます(第30章)。ことわざでいちばん多いペアは「れ」と「ば」で、9回です。
- いちばん多いペアを1つのトークンにくっつけます。種類は346に1つ増え、トークン全体は9個減って1,131個です。
- これをくり返します。30回くっつけると、トークンは1,037個に。空白のない日本語では、「は一」のように言葉の境目をまたぐこともあります。
- たくさんくっつけるほどいいのでしょうか?トークン数は減りますが、種類が増えて、モデルが覚える埋め込みも増えます。GPT-3は約5万種類です。
- 「やってみよう」で作ったトークナイザーを、第94章のミニGPTがそのまま使います。一度もくっつけなければ、1文字が1トークンです。
この章のまとめ
- はじめは1文字 = 1トークン。ことわざはトークン1,140個、345種類。
- BPE:いちばん多いペアをくっつけると、種類は1つ増え、トークン数は減る。
- 自分で作ったトークナイザーを第94章のモデルが使う。くっつけなければ文字単位。