(57)【要約】      （修正有）【課題】異常検知装置において、設備のセンサ数が多い場合においても異常検知感度を向上させる。【解決手段】複数センサから出力される複数の時系列センサ信号が入力される第１のセンサ信号入力部１０４と、第１のセンサ信号入力部に入力された複数のセンサ信号の間の類似度を求め、類似度に基づいてセンサグループを設定するセンサグループ設定部１０５と、複数センサから出力される複数のセンサ信号が入力される第２のセンサ信号入力部１０７と、センサグループ毎に、第２のセンサ信号入力部に入力された複数センサ信号から時刻毎に特徴ベクトルを抽出する特徴ベクトル抽出部１０８と、センサグループ毎に、指定された学習期間の特徴ベクトルを学習データとして、各時刻の異常測度を算出する異常測度算出部１０９と、センサグループ毎に、異常測度を所定のしきい値と比較することにより各時刻のセンサ信号が正常か異常かを判定する異常検出部１１２を備える。【選択図】図１
2020201890.tif 000002
【特許請求の範囲】
【請求項１】
設備に装着された複数のセンサから出力される複数の時系列のセンサ信号が入力される第１のセンサ信号入力部と、
前記第１のセンサ信号入力部に入力された複数の前記センサ信号の間の類似度を求め、前記類似度に基づいてセンサグループを設定するセンサグループ設定部と、
前記複数のセンサから出力される複数の前記センサ信号が入力される第２のセンサ信号入力部と、
前記センサグループ毎に、前記第２のセンサ信号入力部に入力された複数の前記センサ信号から時刻毎に特徴ベクトルを抽出する特徴ベクトル抽出部と、
前記センサグループ毎に、指定された学習期間の前記特徴ベクトルを学習データとして、各時刻の異常測度を算出する異常測度算出部と、
前記センサグループ毎に、前記異常測度を所定のしきい値と比較することにより各時刻の前記センサ信号が正常か異常かを判定する異常検出部と、
を有することを特徴とする異常検知装置。
【請求項２】
前記センサグループ設定部は、
前記類似度として、複数の前記センサの中の二つのセンサの二次元分布に基づいて算出される０から１の値を用いて、前記センサグループを設定することを特徴とする請求項１に記載の異常検知装置。
【請求項３】
前記センサグループ設定部は、
前記類似度に基づく階層的クラスタリングによって、前記センサグループを設定することを特徴とする請求項２に記載の異常検知装置。
【請求項４】
前記センサグループ設定部は、
前記階層的クラスタリングを実行する際に、予め一つの前記センサグループ当たりの最大センサ数と前記類似度の類似度基準値を設定しておき、
結合しようとする二つのクラスタのセンサ数の合計が前記最大センサ数を超える場合と二つの前記クラスタの間の前記類似度が前記類似度基準値を下回る場合には、二つの前記クラスタを結合しないことを特徴とする請求項３に記載の異常検知装置。
【請求項５】
前記センサグループ設定部は、
前記階層的クラスタリングを実行する際に、予め同じ前記センサグループとすべき前記センサを指定しておき、
同じ前記センサグループと指定された前記センサから出力される前記センサ信号の間の前記類似度を１とすることを特徴とする請求項３に記載の異常検知装置。
【請求項６】
前記センサグループ設定部は、
予め核とする少なくとも一つの前記センサを有するセンサ群と、一つの前記センサグループ当たりの最大センサ数と前記類似度の類似度基準値とを指定しておき、
前記センサ群との前記類似度が高い前記センサから順に、前記最大センサ数を超えずかつ前記類似度基準値を下回らない範囲で同じ前記センサグループに追加して前記センサグループを設定することを特徴とする請求項２に記載の異常検知装置。
【請求項７】
前記センサグループ設定部は、
予め全ての前記センサグループに含める前記センサを指定しておき、前記類似度に基づいて前記センサグループを設定した後に、指定された前記センサを全ての前記センサグループに含めることを特徴とする請求項１に記載の異常検知装置。
【請求項８】
前記センサグループ設定部は、
前記センサグループを設定する前に、前記センサ信号のヒストグラムの分布から外れているはずれ値を削除するデータクレンジング処理を行うことを特徴とする請求項１に記載の異常検知装置。
【請求項９】
設備に装着された複数のセンサから出力される複数の時系列のセンサ信号を入力し、
複数の前記センサ信号の間の類似度を求め、
前記類似度に基づいてセンサグループを設定し、
前記センサグループ毎に、複数の前記センサ信号から時刻毎に特徴ベクトルを抽出し、
前記センサグループ毎に、指定された学習期間の前記特徴ベクトルを学習データとして、各時刻の異常測度を算出し、
前記センサグループ毎に、前記異常測度を所定のしきい値と比較することにより各時刻の前記センサ信号が正常か異常かを判定することを特徴とする異常検知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異常検知装置及び異常検知方法に関する。
【背景技術】
【０００２】
電力会社では、ガスタービンの廃熱などを利用して地域暖房用温水を供給したり、工場向けに高圧蒸気や低圧蒸気を供給したりしている。石油化学会社では、ガスタービンなどを電源設備として運転している。このようにガスタービンなどを用いた各種プラントや設備において、設備の不具合またはその兆候を検知する異常検知は、社会へのダメージを最小限に抑えるためにも極めて重要である。
【０００３】
ガスタービンや蒸気タービンのみならず、水力発電所での水車、原子力発電所の原子炉、風力発電所の風車、航空機や重機のエンジン、鉄道車両や軌道、エスカレータ、エレベータ、機器及び部品レベルでも搭載電池の劣化及び寿命など、上記予防保全を必要とする設備は枚挙に暇がない。
【０００４】
このため、対象設備やプラントでは様々な物理情報を取得する複数のセンサを取り付け、センサ毎の監視基準に従って対象設備やプラントが正常か異常かを判定する。
【０００５】
特許文献１には、過去の正常データの学習に基づいて算出される異常測度をしきい値と比較することによって異常の有無を検知する異常検知方法が開示されている。さらに、異常検知感度を阻害するセンサを除外することを目的として、センサ信号の二次元の分布に基づいて算出した評価値に基づいてセンサを除外する方法が開示されている。ここに、異常測度とは、複数のセンサによる測定値を１つのベクトル値として表現し、正常状態のベクトル値からの偏移量のことである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−２００９４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、感度を阻害するセンサを適切に除外することが可能であり、異常検知感度を向上させることができる。しかし、設備のセンサ数が多いとセンサ１個当たりの影響が小さくなって異常検知感度が低下してしまう。異常検知対象とするセンサを３０個程度に減らせば対象とするセンサの異常検知感度は向上する。しかし、例えば、もとのセンサ数が１００個であれば、７０個程度が異常検知対象とはならず、それらのセンサに発生した異常は検知できなくなってしまい異常検知感度が低下する。
【０００８】
本発明の目的は、異常検知装置において、設備のセンサ数が多い場合においても異常検知感度を向上させることにある。
【課題を解決するための手段】
【０００９】
本発明の一態様の異常検知装置は、設備に装着された複数のセンサから出力される複数の時系列のセンサ信号が入力される第１のセンサ信号入力部と、前記第１のセンサ信号入力部に入力された複数の前記センサ信号の間の類似度を求め、前記類似度に基づいてセンサグループを設定するセンサグループ設定部と、前記複数のセンサから出力される複数の前記センサ信号が入力される第２のセンサ信号入力部と、前記センサグループ毎に、前記第２のセンサ信号入力部に入力された複数の前記センサ信号から時刻毎に特徴ベクトルを抽出する特徴ベクトル抽出部と、前記センサグループ毎に、指定された学習期間の前記特徴ベクトルを学習データとして、各時刻の異常測度を算出する異常測度算出部と、前記センサグループ毎に、前記異常測度を所定のしきい値と比較することにより各時刻の前記センサ信号が正常か異常かを判定する異常検出部とを有することを特徴とする。
【００１０】
本発明の一態様の異常検知方法は、設備に装着された複数のセンサから出力される複数の時系列のセンサ信号を入力し、複数の前記センサ信号の間の類似度を求め、前記類似度に基づいてセンサグループを設定し、前記センサグループ毎に、複数の前記センサ信号から時刻毎に特徴ベクトルを抽出し、前記センサグループ毎に、指定された学習期間の前記特徴ベクトルを学習データとして、各時刻の異常測度を算出し、前記センサグループ毎に、前記異常測度を所定のしきい値と比較することにより各時刻の前記センサ信号が正常か異常かを判定することを特徴とする。
【発明の効果】
【００１１】
本発明に一態様によれば、設備のセンサ数が多い場合においても、全センサを対象として異常検知の感度を向上させてセンサに発生した異常を検知することができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態の異常検知装置の一構成例を示す図である。
【図２】複数のセンサ信号をリスト化して表形式に表した例を示す図である。
【図３】実施形態の異常検知装置の行う全体の処理フローを示す図である。
【図４】実施例１のセンサグループ設定処理のフローを示す図である。
【図５】二次元頻度分布算出処理のフローを示す図である。
【図６】二次元頻度分布画像作成方法を説明する図である。
【図７】センサ間の類似度を算出する方法を説明する図である。
【図８Ａ】二次元頻度分布画像の例を示す図である。
【図８Ｂ】二次元頻度分布画像の例を示す図である。
【図８Ｃ】二次元頻度分布画像の例を示す図である。
【図９Ａ】実施例２のセンサグループ設定処理のフローを示す図である。
【図９Ｂ】実施例３のセンサグループ設定処理のフローを示す図である。
【図１０Ａ】学習時の異常測度算出処理のフローを示す図である。
【図１０Ｂ】局所部分空間法による異常測度算出処理を説明する図である。
【図１１】異常検知処理のフローを示す図である。
【図１２】センサグループ設定条件を設定するＧＵＩの例を示す図である。
【図１３Ａ】分布画像表示画面の例を示す図である。
【図１３Ｂ】センサ信号表示画面の例を示す図である。
【図１４Ａ】オフライン解析条件を設定するＧＵＩの例を示す図である。
【図１４Ｂ】オンライン解析結果の表示対象を指定するＧＵＩの例を示す図である。
【図１５Ａ】解析結果全体表示画面の例を示す図である。
【図１５Ｂ】解析結果拡大表示画面の例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を用いて実施形態について説明する。
【００１４】
図１を参照して、実施形態の異常検知装置の一構成例について説明する。
異常検知装置１００は、検知対象である設備１０１に装着された複数のセンサから出力されるセンサ信号１０２を、所定時間ごとに（周期的に）取得する。取得したセンサ信号１０２は、一旦センサ信号蓄積部１０３に蓄積される。信号入力部（第１のセンサ信号入力部）１０４は、センサ信号蓄積部１０３からセンサ信号１０２を入力し、センサグループ設定部１０５へ送る。センサグループ設定部１０５は、センサ信号間の類似性（類似度）に基づきセンサグループを設定し、結果をグループ情報蓄積部１０６に保存する。
【００１５】
信号入力部（第２のセンサ信号入力部）１０７は、センサ信号蓄積部１０３から、あるいは設備１０１に装着されたセンサから直接にセンサ信号１０２を入力し、特徴ベクトル抽出部１０８へ送る。特徴ベクトル抽出部１０８は、グループ情報蓄積部１０６からセンサグループの情報を入力し、設定されたグループ毎に、センサ信号１０２をもとに特徴ベクトルを抽出し異常測度算出部１０９へ送る。異常測度算出部１０９は、予め指定された学習期間の特徴ベクトルを用いて、所定時間毎（以下、各時刻と表現する場合もある）の特徴ベクトル毎に異常測度を算出する。
【００１６】
しきい値算出部１１０は、異常測度算出部１０９による学習データの異常測度に基づいてしきい値を算出する。特徴ベクトル抽出部１０８で抽出された学習期間の特徴ベクトル、しきい値算出部１１０で算出されたしきい値ほか、異常検知時に必要となるデータは学習結果として学習結果蓄積部１１１に保存される。異常検出部１１２は、異常測度算出部１０９から送られる各特徴ベクトルの異常測度と、しきい値算出部１１０で算出したしきい値とを比較することで、設備１０１の異常を検出する。異常検出部１１２で検出された検知結果は出力部１１３に出力される。
【００１７】
ここで、以下で用いる用語の簡単な説明を行う。特徴ベクトルとは、複数のセンサによる測定値を１つのベクトル値として表現したものである。異常測度とは、注目する特徴ベクトルの、指定された期間の特徴ベクトルからの偏移量のことである。つまり、異常測度とは、複数のセンサによる測定値を１つのベクトル値として表現し、正常状態のベクトル値からの偏移量のことである。
【００１８】
異常検知の対象とする設備１０１は、例えば、ガスタービンや蒸気タービンなどの設備やプラントである。設備１０１は、その状態を表すセンサ信号１０２を出力する。センサ信号１０２はセンサ信号蓄積部１０３に蓄積される。
【００１９】
図２は、複数のセンサ信号１０２をリスト化して表形式に表した例である。
センサ信号１０２は、物理特性の異なる複数の物理情報が所定間隔毎に取得される多次元時系列信号である。図２に示す表の構成は、日時２０１の情報と、複数のセンサのセンサ値２０２を対応させて示している。センサは、数百から数千といった数になる場合もあり、それらの種類によって、例えば、シリンダ、オイル、冷却水などの温度、オイルや冷却水の圧力、軸の回転速度、室温、運転時間などをセンサ値として出力する。センサ値は、設備やプラントなどの出力や状態を表すのみならず、何かの状態をある値（たとえば目標値）に制御するための制御信号の場合もある。
【００２０】
異常検知装置１００の動作には、センサ信号蓄積部１０３に蓄積されたデータを用いてセンサグループを設定する「センサグループ設定」処理と、センサ信号蓄積部１０３に蓄積されたデータを用いて学習データの生成及び保存を行う「学習」処理と、入力信号に基づき異常を検知する「異常検知」処理のフェーズがある。基本的に「センサグループ設定」と「学習」はオフラインの処理、「異常検知」はオンラインの処理である。ただし、「異常検知」をオフラインの処理とすることも可能である。以下の説明では、それらを「センサグループ設定時」「学習時」、「異常検知時」という言葉で区別する。
【００２１】
図３の処理フローを参照して、実施形態の異常検知装置１００の動作について説明する。
尚、図３では処理の概要を記載している。
【００２２】
（ａ）はセンサグループ設定処理で、指定期間のセンサ信号を入力し（Ｓ３０１）、センサ信号間の類似度を算出し（Ｓ３０２）、類似度に基づきセンサグループを設定する（Ｓ３０３）。
【００２３】
（ｂ）は学習時の異常測度算出処理で、学習期間のセンサ信号を入力し（Ｓ３１１）、特徴ベクトルの抽出（Ｓ３１２）と異常測度の算出（Ｓ３１３）としきい値の算出（Ｓ３１４）を行う。
【００２４】
（ｃ）は異常検知時の異常判定処理で、検知対象のセンサ信号を入力し（Ｓ３２１）、特徴ベクトルの抽出（Ｓ３２２）と異常測度の算出（Ｓ３２３）を行う。そして、算出した異常測度をＳ３１４で求めたしきい値と比較することにより、設備の正常／異常を判定する（Ｓ３２４）。なお、（ｂ）（ｃ）は、センサグループ設定部１０５で設定されたグループ毎の処理である。
【００２５】
以下、（ａ）（ｂ）（ｃ）の順に説明するが、それぞれの詳細なフローは、図４、図５、図９Ａ、図９Ｂ、図１０Ａ、図１１にて説明する。
【実施例１】
【００２６】
図４のフローを参照して、実施例１のセンサグループ設定処理について説明する。
最初に、信号入力部（第１のセンサ信号入力部）１０４において、センサ信号蓄積部１０３に蓄積されたセンサ値のうち指定された期間のセンサ信号を入力する（Ｓ４０１）。次に、センサグループ設定部１０５において、センサ２個の総当りで二次元頻度分布画像を作成する（Ｓ４０２）。次に、二次元頻度分布画像をもとにセンサ信号間の類似度を算出する（Ｓ４０３）。
【００２７】
次に、類似度に基づく階層的クラスタリングを行う（Ｓ４０４）。各クラスタには入力した全てのセンサ信号が重複なく割り当てられており、これがすなわちセンサグループとなる。最後に、グループ情報をグループ情報蓄積部１０６に保存する（Ｓ４０５）。出力部１１３に出力される出力形式は、センサグループ毎の使用センサのセンサ名または番号のリストあるいは不使用センサのセンサ名または番号である。
【００２８】
ここで、図５を参照して、二次元頻度分布算出処理（Ｓ４０２）について説明する。図５は、二次元頻度分布算出処理のフローを示す図である。
始めに、指定された期間のセンサ信号を入力する（Ｓ５０１）。各センサ信号についてステップＳ５０３からＳ５０６までの処理を繰り返す（Ｓ５０２、ループ１）。まず、学習期間のデータの最大値（ＭＡＸ）と最小値（ＭＩＮ）を求める（Ｓ５０３）。次に、最小値から最大値までの範囲を指定された数Ｎで分割する際の刻み幅Ｓを算出する（Ｓ５０４）。なお、Ｓ＝（ＭＡＸ−ＭＩＮ）／Ｎで計算できる。次に、二次元頻度分布算出の処理範囲を算出する（Ｓ５０５）が、ここではステップＳ５０３で算出されたＭＩＮからＭＡＸをそのまま処理範囲とする。
【００２９】
次に学習期間の全データについて、次式によりセンサ信号値（Ｆ）からビン番号（ＢＮＯ）を算出する（Ｓ５０６）。
ＢＮＯ＝ＩＮＴ（Ｎ＊（Ｆ−ＭＩＮ）／（ＭＡＸ−ＭＩＮ））
ただし関数ＩＮＴ（Ｘ）はＸの整数部を表す。ビン番号（ＢＮＯ）を用いることで、各信号値は最小値０〜最大値Ｎの（Ｎ＋１）段階の整数値に変換される。
【００３０】
次に、複数のセンサの中から２個のセンサを取り出し、それぞれのセンサ信号の組合せに基づき二次元頻度分布を算出する。これを全てのセンサの組合せについて、ステップＳ５０８からＳ５１０までの処理を繰り返す（Ｓ５０７、ループ２）。ここで、２個のセンサの組合せの中には同一センサの組合せを含める。従ってセンサの組合せ数（繰り返し数）は、（センサ数）×（センサ数＋１）／２となる。
【００３１】
まず、二次元分布算出用の二次元配列を確保し、全ての要素に０をセットする（Ｓ５０８）。配列のサイズはＮである。学習期間の全データについて、２個のセンサ信号のビン番号ＢＮＯに対応する配列の要素に１を加算する（Ｓ５０９）。すなわち、一方のセンサ信号のビン番号は列の要素に対応させ、他方のセンサ信号のビン番号は行の要素に対応させる。この処理により、センサ２個による信号の二次元の頻度分布（ヒストグラム）が算出される。この頻度分布を画像に変換して保存する（Ｓ５１０）。変換方法については後述する。図６は、時系列センサ信号と二次元頻度分布画像の関係を表す図である。
【００３２】
ステップＳ５１０における、画像変換方法の例を説明する。
始めに配列要素の最大値すなわち最大頻度を求める。画像サイズは配列サイズと同じとし、各要素の値から対応する座標の画素値を例えば、２５５×配列の要素値／最大頻度とする。数値２５５は画素値を８ビットで表す場合の最大値であり、この値を用いれば、そのままビットマップ形式で保存できる。あるいは、画素値を２５５×ＬＯＧ（配列の要素値＋１）／ＬＯＧ（最大頻度＋１）とする。ただし関数ＬＯＧ（Ｘ）はＸの対数を表す。このような変換式を用いれば、最大頻度が大きい場合も、非ゼロの頻度に非ゼロの画素値を対応させることが可能になる。
【００３３】
頻度分布画像の作り方は、上記方法に限定されない。例えば単純な頻度分布ではなく、１個のデータにガウス分布や他の重みつきフィルタを割り当て、それを重畳するようにしてもよい。あるいは、上記方法で得られた画像に所定サイズの最大値フィルタをかけたり、平均フィルタ、その他の重みつきフィルタをかけたりしてもよい。また、８ビットではなく、１６ビットに変換してもよい。また、必ずしも画像形式で保存する必要はなく二次元配列を変換せずにバイナリあるいはテキスト形式で保存してもよい。
【００３４】
次に、センサ信号間の類似度算出処理（Ｓ４０３）について説明する。
ここで、センサ信号間の類似度とは、信号値がお互いに影響を及ぼしているかどうかを定量化したものを表す。そこで、ステップＳ４０２で算出した二次元頻度分布画像を利用して類似度を算出する。
【００３５】
図７は、センサaとセンサbの類似度算出を説明する図である。左から、センサa同士、センサb同士、センサaとセンサbの二次元頻度分布画像である。
【００３６】
図５の処理により得られるこれらの画像は、二次元の特徴空間上で密度が高いところが高い画素値で表されている。ここでは、通常の濃淡画像とは異なり、画素値の０を白、２５５を黒で表したグレイスケールの画像である。これらの画像から、まずゼロでない画素をカウントしそれぞれCount(a, a)、Count(b, b)、Count(a, b)とする。類似度Similarity(a, b) を（数１）により算出する。ただし，Count(b, b) > Count(a, a)の場合は，次式のaとbを入れ替えて計算する。
【００３７】
【数１】
2020201890.tif 000003
【００３８】
状態数が多い方のセンサの値を決めたときにもう一方のセンサの値の範囲が小さいほど類似度が高いという考えに基づいて設計した式であり、対角線のみのときは類似度が１、全面塗りつぶされたときは類似度が０になる。
【００３９】
図８Ａ〜図８Ｃは、二次元頻度分布画像のいくつかの例を示す図である。横軸にセンサａの信号値（ビン番号）を、縦軸にセンサｂの信号値（ビン番号）を示す。
【００４０】
二次元頻度分布画像は２つのセンサの相関の強さに応じて、画像のパターンが変化する。図８Ａと図８Ｂは相関が強い場合で、特に図８Ａは状態遷移に時間的なずれが存在する場合である。図８Ｃは、相関が弱い場合である。ここで、図８Ａの二次元頻度分布画像における類似度は０．８９３であり、図８Ｂの二次元頻度分布画像における類似度は０．８３８であり、図８Ｃの二次元頻度分布画像における類似度は０．０８４である。
【００４１】
なお、データ間の関係を表す数値として相関係数が知られているが、これは線形性を表す尺度であり、お互いに影響がある場合の全てをカバーすることができない。図８Ａは、センサ相互の影響は強いが相関係数は低い例である。
【００４２】
次に、階層的クラスタリング処理（Ｓ４０４）について説明する。
階層的クラスタリングは、個々のデータを１個ずつのクラスタに割り当てるところから開始し、類似したクラスタを再帰的に結合していくものである。結合するクラスタを選択する基準によって、最短距離法、最長距離法、群平均法などの手法がある。それぞれの方法において、クラスタ間の類似度は、クラスタをまたがるデータ間の類似度の最大値、最小値、平均値で定義される。クラスタ間の類似度が大きい組から順次結合して１個のクラスタとしていき、全てのクラスタ間の類似度が予め定めた類似度基準値を下回ったとき、結合を停止する。ただし、着目する２個のクラスタに含まれるデータ数の合計が予め定めた最大センサ数より大きい場合は類似度を０とみなすことにより、１個のクラスタに含まれるデータ数が最大数を超えないようにする。類似度基準値はパラメータであり０から１の間の実数を指定する。また、最大センサ数もパラメータである。
【実施例２】
【００４３】
図９Ａのフローを参照して、実施例２センサグループ設定処理について説明する。実施例２は同じグループとしたいセンサを予め指定しておく処理である。
【００４４】
最初に、信号入力部（第１のセンサ信号入力部）１０４において、センサ信号蓄積部１０３に蓄積されたセンサ値のうち指定された期間のセンサ信号を入力する（Ｓ９０１）。次に、センサグループ設定部１０５において、センサ２個の総当りで二次元頻度分布画像を作成する（Ｓ９０２）。次に、二次元頻度分布画像をもとにセンサ信号間の類似度を算出する（Ｓ９０３）。次に、センサグループ設定に関する指示を入力する（Ｓ９０４）。ＧＵＩから入力、ファイルの読み込みなど方法は問わないが、同じセンサグループとしたいセンサが指定されるものとする。指定される組合せは複数あってもよい。
【００４５】
次に、同じセンサグループと指定されたセンサ間の類似度をステップＳ９０３で算出された値によらず１とする（Ｓ９０５）。次に、類似度に基づく階層的クラスタリングを行う（Ｓ９０６）。同じセンサグループと指定されたセンサは類似度が１なので階層的クラスタリングの初めの段階で結合され、指定されていないセンサは類似度に応じて結合される。ステップＳ４０４と同様、予め最大センサ数と類似度基準値を指定しておき、最大センサ数を超える場合は結合せず、全てのクラスタ間の距離が類似度基準値を下回った場合は結合を停止する。最後に、グループ情報をグループ情報蓄積部１０６に保存する（Ｓ９０７）。
【実施例３】
【００４６】
図９Ｂのフローを参照して、実施例３のセンサグループ設定処理について説明する。実施例３はグループの核として予め指定されたセンサに類似したセンサを同じグループとする処理である。
【００４７】
最初に、センサ信号入力（Ｓ９１１）と二次元頻度分布画像作成（Ｓ９１２）とセンサ信号間類似度算出（Ｓ９１３）は、実施例２と同様である。
【００４８】
次に、センサグループ設定に関する指示を入力する（Ｓ９１４）。ここでは、センサグループの核としたい１個ないし複数個のセンサからなるセンサ群が指定されるものとする。指示の数は複数でもよく、以下の処理は指示毎に独立して行う（Ｓ９１５）。
【００４９】
まず、新しい１個のクラスタを作成し指定されたセンサ群をそのクラスタに入れる（Ｓ９１６）。次に、指定されていないセンサとセンサ群の間の類似度を算出する（Ｓ９１７）。センサとクラスタの類似度は、例えば注目センサとセンサ群のセンサの類似度の平均とする。あるいは、最小値または最大値とする。
【００５０】
次に、算出した類似度が高い順にセンサを同じクラスタに入れていく（Ｓ９１８）。ただし、予め指定した最大センサ数以内かつ予め指定した類似度基準値以上の場合とする。指示の個数分ステップＳ９１６〜Ｓ９１８の処理が終了したら、次に、新しい１個のクラスタを作成し、どのクラスタにも入れられていないセンサを入れる（Ｓ９１９）。最後に、グループ情報をグループ情報蓄積部１０６に保存する（Ｓ９２０）。
【００５１】
図４および図９Ａ、図９Ｂで説明したセンサグループ設定処理における、更なる変形例について述べる。
【００５２】
第一の例では、予め全てのグループに含めるセンサを指定しておき、上記いずれかの方法でグループ設定された後に、指定されたセンサを前グループに入れる処理を加える。第二の例では、センサ信号入力後（Ｓ４０１）、センサ信号に基づくデータクレンジング処理を行う。これは、解析に悪影響を及ぼす欠損値、エラー値などのノイズデータを除去する処理である。具体的には、センサ毎のヒストグラムをもとに主要な分布から外れていてかつ発生比率が低いデータを削除する。データクレンジング処理により、センサ間の類似度の算出精度を向上させることができる。
【００５３】
次に、図１０Ａのフローを参照して、図３（ｂ）の学習時の異常測度算出処理について説明する。これは、Ｓ３０３で設定されたセンサグループ毎の処理とする。
【００５４】
最初に、信号入力部（第２のセンサ信号入力部）１０７において、センサ信号蓄積部１０３に蓄積されたセンサ値のうち指定された期間（学習期間）のセンサ信号を入力する（Ｓ１００１）。学習期間として、設備が正常な状態であった期間を指定するものとする。次に、特徴ベクトル抽出部１０８において、入力されたセンサ信号を正準化する（Ｓ１００２）。特徴ベクトル抽出部１０８は、グループ情報蓄積部１０６から、着目グループに含まれるセンサの情報を取得し、正準化および後述する特徴ベクトル抽出はグループに含まれるセンサを対象とするものとする。
【００５５】
センサ信号の正準化は、単位及びスケールの異なる複数のセンサ信号を同様に扱うために行う。具体的には、各センサ信号の、学習期間の平均と標準偏差を用いて、平均が０、分散が１となるように各センサ信号を変換する。異常検知時に同じ変換ができるように、各センサ信号の平均と標準偏差を記憶しておく。または、各センサ信号の、学習期間の最大値と最小値を用いて、最大が１、最小が０となるように各センサ信号を変換する。または、最大値と最小値の代わりに予め設定した上限値と下限値を用いてもよい。この場合は、異常検知時に同様の変換ができるように、各センサ信号の最大値と最小値または上限値と下限値を学習結果蓄積部１０９に記憶しておく。
【００５６】
次に、特徴ベクトル抽出部１０８において、各時刻の特徴ベクトルを抽出する（Ｓ１００３）。特徴ベクトルは、センサ信号を正準化したものをそのまま要素として並べたものである。あるいは、ある時刻に対して±１，±２，・・・のウィンドウを設け、ウィンドウ幅（３，５，・・・）×センサ数の特徴ベクトルとすることで、センサ信号の時間変化を表す特徴を抽出することもできる。また、離散ウェーブレット変換（ＤＷＴ：Discrete Wavelet Transform）を施して、周波数成分に分解してもよい。
【００５７】
次に、異常測度算出部１０９において、学習期間の異常測度を算出する。まず学習期間を複数の区間に分け（Ｓ１００４）、抽出した全特徴ベクトルについて、以下の処理を繰り返す（Ｓ１００５）。複数区間に対応して順次選んだ特徴ベクトルである注目ベクトルと、注目ベクトルと同じ区間を除く学習期間のデータを学習データとする（Ｓ１００６）。注目ベクトルと学習データを用いて異常測度を算出する（Ｓ１００７）。ステップＳ１００４における区間の分割は例えば１日毎とする。あるいは、化学プラントのようなバッチ処理の場合はバッチ毎、加工装置の場合は加工対象個体毎、ＭＲＩのような医療装置の場合は検査対象者毎としてもよい。ステップＳ１００７の異常測度算出処理には、局所部分空間法（ＬＳＣ：Local Sub-space Classifier）や投影距離法（ＰＤＭ：Projection Distance Method）を用いることができる。
【００５８】
図１０Ｂは、局所部分空間法による異常測度算出処理を説明する図である。
局所部分空間法は、注目ベクトルｑに対するｋ個の近傍ベクトルを選択し、選択したｋ個の近傍ベクトルが張るｋ−１次元のアフィン部分空間へ注目ベクトルｑを投影したときの投影距離を測る方法である。図１０Ｂでは、ｋ＝３個の近傍ベクトルｘ１〜ｘ３でアフィン部分空間を形成した場合である。そして、注目ベクトルｑに最も近いアフィン部分空間上の点Ｘｂが投影点（基準ベクトル）となり、注目ベクトルｑから基準ベクトルＸｂまでの距離が異常測度である。
【００５９】
具体的な算出法を説明する。評価データｑとそのｋ個の近傍ベクトルｘｉ（ｉ＝１，・・・，ｋ）から、ｑをｋ個並べた行列Ｑとｘｉを並べた行列Ｘを作成し、（数２）から両者の相関行列Ｃを求める。次に、（数３）から近傍ベクトルｘｉの重み付けを表す係数ベクトルｂを計算する。異常測度ｄは、ベクトル（ｑ−Ｘｂ）のノルムまたはその２乗により算出される。
【００６０】
【数２】
2020201890.tif 000004
【００６１】
【数３】
2020201890.tif 000005
【００６２】
なお、図１０Ｂではｋ＝３の場合を説明したが、特徴ベクトルの次元数より十分小さければいくつでもよい。ｋ＝１の場合は、最近傍法と等価の処理になる。
【００６３】
投影距離法は、選択された特徴ベクトルに対し独自の原点をもつ部分空間すなわちアフィン部分空間（分散最大の空間）を作成する方法である。何らかの方法で注目ベクトルに対応する複数の特徴ベクトルを選択し、以下の方法でアフィン部分空間を算出する。
【００６４】
まず、選択された特徴ベクトルの平均μと共分散行列Σを求め、次にΣの固有値問題を解いて、値の大きい方から予め指定したｒ個の固有値に対応する固有ベクトルを並べた行列Ｕをアフィン部分空間の正規直交基底とする。ｒは特徴ベクトルの次元より小さくかつ選択データ数より小さい数とする。またはｒを固定した数とせず、固有値の大きい方から累積した寄与率が予め指定した割合を超えたときの値としてもよい。注目ベクトルから最も近いアフィン部分空間上の点が基準ベクトルとなる。また、注目ベクトルから基準ベクトルを引いたものが残差ベクトルとなり、残差ベクトルのノルムまたはノルムの２乗が異常測度となる。
【００６５】
ここで、複数の特徴ベクトルの選択方法としては、予め指定した数十から数百の数の特徴ベクトルを注目ベクトルから近い順に選択する方法がある。また、学習対象の特徴ベクトルを予めクラスタリングしておき、注目ベクトルに最も近いクラスタに含まれる特徴ベクトルを選択するようにしてもよい。また、注目ベクトルｑのｋ−近傍ベクトルの平均ベクトルまでの距離を異常測度とする局所平均距離法や、ガウシアンプロセスなどを用いてもよい。
【００６６】
全特徴ベクトルについて異常測度算出処理後、しきい値算出部１１０において、しきい値を算出する（Ｓ１００８）。このしきい値は、異常検出部１１３に入力する異常測度と比較され、設備の正常／異常を判定するために用いられるものである。しきい値算出部１０７は、正常な学習データを異常と判定しないしきい値を算出する。言い換えれば、正常な学習データから得られる異常測度の最大値をしきい値として算出する。
【００６７】
あるいは、正常な学習データを予め定めた割合より多く正常と判定するしきい値を算出することにしてもよい。この場合は、正常な学習データから得られる異常測度をソートし、異常測度が低い方から前述の予め定めた割合に到達するところの異常測度をしきい値として採用する。
【００６８】
図１０Ａの学習処理においては、学習結果蓄積部１１１に学習結果を保存しておく。学習結果として保存されるデータには、少なくとも特徴ベクトル抽出のためのパラメータ、異常測度算出のためのパラメータ、センサ正準化のためのパラメータ、抽出した全特徴ベクトルデータ、異常判定しきい値、特徴ベクトル抽出のためのパラメータ及び異常測度算出のためのパラメータは、学習時に指定されたものと共通である。センサ正準化のためのパラメータは、センサ信号入力部１０７がステップＳ１００２の処理で算出した各センサ信号の平均、標準偏差、最大値、最小値などである。
【００６９】
次に、図１１を参照して、図３（ｃ）の異常検知時の異常判定処理について説明する。  図１１は、異常検出部１１２による異常検知処理（Ｓ３２１〜Ｓ３２４）のフローを示す図である。ここでは、センサ信号蓄積部１０３に蓄積されたデータのうち指定された期間のデータ、または新たに観測されたデータについて、特徴ベクトルの抽出（特徴ベクトル抽出部１０８）、異常測度の算出（異常測度算出部１０９）を行い、これをしきい値（しきい値算出部１１１）と比較して、異常検出部１１２にて正常か異常かの判定を行う。
【００７０】
異常検出部１１０は、データベースから学習時に保存した学習結果を読み出す（Ｓ１１０１）。その際、学習時の異常測度やしきい値に基づいて、ユーザが適切な処理番号を選択し、処理番号に対応付けられた学習結果を用いる。信号入力部（第２のセンサ信号入力部）１０７は、センサ信号蓄積部１０３または設備１０１からセンサ信号１０２を入力し（Ｓ１１０２）、センサ信号毎に正準化する（Ｓ１１０３）。このとき、ステップＳ１００２の正準化の処理に用いたパラメータを用いる。次に、特徴ベクトル抽出部１０８は、選択したセンサ信号から、ステップＳ１００３の処理と同じ方法で特徴ベクトルの抽出を行う（Ｓ１１０４）。
【００７１】
次に、全特徴ベクトルについてステップＳ１１０６およびＳ１１０７の処理を行う（Ｓ１１０５、ループ）。異常測度算出部１０９は、注目ベクトルと学習データを用いて、異常測度を算出する（Ｓ１１０６）。この処理は、図１０ＡのステップＳ１００７と同じ方法で行うが、学習データを全て用いることとする。異常検出部１１２は、ステップＳ１１０１で読み出したしきい値とステップＳ１１０６で算出した異常測度とを比較する。異常測度がしきい値以下であれば設備は「正常」と判定し、異常測度がしきい値より大きければ「異常」と判定する（Ｓ１１０７）。
【００７２】
次に、以上の動作を実現するための異常検知装置１００のユーザインタフェース（ＧＵＩ）の例を説明する。
【００７３】
図１２は、センサグループ設定実施のための対象期間及び処理パラメータ含む解析条件を設定するＧＵＩの例である。過去のセンサ信号１０２は、設備ＩＤ及び時刻と対応付けられてセンサ信号蓄積部１０３に保存されているものとする。
【００７４】
センサグループ設定画面１２０１では、対象設備、対象期間、データクレンジングパラメータ、センサグループ設定パラメータ、センサグループ設定方法、グループ指示ファイル名、レシピ名を入力する。設備ＩＤ入力ウィンドウ１２０２には、対象とする設備のＩＤを入力する。設備リスト表示ボタン１２０３の押下により、センサ信号蓄積部１０３に保存されているデータの装置ＩＤのリストが表示されるので、リストから選択入力する。異常検知装置１００につながる設備１０１が１台のみの場合は、設備ＩＤ入力ウィンドウ１２０２は表示されない。ここで、センサグループ設定画面１２０１は、例えば、図１の出力部１１３に表示される。
【００７５】
対象期間入力ウィンドウ１２０４には、処理対象期間の開始日と終了日を入力する。データクレンジングチェックボックス１２０５には、センサグループ設定処理の前にデータクレンジング処理を行いたい場合、チェックを入れる。その場合、クレンジング比率入力ウィンドウ１２０６にクレンジング比率を入力する。センサ信号値が主要な分布から離れていてかつ発生比率が入力された数値より低い場合データ削除の対象とする。
【００７６】
最大センサ数入力ウィンドウ１２０７および類似度基準値入力ウィンドウ１２０８には、図４のステップＳ４０４、図９ＡのステップＳ９０６、図９ＢのＳ９１８で参照されるセンサグループ設定パラメータを入力する。センサグループ設定方法選択ボタン１２０９で、いずれかの方法を１個選択する。この図の例ではそれぞれ、図４、図９Ａ、図９Ｂの処理フローに従う方法が対応する。「同グループ指示」または「核センサ指示」を選択した場合は、指示ファイル入力ウィンドウ１２１０に、指示ファイル名を入力する。指示ファイルには、例えば、同じグループとするセンサ名の組、またはグループの核とする１個以上のセンサ名が記載されている。
【００７７】
以上の条件の情報が確定したら、実行ボタン１２１１の押下により、センサグループ設定処理を実行する。まず、データクレンジングチェックボックス１２０５がチェックされている場合は対象期間のセンサ信号を対象にデータクレンジング処理を行う。次に、センサグループ設定方法選択ボタン１２０９での選択に従い、図４、図９Ａ、図９Ｂのいずれかの処理フローによってセンサグループを設定し、グループ情報を保存する。
【００７８】
処理終了後、後述する結果表示画面が表示される。ユーザによる確認が終了すると、センサグループ設定画面１２０１に戻ってくる。再表示ボタン１２１２ボタン押下により、結果表示画面をサイド表示することもできる。登録名入力ウィンドウ１２１３に登録名を入力し、登録ボタン１２１４を押下することにより、設備ＩＤ及び登録名と対応付けてセンサグループ情報を保存し、終了する。終了ボタン１２１５が押下された場合は、何もしないで終了する。この場合、一旦保存されていたセンサグループ情報は、削除される。
【００７９】
図１３Ａおよび図１３Ｂは、センサグループ結果をユーザに示すためのＧＵＩの例である。ユーザが各画面の上部に表示されたタブを選択することにより、分布画像表示画面１３０１およびセンサ信号表示画面１３０２のいずれかに切り換わる。ここで、分布画像表示画面１３０１およびセンサ信号表示画面１３０２は、例えば、図１の出力部１１３に表示される。
【００８０】
図１３Ａは、分布画像表示画面の例である。分布画像表示画面１３０１には、グループ選択ウィンドウ１３０３で選択されたグループについて、表示順選択ウィンドウ１３０４で選択された表示順に従って、グループに属するセンサ間の分布画像が表示される。
【００８１】
グループ選択ウィンドウ１３０３では、リスト表示ボタンの押下により設定されたセンサグループ番号と「その他」からなるリストが表示され、いずれかを選択することに表示対象のグループが指定される。ユーザによる選択の前はグループ１が選択されている。表示順選択ウィンドウ１３０４では、リスト表示ボタンの押下により、「センサ番号」と「類似度」のいずれかを選択可能である。「センサ番号」が選択されている場合は、センサ番号の小さいものから順に、「類似度」が選択されている場合は、平均類似度が大きいものから順に表示される。平均類似度とは、あるセンサとグループ内の別のセンサの類似度の平均値のことである。
【００８２】
センサ番号欄１３０５、センサ名欄１３０６にはそれぞれセンサ番号とそれに対応するセンサ名が表示される。移動先選択ウィンドウ１３０７と移動ボタン１３０８は、各行に表示される。作用は後述する。分布画像表示ウィンドウ１３０９には、行に対応するセンサと列に対応するセンサの二次元頻度分布画像と類似度がマトリクス状に表示される。センサ番号の縦軸と横軸を入れ替えても分布画像は対称的に変化するのみであり、類似度は同じ値になるため、本実施例ではマトリクスの左下側に分布画像、右上側に類似度を表示している。表示順選択ウィンドウ１３０４で表示順が切り替えられた場合、行と列の両方を入れ替えた上で、左下側に類似度が来た場合は、逆側にある分布画像と入れ替える。その画像から縦軸と横軸を入れ替えた画像を作成して、差し替える。
【００８３】
この画面では、グループの編集も可能である。移動先選択ウィンドウ１３０７で移動先を選択し移動ボタン１３０８押下により、対応する行のセンサを他のグループに移動させることができる。移動先は現在のグループ以外のグループと「その他」のいずれかから選択する。対応するセンサは表示中のグループから削除され、対応する行、列とも削除されて上および左に詰めて表示される。平均類似度は算出しなおされる。
【００８４】
操作選択ウィンドウ１３１０では、そのグループを登録するか廃棄するかを選択しておく。全てのグループについて選択を行った後、ＯＫボタン１３１１押下により、登録が選択されているグループのグループ情報を保存して、センサグループ設定画面１２０１に戻る。キャンセルボタン１３１１が押下された場合は、センサグループを編集前の状態に戻してセンサグループ設定画面１２０１に戻る。ＯＫボタン１３１１が一度も押されていない間は、センサグループ設定画面１２０１で登録ボタン１２１４が押下できない状態になっている。
【００８５】
なお、分布画像表示画面１３０１で操作された、グループ選択、表示順選択、センサのグループ移動、操作選択の結果は、全てセンサ信号表示画面１３０２に反映される。また、センサのグループ移動の結果は、他のグループを選択した際の表示画面にも反映される。
【００８６】
図１３Ｂは、センサ信号表示画面１３０２の例である。センサ信号表示画面１３０２には、グループ選択ウィンドウ１３０３で選択されたグループについて、表示順選択ウィンドウ１３０４で選択された表示順に従って、グループに属するセンサの時系列センサ信号グラフが表示される。期間入力ウィンドウ１３１２への入力により、表示期間を変更することが可能である。この変更は全センサ一度に行う。センサ信号表示ウィンドウ１３１３には、各行に対応するセンサ信号の時系列グラフが表示される。
【００８７】
センサ信号表示画面１３０２では、分布画像表示画面１３０１と同様のグループ選択、表示順選択、センサのグループ移動、操作選択を行うことができ、その結果は、分布画像表示画面１３０１に反映される。また、ＯＫボタン１３１１およびキャンセルボタン１３１１の押下も可能である。
【００８８】
図１４Ａは、オフライン解析実施のための学習期間、及び処理パラメータ含む解析条件を設定するＧＵＩの例である。この画面では、算出された学習結果をレシピとして登録することも可能である。また、過去のセンサ信号１０２は、設備ＩＤ及び時刻と対応付けられてデータベースに保存されているものとする。
【００８９】
オフライン解析条件設定画面１４０１では、対象設備、学習期間、テスト期間、異常測度算出パラメータを入力する。設備ＩＤ入力ウィンドウ１４０２には、対象とする設備のＩＤを入力する。設備リスト表示ボタン１４０３の押下により、センサ信号蓄積部１０３に保存されているデータの装置ＩＤのリストが表示されるので、リストから選択入力する。異常検知装置１００につながる設備１０１が１台のみの場合は、設備ＩＤ入力ウィンドウ１４０２は表示されない。ここで、オフライン解析条件設定画面１４０１は、例えば、図１の出力部１１３に表示される。
【００９０】
学習期間入力ウィンドウ１４０４には、学習データを抽出したい期間の開始日と終了日を入力する。テスト期間入力ウィンドウ１４０５には、解析対象としたい期間の開始日と終了日を入力する。
【００９１】
異常測度算出パラメータ入力ウィンドウ１４０６には、異常測度算出において使用するパラメータを入力する。図は手法として局所部分空間を採用した場合の例であり、近傍ベクトル数と正則化パラメータを入力する。正則化パラメータは、（２）式において相関行列Ｃの逆行列が求められないことを防ぐため、対角成分に加算する小さい数である。
【００９２】
センサグループ登録名入力ウィンドウ１４０７とグループ番号入力ウィンドウには、図１３Ａおよび図１３Ｂの画面で設定、登録されたセンサグループの登録名およびグループ番号を入力する。以上の解析条件の情報が確定したら、実行ボタン１４０９の押下により、オフライン解析を実行する。
【００９３】
まず、学習期間のセンサ信号を用い、図１０Ａの処理フローに従って学習を実行する。学習結果として、ステップＳ１００２で算出されたセンサ信号毎の平均と標準偏差、ステップＳ１００３で抽出された学習期間の全特徴ベクトルデータ、ステップＳ１００８で算出されたしきい値を保存しておく。
【００９４】
さらに、学習期間およびテスト期間のセンサ信号を用い、図１１の処理フローに従って異常測度を算出し、正常か異常かの判定を行い、判定結果を異常測度およびしきい値と併せて保存しておく。ただし、学習期間のデータについては、ステップＳ１００７で算出した異常測度を用いて、正常か異常かの判定を行う。
【００９５】
解析終了後、後述する結果表示画面が表示される。ユーザによる確認が終了すると、オフライン解析条件設定画面１４０１に戻ってくる。レシピ名入力ウィンドウ１４１０にレシピ名を入力し、登録ボタン１４１１を押下することにより、設備ＩＤ及びレシピ名と対応付けて学習結果および解析結果を保存し、終了する。ここで、学習結果には、学習の実行により作成保存されたデータのほか、入力ウィンドウ１４０６〜１４０８で入力された異常測度算出パラメータ、センサグループ登録名およびグループ番号が含まれる。終了ボタン１４１２が押下された場合は、何もしないで終了する。この場合、学習により作成保存された学習結果および、続く異常検知処理により作成保存された解析結果は、削除されるか次に実行される解析によって上書きされる。
【００９６】
登録された学習結果は、活性か不活性かのラベルをつけて管理され、以降オンラインの解析が実行される。オンライン解析では、新しく入力されたデータに対し、装置ＩＤが一致する活性な学習結果の情報を用いて、図１１に示す処理を行い、結果をレシピ名および処理日時と対応付けて保存しておく。これらの処理は定期的、例えば１日毎に実行する。サンプリング間隔が短い設備やリアルタイム性を求められる設備については、実行の間隔をもっと短くする。
【００９７】
図１４Ｂは、オンライン解析結果の表示対象を指定するためのＧＵＩの例である。
ユーザは、表示対象指定画面１４２１から表示対象の設備、レシピ及び期間を指定する。始めに、装置ＩＤ選択ウィンドウ１４２２により設備ＩＤを選択する。次に、レシピ名選択ウィンドウ１４２３により、設備ＩＤ１４２２を対象としたレシピのリストから表示対象のレシピを選択する。データ記録期間表示部１４２４には、入力されたレシピを用いて処理され、記録が残されている期間の開始日と終了日が表示される。結果表示期間指定ウィンドウ１４２５には、結果を表示したい期間の開始日と終了日を入力する。表示ボタン１４２６を押下すると、異常検知処理の結果が表示される。終了ボタン１４２７を押下すると、表示対象を指定する処理を終了する。ここで、表示対象指定画面１４２１は、例えば、図１の出力部１１３に表示される。
【００９８】
図１５Ａおよび図１５Ｂは、解析結果をユーザに示すためのＧＵＩの例である。ユーザが各画面の上部に表示されたタブを選択することにより、解析結果全体表示画面１５０１および解析結果拡大表示画面１５０２のいずれかに切り換わる。ここで、解析結果全体表示画面１５０１および解析結果拡大表示画面１５０２は、例えば、図１の出力部１１３に表示される。
【００９９】
図１５Ａは、解析結果全体表示画面１５０１の例である。解析結果全体表示画面１５０１には、指定された期間の、異常測度、しきい値、及び判定結果、並びにセンサ信号の時系列グラフが表示される。期間表示ウィンドウ１５０３には、オフライン解析の結果を表示する場合は図１４Ａで指定された学習期間及びテスト期間が表示される。オンライン解析の結果を表示する場合は、図示していないが、図１４Ｂで指定された結果表示期間が表示される。
【０１００】
異常測度表示ウィンドウ１５０４には、指定された学習期間・テスト期間あるいは結果表示期間での異常測度１５０４ａ、しきい値１５０４ｂ（破線）、及び判定結果１５０４ｃが表示される。また、学習に使用した区間に丸印１５０４ｄが表示される。センサ信号表示ウィンドウ１５０５には、指定された学習期間・テスト期間あるいは結果表示期間での指定されたセンサについて、時系列センサ信号１５０５ａが表示される。
【０１０１】
センサ選択ウィンドウ１５０６では、ユーザの入力によってセンサを指定する。ただし、ユーザが指定する前は、先頭の使用センサが選択されている。カーソル１５０７は、拡大表示の時の起点を表し、ユーザのマウス操作により移動できる。表示日数指定ウィンドウ５０８には、解析結果拡大表示画面１５０２での拡大表示の起点から終点までの日数が表示され、この画面で入力することもできる。日付表示ウィンドウ１５０９には、カーソル位置の日付が表示される。終了ボタン１５１０の押下により、解析結果全体表示画面１５０１、解析結果拡大表示画面１５０２のいずれもが消去され、解析結果の表示が終了する。
【０１０２】
図１５Ｂは、解析結果拡大表示画面１５０２の例である。解析結果拡大表示画面１５０２には、解析結果全体表示画面１５０１においてカーソル１５０７で示された日付を起点とし、表示日数指定ウィンドウ１５０９で指定された日数の期間内の、異常測度、しきい値、判定結果、及びセンサ信号の時系列グラフが表示される。すなわち、異常測度表示ウィンドウ１５０４及びセンサ信号表示ウィンドウ１５０５には、解析結果全体表示画面１５０１と同様の情報が、拡大して表示される。
【０１０３】
なお、解析結果拡大表示画面１５０２では、スクロールバー１５１１とスクロールバー領域１５１２を追加表示している。スクロールバー１５１１の長さは表示日数指定ウィンドウ１５０８で指定された日数に、スクロールバー領域１５１１の全体の長さは解析結果全体表示画面１５０１に表示されている期間に相当する。また、スクロールバー１５１１の左端部が拡大表示の起点に対応する。ユーザはスクロールバー１５１１を操作することで、表示の起点を変更することも可能であり、この変更は解析結果全体表示画面１５０１のカーソル１５０７の位置と日付表示ウィンドウ１５０９の表示に反映される。
【０１０４】
上記実施例では、複数の時系列センサ信号に基づく異常検知において、全センサを対象として感度向上するよう適切なセンサグループに分け、センサグループ毎に異常検知する。上記実施例によれば、全センサを対象としてセンサ信号間の類似性（類似度）に基づいて適切な数からなるセンサグループに分けるため、異常検知感度を向上させることができ、かつどのセンサに発生した異常も検知可能となる。
【符号の説明】
【０１０５】
１００  異常検知装置
１０１  設備
１０２  センサ信号
１０３  センサ信号蓄積部
１０４  信号入力部（第１のセンサ信号入力部）
１０５  センサグループ設定部
１０６  グループ情報蓄積部、
１０７  信号入力部（第２のセンサ信号入力部）
１０８  特徴ベクトル抽出部
１０９  異常測度算出部
１１０  しきい値算出部
１１１  学習結果蓄積部
１１２  異常検出部
１１３  出力部
【図１】
2020201890.tif 000006
【図２】
2020201890.tif 000007
【図３】
2020201890.tif 000008
【図４】
2020201890.tif 000009
【図５】
2020201890.tif 000010
【図６】
2020201890.tif 000011
【図７】
2020201890.tif 000012
【図８Ａ】
2020201890.tif 000013
【図８Ｂ】
2020201890.tif 000014
【図８Ｃ】
2020201890.tif 000015
【図９Ａ】
2020201890.tif 000016
【図９Ｂ】
2020201890.tif 000017
【図１０Ａ】
2020201890.tif 000018
【図１０Ｂ】
2020201890.tif 000019
【図１１】
2020201890.tif 000020
【図１２】
2020201890.tif 000021
【図１３Ａ】
2020201890.tif 000022
【図１３Ｂ】
2020201890.tif 000023
【図１４Ａ】
2020201890.tif 000024
【図１４Ｂ】
2020201890.tif 000025
【図１５Ａ】
2020201890.tif 000026
【図１５Ｂ】
2020201890.tif 000027