松尾豊『人工知能は人間を超えるか』

 (KADOKAWA、2015.3)

 近年、人工知能の研究がすすんだことで、人間の職がなくなるのでは?(働かずに暮らせたらそれでいいじゃん)とか、人間よりずっと賢い(とは?)人工知能ができてしまうのでは?(もしできたとしてなにか問題があるの??)といった話がいわれるようになってきた。この本は、そのような話に対して、人工知能の研究者である著者が、いままでの研究の成果や現状について書いている。出版が2015年だから、残念ながらAlphaGoとかの話はでてこない。

 題名とか表紙のテンションから、この本を信頼してだいじょうぶかしら、と思ったり*1もしたけれど、入門的なことをわかりやすく説明してくれていてありがたかった。技術の進歩とか、もののしくみの話とか、どきどきするよね。以下本に書いてあったことより。

 

  

人工知能とは?


 まず、人工知能とは何か、ということも専門家の中でいろいろある。人間の知的な活動の一面をまねしているものも、世の中で人工知能とよばれたりするからややこしい。専門家の見解の中で紹介されているものからいくつか取ってくると、次のようなものがある。
「人工的につくられた、知能を持つ実体。あるいはそれをつくろうとすることによって知能自体を研究する分野」(中島秀之)
「「知能を持つメカ」ないしは「心を持つメカ」」(西田豊明)
「人間の頭脳活動を極限までシュミレートするシステムである」(長尾真)
「知能の定義が明確でないので、人工知能を明確に定義できない」(浅田稔)
松尾の定義は、「人工的に作られた人間のような知能、ないしはそれをつくる技術」である。浅田によって触れられているように、知能とは?とか心とは?とか言い出すと、もうそれだけで一つの研究なので、人間のような、と設定するのはまあまあ現実的だろう*2同じく知能を扱おうとしている脳科学との対比がわかりやすい。人工知能研究者は、知能を構成論的に(実際に作ってみることによって)理解しようとしているのに対し、脳科学者は知能を分析的に理解しようとしているわけだ。

 
 ここにあるのは、「人間の知能は、原理的にはすべてコンピュータで実現できるはずだ」という前提である。

人間の脳の中には多数の神経細胞があって、そこを電気信号が行き来している。脳の神経細胞の中にシナプスという部分があって、電圧が一定以上になれば、神経伝達物質が放出され、それが次の神経細胞に伝わると電気信号が伝わる。つまり、脳はどう見ても電気回路なのである。脳は電気回路を電気が行き交うことによって働く。そして学習をすると、この電気回路が少し変化する。
電気回路というのは、コンピュータに内蔵されているCPU(中央演算処理装置)に代表されるように、通常は何らかの計算を行うものである。(パソコンのソフトも、ウェブサイトも、スマートフォンのアプリも、すべてプログラムでできていて、CPUを使って実行され、最終的に電気信号を流れる信号によって計算される。)

 脳でやってることが計算なのであれば、それはコンピュータで実現できると考えられ、人工知能研究はこれを実現しようとしている。この目的からすると、現在の研究レベルはゴールにはほど遠い。人工知能はまだできていないのだ。

 
 また、上に紹介した研究者たちの「人工知能」の定義は、どちらかといえば達成目標のような趣があるが、すでに「人工知能」と呼ばれているものは存在している。
