Saturday, May 28, 2016

人工知能とデバッグ

少し前に、NHKスペシャルの「天使か悪魔か羽生善治、人工知能を探る」というのを見たのだけど、将棋の羽生がAlphaGoのDeepMindに行ってDemiss Hassabisにインタビューする内容だった。

この番組の1シーンで、Lee SedolがAlphaGoに一勝したときの記者会見で、記者がHassabisに「碁の場合はマシンが暴走した、と言って許されるかもしれないが、ヘルスケアでそれで許されるのか」という趣旨の質問をしていた。これはなかなか良い質問だと思った。DeepMindはヘルスケアをやって行くと言っているのだ。Hassabisの答えは、AlphaGoは完成品ではなく、ヘルスケアの場合は完全にテストしたものを製品とする、という優等生的なものだった。

このやり取りについて考えていたのだが、人工知能で非常に正解率が高い判断をするものの、当然失敗がある。結果を人間が直接見るのが前提なケースは良いだろう。しかしこれを取り込むシステム全体はどうなんだろう?番組の中では「良心回路」を持った人工知能の研究が出てきていたが、私が言いたいのはもっと単純なエラーについてだ。道が右に曲がっているという判断に基づき、自動運転車が右に曲がろうとする。この成果率は非常に高い。しかし100%ではない。間違えるとしたらシステム全体からするとバグだ。複数のロジックを用いて確率を下げる、映画2001年のHALみたいに。でもエラーはゼロとは言えない。どう判断するのだろう。人間の正解率と同等なら良しとするのだろうか。

エラーからの回復方法は、テストを完全にするとかどうという以前に、どうやってシステムをつくるかの思想の問題になる。実際にはケースごとにいろいろ逃げ道あるのだろうが。記者がこのつもりで質問したのかどうかは定かではないが、私も聞いてみたい。

No comments: