AI=機械学習とは何か(I)

ABOUTこの記事をかいた人

田口 善弘

田口 善弘

中央大学理工学部物理学科教授
東京工業大学理工学研究科博士後期課程物理学専攻修了、理学博士。 専門はバイオインフォマティクス。

AIとは機械学習のことである

 

最近、マスコミなどでAIという言葉を聞くことが増えている。いわく、シンギュラリティなるものが近々起きて、人類の知能はAIに追い抜かれてしまう、とか、今ある職業の大部分はAIに置き換えられて無くなってしまうとか。

科学技術の発展によって社会が変わってしまうことはこれまでもままあったが、今回ばかりは、輝かしい未来が広がっている、というより、暗雲立ち込める未来、と言った風情である。

本当のところはどうなんだろう?

我々が用済みになってしまう未来は目前に迫っているのか?はたまた、ありがちな(そして往々にして空騒ぎに終わる)終末論の一種にしか過ぎないのか?

今回から三回の連載では、その「本当のところ」をなるべく我々が自分で判断できるようになることを目指そう。

 

まず、言葉から。AI=Artificial Intelligence=人工知能、というのが大方の理解だろうけれど、実際のところ、今現在「AI」と呼ばれているもの、これを読んでいるみなさんが「AI」という言葉で思い浮かべるようなこと、例えば、自動運転とか、画像認識とか、自動翻訳、と言った一連の成果はAIの成果、というより機械学習というものの成果である、という方が正しい。

機械学習とはどういうもので、AIとはどう違うのか。ごく簡単な言い方で済ますなら、機械学習は、AIという学問分野の(あまりメジャーではない)一分野である、ということになる。

 

本来、AIとは、誤解を恐れずに大胆に定義すれば、「人間の大脳の機能である知能を、人間の大脳を用いずに実現する技術すべて」ということになる。つまり、機能的に同じであれば仕組みは問わない、ということを意味する。

それはちょうど、「空を飛ぶ」という機能を実現するのに、鳥や昆虫が実際に採用している「羽ばたく」という仕組みを採用する必要はまったくない(実際、我々が空を飛ぶために使っている回転翼やジェットエンジンという仕組みは鳥や昆虫のそれとは似てもつかない)、というのと同じである。

 

このようなことを目的とするAI研究の中では、自動運転、機械翻訳、あるいは、囲碁・将棋・チェスで人間に勝つ、というような目標はあくまで「どれだけ人間に迫れる人工知能が作れたか」という目的の達成度を測る試金石ではあっても、直接目標にするようなものではなかった。

実際、我々がいまやAIの代表のように感じている機械学習は、その名の通り、人間の学習を模倣する機械ではあってもそれ以上でもそれ以下でもない。東ロボくんというAIで東大合格を目指す、というプロジェクトが、道半ばに終わったとは言うものの、一方で多くの中堅私大に合格できるだけの成績を叩き出したのも驚くようなことではない。入試とはまさに、学習した内容を試験するテストであり、機械学習に代表される(今流行りの)AIはまさにその方面で特化した性能を叩き出しているのだから。

 

ボナンザの衝撃

 

 

それでは、AI改め機械学習、という代物はいかにして学習を実行しているのだろうか?

ここではわかりやすいように、コンピュータ将棋を例にとって説明しよう。

いわゆる機械学習が導入されるまでのコンピュータ将棋は、だいたい、以下のような仕組みで作られていた。まず、いま、目の前にある棋譜から出発し、ルールに反しない限りで可能な次の一手を列挙する。その膨大な手の中から、明らかに意味のないもの、例えば、駒を張ったらすぐ取られておわり、みたいなものを除外する。残った手のすべてについて次の一手を考え、無意味な手を除外し、そしてまた、というようなことをなるべく先の手まで繰り返し、一番有望そう(=自分が有利な盤面になる可能性が高い)な次の一手を選ぶ。

 

言うだけなら簡単だが、これを本当にやろうとすると非常に大変なのは想像に難くない。

まず、「一番有望そう」な手は何か、が不明解だ。将棋の目的が王手であることを考えると、「一番有望そう」な手、とは「王手につながる手」ということになる。

しかし、序盤からのすべての指し手を「王手」できるかどうかで優劣をつけるのは非現実的だ。となると「有望そう」な手とは指したらその先に「有望そう」な手が待っている手、ということになりかねず、そうなると「有望そう」な手を決めるために何が「有望そう」な手かをまず決めないといけないという自己矛盾に陥ってしまう。

 

仮にこの問題が奇跡的に解決したとしても別の問題がある。

例えば、各手において10手程度の「まあ悪く無い次の一手」があるとしよう。10手先までこの「悪く無い次の一手」を網羅的に全部調べたらどうなるか?10の10乗=100億通りのパターンを全部調べないと「次の一手」を決められないことになるが、今のパソコンは一秒間に10億回の演算しかできない。しかも、0に1を足す、みたいな基本的な演算をだ。そんな演算でも100億回やるには10秒かかる。将棋では持ち時間を使い切ったら一手30秒で指すことを求められる。どう考えても時間が足りない。そんなこんなでコンピュータ将棋はなかなかプロ棋士に歯が立つところまで行かなかった。

 

しかし、2006年、ボナンザというソフトが登場して状況は激変する。

