はっちゃーん!
AIをもっと賢くする方法、思いついたでー!
AIをもっと賢くする方法、思いついたでー!
またGPUを増やすとか言うんじゃないだろうな。
ちゃうちゃう。
AIを外に連れ出すねん!
AIを外に連れ出すねん!
犬じゃないんだから。
でもな、今のAIって、ずっと部屋の中で本を読んでるようなもんやろ?
いきなり妙にまともなことを言い出したな。
AIを賢くする話って、パラメーターを増やすとか、学習データを増やすとか、モデルを大きくする話ばっかりやん。
一般的にはそうだな。
より多くの文章や画像を学習させて、より複雑な処理ができるモデルを作る。
より多くの文章や画像を学習させて、より複雑な処理ができるモデルを作る。
でも、いくら本を読んでも、実際に何かやった経験がなかったら、分からんこともあるやろ?
なるほど。
知識として知っていることと、実際に理解していることは違うんじゃないか、という話か。
知識として知っていることと、実際に理解していることは違うんじゃないか、という話か。
そうそれ!
今回は「AIを賢くするのは、モデルではなく世界かもしれない」という話やでー!
今回は「AIを賢くするのは、モデルではなく世界かもしれない」という話やでー!
知っていることと、理解していること
例えばAIに「ガラスのコップは落としたら割れる」って教えるやん。
文章として学習させれば、そう答えられるようにはなるな。
でもそれって、本当にコップが割れる仕組みを理解してるんかな?
文章の中にある「コップ」「落とす」「割れる」という関係を覚えているだけかもしれない。
ほな仮想空間を用意して、その中でいろんな物を落とさせたらどうやろ?
ガラスは割れる。
金属はへこむ。
ゴムなら跳ね返る。
中に水が入っていれば、倒れたときにこぼれる。
金属はへこむ。
ゴムなら跳ね返る。
中に水が入っていれば、倒れたときにこぼれる。
何回も試してたら、素材とか高さとか、ぶつかる強さの違いも分かってきそうやろ?
少なくとも、単純に答えを暗記するだけではなくなるな。
今の状態から、次に何が起きるかを予測できるようになる。
今の状態から、次に何が起きるかを予測できるようになる。
それって、ちょっと「理解」に近づいた感じせえへん?
本当に人間と同じ意味で理解しているかは別としても、現実に近い判断はできるようになるだろうな。
AIに教えるのは、正解ではなく結果
そこで必要になるのが、AIが練習できる世界や!
世界?
壁があって、床があって、物が落ちて、ぶつかったら壊れる。
AIが何かしたら、ちゃんと結果が返ってくる世界や。
AIが何かしたら、ちゃんと結果が返ってくる世界や。
壁に向かって進めば止まる。
足場を踏み外せば落ちる。
物を強く握りすぎれば壊れる。
足場を踏み外せば落ちる。
物を強く握りすぎれば壊れる。
上手に持てたら成功!
落としたら失敗!
落としたら失敗!
そこで成功には報酬、失敗にはペナルティーを与えて、より良い行動を学ばせるわけだ。
おおっ!
悪いことしたAIには、おやつ抜きやな!
悪いことしたAIには、おやつ抜きやな!
罰を与えることだけが目的じゃないぞ。
ちゃうの?
大事なのは、行動に対して世界が一貫した結果を返すことだ。
だから「ペナルティー設計」より、もう少し広く「フィードバック設計」と考えた方がいい。
だから「ペナルティー設計」より、もう少し広く「フィードバック設計」と考えた方がいい。
AIが何かするたびに、世界の方から「それやったら、こうなるで」って返事するんやな。
そういうことだ。
子供に「熱いから触ったらあかん」って百回言うより、一回「あちっ!」ってなった方が覚える、みたいな?
危険なことを実際にやらせるわけにはいかないが、経験から学ぶという意味では近いな。
せやから、危ない経験は仮想世界でやらせたらええねん。
そこで出てくるのが、最近のAI技術というわけか。
ワールドモデル――AIが頭の中に持つ世界
まずは、ワールドモデル!
名前だけ聞くと、世界そのものをコンピューターの中に作る技術に見えるな。
ちゃうの?
ワールドモデルは簡単に言えば、AIが今の状況から「次に何が起きるか」を予測するために持つ、内部の世界像だ。
AIの頭の中にある、ちっちゃい世界みたいなもん?
その説明でいいと思う。
例えばロボットがコップを取ろうとしたときに、「この方向に腕を伸ばしたら届く」とか考えるん?
ほかにも、強く押せば倒れる、指を閉じれば持てる、手を離せば落ちる、といった未来を予測する。
頭の中で一回やってみてから、実際に動くんやな。
人間も似たようなことはしている。
物を取るたびに、手の動きを一から計算しているわけじゃないだろう。
物を取るたびに、手の動きを一から計算しているわけじゃないだろう。
ウチはたまに距離を見誤って、机の角に手ぶつけるけどな。
お前のワールドモデルは精度が低いな。
物理シミュレーション――世界にルールを与える
AIが未来を予測するなら、その前に世界のルールが必要やんな。
そこで物理シミュレーションが出てくる。
ゲームで物を投げたら飛んでいったり、坂道で転がったりするやつ?
考え方は同じだ。
重力、摩擦、衝突、慣性、弾性などの法則を、コンピューター上で再現する。
重力、摩擦、衝突、慣性、弾性などの法則を、コンピューター上で再現する。
水とか煙とか、布がヒラヒラするのも?
液体や気体、布、物体の変形や破損なども物理シミュレーションの対象になる。
つまり、AIに「重力とはこういうものです」って文章で教えるんやなくて、実際に重力が働く場所を作るんやな。
そうだ。
その世界で物を落とせば、設定された法則に従って落ちる。
AIは結果を見ることで、世界の動きを学べる。
その世界で物を落とせば、設定された法則に従って落ちる。
AIは結果を見ることで、世界の動きを学べる。
ゲームで落下ダメージがないと、高いところから飛び降り放題になるもんな。
世界のルールが違えば、そこで学ぶ正しい行動も変わってしまうということだ。
ロボットシミュレーション――壊れない世界で失敗する
次はロボットシミュレーション!
物理法則を再現した仮想空間の中で、ロボットの動作を練習させる技術だな。
現実で練習したらあかんの?
現実のロボットは、転べば壊れるかもしれない。
部品は摩耗するし、実験場所も必要になる。
動かした時間と同じだけ、学習にも時間がかかる。
部品は摩耗するし、実験場所も必要になる。
動かした時間と同じだけ、学習にも時間がかかる。
しかも変な動きしたら、人にぶつかるかもしれん。
だから危険な試行錯誤は、まず仮想空間で行う。
仮想ロボットなら、階段から百回転がり落ちても大丈夫やな!
百回と言わず、何万回でもな。
失敗し放題や!
そこが重要なんだ。
失敗をなくすのではなく、安全に大量の失敗ができる環境を作る。
失敗をなくすのではなく、安全に大量の失敗ができる環境を作る。
失敗できることが、賢くなる条件なんやな。
少なくとも、試行錯誤から学ぶAIにとってはそうだろう。
デジタルツイン――現実世界の双子を作る
ほな、デジタルツインは?
デジタルツインは、現実にある設備や環境の状態を、仮想空間に再現する技術だ。
現実世界の双子を、コンピューターの中に作るからデジタルツイン?
名前の由来としては、そう考えれば分かりやすい。
でも、それって普通の3Dモデルと何が違うん?
見た目を再現するだけではない。
現実側のセンサー情報などを取り込み、機械の温度や稼働状況、部品の状態まで仮想側へ反映する。
現実側のセンサー情報などを取り込み、機械の温度や稼働状況、部品の状態まで仮想側へ反映する。
工場の機械が熱くなったら、仮想工場の機械も熱くなるん?
そういう連動を目指す技術だな。
ほな現実の工場を止めんでも、仮想工場で配置を変えたり、新しいロボットを置いたりできるんや。
生産ラインの改善、故障の予測、災害や異常への対応なども試せる。
シム工場やな!
急に安っぽくなったな。
四つの技術は、全部つながっている
えーっと……。
いっぱい出てきて、ちょっと分からんようになってきた。
いっぱい出てきて、ちょっと分からんようになってきた。
整理しよう。
物理シミュレーションは、仮想世界に重力や摩擦などのルールを与える技術。
ロボットシミュレーションは、その世界の中でロボットに行動を練習させる技術。
デジタルツインは、現実に存在する工場や設備などを仮想世界に再現する技術。
そしてワールドモデルは、経験した世界の動きをAIの内部で予測するための仕組みだ。
世界にルールを作る。
その中で経験する。
現実の世界もコピーする。
ほんで経験したことを、AIの頭の中に持たせる。
その中で経験する。
現実の世界もコピーする。
ほんで経験したことを、AIの頭の中に持たせる。
そう考えると、別々の流行語ではなく、ひとつの流れとして見えてくるだろう。
全部、「AIが学べる世界をどう作るか」って話なんやな。
身体を持つことで分かる世界
でもAIって、仮想世界で動くだけでええん?
最終的に現実世界で活動させるなら、身体も重要になる。
ロボットの体?
AIが身体を通して世界を学ぶという考え方は、身体性AIやEmbodied AIと呼ばれている。
エンボディド……。
無理に覚えなくていい。
人間も、赤ちゃんのときに物を掴んだり、落としたり、転んだりして覚えていくもんな。
手を伸ばして届く距離。
物を持ったときの重さ。
床に接したときの抵抗。
こういう感覚は、文章や画像を見るだけでは学びにくい。
物を持ったときの重さ。
床に接したときの抵抗。
こういう感覚は、文章や画像を見るだけでは学びにくい。
本だけ読んで、自転車の乗り方を完璧に覚えるのは無理やもんな。
実際に乗って、傾いて、バランスを崩して、少しずつ覚える。
つまりAIにも、体験が必要になるかもしれんのや。
画像生成AIにも、世界の理解が必要?
これって、画像生成AIにも関係あるん?
かなり関係があると思う。
今の画像AI、めっちゃきれいな絵を描くで。
見た目については詳しい。
ただ、描かれている世界の関係性は、まだ不安定なことがある。
ただ、描かれている世界の関係性は、まだ不安定なことがある。
関係性?
人物が物をどう持つか。
体重がどこにかかっているか。
道具が対象物のどこに触れているか。
二人がひとつの作業をどう分担しているか。
体重がどこにかかっているか。
道具が対象物のどこに触れているか。
二人がひとつの作業をどう分担しているか。
この前、「二人でひとつの彫刻を彫る」画像を作ったときも、適当に書いたら全然うまくいかんかったわ。
一人は立って彫刻を支える。
もう一人は座って工具を使う。
そうやって人物ごとの役割と位置を指定すると、成功率が上がった。
もう一人は座って工具を使う。
そうやって人物ごとの役割と位置を指定すると、成功率が上がった。
つまりAIは、彫刻も人間も工具も知ってたけど、三つがどう関係するかは曖昧やったんやな。
そう考えることもできる。
きれいな絵を描けることと、その世界が正しく動いてることは別なんや。
画像生成AIがさらに進化するには、物の見た目だけでなく、物理法則や物同士の関係まで学ぶ必要があるのかもしれない。
間違った世界で学ぶと、間違ったAIが育つ
ほな、精密な仮想世界を作って、そこでAIを遊ばせたら完璧やな!
そう簡単でもない。
なんでやー。
仮想世界のルールが間違っていたら、AIも間違ったことを学ぶからだ。
あ。
例えば仮想世界の摩擦が現実より弱ければ、現実では滑らない場所でも、AIは滑ると判断するかもしれない。
ゲームの世界で走る練習してから現実に出たら、段差で引っかかるみたいな。
物理法則だけではない。
報酬の条件が単純すぎると、AIが人間の意図しない抜け道を見つけることもある。
報酬の条件が単純すぎると、AIが人間の意図しない抜け道を見つけることもある。
ゴールまで行ったら百点やけど、壁を壊して近道しても百点になる、とか?
そういうことだ。
人間は「壁を壊さずに進むのが当たり前」と思っていても、その条件を世界側に設定していなければ、AIにとっては正しい行動になるかもしれない。
人間は「壁を壊さずに進むのが当たり前」と思っていても、その条件を世界側に設定していなければ、AIにとっては正しい行動になるかもしれない。
ペナルティー設計、大事やん!
だから、良いモデルを作るだけでは足りない。
良い世界と、良い評価基準も必要になる。
良い世界と、良い評価基準も必要になる。
AIが賢くなるかどうかは、先生だけやなく、学校の作り方にもかかってるんやな。
今度はずいぶん分かりやすい例えを出したな。
次のAI競争は、どのモデルかではなく、どの世界か
これまでのAI競争って、「どのモデルが一番賢いか」って話が中心やったよな。
モデルの大きさ、計算能力、学習データの量。
分かりやすく比較できる数字が注目されてきた。
分かりやすく比較できる数字が注目されてきた。
でもこれからは、AIがどんな世界で学んだかも大事になるんや。
どれだけ現実に近い環境を作れるか。
どれだけ多様な経験をさせられるか。
行動に対して、どれだけ適切な結果を返せるか。
どれだけ多様な経験をさせられるか。
行動に対して、どれだけ適切な結果を返せるか。
ほんで、仮想世界で覚えたことを、現実世界でも使えるか。
次世代AIでは、そういう部分が重要になっていくだろうな。
つまり……。
AIを賢くするのは、もっと大きなモデルやなくて、失敗して、試して、結果を学べる世界なのかもしれん!
今回の結論だな。
よーし!
ウチも賢くなるために、いろんな世界を経験してくるでー!
ウチも賢くなるために、いろんな世界を経験してくるでー!
どこへ行くつもりだ?
とりあえず、冷蔵庫の中の世界から!
それは経験じゃなくて、夜食を探してるだけだろ。