(57)【要約】【課題】高い精度で文脈的異常検知を行う監視装置、監視方法および監視プログラムを提供する。【解決手段】本発明の実施形態としての監視装置は、異常の検知対象となるコンテンツ変数と、前記コンテンツ変数が得られた条件を示すコンテキスト変数に分類された入力データについて、第１期間に得られた基準データと、第２期間に得られた判定対象データに含まれる前記コンテキスト変数の値に基づき、前記基準データを正常データとして前記判定対象データの異常検知を行うときに使用する変数から除外される、前記コンテキスト変数を決定する、変数選択部を備える。【選択図】図１
2019121162.tif 000002
【特許請求の範囲】
【請求項１】
異常の検知対象となるコンテンツ変数と、前記コンテンツ変数が得られた条件を示すコンテキスト変数とを含む基準データと、前記コンテンツ変数と前記コンテキスト変数とを含む判定対象データに含まれる前記コンテキスト変数の値に基づき、前記判定対象データの異常検知を行うときに使用するコンテキスト変数を前記コンテキスト変数から選択する、変数選択部
を備えた監視装置。
【請求項２】
前記基準データは、前記検知対象が正常状態にある期間において得られたデータである、
請求項１に記載の監視装置。
【請求項３】
前記変数選択部は、前記基準データに係る前記コンテキスト変数と前記判定対象データに係る前記コンテキスト変数を結合した第１データについて、分類を実行し、計算された重要度が第１しきい値以下となった前記コンテキスト変数を、前記異常検知で使用する前記コンテキスト変数に選択する、
請求項１または２に記載の監視装置。
【請求項４】
前記変数選択部は、前記異常検知に使用される前記コンテキスト変数と、前記基準データに係る前記コンテンツ変数と前記判定対象データに係る前記コンテンツ変数を結合した第２データについて、分類を実行し、計算された重要度が第２しきい値以上となった前記コンテンツ変数を、前記異常検知で使用する前記コンテンツ変数に選択する、
請求項３に記載の監視装置。
【請求項５】
前記変数選択部は、アンサンブル学習によって前記分類を実行する、
請求項３または４に記載の監視装置。
【請求項６】
前記アンサンブル学習はランダムフォレストである、
請求項５に記載の監視装置。
【請求項７】
前記変数選択部が計算する、前記重要度はＰｅｒｍｕｔａｔｉｏｎ  ｉｍｐｏｒｔａｎｃｅまたはＧｉｎｉ  Ｉｍｐｏｒｔａｎｃｅのいずれかである、
請求項３ないし６のいずれか一項に記載の監視装置。
【請求項８】
前記変数選択部は、前記基準データと前記判定対象データにおける同一の前記コンテキスト変数について統計的検定を行い、有意差がない前記コンテキスト変数を、前記異常検知で使用する前記コンテキスト変数に選択する、
請求項１または２に記載の監視装置。
【請求項９】
前記統計的検定はノンパラメトリックな検定手法である、
請求項８に記載の監視装置。
【請求項１０】
前記ノンパラメトリックな検定手法は、マン・ホイットニーのＵ検定である、
請求項９に記載の監視装置。
【請求項１１】
前記基準データと前記判定対象データに含まれる変数について、前記コンテンツ変数と前記コンテキスト変数への分類を実行する、収集部を備えた
請求項１ないし１０のいずれか一項に記載の監視装置。
【請求項１２】
前記変数選択部が選択した、前記コンテキスト変数および前記コンテンツ変数を含み、前記変数選択部が選択しなかった、前記コンテキスト変数および前記コンテンツ変数が除外された前記基準データに基づき、前記変数選択部が選択した前記コンテキスト変数および前記コンテンツ変数を含み、前記変数選択部が選択しなかった前記コンテキスト変数および前記コンテンツ変数が除外された前記判定対象データの異常検知を実行する、異常検知部を備えた
請求項１ないし１１のいずれか一項に記載の監視装置。
【請求項１３】
前記異常検知部による異常検知結果を表示する、表示部を備えた
請求項１２に記載の監視装置。
【請求項１４】
前記表示部は、少なくとも前記変数選択部が選択しなかった前記コンテキスト変数または前記変数選択部が選択しなかった前記コンテンツ変数のいずれかを表示する、
請求項１３に記載の監視装置。
【請求項１５】
異常の検知対象となるコンテンツ変数と、前記コンテンツ変数が得られた条件を示すコンテキスト変数とを含む基準データと、前記コンテンツ変数と前記コンテキスト変数とを含む判定対象データに含まれる前記コンテキスト変数の値に基づき、前記判定対象データの異常検知を行うときに使用するコンテキスト変数を前記コンテキスト変数から選択するステップと、  
選択された、前記コンテキスト変数を含み、前記変数選択部が選択しなかった、前記コンテキスト変数が除外された前記基準データに基づき、前記変数選択部が選択した前記コンテキスト変数を含み、前記変数選択部が選択しなかった前記コンテキスト変数が除外された前記判定対象データの異常検知を実行するステップと、
少なくとも選択されなかった前記コンテキスト変数または異常検知結果のいずれかを表示するステップと
を含む監視方法。
【請求項１６】
異常の検知対象となるコンテンツ変数と、前記コンテンツ変数が得られた条件を示すコンテキスト変数とを含む基準データと、前記コンテンツ変数と前記コンテキスト変数とを含む判定対象データに含まれる前記コンテキスト変数の値に基づき、前記判定対象データの異常検知を行うときに使用するコンテキスト変数を前記コンテキスト変数から選択するステップと、  
選択された、前記コンテキスト変数を含み、前記変数選択部が選択しなかった、前記コンテキスト変数が除外された前記基準データに基づき、前記変数選択部が選択した前記コンテキスト変数を含み、前記変数選択部が選択しなかった前記コンテキスト変数が除外された前記判定対象データの異常検知を実行するステップと、
少なくとも選択されなかった前記コンテキスト変数または異常検知結果のいずれかを表示するステップと
をコンピュータに実行させる監視プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、監視装置、監視方法および監視プログラムに関する。
【背景技術】
【０００２】
異常の検知が行われる変数と、計測値が得られた条件、状況や背景など（ｃｏｎｔｅｘｔ：コンテキスト）を表現する変数を区別する、文脈的異常検知（ｃｏｎｔｅｘｔｕａｌ  ａｎｏｍａｌｙ  ｄｅｔｅｃｔｉｏｎ）と呼ばれる手法を使うと、高い精度の異常検知を行うことができる。正常／異常属性がラベル付けされ、充分なサンプル数を含む教師データがあれば、異常検知に寄与する変数の選択を行うことができる。
【０００３】
しかし、過去の計測値が多く得られていない、または異常発生率が低いなどの理由で正常状態におけるデータしか用意できていない場合がある。このような場合、異常検知への寄与度を基準に変数を行うことは困難である。正常状態におけるデータしかない状況でも、文脈的異常検知の検知精度を高める技術の開発が求められている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｍ．  Ａ．  Ｈａｙｅｓ  ａｎｄ  Ｍ．  Ａ．  Ｍ．  Ｃａｐｒｅｔｚ，  “Ｃｏｎｔｅｘｔｕａｌ  Ａｎｏｍａｌｙ  Ｄｅｔｅｃｔｉｏｎ  ｉｎ  Ｂｉｇ  Ｓｅｎｓｏｒ  Ｄａｔａ，”  ２０１４  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｇｒｅｓｓ  ｏｎ  Ｂｉｇ  Ｄａｔａ，  Ａｎｃｈｏｒａｇｅ，  ＡＫ，  ２０１４，  ｐｐ．  ６４−７１．
【非特許文献２】Ｘ．  Ｓｏｎｇ，  Ｍ．  Ｗｕ，  Ｃ．  Ｊｅｒｍａｉｎｅ  ａｎｄ  Ｓ．  Ｒａｎｋａ，  “Ｃｏｎｄｉｔｉｏｎａｌ  Ａｎｏｍａｌｙ  Ｄｅｔｅｃｔｉｏｎ，”  ｉｎ  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｋｎｏｗｌｅｄｇｅ  ａｎｄ  Ｄａｔａ  Ｅｎｇｉｎｅｅｒｉｎｇ，  ｖｏｌ．  １９，  ｎｏ．  ５，  ｐｐ． ６３１−６４５，  Ｍａｙ  ２００７．
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施形態は、高い精度で文脈的異常検知を行う監視装置、監視方法および監視プログラムを提供する。
【課題を解決するための手段】
【０００６】
本発明の実施形態としての監視装置は、異常の検知対象となるコンテンツ変数と、前記コンテンツ変数が得られた条件を示すコンテキスト変数に分類された入力データについて、第１期間に得られた基準データと、第２期間に得られた判定対象データに含まれる前記コンテキスト変数の値に基づき、前記基準データを正常データとして前記判定対象データの異常検知を行うときに使用する変数から除外される、前記コンテキスト変数を決定する、変数選択部を備える。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態に係るシステム全体の構成例を示す図。
【図２】コンテキストデータの一例を示した図。
【図３】コンテンツデータの一例を示した図。
【図４】コンテキストデータの一例を示した図。
【図５】コンテンツデータの一例を示した図。
【図６】データの前処理結果および文脈的異常検知結果の例を示した図。
【図７】監視装置に係るハードウェア構成の例を示す図。
【図８】監視装置による処理の例を示したフローチャート。
【発明を実施するための形態】
【０００８】
以下、図面を参照しながら、本発明の実施形態について説明する。また、図面において同一の構成要素は、同じ番号を付し、説明は、適宜省略する。
【０００９】
（第１の実施形態）
図１は、第１の実施形態に係る監視装置の構成例を示す図である。
【００１０】
最初に本実施形態に係る監視装置の概要について説明する。図１には、監視装置１が示されている。監視装置１は、データに基づき文脈的異常検知を行うことができる。以下では、データとして物理的なセンサから得られた計測値を使った場合を例に説明するが、適用対象とされるデータはマーケティングデータ、経済指標、情報システムのログデータ、臨床データなどであってもよく、種類については特に問わない。
【００１１】
監視装置１は、データに含まれる変数をコンテンツ変数と、コンテキスト変数に分類し、文脈的異常検知を行う。コンテンツ変数（内容変数）とは、異常の検知対象となる変数のことをいう。コンテキスト変数（文脈変数）とは、コンテンツ変数が得られた条件、状況、背景など（ｃｏｎｔｅｘｔ：コンテキスト）を示す変数のことをいう。
【００１２】
監視装置１は、文脈的異常検知の精度を高めるために、データ中のすべての変数を異常検知に使わず、一部の変数のみを選択することができる。変数選択は、異常検知をする前の前処理において実行される。コンテキスト変数のみについて変数選択を行うこともできるし、コンテキスト変数とコンテンツ変数の両方について変数選択を行ってもよい。
【００１３】
監視装置１は、変数選択を行う前に、監視対象が正常状態にあるときの期間に得られたデータであると推定される基準データと、異常検知の対象期間に得られた判定対象データを用意する。基準データと判定対象データは、いずれもコンテンツ変数とコンテキスト変数を含む。
【００１４】
基準データと判定対象データの間の識別に寄与する程度に基づき、異常検知に使用する変数を選ぶ。以降では、変数の識別に寄与する程度を、識別寄与度とよぶ。識別寄与度は、ランダムフォレストなどの識別器を使って計算する。また、変数の選択は統計的検定などを使って行ってもよい。コンテキスト変数の変数選択を行う場合、識別寄与度が小さい変数を選択する。コンテンツ変数の変数選択を行う場合、識別寄与度が大きい変数を選択する。
【００１５】
最後に、監視装置１は選択された（除外されなかった）変数に基づき、文脈的異常検知を行い、結果をディスプレイなどに表示する。これにより、異常検知結果の検証や装置などの保守点検作業などを行うことができる。
【００１６】
次に、監視装置１の各構成要素について説明する。
【００１７】
図１の監視装置１は、収集部２と、コンテキストデータベース（コンテキストＤＢ）３と、コンテンツデータベース（コンテンツＤＢ）４と、変数選択部５と、異常検知部６と、表示部７とを備えている。コンテキストデータベース３は、基準データ３ａと、判定対象データ３ｂとを含む。コンテンツデータベース４は、基準データ４ａと、判定対象データ４ｂとを含む。
【００１８】
収集部２は、外部の装置またはシステムなどからデータを収集し、コンテキストデータベース３またはコンテンツデータベース４に保存する。収集部２は、電気通信回線１０を介して外部の装置やシステムに接続されている。電気通信回線１０は、有線の通信媒体であってもよいし、無線であってもよい。有線の通信媒体の例としては、光ファイバ、ＬＡＮケーブル、電話回線、同軸ケーブルなどがあるが、種類については特に問わない。収集部２が用いる通信規格の例としては、Ｅｔｈｅｒｎｅｔ、無線ＬＡＮ、ＰＣＩ  Ｅｘｐｒｅｓｓ、ＵＳＢ、ＵＡＲＴ、ＳＰＩ、ＳＤＩＯ、シリアルポート、Ｂｌｕｅｔｏｏｔｈなどがあるが、その他の規格であってもよい。
【００１９】
外部の装置の例としては、空調機器、製造装置、発電所、各種の機械、移動体、電子機器、観測機器、情報通信端末などが挙げられるが、どのような装置であってもよい。外部の装置から収集されるデータの例としては、センサの計測値があるが、その他の種類のデータであってもよい。センサの計測値は物理量であってもよいし、設定値やステータスなどであってもよい。外部のシステムとしては、センサネットワーク、データベースサーバ、ウェブサーバ、ウェブサービスなどがあるが、どのようなシステムであってもよい。
【００２０】
収集部２は、収集したデータに含まれるコンテキスト変数をコンテキストデータベース３に保存する。また、収集部２は、収集したデータに含まれるコンテンツ変数をコンテンツデータベース４に保存する。あらかじめ外部の装置で変数に対しコンテキスト変数またはコンテンツ変数のラベル付けを行ってもよい。
【００２１】
また、収集部２で変数をコンテキスト変数またはコンテンツ変数に分類してもよい。変数の分類は、センサに付与された名称やデータ系列名などをパターンマッチングや自然言語処理などによって解析して行ってもよい。例えば、名称に“ｃｏｎｆｉｇ”、“ｓｔａｔｕｓ”などの文字列を含む変数は装置の設定や状態に関係している可能性が高いため、コンテキスト変数に分類することができる。各センサに関するメタ情報を解析し、変数の分類を行ってもよい。メタ情報の形式は特に問わない。
【００２２】
また、特定の取得先のデータがいずれかの種類の変数のみを含む場合には、データの取得先のアドレスや識別子に基づき分類を行ってもよい。例えば、空調機器の異常検知において、外気温や天気は空調機器の動作条件を示す変数に該当する。条件を示す変数はコンテキスト変数であるため、気象情報を提供する、観測機関のサーバのドメイン名やＩＰアドレスから得られた変数をすべてコンテキスト変数に分類することができる。変数の分類に係る設定の一部またはすべてを手動で行ってもよい。センサやデータ系列にセンサＩＤなどの一意的な識別子が付与されていれば、当該識別子に基づき分類設定を行うことができる。
【００２３】
図２〜図５は、収集部２により収集されたデータの例を示している。図２、図３はある電子機器から取得されたデータである。図２、図３のテーブルには、計測時刻ごとに各変数がとる値が格納されている。図２、図３の計測時刻は「時間：分」形式で示されているが、年、月、秒、ミリ秒などの情報を含んでいてもよい。図２、図３にはそれぞれｎ個の時刻における変数の値が格納されている。図２、図３のテーブルにおけるそれぞれの行は、計測時刻が同一である変数をまとめたものになっている。以降では、同一時刻に得られた変数をまとめたものをレコードと呼ぶものとする。図２、図３のテーブルはそれぞれｎ個のレコードを含んでいる。
【００２４】
図２は電子機器のステータス情報に係るセンサの値である。図３は、電子機器の物理センサの計測値である。図２のテーブルは、スイッチＡの操作状態や回路ブロックＢの電源状態などを含んでおり、コンテキストデータに相当する。図２のコンテキストデータは、ｍ個のコンテキスト変数を含んでいる。一方、図３のテーブルは電子機器の異常動作を判定するときに使われる電圧Ｃや電圧Ｄの計測値を含んでいるため、コンテンツデータに相当する。図３のコンテンツデータは、ｌ（小文字のＬ）個のコンテンツ変数を含んでいる。
【００２５】
図３のコンテンツデータでは、時刻０：０１に電圧Ｃが２．０Ｖと他の時刻に比べ高くなっている。しかし、図２のコンテキストデータを参照すると、同じ時刻０：０１にスイッチＡが押下されたことがわかる。したがって、時刻０：０１で検出された電圧変動は電子機器の異常動作ではなく、スイッチの操作に起因していると推定される。
【００２６】
また、図３のコンテンツデータでは、時刻０：０４に電流Ｄが２５ｍＡ、時刻０：０５に電流Ｄが２３ｍＡとなっており、電流値が７〜８ｍＡである他の時刻に比べて高くなっている。しかし、図２のコンテキストデータを参照すると、時刻０：０４、０：０５に他の時刻ではＯＦＦになっていた回路ブロックＢがＯＮになっていることがわかる。したがって、電流の増加は電子機器の異常動作ではなく、回路ブロックＢがＯＮにされ、回路のインピーダンスなどが変化したために起こったと推定される。
【００２７】
図２、図３のようにコンテキスト変数とコンテンツ変数に分類されたデータを使うと電子機器の文脈的異常検知を行うことができる。
【００２８】
図４、図５はあるビルの空調機器を監視するために収集されたデータである。図４、図５のテーブルには、計測時刻ごとに変数の値が格納されている。図２、図３の計測時刻は「時間：分」の形式で示されているが、年、月、秒、ミリ秒などの情報を含んでいてもよい。図４、図５のテーブルは、それぞれｎ個のレコードを含んでいる。
【００２９】
図４のテーブルは、空調機器の設定温度と、ビルの近隣にある観測所における外気温と天気などを格納している。これらの変数は、空調機器の設定や動作条件を示しているため、図４はコンテキストデータに相当する。図４には示されていないが、自動運転、冷房／暖房、除湿など、動作モードの設定情報もコンテキスト変数に分類される。
【００３０】
図５のテーブルは、空調機器が設置されている部屋の室内温度と、空調機器の消費電力などが格納されている。室内温度から空調機器の冷暖房効果を確認することができる。空調機器の消費電力から、空調機器の稼働状態を確認することができる。また、室内温度と消費電力の比較を行うことも可能である。例えば、冷房運転時において空調機器の消費電力が大きいのにも関わらず、室内温度が下がらない場合には、空調機器の故障を疑うことができる。図５は、値に基づき異常を検知可能な変数を格納しており、図５のテーブルはコンテンツデータであることがわかる。
【００３１】
図５のコンテンツデータでは、時刻１０：００に３１０Ｗであった消費電力が、時刻１１：００において３５０Ｗに増加している。一方、図４のコンテキストデータを参照すると、時刻１０：００に摂氏２７度であった設定温度が時刻１１：００に摂氏２５度に下げられていることがわかる。したがって、時刻１１：００における消費電力の増加は機器の異常ではなく、冷房の設定温度が下げられたことに起因していると推定される。
【００３２】
また、時刻１５：００では３３０Ｗであった消費電力が、時刻１６：００に２９０Ｗに減少している。大幅な消費電力の減少がある一方、時刻１５：００に摂氏２８．２度であった室内温度が時刻１６：００で摂氏２７．４度に低下している。時刻１７：００では消費電力２８５Ｗに対し、室内温度が摂氏２６．９度であり、消費電力が減っているのにも関わらず、さらに室内温度が低下している。冷房運転中の空調機器の消費電力は室内温度と負の相関関係にあるため、図５のデータでは一般に期待される変数のふるまいとは異なる傾向がみられる。
【００３３】
図４のコンテキストデータを参照すると、時刻１４：００に天気が晴れから曇りに変わっている。さらに時刻１５：００に天気が曇りから雨になっている。外気温は、時刻１４：００の摂氏３５．４度から摂氏２７．９度、摂氏２６．１度、摂氏２４．７度と、大幅な気温低下が認められる。ビルの周辺の気象は、昼過ぎまで猛暑であったが、午後に寒冷前線を伴う低気圧が接近し、冷たい空気の中に激しい雨が降り出したことがわかる。ビルの外の気象が変化した一方、冷房の設定温度は２５度で一定である。このような状況であれば、空調機器の消費電力低下と室内温度の低下が同時に発生しうるため、空調機器の異常は発生していないと推定することができる。
【００３４】
図２〜図５の例で示したように、データに含まれる変数をコンテキスト変数（文脈変数）とコンテンツ変数（内容変数）に分類すると、異常検知の精度を高めることができる。
【００３５】
コンテキストデータベース３は、各計測時刻におけるコンテキスト変数である、コンテキストデータを保存する。上述の図３、図５は、コンテキストデータの一例である。コンテキストデータは、装置やシステムごとに設けられたテーブルに記憶されていてもよいし、同じテーブルにまとめて記録されていてもよい。複数の装置やシステムのコンテキストデータを同じテーブルに記録する場合、各変数に対し、装置またはシステムに対応する識別子を付与する。
【００３６】
コンテキストデータは、文脈的異常検知における用途から、基準データ３ａと判定対象データ３ｂに分けられる。例えば、基準データとして用いられるコンテキストデータと、判定対象データとして用いられるデータを異なるテーブルに格納する。また、用途ごとにテーブルを分けず、基準データとして用いられるデータと判定対象データとして用いられるデータを同一のデーブルに保存してもよい。この場合、基準データに係る開始時刻および終了時刻ならびに判定対象データに係る開始時刻および終了時刻を管理し、両者を識別できるようにする。
【００３７】
基準データは、監視対象の装置やシステムが正常状態にあると推定される期間に取得されるデータである。例えば装置の保守点検やセンサの校正作業の直後や、装置がバスタブ曲線における初期故障期間を過ぎて偶発故障期間に入ったときに、装置は正常稼働している可能性が高い。したがって、このような期間に得られたデータを正常状態におけるデータと推定し、基準データとして用いることができる。
【００３８】
基準データに含まれるサンプル数は異常検知部６に適用される文脈的異常検知の手法に応じて決められる。
【００３９】
判定対象データとは、異常検知の対象とされるデータである。判定対象データは、基準データとは異なる期間に得られたデータであり、装置またはシステムの正常／異常状態の判定を行うもののことをいう。判定対象データに含まれるサンプル数は異常検知部６に適用される文脈的異常検知の手法に応じて決められる。
【００４０】
コンテンツデータベース４は、各計測時刻におけるコンテンツ変数である、コンテキストデータを保存する。上述の図２、図４は、コンテンツデータの一例である。コンテンツデータは、装置やシステムごとに設けられたテーブルに記憶されていてもよいし、同じテーブルにまとめて記録されていてもよい。複数の装置やシステムのコンテンツデータを同じテーブルに記録する場合、各変数に対し、装置またはシステムに対応する識別子を付与する。
【００４１】
コンテンツデータも、コンテキストデータと同様に基準データ４ａと判定対象データ４ｂに分けられる。基準データとして用いられるコンテンツデータと、判定対象データとして用いられるコンテンツデータは、同一のテーブルに格納されてもよいし、別々のテーブルに格納されてもよい。
【００４２】
本実施形態では、コンテキストデータとコンテンツデータを異なるテーブルに分けて記憶したが、コンテキストデータとコンテンツデータを同じテーブルに記憶してもよい。この場合、それぞれの変数にデータの分類を示す識別子を付与する。ここまで、複数のデータの保存形式について説明したが、コンテキストデータと、コンテンツデータが行列として表現可能な形式で保存されているのであれば、どのような形式を用いてもよい。
【００４３】
変数選択部５は、基準データと判定対象データの間の識別に寄与する程度（識別寄与度）を計算し、計算結果に基づき、異常検知部６における文脈的異常検知で使用する変数を選択する。異常検知部６は、変数選択部５で選択された変数を使って、文脈的異常検知を行う。コンテキスト変数については、識別寄与度が大きいものが異常検知における使用対象から除外される。なお、本実施形態に係る変数選択部はすべてのコンテンツ変数を文脈的異常検知で使用する変数として選択するものとする。
【００４４】
あるコンテキスト変数の値、ふるまいなどが基準データと判定対象データで大きくことなっている場合、当該コンテキスト変数の識別寄与度は大きくなる。コンテキスト変数の識別寄与度が大きい場合、基準データと判定対象データは異なる条件、状況や背景など（ｃｏｎｔｅｘｔ：コンテキスト）で得られたデータであるとみなすことができる。
【００４５】
基準データと判定対象データで異なる挙動を示しているコンテキスト変数を含めて文脈的異常検知を行おうとすると、当該コンテキスト変数の値の違いが過分に反映され、判定が行われてしまう。その結果、判定において真に異常兆候を示唆するその他の変数のふるまいが充分に反映されなくなる。したがって、異常検知において異常の誤検知や見逃しが発生する確率が高まってしまう。文脈的異常検知の精度を高めるためには、識別寄与度の大きいコンテキスト変数があれば、異常検知を行う前に当該コンテキスト変数を除去し、識別寄与度が小さいコンテキスト変数を選択するのが効果的である。
【００４６】
識別寄与度の大きいコンテキスト変数を除去することにより、基準データと判定対象データで計測条件に違いがある中でも、基準データと判定対象データで共通している条件に基づいて文脈的異常検知を行うことができる。
【００４７】
次に、変数選択処理の詳細について説明する。コンテンツデータと、コンテキストデータを使って行列計算をすることにより、変数選択処理が実行される。以降では「データ」といった場合、コンテンツデータとコンテキストデータの両方を示すものとする。また、単に「変数」といった場合、コンテンツ変数とコンテキスト変数の両方を示すものとする。最初に、変数の表記について説明する。
【００４８】
各時刻におけるコンテキストデータを下記の式（１）のようなベクトルで表現することができる。
【数１】
2019121162.tif 000003
それぞれのｂはコンテキスト変数（文脈変数）であり、条件、状況や背景などを示す設定値や計測値に相当する。式（１）のベクトルは、ｂ１〜ｂｍのｍ個のコンテキスト変数を含んでいる。式（１）のベクトルは、図２、図４におけるレコードに相当する。
【００４９】
変数選択処理では、データを用途に基づき基準データと判定対象データに分けている。基準データと判定対象データを識別するため、ベクトルに添え字を付ける。基準データに係るベクトルにはａの添え字を付与し、判定対象データに係るベクトルにはｈの添え字を付与するものとする。したがって、ベクトルｘを下記の式（２）のように区別する。
【数２】
2019121162.tif 000004
ここで、ｂａ１とｂｈ１、ｂａ１とｂｈ１はそれぞれ同一のコンテキスト変数であるが、異なる期間に得られた変数であることを明確にするため、ａまたはｈの添え字で区別している。
【００５０】
データは、複数の時刻における変数を含んでいる。異なる時刻に得られたコンテキスト変数を区別するため、さらに添え字を追加する。下記の式（３）では複数の時刻に係るコンテキスト変数のベクトルが示されている。
【数３】
2019121162.tif 000005
【００５１】
式（３）の下付き添え字｛１、ａ｝、｛２、ａ｝、｛３、ａ｝、｛１、ｈ｝、｛２、ｈ｝、｛３、ｈ｝にある数字は、ベクトル内の変数が得られた時刻を区別している。式（３）では、｛ｎａ、ａ｝の添え字から、基準データはｎａ個の時刻における変数の値を含んでいることがわかる。また、｛ｎｈ、ｈ｝の添え字から、判定対象データについてはｎｈ個の時刻における変数の値を含んでいることがわかる。
【００５２】
次に、上述の表記を用いて第１の実施形態に係る変数選択処理を説明する。
【００５３】
基準データとして用いられるコンテキスト変数の複数のレコードを、下記の式（４）のようなｎａ×ｍ次元の行列Ｘａの形式に集約して表記することができる。
【数４】
2019121162.tif 000006
【００５４】
また、下記の式（５）のような全要素の値が１のｎａ次元の列ベクトルＹａを定義する。
【数５】
2019121162.tif 000007
【００５５】
式（４）と同様に、判定対象データとして用いられるコンテキスト変数の複数のレコードを、下記の式（６）のようなｎｈ×ｍ次元の行列Ｘｈの形式に集約して表記することができる。
【数６】
2019121162.tif 000008
【００５６】
また、下記の式（７）のような、全要素の値が０のｎｈ次元の列ベクトルＹｈを定義する。
【数７】
2019121162.tif 000009
【００５７】
次に、行列Ｘａと行列Ｘｈを行方向に連結し、下記の式（８）の行列Ｘｃを生成する。
【数８】
2019121162.tif 000010
【００５８】
また、列ベクトルＹａとＹｈを連結し、下記の式（９）のベクトルＹｃを生成する。
【数９】
2019121162.tif 000011
【００５９】
行列Ｘｃと、ベクトルＹｃの準備ができたら、行列Ｘｃを説明変数とし、ベクトルＹｃを目的変数とし、それぞれのコンテキスト変数の識別寄与度を計算する。識別寄与度は例えば、ランダムフォレストなどの識別器を使って求めることができる。ランダムフォレストを使った場合、識別寄与度はランダムフォレストにおける変数の重要度に相当する。
【００６０】
ランダムフォレストでは、訓練用のデータから重複を許してランダムにレコードを選択し、ブートストラップ標本を生成する処理と、生成したブートストラップ標本を使い、木を生成する処理を繰り返し行う。このとき訓練用データのうち、約１／３のレコード（ｏｕｔ−ｏｆ−ｂａｇ  ｄａｔａ：以降ではｏｏｂデータと記す。）が木の生成に使われずに残る。
【００６１】
Ｐｅｒｍｕｔａｔｉｏｎ  ｉｍｐｏｒｔａｎｃｅによる変数の重要度は、上述のｏｏｂデータを使って算出される。まず、それぞれのｏｏｂデータを対応する木に適用し、変数が正しく分類されている回数を求める。次に、それぞれのｏｏｂデータにおける変数の値をランダムに並び替え、対応する木に適用し、変数が正しく分類されている回数を求める。ランダムフォレスト全体について、元のｏｏｂデータにおける正解数と並び替え後のｏｏｂデータにおける正解数の差の平均値は、Ｐｅｒｍｕｔａｔｉｏｎ  ｉｍｐｏｒｔａｎｃｅの値となる。
【００６２】
それぞれの変数について、標準偏差で正規化したＰｅｒｍｕｔａｔｉｏｎ  ｉｍｐｏｒｔａｎｃｅを使ってもよい。変数の値を並び替えた後のｏｏｂデータにおける正解率が元のｏｏｂデータにおける正解率より大きく低下している場合、当該変数の分類における影響度は大きいと推定される。
【００６３】
変数の重要度をジニ係数に基づき計算することもできる。ジニ係数はデータの不純度を示しており、ジニ係数の値が大きいほど、データが未分類であるといえる。したがって、データの分割前後におけるジニ係数の減少量が大きい変数は、重要度が大きいと推定される。それぞれの変数について、ランダムフォレストに含まれるすべての木についてジニ係数の減少量を加算すると、各変数の重要度を求めることができる。この方法により求められた重要度（識別寄与度）はＧｉｎｉ  Ｉｍｐｏｒｔａｎｃｅと呼ばれる。
【００６４】
上述では、識別器としてランダムフォレストを使う場合を説明したが、これは一例にしか過ぎない。例えば、Ａｄａｂｏｏｓｔなどその他の種類のアンサンブル学習を使って識別を行ってもよく、変数の分類が可能なのであれば、適用する機械学習の手法やアルゴリズムについては特に問わない。また、変数の重要度（識別寄与度）として、Ｇｉｎｉ  ＩｍｐｏｒｔａｎｃｅやＰｅｒｍｕｔａｔｉｏｎ  ｉｍｐｏｒｔａｎｃｅ以外の指標を使うことを妨げるものではない。
【００６５】
各コンテキスト変数について、識別寄与度を計算したら、各コンテキスト変数の識別寄与度をしきい値と比較する。コンテキスト変数の識別寄与度がしきい値より大きい場合、当該コンテキスト変数を文脈的異常検知で使用する変数から除外する。一方、コンテキスト変数の識別寄与度がしきい値以下である場合、当該コンテキスト変数は文脈的異常検知で使用する変数として選択される。この判定で用いるしきい値の決め方については特に問わない。例えば、全コンテキスト変数の識別寄与度の平均値をしきい値として使うことが考えられる。
【００６６】
以上で変数選択処理は完了する。変数選択部５は、後述する記憶装置１０５に選択されなかったコンテキスト変数に係る情報または選択されたコンテキスト変数に係る情報を保存してもよい。また、異常検知部６に、選択されなかったコンテキスト変数に係る情報または選択されたコンテキスト変数に係る情報を送信してもよい。異常検知部６は変数選択処理で選択されなかったコンテキスト変数を使用対象から除外して文脈的異常検知を行う。なお、本実施形態では、すべてのコンテンツ変数が選択されるため、異常検知部６はすべてのコンテンツ変数を使って文脈的異常検知を行う。
【００６７】
異常検知部６は、変数選択部５で選択された変数に基づき、文脈的異常検知を行う。異常検知部６は、コンテキスト変数とコンテンツ変数を含む基準データを正常データとして、コンテキスト変数とコンテンツ変数を含む判定対象データの文脈的異常検知を行う。異常検知部６では、正常データを使って異常検知が可能な方法を使って、文脈的異常検知を実行する。なお、文脈的異常検知の実行前にデータの学習が必要である場合、異常検知部６でデータの学習を行ってもよい。
【００６８】
正常データを使って異常検知を行う手法の例としては、ニューラルネットワークが挙げられる。ニューラルネットワークによる異常検知を行う場合、正常データであるとみなされる基準データを使ってニューラルネットワークの学習を行う。そして、学習したニューラルネットワークを使い、判定対象データの文脈的異常検知を行う。使用するニューラルネットワークの種類や層の数については特に限定しない。
【００６９】
他に、正常データを使って異常検知が可能な手法の例として、正常データの確率密度と判定対象データの確率密度の比を推定する確率密度比推定を使ったものが挙げられる。このような確率密度比に基づく異常検知を行う場合、基準データと判定対象データの確率密度比が１から離れているほど異常の度合が大きいと推定する。
【００７０】
上述のニューラルネットワークや確率密度比により異常検知は文脈的異常検知の例であり、その他の手法やモデルを使って文脈的異常検知を行ってもよい。異常検知部６は、文脈的異常検知の結果を記憶装置１０５に保存する。ここで、文脈的異常検知結果の保存形式の例としては、テキスト、バイナリ、ＣＳＶ、ＸＭＬなどがあるが、形式については特に問わない。文脈的異常検知結果をテキストやグラフィックに変換可能な形式で保存すれば、表示部７は文脈的異常検知の結果をディスプレイに表示することができる。
【００７１】
表示部７は、異常検知部６が生成した文脈的異常検知結果を、所定の形式を有する画像データやテキストデータに変換し、後述する表示装置１０３に出力する。表示部７では文脈的異常検知の結果の他に、変数選択部５によるデータ前処理結果を表示してもよい。
【００７２】
図６は、表示装置１０３に表示されたデータの前処理結果および文脈的異常検知結果の例を示している。図６上段には、データ前処理結果が示されている。そして、図６下段には、文脈的異常検知の結果が示されている。図６の例は、空調機器に対して文脈的異常検知を行った場合の表示内容であるため、あるエアコンの点検を促す旨のメッセージが表示されている。本実施形態に係る監視装置はどのような装置やシステムに対して適用してもよく、メッセージの内容を装置やシステムの種類に応じて変更することができる。
【００７３】
例えば、情報システムへの標的型攻撃、ＤｏＳ攻撃、マルウェア、侵入などを文脈的異常検知により検知する場合、情報システムに対する攻撃が行われた旨のメッセージに加え、セキュリティ対策ソフトウェアやアプライアンスなどによって所定のネットワーク切断、機能の停止、ボートの使用禁止、アクセス遮断などの措置がとられた旨のメッセージを表示してもよい。
【００７４】
次に、本実施形態に係る監視装置のハードウェア構成について説明する。本実施形態に係る監視装置は、コンピュータ１００により構成される。コンピュータ１００には、サーバ、クライアント端末、マイコン、タブレット、スマートフォン、パソコン、汎用コンピュータなど各種の情報処理装置が含まれる。
【００７５】
図７は、コンピュータ１００の一例を示す図である。図７のコンピュータ１００は、プロセッサ１０１と、入力装置１０２と、表示装置１０３と、通信装置１０４と、記憶装置１０５とを備える。プロセッサ１０１、入力装置１０２、表示装置１０３、通信装置１０４、記憶装置１０５は、バス１０６により相互に接続されている。
【００７６】
プロセッサ１０１は、コンピュータ１００の制御装置と演算装置を含む電子回路である。プロセッサ１０１として、例えば、汎用目的プロセッサ、中央処理装置（ＣＰＵ）、マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、コントローラ、マイクロコントローラ、状態マシン、特定用途向け集積回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラム可能論理回路（ＰＬＤ）またはこれらの組合せを用いることができる。
【００７７】
プロセッサ１０１は、バス１０６を介して接続された各装置（例えば、入力装置１０２、通信装置１０４、記憶装置１０５）から入力されたデータやプログラムに基づいて演算処理を行い、演算結果や制御信号を、バス１０６を介して接続された各装置（例えば、表示装置１０３、通信装置１０４、記憶装置１０５）に出力する。具体的には、プロセッサ１０１は、コンピュータ１００のＯＳ（オペレーティングシステム）や、監視プログラムなどを実行し、コンピュータ１００を構成する各装置を制御する。
【００７８】
監視プログラムとは、コンピュータ１００に、監視装置の上述の各機能や構成要素を実現させるプログラムである。監視プログラムは、一時的でない有形のコンピュータ読み取り可能な記憶媒体に記憶される。上記の記憶媒体は、例えば、光ディスク、光磁気ディスク、磁気ディスク、磁気テープ、フラッシュメモリ、半導体メモリであるが、これに限られない。プロセッサ１０１が監視プログラムを実行することにより、コンピュータ１００が監視装置として機能する。
【００７９】
入力装置１０２は、コンピュータ１００に情報を入力するための装置である。入力装置１０２は、例えば、キーボード、マウス、タッチパネルなどであるが、これに限られない。ユーザは、入力装置１０２を用いることにより、文脈的異常検知（監視）を行うセンサや装置などの指定、コンテキスト変数とコンテンツ変数に係る分類の指定、基準データに係る期間の指定、判定対象期間の指定、変数選択処理で使用する手法の選択、文脈的異常検知処理の開始指令などを入力することができる。
【００８０】
表示装置１０３は、画像や映像を表示するための装置である。表示装置１０３は、例えば、ＬＣＤ（液晶ディスプレイ）、ＣＲＴ（ブラウン管）、有機ＥＬ（有機エレクトロルミネッセンス）ディスプレイなどであるが、これに限られない。表示装置１０３には、上述のように判定結果として、データ前処理の結果や異常が検知された箇所などが表示される。
【００８１】
通信装置１０４は、コンピュータ１００が外部装置と無線または有線で通信するための装置である。通信装置１０４は、例えば、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）、通信モジュール、モデム、ハブ、ルータなどであるが、これに限られない。収集部２は、通信装置１０４を介して、センサが設置された建物などから計測値データを遠隔収集してもよい。
【００８２】
記憶装置１０５は、コンピュータ１００のＯＳや、監視プログラム、監視プログラムの実行に必要なデータ、監視プログラムの実行により生成されたデータなどを記憶する記憶媒体である。記憶装置１０５には、主記憶装置と外部記憶装置が含まれる。主記憶装置は、例えば、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭであるが、これに限られない。また、外部記憶装置は、例えば、ハードディスク、光ディスク、フラッシュメモリ、磁気テープなどであるが、これに限られない。コンテキストデータベース３、コンテンツデータベース４は、記憶装置１０５上に構築されてもよいし、外部のサーバやストレージ上に構築されてもよい。
【００８３】
なお、コンピュータ１００は、プロセッサ１０１、入力装置１０２、表示装置１０３、通信装置１０４、記憶装置１０５を、それぞれ１つずつまたは複数備えてもよいし、プリンタやスキャナなどの周辺機器を接続されていてもよい。
【００８４】
また、監視装置は、単一のコンピュータ１００により構成されてもよいし、相互に接続された複数のコンピュータ１００からなるシステムとして構成されてもよい。
【００８５】
さらに、監視プログラムは、コンピュータ１００の記憶装置１０５に予め記憶されていてもよいし、コンピュータ１００の外部の記憶媒体に記憶されていてもよいし、インターネット上にアップロードされていてもよい。いずれの場合も、監視プログラムをコンピュータ１００にインストールして実行することにより、監視装置の機能が実現される。
【００８６】
（第２の実施形態）
第１の実施形態に係る監視装置では、アンサンブル学習などの機械学習により、識別寄与度を計算し、それぞれの変数の識別寄与度に基づいて変数選択処理を実行していた。基準データとして用いられるコンテキスト変数と、判定対象データとして用いられるコンテキスト変数に対して統計的検定を行い、検定結果に基づき変数選択を行ってもよい。
【００８７】
第２の実施形態に係る変数選択処理では、変数について一切の前提を設けず、特定の分布を仮定しないノンパラメトリックな検定手法を用いることができる。ノンパラメトリックな検定手法の例としてはマン・ホイットニーのＵ検定（Ｍａｎｎ−Ｗｈｉｔｎｅｙ  Ｕｔｅｓｔ）などがあるが、その他の検定手法を用いてもよい。また、使用する検定手法は必ずノンパラメトリックな検定手法でなくてもよい。
【００８８】
基準データの行列Ｘａである式（４）の要素を明示すると、下記の式（１０）のようになる。
【数１０】
2019121162.tif 000012
【００８９】
一方、判定対象データの行列Ｘｈである式（６）の要素を明示すると、下記の式（１１）のようになる。
【数１１】
2019121162.tif 000013
【００９０】
式（１０）、（１１）の各行は、各時刻で得られたコンテキスト変数のレコードに相当する。一方、式（１０）、（１１）の各列は、複数の時刻における、ひとつのコンテキスト変数の値に相当する。式（１０）の行列Ｘａと式（１１）の行列Ｘｈはいずれもｍ個のコンテキスト変数を含んでいる。
【００９１】
本実施形態に係る変数選択部は、行列Ｘａと行列Ｘｈから同じコンテキスト変数に係る列を抽出する。そして、それぞれの列について統計的検定を行い、有意差が存在する場合には、当該コンテキスト変数を、文脈的異常検知の使用対象から除外する。すなわち、有意差が存在しないコンテキスト変数を、文脈的異常検知で使用するコンテキスト変数に選択する。この処理をすべてのコンテキスト変数に係る列について実行することにより、文脈的異常検知に使用するコンテキスト変数を選択することができる。
【００９２】
変数選択部で実行される処理が異なる点を除けば、第２の実施形態に係る監視装置の機能および構成は、第１の実施形態に係る監視装置と同様である。
【００９３】
（第３の実施形態）
上述の各実施形態に係る監視装置では、コンテキスト変数（文脈変数）についてのみ変数選択を行っており、コンテンツ変数については、すべてのコンテンツ変数を選択して文脈的異常検知を行っていた。しかし、さらにコンテンツ変数（内容変数）の変数選択を行ってもよい。第３の実施形態に係る変数選択部は、コンテキスト変数の変数選択をした後、コンテンツ変数の変数選択を実行する。コンテキスト変数の変数選択処理については、第１の実施形態または第２の実施形態で説明した方法のいずれを用いてもよい。
【００９４】
本実施形態に係る変数選択部の処理を説明する前に、変数の表記について説明する。下記の式（１２）は、基準データとして用いられるコンテンツ変数の行列Ｚａである。
【数１２】
2019121162.tif 000014
【００９５】
本実施形態に係る変数選択部の処理を説明する前に、変数の表記について説明する。下記の式（１３）は、判定対象データとして用いられるコンテンツ変数の行列Ｚｈである。
【数１３】
2019121162.tif 000015
【００９６】
式（１２）の行列Ｚａと式（１３）のＺｈの各行は、各時刻で得られたコンテンツ変数のレコードに相当する。一方、行列Ｚａ、Ｚｈの各列は、複数の時刻における、ひとつのコンテンツ変数の値に相当する。行列Ｚａ、Ｚｈはいずれもｌ（小文字のＬ）個のコンテンツ変数を含んでいる。
【００９７】
次に、変数選択後のコンテキストデータの表記について説明する。下記の式（１４）は基準データとして使われるコンテキストデータである。式（１４）は変数選択が行われた後のデータであるため、列の数を示す記号としてｍ＊が使われている。
【数１４】
2019121162.tif 000016
【００９８】
一方、下記の式（１５）は判定対象データとして使われるコンテキストデータである。式（１５）も変数選択が行われた後のデータであるため、列の数を示す記号としてｍ＊が使われている。
【数１５】
2019121162.tif 000017
【００９９】
式（１４）、（１５）で、それぞれの行は変数選択部で除外されなかったコンテキスト変数である。列の数ｍ＊については、変数選択前の列の数をｍとすると、ｍ＊≦ｍの関係が成り立つ。以降では、上述の表記を用いて、第３の実施形態に係る変数選択処理について説明する。
【０１００】
まず、行列Ｘ＊ａと行列Ｚａを列方向に連結し、下記の式（１６）に示した行列Ｗａを生成する。
【数１６】
2019121162.tif 000018
【０１０１】
同様に、行列Ｘ＊ｈと行列Ｚｈを列方向に連結し、下記の式（１７）に示した行列Ｗｈを生成する。
【数１７】
2019121162.tif 000019
【０１０２】
そして、行列Ｗａと行列Ｗｈを行方向に連結し、下記の式（１８）に示した行列Ｗｃを生成する。
【数１８】
2019121162.tif 000020
【０１０３】
次に、式（１８）の行列Ｗｃを説明変数、式（９）のベクトルＹｃを目的変数とし、それぞれのコンテンツ変数ｓの識別寄与度（重要度）を計算する。識別寄与度は第１の実施形態における変数選択処理と同様、ランダムフォレストやＡｄａｂｏｏｓｔなどの識別器を使って求めることができる。分類が可能なのであれば、適用する機械学習の手法やモデルについては特に問わない。識別寄与度を示す指標として、例えばＰｅｒｍｕｔａｔｉｏｎ  ｉｍｐｏｒｔａｎｃｅや、Ｇｉｎｉ  Ｉｍｐｏｒｔａｎｃｅなどを使うことができるが、その他の指標を使ってもよい。
【０１０４】
各コンテンツ変数ｓについて、識別寄与度を計算したら、各コンテンツ変数の識別寄与度をしきい値と比較する。コンテンツ変数の識別寄与度がしきい値より小さい場合、当該コンテンツ変数を文脈的異常検知で使用する変数から除外する。一方、コンテンツ変数の識別寄与度がしきい値以上である場合、当該コンテンツ変数は文脈的異常検知で使用する変数として選択される。この判定で用いるしきい値の決め方については特に問わない。例えば、全コンテンツ変数の識別寄与度の平均値をしきい値として使うことが考えられる。
【０１０５】
基準データと判定対象データとの間で挙動が類似したコンテンツ変数の識別寄与度（分類における重要度）は小さくなる。基準データと判定対象データとの間で似たふるまいや、近い値を示しているコンテンツ変数を含めて文脈異常検知を行っても、正常／異常の判定に寄与するところが少なく、却って判定精度を低下させるおそれすらある。したがって、識別寄与度の小さいコンテンツ変数を使用対象から外すことにより、文脈的異常検知の精度を改善することができる。また、異常検知部に入力される変数の数が減れば、文脈的異常検知における処理負荷が軽減される。
【０１０６】
以上で第３の実施形態に係る変数選択処理は完了する。変数選択部は、記憶装置１０５に選択されなかった変数に係る情報または選択された変数に係る情報を保存してもよい。また、異常検知部に、選択されなかった変数に係る情報または選択された変数に係る情報を送信してもよい。異常検知部は変数選択処理で選択された変数（コンテキスト変数およびコンテンツ変数）を使う一方、変数選択処理で選択されなかった変数（コンテキスト変数およびコンテンツ変数）を除外して、文脈的異常検知を行う。
【０１０７】
変数選択部で実行される処理が異なる点を除けば、第３の実施形態に係る監視装置の機能および構成は、上述の各実施形態に係る監視装置と同様である。なお、図６のデータの前処理結果および文脈的異常検知結果の例では、コンテキスト変数のみならず、一部のコンテンツ変数も選択から除外されている。したがって、図６の画面は第３の実施形態に係る監視装置により生成され、出力されたものであることがわかる。
【０１０８】
本発明の実施形態に係る監視装置全体の処理を説明する。図８は、監視装置による処理の例を示したフローチャートである。以下では、図８を参照しながら処理を説明する。
【０１０９】
まず、データをコンテンツ変数とコンテキスト変数に分類する。（ステップＳ１０１）ステップＳ１０１におけるデータとは、監視装置に入力されるデータのことをいう。コンテンツ変数とコンテキスト変数に分類された後のデータを入力データとよぶものとする。変数の分類処理の詳細は、収集部２に係る説明で述べた通りである。
【０１１０】
次に基準データと判定対象データを用意する。（ステップＳ１０２）基準データと判定対象データの定義については、コンテキストデータベース３に係る説明で述べた通りである。そして、基準データと判定対象データに基づき、変数選択処理を行う。（ステップＳ１０３）変数選択部による変数選択処理は上述の各実施形態のいずれの処理を用いてもよい。変数選択処理の詳細は変数選択部５および上述の各実施形態の説明で述べた通りである。
【０１１１】
そして、選択された変数を使って、判定対象データの文脈的異常検知を実行する。（ステップＳ１０４）文脈的異常検知に係る処理の詳細は異常検知部６の説明で述べた通りである。最後に、監視装置は変数選択の結果および文脈的異常検知を表示する。（ステップＳ１０５）
【０１１２】
なお、本発明は上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素を適宜組み合わせることによって種々の発明を形成できる。また例えば、各実施形態に示される全構成要素からいくつかの構成要素を削除した構成も考えられる。さらに、異なる実施形態に記載した構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１１３】
１  監視装置
２  収集部
３  コンテキストデータベース
３ａ、４ａ  基準データ
３ｂ、４ｂ  判定対象データ
４  コンテンツデータベース
５  変数選択部
６  異常検知部
７  表示部
１０  電気通信回線
１００  コンピュータ
１０１  プロセッサ
１０２  入力装置
１０３  表示装置
１０４  通信装置
１０５  記憶装置
１０６  バス
【図１】
2019121162.tif 000021
【図２】
2019121162.tif 000022
【図３】
2019121162.tif 000023
【図４】
2019121162.tif 000024
【図５】
2019121162.tif 000025
【図６】
2019121162.tif 000026
【図７】
2019121162.tif 000027
【図８】
2019121162.tif 000028