ChatGPTに質問すると、自然な日本語で答えが返ってくる。プログラムのコードを頼めば、動くコードが出てくる。中で何が起きているのか。
やっていることは「予測」です。
予測は計算でできる
水道代が毎月5000円かかっているとします。1年でいくらになるか。
5000円 × 12か月 = 60000円。
これは「予測」です。まだ来ていない月の水道代を、過去のデータ(毎月5000円という実績)をもとに計算で出している。式に数字を当てはめれば、まだ起きていないことに対して目安を出せる。
コンビニの仕入れでは、もう少し複雑になります。去年の夏、気温が35度を超えた日にはアイスが200個売れました。今年も35度の予報が出たら、200個仕入れる。去年の冬、気温が5度まで下がった日には肉まんが150個出ました。今年も5度の予報なら、150個用意する。
水道代の計算では「金額」と「月数」の2つの数字で済んでいました。コンビニの予測では「気温」「アイスの売上」「肉まんの売上」と、扱う数字が増えています。複雑な予測をするほど、必要な数字は増えます。
過去のデータから式やパターンを作り、新しい数字を当てはめて結果を出す。予測は計算で実現できます。
コンピュータは計算が得意
人間が電卓で「5000 × 12」を叩くのと、コンピュータが同じ計算をするのとでは速度がまるで違います。コンピュータは1秒間に何十億回もの計算ができるからです。
予測は計算でできる。そしてコンピュータは計算が得意です。
そしてデータが多いほど、複雑な予測ができるようになります。水道代の予測は「毎月の金額」と「月数」で計算できました。「気温と売上の関係」を予測するには、過去何年分もの気温データと売上データが必要です。使えるデータが増えれば増えるほど、より多くの要素を考慮した予測が可能になる。
コンピュータは大量のデータを使って、複雑な式を何億回も繰り返し計算できます。
犬と猫を区別する
大量のデータと大量の計算を組み合わせると、もっと複雑な予測ができるようになります。
コンピュータに犬の写真を1万枚、猫の写真を1万枚見せます。それぞれに「これは犬」「これは猫」という情報をつけて渡します。
すると、コンピュータはまだ見たことのない写真を見せられたときに「これは犬である確率が92%」のように判定できるようになります。
コンピュータは大量のデータの中からパターンを計算で見つけ出し、新しい入力に対して「どちらに近いか」を予測しています。耳の形、体の輪郭、毛の色の分布。そういった特徴の組み合わせを数値にして、確率を計算で出す。
ここでも使われているのは「データ」と「計算による予測」です。
文章の生成も同じ構造
ChatGPTのようなAIは、インターネット上にある膨大な量の文章をデータとして読み込んでいます。本、記事、会話、論文、プログラムのコード。あらゆる種類の文章です。
読み込んだ段階で「ある文字の後に、どんな文字が来ることが多いか」というパターンが数値として取り込まれています。この数値の集まりがAIの中身です。質問に答えるとき、AIはデータを探しに行くのではなく、この数値を使って計算しています。
「今日の天」という4文字があるとします。この後に来る文字として何が予測されるか。計算すると、いちばん高い確率が出るのは「気」です。だから「気」を出力する。
「今日の天気」になりました。この後には「は」が来る確率が高い。「は」を出力する。
「今日の天気は」になりました。この後には「晴」「曇」「雨」などが候補に挙がります。仮に「晴」が選ばれたとします。
「今日の天気は晴」の後には「れ」。「今日の天気は晴れ」の後には「で」。「今日の天気は晴れで」の後には「す」。そしてその次には「ここで文章が終わる」ことが予測されます。
「今日の天気は晴れです」という文章ができました。
AIは文章を最初から最後まで組み立てているのではありません。少しずつ「次に来る可能性が高いもの」を選び、それを付け足して、また次を予測する。文章を終える判断も予測の対象です。この繰り返しが高速で行われることで、文章が出てきます。
予測の単位は1文字とは限りません。「晴れ」のようなかたまりで扱われることもあります。
コード生成も同じ
プログラムのコードも文章の一種です。AIは大量のプログラムコードをデータとして読んでいます。
「HTMLで四角いボタンを作って」と指示すると、AIは読み込んだHTMLコードのパターンから、少しずつ「次に来る可能性が高いもの」を選んでいきます。その繰り返しの結果として、動くコードが出力される。
コンビニの発注予測も、犬猫の識別も、文章の生成も、コードの生成も、構造は同じです。データがあり、そのデータに基づいて次を予測する。
計算は間違えない。予測は間違える
電卓で5000 × 12を叩けば、必ず60000になります。何回やっても同じ答えが出る。計算には正解が1つしかないからです。
予測はそうなりません。AIが選んでいるのは「その文脈で自然につながる可能性が高いもの」です。出てきた内容が事実かどうかを確かめる仕組みは入っていません。
だからAIは、実在しない本のタイトルや間違った年号を、自然な文章の中に混ぜて出力することがあります。文章としては筋が通っているので、読んでいて間違いに気づきにくい。
AIが間違えるのは、壊れているからではありません。予測で動いている以上、もっともらしいものを選んだ結果が事実と違うことがある。これが予測の性質です。
まとめ
- AIがやっていることは「予測」である
- 予測は計算で実現できる。コンピュータは計算が得意である
- 大量のデータと大量の計算を組み合わせることで、画像の識別や文章の生成ができるようになる
- 犬猫の識別も、文章生成も、コード生成も「データからパターンを見つけて次を予測する」という仕組みで動いている
- 計算は答えが1つに決まるので間違えない。予測はもっともらしいものを選ぶので、内容が事実と違うことがある