レベル1として、「単純な制御プログラムを「人工知能と称している」もの。ただのマーケティングだ。
 レベル2は、「古典的な人工知能」。古典的、というのは、人工知能の研究史において、ということだろう。例えば将棋のプログラムや質問応答などである。「入力と出力を関係づける方法が洗練されており、入力と出力の組み合わせの数が極端に多いものである」。
 レベル3は、「機械学習を取り入れた人工知能」である。レベル2では、人間が入力と出力を対応させる複雑なルールを頑張って考えて、それに従って機械が処理をしていた。機械学習では、この入力と出力を関係づける方法を、データを与えることで機械が学習してくれる。

 さらにその上でのレベル4は、「ディープラーニングを取り入れた人工知能」であるという。「ディープラーニング*3というのは機械学習のやり方のひとつの、最近発展してる分野で、コンピューターが与えられたデータにおけるどの変数を重視するか、というところまで学習してくれるものである。この本の中で「ディープラーニング」は、「特徴表現学習」とも呼ばれている。ディープラーニング(特徴表現学習)はとても大きなインパクトをもたらしたので、この本の中で機械学習と並べて述べるときもあるが、ディープラーニング特徴表現学習)は、機械学習の研究の一部であると筆者も強調している。

 この本の中では、「人工的に作られた人間のような知能、ないしはそれをつくる技術」という松尾自身による「人工知能の定義の中にレベル2~4ぐらいまでは含まれている様子で言葉が使われている。研究の達成という意味では「人工知能はまだできてない」けれど、すでに開発されたものを「人工知能」と呼ぶこともあるみたいでちょっとややこしい。

 

三度のAIブーム

 人工知能研究とはどういうものかが少し整理され、第二章以降ではこれまでの研究の流れの紹介がされていく。

人工知能研究は、これまで「ブーム」と「冬の時代」を繰り返してきた。
(中略)
ざっくり言うと、第1次AIブームは推論・探索の時代、第2次AIブームは知識の時代、第3次AIブームは機械学習と特徴表現学習の時代である

  第1次AIブームは、50年代後半から60年代。「人工知能Artficial Intelligence)」という言葉は、1956年のワークショップで初めて登場した。ここでデモンストレーションされた「ロジック・セオリスト」というプログラムは、自動的に定理を証明するもので、初の人工知能プログラムといわれている。

 第1次のブームで中心的な役割を果たした「推論」や「探索」という処理は、探索木(たんさくぎ)を用いた場合分けによってなされる。場合分けのやりかたーーどの順番で探索木を広げるかーーにも効率のよい悪いがある。メモリの制約と、解へたどり着く手数とのバランス、膨大な組み合わせの枝同士の評価方法などが研究された。当時探索の研究で行われたのは、迷路やパズルを解くことや、オセロや将棋等のゲームへの挑戦などである。これらの課題はみな、選択肢が限定された条件下での場合分けに還元することができるものだ。

1960年代に花開いた第1次AIブームでは、一見すると知的に見えるさまざまな課題をコンピュータが次々に解いていった。さぞかしコンピュータは賢いのだろうと思われたが、冷静になってかんがえてみると、この時代の人工知能は、非常に限定された状況でしか問題が解けなかった。(中略)現実の問題はもっとずっと複雑だった。

 いわゆるトイ・プロブレム(おもちゃの問題)しか解けないことが明らかになるにつれ、人工知能への失望が広がり、1970年代に冬の時代を迎えてしまう。

 

第2次AIブーム : 知識


 1980年代に再び勢いを取り戻した人工知能ブームを支えたのは「知識」である。

たとえば、お医者さんの代わりをしようと思えば、「病気に関するたくさんの知識」をコンピュータに入れておけばよい。弁護士の代わりをしようと思えば、「法律に関するたくさんの知識」をいれておけばよい。そうすると、迷路を解くというおもちゃの問題ではなく、病気の診断をしたり、判例に従った法律の解釈をしたりという現実の問題を解くことができる。これは確実に賢くなりそうに思えるし、また実用的にも使えそうだ!

 このような、「ある専門分野の知識を取り込み、推論を行う」人工知能は「エキスパートシステム」と呼ばれた。「ある専門分野の知識を取り込み、推論を行う」と擬人的な言い方をしているが、もしAならばB、AでなければCといった推論(場合分け)の前件や後件をコンピュータに与えるということだ。先ほど登場したレベル2の人工知能である。仕組みとしてはけっこう想像しやすい。

 しかし、これを実行するのは大変なことだった。ある専門分野の知識を取り出して形式的に記述すること、そうして得られた条件文(ルール)が矛盾なく一貫するように維持管理することが必要になってくる。高度で限定的な専門分野においてならまだいい。問題系がより広汎になってくると、人間なら誰でも持っているような常識的なーー人間には手と足が二本ずつある、だとか、人間は哺乳類である、等々ーーの知識も、あらかじめコンピュータが知って(つまりはルールの形で登録されている)いなければならない*4私たちが当たり前だと思っている知識の量も、それを形式的に記述することも、膨大な道のりなのだ。だんだん形式意味論みたいな沼にはまってきた。
