WirelessWire News Technology to implement the future

by Category

オリンピック、AI、伴走、錯覚

2022.02.09

Updated by Ryo Shimizu on February 9, 2022, 02:19 am JST

北京オリンピックが始まって久しいが、スポーツ観戦をする習慣のない筆者はテレビをつけても退屈なのでYouTubeばかり見ている。

そんな折、今月2日、OpenAIは新たに「Solving (Some) Formal Math Olympiad Problems(いくつかの数学オリンピックの問題を解く)」というブログ記事を発表した。

国際数学オリンピックは、高校生を対象とした数学の世界大会で、出てくる問題が非常に難しいことで知られている。
アニメファンの読者なら、「サマーウォーズ」の主人公が、数学オリンピックの日本代表を狙えると言われていたことを覚えておられるかもしれない。

もちろん、制限時間があって、その中で解く問題であるので、いわゆる数学史上の難問と違って、解けるかどうかわからない問題ではなく、答えが予め用意されている問題には違いない。

しかし、そもそも大半の人類にとって、国際数学オリンピックの問題を解くというのは非常に難易度が高いことには違いない。

しかも、問題文はシンプルであり、シンプルであるが故にそれが意味していることを理解するのは慣れてないと大半の人間には難しい。
たとえば今回、OpenAIが「AIに解かせた」問題の一つはこんな感じである。

Prove that if |x-2|=p ,where x<2, then x-p = 2-2p

普通の人にはほぼ暗号文のように見えるだろう。この問題を「解く」つまり証明するのに大体数時間が想定されている。
国際数学オリンピックでは、こういう問題が1日に3問くらい出題され、4時間30分の持ち時間で、合計二日間、延べ9時間で決着をつける。

だからこの問題をまともに証明しようと思ったら、たっぷり数時間は費やすことを覚悟しなければならない。
また、当然ながら全ての参加者が全ての問題を完璧に解けるわけではない。

これは証明問題と呼ばれている問題で、証明問題というのは、「証明できる」ことは分かっているので比較的解きやすい問題ではないかと思う。まあ筆者も数学は苦手なため、これがどのくらいの難易度の問題なのかはよくわからない。

OpenAIが今回開発した手法では、こうした証明問題のタスクにおいて、従来29.3%だった正解率を41.2%まで高めることに成功したという。
証明問題は、Google傘下のDeepMindが得意とする深層強化学習では解くのが難しいと言われている分野で、その理由は、証明に用いる手段が事実上無限大にあるため、全ての証明パターンを学習しようとすると到底時間が足りなくなるからだ。

そこでOpenAIは、自動証明器を利用して問題文と解答を自動生成し、学習するという自らの得意技に絞ってカリキュラム学習を行い、高い性能を達成した。

実際のところ、このようなAIができたことで、何が変わるだろうか。

まず、大前提として、性能としてはまだまだである。確かに29.3%から42.2%まで正解率が高まったのはすごいが、それでも半分以下の正解率でしかない。

ここでは、この研究が進んでいった結果、近い将来に「数学オリンピックの問題が全て解けるAI」が完成したら、という仮定の状況を考えてみることにする。

まず言えるのは、「答えが用意されている数学の問題を解いてもあまり意味がない」ということだ。
人間が知りたいのは、答えが用意されていることばかりではない。

むしろ、研究分野においては、「答えのわからない問題」を解いてくれるAIこそ心の底から欲しいものだろう。
そのためには、過去の人間が書いた「答えのある証明問題」をいくら覚えても、それ自体にあまり意味はないと言える。むしろ過去に誰も思い付かなかった手法、思い付かなかったアプローチでないと答えが出せないようなものにこそAIの活躍する余地がある。

そのためには、そもそも与えられた道具(この場合、数学的証明手法)ではなく、証明のための道具を自ら作り出すような創意工夫がAIに求められる(もちろん人間にも)。

その創意工夫とは、たとえば0がない時代に位取り機数法を考え出したり、虚数がない時代に虚数を考え出したり、それまで単に「数」と呼んでいたものを「自然数」と名付けたりする、要は「規制の枠の外側」を考え出し、道具化する能力で、このような能力は「答えの用意された問題」をいくらやっても身に付かないはずである。