このソフトの製作者はコンピュータ将棋のプロではなく、計算化学(コンピュータで数値計算やシミュレーションを多用する化学の一分野)の研究者だった。すでに計算化学の分野で活用が始まっていた機械学習の手法をコンピュータ将棋で使ったらどうなるか、という好奇心に駆られたのだろう。

彼のアプローチは従来のコンピュータ将棋の方法とは全く違っていた。まず、6万局とも言われる、江戸時代から延々と蓄積され続けてきた棋譜をコンピュータに覚えさせた。次に、「過去にプロが差した手はすべていい手に違いない」という仮定に基づき、今目の前にある局面に一番近い局面を過去の対戦データから探し出し、その時実際に指された「次の一手」の候補にする、というプログラミングを行った。

 

これは従来のコンピュータ将棋とは全く違う。何がいい手かという判断にプログラマーの思考は全く関与しない。過去の局面と似ているかどうかをコンピュータが探し、似ていたら過去に実際に指されていた次の一手をリストする。ただそれだけだ。

こんな単純な方針なのにボナンザは、並み居る百戦錬磨のプログラムを押しのけてあっさり優勝した。どれほどの衝撃がコンピュータ将棋界に走ったかは想像に難くないだろう。

 

新世代の機械学習

 

しかし、ボナンザにも弱点はあった。「どれとどれが似ているか」の基準だけは人間が与えないといけなかったのだ。この点で、まだ、ボナンザは旧世代の機械学習に属していた。

今、自動運転を実現一歩手前まで発展させ、将棋ならぬコンピュータ囲碁(ちなみに囲碁のほうが将棋より圧倒的にコンピュータには難しい、とされている)であっさり世界チャンピオンを打ち負かし、もはや英語を学ばなくてもいいのではと言われるまでの機械翻訳を実現した最新の機械学習と、ボナンザに優勝をもたらした旧世代の機械学習の間には大きな違いがある。それは「何が似ているか」の基準を人間が決めない、という点である。

 

自動運転も、機械翻訳も、コンピュータ囲碁や将棋も、正誤がはっきりしている。どれも機械学習の方法は同じで膨大なデータから学んで正解を類推する。その時、「膨大なデータのうち、どれが今解くことを求められている問題に最も近いか」という判断を、最新の機械学習ではコンピュータ自身が行う。

なぜ、そんなことが可能かというと、こんな方法をとるからだ。まず、コンピュータは提示された、車外の風景、英語、あるいは、囲碁や将棋の局面ともっとも似ているものを手持ちの膨大なデータから探すための「何が似ているか」の基準を勝手に決める。当然、全くうまく行かない。そこでその基準を「わずかに」変更する。もし、この変更が結果を改善したら、その変更を取り入れ、だめだったら棄却して、別の変更を試す。

こんな方法で正解(=もっとも適切な「何が似ているか」の基準)に到達しようとしたら膨大な時間がかかるだろう。だが、計算機の速度も圧倒的に速くなり、メモリー空間(同時並行で演算に使える記憶空間の広さ)も膨大な大きさになって、このとんでもないタスクをこなすことができるようになった。その結果が、我々が目にしている驚異的なAI=機械学習の性能なのである。

 

考えるより過去に学ぶ

 

 

この「人間が考えるより過去のデータに似たものがあるかどうかを探すことに徹する」という方法が、人間が頭を使わないとできないと信じられていたこと(の一部)をあっさり達成したことは驚きをもって迎えられた。

一方でこれは「知能の実現」という従来のAIの目的からしたら邪道である。機械学習は「学んでいるだけ」で考えてはいないからだ。

同時に、「何が似ているか」さえもコンピュータが考える最新の機械学習では、「なぜその正解に至ったか」の説明はない。我々はなぜか事故を起こさない自動運転、なぜか素晴らしい日本語訳を作ってくれる機械英語翻訳ソフトウェア、なぜか世界チャンピオンに勝ってしまうコンピュータ囲碁ソフトを手に入れることができる(できた)だろう。

だが、そこに解釈も理解も存在しない。チャンピオンを打ち負かす一手をコンピュータが打っても、なぜ、その一手を打ったのかは当のコンピュータにも説明できない。

 

後々、このことは問題になる。だが、その話をする前に、次回は簡単な例を用いて実際に機械学習がやっていることを体験しよう。

AI=機械学習とは何か(Ⅱ)に続きます>

※本稿は筆者が中央大学学員会(OB会)学術講演会で行った講演、「AI(人工知能)の過去・現在・未来―AIは人間を超えるのか―」に基づいている。同講演で使用したプレゼンテーションと講演ビデオはhttp://www.granular.com/gakujutsu/で公開されている。

 

この原稿の記述は機械学習についての知識がほぼゼロである聴衆を想定したものであり、ある程度、知識がある読者には物足りなく、あるいは、不正確な記述が目につくかもしれない。以下、いくつかの補足情報を付記する。

 

ボナンザが「過去のデータをみて、似たものを探して次の一手を決めた」という言い方はかなり単純化した表現である。詳しいことは

https://ja.wikipedia.org/wiki/Bonanza

に書かれている。

 

また、ボナンザ開発の詳しい経緯は開発者自身が以下に述べている。

https://doi.org/10.3175/molsci.6.A0050

ABOUTこの記事をかいた人

田口 善弘

田口 善弘

中央大学理工学部物理学科教授
東京工業大学理工学研究科博士後期課程物理学専攻修了、理学博士。 専門はバイオインフォマティクス。