ロボマインド・プロジェクト、第183弾!
こんにちは、ロボマインドの田方です。
第174回「GPT-3 検証した あご外れた」は、見ていただけましたか?
GPT-3ってのは、高精度な文章生成システムです。
GPT-3でブログを書いたら、1位になったとか、AIが生成したとは、誰も見抜けなかったとか、何かと話題のシステムです。
検証動画を撮ったら、涙出るほど笑ったとか、ホンマにあご外れたとか、皆さん、大喜びしてくれました。
動画の中のデモは10分もないですけど、じつは、実際は2時間以上かけて撮ったんですよ。
でも、ほとんどが使い物にならなかったんです。
おもろいとか、おもろないとかじゃなくて、まともな日本語にならないのがほとんどなんです。
たぶん、誰も見抜けなかったブログってのも、大量に出力されたなかから、使えそうな文章を人間が抜き出したんやと思います。
でも、そんなことしてたら、本末転倒ですよねぇ。
じゃぁ、なんで、こんなことになったんでしょう?
GPT-3は、ディープラーニングを使ってます。
じつは、GPT-3って、ディープラーニング、機械学習の限界を示してるんです。
ただ、その事を分かってる人は、まだ、あまりいないようなんです。
そこで、今回は、その事を、分かりやすく解説したいと思います。
それでは、始めましょう!
まずは、ディープラーニングについておさらいします。
ディープラーニングが得意なのは、画像認識です。
たとえば顔認識です。
まず、大量の顔写真を学習させます。
写真って、何十万個の点々で出来てますよね。
第一段階は、8ピクセル×8ピクセルの小っちゃい画像に分割するんですよ。
そしたら、縦線とか斜め線とかって単純な要素に分けれます。
これが、低レベルの特徴って部分です。
次の段階は、この低レベルの特徴を組み合わせて、複雑な画像を作ります。
それが、中間レベルの特徴です。
よく見たら、目とか鼻の形が見えてきましたよね。
最後は、中間レベルの目や鼻の画像を組み合わせて、顔画像を作ります。
これが、高レベルの特徴となります。
こうやって、段階を追って組み合わせることで、顔のような複雑な画像を認識できるようになったんです。
つまり、大量の顔写真を与えると、自動で顔の特徴を抽出して、顔が写ってるって判断できるようになったんです。
これの何がすごいかって言うと、処理方法が分からないものでも、大量の入力データと、その答えを学習させれば、出力決定のアルゴリズムを自動でつくり出せたってことです。
ただ、これが上手く行くのは、入力データの特徴と、その組み合わせで出力が決定するって、比較的シンプルなアルゴリズムの場合だけです。
画像認識は、それが、ドンピシャにハマったわけです。
それじゃぁ、複雑なアルゴリズムってどんな場合でしょう?
その典型が文章です。
文章って、頭でいろいろ考えて書きますよね。
文の意味を考えたり、文脈を判断したり、かなり複雑な処理をしてるはずです。
そんな文章生成に、ディープラーニングを適用したのがGPT-3です。
それじゃぁ、GPT-3は、何を学習したんでしょう?
それは、文章の一部を入力データとして、それに続く単語または文を出力として学習させたんです。
この単語とこの単語が来れば、次にくるのはこの単語が来るとかって学習させたわけです。
さて、それで、どんな文章ができたか見てみましょう。
動画5:24~5:48
太郎君は、荷物を持ってるお婆さんを助けようとしたわけです。
お婆さんの持つ荷物って、普通、一個か、せいぜい両手に持って2個でしょ。
それが、100個ずつって、どういう事よ。
学習元の文章が何かわからないですけど、「荷物」って単語の後に「100個ずつ」って続く文章があったんでしょうね。
次は、これです。
動画6:07~7:54
これも、おかしいとこ、いっぱいありますよねぇ。
「頭蓋骨を自分の頭に巻きつけました」って。
頭蓋骨を巻き付けるって、どういうことよ。
まぁ、でも、これも、何となく分かりますよね。
頭って単語の近くに頭蓋骨って単語がある文章を学習したんでしょうね。
その前に「リボンでぐるりと巻いた」って文章があるから、そこから「巻く」って動詞を取ってきたんでしょう。
「リボン」は、その前の「プレゼント」って単語の近くにありそうな単語ですしね。
こうやって、出現しそうな単語を順に表示しただけじゃ、意味をなさない文章になるわけです。
次は、会話文を見てみましょう。
動画10:29~10:59
これ、もう、どういうこと?ってなりますよね。
教室で先生に怒られてる生徒がいるわけでしょ。
それが、ホテルに帰って、二人はシャワーを浴びるって。
いったい、元の文書はなんやったんでしょうね。
最後は家族の会話です。
動画11:02~11:33
何でこうなるの?って思いますよね。
まぁ、考えたら、分からないでもないです。
「太る」って単語の近くに「お腹」って単語があったんでしょうね。
「お腹」の近くに「触る」って単語があったんでしょう。
「ダンナ」っては、よく分からないですけど。
まぁ、こんなのが組み合わさって、なんか、カオスな部屋になりましたよね。
さぁ、どうでしょう?
一言で言えば、ムチャクチャですよね。
いろんな文章の近くにある単語を繋げるだけって単純なアルゴリズムで文章を作ると、こんな、おかしな文章しかできないんですよ。
じゃぁ、AIでマトモな文章を作るには、どうすればいいでしょう。
それについて考えて行きます。
おかしな文章にも、いくつかパターンがあります。
一つは、頭に絵を思い描けないってパターンです。
たとえば、「頭蓋骨を頭に巻く」とかです。
巻くものって、普通、帯とかテープとか、形が決まってますよね。
それから、荷物を100個もってるお婆さんとか。
どうやって100個も手に持つのか、想像できませんよね。
これらは、人が頭の中で思い描くように、3DCGで描画するんです。
「頭蓋骨を巻く」とか、「100個の荷物を持つ」とか、描画できないので文章としておかしいって判断できるはずです。
もう一つのパターンは、思い描いてた光景と、全然違う光景だったってパターンです。
たとえば、父と息子の二人でお母さんの噂話をしてる場面とか。
普通、噂話する場合、その場に本人はいないはずですよね。
なのに、お母さんもそこにいたとか。
それどころか、誰か知らないけど、ダンナがいて。
ダンナはお母さんのお腹を触ってるって。
最初思い描いてた、ほのぼのした家庭の風景が、どんどん、崩れていきますよね。
こんなムチャクチャな文章を作るのは、一言で言えば、AIは常識を持ってないからです。
ただ、AIに常識を教えることは非常に難しいと言われてます。
第11回「自然言語処理、あぁ、50年の勘違い」で、AIに常識を教えようとしたサイクプロジェクトの話をしました。
サイクプロジェクトでは、「コーヒーカップは床に落ちると割れる」とか、そんな常識を100万以上集めたそうですけど、それでもまだ全然足りないって言ってます。
ティーカップが落ちたときのことも書いておかないといけないので、そりゃ、100万個じゃたりないです。
でも、人間は、コーヒーカップは落ちたら割れるとかって、そんな文章を記憶してるわけじゃないですよね。
記憶してるのは、コーヒーカップの形とか材質とかです。
それから、陶器は衝撃を加えると割れるとかって知識です。
これだけ知ってたら、コーヒーカップが床に落ちると割れるって推論できます。
物理シミュレーターを使えばAIで推論できます。
それじゃぁ、噂話はどうでしょう。
これも、人間の感情をシミュレーションするんですよ。
誰しも、自分のことを良く思われたい。
これだけを教えておいて、あとは推論するんです。
人は良く思われたいと思ってる。だから、悪く言いうべきでない。
もし、人の悪口を言うときは、その人がいないところで言うはずだ。
これが推論できれば、父と子がお母さんの悪いとこの話をしてるってことは、二人でこっそり話をしてるって推論できます。
それが分かれば、その場面に、お母さんがいるなんて、文章は出てこないはずです。
それから、生徒が先生に怒られてる話もありましたよね。
これも、場面を推定するんです。
先生、生徒、宿題って出てきたら、場面は、学校の教室ってなりますよね。
みんなのいる教室の中で、先生が生徒を叱ってる場面です。
先生と生徒の役割から、それぞれが取り得る行動も持たせることができます。
先生は、勉強を教えるとか、生徒は、先生の言うことを聞くとか。
登場人物は、それぞれの役割の行動を取るわけです。
そうすれば、「二人はホテルに帰る」とか、「シャワーを浴びる」とかって絶対、出てこないはずです。
もし、そんな文章を繋げるとしたら、「驚くべきことに!」とか、「なんと!」とかって接続詞が出てこないとおかしいです。
こんな接続詞まで、AIが自然に書けるようになれば、文脈まで理解できてるって言えますよね。
わかってきましたか?
文章を作るって、人間の頭の中で、どんだけ複雑な処理をしてるのか。
直前に出てきた単語の組み合わせだけで、続く文章が決まるって、そんな単純な仕組みじゃないんですよ。
でも、だからといって、AIで自然な文章がつくれないかっていうと、そうじゃありません。
物体の材質や、振る舞いをシミュレーションするとか。
人の取り得る行動や、感情に応じた行動から場面を推定すれば、自然な文章をつくり出すことができそうです。
そして、それをやってるのがロボマインド・プロジェクトです。
はい、今回の動画が面白かったらチャンネル登録、高評価お願いしますね。
それからこのチャンネルが本になりました。
説明欄にリンクをはってますので、良かったら読んでください。
それでは、次回も、お楽しみに!