むしろ、本当に必要なのは問題文としてナンセンスな問題で、しかも答えが用意されていないものを、なんとか死に物狂いで解こうとするAIではないだろうか。

筆者も過去に何度か数学の試験問題を作ったことがあるので、数学の試験問題を作るのがまあまあ難しいことを肌で知っている。基本的に、作るのが大変なので普通はどこかの大学の過去問を使う。そうしないと、難易度がそもそもわからないからだ。

数学の試験問題というのは、解き方さえ知っていればすぐに解けるのだが、知らないと一生解けないというものが少なくない。

答えのある問題を解きたいこともある。
たとえば、電卓を使うような場合だ。

つまり、「消費税込23万円の商品の本体価格は?」みたいな問題は、当然、答えがあることは分かっている。しかし、「どうやって消費税を抜くんだっけ?」「今消費税って何%なんだっけ?」ということは、その場その場で調べないとわからない。

こういう時に、パッと「20万飛んで9021円」という答えが出てきたら、気持ちいいし嬉しい。
「トランプの前のアメリカ大統領って誰だっけ?」というのも、答えはあるけど知りたいこともあるかもしれない。

ところが、「20世紀で一番偉大なアメリカ大統領って誰?」という質問には、答えがない。
少なくとも、「これこれこういう理由で、ケネディ大統領が一番です」と答えてくれるようなAIはまだ開発されていない。

そもそも「偉大さ」とは何か、誰にも正確な定義ができないからだ。

しかし、人生というのは、正確な定義のできない言葉との戦いの連続である。
たとえば愛とは何か、愛するとは何か、自分にとって幸福とは何か、自分の人生の目的とは何か。

こうした疑問を抱かないか、もしくは、即答できる人というのはそう滅多にいない。
一度は答えを見つけたつもりでも、また答えを求めて彷徨うことになってしまう。

しかし人々が本当に必要なのは、苦悩する人に寄り添い、そうした「答えのない難問」にともに向き合ってくれるAIではないか。
いやいやそれはAIじゃなくて人間がいいんだという人もいるだろうが、AIが助けてくれたらもっと楽だったのに、ということだってなくはないのではないだろうか。

研究者も同じで、研究者にとっての研究テーマは、あくまでも「答えのまだわからない問題」である。答えの分かっている問題を研究している研究者はいない(それは研究とは呼ばれない)。

たとえば数学が苦手な研究者にとってみれば、自分が直感的に感じた、ちょっと既存の枠組みの中ではナンセンスかもしれない問いをAIにぶつけたら、AIが一ヶ月くらい熟考して、「こんな解決策はどうか」と言ってきたら、ちょっと頼もしいのではないだろうか。少なくとも僕ならそんなAIが欲しい。

愛されるAI、頼りにされるAIにとって大切なのは、伴走するということだ。
あんまり先走っていって、「あなたの求める答えは42です(これはAI業界では有名なジョークである)」と唐突に言われても、こっちは理解できない。

それよりは、そこまで賢くなくていいから、「この映画を見れば、あなたの求める答えに近づけるかもしれません」くらいのアドバイスをしてくれるようなAIが欲しい。

AIというのは、実際のところ、かなりポンコツでも何か人間に訴えかけてくるものがある。
たとえば筆者は、音声認識と音声合成を組み合わせたごく初歩的な会話プログラムの実験をしていたときに奇妙な体験をしたことがある。

筆者「こんにちは」

AI「こんにちは。最近どうですか?」

筆者「最近ね、最近はちょっと疲れたかな」

AI「そうですか。疲れているんですね。最近、疲労すると感じたことはなんですか?」

このプログラムは、ごく単純な方法で作られていて、僕としては何か知的なものを生み出そうという意図は全くなかった。むしろAIと呼ぶのもおこがましいくらいのがらんどうのプログラムだったが、一つだけ、ユーザーの投げかけた動詞に対して、類義語に言い換えて聞き返すという機能を入れていたのだ。この手法は、人工知能(または人工無脳)の世界ではよく知られた、イライザという心療内科医のプログラムの陳腐な応用でしかない。もちろん自然言語処理には最新のモジュールを使っているが、それだけだ。

