困惑する人工知能 〜1秒間の演算の説明に100年かかる!?:Over the AI ――AIの向こう側に(3/8 ページ)
コンピュータは、入力値から出力値に至る演算のプロセスを、順番通りに説明できます。ところが、「なぜ、その結果になったのか」と尋ねると、途端に説明できなくなってしまいます。困惑し、黙りこくったり、自分が行った演算を“言い訳”のごとく延々と説明したりと、迷走を始めるのです。
人工知能ブームの根っこ
私は、宝くじや馬券を買いません。当たらないからです。でも、買わないなら、当たらないのは、当たり前だということは分かっています。
私は、めったにゲームもしません。勝てないからです。ゲームをしなければ、勝つことができないのは、当たり前だということも分かっています。
つまり、ギャンブルやゲームは、勝ち負けという「結果」ではなく、その勝負の「プロセス」を楽しむことができる『余裕』が必要なのです。―― そして、私には、その『余裕』がありません。
ところが私の場合、宝くじや馬券、ゲームと私の間に、「コンピュータ」が入るだけで、私のパラダイムが劇的に変化します。宝くじの確率、馬券の予測、そして、ゲームの戦略を「プログラムする」という話になれば、私の興味と集中力は、いきなり最大値に達します。
そのためには、いろいろな勉強をします。面倒な数式やアルゴリズムを理解するためであれば、少々高価な書籍だって購入します。そして、その書籍の価格は、宝くじや馬券よりも高い買い物になっています。
最近の一番高い買い物は、Amazonで購入した178米ドルの英文の技術書でした(英語が読めなくたって、フローチャートの絵があればいいんです*))。
*)「江端さん、その話なら、ええっと……、ああ、これこれ、この本のここに記載がありますよ」と、全文英語の分厚い技術書の中を差し示す後輩に、笑顔で謝意を伝えつつ、しばしば、傷つけられています(連載:「「英語に愛されないエンジニア」のための新行動論」)。
このように、私は、自分では何もしないクセに、コンピュータにやらせるためであれば、ものすごいパワーを発揮できる、ズルい人間なのです。
でも ―― 自分の代わりに、何かを教育したり闘わせたりして、満足する人って、私以外にも、たくさんいますよね。
- 『自分ではなく』、自分の子どもを有名な学校に入学させることで、自分のプライドを保とうとしている保護者
- 『自分ではなく』、部下が苦労して導き出した発明や解析結果を、自分が見つけたと言い張る上司
- 『自分ではなく』、小型の怪物を鍛えて、その怪物どうしで闘わせるというゲームやアニメ*)に興じる子どもと大人たち
*)ええっと、「ポケットモンスター」って言うんですよね(間違っていたら教えてください)
しょせんは、同じ穴の狢(むじな)だと思うのです。
過去2回のブームも含めて、「人工知能ブーム」のブームの根っこは、ここ ―― 自分では何もしないクセに、コンピュータにやらせるためであれば、ものすごい執念を発揮する ―― にあるんじゃないかなー、と思っています。
それはさておき。
「プログラムが本当に正しく動いているのか分からない」の話に戻ります。
とても筋が悪く、そして怖い
プログラムという奴は、シンタックス(文法)を守り、各種のプログラム実行環境を正しくそろえてやれば、基本的には動き出します。シンタックスのエラーやアルゴリズムの修正作業(デバッグ)は、面倒くさいですが、「間違い探し」の一種と考えれば、それなりに楽しいと思えることもあります。
しかし、一度、そのプログラムが動き出してしまえば ――そのプログラムの中に私が組み込んだロジック(アルゴリズム)が、正しく動いているのか、いないのか、分からなくなります。そして、動き出した後で、それを調べるのは、恐しく面倒くさいのです。
例えば、制御コントローラーのシミュレーションプログラムなどで、「入力値10と20と30を入れて、定数を0.5にした場合、6秒後の値は、12.56、25.35, 100.01になっているハズ」ということが、事前に分かっていて、プログラムも、その通りの挙動を示したのであれば、おおむね、このプログラムは大丈夫だろう、と安心することができます(複数パターンで重複チェックをします)。
では、このような「答え合わせができる回答集」みたいなものがあれば、そのプログラムは信用できるのか、と言われたら、正直なところ、「『回答集』の部分だけは信用できる」という以上のことはいえないのです。
新しく作ったプログラムは、常に恐怖と背中合わせです。特に航空、鉄道、電力、交通などの、人の命に関わる社会インフラシステムのプログラムを作る人にとって、その恐怖はハンパなものではありません。
ですので、プログラムやシステムの世界では「枯れたプログラム」とか「枯れたシステム」とかいう言い方があります。つまり、長年(10年以上のオーダー)で使われているプログラムなら、そこそこ安心できる、ということです。
これは、お客さんから『10Mのイーサネットのイエローケーブル』と『20年前と完全同一のコントローラーを作って持ってこい』といわれる理由と同じです(関連記事:制御の世界の“黒船”、TwinCATでメイドを動かす)。
しかし、"人工知能技術"で用いられる「推論エンジン」と呼ばれるプログラムは、この観点から言えば、とても筋が悪く、そして怖いのです。
なぜなら、推論エンジンの目的は当然「推論」にあり、そして「推論」は、そもそも「答え合わせができる回答集」がないのです*)。ぶっちゃけて言えば、デタラメな推論をしたって、見つけられる人がどこにもいないのです。
*)もちろん、学習データを使った検証や、極端なケースを想定して、推論エンジンの動きをチェックすること程度のことはしますが。
Copyright © ITmedia, Inc. All Rights Reserved.