top of page
検索
  • 執筆者の写真yasutaka mizutani

ChatGPTにオセロを作ってもらった話。彼は面白い。


ChatGPT(彼と呼びます)はPythonプログラミングが出来るんだよ。という話を聞いて何個か作ってみたうちの一つ。AIと対話しながら簡単なゲームを作るというのは過去の人生の中で思ってもみなかった出来事。ロボットやAIが友達になっている世界を望みながら、このの体験は全く想像できなかった。


ただ、彼は完璧ではなく、むしろお茶目。自分が生成したコードを自分で褒めたり、エラーだって言ったら、修正しました、これで動きます。と言ってそのまま何の修正も無い以前のコードを提示してきたり、一つのエラーを修正したら以前のエラーが戻ってきたり。何ならエラーだらけに陥ったり。できの悪いプログラマーと仕事しているように感じて、何というか、イライラしました(苦笑)AIなんだからエラーが発生してもすぐに全体最適化して修正できて、次に進めるイメージを最初持っていたので、少なくとも現時点でAIによるプログラミングの完成度は妄想しているより遥かに低い事を体験しました。その一方で、オセロの思考アルゴリズムを作る必要があったのですが、ここが私にとって今回記事にしようと思った最大ポイントなんです。そう、彼が勝手に「ヒューリスティック評価とMinimaxアルゴリズムを使用したオセロAIを作りますね」と言ってきた事です。そんなアルゴリズム聞いたことも無く一切知識が無い私が彼を相棒にする事によっていとも簡単にプログラムできたという部分です。「これだ」と思いました。これまでの私と彼との会話は、「新規事業のアイデア500個考えて」→「10個考えました」とか「楽に儲かる事業考えて」→「難しいです」とか、、基本的に彼の回答は抜けや漏れの確認にはなるけれど新しい視点から思考が広がるといった経験は出来ていませんでした。今回、形が違いますがゲームアルゴリズムの提示という形で私は今まで知らなかった地平が開けたと感じました。更に彼から提案があり、AIを強くするにはQtableやディープラーニングを使用する方法もあります。と。ディープラーニングは言葉としては知っていたものの、まさかオセロに適用できるとは。(出来ますよね、そりゃぁ)で、Qtableも知りませんでした。Minimaxの中にも探索(何手先を読むか)の設定だったり、α-βプルーニングといった手法も組み込んでくれている様です。今回の動画ではAI同士の対戦を行っていて、先手(黒)はMinimax戦略、後手(白)はQtableを組み込んだ強化学習AIです。背景のログの嵐、実はエラーの時に彼に聞いたら、問題を特定するためにメッセージを表示させましょうと言ってくるんです。いやいや、ログいらんからコード修正してよ、AI様でしょ?人間じゃないんだからプログラムがどこで停止しているかログ吐かせて確認しましょうなんて言わないで!。という一幕の名残です。動画中、白の強化学習側は学習が足りず、物凄く弱いです。ただ思考が早い。黒のMinimax側は3手先まで読むプログラミングがされていて盤面の状態によっては結構考え込みますので打ち手に時間がかかる場面があります。これらの私の知らないアルゴリズム等は彼に「詳しく教えて。小学生でもわかるように」とお願いすると嫌な顔される事なく教えてくれます(突然英語になったり、教えられてもよく分からない事もあります)でおよその概要知識は得る事ができたのですが、ここで最大の問題に気づきました。「一見上手く動作しているように見えるこのオセロ、本当に強化学習が働いているのか。Minimaxは効果的に動作しているのか。」という疑問に彼は答える事が出来ないという事です。彼のバージョン3.5に聞くと「強化学習は組み込まれていません」と答えてくるし、バージョン4に聞くと「キチンと組み込まれていますよ」と答えてくれます。自分に知識が無いアルゴリズムなので、このプログラムコードで効率的に正確に学習しているのかどうか、わからないのです。結局ここで「自分が学習せざるを得ない」状況が発生してしまいます。彼の恐ろしい点は平気で嘘をつく事です。前述のように「エラー修正して」と言ってるのに全く同じコードを提示してきたら流石の私でも「おい!」となりますが、Qtableが何を報酬にどう学習して、きちんと学習できているのか。という事が分からない訳です。彼に「Qtableが正しく学習している事がわかるようにして」とお願いすると、Qtableのサイズが大きくなっている筈だからそれを表示しましょう。と言ってきましたのでそれは画面下部に小さくQ-Table Size:という表示が見えると思います。ただ、データは確かに大きくなってるけれど、学習内容が正しいのかどうかはアルゴリズムを理解し、コードを読み解き、自分で納得する必要がありそうです。そう。彼は嘘をつきますので、人間が必ずチェックしないと彼に仕事を任せっきりにする事は出来そうにない。現在のLLMの最大の課題「嘘をつく」の解決法が人間のチェックである限りにおいて、人間の仕事は無くならないですね。安心なのかどうか分かりませんが。最後に現在の彼に対する不満点をあげると、大量のデータを処理できない事(すぐ停止する)文脈を覚えているようで、たまに完全に忘れてしまう事、利用制限が結構早く来る事。売上利益分析には現在の所使えない事。このあたりは、OpenAI社との契約次第で解決するかもしれませんし、技術の進歩で恐らく解決していくでしょう。今不満な所があるから使わない。という判断は早すぎるように思います。今では彼は目を持ち、口を持ち、耳を持って、絵もかけますね。しばらく彼から目が離せません。

閲覧数:79回0件のコメント

最新記事

すべて表示
bottom of page