JP2019061565A - 異常診断方法および異常診断装置 - Google Patents

異常診断方法および異常診断装置 Download PDF

Info

Publication number
JP2019061565A
JP2019061565A JP2017186889A JP2017186889A JP2019061565A JP 2019061565 A JP2019061565 A JP 2019061565A JP 2017186889 A JP2017186889 A JP 2017186889A JP 2017186889 A JP2017186889 A JP 2017186889A JP 2019061565 A JP2019061565 A JP 2019061565A
Authority
JP
Japan
Prior art keywords
abnormality
group
abnormal
observation
value
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.)
Granted
Application number
JP2017186889A
Other languages
English (en)
Other versions
JP7010641B2 (ja
Inventor
達海 大庭
Tatsumi Oba
達海 大庭
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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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 Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Priority to JP2017186889A priority Critical patent/JP7010641B2/ja
Priority to CN201811086036.0A priority patent/CN109558293B/zh
Priority to US16/136,408 priority patent/US10817394B2/en
Priority to EP18195899.2A priority patent/EP3462267B1/en
Publication of JP2019061565A publication Critical patent/JP2019061565A/ja
Priority to JP2022003718A priority patent/JP7325557B2/ja
Application granted granted Critical
Publication of JP7010641B2 publication Critical patent/JP7010641B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2257Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0275Fault isolation and identification, e.g. classify fault; estimate cause or root of failure
    • G05B23/0281Quantitative, e.g. mathematical distance; Clustering; Neural networks; Statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Mathematical Optimization (AREA)
  • Automation & Control Theory (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Testing Of Devices, Machine Parts, Or Other Structures Thereof (AREA)

Abstract

【課題】異常の原因を効果的に特定することができる異常診断方法を提供する。【解決手段】異常診断方法は、監視対象の状態を観測することにより得られた、状態を示す複数の変数の値で構成される観測値を用いて、当該観測値が異常であるか否かを診断する異常診断装置100が実行する異常診断方法であって、異常診断装置は、プロセッサおよびメモリを備え、メモリは複数の観測値を用いた学習により生成された異常検知モデルを記憶しており、プロセッサは互いに関連のある少なくとも2つの変数の組み合わせでそれぞれが構成される1以上のグループを示すグループ情報を取得し、観測値を取得し、メモリから読み出した異常検知モデルを用いて観測値が異常であるか否かを判定し、観測値が異常であると判定した場合、当該観測値とグループ情報で示される1以上のグループとに基づいて、当該観測値の1以上のグループのうち、異常の原因であるグループを特定する。【選択図】図9

Description

本発明は、多次元情報における異常に寄与する変数を特定する異常診断方法および異常診断装置に関する。
従来、特許文献1〜4および非特許文献1において開示されているように、複数の変数の観測値に異常があるか否かを診断することで、異常を検知することが知られている。
特許第6076751号公報 特許第5858839号公報 特許第5811683号公報 特許第5108116号公報
Sommer, Robin, and Vern Paxson. "Outside the closed world: On using machine learning for network intrusion detection." Security and Privacy (SP), 2010 IEEE Symposium on. IEEE, 2010. M. Tavallaee, E. Bagheri, W. Lu, and A. Ghorbani, "A Detailed Analysis of the KDD CUP 99 Data Set," Submitted to Second IEEE Symposium on Computational Intelligence for Security and Defense Applications (CISDA), 2009. Mikolov, Tomas, et al. "Distributed representations of words and phrases and their compositionality." Advances in neural information processing systems. 2013. Yang, Sen, et al. "Feature grouping and selection over an undirected graph." Graph Embedding for Pattern Analysis. Springer New York, 2013. 27−43. Song, Jingping, Zhiliang Zhu, and Chris Price. "Feature grouping for intrusion detection system based on hierarchical clustering." International Conference on Availability, Reliability, and Security. Springer International Publishing, 2014.
本開示は、異常の原因を効果的に特定することができる異常診断方法及び異常診断装置を提供する。
本開示の一態様に係る異常診断方法は、監視対象の状態を観測することにより得られた、前記状態を示す複数の変数の値で構成される観測値を用いて、当該観測値が異常であるか否かを診断する異常診断装置が実行する異常診断方法であって、前記異常診断装置は、プロセッサおよびメモリを備え、前記メモリは、複数の前記観測値を用いた学習により生成された異常検知モデルを記憶しており、前記プロセッサは、前記複数の変数のうち互いに関連のある少なくとも2つの変数の組み合わせでそれぞれが構成される1以上のグループを示すグループ情報を取得し、前記観測値を取得し、前記メモリから前記異常検知モデルを読み出して、読み出した前記異常検知モデルを用いて前記観測値が異常であるか否かを判定し、前記観測値が異常であると判定した場合、当該観測値と取得した前記グループ情報で示される前記1以上のグループとに基づいて、当該観測値の前記1以上のグループのうち、異常の原因であるグループを特定する。
本開示の一態様に係る異常診断装置は、監視対象の状態を観測することにより得られた、前記状態を示す複数の変数の値で構成される観測値を用いて、当該観測値が異常であるか否かを診断する異常診断装置であって、プロセッサおよびメモリを備え、前記メモリは、複数の前記観測値を用いた学習により生成された異常検知モデルを記憶しており、前記プロセッサは、前記複数の変数のうち互いに関連のある少なくとも2つの変数の組み合わせによりそれぞれが構成される1以上のグループを示すグループ情報を取得し、前記観測値を取得し、前記メモリから前記異常検知モデルを読み出して、読み出した前記異常検知モデルを用いて前記観測値が異常であるか否かを判定し、前記観測値が異常であると判定した場合、取得した前記観測値と取得した前記グループ情報で示される前記1以上のグループとに基づいて、前記観測値の前記1以上のグループのうち、異常の原因であるグループを特定する。
なお、これらの全般的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
本開示における異常診断方法および異常診断装置は、異常の原因を効果的に特定することができる。
図1は、実施の形態に係る異常診断システムの概略図である。 図2は、実施の形態に係る異常診断装置のハードウェア構成の一例を示すブロック図である。 図3は、本実施の形態に係る異常診断システムにおける監視対象の一例を示す図である。 図4は、本実施の形態における異常診断装置の機能構成の一例を示すブロック図である。 図5は、監視対象から取得された観測データの一例を示す図である。 図6Aは、本実施の形態における異常診断装置のグループを設定するためにディスプレイに表示されるUIの一例を示す図である。 図6Bは、本実施の形態における異常診断装置のグループを設定するためにディスプレイに表示されるUIの一例を示す図である。 図7は、実施の形態におけるオートエンコーダを示す図である。 図8は、実施の形態に係る異常検知モデルの生成処理の一例を示すフローチャートである。 図9は、実施の形態に係る異常検知モデルを用いた判定処理の一例を示すフローチャートである。 図10は異常の原因であるグループを特定する特定処理の一例を示すフローチャートである。
(本発明の基礎となった知見)
近年、工場などの設備では、IT化や自動化が高度に進んでいる。設備を効率よく、かつ、安全に自動化するためには、正確なセンシングと適切なフィードバックとが必要不可欠である。このため、故障、サイバー攻撃などによる異常を検知する異常検知は、設備の不良による大きな損害を事前に回避するために極めて重要な技術である。
その一方で、適切に異常を捉えることができたとしても、何が原因で異常が起きているのか、その原因を追究することは、また別の困難さをはらんでいる。機械学習における一般的な異常検知の手法では、正常状態では発生する可能性が低いイベントを検知するのみであり、その異常の原因についての情報は得られない。そのため、異常検知は、正常状態でないことが様々な可能性を含むネットワークなどの分野においては特に、あまり有効に活用されていないのが現状である(非特許文献1)。
異常が起きた原因を特定するために、観測された値のどの変数が特に異常に大きく寄与しているかを特定することは有効である。例えばセンサが故障した場合には、故障したセンサの観測値だけが異常な値を示すはずである。このため、観測値が異常であると特定できた場合には、速やかに観測値が得られたセンサの故障という原因にたどり着くことができる(特許文献1、2)。
しかし、現実に生じる異常診断では、上記のような、故障したセンサの特定などが目的であることばかりではない。実際には、ある1つの根本的な現象または原因が複数のセンサなどの観測値に影響を及ぼす場面は多い。例えば数学のテストの点数と物理のテストの点数とは、いずれも数理的思考力という根本的な要因に影響を受ける。このため、両者の点数は高い相関関係にあると言える。このように、根本要因に影響を与える異常な現象が、同時に複数の変数に影響を及ぼすことになる。
また、特許文献3の手法では、ある変数に異常の可能性があると判断されると、その変数と強い相関を持つ複数の変数が抽出される。強い相関を持つ変数同士は、共通の要素に影響を受けている可能性が高い。このため、この方法は異常診断にも役立つ。特許文献4の手法も同様に強い相関を持つ変数を共線性データ項目としてまとめている。
しかし、前述の方法は、化学プラントなどにおける設備またはセンサの故障診断など、物理的なシステムを対象としていた。このため、ネットワークを流れるパケットの不正なパラメータを検出する目的など、異常診断のモデルがより複雑な場合、または、悪意を持ってパラメータを操作される場合には、異常となる変数を効果的に特定できない場合がある。
具体的には、サイバー攻撃、マルウェアなどが進化を続けてくる中で、侵入検知システム(IDS:Intrusion Detection System)、または、侵入防止システム(IPS:Intrusion prevention system)を導入することで、攻撃などを未然に防ぐことが不可欠となってきた。侵入検知システムまたは侵入防止システムは、コンピュータまたはネットワークに対する不正行為を検知または防御するシステムである。
しかし、昨今の攻撃の多様化に伴い、従来用いられてきたシグネチャ型の検知システムでは不正通信を捉えきれなくなってきた。このため、アノマリ型と呼ばれる異常検知のシステムが必要になってきた。シグネチャ型が既知のパターンにしか適用できないのに対して、アノマリ型は未知の攻撃パターンも検知できる可能性がある。しかし、異常を検知できたところで、具体的に何が異常なのかわからない上に、膨大な異常検知アラートを発するため、ユーザが対応に追われてしまうという問題があった。
このような課題を解決するため、本開示の一実施様態の異常診断方法は、監視対象の状態を観測することにより得られた、前記状態を示す複数の変数の値で構成される観測値を用いて、当該観測値が異常であるか否かを診断する異常診断装置が実行する異常診断方法であって、前記異常診断装置は、プロセッサおよびメモリを備え、前記メモリは、複数の前記観測値を用いた学習により生成された異常検知モデルを記憶しており、前記プロセッサは、前記複数の変数のうち互いに関連のある少なくとも2つの変数の組み合わせでそれぞれが構成される1以上のグループを示すグループ情報を取得し、前記観測値を取得し、前記メモリから前記異常検知モデルを読み出して、読み出した前記異常検知モデルを用いて前記観測値が異常であるか否かを判定し、前記観測値が異常であると判定した場合、当該観測値と取得した前記グループ情報で示される前記1以上のグループとに基づいて、当該観測値の前記1以上のグループのうち、異常の原因であるグループを特定する。
これにより、広範な問題に対して高精度に異常の原因となるグループを特定することができる。
また、前記異常検知モデルは、前記複数の観測値を用いて、前記学習としてのオートエンコーダ、変分オートエンコーダ、および、1クラスサポートベクトルマシンのうちの少なくとも1つによって生成されたモデルであってもよい。
これにより、既によい性能を発揮することが知られている異常検知を用いて観測値が異常であるかを判定することができる。また、異常検知が出力するスコアを用いて、自然な損失関数を用いた異常診断を行うことが容易にできる。
また、前記観測値が異常であるか否かの判定では、前記異常検知モデルに前記観測値を入力することでスコアを算出し、算出した前記スコアが予め定められた第1の閾値以上の場合、取得した前記観測値が異常であると判定し、算出した前記スコアが前記第1の閾値未満の場合、取得した前記複数の観測値が異常でないと判定してもよい。
このため、効果的に観測値の異常を検知することができる。
また、前記異常検知モデルは、学習用の正常な複数の前記観測値と、診断用の複数の前記観測値との確率密度比に基づいて生成されたモデルであり、前記観測値の取得では、複数の前記観測値を取得し、前記観測値が異常であるか否かの判定では、前記メモリから読み出した前記異常検知モデルと、取得した前記複数の観測値とを用いてスコアを算出し、算出した前記スコアが予め定められた第1の閾値以上の場合、取得した前記複数の観測値が異常であると判定し、算出した前記スコアが前記第1の閾値未満の場合、取得した前記複数の観測値が異常でないと判定してもよい。
これにより、学習期間のデータが少ないなどの理由でモデリングが困難な場合や、診断対象データが集合として異常かどうかを判断できるようになり、異常であるならばどの変数グループに異常があるかを特定することができる。
また、前記グループの特定では、算出した前記スコアと、前記グループ情報で示される前記1以上のグループ毎に正則化することにより得られるグループ正則化項との和で構成される損失関数が極小値となる変位ベクトルを算出し、算出した前記変位ベクトルのうち、1未満の第2の閾値以上の変数を含むグループを、異常の原因であるグループとして特定してもよい。
これにより、異常の原因であるグループを効果的に特定することができる。
また、前記グループ正則化項は、グループ間では0<p≦1であり、かつ、グループ内ではp>1であるLp正則化を満たすとしてもよい。
これにより、異常の原因であるグループを効果的に特定することができる。
なお、これらの全般的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
以下で説明する実施の形態は、いずれも本発明の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることも出来る。
(実施の形態)
[1.異常診断システムの構成]
まず、本実施の形態における異常診断システムの概略構成について説明する。
図1は、実施の形態に係る異常診断システムの概略図である。
具体的には、図1において、異常診断システム1は、異常診断装置100、サーバ200および監視対象300を備える。異常診断システム1では、監視対象300の状態を観測することにより得られたデータである観測データが監視対象300からサーバ200に送信される。サーバ200に受信された観測データは、サーバ200に蓄積される。異常診断装置100は、サーバ200に蓄積された観測データを取得する。異常診断装置100は、例えば、定期的にサーバ200に蓄積された観測データを取得してもよいし、リアルタイムにサーバ200に蓄積された観測データを取得してもよい。
異常診断装置100は、取得した観測データを用いて、観測データに異常である観測値が含まれているか否かを判定する。これにより、異常診断装置100は、監視対象の異常診断を行う。
監視対象300は、異常診断の対象となるシステムである。監視対象300は、例えば、化学プラント、制御システム、車載ネットワークシステムなどである。監視対象300からは、観測により観測データを得ることができる。観測データは、監視対象300の状態を示す複数の変数の値で構成される観測値を示すデータである。観測データは、監視対象300から取得された観測値を示す複数種類のデータ列である。観測値のデータ列は、例えば時系列のベクトルにより表され、それぞれの次元が監視対象300が含むセンサなどから得られた値である。つまり、観測値は、複数の異なるタイミングのそれぞれにおいて得られた値である。観測値は、例えば、所定の1単位の処理中に観測されることにより得られる値であって、当該処理が終了するタイミングで得られる値である。
異常診断システム1では、異常診断装置100、サーバ200および監視対象300は、互いに通信可能に接続されている。例えば、異常診断システム1では、異常診断装置100とサーバ200とは、インターネットなどの汎用のネットワークで接続されていてもよいし、専用のネットワークで接続されていてもよい。また、異常診断システム1では、サーバ200と監視対象300とは、インターネットなどの汎用のネットワークで接続されていてもよいし、専用のネットワークで接続されていてもよい。
なお、異常診断システム1は、サーバ200を備えていなくてもよい。つまり、異常診断システムは、異常診断装置100および監視対象300を備える構成であってもよい。この場合の異常診断システム1では、監視対象300の状態を観測することにより得られたデータである観測データが監視対象300から異常診断装置100に直接送信される。また、サーバ200を備えていない異常診断システムでは、異常診断装置100と監視対象300とは、互いに通信可能に接続されており、例えば、インターネットなどの汎用のネットワークで接続されていてもよいし、専用のネットワークで接続されていてもよい。
[2.ハードウェア構成]
[2−1.異常診断装置の構成]
次に、異常診断装置100のハードウェア構成について図2を用いて説明する。
図2は、実施の形態に係る異常診断装置のハードウェア構成の一例を示すブロック図である。
図2に示すように、異常診断装置100は、ハードウェア構成として、CPU101(Central Processing Unit)と、メインメモリ102と、ストレージ103と、通信IF(Interface)104と、入力IF(Interface)105と、ディスプレイ106とを備える。
CPU101は、ストレージ103等に記憶された制御プログラムを実行するプロセッサの一例である。
メインメモリ102は、CPU101が制御プログラムを実行するときに使用するワークエリアとして用いられる揮発性の記憶領域、つまりメモリの一例である。
ストレージ103は、制御プログラム、コンテンツなどを保持する不揮発性の記憶領域、つまり、メモリの一例である。
通信IF104は、通信ネットワークを介してサーバ200と通信する通信インタフェースである。通信IF104は、例えば、有線LANインタフェースである。なお、通信IF104は、無線LANインタフェースであってもよい。また、通信IF104は、LANインタフェースに限らずに、通信ネットワークとの通信接続を確立できる通信インタフェースであれば、どのような通信インタフェースであってもよい。
入力IF105は、例えば、テンキー、キーボード、マウスなどの入力装置である。
ディスプレイ106は、CPU101での処理結果を表示する表示装置である。ディスプレイ106は、例えば、液晶ディスプレイ、有機ELディスプレイである。
[2−2.監視対象の構成]
次に、異常診断システム1における監視対象300の一例として制御システム310から観測データを得る場合について説明する。
図3は、本実施の形態に係る異常診断システムにおける監視対象の一例を示す図である。図3において、異常診断システム1では、監視対象300は、例えば、制御システム310である。制御システム310において観測されることにより得られた観測データは、サーバ200に送信される。サーバ200に送信されることで蓄積された観測データは、異常診断装置100に送信され、異常診断装置100における観測値の異常診断に用いられる。
制御システム310は、ルータ311と、スイッチングハブ312と、管理端末313と、サーバ314と、PLC(Programmable Logic Controller)315と、センサ316とを備える。
ルータ311は、制御システム310と他のネットワークとの間において、データの送受信を中継する通信機器である。ルータ311は、受信したデータを解析し、解析した結果に基づいてデータの転送経路を選択するなどのデータの転送制御を行う。
スイッチングハブ312は、ルータ311、管理端末313、サーバ314、PLC315、およびセンサ316と通信接続され、受信したデータを接続された機器のうち、受信したデータに含まれる宛先情報に基づく機器に転送する。スイッチングハブ312は、例えば、受信したデータをコピーしたデータを出力するミラーポートを有する。スイッチングハブ312は、ミラーポートにおいて、サーバ200と接続されている。観測データは、スイッチングハブ312のミラーポート経由で抽出され、サーバ200に送信される。
管理端末313は、例えば、PC(Personal Computer)、タブレット端末、スマートフォンなどである。
サーバ314は、コンピュータであり、例えば、管理端末313に所定の機能、データなどを提供する。
PLC315は、各種機械を制御するための制御装置である。
センサ316は、各種センサを含み、例えば、各種物理量を電気信号に変換する機器である。
[3.異常診断システムの機能構成]
次に、異常診断システム1の機能構成について図4を用いて説明する。
図4は、本実施の形態における異常診断装置の機能構成の一例を示すブロック図である。
サーバ200に蓄積されている観測データ210は、学習用データ211と診断用データ212とを含む。
学習用データ211は、取得された観測データ210のうちで、機械学習による異常検知モデルを生成するためのデータである。診断用データ212は、取得された観測データ210のうちで、生成された異常検知モデルを用いて監視対象300から得られた観測データ210が異常か否かを判断する異常診断の対象となるデータである。なお、学習用データ211には、正常なデータだけでなく、異常なデータも含む取得された観測データ210を用いることができる。例えば、学習用データ211は、観測データ210の始めの所定期間で取得されたデータであり、診断用データ212は、学習用データ211を取得した所定期間より後の期間において取得されたデータとしてもよい。
異常診断装置100は、第1取得部110と、グループ情報DB(Database)120と、第2取得部130と、生成部140と、異常検知モデルDB(Database)150と、判定部160と、特定部170とを備える。
第1取得部110は、監視対象300の状態を示す複数の変数のうち、互いに関連のある少なくとも2つの変数の組み合わせでそれぞれが構成される1以上のグループを示すグループ情報を取得する。第1取得部110は、例えば、ユーザからのグループを示す入力を受け付けることで、グループ情報を取得する。第1取得部110は、例えば、入力IF105、ディスプレイ106などにより実現される。
グループ情報DB120は、第1取得部110により取得されたグループ情報を記憶する。グループ情報DB120は、例えば、ストレージ103などにより実現される。
第2取得部130は、サーバ200から観測データ210を取得することで、観測データ210に含まれる観測値を取得する。第2取得部130は、例えば、通信IF104などにより実現される。
生成部140は、第2取得部130により取得された観測データ210のうちの学習用データ211を用いた機械学習により異常検知モデルを生成する。機械学習による異常検知モデルの生成は、通常教師なし学習の問題として定式化される。生成部140は、例えば、学習用データ211を用いてデータの確率密度分布などを推定することで異常検知用のモデルである異常検知モデルを生成する。学習用データ211は、例えば、所定の期間、監視対象300を観測することにより得られた多くのラベル無しデータを含む。生成部140による異常検知モデルの生成処理の具体例は、後述する。生成部140は、例えば、CPU101、メインメモリ102、ストレージ103などにより実現される。
異常検知モデルDB150は、生成部140により生成された異常検知モデルを記憶する。異常検知モデルDB150は、例えば、ストレージなどにより実現される。
判定部160は、異常検知モデルDB150に記憶されている異常検知モデルを読み出す。判定部160は、読み出した異常検知モデルを用いて、第2取得部130により取得された観測データ210のうち診断用データ212が異常であるか否かを判定する。判定部160は、例えば、診断用データ212に含まれる複数の観測値のそれぞれについて上記の判定を行ってもよいし、複数の観測値について上記の判定を行ってもよい。判定部160は、異常検知モデルに対する診断用データ212の確率密度が所定の閾値を超えているか否かに応じて、診断用データ212が異常であるか否かの判定を行う。判定部160は、例えば、得られた上記確率密度が負の対数となる場合、当該確率密度が得られた診断用データ212に異常が含まれると判定する。判定部160の異常判定の方法はこの限りではない。判定部160による判定処理の具体例は、後述する。判定部160は、例えば、CPU101、メインメモリ102、ストレージ103などにより実現される。
特定部170は、診断用データ212が異常であると判定部160により判定された場合、異常であると判定された診断用データ212とグループ情報DB120に記憶されているグループ情報で示される1以上のグループとに基づいて、当該診断用データ212の1以上のグループのうち、異常の原因であるグループを特定する。特定部170は、異常と判定された診断用データ212と、グループ情報とを用いて異常診断を行う。ここで言う異常診断とは、判定部160により異常であると判定された診断用データ212に関して、当該診断用データ212のどの変数グループが異常であるかを診断することである。特定部170による異常診断の具体例は、後述する。
なお、特定部170は、異常検知モデルDB150の異常検知モデルとグループ情報DB120のグループ情報とを用いてどの変数グループが異常であるかを抽出することで異常診断のための異常診断モデルを予め生成していてもよい。この場合、特定部170は、判定部160で異常と判定された診断用データ212に対して、予め生成した異常診断モデルを用いることで、異常診断を行う。
特定部170は、CPU101、メインメモリ102、ストレージ103などにより実現される。
なお、異常診断装置100は、異常検知モデルを生成する生成部140を備える構成であるとしたが、生成部140を備えていなくてもよい。つまり、学習用データを用いて異常検知モデルを生成する装置は、異常診断装置100とは別の装置により実現されていてもよく、異常診断装置100は当該別の装置から異常検知モデルを取得してもよい。
なお、異常診断システム1は、異常診断装置100が観測データ210を取得できれば、監視対象300を備えていなくてもよい。
[4.観測データの一例]
次に、観測データ210の詳細について図5を用いて説明する。
図5は、監視対象から取得された観測データの一例を示す図である。
図5において、観測データ210は、セッション継続時間と、プロトコル種別と、サービス名と、フラグと、サーバ送信データ量と、サーバ受信データ量と、サーバ直近通信回数と、サーバ直近エラー率と、ログインステータスと、ルートシェルフラグと、ルートで実行された命令数とのそれぞれで示される監視対象300の各状態の項目において、複数のセッションごとに観測された観測値1〜7で構成されている。つまり、図5で示される複数の項目は、監視対象の状態を示す複数の変数を示し、観測値1〜7は、複数の異なるタイミングにおいて得られる観測値を示す。例えば、観測値1〜7のそれぞれは、1つのセッションにおいて、監視対象300の上記複数の各項目で示される状態が観測されることにより得られた値である。よって、観測値n(nは自然数)で観測された値は、セッションn(nは自然数)に対する処理中に観測された値である。
図5における観測データ210の観測値の項目は、ネットワークを観測して得られる特徴量の一例である。これらの特徴量は、非特許文献2におけるNSL−KDDデータセットで提供されている特徴量の一部である。これらの特徴量は、ネットワークを流れるパケットの情報などを監視対象として、様々な種別の変数を観測することにより得られる。
図5の観測データ210は、観測値として、セッション継続時間、サーバ送信データ量、サーバ受信データ量、サーバ直近通信回数、サーバ直近エラー率、およびルートで実行された命令数で観測された値である実数と、プロトコル種別、サービス名、およびフラグで観測されたカテゴリ情報、ログインステータスおよびルートシェルフラグで観測されたフラグ情報などを含んだ生の値を含む。異常診断装置100は、これらの観測値のうち、例えば、カテゴリ情報を生の値のままで、異常検知、異常診断などの各処理において利用することが難しい。そのため、カテゴリ情報等の観測値を1−of−Nエンコードを用いてベクトル値に変換する。ベクトル値への変換は、サーバ200において行われてもよいし、異常診断装置100において行われてもよい。
ここで1−of−Nエンコードとは、N種類の観測値に対し、1次元ずつ割り当てを行い、その観測値が該当する次元のみを1とし、他の次元を0とする数値を決定することでカテゴリ情報などの観測値をベクトル値に変換するためのエンコードである。
例えば、晴/雨/曇の3種類である観測値に1−of−Nエンコードを用いる場合、N=3であるため、例えば、晴を(1,0,0)、雨を(0,1,0)、曇を(0,0,1)のように3次元に観測値を割り当てる変換を行うことで、晴/雨/曇という観測値からベクトル値が得られる。
また、ON/OFFのような2値のフラグの観測値に対しては、ONを1、OFFを0という特徴量で表す変換を行うことで数値化してもよい。
[5.グループの設定の一例]
次に、グループの設定方法について図6Aおよび図6Bを用いて詳細に説明する。
図6Aおよび図6Bは、実施の形態における異常診断装置のグループを設定するためにディスプレイに表示されるUIの一例を示す図である。
図6Aにおいて、ディスプレイ106には、少なくとも2つの変数の組み合わせで構成されるグループを設定するためのUI111が表示されている。UI111は、項目112と、グループ追加ボタン113と、グループ削除ボタン114とで構成されている。項目112には、監視対象300から取得される観測データ210に含まれる複数の項目が表示されている。項目112は、具体的には、セッション継続時間と、プロトコル種別と、サービス名と、フラグと、サーバ送信データ量と、サーバ受信データ量と、サーバ直近通信回数と、サーバ直近エラー率と、ログインステータスと、ルートシェルフラグと、ルートで実行された命令数とを含む。ユーザは、入力IF105を用いてUI111に対する入力を行うことで、これらの項目112に対して、グループを設定する。
図6Aは、UI111初期状態を示しており、項目112に対してグループに属さないことを示すグループなし115を設定するためのチェックボックスが表示されている。
グルーピングを行う場合、ユーザは、グループ追加ボタン113を押下することでグループを追加することができ、追加されたグループに属する項目を設定できる。
図6Bは、グループ追加ボタン113を押下することで、グループとして「グループ1」、「グループ2」を追加した場合に表示されるUI111aを示す。
UI111aでは、「グループ1」として、「セッション継続時間」、「サーバ送信データ量」、および「サーバ受信データ量」が設定されている。「セッションの継続時間」は、送受信データが大きい場合に大きくなるので、「セッション継続時間」、「サーバ送信データ量」、および「サーバ受信データ量」は互いに関連がある。このため、「セッション継続時間」、「サーバ送信データ量」、および「サーバ受信データ量」は、グルーピングされている。
また、UI111aでは、「グループ2」として、「ルートシェルフラグ」および「ルートで実行された命令数」が設定されている。「ルートシェルフラグ」がONの場合に、「ルートで実行された命令数」が1以上になるため、「ルートシェルフラグ」および「ルートで実行された命令数」は互いに関連がある。このため、「ルートシェルフラグ」および「ルートで実行された命令数」は、グループピングされている。
UI111、111aを用いた項目112のグループの設定では、複数の項目それぞれは「グループなし」を含む1つのグループに含まれるように設定され、2つ以上のグループに属する項目はないものとする。
また、項目112では「プロトコル種別」を観測値としているが、代わりに、「tcp」、「udp」、および「icmp」の3通りの観測値とする場合、つまり、項目として「プロトコル種別」の代わりに「tcp」、「udp」、および「icmp」の3項目とする場合は、これらの3項目を同一のグループとして設定してもよい。
設定したグループを削除する場合は、削除するグループを選択した上でグループ削除ボタン114を押下することで選択したグループを削除できる。なお、UI111、111aでは、グループを選択したことは、例えば、「グループ1」、「グループ2」および「グループなし」のいずれかを選択する入力を受け付けたときに、当該入力により示されるグループが強調表示されることで示されてもよい。
[6.生成処理]
次に、生成部140による異常検知モデルの生成処理について詳細に説明する。
異常検知モデルの生成の一例として、オートエンコーダを用いる場合について図7を用いて説明する。
図7は、実施の形態におけるオートエンコーダを示す図である。
図7に示すように、オートエンコーダは、ニューラルネットワークの一種であり、入力を表す特徴の情報量を次元圧縮により抽出する。オートエンコーダは、入力層および出力層よりも小さい次元の中間層を有する3層以上のニューラルネットワークにおいて、入力特徴ベクトルと出力ベクトルとが同じ値になるように重み付けを決定する機械学習である。
図8は、実施の形態に係る異常検知モデルの生成処理の一例を示すフローチャートである。
生成部140は、オートエンコーダのハイパーパラメータを取得する(S11)。ハイパーパラメータとは、オートエンコーダの中間層のノード数、学習率、ドロップアウト関数のパラメータなどである。ドロップアウトは、オートエンコーダを学習する際に中間ノードの値をランダムに0にするテクニックである。生成部140は、ユーザの入力IF105への入力を受け付けることによりハイパーパラメータを取得してもよいし、予めストレージ103に記憶されているハイパーパラメータをストレージ103から取得してもよいし、外部の機器から通信IF104を用いてハイパーパラメータを取得してもよい。
生成部140は、オートエンコーダで学習する学習用データ211を第2取得部130から取得する(S12)。
生成部140は、オートエンコーダを用いて学習を行わせ、オートエンコーダにおける重みパラメータを調整することで、学習用データ211を適切に圧縮および復元できる重みパラメータを取得する(S13)。生成部140は、取得した重みパラメータをステップS11で取得されたハイパーパラメータが設定されたオートエンコーダに適用することで、異常検知モデルを生成する。
[7.判定処理]
次に、生成した異常検知モデルを用いた判定部160による判定処理について詳細に説明する。
図9は、実施の形態に係る異常検知モデルを用いた判定処理の一例を示すフローチャートである。オートエンコーダを用いて異常の判定を行う。
判定部160は、異常検知モデルDB150から異常検知モデルを読み出す(S21)。判定部160は、例えば、異常検知モデルDB150から学習済のオートエンコーダを読み込む。
判定部160は、スコアが異常であると判定するための第1の閾値を取得する(S22)。判定部160は、例えば、交差検証法を用いて第1の閾値を算出することで、第1の閾値を取得してもよい。交差検証法では、例えば、複数の学習用データ211を4:1に分割し、分割した一部(4:1の4)を学習に用い、残り(4:1の1)を検証に用いる。分割した学習用データ211のうち学習に用いるデータを用いてオートエンコーダを学習させ、かつ、分割した学習用データ211のうち検証に用いるデータを用いて、当該学習により得られたオートエンコーダで異常判定を行い、異常と判定される確率が0.01%程度になるように、判定部160は、第1の閾値を算出してもよい。判定部160は、また、ユーザの入力IF105への入力を受け付けることにより第1の閾値を取得してもよいし、予めストレージ103に記憶されている第1の閾値をストレージ103から取得してもよいし、外部の機器から通信IF104を用いて第1の閾値を取得してもよい。
判定部160は、第2取得部130により取得された診断用データ212を取得する(S23)。
判定部160は、第2取得部130により取得された診断用データ212を学習済のオートエンコーダに入力することでスコアを算出する(S24)。判定部160は、例えば、式1を用いてスコアを算出する。
Figure 2019061565
式1において、xは、オートエンコーダへの入力ベクトルを示し、iは、xのi次元目であることを示し、iは、オートエンコーダの出力ベクトルのi次元目であることを示す。また、式1において、mは、入力ベクトルおよび出力ベクトルの次元数であることを示す。また、式1において、スコアJ(x)は、診断用データをオートエンコーダに入力した場合の出力ベクトルとの2乗平均誤差を示す。
判定部160は、算出したスコアが第1の閾値以上か否かを判定する(S25)。
判定部160は、スコアが第1の閾値以上の場合(S25でYes)、入力された診断用データが異常であると判定し(S26)、判定結果を特定部170へ通知する。
判定部160は、スコアが第1の閾値未満の場合(S25でNo)、入力された診断用データが正常であると判定する(S27)。
特定部170は、算出されたスコアとグループ情報とを用いて異常の原因であるグループを特定する特定処理を行う(S28)。特定処理の詳細は後述する。
[8.特定処理]
次に、異常の原因であるグループを特定する特定処理について、詳細に説明する。
図10は、実施の形態に係る異常の原因であるグループを特定する特定処理の一例を示すフローチャートである。
特定部170は、判定部160においてで異常と判定された診断用データ212のスコアを用いて、異常の原因であるグループを特定する特定処理を行う。式2は、異常の原因であるグループを特定するために使用する損失関数である。
Figure 2019061565
式2において、δは入力ベクトルと同じ次元数を持つ変位ベクトルを示し、λは正則化パラメータを示し、nは変数グループの個数を示し、dは変数グループgに属する変数の数を示す。J(x)はスコアを示す。
損失関数は、式2に示すように、スコアと、グループ正則化による元の入力値からの変位δのL2ノルムをグループごとに足し合わせたスコアとの和として定義される。
式2におけるグループ正則化項は、グループ間ではp=1であり、グループ内ではp=2であるLp正則化を満たす式である。なお、グループ正則化項は、式2に限らずに、グループ間では0<p≦1であり、かつ、グループ内ではp>1であるLp正則化を満たせばよい。
また、式2ではグループ正則化は、パラメータλを掛けることで重み付けされている。
特定部170は、パラメータλを取得する(S31)。特定部170は、パラメータλとして、任意の値を取得してもよいし、交差検証法を用いて算出することで取得してもよい。また、特定部170は、ユーザの入力IF105への入力を受け付けることによりパラメータλを取得してもよいし、予めストレージ103に記憶されているパラメータλをストレージ103から取得してもよいし、外部の機器から通信IF104を用いてパラメータλを取得してもよい。
特定部170は、式2の損失関数の値が極小となる変位ベクトルδを、初期値0として勾配法で探索して算出する(S32)。つまり、特定部170は、判定部160により第1の閾値以上であると判定されたスコアと、グループ情報で示される1以上のグループ毎に正則化することにより得られるグループ正則化項との和で構成される損失関数が極小値となる変位ベクトルδを算出する。
特定部170は、観測値の複数の変数のうちゼロでない変数、もしくは非常に小さな正の数ε(第2の閾値)に対し、絶対値が第2の閾値ε以上の変数を含むグループを異常の原因であるグループであると特定する(S33)。第2の閾値は、0より大きく1未満の値である。
[9.効果など]
本実施の形態に係る異常診断方法によれば、複数の変数を観測した値で構成される観測値において、変数のグループを予め定めておくため、広範な問題に対して高精度に異常の原因となるグループを特定することができる。
また、異常診断方法によれば、オートエンコーダなど、既によい性能を発揮することが知られている異常検知を用いて観測値が異常であるか否かを判定することができる。また、異常検知が出力するスコアを用いて、自然な損失関数を用いた異常診断を行うことが容易にできる。
また、異常診断方法によれば、損失関数が極小値となる変位ベクトルのうち、第2の閾値以上の変数を含むグループを、異常の原因であるグループとして特定するため、効果的に異常の原因であるグループを特定することができる。
また、異常診断方法によれば、グループ正則化項は、グループ間では0<p≦1であり、かつ、グループ内ではp>1であるLp正則化を満たすため、効果的に異常の原因であるグループを特定することができる。
[10.その他の変形例]
なお、本発明を上記の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
(1)
上記の実施の形態では、監視対象として制御システムの構成を説明した。そして、スイッチングハブから得られる観測データを用いて異常判定を実施するものとして説明したが、それだけに限られない。例えば化学プラントにおける種々のセンサから得られる観測値を観測データとして取得し、当該観測データを用いて異常判定を実施しても良い。
(2)
上記の実施の形態に係る異常診断装置100では、ベクトル値への変換の手段として1−of−Nエンコードを利用して数値化するとしたが、エンコードの方法はそれだけに限らない。例えば、非特許文献3にあるようなembeddingを用いる方法や、乱数を用いてエンコードする方法など、特定の次元数の実数値ベクトルに変換する方法が考えられる。これにより、より高精度に異常検知モデルの生成や異常判定を行うことができる。さらに、新たなカテゴリが生じる場合であっても、変数の次元を増やすことなくベクトル化することができる。
(3)
上記の実施の形態に係る異常診断装置100では、変数のグルーピングをユーザからの入力IF105への入力に基づいて設定するとしたが、これに限らない。UI111、111aには、さらに、変数間の相互情報量を示す表示が追加されてもよい。また、ユーザから入力IF105にグルーピングしたいグループ数を示す入力が受け付けられた場合、当該入力で示されるグループ数に応じて、非特許文献4または非特許文献5に記載の方法で自動的にグルーピングしてもよい。
また、変数のグルーピングとして、任意の変数を引数とする関数、例えば、恒等関数が別の変数である場合や、任意の角度θの三角関数であるsinθおよびcosθが別の変数である場合、変数間の関連の大きさに応じてこれらの変数のグルーピングをすればよい。
(4)
上記の実施の形態において、オートエンコーダを用いた異常判定を行ったが、他の方法を用いて異常判定を行ってもよい。例えば、カーネル密度推定によって確率密度関数を推定し、所定の閾値を下回る場合に異常と判定する方法を用いてもよいし、オートエンコーダの代わりに1クラスサポートベクトルマシンまたは変分オートエンコーダを用いて異常判定を行ってもよい。
1クラスサポートベクトルマシンを用いる場合、カーネル法を使って入力ベクトルを特徴空間に写像し、その特徴空間上で正常と異常を識別する境界面を決定することで、異常判定を行う。
変分オートエンコーダを用いる場合、入力データが生成される尤度を算出するため、異常の原因となる変数グループを特定する際に用いる損失関数は、2乗平均誤差ではなく、負の対数尤度などを用いることができる。
他にも、正常だと仮定できるサンプル群と、異常判定対象のサンプル群との間の確率密度の比を推定する密度比推定を使って異常を判定してもよい。この場合、異常診断装置100では、生成部140は、学習用の正常な複数の観測データと、診断用の複数の観測データに基づいて、学習用データと診断用データの確率密度比に基づく異常検知モデルを生成する。つまり、上記実施の形態では、生成部140は、異常なデータを含む観測データ210を学習用データ211として用いているが、確率密度比に基づく異常検知モデルを生成する場合、異常なデータを除いた正常なデータのみの学習用データ211を用いる点と、さらに診断用データ212を用いる点とが異なる。また、判定部160は、診断用の複数の観測データに関し、生成部140により生成された確率密度比に基づく異常検知モデルを用いてスコアを算出する。そして、判定部160は、算出したスコアが予め定められた第1の閾値以上の場合、取得した複数の観測値が異常であると判定し、算出したスコアが第1の閾値未満の場合、取得した複数の観測値が異常でないと判定する。
(5)
上記の実施の形態では、異常の原因となる変数グループを特定する方法として、グループ正則化を用いたが、その他にも様々な方法が考えられる。例えば、オートエンコーダの出力値の2乗平均誤差が所定の値を超えている変数グループを異常の原因となる変数グループと特定してもよいし、特定の変数グループ以外の変数を固定し、特定の変数グループのみを変数とみなしてスコアを極小となる値を勾配法で求め、最もスコアが小さくなる場合の変数グループを異常の原因となる変数グループであるとしてもよい。
なお、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記各実施の形態の異常診断方法などを実現するソフトウェアは、次のようなプログラムである。
すなわち、このプログラムは、コンピュータに、監視対象の状態を観測することにより得られた、前記状態を示す複数の変数の値で構成される観測値を用いて、当該観測値が異常であるか否かを診断する異常診断装置が実行する異常診断方法であって、前記異常診断装置は、プロセッサおよびメモリを備え、前記メモリは、複数の前記観測値を用いた学習により生成された異常検知モデルを記憶しており、前記プロセッサは、前記複数の変数のうち互いに関連のある少なくとも2つの変数の組み合わせでそれぞれが構成される1以上のグループを示すグループ情報を取得し、前記観測値を取得し、前記メモリから前記異常検知モデルを読み出して、読み出した前記異常検知モデルを用いて前記観測値が異常であるか否かを判定し、前記観測値が異常であると判定した場合、当該観測値と取得した前記グループ情報で示される前記1以上のグループとに基づいて、当該観測値の前記1以上のグループのうち、異常の原因であるグループを特定する異常診断方法を実行させる。
以上、本発明の一つまたは複数の態様に係る異常診断方法および異常診断装置について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の一つまたは複数の態様の範囲内に含まれてもよい。
本開示は、多次元情報における異常に寄与する変数を特定する場合に有用である。
1 異常診断システム
100 異常診断装置
101 CPU
102 メインメモリ
103 ストレージ
104 通信IF
105 入力IF
106 ディスプレイ
110 第1取得部
111、111a UI
112 項目
113 グループ追加ボタン
114 グループ削除ボタン
115 グループなし
120 グループ情報DB
130 第2取得部
140 生成部
150 異常検知モデルDB
160 判定部
170 特定部
200 サーバ
210 観測データ
211 学習用データ
212 診断用データ
300 監視対象
310 制御システム
311 ルータ
312 スイッチングハブ
313 管理端末
314 サーバ
315 PLC
316 センサ

Claims (7)

  1. 監視対象の状態を観測することにより得られた、前記状態を示す複数の変数の値で構成される観測値を用いて、当該観測値が異常であるか否かを診断する異常診断装置が実行する異常診断方法であって、
    前記異常診断装置は、プロセッサおよびメモリを備え、
    前記メモリは、複数の前記観測値を用いた学習により生成された異常検知モデルを記憶しており、
    前記プロセッサは、
    前記複数の変数のうち互いに関連のある少なくとも2つの変数の組み合わせでそれぞれが構成される1以上のグループを示すグループ情報を取得し、
    前記観測値を取得し、
    前記メモリから前記異常検知モデルを読み出して、読み出した前記異常検知モデルを用いて前記観測値が異常であるか否かを判定し、
    前記観測値が異常であると判定した場合、当該観測値と取得した前記グループ情報で示される前記1以上のグループとに基づいて、当該観測値の前記1以上のグループのうち、異常の原因であるグループを特定する
    異常診断方法。
  2. 前記異常検知モデルは、前記複数の観測値を用いて、前記学習としてのオートエンコーダ、変分オートエンコーダ、および、1クラスサポートベクトルマシンのうちの少なくとも1つによって生成されたモデルである
    請求項1に記載の異常診断方法。
  3. 前記観測値が異常であるか否かの判定では、
    前記異常検知モデルに前記観測値を入力することでスコアを算出し、
    算出した前記スコアが予め定められた第1の閾値以上の場合、取得した前記観測値が異常であると判定し、
    算出した前記スコアが前記第1の閾値未満の場合、取得した前記複数の観測値が異常でないと判定する
    請求項2に記載の異常診断方法。
  4. 前記異常検知モデルは、学習用の正常な複数の前記観測値と、診断用の複数の前記観測値との確率密度比に基づいて生成されたモデルであり、
    前記観測値の取得では、複数の前記観測値を取得し、
    前記観測値が異常であるか否かの判定では、
    前記メモリから読み出した前記異常検知モデルと、取得した前記複数の観測値とを用いてスコアを算出し、
    算出した前記スコアが予め定められた第1の閾値以上の場合、取得した前記複数の観測値が異常であると判定し、
    算出した前記スコアが前記第1の閾値未満の場合、取得した前記複数の観測値が異常でないと判定する
    請求項1に記載の異常診断方法。
  5. 前記グループの特定では、
    算出した前記スコアと、前記グループ情報で示される前記1以上のグループ毎に正則化することにより得られるグループ正則化項との和で構成される損失関数が極小値となる変位ベクトルを算出し、
    算出した前記変位ベクトルのうち、1未満の第2の閾値以上の変数を含むグループを、異常の原因であるグループとして特定する、
    請求項3または4のいずれか1項に記載の異常診断方法。
  6. 前記グループ正則化項は、グループ間では0<p≦1であり、かつ、グループ内ではp>1であるLp正則化を満たす
    請求項5に記載の異常診断方法。
  7. 監視対象の状態を観測することにより得られた、前記状態を示す複数の変数の値で構成される観測値を用いて、当該観測値が異常であるか否かを診断する異常診断装置であって、
    プロセッサおよびメモリを備え、
    前記メモリは、複数の前記観測値を用いた学習により生成された異常検知モデルを記憶しており、
    前記プロセッサは、
    前記複数の変数のうち互いに関連のある少なくとも2つの変数の組み合わせによりそれぞれが構成される1以上のグループを示すグループ情報を取得し、
    前記観測値を取得し、
    前記メモリから前記異常検知モデルを読み出して、読み出した前記異常検知モデルを用いて前記観測値が異常であるか否かを判定し、
    前記観測値が異常であると判定した場合、取得した前記観測値と取得した前記グループ情報で示される前記1以上のグループとに基づいて、前記観測値の前記1以上のグループのうち、異常の原因であるグループを特定する
    異常診断装置。
JP2017186889A 2017-09-27 2017-09-27 異常診断方法および異常診断装置 Active JP7010641B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2017186889A JP7010641B2 (ja) 2017-09-27 2017-09-27 異常診断方法および異常診断装置
CN201811086036.0A CN109558293B (zh) 2017-09-27 2018-09-18 异常诊断方法以及异常诊断装置
US16/136,408 US10817394B2 (en) 2017-09-27 2018-09-20 Anomaly diagnosis method and anomaly diagnosis apparatus
EP18195899.2A EP3462267B1 (en) 2017-09-27 2018-09-21 Anomaly diagnosis method and anomaly diagnosis apparatus
JP2022003718A JP7325557B2 (ja) 2017-09-27 2022-01-13 異常診断方法および異常診断装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017186889A JP7010641B2 (ja) 2017-09-27 2017-09-27 異常診断方法および異常診断装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022003718A Division JP7325557B2 (ja) 2017-09-27 2022-01-13 異常診断方法および異常診断装置

Publications (2)

Publication Number Publication Date
JP2019061565A true JP2019061565A (ja) 2019-04-18
JP7010641B2 JP7010641B2 (ja) 2022-01-26

Family

ID=63678465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017186889A Active JP7010641B2 (ja) 2017-09-27 2017-09-27 異常診断方法および異常診断装置

Country Status (4)

Country Link
US (1) US10817394B2 (ja)
EP (1) EP3462267B1 (ja)
JP (1) JP7010641B2 (ja)
CN (1) CN109558293B (ja)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111412978A (zh) * 2020-04-22 2020-07-14 北京化工大学 一种基于无故障振动信号的往复机械异常检测方法
JPWO2020250730A1 (ja) * 2019-06-11 2020-12-17
JP2021039529A (ja) * 2019-09-03 2021-03-11 株式会社小松製作所 学習済みモデルの製造方法、生産システム、異常判定装置、及び異常判定方法
JP2021051200A (ja) * 2019-09-25 2021-04-01 キヤノン株式会社 判断装置
JP6853986B1 (ja) * 2020-03-04 2021-04-07 株式会社沢田テクニカルサービス 処理方法、回転機の診断方法、コンピュータプログラム、学習モデル生成方法及び診断装置
JP2021173595A (ja) * 2020-04-23 2021-11-01 株式会社Nttドコモ 構造物判定システム
JP2022042406A (ja) * 2020-09-02 2022-03-14 三菱電機株式会社 伝送装置
TWI776473B (zh) * 2020-04-27 2022-09-01 日商三菱電機股份有限公司 異常診斷方法、異常診斷裝置及異常診斷程式
WO2022210061A1 (ja) * 2021-03-29 2022-10-06 株式会社日立産機システム 監視装置及び方法
JP2023502394A (ja) * 2019-11-20 2023-01-24 ナノトロニクス イメージング インコーポレイテッド 高度な攻撃からの産業生産の保護
WO2023089773A1 (ja) * 2021-11-19 2023-05-25 ファナック株式会社 異常診断装置、異常診断システム、及び記憶媒体
JP7519960B2 (ja) 2021-06-22 2024-07-22 ルネサスエレクトロニクス株式会社 故障予知装置および故障予知方法
US12111922B2 (en) 2020-02-28 2024-10-08 Nanotronics Imaging, Inc. Method, systems and apparatus for intelligently emulating factory control systems and simulating response data
US12111923B2 (en) 2019-10-08 2024-10-08 Nanotronics Imaging, Inc. Dynamic monitoring and securing of factory processes, equipment and automated systems
US12125236B2 (en) 2021-03-09 2024-10-22 Nanotronics Imaging, Inc. Systems, methods, and media for manufacturing processes

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108389539B (zh) * 2018-03-15 2020-06-16 京东方科技集团股份有限公司 移位寄存器单元、驱动方法、栅极驱动电路及显示装置
JP7021000B2 (ja) * 2018-05-24 2022-02-16 株式会社東芝 情報処理装置、プログラムおよび情報処理方法
JP7036697B2 (ja) * 2018-09-27 2022-03-15 株式会社日立製作所 監視システム及び監視方法
US20210392109A1 (en) * 2018-10-18 2021-12-16 Sumitomo Electric Industries, Ltd. Detection device, gateway device, detection method, and detection program
US11188643B2 (en) * 2018-12-27 2021-11-30 Intel Corporation Methods and apparatus for detecting a side channel attack using hardware performance counters
US10896574B2 (en) * 2018-12-31 2021-01-19 Playtika Ltd System and method for outlier detection in gaming
JP7374453B2 (ja) * 2019-03-28 2023-11-07 株式会社イシダ 学習済みモデル生成方法、学習済みモデル生成装置、商品判別方法、商品判別装置、商品判別システム及び計量装置
WO2020217644A1 (ja) * 2019-04-22 2020-10-29 パナソニックIpマネジメント株式会社 学習済みモデルの生成方法、保全表示装置、及びプログラム
CN110098983B (zh) * 2019-05-28 2021-06-04 上海优扬新媒信息技术有限公司 一种异常流量的检测方法及装置
JP2021009441A (ja) * 2019-06-28 2021-01-28 ルネサスエレクトロニクス株式会社 異常検知システム及び異常検知プログラム
JP7334511B2 (ja) * 2019-07-05 2023-08-29 オムロン株式会社 監視装置、監視方法、監視プログラム、および、記録媒体
JP2021015573A (ja) * 2019-07-16 2021-02-12 ファナック株式会社 異常判定装置及び異常判定システム
EP3989492B1 (en) * 2019-07-23 2024-01-03 Nippon Telegraph And Telephone Corporation Abnormality detection device, abnormality detection method, and abnormality detection program
CN112333128B (zh) * 2019-08-05 2021-09-17 四川大学 一种基于自编码器的Web攻击行为检测系统
US20220206888A1 (en) * 2019-08-28 2022-06-30 Mitsubishi Electric Corporation Abnormal portion detecting device, method of detecting abnormal portion, and recording medium
JP7359608B2 (ja) * 2019-09-12 2023-10-11 アズビル株式会社 情報提示装置、情報提示方法、および情報提示システム
MX2022003138A (es) * 2019-09-17 2022-11-09 Nissan Motor Dispositivo de determinación de anomalías y método de determinación de anomalías.
CN110806733B (zh) * 2019-10-30 2021-09-21 中国神华能源股份有限公司国华电力分公司 火电厂设备监测方法、装置及电子设备
JP6791347B1 (ja) * 2019-12-19 2020-11-25 トヨタ自動車株式会社 モデル診断装置及びモデル診断システム
CN111120348A (zh) * 2019-12-25 2020-05-08 中国石化销售股份有限公司华南分公司 基于支持向量机概率密度估计的离心泵故障预警方法
US11249861B2 (en) 2020-02-06 2022-02-15 Bank Of America Corporation Multi-layered disaster recovery manager
JP2021152762A (ja) * 2020-03-24 2021-09-30 株式会社Screenホールディングス 学習済みモデル生成方法、学習済みモデル、異常要因推定装置、基板処理装置、異常要因推定方法、学習方法、学習装置、及び、学習データ作成方法
JP7454419B2 (ja) * 2020-03-25 2024-03-22 三菱重工業株式会社 プラント運転データ監視装置及び方法
CN111612300B (zh) * 2020-04-16 2023-10-27 国网甘肃省电力公司信息通信公司 一种基于深度混合云模型的场景异常感知指标计算方法及系统
CN114827636A (zh) * 2021-01-18 2022-07-29 武汉斗鱼网络科技有限公司 一种视频播放异常的诊断方法及相关装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011227706A (ja) * 2010-04-20 2011-11-10 Hitachi Ltd 異常検知・診断方法、異常検知・診断システム、及び異常検知・診断プログラム
JP2011243118A (ja) * 2010-05-20 2011-12-01 Hitachi Ltd 監視診断装置および監視診断方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS518116B1 (ja) 1969-04-01 1976-03-13
JPS5811683B2 (ja) 1974-10-07 1983-03-04 日本コロムビア株式会社 トレ−シングヒズミホセイソウチ
JPS5858839B2 (ja) 1976-05-14 1983-12-27 ニチコン株式会社 電気部品の取付足の固定方法
US20070028219A1 (en) * 2004-10-15 2007-02-01 Miller William L Method and system for anomaly detection
US7565340B2 (en) * 2006-01-09 2009-07-21 The State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Oregon State University Methods for assisting computer users performing multiple tasks
US8014880B2 (en) * 2006-09-29 2011-09-06 Fisher-Rosemount Systems, Inc. On-line multivariate analysis in a distributed process control system
US7765020B2 (en) * 2007-05-04 2010-07-27 Applied Materials, Inc. Graphical user interface for presenting multivariate fault contributions
DE102008022459A1 (de) * 2008-05-08 2009-11-12 Mtu Aero Engines Gmbh Vorrichtung und Verfahren zur Überwachung einer Gasturbine
WO2010082322A1 (ja) 2009-01-14 2010-07-22 株式会社日立製作所 装置異常監視方法及びシステム
WO2011046869A2 (en) * 2009-10-12 2011-04-21 Abbott Patrick D Targeted equipment monitoring system and method for optimizing equipment reliability
JP5811683B2 (ja) 2011-08-18 2015-11-11 株式会社Ihi 異常診断装置
US8832497B2 (en) * 2012-02-07 2014-09-09 A.L.D. Advanced Logistics Development Ltd Methods, apparatus and systems for performing dynamic fault tree analysis
CN102680425B (zh) * 2012-03-21 2014-08-06 西安交通大学 多组分气体傅立叶变换光谱分析的多分析模型信息融合方法
JP5858839B2 (ja) 2012-03-26 2016-02-10 住友重機械工業株式会社 作業機械の異常診断装置
JP6076751B2 (ja) 2013-01-22 2017-02-08 株式会社日立製作所 異常診断方法およびその装置
EP2987040B1 (en) * 2013-04-19 2019-10-09 BAE SYSTEMS plc Diagnosing combinations of failures in a system
WO2015053773A1 (en) * 2013-10-10 2015-04-16 Ge Intelligent Platforms, Inc. Correlation and annotation of time series data sequences to extracted or existing discrete data
JP5753286B1 (ja) * 2014-02-05 2015-07-22 株式会社日立パワーソリューションズ 情報処理装置、診断方法、およびプログラム
CN104239694B (zh) * 2014-08-28 2016-11-23 北京交通大学 一种城轨列车转向架的故障预测与视情维修方法
US9699049B2 (en) * 2014-09-23 2017-07-04 Ebay Inc. Predictive model for anomaly detection and feedback-based scheduling
CN106570513B (zh) * 2015-10-13 2019-09-13 华为技术有限公司 大数据网络系统的故障诊断方法和装置
US20190213446A1 (en) * 2016-06-30 2019-07-11 Intel Corporation Device-based anomaly detection using random forest models
US10216558B1 (en) * 2016-09-30 2019-02-26 EMC IP Holding Company LLC Predicting drive failures
US10612999B2 (en) * 2016-10-03 2020-04-07 International Business Machines Corporation Diagnostic fault detection using multivariate statistical pattern library
US10565077B2 (en) * 2017-11-29 2020-02-18 International Business Machines Corporation Using cognitive technologies to identify and resolve issues in a distributed infrastructure
US10187326B1 (en) * 2018-02-22 2019-01-22 Capital One Services, Llc Real-time analysis of multidimensional time series data to identify an operational anomaly

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011227706A (ja) * 2010-04-20 2011-11-10 Hitachi Ltd 異常検知・診断方法、異常検知・診断システム、及び異常検知・診断プログラム
JP2011243118A (ja) * 2010-05-20 2011-12-01 Hitachi Ltd 監視診断装置および監視診断方法

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020250730A1 (ja) * 2019-06-11 2020-12-17
WO2020250730A1 (ja) * 2019-06-11 2020-12-17 日本電気株式会社 不正検知装置、不正検知方法および不正検知プログラム
JP2021039529A (ja) * 2019-09-03 2021-03-11 株式会社小松製作所 学習済みモデルの製造方法、生産システム、異常判定装置、及び異常判定方法
JP7263185B2 (ja) 2019-09-03 2023-04-24 株式会社小松製作所 学習済みモデルの製造方法、生産システム、異常判定装置、及び異常判定方法
JP2021051200A (ja) * 2019-09-25 2021-04-01 キヤノン株式会社 判断装置
JP7373340B2 (ja) 2019-09-25 2023-11-02 キヤノン株式会社 判断装置
US12111923B2 (en) 2019-10-08 2024-10-08 Nanotronics Imaging, Inc. Dynamic monitoring and securing of factory processes, equipment and automated systems
JP2023502394A (ja) * 2019-11-20 2023-01-24 ナノトロニクス イメージング インコーポレイテッド 高度な攻撃からの産業生産の保護
JP7389518B2 (ja) 2019-11-20 2023-11-30 ナノトロニクス イメージング インコーポレイテッド 高度な攻撃からの産業生産の保護
US12111922B2 (en) 2020-02-28 2024-10-08 Nanotronics Imaging, Inc. Method, systems and apparatus for intelligently emulating factory control systems and simulating response data
JP6853986B1 (ja) * 2020-03-04 2021-04-07 株式会社沢田テクニカルサービス 処理方法、回転機の診断方法、コンピュータプログラム、学習モデル生成方法及び診断装置
JP2021140403A (ja) * 2020-03-04 2021-09-16 株式会社沢田テクニカルサービス 処理方法、回転機の診断方法、コンピュータプログラム、学習モデル生成方法及び診断装置
CN111412978A (zh) * 2020-04-22 2020-07-14 北京化工大学 一种基于无故障振动信号的往复机械异常检测方法
JP2021173595A (ja) * 2020-04-23 2021-11-01 株式会社Nttドコモ 構造物判定システム
JP7451280B2 (ja) 2020-04-23 2024-03-18 株式会社Nttドコモ 構造物判定システム
TWI776473B (zh) * 2020-04-27 2022-09-01 日商三菱電機股份有限公司 異常診斷方法、異常診斷裝置及異常診斷程式
JP2022042406A (ja) * 2020-09-02 2022-03-14 三菱電機株式会社 伝送装置
US12125236B2 (en) 2021-03-09 2024-10-22 Nanotronics Imaging, Inc. Systems, methods, and media for manufacturing processes
WO2022210061A1 (ja) * 2021-03-29 2022-10-06 株式会社日立産機システム 監視装置及び方法
JP7550093B2 (ja) 2021-03-29 2024-09-12 株式会社日立産機システム 監視装置及び方法
JP7519960B2 (ja) 2021-06-22 2024-07-22 ルネサスエレクトロニクス株式会社 故障予知装置および故障予知方法
WO2023089773A1 (ja) * 2021-11-19 2023-05-25 ファナック株式会社 異常診断装置、異常診断システム、及び記憶媒体

Also Published As

Publication number Publication date
CN109558293B (zh) 2023-10-13
US10817394B2 (en) 2020-10-27
CN109558293A (zh) 2019-04-02
US20190095300A1 (en) 2019-03-28
JP7010641B2 (ja) 2022-01-26
EP3462267B1 (en) 2021-10-27
EP3462267A1 (en) 2019-04-03

Similar Documents

Publication Publication Date Title
JP7010641B2 (ja) 異常診断方法および異常診断装置
Awotunde et al. Intrusion Detection in Industrial Internet of Things Network‐Based on Deep Learning Model with Rule‐Based Feature Selection
US11895150B2 (en) Discovering cyber-attack process model based on analytical attack graphs
Huong et al. Federated learning-based explainable anomaly detection for industrial control systems
US7647524B2 (en) Anomaly detection
US20170132523A1 (en) Periodicity Analysis on Heterogeneous Logs
CN110909811A (zh) 一种基于ocsvm的电网异常行为检测、分析方法与系统
WO2017087440A1 (en) Anomaly fusion on temporal casuality graphs
JP6183450B2 (ja) システム分析装置、及び、システム分析方法
CN109040027B (zh) 基于灰色模型的网络脆弱性节点的主动预测方法
Raja et al. Combined analysis of support vector machine and principle component analysis for IDS
CN107679626A (zh) 机器学习方法、装置、系统、存储介质及设备
Imamverdiyev et al. Anomaly detection in network traffic using extreme learning machine
Wang et al. Incremental causal graph learning for online root cause analysis
CN116628554B (zh) 一种工业互联网数据异常的检测方法、系统和设备
CN117708738A (zh) 基于多模态变量相关性的传感器时序异常检测方法及系统
Awad et al. Addressing imbalanced classes problem of intrusion detection system using weighted extreme learning machine
Xu et al. HTtext: A TextCNN-based pre-silicon detection for hardware Trojans
Wang et al. Multi‐block principal component analysis based on variable weight information and its application to multivariate process monitoring
JP7325557B2 (ja) 異常診断方法および異常診断装置
CN113079168B (zh) 一种网络异常检测方法、装置及存储介质
JPWO2018142694A1 (ja) 特徴量生成装置、特徴量生成方法及びプログラム
Lijun et al. An intuitionistic calculus to complex abnormal event recognition on data streams
Naukudkar et al. Enhancing performance of security log analysis using correlation-prediction technique
Cook Anomaly diagnosis in industrial control systems for digital forensics

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210709

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220113

R150 Certificate of patent or registration of utility model

Ref document number: 7010641

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150