機械学習理論研究室
← AI体験の一覧
机の上に箱を並べ、中から単語カードを1枚ずつ引いていくと、文ができあがります。ChatGPTのようなAIがやっていることも、もとをたどればこれと同じ「次の語を選ぶ」のくり返しです。どこまでが同じで、どこから違うのかを確かめてみましょう。
箱には語のラベルが貼ってあり、中には単語カードが入っています。ここに入っているのは、次の5つの文を切り分けたカードだけです。
箱の中のカードは、上の5つの文から機械的に作ったものです。「猫が」の箱には、5つの文の中で「猫が」の次に来た語だけが入っています。カードの枚数は、その続き方が何回出てきたかを表します。1枚しかない箱は1回しか出てこなかったということで、そこでは次の語が決まってしまいます。中身は人が選んだのではなく、文章を数えた結果です。
まず「START」の箱から、中を見ないでカードを1枚引きます。読んだら、そのカードを同じ箱に戻します。そして、いま読んだ語と同じラベルの箱へ移ります。これをくり返すだけです。
| どの箱から | 引いた語 | 箱の中の枚数 | 確率 |
|---|---|---|---|
| まだ引いていません | |||
カードが1枚しか入っていない箱では、確率は 1(かならずその語になる)です。掛け算した値が、その文が出てくる確率になります。
何度か引いていると、たとえば「犬が猫を追いかけた。それはおいしかった。」のような文が出てきます。追いかけられた猫がおいしいわけではありません。日本語としては読めるのに、意味は通っていません。
なぜこうなるのでしょうか。箱を選ぶとき、見ているのは直前の1語だけです。「それは」の箱に来た時点で、その前が「追いかけた。」だったのか「食べた。」だったのかは、もう分かりません。だから「おいしかった。」が引けてしまいます。
では、もっと前まで見るようにしたらどうなるでしょうか。
出典: 尾崎士郎訳『現代語訳 平家物語』(青空文庫)/ 夏目漱石『坊っちゃん』(青空文庫)。どちらも著作権が切れています。
色がついているところが、原文をそのまま写した部分です。読ませた文章に7語以上つながって同じ並びで出てくるところを塗っています。色のついた語が文全体に占める割合がコピー率です。
7語という区切りには理由があります。直前のN語を見て次の語を選んでいる以上、N+1語ぶんが原文と一致するのは当たり前で、Nを5まで上げれば6語までは必ずそろってしまいます。7語以上続いたときだけ「写した」と数えれば、Nをどれにしても同じものさしで比べられます。
—
箱は数千個あるので、全部を机に並べることはできません。いま使っている1個だけを開いて見せています。
見る範囲を広げると、文はたしかに自然になります。ところが同時に、コピー率も上がっていきます。
自然になったのではなく、写しているだけです。読ませた語数と箱の数を見比べてください。語数とほとんど変わらない数の箱ができているということは、ほとんどの箱にカードが1枚しか入っていないということです。カードが1枚なら選びようがありません。原文どおりに進むしかないのです。
手元のデータに合わせすぎて、答えを丸暗記してしまう。機械学習ではこれを過学習と呼びます。曲線で同じことが起きるようすは、合わせすぎる曲線で見られます。
では、見る範囲を広げる以外に、どんな手があるのでしょうか。
日本語は英語と違って語と語のあいだが空いていないので、どこで区切るかを機械が決めるのは、それだけで一つの研究テーマです。ここではその処理を省いて、区切り方を自分で選んでもらいます。
入力された日本語に空白がなかったので、1文字ずつに切り替えました。空白なしの日本語をそのまま空白で区切ると、文がまるごと1語になって箱がひとつも作れません。語ごとに区切りたいときは、「今日 は 雨 が 降っ た 。」のように空白を入れてみてください。
ここまでのやり方は、直前のN語を全部同じ重みで見ていました。だから「もっと前まで見たい」と思ったら、Nを増やすしかありません。そしてNを増やすと、箱が爆発して丸暗記になりました。
四角の濃さが「その語をどれだけ見るか」です。上は直前の4語を等しく見て、それより前は見ていません。下は重みそのものを学習するので、遠くの語も見られますし、関係のない語は薄くできます。この「どの語に注目するかを学ぶしくみ」をAttention(注意機構)と呼びます。
STEP 1 で「犬が猫を追いかけた。それはおいしかった。」が出てしまったのは、「それは」の箱に来た時点で、その前が「追いかけた。」だったことを忘れていたからでした。Attentionは、そこで「追いかけた。」を強く見ることを学習できます。文の長さが変わっても、見るべき語が遠くにあっても、重みのつけ方を変えるだけで対応できます。
ChatGPTのようなAIも、やっていることは次の語を選ぶことのくり返しです。この点はSTEP 1 の箱と同じで、ここに違いはありません。
| 単語カードの箱 | いまのAI | |
|---|---|---|
| 次の語の決め方 | 箱から1枚引く | 確率を計算して1語選ぶ |
| どこまで見るか | 直前のN語 | 数千語から数十万語ぶん |
| どこを見るか | 決め打ち(全部同じ重み) | 学習して決める(Attention) |
| 読ませる文章 | 1万2千語 | 数兆語 |
| 中身が変わるか | 変わらない | 学習で変わる |
いちばん下の行だけは、この教材の別のアプリで体験できます。引いたおはじきを戻さずに、勝てば増やし負ければ減らす。それだけで箱の中身が書き換わっていきます。
次に進む「どこまで縮むか」は、ここと同じ「次に来るものを当てる」話を、文を作る側ではなく短く書く側から扱います。よく当たる予測ほど短いビット数で書ける、という関係でつながっています。「合わせすぎる曲線」は学習シリーズのアプリで、ここで見た丸暗記が、点に合わせすぎた曲線というかたちで現れます。