JP2023168693A - 誤検知判別装置、誤検知判別方法及びプログラム - Google Patents

誤検知判別装置、誤検知判別方法及びプログラム Download PDF

Info

Publication number
JP2023168693A
JP2023168693A JP2022079948A JP2022079948A JP2023168693A JP 2023168693 A JP2023168693 A JP 2023168693A JP 2022079948 A JP2022079948 A JP 2022079948A JP 2022079948 A JP2022079948 A JP 2022079948A JP 2023168693 A JP2023168693 A JP 2023168693A
Authority
JP
Japan
Prior art keywords
abnormality
detection
false
unit
anomaly
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022079948A
Other languages
English (en)
Inventor
恒野 谷本
Koya Tanimoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2022079948A priority Critical patent/JP2023168693A/ja
Publication of JP2023168693A publication Critical patent/JP2023168693A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Testing And Monitoring For Control Systems (AREA)

Abstract

【課題】誤検知の発生に伴う対象の運用負荷の増加を抑制できる技術を提供すること。【解決手段】本開示の一態様による誤検知判別装置は、対象から収集されたデータを用いて、前記対象に異常が発生したか否かを検知するように構成されている異常検知部と、前記異常検知部によって検知された異常が誤検知である否かを判別するための所定の特徴量を計算するように構成されている特徴量計算部と、前記特徴量を用いて、予め学習された判別モデルにより、前記異常検知部によって検知された異常が誤検知であるか否かを判別するように構成されている判別部と、を有する。【選択図】図1

Description

