(57)【要約】  【課題】  ラベル情報を、異常検知モデルに取り入れる解析技法を提供すること。  【解決手段】  ラベル情報を有効活用するために、標本間に類似度を導入するというアイデアに基づく。例えば、正常ラベルあり標本は互いによく似ていて、異常ラベルあり標本とは類似性がないと想定する。個々のセンサ値が、潜在変数と各センサ固有の係数ベクトルの線形和で生成されると仮定する。但し、観測ノイズの大きさは、センサ値のラベル情報により異なるように定式化される。観測ノイズは、正常ラベル ≦ ラベルなし ≦ 異常ラベルとなるように設定される。次に、各標本の間の類似度からグラフ・ラプラシアンが作成され、グラフ・ラプラシアンを用いて、勾配法などによって、最適線形変換行列が求められ、最適線形変換行列を用いてテスト標本のセンサ各々の異常スコアが計算される。【選択図】  図３
2013257251.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータの処理により、測定データに基づき異常検知を行なう方法であって、
異常あるいは正常のラベルをもつ測定データと、ラベルをもたない測定データを標本として入力するステップと、
前記標本に基づき、前記標本の間の関係を示す類似度行列を求めるステップと、
前記類似度に基づくペナルティを定義し、前記ペナルティを小さくする項を有する更新式に従ってパラメータを計算するステップと、
前記計算されたパラメータに基づき、異常検知の度合いを計算するステップを有する、
方法。
【請求項２】
前記パラメータを計算するステップの前に、前記類似度行列からグラフ・ラプラシアンを計算するステップをさらに有し、前記パラメータを計算するステップが、該計算されたグラフ・ラプラシアンを使用する、請求項１に記載の方法。
【請求項３】
前記類似度に基づくペナルティは、類似度行列またはグラフラプラシアンに基づくマハラノビス距離である、請求項２に記載の方法。
【請求項４】
前記類似度行列は標本数x標本数の正方行列であり、各行と各列は各標本に対応し、正常（ラベル付き）標本と正常標本に対応する行列の要素は正数aであり、正常標本と異常標本に対応する要素は非正数bであり、正常標本とラベル無し標本に対応する要素はcであり、異常標本と異常標本に対応する要素はdであり、異常標本とラベル無し標本に対応する要素はeであり、ラベル無し標本とラベル無し標本に対応する要素はfである、請求項１に記載の方法。
【請求項５】
前記a,b,c,d,e,fは、b≦c≦a, e≦d, d≦fである、請求項４に記載の方法。
【請求項６】
ラベル無し標本が正常標本であると仮定できる場合に、cとfをaと同じもしくは近い値にし、eをbと同じもしくは近い値にする、請求項５に記載の方法。
【請求項７】
ラベル無し標本が異常標本であると仮定できる場合に、cをbと同じもしくは近い値にし、eとfをdと同じもしくは近い値にする、請求項５に記載の方法。
【請求項８】
前記標本としての観測値が、潜在変数とパラメータの内積とノイズ項により定まるモデルを用いる、請求項１に記載の方法。
【請求項９】
前記ノイズ項が、正常標本と異常標本とラベルなし標本でそれぞれ異なり、正常標本のノイズ項 ≦ ラベルなし標本のノイズ項 ≦ 異常標本のノイズ項である、請求項８に記載の方法。
【請求項１０】
コンピュータの処理により、測定データに基づき異常検知を行なうプログラムであって、
前記コンピュータに、
異常あるいは正常のラベルをもつ測定データと、ラベルをもたない測定データを標本として入力するステップと、
前記標本に基づき、前記標本の間の関係を示す類似度行列を求めるステップと、
前記類似度に基づくペナルティを定義し、前記ペナルティを小さくする項を有する更新式に従ってパラメータを計算するステップと、
前記計算されたパラメータに基づき、異常検知の度合いを計算するステップを実行させる、
プログラム。
【請求項１１】
前記パラメータを計算するステップの前に、前記類似度行列からグラフ・ラプラシアンを計算するステップをさらに有し、前記パラメータを計算するステップが、該計算されたグラフ・ラプラシアンを使用する、請求項１０に記載のプログラム。
【請求項１２】
前記類似度に基づくペナルティは、類似度行列またはグラフラプラシアンに基づくマハラノビス距離である、請求項１１に記載のプログラム。
【請求項１３】
前記類似度行列は標本数x標本数の正方行列であり、各行と各列は各標本に対応し、正常（ラベル付き）標本と正常標本に対応する行列の要素は正数aであり、正常標本と異常標本に対応する要素は非正数bであり、正常標本とラベル無し標本に対応する要素はcであり、異常標本と異常標本に対応する要素はdであり、異常標本とラベル無し標本に対応する要素はeであり、ラベル無し標本とラベル無し標本に対応する要素はfである、請求項１０に記載のプログラム。
【請求項１４】
前記a,b,c,d,e,fは、b≦c≦a, e≦d, d≦fである、請求項１３に記載の方法。
【請求項１５】
ラベル無し標本が正常標本であると仮定できる場合に、cとfをaと同じもしくは近い値にし、eをbと同じもしくは近い値にする、請求項１４に記載のプログラム。
【請求項１６】
ラベル無し標本が異常標本であると仮定できる場合に、cをbと同じもしくは近い値にし、eとfをdと同じもしくは近い値にする、請求項１４に記載のプログラム。
【請求項１７】
前記標本としての観測値が、潜在変数とパラメータの内積とノイズ項により定まるモデルを用いる、請求項１０に記載のプログラム。
【請求項１８】
前記ノイズ項が、正常標本と異常標本とラベルなし標本でそれぞれ異なり、正常標本のノイズ項 ≦ ラベルなし標本のノイズ項 ≦ 異常標本のノイズ項である、請求項１７に記載のプログラム。
【請求項１９】
コンピュータの処理により、測定データに基づき異常検知を行なうシステムであって、
記憶手段と、
前記記憶手段に保存された、異常あるいは正常のラベルをもつ測定データと、ラベルをもたない測定データと、
前記標本に基づき、前記標本の間の関係を示す類似度行列を求める手段と、
前記類似度に基づくペナルティを定義し、前記ペナルティを小さくする項を有する更新式に従ってパラメータを計算する手段と、
前記計算されたパラメータに基づき、異常検知の度合いを計算する手段を有する、
システム。
【請求項２０】
前記パラメータを計算するステップの前に、前記類似度行列からグラフ・ラプラシアンを計算するステップをさらに有し、前記パラメータを計算するステップが、該計算されたグラフ・ラプラシアンを使用する、請求項１９に記載のシステム。
【請求項２１】
前記類似度に基づくペナルティは、類似度行列またはグラフラプラシアンに基づくマハラノビス距離である、請求項２０に記載のシステム。
【請求項２２】
前記類似度行列は標本数x標本数の正方行列であり、各行と各列は各標本に対応し、正常（ラベル付き）標本と正常標本に対応する行列の要素は正数aであり、正常標本と異常標本に対応する要素は非正数bであり、正常標本とラベル無し標本に対応する要素はcであり、異常標本と異常標本に対応する要素はdであり、異常標本とラベル無し標本に対応する要素はeであり、ラベル無し標本とラベル無し標本に対応する要素はfである、請求項１９に記載のシステム。
【請求項２３】
前記a,b,c,d,e,fは、b≦c≦a, e≦d, d≦fである、請求項２２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、車両や産業機械などの異常を検知する技法に関するものである。
【背景技術】
【０００２】
列車やプラントなどの産業機械は、事故が発生すると社会的な影響が大きいので、事前に異常を検出することの要望が大きい。
【０００３】
そこで、従来より、安全性を維持するために、車両や産業機械などの様々な箇所を測定するためのセンサを設置し、それらのセンサから得られた測定データをコンピュータにより解析することによって、異常を検出することが行なわれている。
【０００４】
例えば、車両の主要部位の温度が、異常検知に利用可能である。その温度は、車両の経路付近に設置されたレーザー計測装置を用いて測定される。そして計測されたデータに基づき、早期異常検知が行なわれる。
【０００５】
その際、解析用のコンピュータには、異常検知対象の装置に関する知識が組み込まれる。
【０００６】
しかし、知識ベースの異常検知は、十分な信頼性を保証するまでに至っていない。その際、過去に検知した異常パターンを利用できるなら、過去と似たようなケースを見落とす可能性が減って異常検知の信頼性が高まる。関連技術として、以下の文献に記述されているものが知られている。
【０００７】
特開平７−２８０６０３号公報は、機械の異常判定方法において、標本を用いることを開示する。
【０００８】
ＷＯ２００８／１１４８６３は、診断装置において、診断対象の変化度パターンの類似度を計算することを開示する。
【０００９】
特開２００８−５８１９１号公報は、回転機械の診断方法において、標準パラメータ値との類似度を確信度として計算することを開示する。
【００１０】
特開２００９−７６０５６号公報は、異常値を同定する方法において、頻度異常測度を用いることを開示する。
【００１１】
特開２０１０−７８４６７号公報は、テスト用時系列データと、参照用正常時系列データの各々について、先ず相関係数行列を作成し、graphic lassoのアルゴリズムにより、その各々の相関係数行列から、逆行列である、疎の精度行列を作成し、精度行列を用いて、テスト用時系列データと参照用正常時系列データの各々について、好適には多変量ガウスモデルによって近傍性の確率分布を記述することを開示する。
【００１２】
X. Zhu, Z. Ghahramani, "Semi-supervised learning using gaussian fields and harmonic functions" in ICML, 2003は、ガウス・ランダム場モデルに基づく、半教師あり学習について述べたものであり、ラベル付きデータとラベルなしデータを、重み付きグラフの頂点としてあらわすことを開示する。
【００１３】
A.B. Goldberg, X. Zhu, and S. Wright, "Dissimilarity in graph-based semi-supervised classification", in AISTATS, 2007は、ラベル付けされたデータとラベルなしデータの類似度と非類似度から学習する、半教師あり分類アルゴリズムを記述する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開平７−２８０６０３号公報
【特許文献２】ＷＯ２００８／１１４８６３
【特許文献３】特開２００８−５８１９１号公報
【特許文献４】特開２００９−７６０５６号公報
【特許文献５】特開２０１０−７８４６７号公報
【非特許文献】
【００１５】
【非特許文献１】X. Zhu, Z. Ghahramani, "Semi-supervised learning using gaussian fields and harmonic functions" in ICML, 2003
【非特許文献２】A.B. Goldberg, X. Zhu, and S. Wright, "Dissimilarity in graph-based semi-supervised classification", in AISTATS, 2007
【発明の概要】
【発明が解決しようとする課題】
【００１６】
上記従来技術は、半教師ありアルゴリズムも含めて、異常検知に適用可能な様々に技法を記述するが、過去に検知した異常パターンを利用することについては示唆するものではない。すなわち、上記従来技術にあっては、過去に検知した異常パターンを活用しようとすると、恣意的な前処理が必要であり、結局、異常検知の信頼性を十分に高められなかった。
【００１７】
従って、この発明の目的は、既存のラベル情報を、異常検知モデルに取り入れる解析技法を提供することにある。
【００１８】
この発明の他の目的は、ラベルあり標本とラベルなし標本が混在しているデータにおいて、ラベル情報を有効に活用できる異常検知技法を提供することにある。
【課題を解決するための手段】
【００１９】
この発明は、上記課題を解決するためになされたものであり、ラベル情報を有効活用するために、標本間に類似度を導入するというアイデアに基づく。例えば、正常ラベルあり標本は互いによく似ていて、異常ラベルあり標本とは類似性がないと想定する。
【００２０】
また、過去の経験から故障は滅多にないと判明している場合、ラベルなし標本は異常標本より正常標本との類似度が高いと想定し、一方、何も事前情報がない場合、双方の標本に同等に似ていると想定する。
【００２１】
さて、正規化した各標本は、各々の成分がセンサ値である多次元ベクトルで表現される。そこで、本発明によれば、個々のセンサ値が、潜在変数と各センサ固有の係数ベクトルの内積と観測ノイズの線形和で生成されると仮定する。但し、観測ノイズの大きさは、センサ値のラベル情報により異なるように定式化される。観測ノイズは、正常ラベル ≦ ラベルなし ≦ 異常ラベルとなるように設定される。
【００２２】
次に、各標本の間の類似度からグラフ・ラプラシアンが作成され、グラフ・ラプラシアンを用いて、勾配法などによって、モデル・パラメータとしての最適線形変換行列が求められる。
【００２３】
最適線形変換行列が得られると、例えば、本願出願人に係る特願２０１１−２０６０８７号明細書に記載されている技法に従い、テスト標本のセンサ各々の異常スコアが計算される。
【発明の効果】
【００２４】
この発明によれば、過去に検知した異常パターン及び正常パターンの標本を異常検知モデルに取り入れることによって、異常検知の基準の恣意性を減らし、より信頼性の高い異常検知を行うことが可能となる。
【図面の簡単な説明】
【００２５】
【図１】本発明を実施するための一例のコンピュータ・ハードウェアの構成を示すブロック図である。
【図２】本発明を実施するための機能構成を示すブロック図である。
【図３】本発明に従い、異常検知のためのモデル・パラメータを計算する処理のフローチャートを示す図である。
【図４】モデル・パラメータなどを用いて異常スコアを計算する処理のフローチャートを示す図である。
【発明を実施するための形態】
【００２６】
以下、図面に基づき、この発明の実施例を説明する。特に断わらない限り、同一の参照番号は、図面を通して、同一の対象を指すものとする。尚、以下で説明するのは、本発明の一実施形態であり、この発明を、この実施例で説明する内容に限定する意図はないことを理解されたい。
【００２７】
図１を参照すると、本発明の一実施例に係るシステム構成及び処理を実現するためのコンピュータ・ハードウェアのブロック図が示されている。図１において、システム・パス１０２には、ＣＰＵ１０４と、主記憶（ＲＡＭ）１０６と、ハードディスク・ドライブ（ＨＤＤ）１０８と、キーボード１１０と、マウス１１２と、ディスプレイ１１４が接続されている。ＣＰＵ１０４は、好適には、３２ビットまたは６４ビットのアーキテクチャに基づくものであり、例えば、インテル社のPentium（商標）  ４、Core(商標)2 Duo、Xeon(商標)、AMD社のAthlon（商標）などを使用することができる。主記憶１０６は、好適には、４ＧＢ以上の容量をもつものである。ハードディスク・ドライブ１０８は、大量のデータを格納できるように、例えば、５００ＧＢ以上の容量をもつものであることが望ましい。
【００２８】
ハードディスク・ドライブ１０８には、個々に図示しないが、オペレーティング・システムが、予め格納されている。オペレーティング・システムは、Linux(商標)、マイクロソフト社のWindows XP(商標)、Windows(商標)7、アップルコンピュータのMac OS（商標）などの、ＣＰＵ１０４に適合する任意のものでよい。
【００２９】
ハードディスク・ドライブ１０８にはさらに、図２を参照して後で説明する、メイン・プログラム２０２、ラベルありデータ２０４、ラベルなしデータ２０６、パラメータ群２０８、グラフ・ラプラシアン計算ルーチン２１０、パラメータ最適化ルーチン２１２、及び異常検知ルーチン２１４が格納されている。メイン・プログラム２０２、グラフ・ラプラシアン計算ルーチン２１０、パラメータ最適化ルーチン２１２、及び異常検知ルーチン２１４は、Java(R)、C、C++、C#などの既存の任意のプログラミング言語で作成することができる。
【００３０】
キーボード１１０及びマウス１１２は、オペレーティング・システムまたは、ハードディスク・ドライブ１０８から主記憶１０６にロードされ、ディスプレイ１１４に表示された・メインプログラム２０２上で操作したり、文字を打ち込んだりするために使用される。
【００３１】
ディスプレイ１１４は、好適には液晶ディスプレイであり、例えば、ＸＧＡ（１０２４×７６８の解像度）、またはＵＸＧＡ（１６００×１２００の解像度）などの任意の解像度のものを使用することができる。ディスプレイ１１４は、図示しないが、パラメータの入力や処理を開始するための操作ウインドウや、パラメータの計算結果等を表示するために使用される。
【００３２】
次に、図２の機能ブロック図を参照して、本発明の処理の機能的な構成について説明する。
【００３３】
図２において、メイン・プログラム２０２は、全体の処理を統合する機能をもつプログラムであり、ユーザの操作に従い、パラメータ群２０８をセットしたり、グラフ・ラプラシアン計算ルーチン２１０、パラメータ最適化ルーチン２１２、及び異常検知ルーチン２１４を起動して計算を実行したり、結果をディスプレイ１１４に表示したりするために使用される。
【００３４】
ラベルありデータ２０４は、過去に検知された、異常／正常が判明しているデータを含み、異常が判明しているデータには異常のラベルが付され、正常が判明しているデータには正常のラベルが付されている。
【００３５】
ラベルなしデータ２０６は、異常とも正常とも判明していない、ラベルなしのデータを含む。以下では便宜上、ラベルありデータ２０４とラベルなしデータ２０６を一括して統一して扱うことにする。
【００３６】
１つのデータ（標本とも呼ぶ）は、D種のセンサ値からなるD次元の実数ベクトルであるとする。このような標本がN個あるとすると、
センサ・データの集合X = [X1,...,XN]T ∈ RN×Dとあらわすことができる。
【００３７】
センサ・データの集合Xは好適には、オリジナル・センサ・データの集合X' = [X'1,...,X'N]T ∈ RN×Dに基づき正規化されたデータである。正規化は次のような式に基づき行われる。ここで、Xn,dは、ベクトルXnのd番目の成分である。X'n,dも同様である。
【数１】
2013257251.tif 000003
【００３８】
また、センサ・データの集合X = [X1,...,XN]T ∈ RN×Dの各々に対応して、ラベル情報Y = [Y1,...,YN]T ∈ RN×Dが与えられ、図示しないが、ラベルありデータ２０４及びラベルなしデータ２０６とともにハードディスク・ドライブ１０８に保存されている。
【００３９】
ラベル情報Yは、下記のように定義される。
【数２】
2013257251.tif 000004
ここで、NaNは、0と1以外の任意の実数でよい。
【００４０】
本発明によれば、正規化された各標本Xnの各センサ値Xn,dは、潜在変数Zn ∈ RD'(D' ≦ D)と、ラベル毎のノイズの大きさの係数snormal, sanomaly, sunlabelと平均0、分散1のガウスノイズεで次のようにあらわされると仮定される。snormalは正常に対応し、sanomalyは異常に対応し、sunlabelはラベルなしに対応する。また、D'は通常はDと等しくセットするが、Dが非常に大きく、データ数Nが小さいときは、D'は100程度にセットされる。
【数３】
2013257251.tif 000005
【００４１】
このとき、snormal ≦ sunlabel ≦ sanomalyと設定される。具体的な値であるが、例えば、何も知見がなけば、snormal = 1,sunlabel = 3,sanomaly = 5と設定し、ラベルなしデータがほぼ正常であるという知見があればsnormal = 1,sunlabel = 2,sanomaly = 5と設定し、ラベルなしデータがほぼ異常であるという知見があればsnormal = 1,sunlabel = 4,sanomaly = 5と設定する。
【００４２】
パラメータ群２０８は、ノイズの大きさsnormal, sanomaly, sunlabel、スケールパラメータλ、次元数D、D'などのパラメータをハードディスク・ドライブ１０８に保存し、これらのパラメータは、ユーザの操作により設定可能である。
【００４３】
パラメータ群２０８にはさらに、類似度行列Rを決定するための値も含まれる。すなわち、類似度行列は標本数Nx標本数Nの正方行列であり、各行と各列は各標本に対応し(例えば、 i行 j列は i番目と j番目の標本に関する類似度に対応)、正常（ラベル付き）標本と正常標本に対応する行列の要素は正数aであり、正常標本と異常標本に対応する要素は非正数bであり、正常標本とラベル無し標本に対応する要素はcであり、異常標本と異常標本に対応する要素はdであり、異常標本とラベル無し標本に対応する要素はeであり、ラベル無し標本とラベル無し標本に対応する要素はfとなる。a,b,c,d,e,fは、b≦c≦a, e≦d, d≦fという関係を満たす。
【００４４】
上記のa,b,dは好ましくはa=1, b=0, d=0.2と設定される。
c,e,fの設定は sunlabelなどと同様、アルゴリズム使用者が適用データのラベル無しデータに関して持っている知見に依存する。
すなわち：
何も知見がないのであれば、 例えば c=0.5,e=0.1,f=0.5,
ラベル無しデータがほぼ正常であるという知見があれば、例えば c=0.8, e=0, f= 0.8,
ラベル無しデータがほぼ異常であるという知見があれば、例えば c=0, e=0.1, f= 0.2。
【００４５】
図２に示すグラフ・ラプラシアン計算ルーチン２１０は、パラメータ群２０８に設定された値a,b,c,d,e,fに基づき、類似度行列Rを構成し、次にこうして構成された類似度行列Rから、次のようにしてグラフ・ラプラシアンLを計算する。
【数４】
2013257251.tif 000006
【００４６】
この潜在変数Z ≡ [Z1,...,ZN]T ∈ RN×D'について、グラフ・ラプラシアンLを以って
【数５】
2013257251.tif 000007
が成立する。X ≡ [X1,...,XN]T ∈ RN×Dの確率Pr(X|W,Z,s)は、パラメータW ≡ [W1,...,WD]T ∈ RD×D'とZとの尤度関数と見なせるので、パラメータ最適化ルーチン２１２は、その事後確率を最大化するように、例えば勾配法により、(W*,Z*)を求める。この処理の詳細は、図３のフローチャートを参照して、後で説明する。
【００４７】
こうして求められた(W*,Z*)に基づき、異常検知ルーチン２１４は、各変数の異常スコアを計算する。異常検知ルーチン２１４は好適には、本願出願人に係る特願２０１１−２０６０８７号明細書に記載されている技法を用いる。異常検知ルーチン２１４の処理は、図４のフローチャートを参照して、後で説明する。
【００４８】
次に図３のフローチャートを参照して、モデルパラメータ（最適線形変換行列）W*などを求める処理について説明する。
【００４９】
図３のステップ３０２において、メイン・プログラム２０２は、トレーニング・データ{X'∈RN×D,y}を、ラベルありデータ２０４及びラベルなしデータ２０６をハードディスク・ドライブ１０８から読み込むことで入力し、前述のようにこれらのデータを正規化するとともに、各列について正規化の際に計算した各列dの平均μdと標準偏差σdを記憶する。
【００５０】
ステップ３０４において、メイン・プログラム２０２は、パラメータD', スケールパラメータλ, snormal,sunlabel,sanomaly,a,b,c,d,e,fをパラメータ群２０８から読み込み、あるいは、設定画面（図示しない）によってキーボード１１０やマウス１１２を使って入力する。スケールパラメータλは例えば、0.1に設定されるが、ノイズの大きさなどを指標として、交差検定法により決定することもできる。
【００５１】
ステップ３０６において、メイン・プログラム２０２は、グラフ・ラプラシアン計算ルーチン２１０を呼び出し、ラベル情報Yとa,b,c,d,e,fを用いて、グラフ・ラプラシアンLを計算する。グラフ・ラプラシアンLの計算の詳細は、図２に関連して既に説明したので、ここでは説明を省略する。
【００５２】
ステップ３０８において、メイン・プログラム２０２は、W∈RD×D', Z∈N×D'を初期化する。この初期化は任意の方法でよいが、好ましくは標準正規分布、すなわち、平均が0、標準偏差が1の正規分布となるようにWとZを初期化する。
【００５３】
ステップ３１０において、メイン・プログラム２０２は、時刻変数tを1とセットする。
【００５４】
ステップ３１２において、メイン・プログラム２０２は、下記の式に従い、Wを更新する。
【数６】
2013257251.tif 000008
ここで、Sは下記のとおりであり、
【数７】
2013257251.tif 000009
S・(X - ZWT)という演算は、(X - ZWT)という行列のn,d要素に、Sのn,d要素を掛けることを意味する。またαは学習率であり、例えば0.1と設定される。αの値は一定でなく、繰り返し回数に応じて減少させてもよい。
【００５５】
ステップ３１４において、メイン・プログラム２０２は、下記の式に従い、Zを更新する。
【数８】
2013257251.tif 000010
【００５６】
ここでの式は、類似度に基づくペナルティを小さくする項を有する更新式に従ってパラメータを更新するように計算を行なうものである。これは、各観測の潜在変数の類似度に基づくペナルティを小さくする項を含み、より詳細には、類似度に基づくペナルティは、類似度行列（もしくはグラフ・ラプラシアン）に基づくマハラノビス距離となるように定式化されている。そして、勾配法に従い、収束するように計算される。
【００５７】
なお、ステップ３１２とステップ３１４はこの順でなく、順序を入れ替えて計算してもよい。
【００５８】
ステップ３１４の後は、メイン・プログラム２０２は、ステップ３１６で、終了条件を判定する。ここでの終了条件とは例えば、前回のループで計算した行列W'と今回のループで計算した行列Wのフロベニウス・ノルム
【数９】
2013257251.tif 000011
を計算し、これが所定の閾値、例えば0.001以内であることをもって終了条件が満たされたとする。
【００５９】
終了条件が満たされないなら、メイン・プログラム２０２は、ステップ３１８でtを1だけ増分して、ステップ３１２に戻る。
【００６０】
メイン・プログラム２０２は、終了条件が満たされると、ステップ３２０で、モデルパラメータW、snormal、μ= [μ1,...,μD], σ = [σ1,...,σD]を出力する。
【００６１】
次に図４のフローチャートを参照して、異常検出ルーチン２１４による異常スコア計算処理について説明する。
【００６２】
図４において、ステップ４０２では、メイン・プログラム２０２は、異常検出ルーチン２１４を呼び出して、モデルパラメータW、snormal、μ= [μ1,...,μD], σ = [σ1,...,σD]を渡す。
【００６３】
異常検出ルーチン２１４はステップ４０４で、テスト・データ{X'∈RN×D,y}を、ラベルありデータ２０４及びラベルなしデータ２０６をハードディスク・ドライブ１０８から読み込むことで入力し、μとσを用いて、X'を各列について、記述の式により正規化し、Xを得る。
【００６４】
異常検出ルーチン２１４はステップ４０６で、下記の式により相関異常スコア・ベクトルsn∈RDを算出する。
【数１０】
2013257251.tif 000012
但し、
【数１１】
2013257251.tif 000013
であり、ここでIは単位行列である。この、最適線形変換行列Wに基づき相関異常スコア・ベクトルを計算するアルゴリズムは、本願出願人に係る特願２０１１−２０６０８７号明細書に記載されているものであるので、ここでは詳述しない。
【００６５】
このような計算に基づき、異常検出ルーチン２１４は、ステップ４０８で、異常スコア・ベクトルs1,...,sNを出力する。s1,...,sNは各次元＝各変数、すなわち各センサの異常スコアであり、高いほど異常である。
【００６６】
以上、列車やプラントなどの産業機械の異常検知を行なう実施例について本発明を説明したが、これには限定されず、複数の測定パラメータに基づき異常検知を行なう任意の例に適用可能であることを理解されたい。
【００６７】
【符号の説明】
【００６８】
１０４・・・ＣＰＵ
１０６・・・主記憶
１０８・・・ハードディスク・ドライブ
２０４・・・ラベルありデータ
２０６・・・ラベルなしデータ
２１０・・・グラフ・ラプラシアン計算ルーチン
２１２・・・パラメータ最適化ルーチン
２１４・・・異常検知ルーチン
【図１】
2013257251.tif 000014
【図２】
2013257251.tif 000015
【図３】
2013257251.tif 000016
【図４】
2013257251.tif 000017