(57)【要約】【課題】多様な入力データを扱うニューラルネットワークであっても、その判断根拠を示す顕著性マップを低コストで作成すること。【解決手段】根拠提示装置１００は、入力データ「x」と顕著性マップ１２２「m」とを合成して合成データ「y」を作成する合成部１０３と、入力データ「x」および合成データ「y」それぞれから、第１ＮＮ１１２を用いて推論した結果、推論データ「z」を作成する推論部１０４と、入力データ「x」の推論データ「z」と、合成データ「y」の推論データ「z」との誤差を損失関数「E1(・)」により計算し、その計算結果を損失スコアとする評価部１０５とを有し、マップ生成部１０２は、前回の推論に用いた第２ＮＮ１２１に対して損失スコアを反映することで、第２ＮＮ１２１のパラメータを更新する。【選択図】図１
2020135438.tif 000002
【特許請求の範囲】
【請求項１】
第１ニューラルネットワークの学習に用いたデータセットの入力データから、第２ニューラルネットワークを用いて推論した結果、前記入力データのうちの特徴を示す顕著性マップを作成して前記第１ニューラルネットワークの根拠として出力するマップ生成部と、
前記入力データと前記顕著性マップとを合成して合成データを作成する合成部と、
前記入力データおよび前記合成データそれぞれから、前記第１ニューラルネットワークを用いて推論した結果、推論データを作成する推論部と、
前記入力データの推論データと、前記合成データの推論データとの誤差を損失関数により計算し、その計算結果を損失スコアとする評価部とを有し、
前記マップ生成部は、前回の推論に用いた前記第２ニューラルネットワークに対して前記損失スコアを反映することで、前記第２ニューラルネットワークのパラメータを更新することを特徴とする
根拠提示装置。
【請求項２】
前記評価部は、前記誤差が大きいほど前記損失スコアが高いとする第１項と、前記顕著性マップの特徴箇所が大きいほど前記損失スコアが高いとする第２項とを有する前記損失関数を用いて、前記損失スコアを計算することを特徴とする
請求項１に記載の根拠提示装置。
【請求項３】
前記マップ生成部は、前記入力データに対応する１つの前記顕著性マップを出力することを特徴とする
請求項１に記載の根拠提示装置。
【請求項４】
前記根拠提示装置は、さらに、前記第１ニューラルネットワークの中間層に存在する前記入力データの特徴を示す複数の要素から、指定された要素を示す特徴指定パラメータの記憶部を有しており、
前記マップ生成部は、前記特徴指定パラメータに従って、指定された特徴を示す要素ごとの前記顕著性マップを個別に作成して出力することを特徴とする
請求項１に記載の根拠提示装置。
【請求項５】
根拠提示装置は、マップ生成部と、合成部と、推論部と、評価部とを有しており、
前記マップ生成部は、第１ニューラルネットワークの学習に用いたデータセットの入力データから、第２ニューラルネットワークを用いて推論した結果、前記入力データのうちの特徴を示す顕著性マップを作成して前記第１ニューラルネットワークの根拠として出力し、
前記合成部は、前記入力データと前記顕著性マップとを合成して合成データを作成し、
前記推論部は、前記入力データおよび前記合成データそれぞれから、前記第１ニューラルネットワークを用いて推論した結果、推論データを作成し、
前記評価部は、前記入力データの推論データと、前記合成データの推論データとの誤差を損失関数により計算し、その計算結果を損失スコアとし、
前記マップ生成部は、前回の推論に用いた前記第２ニューラルネットワークに対して前記損失スコアを反映することで、前記第２ニューラルネットワークのパラメータを更新することを特徴とする
根拠提示方法。
【請求項６】
請求項１に記載の根拠提示装置に、
第１ニューラルネットワークの学習に用いたデータセットの入力データから、第２ニューラルネットワークを用いて推論した結果、前記入力データのうちの特徴を示す顕著性マップを作成して前記第１ニューラルネットワークの根拠として出力させる手順と、
前記入力データと前記顕著性マップとを合成して合成データを作成させる手順と、
前記入力データおよび前記合成データそれぞれから、前記第１ニューラルネットワークを用いて推論した結果、推論データを作成させる手順と、
前記入力データの推論データと、前記合成データの推論データとの誤差を損失関数により計算し、その計算結果を損失スコアとさせる手順と、
前回の推論に用いた前記第２ニューラルネットワークに対して前記損失スコアを反映することで、前記第２ニューラルネットワークのパラメータを更新させる手順とを実行させるための
根拠提示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、根拠提示装置、根拠提示方法、および、根拠提示プログラムに関する。
【背景技術】
【０００２】
一般に、今日の画像認識などで高い性能を有する多層ニューラルネットワークは、膨大なパラメータと複雑なモデルで構成されている。しかし、この種の機械学習によるシステムは優れた性能を示す一方、ニューラルネットワークの出力の判断根拠の解釈が難しいという課題があった。この課題を解決するため、ニューラルネットワークの判断根拠を解釈する手法がいくつか提案されている。
【０００３】
判断根拠を解釈する手法の１つに、ニューラルネットワークの出力に対する入力の貢献度を示す顕著性マップを作成するという手法がある。
非特許文献１に記載の手法は、ニューラルネットワークの入力と出力の勾配を計算し、入力のうち勾配が大きい部分は出力への貢献度が大きいとする手法の１つである。出力と入力の勾配を利用する手法は、顕著性マップに勾配に起因するノイズが多く乗るという課題があるため、入力にノイズを乗せたものを多数用意し、その勾配の平均値をとることでノイズを除去するという工夫が加えられている。
【０００４】
特許文献１に記載の手法は、ニューラルネットワークの入力と出力の勾配を利用する手法の１つで、ニューラルネットワークのテイラー近似の式を利用して貢献度を計算する。
【０００５】
非特許文献２に記載の手法は、顕著性マップを学習によって得るという手法で、入力の一部分にマスクをかけたものを学習済みのニューラルネットワークに入力し、出力値が正解から遠くなるように顕著性マップを学習することによって、入力の貢献度が高い部分を隠すようなマスクを作成できるようになるという手法である。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２０１８−５１３５０７号公報
【非特許文献】
【０００７】
【非特許文献１】Daniel Smilkov他著、「SmoothGrad: removing noise by adding noise」、［online］、2017年、［2019年2月4日検索］、インターネット〈URL：https://arxiv.org/abs/1706.03825〉
【非特許文献２】Ruth Fong他著、「Interpretable Explanations of Black Boxes by Meaningful Perturbation」、［online］、2018年1月10日、［2019年2月4日検索］、インターネット〈URL：https://arxiv.org/abs/1704.03296〉
【発明の概要】
【発明が解決しようとする課題】
【０００８】
あるニューラルネットワークの判断根拠を示す顕著性マップを作成する手法は、、ニューラルネットワークや入力データの特性に応じてパラメータを調整する必要がある。よって、扱うニューラルネットワークや入力データが多くなるほど、調整するパラメータを人間が用意するコストも高くなってしまう。
【０００９】
そこで、本発明は、多様な入力データを扱うニューラルネットワークであっても、その判断根拠を示す顕著性マップを低コストで作成することを、主な課題とする。
【課題を解決するための手段】
【００１０】
前記課題を解決するために、本発明の根拠提示装置は、以下の特徴を有する。
本発明は、第１ニューラルネットワークの学習に用いたデータセットの入力データから、第２ニューラルネットワークを用いて推論した結果、前記入力データのうちの特徴を示す顕著性マップを作成して前記第１ニューラルネットワークの根拠として出力するマップ生成部と、
前記入力データと前記顕著性マップとを合成して合成データを作成する合成部と、
前記入力データおよび前記合成データそれぞれから、前記第１ニューラルネットワークを用いて推論した結果、推論データを作成する推論部と、
前記入力データの推論データと、前記合成データの推論データとの誤差を損失関数により計算し、その計算結果を損失スコアとする評価部とを有し、
前記マップ生成部が、前回の推論に用いた前記第２ニューラルネットワークに対して前記損失スコアを反映することで、前記第２ニューラルネットワークのパラメータを更新することを特徴とする。
【００１１】
また、本発明は、前記根拠提示装置が実行する根拠提示方法、および、その根拠提示方法を実行するための根拠提示プログラムである。
【発明の効果】
【００１２】
本発明によれば、多様な入力データを扱うニューラルネットワークであっても、その判断根拠を示す顕著性マップを低コストで作成することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施例１に係るニューラルネットワークシステムを示す構成図である。
【図２】本発明の実施例１に係る入力画像データと顕著性マップとを合成する合成部の処理の一例を示す。
【図３】本発明の実施例１に係る注目領域が広すぎる顕著性マップ画像の一例を示す。
【図４】本発明の実施例１に係る注目領域が狭すぎる顕著性マップ画像の一例を示す。
【図５】本発明の実施例１に係る根拠提示装置の処理を示すフローチャートである。
【図６】本発明の実施例２に係るニューラルネットワークシステムを示す構成図である。
【図７】本発明の実施例２に係る第１の注目領域の画像データを示す説明図である。
【図８】本発明の実施例２に係る第２の注目領域の画像データを示す説明図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明の実施の形態について詳細に説明する。各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。また、参照する図面において、本発明を構成する部材の寸法は、説明を明確にするために誇張して表現されている場合がある。なお、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【００１５】
［実施例１］
図１は、実施例１におけるニューラルネットワークシステムを示す構成図である。ニューラルネットワークシステムは、機械学習装置１１０と、根拠提示装置１００とで構成される。以下、ニューラルネットワークをＮＮ（Neural Network）と略す。
機械学習装置１１０は、学習部１１１がデータセット１１３を参照して第１ＮＮ１１２を機械学習する。根拠提示装置１００は、機械学習装置１１０の第１ＮＮ１１２による推論の判断根拠を提示する。以下、第１ＮＮ１１２は関数「f(・)」で示す推論処理に用いられるとする。
【００１６】
機械学習装置１１０の制御部および根拠提示装置１００の制御部は、それぞれ図示しないＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）を中心に構成されており、図示しないＲＯＭ（Read Only Memory）等から所定のプログラムを読み出して実行することにより、ニューラルネットワークに関する種々の処理を行う。また前記の制御部は、内部にＲＡＭ（Random Access Memory）、ハードディスクドライブやフラッシュメモリ等でなる記憶部を有しており、この記憶部に種々の情報を記憶させる。
【００１７】
根拠提示装置１００は、制御部により具現化された処理部として、入力部１０１と、マップ生成部１０２と、合成部１０３と、推論部１０４と、評価部１０５とを有する。
根拠提示装置１００は、記憶部に記憶されるデータとして、第２ＮＮ１２１と、顕著性マップ１２２とを有する。以下、第２ＮＮ１２１は関数「g(・)」で示す推論処理に用いられるとする。
ここからは、根拠提示装置１００の各データ（第２ＮＮ１２１と顕著性マップ１２２）を説明した後に、図５を参照して各処理部を順に説明する。
【００１８】
図２は、データセット１１３の入力画像データと、顕著性マップ１２２とを合成する合成部１０３の処理の一例を示す。
データセット１１３の一例として、以下では第１ＮＮ１１２の入力層に入力される犬の画像３０１と、第１ＮＮ１１２の出力層から出力される「犬が写っている」という判別結果との組で構成される教師データを用いる。
データセット１１３の入力データ「x」に対応して１つの顕著性マップ１２２「m」が生成され、「m」と「x」とは同じサイズかつ同じ次元である。図２では、顕著性マップ１２２の一例として、犬の顔が位置する領域を可視化する顕著性マップ画像３０２を扱う。
なお、犬の顔が位置する注目領域３０２ａは、犬の画像３０１から「犬が写っている」という判別結果を得るための顕著性マップ画像３０２の重要な領域である。一方、注目領域以外の顕著性マップ画像３０２の黒塗り領域を「マスク領域」とする。
【００１９】
合成部１０３は、犬の画像３０１の表面に顕著性マップ画像３０２を重ね合わせることで、合成画像３０３を作成する。合成画像３０３には、注目領域３０３ａに写っている犬の顔と、注目領域３０３ａの外部に位置するマスク領域とが、区別できるように可視化されている。
なお、顕著性マップ画像３０２のマスク領域として、図２では黒塗り領域を例示したが、この他にも犬の画像３０１をぼかしたり、ノイズを混入させたりするようにマスク領域を設定してもよい。
【００２０】
根拠提示装置１００の主な目的は、第１ＮＮ１１２の出力に対する判断根拠データとして、適切な顕著性マップ１２２を作成することである。例えば、図２のような顕著性マップ画像３０２は、判別結果に貢献する犬の顔が位置する注目領域３０２ａを確実に抽出しつつ、その他の判別結果に貢献しない箇所のマスク領域も充分に広めに設定した、適切な顕著性マップ１２２の一例である。
【００２１】
一方、図３の顕著性マップ画像３１１は、注目領域３１１ａが広すぎるため、たしかに犬の顔部分は確実に抽出できる（符号３１２）。しかし、マスク領域が狭すぎて、犬の足など判別結果に貢献しない箇所まで余分に抽出してしまうので（符号３１２ａ）、顕著性マップ画像３１１は不適切な顕著性マップ１２２である。
【００２２】
また、図４の顕著性マップ画像３２１は、注目領域３２１ａが狭すぎるため、犬の顔の一部（鼻と口）しか抽出されない（符号３２２）。よって、顔の一部を注目領域３２２ａとするだけでは、犬と類似するタヌキなどの他の動物と誤判別してしまうので、顕著性マップ画像３２１は不適切な顕著性マップ１２２である。
以上、さまざまな顕著性マップ１２２の例を説明した。
【００２３】
図１に戻り、第２ＮＮ１２１は、データセット１１３の入力データから、顕著性マップ１２２を出力するためのニューラルネットワークである。第２ＮＮ１２１を用いた推論は、「m=g(x)」という式で表現される。ここで、mの範囲は0<m<1となるように第２ＮＮ１２１を設計する。例えば、第２ＮＮ１２１の出力層の直前に正規化処理を入れてもよい。
また、顕著性マップ１２２の学習に有効な場合は、誤差逆伝播法に適用可能な範囲でmの分布に何らかの規則を与えてもよい。例えば、mの値がある閾値以下のものは0とする活性化関数を、第２ＮＮ１２１の出力前に加えてもよい。
【００２４】
第２ＮＮ１２１の内部の構造は特に限定されず、タスクに応じた構造を自由に選択することができる。例えば、全結合層を重ねたニューラルネットワークを用いてもよいし、畳み込みニューラルネットワークを用いてもよい。畳み込みニューラルネットワークは、例えば、Olaf Ronneberger他著の論文「U-Net: Convolutional Networks for Biomedical Image Segmentation」に開示されている。
【００２５】
図５は、根拠提示装置１００の処理を示すフローチャートである。このフローチャートでは、前準備の工程（Ｓ１０１）と、第２ＮＮ１２１の学習工程（Ｓ１０２〜Ｓ１０７）と、第２ＮＮ１２１の学習終了判定の工程（Ｓ１０８）とが順に実行される。学習終了判定を満たすまで、第２ＮＮ１２１の学習工程が繰り返されることで、第２ＮＮ１２１のパラメータは徐々に改善される。
以下、フローチャートの各工程の詳細について、説明する。
【００２６】
推論部１０４は第２ＮＮ１２１の学習開始時に、前準備として第１ＮＮ１１２（学習済みモデル）を取得しておく（Ｓ１０１）。この第１ＮＮ１１２は、内部構造に関わらず、あらゆるニューラルネットワークを適用することが可能である。
マップ生成部１０２は、第２ＮＮ１２１の学習開始時には、第２ＮＮ１２１のパラメータを初期化する（Ｓ１０２）。第２ＮＮ１２１のパラメータとは、例えば、ニューラルネットワークにおけるシナプスの重み「w」である。第２ＮＮ１２１のパラメータは固定値ではなく変動値であるため、２回目以降のＳ１０２ではパラメータの更新処理が行われる。
【００２７】
入力部１０１は、データセット１１３から入力データ「x」（図２では犬の画像３０１）を取得する（Ｓ１０３）。取得する入力データ「x」は、第１ＮＮ１１２の学習に用いたデータセット１１３の入力データのうちの一部または全部である。
データセット１１３の形式は特に限定されない。画像データを使ってもよいし、時系列データを使ってもよい。また、学習後の第１ＮＮ１１２のパラメータは固定値であり、更新処理は行われず、誤差逆伝播法によって偏微分の値が計算される。
マップ生成部１０２は、第２ＮＮ１２１に入力データ「x」を入力させた推論により、顕著性マップ１２２（図２では顕著性マップ画像３０２）を生成する（Ｓ１０４）。マップ生成部１０２は、生成した顕著性マップ１２２を第１ＮＮ１１２の根拠としてユーザに出力する。
【００２８】
合成部１０３は、入力データ「x」と顕著性マップ１２２とを合成した合成データ「y」（図２では合成画像３０３）を作成する（Ｓ１０５）。この作成処理は、「y＝x・m＝x・g(x)」という式で示される。つまり、合成部１０３は、入力データ「x」に対して顕著性マップ１２２「m」による重みづけを行う。
【００２９】
推論部１０４は、第１ＮＮ１１２（学習済みモデル）に合成データ「y」を入力させた推論により、推論データ「z」（例えば「犬が写っている」）を求めて評価部１０５に通知する（Ｓ１０６）。推論部１０４による推論処理は「z=f(y)=f(x・m)」という式で表現される。
なお、Ｓ１０２，Ｓ１０４のマップ生成部１０２の処理を、Ｓ１０６の推論部１０４の処理の前に配置することで、ニューラルネットワークの内部構造に関わらず、構築済みの第１ＮＮ１１２を適用することができる。
【００３０】
評価部１０５は、推論データ「z」と、推論データの正解値とを評価関数である損失関数「E1(・)」によって比較し、その比較結果として損失スコアを算出する（Ｓ１０７）。推論データの正解値は、入力データ「x」を第１ＮＮ１１２に入力した場合の推論結果である。損失関数「E1(・)」は、例えば以下のような（数式１）で示すことができる。
【００３１】
【数１】
2020135438.tif 000003
λは係数を示す。
【００３２】
数式１の右辺第１項は、推論データ「z」と、推論データの正解値との比較結果を示している。ここでは、比較のための関数を平均二乗誤差としているが、他の損失関数を用いてもよい。例えば、平均絶対値誤差を用いてもよい。
数式１の右辺第２項は、顕著性マップ１２２の特徴箇所（注目領域）を適切に小さくするための正則化項を示している。もし、顕著性マップ１２２が全て１である場合（例えば、図３のように、マスク領域がほとんど無い場合）、損失スコアは常に０となる（つまり、「犬である」と正しく判別できてしまう）。よって、数式１の右辺第１項だけは、顕著性マップ１２２の学習が進まないこともある。
そこで、顕著性マップ１２２「m」の値が小さくなるための正則化項が必要である。この右辺第２項により、図３の大きすぎる注目領域を、図２の適切な大きさの注目領域へと収束させることができる。ここでは、mの二乗を用いているが、他の正則化の式を用いてもよい。
【００３３】
評価部１０５は、損失スコアがある閾値よりも小さくなった場合などの学習の終了条件（所定の条件）を満たした場合は（Ｓ１０８でYes）、学習を終了する。一方、学習の終了条件を満たさなかった場合は（Ｓ１０８でNo）、Ｓ１０２に戻り、学習を続行する。別の学習の終了条件としては、一定の学習回数を終えたときとしてもよい。
【００３４】
再度のＳ１０２において、評価部１０５は、通常のニューラルネットワークの学習と同様の誤差逆伝播法によって、損失スコアに基づいた第２ＮＮ１２１のパラメータ更新処理をマップ生成部１０２に指示する。これにより、第２ＮＮ１２１のパラメータの学習処理が行われる。このマップ生成部１０２への指示には、例えば、非特許文献１に記載の勾配として、損失スコアを第２ＮＮ１２１の重みで偏微分した値が含まれる。
【００３５】
以上説明した実施例１によれば、マップ生成部１０２が第２ＮＮ１２１を用いて顕著性マップ１２２を作成する。この顕著性マップ１２２は、多様な入力データ「x」に一度に対応できるうえに、勾配ノイズの影響が軽減されたものである。
そして、評価部１０５からマップ生成部１０２に損失スコアをフィードバック（反映）されることで、ユーザが手動で第２ＮＮ１２１のパラメータを調整することなく、第２ＮＮ１２１の機械学習が自動的に行われる。よって、顕著性マップ１２２と第２ＮＮ１２１とを低コストで作成することができる。
【００３６】
［実施例２］
図６は、実施例２におけるニューラルネットワークシステムを示す構成図である。
図１に示した実施例１の機械学習装置１１０と、図６に示す実施例２の機械学習装置１１０とは、同じ構成である。図１に示した実施例１の根拠提示装置１００と、図６に示す実施例２の根拠提示装置２００とでは、符号の下２桁が同じ部品同士が対応する。例えば、図１の入力部１０１と、図６の入力部２０１とは対応し、同じ構成である。
【００３７】
実施例１と実施例２との違いは、顕著性マップの個数である。実施例１では画像全体の注目領域に対応する１つの顕著性マップ１２２「m」を作成していた。一方、実施例２では複数の注目領域それぞれについての複数の（N個の）要素を持つ顕著性マップ２２２を作成するように拡張される。顕著性マップ２２２は、集合「M=(m[1],m[2],…,m[N])」として示される。m[1]とは、mの１番目の要素を示す。
また、顕著性マップ２２２「M」は、データセット１１３の入力データ「x」ごとに作成される。
【００３８】
図７は、複数の注目領域のうちの第１の注目領域の画像データを示す説明図である。
符号４１１で示すように、例えば第１の注目領域が撮影されている犬の耳であった場合、マップ生成部２０２は、第１の顕著性マップ２２２として、注目領域４１２ａを含む画像４１２を生成する。合成部２０３は、この画像４１２と、入力データである図２の画像３０１とを合成した結果として、注目領域４１３ａを含む合成画像４１３を得る。
なお、符号４１１の「耳を注目領域とする」という文章での説明は、顕著性マップ２２２がN個の要素をもつことをわかりやすくするために簡略化したものである。実際にユーザが注目領域を指定するときには、このような文章での指定ではなく、後記する特徴指定パラメータ２２３での指定となる。
【００３９】
図８は、複数の注目領域のうちの第２の注目領域の画像データを示す説明図である。
符号４２１で示すように、例えば第２の注目領域が撮影されている犬の目であった場合、マップ生成部２０２は、第２の顕著性マップ２２２として、注目領域４２２ａを含む画像４２２を生成する。合成部２０３は、この画像４２２と、入力データである図２の画像３０１とを合成した結果として、注目領域４２３ａを含む合成画像４２３を得る。
以上、２つの注目領域から２つの顕著性マップ２２２を生成する一例を説明した。なお、第１ＮＮ１１２は、「犬の耳」や「犬の目」を直接判断して注目領域としているのではない。第１ＮＮ１１２が何らかの判断基準で決定した注目領域を説明するために、あえて「犬の耳」や「犬の目」という視覚化しやすい情報を例示している。
【００４０】
図６に戻り、根拠提示装置２００の記憶部には、どのようなN個の要素をもつ顕著性マップ２２２「M」を作成するかをユーザに指定させる特徴指定パラメータ２２３が記憶されている。特徴指定パラメータ２２３は、例えば、以下のようなデータを含む。
・第１ＮＮ１１２の中間層の番号（１番目の中間層ニューロン、２番目の中間層ニューロン…）。この番号は、どのニューロンに対応する注目領域を顕著性マップ２２２の要素として採用するかをユーザに指定させるために用いられる。
・第１ＮＮ１１２の中間層のチャンネル数（前記のN）。このチャンネル数は、マップ生成部２０２によって第２ＮＮ２２１の出力数として設定される。
【００４１】
以下、実施例２の各処理内容について、実施例１と同様に図５のフローチャートに沿って説明する。
推論部２０４は、学習開始時に第１ＮＮ１１２を取得する（Ｓ１０１）。また、推論部２０４は、特徴指定パラメータ２２３を参照することで、ユーザが指定した中間層の番号を得る。
マップ生成部２０２は、第２ＮＮ２２１の学習開始時には、特徴指定パラメータ２２３の中間層のチャンネル数に応じて、第２ＮＮ２２１のパラメータを初期化する（Ｓ１０２）。２回目以降のＳ１０２ではパラメータの更新処理が行われる。
入力部２０１は、実施例１と同様に、データセット１１３から入力データ「x」を取得する（Ｓ１０３）。
【００４２】
マップ生成部２０２は、入力データ「x」を第２ＮＮ２２１に入力することで、顕著性マップ２２２「M」を生成する（Ｓ１０４）。この生成処理は「M=g(x)」という式で示される。なお、顕著性マップ２２２「M」の各要素（i=1〜N）は推論部２０４がＳ１０１で取得した中間層の番号ごとに生成される。
【００４３】
合成部２０３は、入力データ「x」と、顕著性マップ２２２「M」の各要素とを合成することで、合成データ「Y=(y[1],y[2],…,y[N],y[N+1])」を得る（Ｓ１０５）。この合成処理は、「y[i]=x・m[i]、y[N+1]=x」という式で示される。合成データ「Y」の[N+1]番目の要素は、合成しない入力データ「x」をそのまま代入する。この[N+1]番目の要素は、評価部２０５での正解値の算出に用いられる。
【００４４】
推論部２０４は、第１ＮＮ１１２に合成データ「Y」を入力させて推論を行い、その結果得られた、特徴指定パラメータ２２３で指定された中間層の特徴ベクトルを特徴別推論データ「Z」とする（Ｓ１０６）。第１ＮＮ１１２から特徴別推論データ「Z」を推論する処理を関数「F(・)」とする。この推論処理は「Z[i]=F(y[i])」という式で示される。そして、推論部２０４は、以下の２種類のデータZ[i]=(z[i][1],…,z[i][N+1])を特徴別推論データ「Z」として評価部２０５に通知する。
・［推論結果データ］i=1〜Nのときは、顕著性マップ２２２「M」のi番目の要素に対応した推論データ「z[i][i]」を出力する。
・［正解値データ］i=N+1のときは、入力データ「x」に対応した推論データ「Z[N+1]=(z[N+1][1],…,z[N+1][N])」を出力する。
【００４５】
評価部２０５は、特徴別推論データ「Z」の推論結果データと正解値データとを以下の数式２の損失関数「E2(・)」によって比較し、損失スコアを算出する（Ｓ１０７）。
【００４６】
【数２】
2020135438.tif 000004
【００４７】
実施例１と同様に、数式２の右辺第１項は推論結果データと正解値データとの比較結果を示す項であり、右辺第２項は顕著性マップ２２２を適切に小さくするための正則化項を示している。
評価部２０５は、実施例１と同様に、損失スコアの値に基づいて学習の終了条件（所定の条件）を満たすか否かの判定処理（Ｓ１０８）と、学習の終了条件を満たさなかった場合の学習処理（Ｓ１０２）とを実行する。
【００４８】
以上説明した実施例２では、ユーザが指定した特徴指定パラメータ２２３に応じた複数の要素を有する顕著性マップ２２２「M」を、マップ生成部２０２が個別に生成する。これにより、ユーザが所望する特徴（注目領域）ごとの顕著性マップ２２２「M」を提示できる。
さらに、顕著性マップ２２２「M」の生成に用いられる第２ＮＮ２２１についても、実施例１と同様に、評価部２０５の評価結果である損失スコアがフィードバックされることで、第２ＮＮ２２１の学習が行われる。
よって、学習により改良された第２ＮＮ２２１が作成する高精度の顕著性マップ２２２「M」をユーザは分析することができるので、第１ＮＮ１１２の中間層の解釈をきめ細かく行うことができる。
【００４９】
以上、本発明の各実施例について説明したが、本発明はこれに限定されるものではなく、特許請求の範囲の趣旨を変えない範囲で実施することができる。例えば、以下の変形例が考えられる。
【００５０】
各実施例では、第２ＮＮ１２１，２２１が出力する顕著性マップ１２２，２２２は、データセット１１３の入力データ「x」と同じ次元のものを用いている。一方、第２ＮＮ１２１，２２１が１つの顕著性マップ１２２，２２２を出力し、次元方向に顕著性マップ１２２，２２２を複製してもよい。
各実施例では、第２ＮＮ１２１，２２１が出力する顕著性マップ１２２，２２２は、データセット１１３の入力データ「x」と同じサイズのものを用いている。一方、入力データ「x」よりも小さいサイズの顕著性マップ１２２，２２２を出力し、その出力を入力データ「x」と同じサイズになるように拡張してもよい。
各実施例では、評価部１０５，２０５で用いる正解値データは、第１ＮＮ１１２の出力を用いているが、データセット１１３の入力データ「x」に対応する出力データ（正解ラベル）を使用してもよい。
【００５１】
実施例２では、入力部２０１は、第１ＮＮ１１２の学習に使用したデータセット１１３を入力データ「x」として用いている。一方、入力部２０１は、誤差逆伝播を行えるように内部構造の一部に変更を加えられた第１ＮＮ１１２の中間層データを入力データ「x」として用いてもよい。マップ生成部２０２は、変更を加えられた第１ＮＮ１１２の中間層データに対する顕著性マップ２２２を作成することもできる。
実施例２では、特徴指定パラメータ２２３として、第１ＮＮ１１２の中間層の番号を用いているが、出力層の番号を用いてもよい。
実施例２の損失関数「E2(・)」の右辺には、チャンネルごとの特徴の解釈性を向上させる目的で、顕著性マップ２２２の分散が大きくなるように第３項（正則化項）を追加してもよい。
【符号の説明】
【００５２】
１００，２００  根拠提示装置
１０１，２０１  入力部
１０２，２０２  マップ生成部
１０３，２０３  合成部
１０４，２０４  推論部
１０５，２０５  評価部
１１０  機械学習装置
１１１  学習部
１１２  第１ＮＮ
１１３  データセット
１２１，２２１  第２ＮＮ
１２２，２２２  顕著性マップ
２２３  特徴指定パラメータ
【図１】
2020135438.tif 000005
【図２】
2020135438.tif 000006
【図３】
2020135438.tif 000007
【図４】
2020135438.tif 000008
【図５】
2020135438.tif 000009
【図６】
2020135438.tif 000010
【図７】
2020135438.tif 000011
【図８】
2020135438.tif 000012