本開示は、誤検知判別装置、誤検知判別方法及びプログラムに関する。
何等かの設備や機器、プラント等を対象として、その異常を検知する技術が従来から知られている(例えば、特許文献1~5等)。異常検知技術では、一般に、対象から収集されたデータの異常度合いを表すスコア(以下、異常スコアと呼ぶ。)を算出した上で、この異常スコアが所定の閾値を超えている場合に異常を検知する。また、異常が検知された場合には、専門家等が対象を調査し、異常原因の特定等が行われることが一般的である。
特開2018-160076号公報 特開2014-59910号公報 特開2011-70635号公報 特開2009-20717号公報 特許第6569927号公報
しかしながら、異常検知技術では、誤検知(対象が正常であるにも関わらず、異常が検知されてしまうこと)がしばしば発生する。誤検知が発生した場合でも、専門家等は対象を調査し、検知内容の正誤を確認する必要がある。このため、誤検知が頻発すると専門家の稼働が増加し、対象の運用負荷が高くなってしまう。
本開示は、上記の点に鑑みてなされたもので、誤検知の発生に伴う対象の運用負荷の増加を抑制できる技術を提供することを目的とする。
本開示の一態様による誤検知判別装置は、対象から収集されたデータを用いて、前記対象に異常が発生したか否かを検知するように構成されている異常検知部と、前記異常検知部によって検知された異常が誤検知である否かを判別するための所定の特徴量を計算するように構成されている特徴量計算部と、前記特徴量を用いて、予め学習された判別モデルにより、前記異常検知部によって検知された異常が誤検知であるか否かを判別するように構成されている判別部と、を有する。
誤検知の発生に伴う対象の運用負荷の増加を抑制できる技術が提供される。
異常スコア及び閾値と異常検知との関係の一例を示す図(その1)である。 第一の実施形態に係る誤検知判別装置のハードウェア構成の一例を示す図である。 第一の実施形態に係る誤検知判別装置の機能構成の一例を示す図である。 第一の実施形態に係る学習用データの一例を示す図である。 第一の実施形態に係る学習用データ作成処理の流れの一例を示すフローチャートである。 第一の実施形態に係る学習処理の流れの一例を示すフローチャートである。 第一の実施形態に係る誤検知判別付き異常検知処理の流れの一例を示すフローチャートである。 判別モデルの判別境界と特徴量との関係の一例を示す図である。 異常スコア及び閾値と異常検知との関係の一例を示す図(その2)である。 第二の実施形態に係る誤検知判別装置の機能構成の一例を示す図である。 第二の実施形態に係る学習用データの一例を示す図である。 第二の実施形態に係る学習用データ作成処理の流れの一例を示すフローチャートである。 第二の実施形態に係る学習処理の流れの一例を示すフローチャートである。 第二の実施形態に係る誤検知判別付き異常検知処理の流れの一例を示すフローチャートである。
以下、本発明の第一の実施形態及び第二の実施形態について説明する。
[第一の実施形態]
まず、第一の実施形態について説明する。
<異常スコア及び閾値と異常検知との関係>
一般に、異常検知技術では、機械学習技術や統計的手法等により、対象から収集されるデータを入力として異常スコアを出力するモデル(以下、異常検知モデルと呼ぶ。)を構築した上で、対象の運用時に異常スコアが所定の閾値を超えている場合に異常を検知する。なお、対象とは、異常検知の対象のことであり、例えば、何等かの設備や機器、プラント、ロボット、システム等といったものが挙げられる。また、対象から収集されるデータとは、例えば、対象の状態量等を計測するセンサから収集される計測値等のことであり、具体例としては、温度、圧力、流量、ガス濃度等といったものが挙げられる。以下、対象から収集されるデータを「入力データ」とも呼ぶことにする。
異常スコアをS、閾値をθとする。異常スコアSが閾値θを超えている場合に異常が検知されるが、一般に、誤検知よりも検知漏れの方が運用上のリスクが高いため、閾値θは厳しめに設定(つまり、閾値θが低めに設定)されることが多い。このため、異常が検知された場合であっても、それが誤検知であることがしばしば発生し得る。そこで、異常が検知された場合、専門家は、以下の(1)や(2)のような経験則によりその異常が誤検知であるか否かを判断している。
(1)異常スコアSが閾値θを超えている場合であっても、異常スコアSが閾値θを超えている期間(以下、texとする。)が瞬間であれば、異常の可能性は低く、誤検知である可能性が高い。ただし、期間texにおける異常スコアSの極大値(以下、Smaxとする。)が高い場合は、異常の可能性が高く、誤検知の可能性は低い。
例えば、図1の符号503で示される部分は、異常スコアSが閾値θを超えている期間texが瞬間であるため、異常の可能性は低く、誤検知である可能性が高いと判断される。一方で、例えば、図1の符号501で示される部分は、異常スコアSが閾値θを超えている期間texが瞬間であるが、異常スコアSの極大値Smaxが高いため、異常の可能性が高く、誤検知の可能性は低いと判断される。
(2)異常スコアSが閾値θを超えている場合であっても、異常スコアSが閾値θを超えている程度が小さく(つまり、Smaxが小さく)、また、texも短ければ、異常の可能性は低く、誤検知である可能性が高い。ただし、texが長期間であれば、異常の可能性が高く、誤検知である可能性は低い。
例えば、図1の符号502で示される部分は、異常スコアSが閾値θを超えている程度が小さく、またその超えている期間texも短いため、異常の可能性は低く、誤検知である可能性が高いと判断される。一方で、例えば、図1の符号504で示される部分は、異常スコアSが閾値θを超えている程度が小さいものの、その超えている期間texが現在まで続いており、また長いため、異常の可能性が高く、誤検知の可能性は低いと判断される。
そこで、第一の実施形態では、上記の(1)及び(2)の経験則を表現する特徴量として、異常スコアSが閾値θを超えている期間texと、その期間texの間における異常スコアSの和(積算値)Aexと用いる。以下、これらの特徴量から二値分類モデル(以下、判別モデルと呼ぶ。)を構築した上で、この判別モデルにより異常検知結果が誤検知であるか否かを判別する誤検知判別装置10について説明する。また、以下では、texを「超過時間」、Aexを「超過面積」と呼ぶことにする。異常スコアSが閾値θを超え始めた時刻をt、異常スコアSが閾値θを下回り始めた時刻(又は符号504で示される部分等を考える場合には最新の時刻)をtとすれば、図1に示されるように、超過時間texはtex=t-tで表される。また、図1に示されるように、超過面積Aexは、(S-θ)をtからtまで積分した値で表される。
ここで、第一の実施形態に係る誤検知判別装置10には、判別モデル構築フェーズと運用フェーズとが存在する。判別モデル構築フェーズでは、判別モデルを構築(学習)するための学習用データの作成と判別モデルの学習とが行われる。一方で、運用フェーズでは、判別モデル構築フェーズで学習された判別モデルにより異常検知結果が誤検知であるか否かの判別が行われる。いずれのフェーズでも異常検知モデルは構築済み(学習済み)であるものとする。
なお、超過時間tex及び超過面積Aexを特徴量とすることは一例であって、これ以外にも、上記の(1)及び(2)の経験則を表現する特徴量であれば他の特徴量が用いられてもよい。
<誤検知判別装置10のハードウェア構成>
第一の実施形態に係る誤検知判別装置10のハードウェア構成例を図2に示す。図2に示すように、第一の実施形態に係る誤検知判別装置10は、入力装置101と、表示装置102と、外部I/F103と、通信I/F104と、RAM(Random Access Memory)105と、ROM(Read Only Memory)106と、補助記憶装置107と、プロセッサ108とを有する。これらの各ハードウェアは、それぞれがバス109を介して通信可能に接続されている。
入力装置101は、例えば、キーボード、マウス、タッチパネル、物理ボタン等である。表示装置102は、例えば、ディスプレイ、表示パネル等である。なお、誤検知判別装置10は、例えば、入力装置101及び表示装置102の少なくとも一方を有していなくてもよい。
外部I/F103は、記録媒体103a等の外部装置とのインタフェースである。誤検知判別装置10は、外部I/F103を介して、記録媒体103aの読み取りや書き込み等を行うことができる。記録媒体103aとしては、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
通信I/F104は、誤検知判別装置10を通信ネットワークに接続するためのインタフェースである。RAM105は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。ROM106は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。補助記憶装置107は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等のストレージ装置(記憶装置)である。プロセッサ108は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等の演算装置である。
第一の実施形態に係る誤検知判別装置10は、図2に示すハードウェア構成を有することにより、後述する各種処理を実現することができる。なお、図2に示す誤検知判別装置10のハードウェア構成は一例であって、誤検知判別装置10のハードウェア構成はこれに限られるものではない。例えば、誤検知判別装置10は、複数の補助記憶装置107や複数のプロセッサ108を有していてもよいし、図示したハードウェアの一部を有していなくてもよいし、図示したハードウェア以外の様々なハードウェアを有していてもよい。
<誤検知判別装置10の機能構成>
第一の実施形態に係る誤検知判別装置10の機能構成例を図3に示す。図3に示すように、第一の実施形態に係る誤検知判別装置10は、異常検知部201と、特徴量計算部202と、アノテーション部203と、学習部204と、判別部205と、通知部206とを有する。これら各部は、例えば、誤検知判別装置10にインストールされた1以上のプログラムが、プロセッサ108に実行させる処理により実現される。また、第一の実施形態に係る誤検知判別装置10は、異常検知モデル記憶部207と、異常検知結果記憶部208と、特徴量記憶部209と、学習用データ記憶部210と、判別モデル記憶部211とを有する。これら各部は、例えば、補助記憶装置107により実現可能である。なお、これら各部のうちの少なくとも1つの記憶部が、誤検知判別装置10と通信ネットワークを介して接続される記憶装置(例えば、データベースサーバ)等により実現されていてもよい。
異常検知部201は、判別モデル構築フェーズ及び運用フェーズにおいて、異常検知モデル記憶部207に記憶されている異常検知モデルと所定の閾値θとを用いて、対象から収集された入力データを入力として、異常検知を行う。すなわち、異常検知部201は、入力データを異常検知モデルに入力し、その出力として得られた異常スコアSと閾値θとを比較し、異常スコアSが閾値θを超えている場合は異常が発生したと判定し、そうでない場合は異常の発生はないと判定する。また、異常検知部201は、異常検知結果(例えば、異常検知を行った時刻とそのときの異常スコアS及び異常の発生有無等)を異常検知結果記憶部208に記憶させる。
特徴量計算部202は、判別モデル構築フェーズ及び運用フェーズにおいて、異常検知部201による異常検知結果を用いて、特徴量(超過時間tex及び超過面積Aex)を計算する。また、特徴量計算部202は、判別モデル構築フェーズにおいて、特徴量(超過時間tex及び超過面積Aex)を特徴量記憶部209に記憶させる。なお、このとき、特徴量計算部202は、特徴量に関連する情報(例えば、t、t、Smax等)を特徴量記憶部209に記憶させてもよい。以下では、これらの情報(t、t、Smax)も特徴量記憶部209に記憶されるものとする。
アノテーション部203は、判別モデル構築フェーズにおいて、専門家等からのアノテーション指示に応じて、特徴量記憶部209に記憶されている特徴量に対して異常有無を表すラベル(言い換えれば、誤検知である否かを表すラベル)を付与する。そして、アノテーション部203は、当該ラベルが付与された特徴量を学習用データとして学習用データ記憶部210に記憶させる。なお、学習用データには、特徴量及びラベルと共に、特徴量に関連する情報(例えば、t、t、Smax等)が含まれていてもよい。以下では、学習用データには、特徴量及びラベルと共に、特徴量に関連する情報(t、t、Smax)が含まれているものとする。
なお、アノテーション指示とは、どの特徴量に対してどのラベル(異常又は異常でないのいずれかを表すラベル)を付与するかを表す指示のことである。専門家等は、誤検知判別装置10を直接操作してアノテーション指示を行ってもよいし、誤検知判別装置10と通信ネットワークを介して接続される端末(PCやスマートフォン、タブレット端末等)を操作してアノテーション指示を行ってもよい。
学習部204は、判別モデル構築フェーズにおいて、学習用データ記憶部210に記憶されている学習用データを用いて、判別モデル記憶部211に記憶されている判別モデルを学習(すなわち、当該判別モデルのパラメータを学習)する。
判別部205は、運用フェーズにおいて、特徴量計算部202によって計算された特徴量と、判別モデル記憶部211に記憶されている判別モデルとを用いて、異常検知部201によって検知された異常が誤検知であるか否かを判別する。すなわち、判別部205は、特徴量を判別モデルに入力し、その出力として当該異常が誤検知であるか否かの判別結果を得る。
通知部206は、運用フェーズにおいて、判別部205による判別結果に応じて、異常検知部201によって検知された異常の発生を表すアラートを所定の通知先(例えば、対象の運用を監視する監視者の端末等)に通知する。例えば、通知部206は、判別部205によって異常が誤検知でないと判別された場合は通常のアラートを通知し、異常が誤検知であると判別された場合は誤検知の可能性がある旨と共にアラートを通知する。ただし、これは一例であって、例えば、通知部206は、異常が誤検知であると判別された場合はアラートの重要度レベル等を下げた上で当該アラートを通知してもよい。
異常検知モデル記憶部207は、予め学習済みの異常検知モデルを記憶する。なお、異常検知モデルは、入力データを入力として異常スコアを出力するモデルであれば既知の任意のモデルでよく、特定のモデルに限定されない。
異常検知結果記憶部208は、異常検知部201による異常検知結果を記憶する。なお、異常検知結果には、例えば、異常検知を行った時刻とそのときの異常スコアS及び異常の発生有無等が含まれる。
特徴量記憶部209は、特徴量やそれに関連する情報(例えば、t、t、Smax等)を記憶する。
学習用データ記憶部210は、学習用データを記憶する。ここで、第一の実施形態に係る学習用データの一例を図4に示す。図4に示すように、第一の実施形態に係る学習用データには、当該学習用データを識別する番号であるNo.と、特徴量(tex及びAex)と、特徴量に関連する情報(t、t及びSmax)と、特徴量に付与されたラベル(label)とが含まれている。ラベル(label)は異常又は異常でないのいずれかを表しており、例えば、「0」は異常でない、「1」は異常をそれぞれ表している。すなわち、ラベル「0」が付与された学習用データに含まれる特徴量は、誤検知が発生したときの特徴量を表している。同様に、ラベル「1」が付与された学習用データに含まれる特徴量は、異常の発生が正しく検知されたときの特徴量を表している。
なお、図4に示す学習用データは一例であって、これに限られるものではない。学習用データには少なくとも特徴量とラベルが含まれていればよい。
判別モデル記憶部211は、判別モデルを記憶する。判別モデルのパラメータが判別モデル構築フェーズで学習対象となるパラメータである。なお、判別モデルは、特徴量を入力として異常が誤検知であるか否かの判別結果を出力する二値分類モデルであれば既知の任意の二値分類モデルであればよく、特定のモデルに限定されない。また、判別モデルへの入力は特徴量だけに限定されるものではなく、特徴量に加えて何等かの補助的な情報(例えば、特徴量に関連する情報の全部又は一部等)が入力されてもよい。
図3では、判別モデル構築フェーズと運用フェーズとを同一の誤検知判別装置10が実行する場合の機能構成例を示したが、判別モデル構築フェーズと運用フェーズとが異なる誤検知判別装置10により実行されてもよい。この場合、判別モデル構築フェーズを実行する誤検知判別装置10は、判別部205及び通知部206を有していなくてもよい。同様に、運用フェーズを実行する誤検知判別装置10は、アノテーション部203、学習部204、特徴量記憶部209及び学習用データ記憶部210を有していなくてもよい。
<判別モデル構築フェーズ>
以下、判別モデル構築フェーズについて説明する。判別モデル構築フェーズでは、学習用データ作成処理と学習処理とが実行される。学習用データ作成処理では、対象の運用中に異常検知モデルにより異常検知を行って、その異常検知結果から学習用データを作成する。そして、学習処理では、学習用データ作成処理で作成された学習用データにより判別モデルを構築(学習)する。
≪学習用データ作成処理≫
第一の実施形態に係る学習用データ作成処理について、図5を参照しながら説明する。
異常検知部201は、対象から収集された入力データを入力として、異常検知を行う(ステップS101)。なお、異常検知部201は、対象から収集された入力データが入力される毎に、その入力データを用いて異常検知を行う。以下、時刻t=1からt=Tまで異常検知が行われ、異常検知結果記憶部208には、{(t,S(t),y(t))|t=1,・・・,T}が記憶されたものとする。ここで、y(t)は時刻tにおける異常発生有無を表し、例えば、異常の発生が検知されなかったときは0、異常の発生が検知されたときは1を取る。なお、tは時刻を表すインデックス(時刻インデックス)である。
特徴量計算部202は、異常検知結果記憶部208に記憶されている異常検知結果を用いて、特徴量(超過時間tex及び超過面積Aex)を計算する(ステップS102)。すなわち、特徴量計算部202は、{(t,S(t),y(t))|t=1,・・・,T}から超過時間tex及び超過面積Aexを計算する。
ここで、超過時間texは、tex=t-tにより計算できる。tは、S(t)≧θかつS(t-1)<θを満たす時刻tである。tは、t以降の時刻tであって、最初にS(t-1)>θかつS(t)≦θを満たす時刻tである。ただし、図1の符号504で示される部分を考慮するため、t以降の時刻tであって、S(t-1)>θかつS(t)≦θを満たす時刻tが存在しない場合、t=Tとする。
また、超過面積Aexは、(S(t)-θ)をtからtまで積分した値として計算できる。
なお、Tが十分に大きければ、一般に、{(t,S(t),y(t))|t=1,・・・,T}から超過時間tex及び超過面積Aexのペア(tex,Aex)が複数得られることに留意されたい。以下、各ペア(tex,Aex)を区別するため、K個のペアが得られたものとして、{(tex (k),Aex (k))|k=1,・・・,K}と表すことにする。したがって、特徴量記憶部209には、{(t (k),t (k),tex (k),Aex (k),Smax (k))|k=1,・・・,K}が記憶される。t (k)、t (k)及びSmax (k)は、それぞれ(tex (k),Aex (k))が得られたときのt、t及びSmaxである。
アノテーション部203は、専門家等からのアノテーション指示に応じて、特徴量記憶部209に記憶されている特徴量に対して異常有無を表すラベルを付与する(ステップS103)。すなわち、アノテーション部203は、各(t (k),t (k),tex (k),Aex (k),Smax (k))に対するアノテーション指示に応じて、当該(t (k),t (k),tex (k),Aex (k),Smax (k))に対してラベルを付与する。これにより、学習用データとして(t (k),t (k),tex (k),Aex (k),Smax (k),label(k))が得られ、学習用データ記憶部210に記憶される。label(k)は、(t (k),t (k),tex (k),Aex (k),Smax (k))に対するアノテーション指示に含まれるラベルである。
≪学習処理≫
第一の実施形態に係る学習処理について、図6を参照しながら説明する。
学習部204は、学習用データ記憶部210から学習用データを取得する(ステップS201)。以下では、{(t (k),t (k),tex (k),Aex (k),Smax (k))|k=1,・・・,K}が取得されたものとする。
学習部204は、上記のステップS201で取得した学習用データに含まれる特徴量(超過時間tex及び超過面積Aex)とラベルlabelを用いて、判別モデル記憶部211に記憶されている判別モデルを学習する(ステップS202)。すなわち、学習部204は、各超過時間tex (k)及び超過面積Aex (k)とlabel(k)(k=1,・・・,K)を用いて、label(k)を教師データとする既知の教師あり学習により当該判別モデルのパラメータを学習する。なお、教師あり学習では、tex (k)及びAex (k)を判別モデルに入力したときの出力とlabel(k)との誤差を最小化するように、当該判別モデルのパラメータが学習される。
そして、学習部204は、上記のステップS202で学習された判別モデルにより、判別モデル記憶部211に記憶されている判別モデルを更新する(ステップS203)。これにより、判別モデル記憶部211には学習済みの判別モデルが記憶されていることになる。
<運用フェーズ>
以下、運用フェーズについて説明する。運用フェーズでは、誤検知判別付き異常検知処理が実行される。誤検知判別付き異常検知処理では、異常検知モデルにより異常検知を行うと共に、判別モデルによりその異常検知が誤検知である否かが判別される。
≪誤検知判別付き異常検知処理≫
第一の実施形態に係る誤検知判別付き異常検知処理について、図7を参照しながら説明する。なお、誤検知判別付き異常検知処理は、例えば、入力データが得られる毎に繰り返し実行される。
異常検知部201は、対象から収集された入力データを入力として、異常検知を行う(ステップS301)。以下、現在の時刻(より正確には時刻インデックス)をtとして、異常検知結果(t,S(t),y(t))が得られたものとする。
次に、異常検知部201は、上記のステップS301で異常の発生が検知されたか否かを判定する(ステップS302)。すなわち、異常検知部201は、y(t)=0又は1のいずれであるかを判定する。y(t)=0の場合は異常の発生が検知されず、y(t)=1の場合は異常の発生が検知される。
上記のステップS302で異常の発生が検知された場合、特徴量計算部202は、単位時間あたりの特徴量(つまり、単位時間あたりの超過時間tex及び超過面積Aex)を計算する(ステップS303)。ここで、単位時間とは、現在の時刻tと1つ前の時刻t-1との差Δtである。このとき、単位時間あたりの超過時間texをΔtexと表せば、Δtex=Δtとなる。また、単位時間あたりの超過面積AexをΔAexと表せば、ΔAexは、(S(t)-θ)をt-1からtまで積分した値として計算できる(又は、簡易的には(ΔAex=S(t)-θ)×Δtでもよい。)。
次に、特徴量計算部202は、上記のステップS303で計算された単位時間あたりの特徴量の積算値を計算する(ステップS304)。例えば、単位時間あたりの超過時間Δtexの積算値をΣ、単位時間あたりの超過面積ΔAexの積算値をΣとすれば、特徴量計算部202は、Σ←Σ+Δtex及びΣ←Σ+ΔAexとする。
一方で、上記のステップS302で異常の発生が検知されなかった場合、特徴量計算部202は、積算値Σ及びΣを0にリセットする(ステップS305)。すなわち、特徴量計算部202は、Σ←0及びΣ←0とする。
このように、異常スコアSが閾値θを超えている間は単位時間毎に特徴量(超過時間tex及び超過面積Aex)を積算する。一方で、異常スコアSが閾値θ以下となった場合にその積算値を0にリセットする。
上記のステップS304に続いて、判別部205は、特徴量の積算値(超過時間texに関する積算値Σと超過面積Aexに関する積算値Σ)と、判別モデル記憶部211に記憶されている判別モデルとを用いて、上記のステップS301で検知された異常が誤検知であるか否かを判別する(ステップS306)。すなわち、判別部205は、Σ及びΣを当該判別モデルに入力し、その出力として当該異常が誤検知である否かの判別結果(例えば、誤検知であれば0、誤検知でなければ1の二値を取る判別結果)を得る。ただし、判別結果が二値を取ることは一例であって、例えば、判別モデルは誤検知でないことを表す確率を判別結果として出力するものであってもよい。
判別部205は、上記のステップS306で誤検知を表す判別結果が得られたか否かを判定する(ステップS307)。
上記のステップS307で誤検知を表す判別結果が得られなかったと判定された場合、通知部206は、上記のステップS301で検知された異常が発生したことを表す通常のアラートを所定の通知先に通知する(ステップS308)。これにより、例えば、対象の運用を監視する監視者は、対象に異常が発生したことを知ることができる。
一方で、上記のステップS307で誤検知を表す判別結果が得られたと判定された場合、通知部206は、上記のステップS301で検知された異常に関して誤検知の可能性がある旨と共に当該異常が発生したことを表すアラートを所定の通知先に通知する(ステップS309)。これにより、例えば、対象の運用を監視する監視者は、対象に関して異常の発生が検知されたものの、それが誤検知である可能性が高いことを知ることができる。このため、例えば、専門家等の調査を省略したり、簡易な調査に変更したりすることで、運用負荷を低減させることができる。
なお、例えば、異常の種類等に応じてアラートに対して重要度レベル等が設定されている場合には、上記のステップS309では、重要度レベルを下げた上でアラートを通知してもよい。
また、通知部206は、アラートだけでなく、例えば、判別モデルによる判別結果から得られる情報をアラートと共に通知してもよい。例えば、図8に示すように、超過時間tex及び超過面積Aexを軸とする2次元平面上に判別モデルの判別境界600を描画すると共に、(Σ,Σ)をプロットした画面を所定の通知先に表示させてもよい。図8に示す例では、符号601~604はそれぞれ(Σ,Σ)をプロットした点であり、符号601及び604で示される点はそれぞれ異常(誤検知でない)、符号602及び603で示される点はそれぞれ正常(誤検知)であることを表している。これにより、例えば、対象の運用を監視する監視者は、判別モデルの決定境界と各点との関係(決定境界からの距離等)も知ることができるようになる。
更に、上記以外にも、通知部206は、例えば、(Σ,Σ)を計算する際に得られる情報(例えば、Σ及びΣに対応するt、t及びSmax等)を所定の通知先に通知してもよい。
また、通知部206は、例えば、図1に示すような異常スコアSと閾値θとを可視化した画面を所定の通知先に表示させてもよい。このとき、例えば、超過面積Aex部分を強調表示させてもよいし、誤検知であると判別された異常検知結果に対応する超過面積Aexと誤検知であると判別されなかった異常検知結果に対応する超過面積Aexとでその表示態様を異ならせてもよい。
[第二の実施形態]
次に、第二の実施形態について説明する。なお、第二の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と同様の構成要素についてはその説明を省略又は簡略化する。
<異常スコア及び閾値と異常検知との関係>
例えば、運用フェーズにおいて、図9に示すような異常スコアSが得られた場合を考える。特徴量の積算値は異常スコアSが閾値θ以下となった場合にリセットされるため、第一の実施形態では、符号701~704に示される部分で検知された異常は誤検知と判別される可能性がある。一方で、符号701~704に示される部分のように、短時間の間に異常スコアSが閾値θを複数回超えている場合には、対象に何等かの異常が発生していることが多い。このため、専門家等は、経験則により、これらをまとめて(つまり、符号705に示されるように複数回の異常スコアSの超過をまとめて)1つの異常と判断している。
そこで、第二の実施形態では、上記の経験則を表現するために、複数の異常検知結果をグループ化し、このグループ化された異常検知結果の特徴量から判別モデルを構築した上で、この判別モデルにより異常検知結果が誤検知であるか否かを判別する誤検知判別装置10について説明する。
<誤検知判別装置10の機能構成>
第二の実施形態に係る誤検知判別装置10の機能構成例を図10に示す。図10に示すように、第二の実施形態に係る誤検知判別装置10は、異常検知部201と、特徴量計算部202と、アノテーション部203Aと、学習部204と、判別部205と、通知部206とを有する。これら各部のうち、特に、アノテーション部203Aが第一の実施形態と異なる。また、第二の実施形態に係る誤検知判別装置10は、異常検知モデル記憶部207と、異常検知結果記憶部208と、特徴量記憶部209と、学習用データ記憶部210Aと、判別モデル記憶部211とを有する。これら各部のうち、特に、学習用データ記憶部210Aが第一の実施形態と異なる。
アノテーション部203Aは、判別モデル構築フェーズにおいて、専門家等からのグループ化指示及びアノテーション指示に応じて、特徴量記憶部209に記憶されている特徴量をグループ化した上で、グループ化された特徴量全体に対する異常有無を表すラベルを付与する。そして、アノテーション部203Aは、どのグループに属するかを表す情報と当該ラベルとが付与された特徴量を学習用データとして学習用データ記憶部210Aに記憶させる。なお、第一の実施形態と同様に、学習用データには、特徴量に関連する情報(t、t、Smax)も含まれているものとする。
なお、グループ化指示とは、複数の特徴量を同一グループにまとめることを表す指示のことである。アノテーション指示と同様に、専門家等は、誤検知判別装置10を直接操作してグループ化指示を行ってもよいし、誤検知判別装置10と通信ネットワークを介して接続される端末を操作してグループ化指示を行ってもよい。
学習用データ記憶部210Aは、学習用データを記憶する。ここで、第二の実施形態に係る学習用データの一例を図11に示す。図11に示すように、第二の実施形態に係る学習用データには、No.と、特徴量(tex及びAex)と、特徴量に関連する情報(t、t及びSmax)と、特徴量に付与されたラベル(label)とに加えて、その特徴量及び特徴量に関する情報が属するグループ(group)と、そのグループに付与されたラベル(g_label)とが含まれている。以下、g_labelを「グループラベル」と呼ぶことにする。
グループ(group)は、複数の特徴量(及び特徴量に関する情報)をグループ化したときにそのグループを識別する情報(例えば、グループ番号等)である。グループラベルは、グループ全体で異常か異常でないかを表しており、例えば、「0」は異常でない、「1」は異常をそれぞれ表している。このように、グループ(group)とグループラベル(g_label)とを導入することで、例えば、同一グループに属する各特徴量の各々が得られる場合に誤検知と判別される場合であっても、グループ全体で誤検知でないと判別することが可能となる。
なお、図10に示す学習用データは一例であって、これに限られるものではない。学習用データには少なくとも特徴量とグループ(group)とグループラベル(g_label)とが含まれていればよい。
<判別モデル構築フェーズ>
以下、判別モデル構築フェーズについて説明する。
≪学習用データ作成処理≫
第二の実施形態に係る学習用データ作成処理について、図12を参照しながら説明する。
異常検知部201は、図5のステップS101と同様に、対象から収集された入力データを入力として、異常検知を行う(ステップS401)。以下、図5のステップS101と同様に、異常検知結果記憶部208には、{(t,S(t),y(t))|t=1,・・・,T}が記憶されたものとする。
特徴量計算部202は、図5のステップS102と同様に、異常検知結果記憶部208に記憶されている異常検知結果を用いて、特徴量(超過時間tex及び超過面積Aex)を計算する(ステップS402)。以下、図5のステップS102と同様に、特徴量記憶部209には、{(t (k),t (k),tex (k),Aex (k),Smax (k))|k=1,・・・,K}が記憶されたものとする。
アノテーション部203Aは、専門家等からのグループ化指示及びアノテーション指示に応じて、特徴量記憶部209に記憶されている特徴量をグループ化した上で、グループ化された特徴量全体に対する異常有無を表すグループラベルを付与する(ステップS403)。アノテーション部203Aは、各(t (k),t (k),tex (k),Aex (k),Smax (k))に対するグループ化指示及びアノテーション指示に応じて、当該(t (k),t (k),tex (k),Aex (k),Smax (k))に対してラベル(label)、グループ(group)及びグループラベル(g_label)を付与する。ただし、ラベル(label)は付与されなくてもよい。
これにより、学習用データとして(t (k),t (k),tex (k),Aex (k),Smax (k),label(k),group(k),g_label(k))が得られ、学習用データ記憶部210Aに記憶される。group(k)は、(t (k),t (k),tex (k),Aex (k),Smax (k))に対するグループ化指示に含まれるグループ番号である。g_label(k)は、そのグループ番号group(k)でグループ化された(t (k),t (k),tex (k),Aex (k),Smax (k))に対するアノテーション指示に含まれるグループラベルである。なお、アノテーション指示では、同一のグループ番号でグループ化された(t (k),t (k),tex (k),Aex (k),Smax (k))に対して同一のグループラベルが指定される。
≪学習処理≫
第二の実施形態に係る学習処理について、図13を参照しながら説明する。
学習部204は、図6のステップS201と同様に、学習用データ記憶部210から学習用データを取得する(ステップS501)。以下では、{(t (k),t (k),tex (k),Aex (k),Smax (k),group(k),g_label(k))|k=1,・・・,K}が取得されたものとする。
学習部204は、上記のステップS501で取得した学習用データに含まれる特徴量(超過時間tex及び超過面積Aex)を同一グループ内で積算した上で、その積算値と当該グループのグループラベルとを用いて、判別モデル記憶部211に記憶されている判別モデルを学習する(ステップS502)。すなわち、まず、学習部204は、group(k)が同一であるtex (k)及びAex (k)に関して、tex (k)の積算値(総和)とAex (k)の積算値(総和)とを計算する。これにより、group(k)∈{1,・・・,M}であるとき、グループ番号がmであるtex (k)の積算値をΣt,m、Aex (k)の積算値をΣA,m、グループ番号mのグループのグループラベル(つまり、group(k)=mである学習用データに含まれるg_label(k))をg_labelとすれば、{(Σt,m,ΣA,m,g_label)|m=1,・・・,M}が得られる。そして、学習部204は、Σt,m及びΣA,mとg_label(m=1,・・・,M)とを用いて、g_labelを教師データとする既知の教師あり学習により当該判別モデルのパラメータを学習する。なお、教師あり学習では、Σt,m及びΣA,mを判別モデルに入力したときの出力とg_labelとの誤差を最小化するように、当該判別モデルのパラメータが学習される。
そして、学習部204は、図6のステップS203と同様に、上記のステップS502で学習された判別モデルにより、判別モデル記憶部211に記憶されている判別モデルを更新する(ステップS503)。
<運用フェーズ>
以下、運用フェーズについて説明する。
≪誤検知判別付き異常検知処理≫
第二の実施形態に係る誤検知判別付き異常検知処理について、図14を参照しながら説明する。なお、誤検知判別付き異常検知処理は、例えば、入力データが得られる毎に繰り返し実行される。
異常検知部201は、図7のステップS301と同様に、対象から収集された入力データを入力として、異常検知を行う(ステップS601)。以下、現在の時刻(より正確には時刻インデックス)をtとして、異常検知結果(t,S(t),y(t))が得られたものとする。
次に、異常検知部201は、図7のステップS302と同様に、上記のステップS601で異常の発生が検知されたか否かを判定する(ステップS602)。
上記のステップS602で異常の発生が検知された場合、特徴量計算部202は、図7のステップS303と同様に、単位時間あたりの特徴量(つまり、単位時間あたりの超過時間Δtexと単位時間あたりの超過面積ΔAex)を計算する(ステップS603)。
次に、特徴量計算部202は、図7のステップS304と同様に、上記のステップS603で計算された単位時間あたりの特徴量の積算値(つまり、Σ及びΣ)を計算する(ステップS604)。
一方で、上記のステップS602で異常の発生が検知されなかった場合、特徴量計算部202は、積算値Σ及びΣをリセットするか否かを判定する(ステップS605)。ここで、現在時刻をt、t>t'かつS(t')>θを満たす最大のt'をtとする。このとき、特徴量計算部202は、例えば、t-tが予め決められた閾値thを超えている場合は積算値Σ及びΣをリセットすると判定し、そうでない場合にΣ及びΣはリセットしないと判定すればよい。これにより、異常スコアSが閾値θを超えた後、瞬間的に異常スコアSが閾値θ以下となっても、積算値Σ及びΣがリセットされないようにすることができる。このため、短時間の間に異常スコアSが閾値θを複数回超えるような場合に、その間の特徴量をリセットせずに積算することができる。
なお、上記の閾値thは適切な値に予め設定されるが、例えば、学習用データからその値が決定されてもよい。例えば、異常検知が行われた時刻順に、同一グループに属する学習用データを並べたとする。このとき、各グループ内で各学習用データのtとその次の学習用データのtとの差(t-t)の最大値をそれぞれ求め、それらの最大値のうち最も大きいものを閾値thと決定してもよい。
上記のステップS605で積算値Σ及びΣをリセットすると判定された場合、特徴量計算部202は、図7のステップS305と同様に、積算値Σ及びΣを0にリセットする(ステップS606)。
以降のステップS607~ステップS610は、図7のステップS306~309とそれぞれ同様であるため、その説明を省略する。
[変形例]
以下、第一の実施形態及び第二の実施形態の変形例をいくつか説明する。
・変形例1
上記の各実施形態では、異常検知及び特徴量の算出に異常スコアSと閾値θを用いたが、異常スコアS以外の何等かの指標値とその指標値に対する閾値とが用いられてもよい。例えば、指標値としてセンサ値そのものが用いられてもよいし、センサ値から計算された統計量(例えば、Q統計量やT統計量等)が用いられてもよい。
・変形例2
上記の各実施形態では、異常検知モデルとその異常検知結果に対する判別モデルとがそれぞれ1つずつ存在する場合について説明したが、異常検知モデルと判別モデルはそれぞれ複数存在してもよい。例えば、異常検知の対象となる設備やプロセス等が複数種類存在する場合、その種類毎に、異なる異常検知モデルとその異常検知結果に対する判別モデルとが存在してもよい。又は、例えば、異常検知モデルは1つである一方で、異常検知の対象となる設備やプロセス等の種類毎に複数の判別モデルが存在してもよい。これとは逆に、例えば、異常検知の対象となる設備やプロセス等の種類毎に複数の異常検知モデルが存在する一方で、それら複数の異常検知モデルの異常検知結果に対する1つの判別モデルが存在してもよい。
・変形例3
上記の第二の実施形態では、異常スコアSが瞬間的に閾値θ以下となった場合には積算値Σ及びΣをリセットしないようにしたが、例えば、積算値Σ及びΣがリセットされるまで、異常スコアSが閾値θ以下となる毎に、積算値Σ及びΣに積算される特徴量を低減させてもよい。例えば、0<α<1として、Σ←Σ+α×Δtex及びΣ←Σ+α×ΔAexにより積算してもよい。ここで、nは、積算値Σ及びΣが前回リセットされた以降、異常スコアSが閾値θ以下となった回数である。
[まとめ]
以上のように、第一の実施形態及び第二の実施形態に係る誤検知判別装置10は、異常検知モデルによる異常検知結果が誤検知である否かを判別し、その判別結果を所定の通知先に通知することができる。このため、誤検知の発生に伴う運用負荷の増加(例えば、専門家等による対象の調査等)を抑制させることが可能となる。
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。
10 誤検知判別装置
101 入力装置
102 表示装置
103 外部I/F
103a 記録媒体
104 通信I/F
105 RAM
106 ROM
107 補助記憶装置
108 プロセッサ
109 バス
201 異常検知部
202 特徴量計算部
203 アノテーション部
204 学習部
205 判別部
206 通知部
207 異常検知モデル記憶部
208 異常検知結果記憶部
209 特徴量記憶部
210 学習用データ記憶部
211 判別モデル記憶部

