(57)【要約】【課題】異常検出の精度の低下を低減しながら、異常検出の計算時間を短縮すること。【解決手段】情報処理装置が、監視対象が正常である際に測定された複数の正常データ、及び前記監視対象が正常または異常である際に測定された評価用データを記憶する記憶部と、前記複数の正常データ間の類似度に基づいて、異常検出に用いられる学習用データを決定する決定部と、前記決定部により決定された学習用データを用いて、異常検出に用いられる正常モデルを生成する生成部と、前記決定部により決定された学習用データ、及び前記生成部により生成された正常モデルに基づいて、前記評価用データに対する異常検出を行う異常判定部と、を有する。【選択図】図５
2020027342.tif 000002
【特許請求の範囲】
【請求項１】
監視対象が正常である際に測定された複数の正常データ、及び前記監視対象が正常または異常である際に測定された評価用データを記憶する記憶部と、
前記複数の正常データ間の類似度に基づいて、異常検出に用いられる学習用データを決定する決定部と、
前記決定部により決定された学習用データを用いて、異常検出に用いられる正常モデルを生成する生成部と、
前記決定部により決定された学習用データ、及び前記生成部により生成された正常モデルに基づいて、前記評価用データに対する異常検出を行う異常判定部と、を有する情報処理装置。
【請求項２】
前記異常判定部は、カーネル主成分分析法を用いて、前記評価用データに対する異常検出の精度、及び異常検出の所要時間の少なくとも一つを算出する、
請求項１に記載の情報処理装置。
【請求項３】
前記決定部は、前記異常判定部による異常検出の精度が所定の閾値以上となるように学習用データを決定する、
請求項１または２に記載の情報処理装置。
【請求項４】
前記決定部は、前記異常判定部による異常検出の所要時間が所定の閾値以下となるように学習用データを決定する、
請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
前記決定部は、前記複数の正常データにそれぞれ含まれる１以上の種類の状態量の領域に応じて、前記複数の正常データ間の類似度を判定する、
請求項１から４のいずれか一項に記載の情報処理装置。
【請求項６】
前記決定部は、前記複数の正常データにそれぞれ含まれる１以上の種類の状態量間の距離に応じて、前記複数の正常データ間の類似度を判定する、
請求項１から５のいずれか一項に記載の情報処理装置。
【請求項７】
測定装置から装置または製品の測定データを取得する取得部を有し、
前記異常判定部は、前記取得部により取得された測定データ、前記決定部により決定された学習用データ、及び前記生成部により生成された正常モデルに基づいて、カーネル主成分分析法を用いて、前記装置または前記製品の異常を検出する、
請求項１から６のいずれか一項に記載の情報処理装置。
【請求項８】
請求項１から６のいずれか一項に記載の情報処理装置から取得された学習用データ及び正常モデルを記憶する記憶部と、
測定装置から装置または製品の測定データを取得する取得部と、
前記取得部により取得された測定データ、前記学習用データ、及び前記正常モデルに基づいて、カーネル主成分分析法を用いて、前記装置または前記製品の異常を検出する異常判定部と、を有する監視装置。
【請求項９】
情報処理装置が、
監視対象が正常である際に測定された複数の正常データ、及び前記監視対象が正常または異常である際に測定された評価用データを記憶する処理と、
前記複数の正常データ間の類似度に基づいて、異常検出に用いられる学習用データを決定する処理と、
前記決定する処理により決定された学習用データを用いて、異常検出に用いられる正常モデルを生成する処理と、
前記決定する処理により決定された学習用データ、及び前記生成する処理により生成された正常モデルに基づいて、前記評価用データに対する異常検出を行う処理と、を実行する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、監視装置、及び情報処理方法に関する。
【背景技術】
【０００２】
従来、センサにより取得されたデータに基づいて、異常を検出する技術が知られている。この技術において、カーネル主成分分析（Kernel Principal Component Analysis; ＫＰＣＡ）法を用いた多変量統計的プロセス管理（Multivariate Statistical Process Control; ＭＳＰＣ）が知られている。この手法では、正常状態で測定されたデータの集合ｘｍ及びカーネル関数に基づいて、ある時点での測定データについて、正常状態からの乖離度を示すＴ２統計量及びＱ統計量等を算出し、当該測定データの異常を判定する（例えば、非特許文献１、２を参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Carlos F. Alcala and S. Joe Qin, "Reconstruction-based Contribution for Process Monitoring with Kernel Principal Component Analysis." 2010 American Control Conference Marriott Waterfront, Baltimore, MD, USA June 30-July 02, 2010 FrC21.6
【非特許文献２】里山雄亮ら、"変数除去寄与による異常要因同定"、計測自動制御学会制御部門マルチシンポジウム（ＣＤ−ＲＯＭ）  ３巻、3E4‐3、２０１６年３月７日
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、正常状態で測定されたデータの集合に基づいて異常を検出する場合、当該データの数が大きくなる程、検出の精度は向上するものの、検出のための計算時間が増大するという問題がある。
【０００５】
そこで、一側面では、異常検出の精度の低下を低減しながら、異常検出の計算時間を短縮することを目的とする。
【課題を解決するための手段】
【０００６】
一つの案では、情報処理装置が、監視対象が正常である際に測定された複数の正常データ、及び前記監視対象が正常または異常である際に測定された評価用データを記憶する記憶部と、前記複数の正常データ間の類似度に基づいて、異常検出に用いられる学習用データを決定する決定部と、前記決定部により決定された学習用データを用いて、異常検出に用いられる正常モデルを生成する生成部と、前記決定部により決定された学習用データ、及び前記生成部により生成された正常モデルに基づいて、前記評価用データに対する異常検出を行う異常判定部と、を有する。
【発明の効果】
【０００７】
一側面によれば、異常検出の精度の低下を低減しながら、異常検出の計算時間を短縮することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係る監視システムの構成例を示す図である。
【図２】実施形態に係る支援装置、及び監視装置のハードウェア構成例を示す図である。
【図３】実施形態に係る支援装置、及び監視装置の機能ブロック図である。
【図４】実施形態に係る正常データ情報の一例を示す図である。
【図５】実施形態に係る支援装置の学習用データ決定処理の一例を示すフローチャートである。
【図６】実施形態に係る学習用データの数を削減する処理の一例（その１）を示すフローチャートである。
【図７】実施形態に係る各領域に基づいて正常データを除去する処理の一例について説明する図である。
【図８】実施形態に係る学習用データの数を削減する処理の一例（その２）を示すフローチャートである。
【図９】実施形態に係る学習用データの数を削減する処理の一例（その３）を示すフローチャートである。
【図１０】実施形態に係る各領域及び各距離に基づいて正常データを除去する処理の一例について説明する図である。
【図１１】実施形態に係る監視装置の異常検出処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面に基づいて本発明の実施形態を説明する。
【００１０】
＜システム構成＞
図１は、実施形態に係る監視システムの構成例を示す図である。図１において、監視システム１は、支援装置１０（「情報処理装置」の一例。）、監視装置２０、測定装置３０、及び機器４０を含む。なお、支援装置１０、監視装置２０、測定装置３０、及び機器４０の数は図１の例に限定されない。
【００１１】
支援装置１０、監視装置２０、及び測定装置３０は、ＬＡＮ（Local Area Network）、無線ＬＡＮ、インターネット等の通信回線Ｎによって通信可能なように接続される。
【００１２】
支援装置１０は、例えば、サーバ、ＰＣ（Personal Computer）、タブレット型端末等の情報処理装置である。支援装置１０は、機器４０が製造する製品、または機器４０の状態等の監視対象の異常判定を行うための学習用データ、及び正常モデル（学習済モデル）を決定し、決定した正常モデル、及び学習用データを監視装置２０に出力する。
【００１３】
監視装置２０は、支援装置１０から取得した正常モデル、及び学習用データに基づいて、監視対象の異常判定を行う。監視装置２０は、異常を判定すると、アラームや画面表示等によりユーザに異常を報知する。監視装置２０は、例えば、製造プロセスの監視、設備の状態の監視等を行う。
【００１４】
測定装置３０は、例えば、機器４０が製造する製品の温度、湿度、圧力、または機器４０の温度、湿度、圧力、撹拌速度、流量等の１以上の種類の状態量のデータを測定し、測定したデータ（測定データ）を支援装置１０、及び監視装置２０に通知するセンサである。
【００１５】
機器４０は、例えば、プラント等における製造設備（製造装置）や、産業用・民生用の設備である。機器４０には、例えば、化学・石油・繊維・食品・飲料・鉄鋼・非鉄・パルプ・薬品・ガラス・セメント・半導体・繊維などのプラントの設備、冷蔵・冷凍庫や冷蔵・冷凍ショーケース等が含まれる。
【００１６】
＜ハードウェア構成＞
図２は、実施形態に係る支援装置１０、及び監視装置２０のハードウェア構成例を示す図である。以下では、支援装置１０について説明するが、監視装置２０のハードウェア構成は支援装置１０のハードウェア構成と同様でもよい。
【００１７】
図２の支援装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、インタフェース装置１０５、表示装置１０６、及び入力装置１０７等を有する。
【００１８】
支援装置１０での処理を実現する監視プログラムは、記録媒体１０１によって提供される。監視プログラムを記録した記録媒体１０１がドライブ装置１００にセットされると、監視プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、監視プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされた監視プログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１９】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従って支援装置１０に係る機能を実現する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。表示装置１０６はプログラムによるＧＵＩ（Graphical User Interface）等を表示する。入力装置１０７はキーボード及びマウス等、またはタッチパネル及びボタン等で構成され、様々な操作指示を入力させるために用いられる。
【００２０】
なお、記録媒体１０１の一例としては、ＣＤ−ＲＯＭ、ＤＶＤディスク、又はＵＳＢメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置１０２の一例としては、ＨＤＤ（Hard Disk Drive）又はフラッシュメモリ等が挙げられる。記録媒体１０１及び補助記憶装置１０２のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
【００２１】
＜機能構成＞
次に、図３、及び図４を参照し、実施形態に係る支援装置１０、及び監視装置２０の機能構成について説明する。図３は、実施形態に係る支援装置１０、及び監視装置２０の機能ブロック図である。図４は、実施形態に係る正常データ情報１１１の一例を示す図である。
【００２２】
≪支援装置１０≫
支援装置１０は、決定部１２、生成部１３、及び異常判定部１４を有する。これら各部は、支援装置１０にインストールされた１以上のプログラムが、支援装置１０のＣＰＵ１０４に実行させる処理により実現される。
【００２３】
また、支援装置１０は、記憶部１１を有する。記憶部１１は、例えば、補助記憶装置１０２等を用いて実現される。
【００２４】
記憶部１１は、正常データ情報１１１、評価用データ情報１１２、正常モデル情報１１３、及び学習用データ情報１１４を記憶する。
【００２５】
正常データ情報１１１には、例えば、機器４０等の監視対象が正常である際に測定装置３０により複数の時点でそれぞれ測定された各測定データ（正常データ）が予め記憶されているものとする。なお、測定データが正常時のものであるか否かは、管理者等により判断されてもよい。
【００２６】
図４の例では、正常データ情報１１１には、測定データＩＤに対応付けて、測定時刻、温度、湿度、圧力、撹拌速度、流量等が記憶される。測定データＩＤは、測定データの識別情報である。測定時刻は、測定装置３０により測定データが測定された時刻である。温度、湿度、圧力、撹拌速度、流量等は、測定装置３０により測定された機器４０に関する温度等である。
【００２７】
評価用データ情報１１２には、例えば、測定装置３０により複数の時点でそれぞれ測定された各測定データと、各測定データが正常であるか異常であるかを示す情報とが対応付けられて予め記憶されているものとする。なお、各測定データが正常であるか異常であるかは、管理者等により判断されてもよい。
【００２８】
正常モデル情報１１３、及び学習用データ情報１１４には、それぞれ、決定部１２により決定された学習用データ、及び生成部１３により生成された正常モデルが記録される。
【００２９】
決定部１２は、異常判定部１４による異常判定結果に基づいて、正常データ情報１１１に記憶されている正常データのうち、異常判定に用いるデータの集合（学習用データ）を決定する。
【００３０】
生成部１３は、決定部１２により決定された学習用データに基づいて、異常判定に用いるためのモデル（正常モデル）を生成する。
【００３１】
異常判定部１４は、決定部１２により決定された学習用データ、及び生成部１３により生成された正常モデルに基づいて、評価用データ情報１１２に記憶されている評価用データに対する異常判定を行う。
【００３２】
≪監視装置２０≫
監視装置２０は、取得部２２、異常判定部２３、及び報知部２４を有する。これら各部は、監視装置２０にインストールされた１以上のプログラムが、監視装置２０のＣＰＵに実行させる処理により実現される。
【００３３】
また、監視装置２０は、記憶部２１を有する。記憶部２１は、例えば、補助記憶装置等を用いて実現される。
【００３４】
記憶部２１は、正常モデル情報２１１、及び学習用データ情報２１２を記憶する。
【００３５】
取得部２２は、支援装置１０の正常モデル情報１１３、及び学習用データ情報１１４にそれぞれ記憶されている正常モデル、及び学習用データを取得し、正常モデル情報２１１、及び学習用データ情報２１２に記憶させる。
【００３６】
また、取得部２２は、測定装置３０にて測定された、機器４０の温度等の測定データを取得する。
【００３７】
異常判定部２３は、正常モデル情報２１１、及び学習用データ情報２１２に記憶されている学習用データ、及び正常モデルに基づいて、取得部２２により取得された機器４０等の測定データに対する異常判定を行う。
【００３８】
報知部２４は、異常判定部２３の指示に応じて、監視装置２０の画面、パトランプ、予め登録されているメールアドレス等に、異常の報知（通知）を行う。
【００３９】
＜処理＞
≪学習用データ決定処理≫
次に、図５を参照し、支援装置１０の学習用データ決定処理について説明する。図５は、実施形態に係る支援装置１０の学習用データ決定処理の一例を示すフローチャートである。以下の処理は、例えば、所定の周期（例えば、３ケ月毎）で、かつ機器４０が運転されていない間（休止中、オフライン時）に実行されてもよい。
【００４０】
ステップＳ１０１において、取得部２２は、正常データ情報１１１から、正常データの集合（「第１集合」の一例。）を取得し、取得した各正常データを次元毎に正規化する。ここで、図４に示すように、正常データ情報１１１には、機器４０の正常（通常）動作時に測定装置３０により複数の時点でそれぞれ測定されたデータである各正常データｘ１、ｘ２、・・・ｘｍ（ｍは任意の自然数）が予め記憶されている。各正常データｘ１、ｘ２、・・・ｘｍは、それぞれ、ｎ次元のベクトルのデータである。なお、ｎ次元の各変数は、それぞれ、例えば、温度、湿度、圧力、撹拌速度、流量等でもよい。そして、決定部１２は、例えば、各正常データｘ１、ｘ２、・・・ｘｍの１からｎまでの各次元のデータを、平均が０、分散が１となるように変換してもよい。
【００４１】
以下で、正常データ情報１１１に記憶されている各正常データのうち、異常を検出するための学習データとして用いられる各正常データのことを、「学習用データ」と称する。続いて、決定部１２は、正常データ情報１１１に記憶されている各正常データｘ１、ｘ２、・・・ｘｍを、学習用データとして設定する（ステップＳ１０２）。
【００４２】
続いて、生成部１３は、設定されている学習用データに基づいて、正常モデルを生成する（ステップＳ１０３）。ここで、生成部１３は、後述する式（８）のＤ、及び式（１０）のＣを算出し、正常モデルとする。正常モデルＣ、Ｄは、後述するように、カーネル行列Ｋの固有ベクトル、及び固有値から算出される。
【００４３】
続いて、異常判定部１４は、評価用データ情報１１２に記憶されている評価用データを用いて、設定されている学習用データ、及び正常モデルの検証を行う（ステップＳ１０４）。
【００４４】
ここで、異常判定部１４は、まず、例えば、以下に示すように、上述した非特許文献１、２等に記載されているようなカーネル主成分分析（ＫＰＣＡ）法を用いて異常検出を行ってもよい。なお、ＫＰＣＡ法とは、正常状態で測定されたデータの集合及びカーネル関数に基づいて、ある時点での測定データについて、正常状態からの乖離度を示すＴ２統計量及びＱ統計量（二乗予測誤差(Squared Prediction Error; ＳＰＥ)）等を算出し、当該測定データの異常を判定する。この場合、異常判定部１４は、カーネル関数ｋとして、限定ではなく一例として、ガウシアン関数を用いてもよい。この場合のカーネル関数ｋの例を以下の式（１）に示す。ここで、ｃはカーネル関数のパラメータである。
【００４５】
【数１】
2020027342.tif 000003
そして、異常判定部１４は、カーネル行列Ｋを以下の式（２）のように定義する。ここで、ｍは学習用データの数である。
【００４６】
【数２】
2020027342.tif 000004
そして、α、及びλをそれぞれカーネル行列Ｋの固有ベクトル、及び固有値とすると、以下の式（３）が得られる。
【００４７】
【数３】
2020027342.tif 000005
そして、αioをλiの単位長さの固有ベクトルとすると、以下の式（４）が得られる。
【００４８】
【数４】
2020027342.tif 000006
そして、異常判定部１４は、評価対象のデータｘと各学習用データｘ１、ｘ２、・・・ｘｍとのカーネル関数ｋの値を並べたベクトルであるｋ（ｘ）を以下の式（５）により算出する。そして、異常判定部１４は、Ｔ２統計量を以下の式（６）から式（９）、Ｑ統計量（ＳＰＥ）を以下の式（６）、（７）、（１０）、（１１）により算出し、Ｔ２統計量及びＱ統計量に基づいて、評価用データが異常であるか否かを判定してもよい。
【００４９】
【数５】
2020027342.tif 000007
【００５０】
【数６】
2020027342.tif 000008
【００５１】
【数７】
2020027342.tif 000009
【００５２】
【数８】
2020027342.tif 000010
【００５３】
【数９】
2020027342.tif 000011
【００５４】
【数１０】
2020027342.tif 000012
【００５５】
【数１１】
2020027342.tif 000013
なお、式（６）で、Ｐはカーネル行列Ｋのｌ個の主要な固有ベクトルであり、式（７）で、Λはカーネル行列Ｋのｌ個の主要な固有値である。
【００５６】
続いて、決定部１２は、異常検出の結果に基づいて、学習用データの数を削減するか否かを判定する（ステップＳ１０５）。ここで、決定部１２は、例えば、今回の異常検出の精度が所定の閾値以上でなくなった場合に、削減しないと判定してもよい。この場合、決定部１２は、例えば、学習用データの数が所定数であった場合の各評価用データに対する異常検出結果と、今回の学習用データでの当該各評価用データに対する異常検出結果とが相違した割合を、異常検出の精度として用いてもよい。
【００５７】
または、決定部１２は、ステップＳ１０４の各評価用データに対する異常検出の各計算時間（所要時間）の全てが、所定の閾値（例えば、１分）以下である場合に、削減しないと判定してもよい。これにより、例えば、後述する異常検出処理を所定時間間隔で行う場合等のために、異常検出の精度をできるだけ維持しながら、異常検出の計算時間が所定の閾値以下となる学習用データを決定することができる。
【００５８】
削減すると判定した場合（ステップＳ１０５でＹＥＳ）、決定部１２は、学習用データの類似度に基づいて、所定数の正常データを除去することにより、学習用データの数を削減し（ステップＳ１０６）、ステップＳ１０２の処理に進む。なお、ステップＳ１０２の処理で、削減された後の学習用データの数をｍとする。ここで、決定部１２は、例えば、学習用データの総数の所定の割合（例えば、５％）の数の正常データを除去してもよい。これにより、学習用データの数が削減される。なお、この処理については後述する。
【００５９】
一方、削減しないと判定した場合（ステップＳ１０５でＮＯ）、決定部１２は、学習用データ、及び正常モデルを決定し（ステップＳ１０７）、処理を終了する。ここで、決定部１２は、正常モデル、及び学習用データを、正常モデル情報１１３、及び学習用データ情報１１４にそれぞれ記憶させる。なお、決定部１２は、ステップＳ１０５の処理で、今回の異常検出の精度が所定の閾値以上でなくなった場合、ステップＳ１０７の処理において異常検出の精度が所定の閾値以上であった前回の学習用データ及び正常モデルに決定してもよい。これにより、異常検出の精度が所定の閾値以上であり、異常検出の計算時間を低減できる学習用データを決定することができる。
【００６０】
（学習用データの削減処理の一例（その１））
次に、図６、図７を参照し、図５のステップＳ１０６の、学習用データの数を削減する処理の一例について説明する。図６は、実施形態に係る学習用データの数を削減する処理の一例（その１）を示すフローチャートである。図７は、各領域に基づいて正常データを除去する処理の一例について説明する図である。
【００６１】
ステップＳ１００１において、決定部１２は、学習用データを、各領域（範囲）に分類する。ここで、各正常データはｎ次元のベクトルのデータであるため、決定部１２は、例えば、ｎ次元空間を均等な大きさのｎ次元領域毎に分類し、ステップＳ１０２の処理で正規化された各正常データが含まれる当該ｎ次元領域を判定してもよい。
【００６２】
または、決定部１２は、ｎ次元の中から所定数の次元を任意に選択し、ステップＳ１０２の処理で正規化された各正常データが含まれる１次元での領域を判定してもよい。例えば、決定部１２は、ある時点における温度、湿度、圧力、撹拌速度、流量等のｎ種類のデータのうち、温度のデータに基づいて領域を判定してもよい。
【００６３】
続いて、決定部１２は、各領域に基づいて、学習用データから、所定数の正常データを除去する（ステップＳ１００２）。これにより、他の正常データとの類似度が高い正常データが除去される。これは、同一の領域に分類される各正常データは、類似していると考えられるためである。ここで、決定部１２は、各領域から所定の割合の正常データを除去してもよい。
【００６４】
または、決定部１２は、正常データの数が最も多い領域から、一の正常データを除去する処理を繰り返してもよい。この場合、決定部１２は、正常データの数が最も多い領域が複数ある場合は、正常データの数が最も多い任意の一の領域から、正常データを除去してもよい。図７の例では、正規化された各正常データが含まれる１次元での９つの各領域７０１から７０９に含まれる正常データの数の例が示されている。決定部１２は、図７の例では、最も多くの正常データが含まれる領域７０５から、複数の正常データ７１０を除去している。これにより、各領域に含まれる正常データの数の差がより均等化されるため、一の正常データに類似する他の正常データの数がより均等化される。
【００６５】
（学習用データの削減処理の一例（その２））
次に、図８を参照し、図５のステップＳ１０４の、学習用データの数を削減する処理の一例について説明する。図８は、実施形態に係る学習用データの数を削減する処理の一例（その２）を示すフローチャートである。
【００６６】
ステップＳ２００１において、決定部１２は、学習用データ間の距離をそれぞれ算出する。ここで、ｎ次元のベクトルのデータである一の正常データと、他の各正常データとのユークリッド距離を、学習用データとして用いられる各正常データについて算出する。
【００６７】
続いて、決定部１２は、各距離に基づいて、学習用データから、所定数の正常データを除去する（ステップＳ１００２）。これにより、類似する正常データが除去される。ここで、例えば、２つの正常データ間の距離が短い順に、当該２つの正常データの一方を除去する処理を繰り返してもよい。これは、２つの正常データ間の距離が短い２つの正常データは、類似していると考えられるためである。
【００６８】
（学習用データの削減処理の一例（その３））
次に、図９を参照し、図５のステップＳ１０４の、学習用データの数を削減する処理の一例について説明する。図９は、実施形態に係る学習用データの数を削減する処理の一例（その３）を示すフローチャートである。図１０は、各領域及び各距離に基づいて正常データを除去する処理の一例について説明する図である。
【００６９】
ステップＳ３００１において、決定部１２は、学習用データを、各領域に分類する。この処理は、図６のステップＳ１００１の処理と同様でもよい。
【００７０】
続いて、決定部１２は、分類された各領域において、学習用データ間の距離をそれぞれ算出する（ステップＳ３００２）。ここで、決定部１２は、分類された各領域に対して、一の領域に含まれる各正常データと、当該一の領域に含まれる他の各正常データとのユークリッド距離をそれぞれ算出する。
【００７１】
続いて、決定部１２は、各領域及び各距離に基づいて、学習用データから、所定数の正常データを除去する（ステップＳ３００３）。これにより、類似する正常データが除去される。
【００７２】
ここで、決定部１２は、各領域から所定の割合の正常データが除去されるまで、各領域に含まれる２つの正常データ間の距離が短い順に、当該２つの正常データの一方を除去する処理を繰り返してもよい。
【００７３】
または、決定部１２は、正常データの数が最も多い領域から、当該領域に含まれる２つの正常データ間の距離が短い順に、正常データを除去する処理を繰り返してもよい。図１０の例では、正規化された各正常データが含まれる２次元での９つの各領域１００１から１００９に含まれる正常データの数の例が示されている。決定部１２は、図１０の例では、最も多くの正常データが含まれる領域１００４から、２つの正常データ間の距離ｄが最も短い正常データ１０１０及び正常データ１０１１のうちの一方を除去してもよい。そして、決定部１２は、所定の数の正常データが除去されるまで、同様の処理を繰り返してもよい。
【００７４】
≪異常検出処理≫
次に、図１１を参照し、監視装置２０の異常検出処理について説明する。図１１は、実施形態に係る支援装置１０の異常検出処理の一例を示すフローチャートである。以下の処理は、例えば、機器４０が運転されている間（オンライン時）に、所定の周期（例えば、１分毎）で実行されてもよい。なお、正常モデル情報２１１、及び学習用データ情報２１２には、支援装置１０の正常モデル情報１１３、及び学習用データ情報１１４にそれぞれ記憶されている正常モデル、及び学習用データが記憶されているものとする。
【００７５】
ステップＳ２０１において、取得部２２は、異常検出の対象とする測定データを測定装置３０から取得する。
【００７６】
続いて、異常判定部２３は、学習用データ情報２１２に記憶されている学習用データを用いて、異常判定の対象とする測定データに対する異常判定を行う（ステップＳ２０２）。ここで、異常判定部２３は、図５のステップＳ１０４の処理と同様の処理により、異常であるか否かの判定を行ってもよい。この場合、ステップＳ２０１の処理で取得した測定データを、上述した式（５）、（９）、（１１）のｘとして用いればよい。
【００７７】
ここで、式（５）の計算には、学習用データ情報２１２に記憶されている学習用データの数だけ式（１）の計算が必要となる。本実施形態では、上述した図５の学習用データ決定処理により、学習用データの数を削減するため、機器４０の異常を検出する際のステップＳ２０２の処理に必要な計算時間を短縮することができる。
【００７８】
続いて、異常判定部２３は、異常を検出したか否かを判定する（ステップＳ２０３）。異常を検出していない場合（ステップＳ２０３でＮＯ）、処理を終了する。
【００７９】
異常を検出した場合（ステップＳ２０３でＹＥＳ）、報知部２４は、所定の警告（アラーム）を出力し（ステップＳ２０４）、処理を終了する。ここで、報知部２４は、例えば、監視装置２０の画面に警告のメッセージを表示させてもよい。また、報知部２４は、所定のメールアドレス等に、警告のメッセージのメールを送信してもよい。
【００８０】
＜変形例＞
支援装置１０は、例えば１以上のコンピュータにより構成されるクラウドコンピューティングにより実現されてもよい。また、支援装置１０と監視装置２０は、一体の装置として構成されてもよい。この場合、支援装置１０は、実運用中の最新の正常データを用いて、正常モデル、及び学習用データを更新してもよい。また、監視装置２０と測定装置３０は、一体の装置として構成してもよい。
【００８１】
支援装置１０、及び監視装置２０の各部の機能のうちの少なくとも一部を、専用のハードウェア回路（例えば半導体集積回路等）で実現してもよい。例えば、ＦＰＧＡ（Field Programmable Gate Array）や、ＡＳＩＣ（Application Specific Integrated Circuit）等の半導体集積回路を用いて実現してもよい。
【００８２】
＜実施形態のまとめ＞
上述した実施形態では、監視対象の正常データ間の類似度に基づいて、当該監視対象の異常検出を行うための正常データを決定する。これにより、異常検出の精度の低下を低減しながら、異常検出の計算時間を短縮することができる。
【００８３】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００８４】
１０  支援装置
１１  記憶部
１１１  正常データ情報
１１２  評価用データ情報
１１３  正常モデル情報
１１４  学習用データ情報
１２  決定部
１３  生成部
１４  異常判定部
２０  監視装置
２１  記憶部
２１１  正常モデル情報
２１２  学習用データ情報
２２  取得部
２３  異常判定部
２４  報知部
３０  測定装置
４０  機器
【図１】
2020027342.tif 000014
【図２】
2020027342.tif 000015
【図３】
2020027342.tif 000016
【図４】
2020027342.tif 000017
【図５】
2020027342.tif 000018
【図６】
2020027342.tif 000019
【図７】
2020027342.tif 000020
【図８】
2020027342.tif 000021
【図９】
2020027342.tif 000022
【図１０】
2020027342.tif 000023
【図１１】
2020027342.tif 000024