(57)【要約】【課題】ノイズの減少を狙ってアトリビューションの計算方法を変えることなく、アトリビューションのノイズを抑えること。【解決手段】学習装置１０は、複数のデータを収集し、複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、入力データおよび出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する。そして、学習装置１０は、アトリビューションに関する制約をつけてモデルを学習する。【選択図】図１
2020201910.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータを収集する収集部と、
前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算部と、
前記アトリビューションに関する制約をつけて前記モデルを学習する学習部と
を有することを特徴とする学習装置。
【請求項２】
前記学習部は、前記出力データと正解データに基づいて前記モデルのロスを計算するロス関数に前記アトリビューションに関する制約をつけて前記モデルを学習することを特徴とする請求項１に記載の学習装置。
【請求項３】
前記学習部は、前記アトリビューションに関する制約として、前記ロス関数に前記アトリビューションのＬ１ノルムに事前に設定された定数をかけあわせた値を足し合わせ、該Ｌ１ノルムが足し合されたロスが小さく、かつ、前記アトリビューションのスパース性が大きくなるように、前記モデルを学習することを特徴とする請求項２に記載の学習装置。
【請求項４】
前記収集部は、監視対象設備で取得された複数のセンサデータを収集し、
前記計算部は、前記複数のセンサデータを入力データとして前記監視対象設備の状態を予測するための予測モデルに入力し、該予測モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、センサごとの前記アトリビューションを計算し、
前記学習部は、前記アトリビューションに関する制約をつけて前記予測モデルを学習することを特徴とする請求項１に記載の学習装置。
【請求項５】
複数のデータを収集する収集部と、
前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算部と、
前記アトリビューションに関する制約をつけて前記モデルを学習する学習部と、
前記学習部によって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する抽出部と
を有することを特徴とする抽出装置。
【請求項６】
学習装置によって実行される学習方法であって、
複数のデータを収集する収集工程と、
前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算工程と、
前記アトリビューションに関する制約をつけて前記モデルを学習する学習工程と
を含むことを特徴とする学習方法。
【請求項７】
抽出装置によって実行される抽出方法であって、
複数のデータを収集する収集工程と、
前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算工程と、
前記アトリビューションに関する制約をつけて前記モデルを学習する学習工程と、
前記学習工程によって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する抽出工程と
を含むことを特徴とする抽出方法。
【請求項８】
複数のデータを収集する収集ステップと、
前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算ステップと、
前記アトリビューションに関する制約をつけて前記モデルを学習する学習ステップと
をコンピュータに実行させることを特徴とする学習プログラム。
【請求項９】
複数のデータを収集する収集ステップと、
前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算ステップと、
前記アトリビューションに関する制約をつけて前記モデルを学習する学習ステップと、
前記学習ステップによって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する抽出ステップと
をコンピュータに実行させることを特徴とする抽出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習装置、抽出装置、学習方法、抽出方法、学習プログラムおよび抽出プログラムに関する。
【背景技術】
【０００２】
従来、産業、製造業へのニューラルネットワーク技術の応用に関して、ニューラルネットがブラックボックスであり、その判断根拠や入出力の関係性が不明であるため、アプリケーションとして活用することは難しかった。そこで、入出力の関係性（アトリビューション）を抽出することで、モデルへの信頼性を向上させ、予測の原因究明を行うことができることが知られている。例えば、プラントのオペレータは、ニューラルネットワークモデルが予測した故障とアトリビューションを比較することで、予測の原因を理解し、故障を止めるためのアクションを得ることができる可能性がある。
【０００３】
ニューラルネットモデルの入出力の関係性（アトリビューション）を抽出する手法は複数提案されている。この手法は、線形モデルなどに使うようなモデルの重みから入力の重要度を抽出する手法とは異なり、サンプル毎に入出力の関係を得るため、データの状態に応じた関係性を抽出できるという利点がある。
【０００４】
例えば、アトリビューションを抽出する手法として、入力の出力に対する偏微分値を利用する方法である。また、ノイズを減少させる発展系として、偏微分値を利用したり、また別の定義でアトリビューションを計算したりする手法が提案されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Smilkov  Daniel,  et  al.  “Smoothgrad:  removing  noise  by  adding  noise.”  arXiv  preprint  1706.03825  (2017).
【非特許文献２】Simonyan,  Karen,  Andrea  Vedaldi,  and  Andrew  Zisserman.  “Deep  inside  convolutional  networks:  Visualising  image  classification  models  and  saliency  maps.”  arXiv  preprint  arXiv:1312.6034  (2013).
【非特許文献３】Binder,  Alexander,  et  al.  “Layer-wise  relevance  propagation  for  deep  neural  network  architectures.”  Information  Science  and  Applications  (ICISA)  2016.  Springer,  Singapore,  2016.  913-922.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来のニューラルネットモデルの入出力の関係性（アトリビューション）を抽出する手法では、抽出したアトリビューションに大きなノイズを多く含む場合がある。例えば、入力の出力に対する偏微分値を利用する方法ではノイズが多くなる場合があった。また、ノイズを除去するアトリビューションの計算手法を用いたとしてもそのアトリビューション自体の解釈が難しい場合があるという問題があった。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明の学習装置は、複数のデータを収集する収集部と、前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算部と、前記アトリビューションに関する制約をつけて前記モデルを学習する学習部とを有することを特徴とする。
【０００８】
また、本発明の抽出装置は、複数のデータを収集する収集部と、前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算部と、前記アトリビューションに関する制約をつけて前記モデルを学習する学習部と、前記学習部によって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する抽出部とを有することを特徴とする。
【０００９】
また、本発明の学習方法は、学習装置によって実行される学習方法であって、複数のデータを収集する収集工程と、前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算工程と、前記アトリビューションに関する制約をつけて前記モデルを学習する学習工程とを含むことを特徴とする。
【００１０】
また、本発明の抽出方法は、抽出装置によって実行される抽出方法であって、複数のデータを収集する収集工程と、前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算工程と、前記アトリビューションに関する制約をつけて前記モデルを学習する学習工程と、前記学習工程によって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する抽出工程とを含むことを特徴とする。
【００１１】
また、本発明の学習プログラムは、複数のデータを収集する収集ステップと、前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算ステップと、前記アトリビューションに関する制約をつけて前記モデルを学習する学習ステップとをコンピュータに実行させることを特徴とする。
【００１２】
また、本発明の抽出プログラムは、複数のデータを収集する収集ステップと、前記複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、前記入力データおよび前記出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する計算ステップと、前記アトリビューションに関する制約をつけて前記モデルを学習する学習ステップと、前記学習ステップによって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する抽出ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ノイズの減少を狙ってアトリビューションの計算方法を変えることなく、アトリビューションのノイズを抑えることができるという効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】図１は、第１の実施形態に係る学習装置の構成例を示すブロック図である。
【図２】図２は、学習装置によって実行される学習処理の概要を説明する図である。
【図３】図３は、学習装置によって実行される学習処理の具体的な処理例を説明する図である。
【図４】図４は、第１の実施形態に係る学習装置における学習処理の流れの一例を示すフローチャートである。
【図５】図５は、第２の実施形態に係る抽出装置の構成例を示すブロック図である。
【図６】図６は、抽出装置によって実行される異常予測処理およびアトリビューション抽出処理の概要を説明する図である。
【図７】図７は、抽出装置によって実行される画像分類処理およびアトリビューション抽出処理の概要を説明する図である。
【図８】図８は、第１の実施形態に係る抽出装置における抽出処理の流れの一例を示すフローチャートである。
【図９】図９は、プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１５】
以下に、本願に係る学習装置、抽出装置、学習方法、抽出方法、学習プログラムおよび抽出プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願に係る学習装置、抽出装置、学習方法、抽出方法、学習プログラムおよび抽出プログラムが限定されるものではない。
【００１６】
［第１の実施形態］
以下の実施形態では、第１の実施形態に係る学習装置１０の構成、学習装置１０の処理の流れを順に説明し、最後に第１の実施形態による効果を説明する。
【００１７】
［学習装置の構成］
まず、図１を用いて、学習装置１０の構成を説明する。図１は、第１の実施形態に係る学習装置の構成例を示すブロック図である。学習装置１０は、例えば、工場やプラントなどの監視対象設備に設置されるセンサによって取得された複数のデータを収集し、収集された複数のデータを入力として、監視対象設備の異常を予測するための予測モデルを学習する。学習装置１０では、入力の出力に対する偏微分値などの単純な既存のアトリビューションの計算手法を用いつつ、学習中にアトリビューションが変化するような制約（例えば、スパース化の制約）をつけて学習することで、アトリビューションのノイズを減らすことができる。また、学習装置１０では、ノイズの減少を狙ってアトリビューションの計算方法を変える必要がないので、アトリビューション自体の解釈の難しさを軽減することも可能である。
【００１８】
図１に示すように、この学習装置１０は、通信処理部１１、制御部１２および記憶部１３を有する。以下に学習装置１０が有する各部の処理を説明する。
【００１９】
通信処理部１１は、接続される装置との間でやり取りする各種情報に関する通信を制御する。また、記憶部１３は、制御部１２による各種処理に必要なデータおよびプログラムを格納し、データ記憶部１３ａおよび学習済みモデル記憶部１３ｂを有する。例えば、記憶部１３は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子等の記憶装置である。
【００２０】
データ記憶部１３ａは、後述する収集部１２ａによって収集されたデータを記憶する。例えば、データ記憶部１３ａは、工場、プラント、ビル、データセンタ等の対象機器に設けられたセンサのデータ（例えば、温度や圧力、音、振動等のデータ）を記憶する。なお、データ記憶部１３ａは、上記のデータに限定されるものではなく、画像データ等、複数の実数値からなるデータであればどのようなデータを記憶してもよい。
【００２１】
学習済みモデル記憶部１３ｂは、後述する学習部１２ｃによって学習された学習済みモデルを記憶する。例えば、学習済みモデル記憶部１３ｂは、学習済みモデルとして、監視対象設備の異常を予測するためのニューラルネットワークの予測モデルを記憶する。
【００２２】
制御部１２は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部１２は、収集部１２ａ、計算部１２ｂおよび学習部１２ｃを有する。ここで、制御部１２は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）、ＧＰＵ（Graphical  Processing  Unit）などの電子回路やＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路である。
【００２３】
収集部１２ａは、複数のデータを収集する。例えば、収集部１２ａは、監視対象設備で取得された複数のセンサデータを収集する。具体的には、収集部１２ａは、工場やプラントなどの監視対象設備に設置されるセンサから多変量時系列の数値データを定期的（例えば、１分ごと）に受信し、データ記憶部１３ａに格納する。ここでセンサが取得するデータとは、例えば、監視対象設備である工場、プラント内の装置や反応炉についての温度や圧力、音、振動等の各種データである。また、収集部１２ａが取得するデータはセンサが取得したデータに限定されるものではなく、例えば、画像データ、人的に入力された数値データ等でもよい。
【００２４】
計算部１２ｂは、複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、入力データおよび出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する。例えば、計算部１２ｂは、複数のセンサデータを入力データとして監視対象設備の状態を予測するための予測モデルに入力し、該予測モデルから出力される出力データを得た場合に、入力データおよび出力データに基づいて、センサごとのアトリビューションを計算する。
【００２５】
ここで、アトリビューションを計算する具体例について説明する。例えば、計算部１２ｂは、入力値から出力値を算出する学習済モデルにおいて、出力値の各入力値に関する偏微分値またはその概算値を用いて、各時刻におけるセンサごとに、アトリビューションを算出する。一例としては、計算部１２ｂは、Ｓａｌｉｅｎｃｙ  Ｍａｐを用いて、各時刻におけるセンサごとに、アトリビューションを算出する。Ｓａｌｉｅｎｃｙ  Ｍａｐは、ニューラルネットの画像分類において利用される技術であり、ニューラルネットの出力の各入力に関する偏微分値を出力に寄与するアトリビューションとして抽出する技術である。なお、Ｓａｌｉｅｎｃｙ  Ｍａｐ以外の手法でアトリビューションを計算してもよい。
【００２６】
学習部１２ｃは、アトリビューションに関する制約をつけてモデルを学習する。例えば、学習部１２ｃは、出力データと正解データに基づいてモデルのロスを計算するロス関数にアトリビューションに関する制約をつけてモデルを学習する。
【００２７】
ここで、図２を用いて、学習装置１０によって実行される学習処理の概要を説明する。図２は、学習装置によって実行される学習処理の概要を説明する図である。図２に例示するように、計算部１２ｂは、複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、モデルに入力された入力データとモデルから出力された出力データとに基づいて、アトリビューションを計算する。
【００２８】
また、学習部１２ｃは、モデルの出力データと正解データからロスを計算し、計算したロスにアトリビューションを付与することで、最終的に得られる学習済みモデルから計算されるアトリビューションが変化する制約をかけることができる。例えば、学習部１２ｃは、スパース化（重要でない特徴のアトリビューションを０にする）の制約をつけるのであれば、アトリビューションのＬ１ノルムに事前に設定された定数αをかけた値をロスに足し合わせ、該Ｌ１ノルムが足し合されたロスが小さくなるように、モデルを学習する。このように、学習部１２ｃは、アトリビューションに関する制約として、ロス関数にアトリビューションのＬ１ノルムに事前に設定された定数をかけあわせた値を足し合わせ、該Ｌ１ノルムが足し合されたロスが小さく、かつ、アトリビューションのスパース性が大きくなるように、モデルを学習する。
【００２９】
ここで、図３を用いて、学習装置１０によって実行される学習処理の具体的な処理例を説明する図である。図３は、学習装置によって実行される学習処理の具体的な処理例を説明する図である。図３の例では、計算部１２ｂは、入力データｘがニューラルネットワークＭに入力される場合に、アトリビューションＡｃ（ｘ，Ｍ）を計算する。図３に例示するように、学習部１２ｃは、アトリビューションを用いた何らかの制約を付けてニューラルネットワークＭの学習を行う。例えば、学習部１２ｃは、スパース化の制約をつけるのであれば、ロス関数は、「Ｌ´＝Ｌ（ｘ，ｙ）＋α｜Ａｃ（ｘ，ｙ，Ｍ）｜」となる。
【００３０】
また、アトリビューションを計算する手法として、Ｓａｌｉｅｎｃｙ  Ｍａｐを用いる場合に、Ｓａｌｉｅｎｃｙ  Ｍａｐ（偏微分値）のＬ１ノルムをロスＬ（ｘ，ｙ）に足し合わせるロス関数は、下記（１）式となる。ここでは、学習部１２ｃは、∂Ｓｃ（ｘ）／∂ｘのＬ１ノルムを算出する。ここでｃは、モデルの出力ノードを表す。例えば回帰モデルの場合、Ｓｃ（ｘ）として、モデルＭの出力（一般に実数値）を用いることができる。また、分類モデルの場合は、モデルＭの最終層となるSoftmax関数の入力値（一般に実数値）を用いることができる。
【００３１】
【数１】
2020201910.tif 000003
【００３２】
このＳａｌｉｅｎｃｙ  Ｍａｐ（偏微分値）のＬ１ノルムについて、入力されるサンプルデータが複数ある場合には、学習部１２ｃは、例えば、各サンプルデータの平均値を求める。例えば、ｎ個のサンプルデータ（例えば、ｎ個の画像データ）があり、ｉがサンプル番号（画像データを識別する番号）、ｊが特徴番号（画像データの画素位置を識別する番号）であるとした場合には、各サンプルのＳａｌｉｅｎｃｙ  Ｍａｐ（偏微分値）のＬ１ノルムは、下記（２）式であらわされる。
【００３３】
【数２】
2020201910.tif 000004
【００３４】
このように、学習装置１０は、ノイズの減少を狙ってアトリビューションの計算方法を変更するのではなく、学習中にアトリビューションが変化するような制約（例えばスパース化、不要なアトリビューションを０に落とし込む制約）をつけて学習する。このため、学習装置１０では、アトリビューションの計算方法は既存の手法を用いつつ、学習方法を改善することでアトリビューションのノイズを抑えることが可能である。
【００３５】
例えば、学習装置１０では、入力の出力に対する偏微分値などの単純なアトリビューションを利用した場合でもアトリビューションのノイズを減らすことができ、同時に従来手法に比べてアトリビューション自体の解釈の難しさを軽減することができる。また、サンプルごとに変化するアトリビューションの特徴も保つことができる。
【００３６】
［学習装置の処理手順］
次に、図４を用いて、第１の実施形態に係る学習装置１０による処理手順の例を説明する。図４は、第１の実施形態に係る学習装置における学習処理の流れの一例を示すフローチャートである。
【００３７】
図４に例示するように、学習装置１０は、データを取得すると（ステップＳ１０１肯定）、データをモデルに入力し（ステップＳ１０２）、入力データと出力データとを用いて、アトリビューションを計算する（ステップＳ１０３）。例えば、学習装置１０の計算部１２ｂは、複数のセンサデータを入力データとして監視対象設備の状態を予測するための予測モデルに入力し、該予測モデルから出力される出力データを得た場合に、入力データおよび出力データに基づいて、センサごとのアトリビューションを計算する。
【００３８】
そして、学習装置１０は、ロスにアトリビューションを付与し（ステップＳ１０４）、スパース化の制約をつけてモデルのパラメータを更新する（ステップＳ１０５）。例えば、学習部１２ｃは、出力データと正解データに基づいて、モデルのロスを計算し、該ロスにアトリビューションを付与し、アトリビューションが付与されたロスが小さく、かつアトリビューションのスパース性が大きくなるように、予測モデルのパラメータを更新する学習処理を行う。ここで、例えば、学習装置１０は、新たなデータを取得するたびに、上述したステップＳ１０２〜１０５の処理を行ってモデルの学習処理を繰り返し行うものとする。また、例えば、学習装置１０は、所定の終了条件を満たすまで、上述のモデルのパラメータを更新する処理を繰り返し、所定の終了条件を満たした場合に、モデルの学習処理を終了するようにしてもよい。その後、学習装置１０は、学習済みモデルを出力したり、学習済みモデル記憶部１３ｂに学習済みモデルを格納したりする。
【００３９】
［第１の実施形態の効果］
第１の実施形態に係る学習装置１０は、複数のデータを収集し、複数のデータを入力データとしてモデルに入力し、該モデルから出力される出力データを得た場合に、入力データおよび出力データに基づいて、入力データの各要素の出力データに対する寄与度であるアトリビューションを計算する。そして、学習装置１０は、アトリビューションに関する制約をつけてモデルを学習する。このため、学習装置１０では、ノイズの減少を狙ってアトリビューションの計算方法を変えることなく、アトリビューションのノイズを抑えることが可能である。つまり、学習装置１０では、学習時にアトリビューションに制約を与えることによって、例えば、アトリビューションの解釈性を保ちつつノイズを減少させることが可能である。
【００４０】
［第２の実施形態］
上記した第１の実施形態では、モデルを学習する学習装置について説明したが、第２の実施形態では、学習処理によって得られた学習済みモデルを用いて、アトリビューションを抽出する抽出装置について説明する。以下の第２の実施形態では、第２の実施形態に係る抽出装置１０Ａの構成、抽出装置１０Ａの処理の流れを順に説明し、最後に第１の実施形態による効果を説明する。なお、第１の実施形態と同様の構成および処理については説明を省略する。
【００４１】
［抽出装置の構成］
まず、図５を用いて、抽出装置１０Ａの構成を説明する。図５は、第２の実施形態に係る抽出装置の構成例を示すブロック図である。抽出装置１０Ａは、例えば、工場やプラントなどの監視対象設備に設置されるセンサによって取得された複数のデータを収集し、収集された複数のデータを入力として、監視対象設備の異常を予測するための学習済モデルを用いて、監視対象設備の特定センサの推定値を出力する。また、抽出装置１０Ａは、このように出力された推定値から異常度を算出してもよい。例えば、異常度は、特定のセンサの値を目的変数とした回帰モデルを学習した場合、モデルが出力する当該センサの推定値と事前に指定するなどした特定の値との誤差などとして定義することが可能である。あるいは、異常発生の有無を分類問題として扱いモデルを学習した場合には、指定時間内の異常に分類された時間帯の割合などを利用することができる。また、抽出装置１０Ａは、学習済モデルに入力された各センサのデータと、学習済モデルから出力された出力データとを用いて、センサごとの出力値に対する寄与度であるアトリビューションを算出する。ここでアトリビューションとは、各入力が出力に対してどれだけ寄与したかを示すものであり、アトリビューションの絶対値が大きいほど、その入力は出力に対する影響度が高かったことを意味する。
【００４２】
抽出装置１０Ａは、通信処理部１１、制御部１２および記憶部１３を有する。制御部１２は、収集部１２ａ、計算部１２ｂ、学習部１２ｃ、抽出部１２ｄ、予測部１２ｅおよび可視化部１２ｆを有する。ここで、抽出装置１０Ａは、抽出部１２ｄ、予測部１２ｅおよび可視化部１２ｆをさらに有する点が、学習装置１０と異なる。なお、収集部１２ａ、計算部１２ｂおよび学習部１２ｃについては、第１の実施形態で説明した学習装置１０の収集部１２ａ、計算部１２ｂおよび学習部１２ｃと同様の処理を行うので、説明を省略する。
【００４３】
抽出部１２ｄは、学習部１２ｃによって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する。例えば、抽出部１２ｄは、学習済みモデルを学習済みモデル記憶部１３ｂから読み出し、データ記憶部１３ａからデータを取得すると、データを学習済みモデルに入力し、データごとのアトリビューションを抽出する。
【００４４】
例えば、抽出部１２ｄは、入力値から出力値を算出する学習済モデルにおいて、出力値の各入力値に関する偏微分値またはその概算値を用いて、各時刻におけるセンサごとに、アトリビューションを算出する。一例としては、計算部１２ｂは、Ｓａｌｉｅｎｃｙ  Ｍａｐを用いて、各時刻におけるセンサごとに、アトリビューションを算出する。
【００４５】
予測部１２ｅは、収集部１２ａによって収集された複数のデータを入力として、監視対象設備の状態を予測するための学習済モデルを用いて、所定の出力値を出力する。例えば、予測部１２ｅは、プロセスデータおよび学習済みモデル（識別関数または回帰関数）を用いて、監視対象設備の異常度を算出し、予め設定された一定時間後に異常が発生するか否かを予測する。
【００４６】
可視化部１２ｆは、抽出部１２ｄによって抽出されたアトリビューションや予測部１２ｅによって算出された異常度を可視化する。例えば、可視化部１２ｆは、各センサデータのアトリビューションの推移を示すグラフを表示したり、算出された異常度をチャート画面として表示したりする。
【００４７】
ここで、図６を用いて、抽出装置１０Ａによって実行される異常予測処理およびアトリビューション抽出処理の概要を説明する。図６は、抽出装置によって実行される異常予測処理およびアトリビューション抽出処理の概要を説明する図である。
【００４８】
図６では、プラント内の反応炉や装置などにセンサや運転用の信号などを収集するデバイスが取り付けられ、一定時間毎にデータを収集していることを図示している。そして、図６では、収集部１２ａが各センサＡ〜センサＥから収集したプロセスデータの推移を示したものを図示しており、第１の実施形態で説明したように、学習部１２ｃがモデルを学習することで学習済みモデルを生成する。そして、予測部１２ｅが、学習済みモデルを用いて、一定時間後の異常を予測する。そして、可視化部１２ｆは、算出された異常度の時系列データをチャート画面として出力する。
【００４９】
また、抽出部１２ｄは、学習済みモデルに入力されたプロセスデータと、学習済みモデルからの出力値を用いて、各時刻におけるセンサごとの所定の出力値に対するアトリビューションを抽出する。そして、可視化部１２ｆは、予測に対する各センサのプロセスデータの重要度の推移を示すグラフを表示する。
【００５０】
また、抽出装置１０Ａは、異常予測処理のみに適用されるものではなく、例えば、画像データを収集して画像分類処理に適用するようにしてもよい。ここで、図７を用いて、抽出装置１０Ａによって実行される画像分類処理およびアトリビューション抽出処理の概要を説明する。図７は、抽出装置によって実行される画像分類処理およびアトリビューション抽出処理の概要を説明する図である。
【００５１】
図７では、収集部１２ａが画像データを収集し、収集した画像データを入力データとして用いて、第１の実施形態で説明したように、学習部１２ｃがモデルを学習することで学習済みモデルを生成する。そして、予測部１２ｅが、学習済みモデルを用いて、画像データに含まれる画像を分類する。例えば、図７の例では、予測部１２ｅは、画像データに含まれる画像が車の画像であるか飛行機の画像であるかを判定し、判定結果を出力する。
【００５２】
また、抽出部１２ｄは、学習済みモデルに入力された画像データと、学習済みモデルから出力された分類結果とを用いて、各画像における画素ごとのアトリビューションを抽出する。そして、可視化部１２ｆは、各画像における画素ごとのアトリビューションを示す画像を表示する。この画像では、アトリビューションを濃淡で表現しており、アトリビューションが大きい画素ほど所定の色が濃く、アトリビューションが小さい画素ほど所定の色が薄く表示される。
【００５３】
このように、抽出装置１０Ａは、学習部１２ｃによって学習された学習済みモデルに入力データを入力し、該学習済みモデルから出力される出力データを得た場合に、該入力データおよび該出力データに基づいて、入力データの各要素の出力データに対するアトリビューションを抽出する。抽出装置１０Ａでは、アトリビューションが変化するような制約をつけて学習した学習済みモデルが適用されているので、入力の出力に対する偏微分値などの単純なアトリビューションを利用した場合でもアトリビューションのノイズを減らすことができる。また、抽出装置１０Ａでは、ノイズの減少を狙ってアトリビューションの計算方法を変える必要がないので、アトリビューション自体の解釈の難しさを軽減することが可能である。また、サンプルごとに変化するアトリビューションの特徴も保っている。このため、監視者が従来と比較して解釈のしやすい、ノイズの小さなアトリビューションを観察することができるため、より簡易に制御や行動につなげることができる。
【００５４】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵやＧＰＵおよび当該ＣＰＵやＧＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００５５】
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００５６】
［プログラム］
また、上記実施形態において説明した情報処理装置が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、実施形態に係る学習装置１０または抽出装置１０Ａが実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
【００５７】
図９は、プログラムを実行するコンピュータを示す図である。図９に例示するように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有し、これらの各部はバス１０８０によって接続される。
【００５８】
メモリ１０１０は、図９に例示するように、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、図９に例示するように、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、図９に例示するように、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、図９に例示するように、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、図９に例示するように、例えばディスプレイ１１３０に接続される。
【００５９】
ここで、図９に例示するように、ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、上記の、プログラムは、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０９０に記憶される。
【００６０】
また、上記実施形態で説明した各種データは、プログラムデータとして、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出し、各種処理手順を実行する。
【００６１】
なお、プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００６２】
上記の実施形態やその変形は、本願が開示する技術に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００６３】
１０  学習装置
１０Ａ  抽出装置
１１  通信処理部
１２  制御部
１２ａ  収集部
１２ｂ  計算部
１２ｃ  学習部
１２ｄ  抽出部
１２ｅ  予測部
１２ｆ  可視化部
１３  記憶部
１３ａ  データ記憶部
１３ｂ  学習済みモデル記憶部
【図１】
2020201910.tif 000005
【図２】
2020201910.tif 000006
【図３】
2020201910.tif 000007
【図４】
2020201910.tif 000008
【図５】
2020201910.tif 000009
【図６】
2020201910.tif 000010
【図７】
2020201910.tif 000011
【図８】
2020201910.tif 000012
【図９】
2020201910.tif 000013