Claims (8)

  1. 対象から収集されたデータを用いて、前記対象に異常が発生したか否かを検知するように構成されている異常検知部と、
    前記異常検知部によって検知された異常が誤検知である否かを判別するための所定の特徴量を計算するように構成されている特徴量計算部と、
    前記特徴量を用いて、予め学習された判別モデルにより、前記異常検知部によって検知された異常が誤検知であるか否かを判別するように構成されている判別部と、
    を有する誤検知判別装置。
  2. 前記特徴量と、前記特徴量が得られたときの異常が誤検知であるか否かを表すラベルとが含まれる学習用データを用いて、前記判別モデルを学習するように構成されている学習部を更に有し、
    前記判別部は、
    前記学習部によって学習された判別モデルにより、前記異常検知部によって検知された異常が誤検知であるか否かを判別するように構成されている請求項1に記載の誤検知判別装置。
  3. 前記異常検知部は、
    前記データと予め学習された異常検知モデルとを用いて、前記データの異常度合いを表す所定の指標値を計算し、
    前記指標値が所定の閾値を超えている場合に、前記対象に異常が発生したと検知するように構成されており、
    前記特徴量計算部は、
    前記指標値が前記閾値を超えている時間を表す超過時間と、前記超過時間における前記指標値の総和を表す超過面積とを前記特徴量として計算するように構成されている請求項1又は2に記載の誤検知判別装置。
  4. 前記異常検知部によって異常が検知された場合に、前記異常の発生を表すアラートを所定の通知先に通知するように構成されている通知部を更に有し、
    前記通知部は、
    前記判別部による判別結果に応じた内容の前記アラートを通知するように構成されている請求項1に記載の誤検知判別装置。
  5. 前記通知部は、
    前記判別部による判別結果が、前記異常検知部によって検知された異常が誤検知であることを示すものである場合、誤検知の可能性があることを示す情報が含まれる前記アラートを通知するように構成されている請求項4に記載の誤検知判別装置。
  6. 前記通知部は、
    前記判別部による判別結果が、前記異常検知部によって検知された異常が誤検知であることを示すものである場合、前記アラートの重要度を表すレベルを下げて通知するように構成されている請求項4に記載の誤検知判別装置。
  7. 対象から収集されたデータを用いて、前記対象に異常が発生したか否かを検知する異常検知手順と、
    前記異常検知手順によって検知された異常が誤検知である否かを判別するための所定の特徴量を計算する特徴量計算手順と、
    前記特徴量を用いて、予め学習された判別モデルにより、前記異常検知手順によって検知された異常が誤検知であるか否かを判別する判別手順と、
    をコンピュータが実行する誤検知判別方法。
  8. 対象から収集されたデータを用いて、前記対象に異常が発生したか否かを検知する異常検知手順と、
    前記異常検知手順によって検知された異常が誤検知である否かを判別するための所定の特徴量を計算する特徴量計算手順と、
    前記特徴量を用いて、予め学習された判別モデルにより、前記異常検知手順によって検知された異常が誤検知であるか否かを判別する判別手順と、
    をコンピュータに実行させるプログラム。
