Hatena::ブログ(Diary)

アドファイブ日記

2017-01-16

実用的観点でのAIの現状認識と未来予測(1)

人工知能ブームですね。メディアでは日々いろんなことが書かれていますが、僭越ながら現実的な現状認識と未来予測について私見を書いてみます。

全3回の連載予定で、本記事は第一回の「現状認識編」です。

僕はAIのプロの研究者ではありませんが、人工知能専攻で大学院修士を出て電気メーカに就職し、独立してAI系のフリーランスエンジニアコンサルタントをしている者、という立場での発言になります。

AIは1次データの全数処理が得意

グーグルで検索すると世界中のwebサイトから有用なサイトをリストアップしてくれるように、今のAIは「アクセス可能なサイトやデータ」の「全数」を整理・統合することが得意です。

ここで僕がいう「1次」データの「全数」が何を指しているかというと、人間なら「2次的」「3次的な」抽象的な概念化を行ったり、またデータ全数を見ずともこれまでの「常識」や本で読んだり見聞して知っている「外部知識」を使って判断しますが、AIはそうした中間概念や外部知識・常識を使わずにデータそのものから最終的な出力を直接結びつける方法を自動獲得するという点です。

言い換えると、人間は2次的、3次的な上位概念の認識・推論を行いますが、今の(実用可能な)AIは入力データとなる1次情報から最終的な出力までの間に「中間的な概念化」を明示的には行ないません。

例えば写真に写っているものを言い当てる画像認識においてディープラーニングを用いると、入力は「1次情報である写真データ」で、出力は「写っているものの名前」で、データをたくさん与えることで画像認識器は自動的に学習されるのですが、入力から出力に至るまでの途中プロセスで何か中間的な概念を得ているかどうかといったことはよくわからずブラックボックスになります。

これは、人間でも「りんごの写真」をみて「りんご」と認識する過程において何らかの理由付けを明にしているか?と聞かれたら確かに説明が難しい「直感で、りんごだと思った」といった答え方しかできないので、AIも人間と同じじゃないかと思われるかもしれません。

しかしここが今のAIの本質的な可能性と限界のあるポイントなのです。

入力と出力を直結するAI, 中間プロセスを明示化する人間

仮に写真に写っているのが「とある犯行の容疑者」だとしましょう。オフィスビルや商業ビルの「セキュリティ監視カメラ」に搭載されたAIでも良いです。これにディープラーニング適用し、精度の良いAI監視カメラシステムを学習させるにはたくさんの「1次データ」である「「写真・映像」とそこに写ってるヒト・モノが危険かどうかの「教師データ」」を与えることになります。

この学習にはかなりのデータが必要になります。危険人物かどうかを画像だけから判断するには人間が持っているような背景知識や常識が必要になるからです。今のディープラーニングは人間が持っているような「常識」のような「外部データ」や「概念」に頼らずに「1次データ」の全数をくまなく調べきることをもって予測精度の良いシステムを学習できるというだけです。

これが人間だったら、危険人物とはこういう風貌でこういう挙動をするものであるという「典型例」を「常識」として知っていたり、また逆説的に「危険でないモノやヒト」についての「常識」を知ったりすることで、判断の精度を向上させることが出来ます。こうしたことは今のディープラーニングではまだまだ発展途上で実用的には出来ません。

AIの限界と人間の限界は相補的

逆に言うとそうした概念や常識にとらわれずデータそのものをくまなくチェックすることで、(りんごなどのものを認識する)「物体認識タスク」では人間をも凌駕する認識精度を現在のディープラーニングは叩き出しています。

しかしいっぽうで、セキュリティ監視カメラのような(例外的事象や個別のケースを概念や知識を使って推論する必要性が高いような)課題では、最先端ディープラーニングをもってしてもまだまだ精度が芳しくありません。

そこで、現在の実用AIは、概念や問題の構造指定や外部知識などは個別に人間のエンジニアがシステムに(主に)プログラムを書くという形で与え、その枠組みのもとで「1次データを大量に」与えることでそのビッグデータがもつ多様性の範囲で「そのデータ全数の広がりを掴みきる」ように働きます。

グーグル検索エンジンもそういう風にできていると思います。枠組みや個別の知識グーグル検索エンジンの開発に従事するエンジニアたちが与え、その中で世界中のWebサイトグーグルBotがクローリングしまくって「1次データ」を大量に集めて学習(検索エンジンくらいだと学習というほどでもなく索引づけ程度ですが理屈は一緒です)させるわけです。

