Googleの開発した囲碁のAI「Alpha碁」が韓国の天才棋士イ・セドルを破ったことが話題になっています。
特にニュースピックスのコメント欄が凄い湧いてるんだけど、わたしのFacebookのタイムラインはそんな出来事なかったかのように静か。情報感度の高低による温度差があるなあ、と思ってみたり。…って、昨日の二段階認証といい、わたし、自分のFacebook上の「友達」をdisってばっかだな…。
こんな記事まで書いてしまった身としては
今回の対局についてはその結果以上に、この「Alpha碁」がどのようなAIなのかに非常に気になってしまいました。で、調べてみたところ、GoogleJapanのブログにこんなことが書かれていました。
囲碁において、可能性のあるすべての指し手に対して探索木を割り当てる従来の AI 方式は通用しません。今回の挑戦を始めるにあたり、私たちはモンテカルロ木探索とディープニューラルネットワークを組み合わせた AlphaGo (アルファ碁) というシステムを新たに開発しました。
Google Japan Blog : AlphaGo: マシンラーニングで囲碁を
関係ないけど、この元記事、Alpha碁とイ・セドルの対局直前の今年の1月末に書かれたものですが、行間の端々から今回の対局への自信が伺えます(笑)。
囲碁のAIに革命をもたらしたモンテカルロ木探索
Alpha碁に話を戻すと、まず、モンテカルロ木探索とは2008年に9路盤でプロの棋士に勝利した画期的なアルゴリズムです。
元々、囲碁は将棋やチェスよりも遥かに手数が多い上に、そのルール上、将棋やチェスで培ってきたAIのアルゴリズム(ボナンザメソッドなど)が応用しづらいという点にその開発の難しさがありました。
というのも、将棋やチェスの場合、ある局面で考えられるそれぞれの手について、良手悪手が比較的わかりやすく、点数を付けやすい一方、囲碁の場合は将棋やチェスと比べて局面以外にも、盤面全体を見据える必要があり、ある箇所では良い手でも盤面全体で言うと、それほどでもない、ということがあったりで、点数配分(評価関数)の設定が非常に難しいのです。
実は、モンテカルロ木探索では、こうした評価関数の設定は行いません。その局面から考えられる手を、その手の意味や得点などを考えずに、ランダムに何パターン(もちろん、数百とか数千とか言うレベルではない)も終局まで打っていき、その中で最も勝率の高い手を選んでいくのです。
どういうことかという、ある場面で、Aという手からランダムに最後まで打った結果と、Bという手からランダムに最後まで打った結果がそれぞれ100ずつあるとします。Aから始めた結果は60勝40敗、Bから始めた結果は40勝60敗だったとすると、AIはBよりもAの方が良い手と判断するのです。
上の説明は、非常に初期のモンテカルロ木探索で、現在のモンテカルロ木探索では他のアルゴリズムも駆使しているようですが、ただ、全手読むわけではないにしろ、いくつもの手を終局まで打つわけですから、かなり力技、つまり、計算力重視なAIであることは素人でもわかります。
モンテカルロ木探索についてはモンテカルロ法(リンク先PDF 参照:エンターテイメントと認知科学研究ステーション)がわかりやすいです。
人間の脳構造を模倣するディープラーニング
一方のディープニューラルネットワークとは、近年の人工知能研究に革命をもたらしたディープラーニングのことです。
ディープラーニングの特徴は、人間の脳の構造をソフトウェア的に模倣していること、そして、それにより膨大なデータからAI自身がそのデータの特徴を発見できることにあります。
AI自身がデータの特徴を発見するとは、大量の画像をディープラーニングによってAIに機械学習させると、人間が教えなくても、猫の特徴や人間の顔の特徴を掴むようになったりすることを言います。
このように、人間が教えなくても、猫や人間の顔の特徴をつかむことができる、ということは、すわなち、AI自身が猫や人間の顔の「概念」を獲得していることを意味します。
ここでいう概念とは、なんとなくわかる、というのが人間的な感覚として一番近いと思います。猫や犬のことも、わざわざ言葉でくどくど説明したりされなくても、みんな、猫や犬がどういうものかなんとなくわかっている。
まだ猫や犬のこと知らないような子供に、これは猫なんだよ犬なんだよ、と教えると、「猫とはこうこうこういう動物で、犬とはこうこうこういう生き物で」という説明をしなくても、ごく自然に、猫や犬を猫や犬として認識するようになります。これは、子供が、生まれて成長していく過程で様々な情報に触れることにより、猫や犬の概念を得ているから可能なのです。
ただ、こうして「なんとなくわかる」には、言葉にしきれないくらいの大量の情報から、それらの特徴を掴んでいないとできません。逆に言えば、大量の情報から特徴を掴んでいるので、人間の意識の上では処理しきれず、人間的な感覚では「なんとなく」になってしまうわけです。
まとめると、人間が成長の過程で自然と吸収して得る大量の情報により概念を獲得していくのを真似て、AIはディープラーニングにより概念を獲得しているわけです。
性能が向上した以上のインパクト
機械らしい計算力に物を言わせるモンテカルロ木探索と、人間の脳構造に近い形で機械学習をさせるディープラーニングの組み合わせがAlpha碁という人工知能。そりゃ強いよ、という話です。
わたしは人工知能に興味はあるもののあくまで素人、なので、きちんとわかっているわけではないですが、Alpha碁は、ディープラーニングによって得た「囲碁の概念」により、特に対局の序盤では「なんとなく」盤面全体の良し悪しを判断し、手が進み打てる手が減れば減るほどモンテカルロ木探索を活かしているのではないでしょうか。
そう考えると、今回の対局で序盤から中盤にかけてはイ・セドルの方が優勢だったが、中盤から終盤にかけてAlpha碁の方が優勢になっていたこととも、個人的に整合性が取れるのですが、実際のところどうなんでしょうかね。
実は、これまで人間に勝ってきた将棋やチェスのAIというのは、ディープラーニングがほとんど利用されていませんでした。
一方、今回のAlpha碁は、GoogleJapanのブログでも明言されているように、ディープラーニングによる機械学習によりその性能を向上させたことが明言されています。
よって、今回の勝利はこれまでのAIの勝利とは全く違う、ディープラーニングという機械学習の凄さをも証明したという点で、AIの性能がより高まった以上のインパクトがあるといえます。
GoogleJapanのブログで、囲碁以外にも応用できると書かれていますが、このようにディープラーニングにより実際に人間を超える性能を見せられると、それも納得せざるをえません。
まあ、いずれにせよ、わたしはドキドキ・ワクワクしながら、わたしの社労士としての仕事を奪う日まで、AIの進化を応援したいと思います。