(57)【要約】      （修正有）【課題】実際に得られたデータに含まれるノイズの特性が時間的に変化するような場合であっても、データから異常の有無を高精度に判別することが可能な異常検知装置等を提供する。【解決手段】異常検知装置３は、予測部と、異常度算出部と、を有する。予測部は、ｍ次元の時系列データの時間ステップ毎に、ｍ次元の時系列データの時間ステップｔにおいて取得され得る予測値の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得するための処理を行う。異常度算出部は、予測部により取得された分布パラメータを用い、ｍ次元の時系列データの時間ステップｔの実測値における異常の大きさを評価した評価値に相当する異常度を算出するための処理を行う。【選択図】図２
2020052740.tif 000002
【特許請求の範囲】
【請求項１】
測定対象の物理量を実際に測定して得られたＴ（Ｔ≧２）個の実測値を含むｍ（ｍ≧１）次元の時系列データから異常の有無を検知するように構成された異常検知装置であって、
前記ｍ次元の時系列データの時間ステップ毎に、前記ｍ次元の時系列データの時間ステップｔ（１≦ｔ≦Ｔ）において取得され得る予測値の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得するための処理を行うように構成された予測部と、
前記予測部により取得された前記分布パラメータを用い、前記ｍ次元の時系列データの前記時間ステップｔの実測値における異常の大きさを評価した評価値に相当する異常度を算出するための処理を行うように構成された異常度算出部と、
を有することを特徴とする異常検知装置。
【請求項２】
前記予測部は、前記ｍの値が２以上である場合に、前記ｍ次元の時系列データのうちの少なくとも１次元の時系列データについて、前記分布パラメータを取得するための処理を行う
ことを特徴とする請求項１に記載の異常検知装置。
【請求項３】
前記異常度算出部は、前記異常度を算出するための処理として、前記連続確率分布の負の対数尤度を算出する処理を行う
ことを特徴とする請求項１に記載の異常検知装置。
【請求項４】
前記予測部は、
多層のニューラルネットワークを用いて構成されているとともに、前記時間ステップｔに隣接する複数の時間ステップに対応する過去の複数の実測値を入力データとして用いて処理を行うことにより出力データを取得するように構成された基本ネットワーク部と、
前記基本ネットワーク部により取得された前記出力データを分割する処理を行うことにより、前記分布パラメータの元となる基本パラメータを取得するように構成されたパラメータ取得部と、
前記パラメータ取得部により取得された前記基本パラメータを前記連続確率分布の定義域に収めるための処理を行うことにより、前記分布パラメータを取得するように構成された制約処理部と、
を有することを特徴とする請求項１に記載の異常検知装置。
【請求項５】
前記パラメータ取得部は、前記ｍの値が２以上であるとともに前記連続確率分布が多変量ガウス分布である場合に、前記基本ネットワーク部により取得された前記出力データを分割する処理を行うことにより、ｍ次元の平均ベクトルと、ｍ次の正方行列に相当するｍ次の中間行列と、を前記基本パラメータとして取得し、
前記制約処理部は、前記ｍの値が２以上であるとともに前記連続確率分布が前記多変量ガウス分布である場合に、前記ｍ次元の平均ベクトルと、前記ｍ次の中間行列を前記多変量ガウス分布の定義域に収めるための処理により得られたｍ次の分散共分散行列と、を前記分布パラメータとして取得する
ことを特徴とする請求項４に記載の異常検知装置。
【請求項６】
前記制約処理部は、前記ｍ次の中間行列を前記多変量ガウス分布の定義域に収めるための処理として、前記ｍ次の中間行列のグラム行列と、ｍ次の単位行列をλ（λは正の実数）倍した行列と、を加算する処理を行う
ことを特徴とする請求項５に記載の異常検知装置。
【請求項７】
前記異常検知装置による異常検知対象の装置が正常に動作している状態における前記測定対象の物理量の測定結果として得られた複数の実測値を含む時系列データに相当する正常データを用い、前記基本ネットワーク部と同一のネットワーク構成を有する所定のニューラルネットワークのパラメータを繰り返し更新する処理に相当する学習処理を行うことにより、前記基本ネットワーク部のニューラルネットワークのパラメータを設定する際に用いられるモデルパラメータを取得するように構成されたモデルパラメータ学習部をさらに有する
ことを特徴とする請求項４に記載の異常検知装置。
【請求項８】
前記モデルパラメータ学習部は、前記正常データを用いて前記所定のニューラルネットワークに含まれる少なくとも一部の結合強度の更新に用いられる勾配を算出する処理を前記学習処理において行うとともに、前記学習処理における所定の終了条件を満たした際の前記所定のニューラルネットワークの各結合強度を前記モデルパラメータとして保持する
ことを特徴とする請求項７に記載の異常検知装置。
【請求項９】
測定対象の物理量を実際に測定して得られたＴ（Ｔ≧２）個の実測値を含むｍ（ｍ≧１）次元の時系列データから異常の有無を検知するための異常検知方法であって、
予測部が、前記ｍ次元の時系列データの時間ステップ毎に、前記ｍ次元の時系列データの時間ステップｔ（１≦ｔ≦Ｔ）において取得され得る予測値の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得し、
異常度算出部が、前記予測部により取得された前記分布パラメータを用い、前記ｍ次元の時系列データの前記時間ステップｔの実測値における異常の大きさを評価した評価値に相当する異常度を算出する
ことを特徴とする異常検知方法。
【請求項１０】
測定対象の物理量を実際に測定して得られたＴ（Ｔ≧２）個の実測値を含むｍ（ｍ≧１）次元の時系列データから異常の有無を検知するコンピュータにより実行されるプログラムであって、
前記ｍ次元の時系列データの時間ステップ毎に、前記ｍ次元の時系列データの時間ステップｔ（１≦ｔ≦Ｔ）において取得され得る予測値の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得する処理と、
前記分布パラメータを用い、前記ｍ次元の時系列データの前記時間ステップｔの実測値における異常の大きさを評価した評価値に相当する異常度を算出する処理と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、異常検知装置、異常検知方法及びプログラムに関する。
【背景技術】
【０００２】
時系列データをモデル化した自己回帰モデルを用い、監視対象の装置及び機器等に取り付けられたセンサにより実際に得られたデータから当該監視対象の装置及び機器等における異常の有無を判別するような手法が従来から知られている。
【０００３】
また、非線形の時系列データをモデル化するための手法として、例えば、ＬＳＴＭ（Ｌｏｎｇ Ｓｈｏｒｔ Ｔｅｒｍ Ｍｅｍｏｒｙ）等のようなニューラルネットワークに含まれる各ノードの処理に用いられるパラメータを機械学習で学習させる手法が従来から知られている。
【０００４】
しかし、従来から知られている手法によれば、例えば、実際に得られたデータに含まれるノイズの特性が時間的に変化するような場合に、当該データから異常の有無を判別する際の判別精度が低下してしまう、という問題点がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】日本国特開平７−２１９６２３号公報
【非特許文献】
【０００６】
【非特許文献１】Pankaj Malhotra, Lovekesh Vig, Gautam Shroff, Puneet Agarwal：「Long Short Term Memory Networks for Anomaly Detection in Time Series」, ESANN 2015 proceedings, Bruges (Belgium), 22-24 April 2015
【発明の概要】
【発明が解決しようとする課題】
【０００７】
実施形態は、実際に得られたデータに含まれるノイズの特性が時間的に変化するような場合であっても、当該データから異常の有無を高精度に判別することが可能な異常検知装置、異常検知方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
実施形態の異常検知装置は、測定対象の物理量を実際に測定して得られたＴ（Ｔ≧２）個の実測値を含むｍ（ｍ≧１）次元の時系列データから異常の有無を検知するように構成された装置であって、予測部と、異常度算出部と、を有して構成されている。前記予測部は、前記ｍ次元の時系列データの時間ステップ毎に、前記ｍ次元の時系列データの時間ステップｔ（１≦ｔ≦Ｔ）において取得され得る予測値の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得するための処理を行うように構成されている。前記異常度算出部は、前記予測部により取得された前記分布パラメータを用い、前記ｍ次元の時系列データの前記時間ステップｔの実測値における異常の大きさを評価した評価値に相当する異常度を算出するための処理を行うように構成されている。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係る異常検知装置を含む監視システムの構成の一例を示す図。
【図２】実施形態に係る異常検知装置の構成の一例を示す図。
【図３】実施形態に係る異常検知装置に含まれる異常度評価部の構成の一例を示す図。
【図４】実施形態に係る異常検知装置に含まれるモデルパラメータ学習部の構成の一例を示す図。
【図５】実施形態に係る異常検知装置に含まれる異常判定処理部の構成の一例を示す図。
【図６】実施形態に係る異常検知装置に含まれる異常度評価部において行われる処理の具体例を示すフローチャート。
【図７】実施形態に係る異常検知装置に含まれるモデルパラメータ学習部において行われる処理の具体例の一部を示すフローチャート。
【図８】図７の処理の続きを示すフローチャート。
【図９】実施形態の作用効果を説明するための模式図。
【発明を実施するための形態】
【００１０】
以下、実施形態について、図面を参照しつつ説明を行う。
【００１１】
監視システム１０１は、図１に示すように、製造装置１と、センサデータ収集装置２と、異常検知装置３と、表示装置４と、警報装置５と、を有して構成されている。図１は、実施形態に係る異常検知装置を含む監視システムの構成の一例を示す図である。
【００１２】
製造装置１は、例えば、半導体等の所定の製品を製造するための装置として構成されている。また、製造装置１には、所定の製品の製造工程における測定対象の物理量を測定するための１つ以上のセンサ１Ａが取り付けられている。
【００１３】
センサ１Ａは、例えば、振動センサ、電圧センサ、温度センサ及び静電容量センサ等の様々なセンサのうちのいずれかにより構成されている。また、センサ１Ａは、所定の種類の物理量を測定して得られたセンサ値を示す信号を生成するとともに、当該生成した信号をセンサデータ収集装置２へ出力するように構成されている。なお、本実施形態によれば、製造装置１に取り付けられた複数のセンサ１Ａにおいて、１つの種類の物理量のみが測定対象の物理量として測定されるものであってもよく、または、相互に異なる複数の種類の物理量が測定対象の物理量として測定されるものであってもよい。また、本実施形態によれば、製造装置１に取り付けられた複数のセンサ１Ａのうちの一部のセンサにおいて、相互に同じ種類の物理量が測定対象の物理量として測定されるものであってもよい。
【００１４】
センサデータ収集装置２は、例えば、１つ以上のプロセッサ２Ａと、記憶媒体２Ｂと、を有するコンピュータとして構成されている。また、センサデータ収集装置２は、センサ１Ａから出力される信号により示される時系列の複数のセンサ値（実測値）をセンサデータとして蓄積するように構成されている。すなわち、センサデータ収集装置２に蓄積されるセンサデータには、１種類以上の測定対象の物理量を実際に測定して得られたセンサ値（実測値）が含まれている。また、センサデータ収集装置２に蓄積されるセンサデータは、非線形の時間依存性を有している。
【００１５】
なお、本実施形態によれば、１つの製造装置１に設けられたセンサ１Ａから出力される信号に応じたセンサデータがセンサデータ収集装置２に蓄積されるものに限らず、複数の製造装置１に設けられたセンサ１Ａ各々から出力される信号に応じたセンサデータがセンサデータ収集装置２に蓄積されるようにしてもよい。
【００１６】
異常検知装置３は、例えば、１つ以上のプロセッサ３Ａと、記憶媒体３Ｂと、を有するコンピュータとして構成されている。また、異常検知装置３は、センサデータ収集装置２に蓄積されたセンサデータを読み込むとともに、当該読み込んだセンサデータから製造装置１における異常の有無を判定するための処理を行うように構成されている。また、異常検知装置３は、製造装置１に異常ありとの判定結果を得た際に、当該判定結果に応じた異常の内容を示す信号を生成するとともに、当該生成した信号を表示装置４及び警報装置５のうちの少なくとも一方へ出力するように構成されている。
【００１７】
すなわち、製造装置１は、監視システム１０１における監視対象の装置に相当するとともに、異常検知装置３による異常検知対象の装置に相当する。
【００１８】
表示装置４は、例えば、液晶モニタ等を有して構成されている。また、表示装置４は、異常検知装置３から出力される信号に応じ、製造装置１において発生している異常を報知するための文字列等を画面に表示することができるように構成されている。
【００１９】
警報装置５は、例えば、ランプまたはブザーを有して構成されている。また、警報装置５は、異常検知装置３から出力される信号に応じて動作することにより、製造装置１において異常が発生している旨を報知することができるように構成されている。
【００２０】
異常検知装置３は、例えば、図２に示すように、異常度評価部３１と、モデルパラメータ学習部３２と、異常判定処理部３３と、を有して構成されている。図２は、実施形態に係る異常検知装置の構成の一例を示す図である。
【００２１】
異常度評価部３１は、センサデータ収集装置２に蓄積されたセンサデータを読み込むとともに、当該読み込んだセンサデータに含まれる評価対象のセンサ値（実測値）における異常の大きさを評価した評価値に相当する異常度を算出するための処理を行うように構成されている。また、異常度評価部３１は、前述の処理により算出した異常度を異常判定処理部３３へ出力するように構成されている。
【００２２】
モデルパラメータ学習部３２は、センサデータ収集装置２に蓄積されたセンサデータを読み込むとともに、当該読み込んだセンサデータに含まれる時系列の複数のセンサ値（実測値）に基づき、異常度評価部３１において用いられるモデルパラメータを取得するための学習処理を行うように構成されている。
【００２３】
異常判定処理部３３は、異常度評価部３１から出力される異常度に基づき、製造装置１における異常の有無を判定するための判定処理を行うように構成されている。また、異常判定処理部３３は、製造装置１に異常ありとの判定結果を得た際に、当該判定結果に応じた異常の内容を示す信号を生成するとともに、当該生成した信号を表示装置４及び警報装置５のうちの少なくとも一方へ出力するように構成されている。
【００２４】
異常度評価部３１は、例えば、図３に示すように、予測部３１１と、異常度算出部３１Ｄと、を有して構成されている。図３は、実施形態に係る異常検知装置に含まれる異常度評価部の構成の一例を示す図である。
【００２５】
予測部３１１は、センサデータ収集装置２に蓄積されたセンサデータと、モデルパラメータ学習部３２により得られたモデルパラメータと、をそれぞれ読み込むとともに、当該読み込んだモデルパラメータと、当該読み込んだセンサデータに含まれる時系列の複数のセンサ値（実測値）と、に基づき、予測対象のセンサ値（予測値）の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得するための処理を行うように構成されている。また、予測部３１１は、前述の処理により取得した分布パラメータを異常度算出部３１Ｄへ出力するように構成されている。また、予測部３１１は、基本ネットワーク部３１Ａと、パラメータ取得部３１Ｂと、制約処理部３１Ｃと、を有して構成されている。
【００２６】
基本ネットワーク部３１Ａは、例えば、入力層、隠れ層及び出力層を有する多層のニューラルネットワークを用いて構成されている。また、基本ネットワーク部３１Ａは、モデルパラメータ学習部３２において保持されているモデルパラメータを読み込むとともに、当該読み込んだモデルパラメータに応じてニューラルネットワークのパラメータに相当する当該ニューラルネットワークの各重み（結合強度）を設定するように構成されている。また、基本ネットワーク部３１Ａは、モデルパラメータ学習部３２から読み込んだモデルパラメータに応じた重みを設定した状態において、センサデータ収集装置２に蓄積されたセンサデータを読み込むとともに、当該読み込んだセンサデータに含まれる時系列の複数のセンサ値（実測値）を入力データとして用いて処理を行うことにより出力データを取得するように構成されている。また、基本ネットワーク部３１Ａは、前述の処理により取得した出力データをパラメータ取得部３１Ｂへ出力するように構成されている。
【００２７】
なお、本実施形態の基本ネットワーク部３１Ａは、後述の基本ネットワーク部３２Ａと同一のネットワーク構成を有している限りにおいては、任意のニューラルネットワークを用いて構成することができる。具体的には、本実施形態の基本ネットワーク部３１Ａは、例えば、全結合型ニューラルネットワーク、畳み込みニューラルネットワーク、及び、再帰型ニューラルネットワーク等の様々なニューラルネットワークのうちのいずれかを用いて構成することができる。
【００２８】
パラメータ取得部３１Ｂは、基本ネットワーク部３１Ａから出力される出力データを分割する処理を行うことにより、分布パラメータの元となる基本パラメータを取得するように構成されている。また、パラメータ取得部３１Ｂは、前述の処理により取得した基本パラメータを制約処理部３１Ｃへ出力するように構成されている。
【００２９】
制約処理部３１Ｃは、パラメータ取得部３１Ｂから出力される基本パラメータを予測対象のセンサ値（予測値）の分布状態を表す連続確率分布の定義域に収めるための処理を行うことにより、当該連続確率分布の表現に必要な分布パラメータを取得するように構成されている。また、制約処理部３１Ｃは、前述の処理により取得した分布パラメータを異常度算出部３１Ｄへ出力するように構成されている。
【００３０】
異常度算出部３１Ｄは、センサデータ収集装置２に蓄積されたセンサデータを読み込むとともに、予測部３１１から出力される分布パラメータを用い、当該読み込んだセンサデータに含まれる評価対象のセンサ値（実測値）における異常の大きさを評価した評価値に相当する異常度を算出するための処理を行うように構成されている。また、異常度算出部３１Ｄは、前述の処理により算出した異常度を異常判定処理部３３へ出力するように構成されている。
【００３１】
モデルパラメータ学習部３２は、例えば、図４に示すように、基本ネットワーク部３２Ａと、パラメータ取得部３２Ｂと、制約処理部３２Ｃと、異常度算出部３２Ｄと、を有して構成されている。図４は、実施形態に係る異常検知装置に含まれるモデルパラメータ学習部の構成の一例を示す図である。
【００３２】
基本ネットワーク部３２Ａは、例えば、入力層、隠れ層及び出力層を有する多層のニューラルネットワークを用いて構成されている。また、基本ネットワーク部３２Ａは、基本ネットワーク部３１Ａと同一のネットワーク構成を有するニューラルネットワークを用いて構成されている。また、基本ネットワーク部３２Ａは、センサデータ収集装置２に蓄積されたセンサデータを読み込むとともに、当該読み込んだセンサデータに含まれる時系列の複数のセンサ値（実測値）を入力データとして用いて処理を行うことにより出力データを取得するように構成されている。また、基本ネットワーク部３２Ａは、前述の処理により取得した出力データをパラメータ取得部３２Ｂへ出力するように構成されている。また、基本ネットワーク部３２Ａは、パラメータ取得部３２Ｂから出力される勾配（後述）を用いたバックプロパゲーションをニューラルネットワークに対して施すことにより、当該ニューラルネットワークに含まれる少なくとも一部の重み（結合強度）を更新する処理を学習処理において行うように構成されている。また、基本ネットワーク部３２Ａは、学習処理における所定の終了条件を満たした際の当該ニューラルネットワークの各重み（結合強度）をモデルパラメータとして保持するように構成されている。
【００３３】
なお、本実施形態の基本ネットワーク部３２Ａは、基本ネットワーク部３１Ａと同一のネットワーク構成を有している限りにおいては、任意のニューラルネットワークを用いて構成することができる。具体的には、本実施形態の基本ネットワーク部３２Ａは、例えば、全結合型ニューラルネットワーク、畳み込みニューラルネットワーク、及び、再帰型ニューラルネットワーク等の様々なニューラルネットワークのうちのいずれかを用いて構成することができる。
【００３４】
パラメータ取得部３２Ｂは、基本ネットワーク部３２Ａから出力される出力データを分割する処理を行うことにより、分布パラメータの元となる基本パラメータを取得するように構成されている。また、パラメータ取得部３２Ｂは、前述の処理により取得した基本パラメータを制約処理部３２Ｃへ出力するように構成されている。また、パラメータ取得部３２Ｂは、制約処理部３２Ｃから出力される勾配（後述）に基づき、基本ネットワーク部３２Ａにより得られた出力データに対する異常度算出部３２Ｄにより得られた異常度の勾配を算出するための処理を行うように構成されている。また、パラメータ取得部３２Ｂは、前述の処理により算出した勾配を基本ネットワーク部３２Ａへ出力するように構成されている。
【００３５】
制約処理部３２Ｃは、パラメータ取得部３２Ｂから出力される基本パラメータを予測対象のセンサ値（予測値）の分布状態を表す連続確率分布の定義域に収めるための処理を行うことにより、当該連続確率分布の表現に必要な分布パラメータを取得するように構成されている。また、制約処理部３２Ｃは、前述の処理により取得した分布パラメータを異常度算出部３２Ｄへ出力するように構成されている。また、制約処理部３２Ｃは、異常度算出部３２Ｄから出力される勾配（後述）に基づき、パラメータ取得部３２Ｂにより得られた基本パラメータに対する異常度算出部３２Ｄにより得られた異常度の勾配を算出するための処理を行うように構成されている。また、制約処理部３２Ｃは、前述の処理により算出した勾配をパラメータ取得部３２Ｂへ出力するように構成されている。
【００３６】
異常度算出部３２Ｄは、センサデータ収集装置２に蓄積されたセンサデータを読み込むとともに、制約処理部３２Ｃから出力される分布パラメータを用い、当該読み込んだセンサデータに含まれる評価対象のセンサ値（実測値）における異常の大きさを評価した評価値に相当する異常度を算出するための処理を行うように構成されている。また、異常度算出部３２Ｄは、制約処理部３２Ｃにより得られた分布パラメータに対する異常度の勾配を算出するための処理を行うように構成されている。また、異常度算出部３２Ｄは、前述の処理により算出した勾配を制約処理部３２Ｃへ出力するように構成されている。
【００３７】
異常判定処理部３３は、例えば、図５に示すように、異常度記録部３３Ａと、平滑化処理部３３Ｂと、異常判定部３３Ｃと、を有して構成されている。図５は、実施形態に係る異常検知装置に含まれる異常判定処理部の構成の一例を示す図である。
【００３８】
異常度記録部３３Ａは、異常度評価部３１から出力される異常度を時系列に記録するように構成されている。
【００３９】
平滑化処理部３３Ｂは、異常度記録部３３Ａに時系列に記録された複数の異常度を読み込むとともに、当該読み込んだ複数の異常度に対して平滑化処理を施すように構成されている。また、平滑化処理部３３Ｂは、前述の平滑化処理の処理結果として得られた異常度を異常判定部３３Ｃへ出力するように構成されている。
【００４０】
異常判定部３３Ｃは、平滑化処理部３３Ｂから出力される異常度に基づき、製造装置１における異常の有無を判定するための判定処理を行うように構成されている。また、異常判定部３３Ｃは、製造装置１に異常ありとの判定結果を得た際に、当該判定結果に応じた異常の内容を示す信号を生成するとともに、当該生成した信号を表示装置４及び警報装置５のうちの少なくとも一方へ出力するように構成されている。
【００４１】
なお、本実施形態においては、異常度評価部３１、モデルパラメータ学習部３２、及び、異常判定処理部３３の各部の機能が、プロセッサ３Ａ及び記憶媒体３Ｂを含むハードウェアにより実現されるようにしてもよい。または、本実施形態においては、例えば、異常度評価部３１、モデルパラメータ学習部３２、及び、異常判定処理部３３の各部の機能を実現するためのプログラムが記憶媒体３Ｂに格納されているとともに、プロセッサ３Ａが当該プログラムを読み込んで実行するようにしてもよい。コンピュータ読取可能な記憶媒体３Ｂとしては、ＣＤ−ＲＯＭ等の光ディスク、ＤＶＤ−ＲＯＭ等の相変化型光ディスク、ＭＯ（Ｍａｇｎｅｔ  Ｏｐｔｉｃａｌ）やＭＤ（Ｍｉｎｉ  Ｄｉｓｋ）などの光磁気ディスク、フロッピー（登録商標）ディスクやリムーバブルハードディスクなどの磁気ディスク、コンパクトフラッシュ（登録商標）、スマートメディア、ＳＤメモリカード、メモリスティック等のメモリカードが挙げられる。また、本発明の目的のために特別に設計されて構成された集積回路（ＩＣチップ等）等のハードウェア装置も記憶媒体として含まれる。
【００４２】
続いて、本実施形態の作用について説明する。
【００４３】
なお、以降においては、ｍ個のセンサ１Ａから得られた時系列の複数のセンサ値を含むセンサデータ、すなわち、ｍ次元の時系列データに対して処理が行われる場合を例に挙げて説明する。また、以降においては、時系列データが、Ｘ＝｛ｘ1，ｘ2，…，ｘT｝として表されるＴ（Ｔ≧２）個のセンサ値を有するデータ、すなわち、系列長Ｔのデータであるものとして説明する。また、以降の説明においては、時系列データＸに含まれる各センサ値（実測値）の時間間隔を時間ステップと称するものとする。また、以降の説明においては、時系列データＸに含まれる各センサ値に対して時間ステップ毎に付与された番号をステップ値と称するものとする。また、以降においては、ｍの値が２以上であるとともに、予測対象のｍ次元のセンサ値の分布状態を表す連続確率分布として、下記数式（１）により示される多変量ガウス分布Ｎ（ｘ；μ，Σ）を用いた場合を例に挙げて説明する。なお、下記数式（１）において、ｘはｍ次元のセンサ値を含むベクトルを表し、μはｍ次元の時系列データＸ各々のセンサ値の平均値を含む平均ベクトルを表し、Σはｍ次元の時系列データＸにおける分散及び共分散を含む正定値対称行列に相当するｍ次の分散共分散行列を表すものとする。
2020052740.tif 000003
【００４４】
まず、異常度評価部３１の各部において行われる処理について、図６を参照しつつ説明する。図６は、実施形態に係る異常検知装置に含まれる異常度評価部において行われる処理の具体例を示すフローチャートである。
【００４５】
基本ネットワーク部３１Ａは、モデルパラメータ学習部３２において保持されているモデルパラメータを読み込むとともに、当該読み込んだモデルパラメータに応じてニューラルネットワークに含まれる各重み（結合強度）を設定する（図６のステップＳ１）。
【００４６】
予測部３１１の各部（基本ネットワーク部３１Ａ、パラメータ取得部３１Ｂ及び制約処理部３１Ｃ）は、予測対象のセンサ値のステップ値ｔを１に設定する（図６のステップＳ２）。また、異常度算出部３１Ｄは、評価対象のセンサ値のステップ値ｔを１に設定する（図６のステップＳ２）。
【００４７】
基本ネットワーク部３１Ａは、センサデータ収集装置２に蓄積されたセンサデータの中から、時間ステップｔに隣接する過去のセンサデータを読み込む（図６のステップＳ３）。
【００４８】
具体的には、基本ネットワーク部３１Ａは、例えば、時間ステップｔに対応するｍ次元のセンサ値ｘtを予測する場合には、センサデータ収集装置２に蓄積されたセンサデータの中から、当該時間ステップｔに隣接するＷ（Ｗ≧２）個の時間ステップに対応するｍ次元×Ｗ個のセンサ値｛ｘt-W、ｘt-W+1、…、ｘt-1｝を含む過去のセンサデータを読み込む。
【００４９】
基本ネットワーク部３１Ａは、図６のステップＳ３において読み込んだセンサデータに含まれる各センサ値を入力データとして用いて処理を行うことにより出力データを取得するとともに、当該取得した出力データをパラメータ取得部３１Ｂへ出力する（図６のステップＳ４）。すなわち、基本ネットワーク部３１Ａは、時間ステップｔに隣接する複数の時間ステップに対応する過去の複数の実測値を入力データとして用いて処理を行うことにより出力データを取得する。
【００５０】
パラメータ取得部３１Ｂは、基本ネットワーク部３１Ａから出力される出力データを分割する処理を行うことにより基本パラメータを取得するとともに、当該取得した基本パラメータを制約処理部３１Ｃへ出力する（図６のステップＳ５）。
【００５１】
具体的には、基本ネットワーク部３１Ａは、例えば、図６のステップＳ４において、ｍ次元×Ｗ個のセンサ値を含むベクトルを入力データとして用いて処理を行うことにより、ｍ＋ｍ2個のデータを含むベクトルを当該処理に応じた出力データｖとして取得する。そして、パラメータ取得部３１Ｂは、図６のステップＳ５において、基本ネットワーク部３１Ａから出力される出力データｖに含まれるベクトルを分割する処理を行うことにより、時間ステップｔに対応するｍ次元の平均ベクトルμtと、ｍ次の正方行列に相当するｍ次の中間行列Ｕと、を基本パラメータとして取得する。すなわち、基本ネットワーク部３１Ａから出力される出力データｖと、パラメータ取得部３１Ｂにより取得される基本パラメータに含まれる平均ベクトルμt及び中間行列Ｕと、の間には、下記数式（２）に示すような関係が成立する。なお、下記数式（２）の演算子ｖｅｃ（・）は、行列を１列ずつ抽出して連結することによりベクトルを作成する処理を表すものとする。
2020052740.tif 000004
【００５２】
制約処理部３１Ｃは、パラメータ取得部３１Ｂから出力される基本パラメータを予測対象のセンサ値の分布状態を表す連続確率分布の定義域に収めるための処理を行うことにより、当該連続確率分布の表現に必要な分布パラメータを取得するとともに、当該取得した分布パラメータを異常度算出部３１Ｄへ出力する（図６のステップＳ６）。
【００５３】
具体的には、制約処理部３１Ｃは、パラメータ取得部３１Ｂから出力されるｍ次の中間行列Ｕを上記数式（１）に示した多変量ガウス分布Ｎの定義域に収めるための処理として、例えば、パラメータ取得部３１Ｂから出力されるｍ次の中間行列Ｕに対して下記数式（３）を適用する処理を行うことにより、時間ステップｔに対応するｍ次の分散共分散行列Σtを取得する。なお、下記数式（３）において、Ｉはｍ次の単位行列を表し、λは正の実数を表すものとする。
2020052740.tif 000005
【００５４】
なお、制約処理部３１Ｃは、パラメータ取得部３１Ｂから出力される平均ベクトルμtに対しては処理を行わない。そのため、制約処理部３１Ｃは、図６のステップＳ６において、上記数式（３）を用いた処理の処理結果に相当する分散共分散行列Σtと、パラメータ取得部３１Ｂから出力される平均ベクトルμtと、を時間ステップｔに対応するｍ次元のセンサ値ｘtの分布状態を表す多変量ガウス分布Ｎ（ｘt；μt，Σt）の表現に必要な分布パラメータとして取得するとともに、当該取得した分布パラメータを異常度算出部３１Ｄへ出力する。
【００５５】
ここで、中間行列Ｕは、基本ネットワーク部３１Ａにおけるニューラルネットワークの出力データｖと同じデータを含む関係上、上記数式（１）に示した多変量ガウス分布Ｎの分散共分散行列Σの定義域に収まらない行列として取得される場合がある。これに対し、本実施形態においては、制約処理部３１Ｃが、上記数式（３）に示したような、ｍ次の中間行列Ｕのグラム行列ＵTＵと、ｍ次の単位行列Ｉをλ倍した行列と、を加算する処理を行うことにより、上記数式（１）に示した多変量ガウス分布Ｎの定義域に収まる正定値対称行列に相当するｍ次の分散共分散行列Σtを取得するようにしている。
【００５６】
異常度算出部３１Ｄは、センサデータ収集装置２に蓄積されたセンサデータの中から、時間ステップｔに対応するｍ次元のセンサ値ｘtを含むセンサデータを読み込む（図６のステップＳ７）。
【００５７】
異常度算出部３１Ｄは、予測部３１１の制約処理部３１Ｃから出力される分布パラメータを用いた処理を行うことにより、図６のステップＳ７において読み込んだセンサデータに含まれるセンサ値各々に対応する異常度を算出するとともに、当該算出した異常度を異常判定処理部３３へ出力する（図６のステップＳ８）。
【００５８】
具体的には、異常度算出部３１Ｄは、例えば、制約処理部３１Ｃから出力される分布パラメータに含まれる分散共分散行列Σt及び平均ベクトルμtと、図６のステップＳ７において読み込んだセンサデータに含まれるｍ次元のセンサ値ｘtと、を下記数式（４）に適用することにより、当該ｍ次元のセンサ値ｘt各々に対応する異常度ｆを算出する。
2020052740.tif 000006
【００５９】
ここで、上記数式（４）によれば、異常度算出部３１Ｄは、異常度ｆを算出するための処理として、多変量ガウス分布Ｎ（ｘt；μt，Σt）の負の対数尤度を算出する処理を行っている。そのため、例えば、時間ステップｔに対応するｍ次元のセンサ値ｘtの多変量ガウス分布Ｎ（ｘt；μt，Σt）に対する当てはまりが良い場合には、異常度ｆが相対的に小さな値として算出される。また、例えば、時間ステップｔに対応するｍ次元のセンサ値ｘtの多変量ガウス分布Ｎ（ｘt；μt，Σt）に対する当てはまりが悪い場合には、異常度ｆが相対的に大きな値として算出される。
【００６０】
なお、本実施形態の異常度算出部３１Ｄは、制約処理部３１Ｃから出力される分布パラメータを用いた処理を行う限りにおいては、上記数式（４）に示した負の対数尤度とは異なる評価指標に基づいて異常度ｆを算出するようにしてもよい。
【００６１】
予測部３１１の各部は、図６のステップＳ６の処理を終了した後、予測対象のセンサ値のステップ値ｔに１を加算する（図６のステップＳ９）。また、異常度算出部３１Ｄは、図６のステップＳ８の処理を終了した後、評価対象のセンサ値のステップ値ｔに１を加算する（図６のステップＳ９）。
【００６２】
予測部３１１の各部及び異常度算出部３１Ｄは、ステップ値ｔが時系列データＸの系列長Ｔよりも大きいか否かに係る判定を行う（図６のステップＳ１０）。
【００６３】
予測部３１１の各部及び異常度算出部３１Ｄは、ステップ値ｔが系列長Ｔ以下であるとの判定結果を得た場合（Ｓ１０：ＮＯ）には、図６のステップＳ３からの処理を再度行う。また、予測部３１１の各部及び異常度算出部３１Ｄは、ステップ値ｔが系列長Ｔより大きいとの判定結果を得た場合（Ｓ１０：ＹＥＳ）には、図６の一連の処理を終了する。
【００６４】
なお、図６の一連の処理は、ｍが２以上の場合に適用されるものに限らず、ｍが１である場合においても略同様に適用される。すなわち、図６の一連の処理は、ｍ≧１において適用される。
【００６５】
以上に述べたように、予測部３１１は、ｍ次元の時系列データＸの時間ステップ毎に、当該ｍ次元の時系列データの時間ステップｔ（１≦ｔ≦Ｔ）において取得され得る予測値の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得するための処理を行う。また、以上に述べたように、異常度算出部３１Ｄは、予測部３１１により取得された分布パラメータを用い、ｍ次元の時系列データの時間ステップｔの実測値における異常の大きさを評価した評価値に相当する異常度を算出するための処理を行う。
【００６６】
本実施形態によれば、センサデータに関する事前知識が予め得られている場合に、当該事前知識に応じた追加の処理が制約処理部３１Ｃにおいて行われるようにしてもよい。具体的には、本実施形態によれば、例えば、複数のセンサ１Ａが相互に離れた場所に設けられているような場合に、分散共分散行列Σtに含まれる当該複数のセンサ１Ａの共分散を０にするための処理が制約処理部３１Ｃにおいてさらに行われるようにしてもよい。また、本実施形態によれば、例えば、センサ１Ａにより得られるセンサ値が０以上であることが明らかな場合に、平均ベクトルμtに対する非負制約に係る処理が制約処理部３１Ｃにおいてさらに行われるようにしてもよい。
【００６７】
本実施形態によれば、図６の一連の処理を適宜変形することにより、例えば、ｍの値が２以上である場合に、ｍ次元の時系列データのうちの少なくとも１次元の時系列データについて、時間ステップｔに対応するセンサ値ｘt（予測値）の分布状態を表す連続確率分布の表現に必要な分布パラメータを取得するための処理が予測部３１１により行われるともに、当該分布パラメータを用いて異常度ｆを算出するための処理が異常度算出部３１Ｄにより行われるようにしてもよい。
【００６８】
次に、モデルパラメータ学習部３２の各部において行われる処理について、図７及び図８を参照しつつ説明する。図７は、実施形態に係る異常検知装置に含まれるモデルパラメータ学習部において行われる処理の具体例の一部を示すフローチャートである。図８は、図７の処理の続きを示すフローチャートである。
【００６９】
なお、以降においては、センサ１Ａが正常な状態で取得された、すなわち、製造装置１が正常に動作している状態で取得されたＴ個のセンサ値を含む時系列データＸ＝｛ｘ1，ｘ2，…，ｘT｝を用いた処理が行われる場合を例に挙げて説明する。
【００７０】
基本ネットワーク部３２Ａは、現在保持しているモデルパラメータに対応するニューラルネットワークの各重み（結合強度）を乱数で初期化する（図７のステップＳ２１）。
【００７１】
具体的には、基本ネットワーク部３２Ａは、例えば、正規分布または一様分布に応じて生成した乱数を用い、現在保持しているモデルパラメータに対応するニューラルネットワークの各重み（結合強度）を初期化する。
【００７２】
基本ネットワーク部３２Ａは、予測対象のセンサ値のステップ値ｔをＴ個のステップ値の中からランダムに選択したステップ値に設定する（図７のステップＳ２２）。また、パラメータ取得部３２Ｂ及び制約処理部３２Ｃは、予測対象のセンサ値のステップ値ｔを基本ネットワーク部３２Ａにより選択されたステップ値と同じステップ値に設定する（図７のステップＳ２２）。また、異常度算出部３２Ｄは、評価対象のセンサ値のステップ値ｔを基本ネットワーク部３２Ａにより選択されたステップ値と同じステップ値に設定する（図７のステップＳ２２）。
【００７３】
基本ネットワーク部３２Ａは、センサデータ収集装置２に蓄積されたセンサデータの中から、図７のステップＳ２２により設定したステップ値ｔを有する時間ステップｔに隣接する過去のセンサデータを読み込む（図７のステップＳ２３）。
【００７４】
具体的には、基本ネットワーク部３２Ａは、例えば、基本ネットワーク部３１Ａにおける図６のステップＳ３の処理と略同様の処理を行うことにより、時間ステップｔに隣接するＷ個の時間ステップに対応するｍ次元×Ｗ個のセンサ値｛ｘt-W、ｘt-W+1、…、ｘt-1｝を含む過去のセンサデータを読み込む。
【００７５】
基本ネットワーク部３２Ａは、図７のステップＳ２３において読み込んだセンサデータに含まれる各センサ値を入力データとして用いて処理を行うことにより出力データを取得するとともに、当該取得した出力データをパラメータ取得部３２Ｂへ出力する（図７のステップＳ２４）。
【００７６】
具体的には、基本ネットワーク部３２Ａは、例えば、基本ネットワーク部３１Ａにおける図６のステップＳ４の処理と略同様の処理を行うことにより、ｍ＋ｍ2個のデータを含むベクトルを出力データｖとして取得するとともに、当該取得した出力データｖをパラメータ取得部３２Ｂへ出力する。
【００７７】
パラメータ取得部３２Ｂは、基本ネットワーク部３２Ａから出力される出力データを分割する処理を行うことにより基本パラメータを取得するとともに、当該取得した基本パラメータを制約処理部３２Ｃへ出力する（図７のステップＳ２５）。
【００７８】
具体的には、パラメータ取得部３２Ｂは、例えば、パラメータ取得部３１Ｂにおける図６のステップＳ５の処理と略同様の処理を行うことにより、時間ステップｔに対応するｍ次元の平均ベクトルμtと、ｍ次の正方行列に相当する中間行列Ｕと、を基本パラメータとして取得するとともに、当該取得した基本パラメータを制約処理部３２Ｃへ出力する。
【００７９】
制約処理部３２Ｃは、パラメータ取得部３２Ｂから出力される基本パラメータを予測対象のセンサ値の分布状態を表す連続確率分布の定義域に収めるための処理を行うことにより、当該連続確率分布の表現に必要な分布パラメータを取得するとともに、当該取得した分布パラメータを異常度算出部３２Ｄへ出力する（図７のステップＳ２６）。
【００８０】
具体的には、制約処理部３２Ｃは、例えば、制約処理部３１Ｃにおける図６のステップＳ６の処理（上記数式（４）を用いた処理）と略同様の処理を行うことにより、分散共分散行列Σt及び平均ベクトルμtを時間ステップｔに対応するｍ次元のセンサ値ｘtの分布状態を表す多変量ガウス分布Ｎ（ｘt；μt，Σt）の表現に必要な分布パラメータとして取得するとともに、当該取得した分布パラメータを異常度算出部３２Ｄへ出力する。
【００８１】
異常度算出部３２Ｄは、センサデータ収集装置２に蓄積されたセンサデータの中から、図７のステップＳ２２により設定したステップ値ｔを有する時間ステップｔに対応するｍ次元のセンサ値ｘtを含むセンサデータを読み込む（図７のステップＳ２７）。
【００８２】
異常度算出部３２Ｄは、制約処理部３２Ｃから出力される分布パラメータを用いた処理を行うことにより、図７のステップＳ２７において読み込んだセンサデータに含まれるセンサ値各々に対応する異常度を算出する（図７のステップＳ２８）。
【００８３】
具体的には、異常度算出部３２Ｄは、例えば、異常度算出部３１Ｄにおける図６のステップＳ８の処理と略同様の処理（上記数式（２）を用いた処理）を行うことにより、ｍ次元のセンサ値ｘt各々に対応する異常度ｆを算出する。
【００８４】
異常度算出部３２Ｄは、図７のステップＳ２８による異常度の算出に用いた分布パラメータに対する当該異常度の勾配を算出するとともに、当該算出した勾配を制約処理部３２Ｃへ出力する（図８のステップＳ２９）。
【００８５】
具体的には、異常度算出部３２Ｄは、例えば、図７のステップＳ２８による異常度の算出に用いた分散共分散行列Σt及び平均ベクトルμtと、図７のステップＳ２７により読み込んだｍ次元のセンサ値ｘtと、を下記数式（５）に適用することにより、当該平均ベクトルμtに対する異常度ｆの勾配∂ｆ／∂μtを算出する。また、異常度算出部３２Ｄは、例えば、図７のステップＳ２８による異常度の算出に用いた分散共分散行列Σt及び平均ベクトルμtと、図７のステップＳ２７により読み込んだｍ次元のセンサ値ｘtと、を下記数式（６）に適用することにより、当該分散共分散行列Σtに対する異常度ｆの勾配∂ｆ／∂Σtを算出する。そして、異常度算出部３２Ｄは、前述のように算出した勾配∂ｆ／∂μt及び∂ｆ／∂Σtを制約処理部３２Ｃへ出力する。
2020052740.tif 000007
2020052740.tif 000008
【００８６】
制約処理部３２Ｃは、異常度算出部３２Ｄから出力される勾配に基づき、図７のステップＳ２６による分布パラメータの取得に用いた基本パラメータに対する、図７のステップＳ２８により算出された異常度の勾配を算出するとともに、当該算出した勾配をパラメータ取得部３２Ｂへ出力する（図８のステップＳ３０）。
【００８７】
具体的には、制約処理部３２Ｃは、例えば、図７のステップＳ２６による分布パラメータの取得に用いた中間行列Ｕと、図８のステップＳ２９により異常度算出部３２Ｄから出力される勾配∂ｆ／∂Σtと、を下記数式（７）に適用することにより、当該中間行列Ｕにおけるｉ行ｊ列目の成分Ｕijに対する異常度ｆの勾配∂ｆ／∂Ｕijを算出する。なお、下記数式（７）において、演算子Ｔｒ［・］は行列のトレースを表し、行列Ｊijはｉ行ｊ列目の成分が１であるとともにその他の成分が０であるような行列を表すものとする。
2020052740.tif 000009
【００８８】
なお、制約処理部３２Ｃは、異常度算出部３２Ｄから出力される勾配∂ｆ／∂μtに対しては処理を行わない。そのため、制約処理部３２Ｃは、中間行列Ｕに含まれる各成分に対応する勾配∂ｆ／∂Ｕijの算出結果を勾配∂ｆ／∂Ｕとして取得するとともに、当該取得した勾配∂ｆ／∂Ｕと、勾配∂ｆ／∂μtと、を併せてパラメータ取得部３２Ｂへ出力する。
【００８９】
パラメータ取得部３２Ｂは、制約処理部３２Ｃから出力される勾配に基づき、図７のステップＳ２５による基本パラメータの取得に用いた出力データに対する、図７のステップＳ２８により算出された異常度の勾配を算出するとともに、当該算出した勾配を基本ネットワーク部３２Ａへ出力する（図８のステップＳ３１）。
【００９０】
具体的には、パラメータ取得部３２Ｂは、例えば、図８のステップＳ３０により制約処理部３２Ｃから出力される勾配∂ｆ／∂Ｕ及び∂ｆ／∂μを下記数式（８）に適用することにより、出力データｖに対する異常度ｆの勾配∂ｆ／∂ｖを算出する。そして、パラメータ取得部３２Ｂは、前述のように算出した勾配∂ｆ／∂ｖを基本ネットワーク部３２Ａへ出力する。
2020052740.tif 000010
【００９１】
基本ネットワーク部３２Ａは、パラメータ取得部３２Ｂから出力される勾配∂ｆ／∂ｖに基づくバックプロパゲーションをニューラルネットワークに対して施すことにより、当該ニューラルネットワークに含まれる少なくとも一部の重み（結合強度）の勾配を算出する（図８のステップＳ３２）。
【００９２】
本実施形態によれば、基本ネットワーク部３２Ａが図８のステップＳ３２により算出した勾配を用いてニューラルネットワークに含まれる重み（結合強度）を更新するための処理において、例えば、Ａｄａｇｒａｄ、ＲＭＳｐｒｏｐ、ＡｄａＤｅｌｔａ、及び、Ａｄａｍ等のようなアルゴリズムを用いることができる。また、本実施形態によれば、基本ネットワーク部３２Ａが、図８のステップＳ３２により算出した勾配を用いた処理を行うことにより、ニューラルネットワークに含まれる少なくとも一部の重み（結合強度）を更新するものであればよい。
【００９３】
基本ネットワーク部３２Ａは、図８のステップＳ３２の処理回数（ニューラルネットワークのパラメータの更新回数）が所定の処理回数に到達したか否かに係る判定を行う（図８のステップＳ３３）。
【００９４】
基本ネットワーク部３２Ａは、図８のステップＳ３２の処理回数が所定の処理回数に到達していないとの判定結果を得た場合（Ｓ３３：ＮＯ）には、図７のステップＳ２２に戻って処理を行う。また、基本ネットワーク部３２Ａは、図８のステップＳ３２の処理回数が所定の処理回数に到達したとの判定結果を得た場合（Ｓ３３：ＹＥＳ）には、当該判定結果を得た際のニューラルネットワークの各重み（結合強度）をモデルパラメータとして保持した状態で一連の処理を終了する。
【００９５】
本実施形態によれば、図８のステップＳ３３において、図８のステップＳ３２の処理回数が所定の処理回数に到達したか否かに係る判定処理が行われるものに限らず、例えば、図７のステップＳ２８により算出された異常度が一定値に収束した否かに係る判定処理が行われるようにしてもよい。そして、このような判定処理によれば、図７のステップＳ２８により算出された異常度が一定値に収束したとの判定結果が得られるまで、図７のステップＳ２２以降の一連の処理が繰り返し行われる。
【００９６】
本実施形態によれば、図７及び図８の一連の処理を適宜変形することにより、ミニバッチ学習に相当する処理が行われるようにしてもよい。具体的には、本実施形態によれば、例えば、時系列データＸにおけるＴ個のステップ値の中から複数のステップ値ｔがランダムに選択され、当該複数のステップ値ｔに対応する複数のセンサ値ｘtにおける複数の異常度ｆが算出され、当該複数の異常度ｆに対応する複数の勾配∂ｆ／∂ｖが算出され、当該複数の勾配∂ｆ／∂ｖを用いて基本ネットワーク部３２Ａのニューラルネットワークに含まれる各重み（結合強度）が更新されるようにしてもよい。
【００９７】
本実施形態によれば、図７及び図８の一連の処理を適宜変形することにより、例えば、複数の時系列データＸ各々から１つずつランダムにステップ値ｔが選択され、当該選択されたステップ値ｔ各々に対応する複数のセンサ値ｘtにおける複数の異常度ｆが算出され、当該複数の異常度ｆに対応する複数の勾配∂ｆ／∂ｖが算出され、当該複数の勾配∂ｆ／∂ｖを用いて基本ネットワーク部３２Ａのニューラルネットワークに含まれる各重み（結合強度）が更新されるようにしてもよい。
【００９８】
以上に述べたように、モデルパラメータ学習部３２は、製造装置１（異常検知装置３による異常検知対象の装置）が正常に動作している状態における測定対象の物理量の測定結果として得られた複数の実測値を含む時系列データに相当する正常データを用い、基本ネットワーク部３１Ａと同一のネットワーク構成を有する基本ネットワーク部３２Ａのニューラルネットワークのパラメータを繰り返し更新する処理に相当する学習処理を行うことにより、基本ネットワーク部３１Ａのニューラルネットワークのパラメータを設定する際に用いられるモデルパラメータを取得する。また、以上に述べたように、モデルパラメータ学習部３２は、前述の正常データを用いて基本ネットワーク部３２Ａのニューラルネットワークに含まれる少なくとも一部の重み（結合強度）の更新に用いられる勾配を算出する処理を学習処理において行うとともに、当該学習処理における所定の終了条件を満たした際の当該ニューラルネットワークの各重み（結合強度）をモデルパラメータとして保持する。
【００９９】
最後に、異常判定処理部３３の各部において行われる処理について説明する。
【０１００】
異常度記録部３３Ａは、異常度評価部３１から出力される異常度を時系列に記録する。
【０１０１】
具体的には、異常度記録部３３Ａは、例えば、ｍ次元の時系列データＸにおける時間ステップ毎に算出された異常度ｆを時系列に記録する。
【０１０２】
平滑化処理部３３Ｂは、異常度記録部３３Ａに時系列に記録された複数の異常度を読み込み、当該読み込んだ複数の異常度に対して平滑化処理を施すとともに、当該平滑化処理の処理結果として得られた異常度を異常判定部３３Ｃへ出力する。
【０１０３】
具体的には、平滑化処理部３３Ｂは、異常度記録部３３Ａに記録された各異常度の中から、例えば、時系列データＸにおける所定の時間ステップ幅または所定の時間幅に対応する複数の異常度ｆを読み込み、当該読み込んだ複数の異常度ｆの平均値に相当する平均異常度を算出し、当該算出した平均異常度を異常判定部３３Ｃへ出力する。すなわち、平滑化処理部３３Ｂは、時系列データＸにおける所定の時間ステップ幅または所定の時間幅に対応する複数の異常度ｆの平均値を算出する処理を平滑化処理として行う。
【０１０４】
あるいは、平滑化処理部３３Ｂは、異常度記録部３３Ａに記録された各異常度の中から、例えば、所定の製品数または所定のロット数の時系列データＸに対応する複数の異常度ｆを読み込み、当該読み込んだ複数の異常度ｆの平均値に相当する平均異常度を算出し、当該算出した平均異常度を異常判定部３３Ｃへ出力する。すなわち、平滑化処理部３３Ｂは、所定の製品数または所定のロット数の時系列データＸに対応する複数の異常度ｆの平均値を算出する処理を平滑化処理として行う。
【０１０５】
本実施形態においては、平滑化処理部３３Ｂが異常度ｆの移動平均を平均異常度として算出するための処理を行うものであってもよい。具体的には、平滑化処理部３３Ｂは、例えば、時系列データＸにおける所定の時間ステップ幅に対応する複数の異常度ｆを時間ステップ毎にスライドさせながら読み込んで平均値を算出するような処理を平滑化処理として行うものであってもよい。
【０１０６】
異常判定部３３Ｃは、平滑化処理部３３Ｂから出力される異常度に基づき、製造装置１における異常の有無を判定するための判定処理を行う。また、異常判定部３３Ｃは、製造装置１に異常ありとの判定結果を得た際に、当該判定結果に応じた異常の内容を示す信号を生成するとともに、当該生成した信号を表示装置４及び警報装置５のうちの少なくとも一方へ出力する。
【０１０７】
具体的には、異常判定部３３Ｃは、例えば、平滑化処理部３３Ｂから出力される時系列データＸに対応する複数の平均異常度に基づき、製造装置１における異常の有無を判定する。そして、異常判定部３３Ｃは、例えば、平滑化処理部３３Ｂから出力される時系列データＸに対応する複数の平均異常度の中に閾値を超える平均異常度が所定の個数以上含まれていることを検知した場合に、製造装置１に異常ありとの判定結果を取得し、当該判定結果に応じた異常の内容を示す信号を生成するとともに、当該生成した信号を表示装置４及び警報装置５のうちの少なくとも一方へ出力する。また、異常判定部３３Ｃは、例えば、平滑化処理部３３Ｂから出力される時系列データＸに対応する複数の平均異常度の中に閾値を超える平均異常度が所定の個数未満しか含まれていないことを検知した場合に、製造装置１に異常なしとの判定結果を取得する。
【０１０８】
本実施形態においては、異常判定部３３Ｃの処理に用いられる閾値が、予め設定された固定値であってもよく、または、作業者等により変更可能な可変値であってもよい。また、本実施形態においては、異常判定部３３Ｃの処理に用いられる閾値が、製造装置１に異常なしとの判定結果が得られた際の平均異常度に基づいて算出される統計量に応じた値として設定されるようにしてもよい。
【０１０９】
以上に述べたように、異常検知装置３は、測定対象の物理量を実際に測定して得られたＴ（Ｔ≧２）個の実測値を含むｍ（ｍ≧１）次元の時系列データから異常の有無を検知する。
【０１１０】
以上に述べたように、本実施形態によれば、時間ステップｔに対応するｍ次元のセンサ値ｘtの分布状態を表す連続確率分布（多変量ガウス分布Ｎ（ｘt；μt，Σt））の表現に必要な分布パラメータ（分散共分散行列Σt及び平均ベクトルμt）を取得するとともに、当該取得した分布パラメータを時間ステップ毎に変化させるような処理が行われる。そのため、本実施形態によれば、製造装置１の異常検知に用いる自己回帰モデルとして、例えば、図９に模式的に示すような、センサ値の予測値の分布状態を表す連続確率分布がセンサ値の実測値に含まれるノイズの大きさに応じて変化するモデルを作成することができる。従って、本実施形態によれば、時系列データＸに含まれるノイズの特性が時間的に変化するような場合であっても、当該時系列データＸから異常の有無を高精度に判別することができる。図９は、実施形態の作用効果を説明するための模式図である。
【０１１１】
本実施形態によれば、例えば、モデルパラメータ学習部３２と同様の機能を有する外部装置において図７及び図８の処理を行うことにより得られたモデルパラメータが記憶媒体３Ｂに格納されている場合に、基本ネットワーク部３１Ａが記憶媒体３Ｂから読み込んだ当該モデルパラメータに応じてニューラルネットワークに含まれる各重み（結合強度）を設定するようにしてもよい。すなわち、本実施形態によれば、図７及び図８の処理を経て得られたモデルパラメータが基本ネットワーク部３１Ａにより読み込まれる限りにおいては、モデルパラメータ学習部３２が異常検知装置３に設けられていなくともよい。
【０１１２】
また、本実施形態に係る処理等を適宜変形することにより、上記数式（１）に示した多変量ガウス分布Ｎ（ｘ；μ，Σ）とは異なる他の連続確率分布を用いた処理が行われるようにしてもよい。
【０１１３】
また、本実施形態に係る異常検知装置３の構成を適宜変形することにより、製造装置１とは異なる他の装置等に適合させるようにしてもよい。
【０１１４】
本発明の実施形態を説明したが、これらの実施形態は、例として示したものであり、本発明の範囲を限定することは意図していない。これら新規の実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１１５】
１  製造装置
１Ａ  センサ
２  センサデータ収集装置
３  異常検知装置
３１  異常度評価部
３２  モデルパラメータ学習部
３１Ａ，３２Ａ  基本ネットワーク部
３１Ｂ，３２Ｂ  パラメータ取得部
３１Ｃ，３２Ｃ  制約処理部
３１Ｄ，３２Ｄ  異常度算出部
３３  異常判定処理部
３３Ａ  異常度記録部
３３Ｂ  平滑化処理部
３３Ｃ  異常判定部
１０１  監視システム
３１１  予測部
【図１】
2020052740.tif 000011
【図２】
2020052740.tif 000012
【図３】
2020052740.tif 000013
【図４】
2020052740.tif 000014
【図５】
2020052740.tif 000015
【図６】
2020052740.tif 000016
【図７】
2020052740.tif 000017
【図８】
2020052740.tif 000018
【図９】
2020052740.tif 000019