AlphaGoも一緒

AlphaGoもそういう風に作られています。

人間プレイヤの場合、色々な概念や常識を使って1次情報から派生する2次的、3次的な情報を言語化し、そして入力の1次データ(囲碁の場合は盤面ですね)から出力(次にどう打つか)を得るまでの間の中間的なプロセス他者とのコミュニケーションによって社会的に共有することで網羅的な計算資源を使わずに巧く判断の性能を上げているわけです。

しかしAlphaGoは違います。ここまで述べたように、大量の1次データと出力データの集合を与えまくることで、入力と出力を直結しただけのからくりが人間より優れた判断を行えるようにしてしまいました。

数いるプロの囲碁棋士が、AlphaGoの手を見て「常識外だけど凄い」といった感想を漏らしたそうです。これは仕組みからすれば当然で、概念や常識のような(明示的で言語的にある程度共有できるような)中間プロセスや外部知識を用いないからそうなるわけです。

ディープラーニングは直感が得意で、人間はロジックが得意

そういうわけで、素朴なイメージとは逆に、現代のディープラーニングは言語的解釈ができないような直感的な判断が得意で、中間的な概念を駆使してロジックを組み立てるような処理がまだあまり得意ではありません。

もちろんディープラーニング最先端の研究では、まさにここを突破しようという機運があり人間ならロジカルに演繹や推論を組み立てて取り組むような課題に対しても、1次情報と出力を大きなディープラーニングモデルを組むことでやはり直接繋いで学習させることで解決しようとしています。AlphaGoもそうした流れの一つでしょう。

また、学習したディープラーニングを別の問題に転用することで人間が行っている「中間概念の社会的な共有による効率化」に匹敵する価値をだせるようにする(転移学習と呼ばれています)研究も盛んに行われています。

しかし、そうしたディープラーニングの発展によっていずれ「人間のほうが優っている部分」をどんどん塗り替えて行くのだとしても、根本的な仕組みが本記事で繰り返し述べている点で異なっているという点はしばらくの間つづくことでしょう。

転移学習も、人間が主に言語を使って知識や概念を共有するような方法とはかなり異なるブラックボックスの一部を言語化しないまま共有するような方法が主流であり続けそうに思います。人間もテレビやネットといった言語以外のマルチメディアをも含むような仕方で知識を社会的に共有しながら生きていますが、それでも当面のAIが行う転移学習はマルチメディアどころではないマルチブラックボックスメディアのような方法で、人間にとって言語的解釈が難しい形ながら有用であるような方向へどんどん進化していくように思います。

愚者は経験に学び、賢者は歴史に学ぶが、AIは経験に学ぶだけで賢者を凌ぐ

僕個人的には、言語的な中間概念や推論のような仕組みをAIが自動的に行うようになる(そういうAIの機能のことは「創発」と呼ばれます)には、AIに身体が必要じゃないかと思います。

なぜなら、もし無限の頭脳と無限の性能を持つ身体があったら、言語など使わずに1億テラバイトのデータをそのまま他人に渡せば意志疎通できるはずだし、会議の前にパワポを準備しなくても1億ペタビットのディスクを会議で配ればみんな理解するはずだからです。

そして、頭脳がスーパーコンピュータ100万台ぶんの性能があったら本なんか読まなくても、新しい問題も古くからあるよくある問題も関係なくビッグデータをそのまま機械学習すれば判断を間違えることもなくミスなく完璧に生活できるからです。

「愚者は経験に学び、賢者は歴史に学ぶ」のは人間の頭脳や身体に限界があるからで、ものすごい身体性能と頭脳があったら愚者よろしく経験に学べばよいわけです。

今のAIは経験に学ぶ力が、歴史に学ぶ(すなわち過去に社会的に共有された概念や知識を援用する)人間を超えてしまう場面がかなり出てきて実用化に耐えうる性能が出てきた、という状況だと思います。

次回、次次回予告

第二回は現状認識をもう少し充実したうえで「AIをどう実用的に使うか」、第三回はそうした実社会での現実的応用が積み重なったとき「AIが普及した未来はどうなるのか」について書きたいと思います。

ではまた。