JP2022079948A 2022-05-16 2022-05-16 誤検知判別装置、誤検知判別方法及びプログラム Pending JP2023168693A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022079948A JP2023168693A (ja) 2022-05-16 2022-05-16 誤検知判別装置、誤検知判別方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022079948A JP2023168693A (ja) 2022-05-16 2022-05-16 誤検知判別装置、誤検知判別方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2023168693A true JP2023168693A (ja) 2023-11-29

Family

ID=88923310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022079948A Pending JP2023168693A (ja) 2022-05-16 2022-05-16 誤検知判別装置、誤検知判別方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2023168693A (ja)

Similar Documents

Publication Publication Date Title
US10747188B2 (en) Information processing apparatus, information processing method, and, recording medium
JP6585482B2 (ja) 機器診断装置及びシステム及び方法
JP5621937B2 (ja) 運用管理装置、運用管理方法、及びプログラム
US10539468B2 (en) Abnormality detection apparatus, abnormality detection method, and non-transitory computer-readable medium
US10599501B2 (en) Information processing device, information processing method, and recording medium
JP2019016209A (ja) 診断装置、診断方法およびコンピュータプログラム
US20210116331A1 (en) Anomaly analysis method, program, and system
KR101978569B1 (ko) 플랜트 데이터 예측 장치 및 방법
EP3795975B1 (en) Abnormality sensing apparatus, abnormality sensing method, and abnormality sensing program
WO2018216197A1 (ja) 異常重要度算出システム、異常重要度算出装置、及び異常重要度算出プログラム
JP2019082918A (ja) 監視対象選定装置、監視対象選定方法、およびプログラム
CN111930603A (zh) 服务器性能检测方法、装置、系统及介质
CN112380073B (zh) 一种故障位置的检测方法、装置及可读存储介质
US10157113B2 (en) Information processing device, analysis method, and recording medium
JP2023168693A (ja) 誤検知判別装置、誤検知判別方法及びプログラム
JP6223897B2 (ja) 異常検知装置及び異常検知システム
JP7359206B2 (ja) 学習装置、学習方法、及びプログラム
JP2022084435A (ja) 異常検知システム、異常検知方法およびプログラム
WO2018207605A1 (ja) 正常異常判別装置、正常異常判別方法、及び正常異常判別システム
JP2021043764A (ja) 情報提示装置、情報提示方法、および情報提示システム
JP7052914B1 (ja) 異常診断システム、異常診断装置、異常診断方法、及びプログラム
JP7296860B2 (ja) 監視制御装置およびこれを用いた広域監視制御システム
JP7173395B1 (ja) 分析装置、分析方法及びプログラム
TWI824681B (zh) 裝置管理系統、裝置的障礙原因推測方法以及非暫時性地記憶程式的記憶媒體
Spahić et al. Reliable Unmanned Autonomous Systems: Conceptual Framework for Warning Identification during Remote Operations