ただ、AIに改めて「最近、疲労すると感じたことはなんですか?」と聞かれると、自分の心の中に驚きが広がるのを感じた。
仕組みを知っているし、自分で作ったものなのに、ただなんとなく放った「最近はちょっと疲れたかな」から、「疲労する」という類義語について聞かれたという体験がとても新鮮に感じられたのだ。

「ちょっと疲れた」と言っている自分はほとんど無意識にその言葉を口にしている。
しかし、それをAIが「疲労したと感じたこと」という言葉に変換してこちらにおうむ返ししてくると、無意識に放った言葉が別の意味や文脈を持って立ち上がってくる。

筆者「そうだな。外出する機会が減って運動不足になっているよ」

AI「なるほど。他に最近、減少していると感じたことはなんですか?」

AIの返し方は先ほどと同じ、言葉を拾って別の表現に言い換えて戻してきているだけだ。
しかし筆者の感じ方は違った。

「まるで人と話をしているみたい」

と思ったのだ。

本来だったら、このセリフの意図は、「運動不足」が主題である。しかし、その主題をまるごと無視して、「減った」という動詞に反応して、減ったを「減少した」に言い換えて聞き返すのは、人間同士の会話で相手の話題に興味がないときに使う常套手段である。

これがむしろ「運動不足」に反応して「運動不足の解消にはストレッチがいいですよ」と返すようにすると、却って不自然な会話になってしまうだろう。なぜならAIは実際にはストレッチがなんだか分かっておらず、ストレッチ以外の運動不足解消手段も、あらかじめ用意された言葉以外は出てこないからだ。

たとえば「運動不足の解消のためにできること」という問いの答えは、「ストレッチ、ヨガ、筋トレ、ルームランナー、ルームバイク」などだが、この中のどれがその人にとっての正解なのかはわからない。その人の特性に激しく依存するのだ。そもそも「運動不足だ」と言ってる人が運動をしたい訳が無い。

運動したい人は勝手に解決手段を見つけるのである。
運動したくないから、「運動不足」という自覚を持っているに過ぎない。

要は、「最近は運動不足だ」という人に「運動不足の解消にはストレッチがいいですよ」という答えを返すのは、先走りすぎなのだ。
人間同士の会話で、そんな返し方をされたら喧嘩になるかその人とは疎遠になるだろう。

「最近は運動不足だ」と言われたら、普通は「運動不足は体に悪いね」と共感するか、「なんか運動したりしないの?」と聞くべきなのである。
そこから、「昔スポーツやってたりしないの?」とか「スキーはしたことある?」とか聞くのが、会話というものの本質である。

解決策の提示は、求められてからするべきなのだ。AIも人間も。

ちょっとふんわりした話になってしまったが、この経験から筆者はAIによる支援というのは錯覚を積極的に起こさせて人間の想像力を高めるようなものであるべきではないかと考えるようになった。

もちろん、答えのある問題、たとえば予算配分とか経営戦略とかそういうものは存分に答えのある問題を探すAIを使えばいいと思うのだが、AIの真の可能性は人間の錯覚を利用して人間自身の想像力を拡張するところにあるのではないかと思うのだ。

この「錯覚」の利用という言葉はあまり使われないが、アラン・ケイがダイナブック論文を記したとき、ユーザーイリュージョンという言葉でこれを説明した。

今我々がスマートフォンやタブレットを当たり前のように使えるのは、ケイが唱えたユーザーイリュージョンという錯覚を積極的に応用した手法の賜物である。本来ならあなたの前の画面は「スクロール」したりせず、スワイプしても画面が切り替わったりはしない。画面はそこにあるだけで、ピクセルはそこに止まっている。しかし、画面が「スクロールしてる」と錯覚することで、人はコンピュータの複雑な仕組みを理解しなくても、コンピュータ(スマホやタブレット)の使い方を理解していると「錯覚」できるようになっている。

AIがもっと普通の人に使えるようになるためには、まだまだこの「錯覚」の研究が足りていない。

WirelessWire Weekly

おすすめ記事と編集部のお知らせをお送りします。(毎週月曜日配信)

登録はこちら

清水 亮(しみず・りょう)

新潟県長岡市生まれ。1990年代よりプログラマーとしてゲーム業界、モバイル業界などで数社の立ち上げに関わる。現在も現役のプログラマーとして日夜AI開発に情熱を捧げている。

RELATED TAG