*5


 第2次AIブームでは、知識を入力することで、コンピュータが産業的にも大いに利用できることが分かったものの、その知識記述の困難さ、またフレーム問題やシンボルグラウンティング問題などから、人工知能の実現には大きく疑問符がついてしまった。


 人工知能のフレーム問題、シンボルグラウンディング問題は、どちらも人工知能における難問として知られている。ある状況・目的において、人工知能はいかにして「関係ある知識だけを取り出して」使い、関係のないものを無視すればよいのか、というのがフレーム問題である。この問題が乗り越えられない限り、コンピュータが十分に知識をもっていたとしても、持っていたなら余計に、あるタスクを実行する際に適切な知識・動作を選び取ることが困難になるだろう。
 記号体系と現実の、あるいは概念との対応ーー「記号をその意味するものと結びつけることができない」というのがシンボルグラウンディング問題である。近年では、ワソトンという質問応答を行う人工知能がクイズ大会で優勝したり、グーグルによる機械翻訳の技術が発展したりしているが、もちろんこれらのシステムは、質問の"意味"が分かって解答を選んでいるわけでも、文章の"意味"が分かって翻訳文を生み出しているわけでもない。事前のデータや計算の結果によって得られた一番確率の高いものを出力しているだけである。シンボルグラウンディング問題は身体性ーー「外界と相互作用できる身体がないと概念はとらえきれない」という観点とともに研究されている。


 90年代*6からは再び冬の時代となり、人工知能への風当たりはきわめて強かったという。しかしその頃、90年には初めてウェブ上にページができ、93年には初期のウェブブラウザ「モザイク」が、98年にはグーグルの検索エンジンが登場するなど、ウェブページの世界は大きく発展していた。このようなウェブによるデータの増加、またパターン認識の分野で蓄積されてきた技術が、「機械学習(Machine Learning)」の研究の土台となり、2010年代の第3次AIブームへとつながっていく。

 

第3次AIブーム : 機械学習

 

機械学習とは、人工知能のプログラム自身が学習する仕組みである。
(中略)
人間にとっての「認識」や「判断」は、基本的に「イエスノー問題」としてとらえることができる。この「イエスノー問題」の精度、正解率を挙げることが、学習することである。・・・
機械学習は、コンピュータが大量のデータを処理しながらこの「分け方」を自動的に習得する。
(中略)
機械学習は、大きく「教師あり学習」と「教師なし学習」に分けられる。
「教師あり学習」は、「入力」と「正しい出力(分け方)」がセットになった訓練データをあらかじめ用意して、ある入力が与えられたときに、正しい出力(分け方)ができるようにコンピュータに学習させる。(中略)一方、「教師なし学習」は、入力用のデータのみを与え、データに内在する構造をつかむために用いられる。データの中にある一定のパターンやルールを抽出することが目的である。

 コンピュータによってある一群の対象を「分ける」というのは、対象を座標空間の上の点として配置して(つまり、対象をいくつかの観点に基づくデータの結合としてモデル化する)これら空間上の点の一群を切り分けるときにどんな線や面を使ったらいいか・・・といった作業になる。学習の仕方にも、教師あり/なしという違いがあるが、空間上の点としてモデル化した入力群をどのように分けるか、という方法にもいろいろなものがある(もちろんモデル化の仕方にもいろいろある)。

 機械学習の中で有望な分野とされているニューラルネットワークNeural network)は、人間の脳神経回路のモデル化が研究の源流である。ニューラルネットワークは、この機械学習の方法のうちのひとつであるが、第四章以後ではほとんど機械学習といえばニューラルネットワークが用いられているものとして話が進められている。

