(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024057284
(43)【公開日】2024-04-24
(54)【発明の名称】検出プログラム,検出方法および検出装置
(51)【国際特許分類】
G06N 20/00 20190101AFI20240417BHJP
【FI】
G06N20/00 160
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2022163915
(22)【出願日】2022-10-12
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110003649
【氏名又は名称】弁理士法人真田特許事務所
(74)【代理人】
【識別番号】100189201
【弁理士】
【氏名又は名称】横田 功
(72)【発明者】
【氏名】栗原 寛明
(57)【要約】
【課題】複数の時系列データに基づいて異常の予兆を検知する。
【解決手段】複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する。
【選択図】
図6
【特許請求の範囲】
【請求項1】
複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、
前記重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する
処理をコンピュータに実行させることを特徴とする検出プログラム。
【請求項2】
前記パーシステントホモロジー変換において、重み付きグラフの辺の重みに対する閾値を順次変化させることによる重み付きグラフにおける特定形状の発生時刻と消滅時刻とを前記データ点としてプロットすることで前記パーシステンス図を作成する
処理を前記コンピュータに実行させることを特徴とする、請求項1に記載の検出プログラム。
【請求項3】
複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、
前記重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する
処理をコンピュータが実行することを特徴とする検出方法。
【請求項4】
複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、
前記重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する
処理を実行する制御部を有することを特徴とする検出装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検出プログラム,検出方法および検出装置に関する。
【背景技術】
【0002】
複数の時系列データが得られたとき、これらの時系列データ間の関係に注目してシステムの監視や、異常検出を行なうことが知られている。
【0003】
時系列データは、例えば、あるシステムの電圧、振動数、回転数、圧力などの、ある一時期の状態を表すような、時間経過に応じた情報を持つデータである。
【0004】
複数の時系列データの系の要素(時系列データ)間の関係に基づいたデータ解析手法として、例えば、疎構造学習を用いた手法が挙げられる。この手法では、要素間の関係を最適化手法を用いてグラフに起こし、グラフの構造が大きく変化したときにシステムに異常が発生したと見做す。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許出願公開第2021/0209870号明細書
【特許文献2】米国特許出願公開第2021/0067401号明細書
【特許文献3】特開2019-105871号公報
【特許文献4】国際公開第2018/220813号
【非特許文献】
【0006】
【非特許文献1】井手 剛著「疎な相関グラフの学習による相関異常の検出」 人工知能学会第二種研究会資料, 2009年3月3日, 2009巻, DMSM-A803号, p.04-
【発明の概要】
【発明が解決しようとする課題】
【0007】
このような従来の疎構造学習を用いたデータ解析手法は「正常」か「異常」の判定のみを行なう。しかしながら、このような「正常」と「異常」の二値分類では、システムの状態が「異常」と見做されたときには、既にシステムに何らかの故障や障害が起こってしまっており、故障等の発生を未然に検知することができない。
【0008】
また、検出された「異常」がデータのノイズなどによって偶然検出されてしまった誤認識である可能性も疑われ、信頼性が低い。
【0009】
1つの側面では、本発明は、複数の時系列データに基づいて異常の予兆を検知することを目的とする。
【課題を解決するための手段】
【0010】
このため、この検出プログラムは、複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、前記重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する処理をコンピュータに実行させる。
【発明の効果】
【0011】
一実施形態によれば、複数の時系列データに基づいて異常の予兆を検知することができる。
【図面の簡単な説明】
【0012】
【
図1】実施形態の一例としての検出装置の機能構成を模式的に示す図である。
【
図2】一実施形態に係る検出装置の機能を実現するコンピュータのハードウェア(HW)構成例を示すブロック図である。
【
図3】実施形態の一例としての検出装置におけるグラフを説明するための図である。
【
図4】実施形態の一例としての検出装置における重み付きグラフの例を示す図である。
【
図5】実施形態の一例としての検出装置におけるパーシステンス図の例を示す図である。
【
図6】実施形態の一例としての検出装置の異常予兆検出部による処理を説明するための図である。
【
図7】実施形態の一例としての検出装置における処理を説明するためのフローチャートである。
【発明を実施するための形態】
【0013】
以下、図面を参照して本検出プログラム,検出方法および検出装置にかかる実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【0014】
(A)構成
図1は実施形態の一例としての検出装置1の機能構成を模式的に示す図である。
【0015】
検出装置1は、分析対象において測定された複数の時系列データを分析する。検出装置1は、これらの複数の時系列データの系から要素(時系列データ)間の関係性を抽出し、分析対象の状態の変化を追跡し、異常の予兆を検出する。分析対象は、なんからのシステムであってよい。
【0016】
時系列データは、図示しない測定装置が分析対象を測定することで取得されてもよい。測定装置によって測定された時系列データは、検出装置1に接続された記憶装置7に格納される。
【0017】
なお、検出装置1に測定装置が接続され、この測定装置から検出装置1に時系列データが入力されてもよい。検出装置1は、測定装置から入力される時系列データに対して分析を行なってもよい。
【0018】
(A-1)ハードウェア構成例
図2は一実施形態に係る検出装置1の機能を実現するコンピュータ10のハードウェア(HW)構成例を示すブロック図である。検出装置1の機能を実現するHWリソースとして、複数のコンピュータが用いられる場合は、各コンピュータが
図2に例示するHW構成を備えてよい。
【0019】
図2に示すように、コンピュータ10は、HW構成として、例示的に、プロセッサ10a、グラフィック処理装置10b、メモリ10c、記憶部10d、IF(Interface)部10e、IO(Input / Output)部10f、および読取部10gを備えてよい。
【0020】
プロセッサ10aは、種々の制御や演算を行なう演算処理装置の一例であり、種々の処理を実行する制御部である。プロセッサ10aは、コンピュータ10内の各ブロックとバス10jで相互に通信可能に接続されてよい。なお、プロセッサ10aは、複数のプロセッサを含むマルチプロセッサであってもよいし、複数のプロセッサコアを有するマルチコアプロセッサであってもよく、或いは、マルチコアプロセッサを複数有する構成であってもよい。
【0021】
プロセッサ10aとしては、例えば、CPU、MPU、APU、DSP、ASIC、FPGA等の集積回路(IC;integrated circuit)が挙げられる。なお、プロセッサ10aとして、これらの集積回路の2以上の組み合わせが用いられてもよい。CPUはCentral Processing Unitの略称であり、MPUはMicro Processing Unitの略称である。APUはAccelerated Processing Unitの略称である。DSPはDigital Signal Processorの略称であり、ASICはApplication Specific ICの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
【0022】
グラフィック処理装置10bは、IO部10fのうちのモニタ等の出力装置に対する画面表示制御を行なう。グラフィック処理装置10bとしては、種々の演算処理装置、例えば、GPU(Graphics Processing Unit)、APU、DSP、ASIC又はFPGA等の集積回路(IC)が挙げられる。
【0023】
メモリ10cは、種々のデータやプログラム等の情報を格納するHWの一例である。メモリ10cとしては、例えばDRAM(Dynamic Random Access Memory)等の揮発性メモリ、および、PM(Persistent Memory)等の不揮発性メモリ、の一方または双方が挙げられる。
【0024】
記憶部10dは、種々のデータやプログラム等の情報を格納するHWの一例である。記憶部10dとしては、HDD(Hard Disk Drive)等の磁気ディスク装置、SSD(Solid State Drive)等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)等が挙げられる。
【0025】
記憶部10dは、コンピュータ10の各種機能の全部若しくは一部を実現するプログラム10h(検出プログラム)を格納してよい。
【0026】
例えば、検出装置1のプロセッサ10aは、記憶部10dに格納されたプログラム10hをメモリ10cに展開して実行することにより、後述する時系列データ分析機能を実現できる。また、記憶部10dが、
図1に示した記憶装置7として機能してもよい。
【0027】
IF部10eは、本コンピュータ10と他のコンピュータとの間の接続および通信の制御等を行なう通信IFの一例である。例えば、IF部10eは、イーサネット(登録商標)等のLAN(Local Area Network)、或いは、FC(Fibre Channel)等の光通信等に準拠したアダプタを含んでよい。当該アダプタは、無線および有線の一方又は双方の通信方式に対応してよい。
【0028】
例えば、検出装置1は、IF部10eおよびネットワークを介して、
図1に例示する記憶装置7や、図示しない測定装置,他の情報処理装置等と通信可能に接続されてよい。なお、プログラム10hは、当該通信IFを介して、ネットワークからコンピュータ10にダウンロードされ、記憶部10dに格納されてもよい。
【0029】
IO部10fは、入力装置、および、出力装置、の一方又は双方を含んでよい。入力装置としては、例えば、キーボード、マウス、タッチパネル等が挙げられる。出力装置としては、例えば、モニタ、プロジェクタ、プリンタ等が挙げられる。また、IO部10fは、入力装置および表示装置が一体となったタッチパネル等を含んでもよい。出力装置は、グラフィック処理装置10bに接続されてよい。
【0030】
読取部10gは、記録媒体10iに記録されたデータやプログラムの情報を読み出すリーダの一例である。読取部10gは、記録媒体10iを接続可能又は挿入可能な接続端子又は装置を含んでよい。読取部10gとしては、例えば、USB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体10iにはプログラム10hが格納されてもよく、読取部10gが記録媒体10iからプログラム10hを読み出して記憶部10dに格納してもよい。
【0031】
記録媒体10iとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的なコンピュータ読取可能な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等の半導体メモリが挙げられる。
【0032】
上述したコンピュータ10のHW構成は例示である。従って、コンピュータ10内でのHWの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、又は、バスの追加若しくは削除等は適宜行なわれてもよい。
【0033】
(A-2)機能構成例
図1に示すように、検出装置1は、例示的に、グラフ作成部2,偏相関行列作成部3,重み付きグラフ作成部4,パーシステンス図作成部5および異常予兆検出部6としての機能を備えてよい。これらの機能は、コンピュータ10(
図2参照)のハードウェア(プロセッサ10a:制御部)により実現されてよい。
【0034】
グラフ作成部2は、複数の時系列データに基づいて、これらの複数の時系列データ間の関係性を表すグラフを作成する。時系列データを単にデータといってよい。
【0035】
グラフ作成部2は、記憶装置7に記憶された複数の時系列データを読み出し、これらの複数の時系列データに基づいてグラフを作成する。
【0036】
図3は実施形態の一例としての検出装置1におけるグラフを説明するための図である。
【0037】
図3において、符号Aは複数(n個)の時系列データ#1~#nを例示し、符号Bは、符号Aに示した時系列データに基づいて生成される複数(m個)のグラフ#1~#mを例示する。
【0038】
グラフは、複数の頂点(ノード)と、これらの複数の頂点同士の関係を表す辺(エッジ)とを有する。頂点は、それぞれが一の時系列データに対応する。また、辺は、これらの複数の頂点間(時系列データ間)の関係を頂点同士の接続状態(例えば、頂点同士がつながっているか否か)で表す。
図3に示す例においては、各グラフは無向グラフである。
【0039】
グラフ作成部2は、時間経過が一致するように並べた複数の時系列データの一部を、各時系列データそれぞれの一部が含まれるように矩形領域で切り取り、この矩形領域内に含まれる各時系列データに基づいてグラフを作成する。時系列データを切り取る矩形領域を窓といってよい。
図3において符号Aを付して示す例においては、図中の左右方向が時間軸方向であり、経過時間を示す。
【0040】
グラフ作成部2は、複数の時系列データにおいて、時間軸方向に沿ってずらしながら、複数の窓を設定する。窓における時間軸に沿った方向の長さがグラフを作成するための単位時間(時間範囲)に相当し、複数の窓の各サイズ(時間軸方向長さ)は同一であることが望ましい。グラフ作成部2は、1つの窓に対して1つのグラフを作成する。
【0041】
グラフは、最適化問題の解として得られる行列で構成され、当該行列の成分が時系列データの要素間の関係性の強さを表す。
【0042】
グラフ作成部2は、窓に含まれる複数の時系列データから最適化問題を解くことで、グラフを構築するための行列を算出する。最適化問題はグラフィカルLassoであってよい。グラフを構成する行列を記号Λで表す。行列Λは以下の式(1)で表される。
【0043】
【数1】
上記式(1)で表わされる行列Λにおいて、λ
ij=0は、データiとデータjとは独立であることを表す。一方、λ
ij=0でないことは、データiとデータjとには相関があることを表す。
【0044】
行列Λは、複数の時系列データについての精度行列についての最適化問題(グラフィカルLasso)を解くことで算出される行列である。精度行列は、グラフを構築するための行列であり、共分散行列の逆行列である。
【0045】
グラフ作成部2は、行列Λに基づきグラフを作成する。グラフ作成部2は、行列Λにおいて要素がλij=0の部分を、グラフにおいて頂点iと頂点jとの間に辺がないように表す。また、行列Λにおいて要素がλij=0でない部分を、グラフにおいて頂点iと頂点jとの間に辺があるように表す。
【0046】
偏相関行列作成部3は、行列Λに対して偏相関を適用することで、偏相関行列Λ′を計算する。偏相関行列Λ′は以下の式(2)で表される。
【0047】
【数2】
偏相関行列Λ′の各要素λ′
ijは、行列Λに基づいて特定される偏相関を表す。偏相関行列Λ′においては、各要素におけるデータiとデータjとの因果関係がある共通の要因の影響が除かれる。
【0048】
偏相関行列作成部3による偏相関行列Λ′の算出は、既知の手法を用いて実現することができ、その説明は省略する。
【0049】
偏相関行列作成部3は、行列Λ毎に偏相関行列Λ′を計算する。偏相関行列作成部3は、計算した偏相関行列Λ′の情報を記憶部10dの所定の記憶領域等に記憶させる。
【0050】
重み付きグラフ作成部4は、偏相関行列作成部3が算出した偏相関行列Λ′に基づいて重み付きグラフを作成する。重み付きグラフ作成部4は、偏相関行列Λ′に基づいて、重み付きグラフを構成するためのデータ(重み付きグラフ構造データ)を生成する。
【0051】
図4は実施形態の一例としての検出装置1における重み付きグラフの例を示す図である。
【0052】
重み付きグラフは、複数の頂点(ノード)と、これらの複数の頂点同士の関係を表す辺(エッジ)とを有する。頂点は、それぞれが一の時系列データに対応する。また、辺は、これらの複数の頂点間(時系列データ間)の関係を頂点同士の接続状態(例えば、頂点同士がつながっているか否か)で表す。また、各辺には、頂点同士の関係性を表す重みが設定されている。
【0053】
重み付きグラフ作成部4は、偏相関行列Λ′における要素λ′ijを、頂点iと頂点jとをつなぐ辺の重みとすることで、重み付きグラフを作成する。
【0054】
重み付きグラフ作成部4は、複数の時系列データについての精度行列についての最適化問題(グラフィカルLasso)を解くことで算出される行列Λに基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成する。
【0055】
重み付きグラフは、グラフ作成部2が作成したグラフにおける関係性が強い辺のみを抽出することで形状が簡略化されたものであり、各辺に関係性を表す重みが設定されたグラフであるといえる。
【0056】
重み付きグラフ作成部4は、作成した重み付きグラフの情報を、記憶部10dの所定の記憶領域等に記憶させる。
【0057】
パーシステンス図作成部5は、重み付きグラフ作成部4が作成した重み付きグラフに対して、パーシステンスホモロジー変換を適用することで、パーシステンス図を作成する。
【0058】
パーシステンス図作成部5は、優レベルフィルトレーションを用いたパーシステントホモロジー変換を応用することで、重み付きグラフにおける頂点間の関係の強さを反映させ、パーシステンス図を生成する。
【0059】
パーシステンス図作成部5が、重み付きグラフ構造データに対するパーシステントホモロジー変換を行なうことで、パーシステンス図が得られる。
【0060】
重み付きグラフにおいては、辺の重みに対する閾値を小さくすることで当該重み付きグラフに反映される辺の数が増加し、閾値を大きくすることで当該重み付きグラフに反映される辺の数が減少する。すなわち、重み付きグラフにおいては、辺の重みに対する閾値を変化させることで、閾値を反映後の重み付きグラフの形状が変化する。
【0061】
パーシステンス図作成部5は、重み付きグラフの辺に対してパーシステントホモロジーを応用し、パーシステンス図を作成する。
【0062】
パーシステンス図作成部5は、重み付きグラフに対するパーシステントホモロジー変換において、重み付きグラフの辺の重みに対する閾値を順次変化させることによる重み付きグラフにおける特定形状の発生時刻と消滅時刻とを前記データ点としてプロットすることでパーシステンス図を作成する。
【0063】
なお、パーシステンス図作成部5によるパーシステンス図の作成は、既知の手法を用いて実現することができ、その説明は省略する。
【0064】
図5は実施形態の一例としての検出装置1におけるパーシステンス図の例を示す図である。
【0065】
パーシステンス図においては、重み付きグラフの辺の重みに対する閾値を順次変化させることによる重み付きグラフにおける特定形状の発生と消滅とがデータ点として表される。
【0066】
上述の如く、パーシステンス図は重み付きグラフに基づいて作成され、この重み付きグラフは、複数の時系列データから特定の時間範囲で切り取った窓毎に作成される。従って、複数の窓に基づいて作成される複数のパーシステンス図は、時間的前後関係を有する。
【0067】
また、パーシステンス図作成部5は、複数の時系列データにおいて設定された複数の窓について、時間経過において古いものから順にパーシステンス図を作成してよい。
【0068】
パーシステンス図においては対角線から遠いデータ点がデータの本質的な特徴と見做され、これらのデータ点の分布の変化を見ることで、システムの状態変化を追跡することができる。
【0069】
パーシステンス図作成部5は、作成したパーシステンス図の情報を、記憶部10dの所定の記憶領域等に記憶させる。
【0070】
異常予兆検出部6は、パーシステンス図作成部5が作成したパーシステンス図に基づき、分析対象における異常の予兆を検出する。
【0071】
異常予兆検出部6は、パーシステンス図において、対角線から所定距離だけ離れた位置に設定された特定領域(所定領域)内に何個のデータ点が存在するかを計数し、その数に基づいて異常の予兆の検出を行なう。例えば、異常予兆検出部6は、パーシステンス図における特定領域内のデータ点の数の変化に基づいて異常の予兆を検出してよい。
【0072】
パーシステンス図における特定領域は、演算を簡易にするために円形状を有してもよい。なお、特定領域の形状は円に限定されるものではなく、適宜変更して実施することができる。例えば、特定領域は、矩形等の円以外の形状を有してもよく、また、対角線と所定距離を隔てた位置において対角線と並行に配置された帯状の形状を有してもよい。
【0073】
異常予兆検出部6は、時間的前後関係を有する複数のパーシステンス図における、特定領域内のデータ点の数の変化に基づいて異常の予兆を検出してよい。
【0074】
例えば、異常予兆検出部6は、時系列において連続する(時間的に前後する)2つのパーシステンス図において、後のパーシステンス図での特定領域内のデータ点の数が、先のパーシステンス図での特定領域内のデータ点の数に比べて第一の閾値以上減少した場合に、異常の予兆を検出してよい。
【0075】
ここで第一の閾値は、先のパーシステンス図での特定領域内のデータ点の数に対する所定の割合(所定パーセント値)であってよい。例えば、異常予兆検出部6は、後のパーシステンス図での特定領域内のデータ点の数が、先のパーシステンス図での特定領域内のデータ点の数に対して30%以上減少した場合に、異常の予兆であると検出してよい。また、第一の閾値は、予め規定された固定値であってもよく、適宜変更して実施することができる。
【0076】
また、異常予兆検出部6は、時系列において連続する(時間的に前後する)2つのパーシステンス図において、後のパーシステンス図での特定領域内のデータ点の数が、先のパーシステンス図での特定領域内のデータ点の数に比べて第二の閾値以上減少した場合に、異常を検出してよい。第二の閾値は第一の閾値よりも高い値である。
【0077】
さらに、異常予兆検出部6は、パーシステンス図における特定領域内のデータ点の数を第三の閾値と比較することで異常の予兆を検出してよく、パーシステンス図における特定領域内のデータ点の数が第三の閾値以上の場合に異常を検出してよい。
【0078】
図6は実施形態の一例としての検出装置1の異常予兆検出部6による処理を説明するための図である。
【0079】
この
図6において、符号A,B,C,Dは、それぞれパーシステンス図を示しており、符号Aは正常状態を、符号Dは異常状態を示す。また、符号B,Cは異常予兆状態を示す。
【0080】
図6に例示するこれらの各パーシステンス図において、黒丸は重み付きグラフにおける特定形状の発生と消滅とを表すデータ点である。また、これらの各パーシステンス図においては特定領域が円形の例を示す。
【0081】
符号Aで示す正常状態においては、3つのデータ点の全てが特定領域内にある。一方、符号Dで示す異常状態においては、3つのデータ点の全てが所定領域外にある。
【0082】
符号Bで示す異常予兆状態においては、3つデータ点のうち1つのデータ点が特定領域外となっており、符号Cで示す異常予兆状態においては、3つデータ点のうち2つのデータ点が特定領域外となっている。
【0083】
ここで、例えば、符号Bで示すパーシステンス図の元となった窓が、符号Aで示すパーシステンス図の元となった窓に時間軸上において後続する場合、すなわち、符号Aで示すパーシステンス図の後に、符号Bで示すパーシステンス図が作成されたものとする。
【0084】
このような場合には、符号Aのパーシステンス図に示すように3つのデータ点が特定領域内にあった状態から、符号Bのパーシステンス図に示すように1つのデータ点が特定領域外となり、特定領域内のデータ点の数が約33%減少したことになる。
【0085】
異常予兆検出部6は、後のパーシステンス図(
図6の符号B参照)での特定領域内のデータ点の数(2個)が、先のパーシステンス図(
図6の符号A参照)での特定領域内のデータ点の数(3個)に対して第一の閾値(例えば、30%)以上減少したと判断し、異常の予兆を検出する。
【0086】
また、例えば、符号Cで示すパーシステンス図の元となった窓が、符号Aで示すパーシステンス図の元となった窓に時間軸上において後続する場合、すなわち、符号Aで示すパーシステンス図の後に、符号Cで示すパーシステンス図が作成されたものとする。
【0087】
このような場合には、符号Aのパーシステンス図に示すように3つのデータ点が特定領域内にあった状態から、符号Cのパーシステンス図に示すように2つのデータ点が特定領域外となり、特定領域内のデータ点の数が約66%減少したことになる。
【0088】
異常予兆検出部6は、後のパーシステンス図(
図6の符号C参照)での特定領域内のデータ点の数(1個)が、先のパーシステンス図(
図6の符号A参照)での特定領域内のデータ点の数(3個)に対して第一の閾値(例えば、30%)以上減少したと判断し、異常の予兆を検出する。
【0089】
また、時系列において連続する2つのパーシステンス図において、特定領域内のデータ点の数の変化は、異常の度合い(程度)を表すといえる。
【0090】
例えば、時系列において連続する2つのパーシステンス図において、先のパーシステンス図の特定領域内のデータ点の数に対して、後のパーシステンス図の特定領域内のデータ点の減少数が少ない場合(例えば、所定の閾値未満の場合)は、異常の度合いが低いことを表す。これに対して、先のパーシステンス図の特定領域内のデータ点の数に対して、後のパーシステンス図の特定領域内のデータ点の減少数が多い場合は(例えば、所定の閾値以上の場合)、異常の度合いが高いことを表す。
【0091】
異常予兆検出部6は、複数のパーシステンス図における特定領域のデータ点の分布に基づいて、異常の度合い(程度)を判定するのである。
【0092】
また、異常予兆検出部6は、異常の予兆を検出した場合に、異常の予兆を検出した旨をユーザ等に対して通知する出力を行なう。
【0093】
異常予兆検出部6は、例えば、モニタ等の出力装置に対して、異常の予兆を検出した旨のメッセージを表示させてもよい。また、異常の予兆を検出した旨の通知手法は、これに限定されるものではなく、適宜変更して実施することができる。
【0094】
また、
図6において、例えば、符号Dで示すパーシステンス図の元となった窓が、符号Aで示すパーシステンス図の元となった窓に時間軸上において後続する場合、すなわち、符号Aで示すパーシステンス図の後に、符号Dで示すパーシステンス図が作成されたものとする。
【0095】
このような場合には、符号Aのパーシステンス図に示すように3つのデータ点が特定領域内にあった状態から、符号Dのパーシステンス図に示すように3つ全てのデータ点が特定領域外となり、特定領域内のデータ点の数が100%減少したことになる。
【0096】
異常予兆検出部6は、後のパーシステンス図(
図6の符号D参照)での特定領域内のデータ点の数(0個)が、先のパーシステンス図(
図6の符号A参照)での特定領域内のデータ点の数(3個)に対して第二の閾値(例えば、80%)以上減少したと判断し、異常を検出する。
【0097】
異常予兆検出部6は、異常を検出した場合に、異常を検出した旨をユーザ等に対して通知する出力を行なう。
【0098】
異常予兆検出部6は、例えば、モニタ等の出力装置に対して、異常を検出した旨のメッセージを表示させてもよい。また、異常を検出した旨の通知手法は、これに限定されるものではなく、適宜変更して実施することができる。
【0099】
(B)動作
上述の如く構成された実施形態の一例としての検出装置1における処理を、
図7に示すフローチャート(ステップS1~S7)に従って説明する。
【0100】
ステップS1において、グラフ作成部2が、記憶装置7に記憶された複数の時系列データを読み出す。
【0101】
ステップS2において、グラフ作成部2が、複数の時系列データにおいて、時間軸方向に沿ってずらしながら複数の窓を設定する。
【0102】
ステップS3において、グラフ作成部2が、各窓に含まれる複数の時系列データから最適化問題(グラフィカルLasso)を解くことで、窓毎に行列Λを算出する。
【0103】
ステップS4において、偏相関行列作成部3が、行列Λに対して偏相関を適用することで、偏相関行列Λ′を計算する。
【0104】
ステップS5において、重み付きグラフ作成部4が、偏相関行列作成部3が算出した偏相関行列Λ′に基づいて重み付きグラフを作成する。
【0105】
ステップS6において、パーシステンス図作成部5が、重み付きグラフ作成部4が作成した重み付きグラフに対して、パーシステンスホモロジーを適用することで、パーシステンス図を作成する。
【0106】
ステップS7において、異常予兆検出部6は、パーシステンス図作成部5が作成したパーシステンス図に基づき、分析対象に異常の予兆があるかを判断する。例えば、異常予兆検出部6は、時間的前後関係を有する複数のパーシステンス図における、特定領域内のデータ点の数の変化に基づいて異常の予兆を検出する。その後、処理を終了する。
【0107】
(C)効果
このように、実施形態の一例としての検出装置1によれば、グラフ作成部2が複数の時系列データから作成した複数のグラフに基づいて、重み付きグラフ作成部4が複数の重み付きグラフを生成する。そして、パーシステンス図作成部5が、これらの重み付きグラフをパーシステントホモロジーを用いて解析することで、重み付きグラフの構造の変化を追跡して分析することができる。
【0108】
これにより、分析対象(システム)の状態や状態の変化を詳細に表すことができ、正常と異常のどちらの状態に変化しているのかも表すことができる。特に、異常予兆検出部6が、正常から異常への状態変化を捉えることで、異常の予兆を検出することが可能となり、異常を早期に検出することができる、また、分析対象のシステムの故障を事前に防ぐことができる。また、分析対象のシステムの故障に伴う資源的、金銭的な損害を軽減させることができる。
【0109】
正常か異常のどちらか一方の二値による判定しか行なわれていない従来手法と比べて、異常の予兆を捉えることができ、異常発生を未然に防ぐことができる他、異常の早期発見と実際に異常が起こった際の損害を少なくすることが可能となる。
【0110】
また、パーシステンス図作成部5が、重み付きグラフ作成部4が作成した重み付きグラフに対して、パーシステンスホモロジーを適用することで、パーシステンス図を作成する。これにより、パーシステンス図のノイズ耐性により、時系列データにノイズが加わってしまった場合の異常においても誤検出を抑止することができる。
【0111】
(D)その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
【0112】
また、上述した開示により本実施形態を当業者によって実施・製造することが可能である。
【0113】
(E)付記
以上の実施形態に関し、さらに以下の付記を開示する。
【0114】
(付記1)
複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、
前記重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する
処理をコンピュータに実行させることを特徴とする検出プログラム。
【0115】
(付記2)
前記パーシステントホモロジー変換において、重み付きグラフの辺の重みに対する閾値を順次変化させることによる重み付きグラフにおける特定形状の発生時刻と消滅時刻とを前記データ点としてプロットすることで前記パーシステンス図を作成する
処理を前記コンピュータに実行させることを特徴とする、付記1に記載の検出プログラム。
【0116】
(付記3)
複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、
前記重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する
処理をコンピュータが実行することを特徴とする検出方法。
【0117】
(付記4)
前記パーシステントホモロジー変換において、重み付きグラフの辺の重みに対する閾値を順次変化させることによる重み付きグラフにおける特定形状の発生時刻と消滅時刻とを前記データ点としてプロットすることで前記パーシステンス図を作成する
処理を前記コンピュータが実行することを特徴とする、付記3に記載の検出方法。
【0118】
(付記5)
複数の時系列データについての精度行列についての最適化問題を解くことで算出される行列に基づいて特定される偏相関をグラフの辺の重みとして、複数の時系列データについての重み付きグラフ構造データを生成し、
前記重み付きグラフ構造データに対するパーシステントホモロジー変換により得られるパーシステンス図における所定領域のデータ点の分布に基づいて、異常の予兆を検出する
処理を実行する制御部を有することを特徴とする検出装置。
【0119】
(付記6)
前記制御部が、
前記パーシステントホモロジー変換において、重み付きグラフの辺の重みに対する閾値を順次変化させることによる重み付きグラフにおける特定形状の発生時刻と消滅時刻とを前記データ点としてプロットすることで前記パーシステンス図を作成する
ことを特徴とする、付記5に記載の検出装置。
【符号の説明】
【0120】
1 検出装置
2 グラフ作成部
3 偏相関行列作成部
4 重み付きグラフ作成部
5 パーシステンス図作成部
6 異常予兆検出部
7 記憶装置
10 コンピュータ
10a プロセッサ
10b グラフィック処理装置
10c メモリ
10d 記憶部
10e IF部
10f IO部
10g 読取部
10h プログラム
10i 記録媒体
10j バス