メインメニューをとばして、このページの本文エリアへ

機械学習ソフトの第三者評価・認証制度が必要だ

「知的さを持つ」システム困らせる「敵対データ」への現実的な対応法

中島 震 国立情報学研究所教授

 機械学習の技術が進展し、自動運転車の眼(画像認識)などで実用化される時代が近づいてきた。機械学習ソフトウェアシステムは、利用者ごとに提供機能をカスタマイズしたり、利用時にはじめて遭遇するオープンな状況に対応したりできる。「気の利いた」あるいは「ちょっとした知的さを持つ」システムとして期待されているが、思いがけない欠点も見えてきた。

成田空港に導入された顔認証ゲート。機械学習の技術が応用されている=2018年10月、黒川和久撮影

 筆者は、ソフトウェア工学の1分野として品質を向上させる技術を研究してきたのだが、機械学習ソフトウェアが従来と異なることが気になってしょうがない。一言で述べるならば、技術的な方法だけで機械学習ソフトウェアの品質を確保することが難しいのである。今後、社会実装を進める前提として、開発者からも利用者からも独立した第三者機関による評価・認証制度の整備が大切になることを訴えたい。

 機械学習にはいくつかの手法があるが、もっとも注目されているのが、深層ニューラル・ネットワーク(DNN)だろう。これを使ったシステムは、しばしば「AI(人工知能)」と呼ばれている。

 DNNソフトウェアで画像を分類する場合、どうやっているのかを説明しよう。まず、分類結果がわかっている静止画像を集めて、膨大なデータからなる訓練データセットを準備する。この訓練データセットを学習させるのが「訓練」の段階だ。次に、未分類の画像データに対して、この訓練結果を利用する「推論」の段階がくる。ところが、DNNの基礎研究を進める中で、思いがけない欠点が見えてきた。それは、誤った推論をさせるようなデータ(敵対データ)を作れるということだ。

 具体的には、パンダや手長ザルといった動物の画像を分類する研究で示された例が有名だろう(図1)。巧妙に工夫したノイズ情報をパンダの画像に挿入したデータを作成し、このデータを入力して推論実行させる。我々、人間の目にはパンダとしか見えないのに、DNNの推論プログラムが手長ザルと誤分類してしまった。さらに研究が進み、さまざまなDNNが誤推論するようなデータを系統的に作る方法がわかった。この方法を応用すると、意図的に誤推論させる、つまり「敵対攻撃」を行うことさえできてしまう。

図1 敵対データの例。I.J. Goodfellow, J. Shlens, and C. Szegedy : Explaining and Harnessing Adversarial Examples, CoRR abs/1412.6572 (2014)

 このような問題は、「気の利いた」システムだからこそ起きるのである。システム開発時に想定しなかった入力データを受け取っても、言い換えると、得られる推論結果が予めわかっていないデータに対しても、何とか答えを出す。だから、ときにヘンなことが起きてしまう。一方、従来のソフトウェアシステムであれば、入力データを検査し不正なデータ値だったら処理しないようにして、間違いを防ぐ。

 サクラの開花時期を予測するプログラムを

・・・ログインして読む
(残り:約1479文字/本文:約2590文字)