人間の脳はニューロン神経細胞のネットワークで構成されていて、あるニューロンはほかのニューロンとつながったシナプスから電気刺激を受け取り、その電気が一定以上たまると発火して、次のニューロンに電気刺激を伝える。これを数学的に表現すると、あるニューロンがほかのニューロンから0か1の値を受け取り、その値に何らかの重みをかけて足し合わせる。それがある一定の閾値(しきいち)を超えると1になり、超えなければ0になる。それがまた次のニューロンに受け渡されるという具合である。
(中略)
一連の流れの中で肝となるのは重みづけで、人間のニューロンが学習によってシナプスの結合強度を変化させるように、学習する過程で重みづけを変化させ、最適な値を出力するように調整することで、精度を高めていく。

 

 データからニューラルネットワークを作る「学習フェーズ」では、ニューラルネットワークの出力と、教師データの正解とをくらべて、出力が正解に近づくようにノード間の重みづけを調整する、という作業をひたすら繰り返す。この作業には数秒から、長いときには数日間かかることもあるという。できあがったニューラルネットワークを使って正解を出す(「予測フェーズ」)のは一瞬だ。先に述べたエキスパートシステムとは異なり、機械学習では、入力データ、入力データと正しい出力データの用意によっていくらでも新しい仕事ができる。
 しかし、この入力のデータとして何を用いるのかは人間が選ばなくてはならなかった。「特徴量(引用者注:「機械学習の入力に使う変数のこと」)をどうつくるかが機械学習における本質的な問題」であったのだ。すると最終的には、機械学習の、特徴量の設計は長年の知識と経験に基づいた職人技になってしまう。最後はコンマ何%程度の性能の違いを競うようなものになってしまい、「研究としてはあまり面白くないところだ」。

 

ディープラーニング


 ところが2012年、世界的な画像認識のコンペティションで、「ディープラーニング(深層学習)」という新たな機械学習の方法によるカナダのトロント大学が、他の人工知能を10ポイント以上引き離して圧勝したのだ。それまでの画像認識の職人技ではない、まったく新しいところからの参入であっただけに、トロント大学の圧勝は大きな衝撃となった。ディープラーニングというのは、層が深いニューラルネットワークである。*7松尾はこれを、「人工知能研究における50年来のブレークスルー」だという。
 では、ディープラーニングになったら何がそんなにすごいのか。ディープラーニング以前の機械学習では、特徴量をどういう風に選ぶのか、ということ(特徴量設計)は人間が考えることで、「機械学習の本質的な問題」であったことは前にも述べた。例えばネコの画像を認識する人工知能を作るためには、ネコ画像のネコ性をよくあらわす(もちろん数値的に)特徴の取り出し方を考えなくてはならなかった。しかしディープラーニングでは、画像そのものから、それらの画像を扱うための特徴を抽出することができる。*8ディープラーニングでは、画像のピクセルなどの、たくさんの変数の相関関係を分析し、少数個の変数に縮約する、ということが行われている。

相関のあるものをひとまとまりにすることで特徴量を取り出し、さらにそれを用いて高次の特徴量を取り出す。そうした高次の特徴量を使って表される概念を取り出す。
・・・
ディープラーニングの登場は、少なくとも画像や音声という分野において、「データをもとに何を特徴表現すべきか」をコンピュータが自動的に獲得することができるという可能性を示している。簡単な特徴量をコンピュータが自ら見つけ出し、それをもとに高次の特徴量を見つけ出す。その特徴量を使って表される概念を獲得し、その概念を使って知識を記述するという、人工知能の最大の難関に、ひとつの道が示されたのだ。

*9

 

   *


 人工知能研究のちょうどいま来ているあたりまでを説明したところで松尾のボルテージも高まっている。そもそも人間が概念を獲得しているとはどういう状態なのか、という哲学的議論もあるけれど、一般的な類に妥当するものとしないものを弁別できるような抽象的特徴量を獲得している人工知能は概念を獲得している!と言いたくなる感じは分かる。


 第六章からは、将来人工知能がどうなるだろうか、という話がされている。この本自体は第六章と終章とがあってもう少しつづくけれど、わたしが筆者のテンションに乗れなくなってきたこと・人工知能研究の現時点までのことを知りたいという目標とはあまり関係ない箇所であったことなどから、まとめるほどのやる気は生まれなかった。

 松尾による今後の展望があって、なるほどな~と思ったので下にそれだけ引用しておわり。

1画像からの特徴表現と概念の獲得
2マルチモーダルな(引用者注:画像ーー視覚以外の、聴覚や触覚、また時間など、複数の感覚のデータを組み合わせて扱う)特徴表現と概念の獲得
3「行動と結果」の特徴表現と概念の獲得
4一連の行動を通じた現実世界からの特徴量の取り出し
5言語と概念のグラウンディング
6言語を通じての知識獲得(人間を超える?)

 

(2017.10.30)

*1:人間らしい(問題解決能力や創造性、知能や心を持つとか?)ことが何かしら神聖であると思ってるのが一般の認識だよね、という感じで書いてあるので時々ふうん??と思ってしまう。機械学習を専門にしている知人に勧めてもらわなければ、手にとっても戻したと思う。

*2:松尾は、「人間のように知的であるとは「気づくことのできる」コンピュータ、つまりデータの中から特徴量を生成し現象をモデル化することのできるコンピュータ」と定義している。それは知能の一部の説明になっているだろうが、全部ではないようにも思われるが

*3:日本経済新聞のめちゃくちゃ煽りに見える広告を思い出してしまってよくない。この辺の、普通に学問の用語だったはずの言葉たちは、いろんなところに引っ張り出されて語感だけのチープなものにされてしまってすごいかわいそうだ

*4:1984年、人間の持つすべての一般常識をコンピュータに入力しようというCycプロジェクトと呼ばれるプロジェクトがはじまった。このプロジェクトは三十年以上経ったいまでも続いている。

*5:ここから知識を記述するということそれ自体を研究するオントロジー(ontrogy)研究へつながっていく。オントロジーとは、哲学では存在論のことをいうが、人工知能の用語としては「概念化の明示的な仕様」と定義されるということだ。

オントロジー研究によって、知識を適切に記述することがいかに難しいかが明らかになり、大きく分けて2つの流派ができた。
私の解釈でざっくり言うと、「人間がきちんと考えて知識を記述していくためにどうしたらよいか」を考えるのが「ヘビーウェイト(重い)・オントロジー派と呼ばれる立場であり、「コンピュータにデータを読み込ませて自動で概念間の関係性を見つけよう」というのが「ライトウェイト(軽い)・オントロジー派である。

  後者はインターネットやビックデータと相性がよく、セマンティックウェブ、あるいはLinked Open Dataの研究へ展開されている。このようなライトウェイト・オントロジーの流れから、2011年にはIBMによって「ワソトン」という人工知能が開発されている。従来あった質問応答の手法と、ウィキペディアの記述をもとにしたオントロジーが組み合わせられている。ワソトンはアメリカのクイズ番組で優勝し、脚光を浴びた。(当然ながら、ワソトンは質問を理解して答えているのではなく、質問に関連してもっとも確からしいキーワードを引き出しているだけである。)

*6:海外では87年頃から、日本では95年頃からだという

*7:ニューラルネットワークが研究されはじめた時点でディープラーニングも作られてよかったように思える。しかし、実際やってみると、学習がうまくいかなかったり、逆に教師データを学習しすぎて未知のデータをうまく分類することができなかったりした。ネットワーク構造や学習のさせ方を改良することによって、多層のニューラルネットワークを学習させることが可能になってき

*8:これはディープラーニングの仕組みによってそうなっているのだけれど、私の現時点の言語能力と理解度の問題でそれを説明することから撤退しました、あしからず。

*9:

ところが、その実、ディープラーニングでやっていることは、主成分分析を非線形にし、多段にしただけである。
 つまり、データの中から特徴量や概念を見つけ、そのかたまりを使って、もっと大きなかたまりを見つけるだけである。何てことはない、とても単純で素朴なアイデアだ。


主成分分析は、多くの変数を合成することで少ない変数でデータを表す手法で、アンケートの分析やマーケティングなどで、一般的に用いられている手法だ。ディープラーニングの実現前から、「どう考えてもこのやり方しかない」という試行錯誤が行われながら、どうしてもうまくいかなかった、と書かれている。いろんな人が悔しかったのだろうな。