先般HONZで紹介した冨山和彦氏の『AI経営で会社は甦る』では、AI(人工知能)がこれからのビジネスに与える影響が分かりやすく示されていたが、この『人工知能はどのようにして「名人」を超えたのか?』は、AIの研究者自身によるAIの解説本である。
チェスと将棋と囲碁を例に取り上げ、AIにおいて最も重要な技術である「機械学習」「強化学習」「ディープラーニング(深層学習)」などの本質を説明しており、難解なものが数多あるAIの解説本の中で、最も分かりやすいものに仕上がっている。
従って、この2冊さえ読破すれば、今のAIの動きに関する実践編と理論編の両方が十分カバーできると思う。
去る4月1日と5月20日に、第2期電王戦(ドワンゴが主催するプロ棋士とコンピューター将棋ソフトウェアとの非公式棋戦)の第1局と第2局が開催され、コンピューター将棋ソフトponanza(ポナンザ)が佐藤天彦名人に2連勝した。ポナンザは第1期で山崎隆之八段に2連勝しており、電王戦は進化を遂げたコンピューターソフトが人間に圧勝する形で幕を閉じた。このポナンザを開発したのが、AIの技術を活用したサービス開発などを行うHEROZのリードエンジニアであり、本書の著者でもある山本一成氏である。
IBMのコンピューター・ディープブルーがチェスの世界チャンピオンに勝ったのが1997年のことだが、それからコンピューターが将棋で名人に勝てるようになるまでに20年かかっている。囲碁の世界では、まだコンピューターは最強の人間に勝利を収めていないが、グーグル傘下のディープマインド社が開発した人工知能コンピュータソフト・アルファ碁は、2016年に世界トップクラスのプロ棋士であるイ・セドル九段に勝つレベルにまで到達している。
そこで自分のようなAIの素人が直感的に思うのは、「将棋はチェスよりも存在可能な局面が多いから難しいのではないか?」ということである。しかし、著者に言わせると、この推論は間違っているという。将棋がチェスに比べて、存在可能な局面の数が多いのは間違いないが、いずれにしてもその局面の数はとてつもなく大きく、局面の大小だけで難しさが説明できる訳ではないということのようだ。
存在可能な局面の数をゲーム毎に(通常言われている数で)示すと次のようになる。
オセロ:10の60乗
チェス:10の120乗
将棋:10の226乗
囲碁:10の360乗
いずれも数が大き過ぎて実感として理解できないかも知れないが、観測可能な宇宙にある全ての原子を数えると凡そ10の80乗個になると言われている。Google(グーグル)の社名の由来になっている10の100乗を表すgoogol(グーゴル)という言葉があるが、宇宙の原子の総数はこの1グーゴル個よりも少ないということになる。
これほどの数であるから、一番簡単なオセロであっても、ある局面でどんな手を指せばベストなのかが分かり、そもそもゲームのスタート前に、先手が勝つか、後手が勝つか、引き分けになるのかが分かるという「完全解析」(全ての手順をコンピューターで解析して必勝法が解明できている状態)にまでは至っていないという。
とすると、将棋の何がチェスよりも難しいのか、なぜ将棋の方が人間に勝つのが難しいのかだが、その答えは、コンピューターがチェスを完全解析できるからではなく、局面の良し悪しを測る基準がチェスは将棋よりも明確で、コンピューターにとって計算しやすいからだという。
もう少し噛み砕いて言うと、チェスは将棋に比べて機動力が高い駒がほとんどで、逆に将棋は足が遅い駒がほとんどで、チェスの駒は盤面のどこかで緊急事態が生じても、直ぐに現場に駆けつけられるが、将棋の駒はなかなか駆けつけられないため、チェスでは駒をどれだけ盤面に残存させているかが局面の良し悪しに直結する一方、将棋の場合には、駒が良い配置にあることが局面の良し悪しに直結するという。
将棋の指し手を評する言葉として、「味がいい」「手厚い」「重い」といった複雑なニュアンスのものが数多くあり、将棋は論理的に局面の良し悪しを述べることが難しい。これに輪をかけて専門用語の意味を捉えるのが難しいのが囲碁だそうだ。
そこで、プログラマ達が何をしたかと言うと、コンピューターが自分自身で将棋の知識を獲得するようにプログラミングして、コンピューターを強化することを始めた。
ここで先ず出てくるのが、「機械学習」(Machine Learning)である。これは、開発者が予め全ての動作を決めておく従来型のプログラムとは異なり、与えられた情報を元に学習し、自律的に法則やルールを見つけ出す手法やプログラムのことである。
データから反復的に学習し、そこに潜むパターンを見つけ出し、学習した結果を新たなデータに当てはめることで将来を予測するという、人間が自然に行っている学習能力と同様の機能をコンピューターで実現する。
機械が答えを出すための手法を人間がプログラムとして与えるのではなく、機械が自動的に膨大なデータから学習してモデルを作る、つまり、どう判断するかを人間が教えないでも機械が自分で学ぶことから、機械学習と呼ばれている。
機械学習の手法には大きく分けて、①教師あり学習、②教師なし学習、③強化学習の三つがある。
「教師あり学習」(Supervised Learning)とは、問題(入力)と答え(出力)をセットで入力データとして与える方法で、例えば、画像認識では、入力画像それぞれに、例えば人、車、風景などのラベルを与える。教師データが十分あるのであれば、最も実用に適した方法である。
「教師なし学習」(Unsupervised Learning)とは、入力データは存在するが、それが何かという正解が予め決まっていないという点でより曖昧な問題設定であり、データの背後に存在する何らかの構造や法則を見出すために用いられる手法である。予め正しい出力は与えられていないため、何らかの基準を設けてそれを最適にするような出力を求めることになる。
「強化学習」(Reinforcement Learning)とは、ある解決すべき課題に対し、より正しい結果を得るため、試行錯誤を通じて選択された行動によって得られる報酬が最大化するよう学習を強化しながら進める方法である。チェスや将棋や囲碁などのゲームを学習させることに適している。
こうした機械学習の分野で、大きなブレイクスルーを起こしたのが、「ディープラーニング(深層学習)」(Deep Learning)である。これは機械学習の一種であるが、機械学習よりも一歩進んだ技術で、多層構造のニューラルネットワークと呼ばれる人の神経系の挙動を模して学習できるようにデザインされたものである。
機械学習とディープラーニングはともに共通して、ビッグデータから法則やルールを見つけ出すという特徴を持っているが、機械学習ではビッグデータから学習を行う際には、人が何を学習するかを予め定義してやる必要がある一方で、ディープラーニングでは学習する事柄も自分自身で見出して動作をするという違いがある。
ディープラーニングによって汎用人工知能(Artificial General Intelligence)の実現が期待されており、著者によれば、今後、「言葉」と「音声」と「画像」がディープラーニングの大きな応用先になると言う。
ここでAIと機械学習とディープラーニングの関係を大まかに整理すると、先ず大きなAIの枠組みがあり、その中に機械学習の部分があって、更にその中にディープラーニングの部分があるという関係になっている。つまり、ディープラーニングというのは、現在のAI開発の中核をなしている部分なのである。
ディープラーニングがなぜ「ディープ」と呼ばれるのかは、人間の脳の神経回路の仕組みを模したモデルであるニューラルネットワークの構造に由来する。ニューラルネットワークは大きく3つの層(入力層、中間層、出力層)に分けられ、入力データは入力層を通り、中間層、出力層を通過して処理され、出力結果が得られる。
機械学習では、入力に対して出力を決める処理を行うが、1段階だけで複雑な判断をさせることは難しい。そこで、こうした処理の結果を更に処理するという、複数の階層的な処理によって複雑な判断をできるようにする技術であることから、深層学習=ディープラーニングと呼ばれている。
ディープラーニングは、特に中間層が2層以上のネットワークを対象にした学習手法のことであり、これら数層で学習するべきパラメータ数は大幅に増え、学習の難易度も向上する。1段階の処理では簡単な結果しか導き出せないが、この処理の層が深くなる(ディープになる)ことで複雑な処理が行えるというのが、ディープラーニングの考え方である。
本書の中で最も驚きだったのが、誕生から10年が経ち、ディープラーニングが著しく複雑化した結果、一定の規模のディープラーニングでは、もう全体がどのような理屈で動いているかを明確に説明できる人がいなくなっているということである。
つまり、ディープラーニングは、最早、その存在自体が実態の見えない「黒魔術」のようになっていて、既にこの「黒魔術」という言葉は機械学習の世界でもスラングとして定着していて、どうやって生まれたのか、或いはなぜ効果が出るのか分からない技術の総称となっているのだそうだ。
ここまで来ると、自分のような素人にはAIが自律的に暴走を始めるターミネーターのような世界を想像してしまうが、本当のところはどうなのだろうか。ここで言う「黒魔術」が、単に複雑過ぎて説明がつかないというだけのことなのか、或いは最早、自律的な存在として人間の手を離れてしまったということを意味しているのか。
哲学にとっての最大の難問である心の問題も、単なるニューロン(神経細胞)やシナプスの化学反応に過ぎない脳の働きが、身体を超えた心を生み出しているように見えるのは、そこに「黒魔術」的なものが存在するからなのか、或いは千数百億個と言われるニューロンからなる脳の働きが、余りにも複雑過ぎて人間には説明できないというだけの話なのか、AIの問題とパラレルに考えてみると非常に興味深い。
冒頭に著書を紹介した冨山氏は、「AIが将棋で勝って大騒ぎしていることに驚く」(日経ビジネスオンライン)の中で、次のように述べている。
囲碁や将棋でAIが人間に勝ったという話は、計算テストの延長戦上のことなんですよ。ルールが決まっている勝負で、人間がコンピューターや機械に勝てるわけがない。400メートル走るのに人よりクルマの方が速いことに驚くやつはいないわけで、それと同じで将棋でAIが人に勝つのは当たり前。私から言わせれば、何で世間はそんなに驚くんだろうと。驚いていることに私は驚いているんですけど。
人工知能(AI)の行き着く先には本当に何があるのか。人工知能(AI)がもたらす未来は人間にとってのユートピアなのかディストピアなのか、シンギュラリティ(技術的特異点)の到来を早くこの目で見てみたいと思わざるを得ない。