(57)【要約】【課題】多数の多様なセンサを含むセンサネットワークにおいて、センサ間の依存関係や各センサの観測値の統計的な振舞いから想定外の異常を検出する。【解決手段】モデル学習サーバ３００は、データベースサーバ２００から、センサネットワーク１００内の各センサから得た観測値を示す観測データを受信し、この観測データから親センサ群を求めるとともに、求められたセンサと親センサ群との依存関係を元に、センサ観測値の統計的なパラメータを求めて、特異パターン検出サーバ４００に送信する。特異パターン検出サーバ４００は、データベースサーバ２００から、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信し、親センサ群の情報と統計的なパラメータを用いて、受信した観測パターンの特異性を判定し、異常検出時にユーザ端末５００へ警告を通知する。【選択図】図１
2007279887.tif 000002
【特許請求の範囲】
【請求項１】
センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおいて、
前記モデル学習装置は、
前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信部と、
前記学習データ受信部により受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習部と、
前記構造学習部によって求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習部と、
前記構造学習部により求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信部とを備え、
前記特異パターン検出装置は、
前記モデル学習装置から前記親センサ群の情報と前記統計的なパラメータを受信するパラメータ受信部と、
前記パラメータ受信部により受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ保管部と、
前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信部と、
前記パラメータ保管部に格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信部により受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出部とを備える、
ことを特徴とする特異パターン検出システム。
【請求項２】
前記パラメータ学習部は、
各センサ観測値に対する親センサ群からの重回帰モデルを構築し、構築した重回帰モデル中のパラメータを算出する回帰モデル学習部と、
前記回帰モデル学習部により算出された重回帰モデル中のパラメータを用い、前記センサ観測値に対する条件付確率分布を算出する確率密度学習部とを備える、
ことを特徴とする請求項１に記載の特異パターン検出システム。
【請求項３】
前記特異パターン検出部は、
前記観測パターンに対して、前記パラメータ格納部に格納された前記統計的なパラメータを用いて、親センサ群の値から各センサ観測値の予測値を算出する予測部と、
前記観測パターンの示す実際のセンサ観測値と、前記予測部によって算出されたセンサ観測値の予測値との乖離度を、前記パラメータ格納部に格納された前記統計的なパラメータを用いて算出する乖離度算出部と、
各センサごとに定められる閾値を保持し、前記乖離度算出部により算出された乖離度が閾値を超えた場合にユーザ端末に通知を行う診断部と、
を備えることを特徴とする請求項１に記載の特異パターン検出システム。
【請求項４】
前記特異パターン検出装置は、
前記特異パターン検出部による出力に対応した判断結果を受信して前記閾値を調整する閾値操作部をさらに備える、
ことを特徴とする請求項３に記載の特異パターン検出システム。
【請求項５】
前記特異パターン検出装置は、
前記特異パターン検出部による出力及び前記閾値操作部により受信した判断結果の履歴情報を保存し、当該履歴情報からあるセンサ群に対して継続的に異常が発生したことを検出した場合に、部分的あるいは全体的な統計モデルの再学習を前記モデル学習装置へ指示するモデル診断部をさらに備える、
ことを特徴とする請求項１に記載の特異パターン検出システム。
【請求項６】
センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記モデル学習装置であって、
前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信部と、
前記学習データ受信部により受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習部と、
前記構造学習部によって求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習部と、
前記構造学習部により求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信部と、
を備えることを特徴とするモデル学習装置。
【請求項７】
前記パラメータ学習部は、
各センサ観測値に対する親センサ群からの重回帰モデルを構築し、構築した重回帰モデル中のパラメータを算出する回帰モデル学習部と、
前記回帰モデル学習部により算出された重回帰モデル中のパラメータを用い、前記センサ観測値に対する条件付確率分布を算出する確率密度学習部とを備える、
ことを特徴とする請求項６に記載のモデル学習装置。
【請求項８】
センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記特異パターン検出装置であって、
前記センサネットワーク内の各センサの観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群の情報と、センサ及び当該センサの親センサ群の依存関係を元に得られるセンサ観測値の統計的なパラメータとを前記モデル学習装置から受信するパラメータ受信部と、
前記パラメータ受信部により受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ保管部と、
前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信部と、
前記パラメータ保管部に格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信部により受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出部と、
を備えることを特徴とする特異パターン検出装置。
【請求項９】
前記特異パターン検出部は、
前記観測パターンに対して、前記パラメータ格納部に格納された前記統計的なパラメータを用いて、親センサ群の値から各センサ観測値の予測値を算出する予測部と、
前記観測パターンの示す実際のセンサ観測値と、前記予測部によって算出されたセンサ観測値の予測値との乖離度を、前記パラメータ格納部に格納された前記統計的なパラメータを用いて算出する乖離度算出部と、
各センサごとに定められる閾値を保持し、前記乖離度算出部により算出された乖離度が閾値を超えた場合にユーザ端末に通知を行う診断部とを備える、
ことを特徴とする請求項８に記載の特異パターン検出装置。
【請求項１０】
センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける特異パターン検出方法であって、
前記モデル学習装置が、
前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信ステップと、
前記学習データ受信ステップにおいて受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習ステップと、
前記構造学習ステップにおいて求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習ステップと、
前記構造学習ステップにおいて求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信ステップと、
前記特異パターン検出装置が、
前記モデル学習装置から前記親センサ群の情報と前記統計的なパラメータを受信するパラメータ受信ステップと、
前記パラメータ受信ステップにおいて受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ格納ステップと、
前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信ステップと、
前記パラメータ記憶ステップにおいて格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信ステップにおいて受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出ステップと、
を有することを特徴とする特異パターン検出方法。
【請求項１１】
センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記モデル学習装置に用いられるコンピュータを、
前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信部、
前記学習データ受信部により受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習部、
前記構造学習部によって求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習部、
前記構造学習部により求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信部、
として動作させることを特徴とするコンピュータプログラム。
【請求項１２】
センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記特異パターン検出装置に用いられるコンピュータを、
前記センサネットワーク内の各センサの観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群の情報と、センサ及び当該センサの親センサ群の依存関係を元に得られるセンサ観測値の統計的なパラメータとを前記モデル学習装置から受信するパラメータ受信部、
前記パラメータ受信部により受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ保管部、
前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信部、
前記パラメータ保管部に格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信部により受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出部、
として動作させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユビキタスセンサネットワーク環境における異常を検出する特異パターン検出システム、モデル学習装置、特異パターン検出装置、特異パターン検出方法、及び、コンピュータプログラムに関する。
【背景技術】
【０００２】
近年まで、センサは工場や航空機等に設置され、作業工程や機器類の動作が正常であるかを監視するために利用されていた。現在、センサは、セキュリティやオフィスオートメーションのために、一般家庭やオフィス等の様々な場所に導入されている。またセンサを組み合わせて人の存在や行動等の高度なコンテキストを抽出するなどの利用法も考えられる。
現在、観測対象の異常検出については、あらかじめ検出したい異常な事象を想定し、それを検出するためのセンサを配置して、閾値等の判断基準を設定するのが一般的である。またセンサ自身の故障についても、電源不良等の特定の異常に対する自己診断装置を有する程度である。
【０００３】
しかしながら、このような事前に異常を想定して対策を行う手法では、想定外の異常に対しては為す術がなく、対応が遅れてしまう。特にネットワーク中のセンサの数や種類が多い場合、事前に異常を想定するのがより困難になる。また事前に想定できた異常であっても、発生頻度が低い、あるいは被害が深刻ではない異常に対しては、コストとの兼ね合いから対策が見送られることもある。
【０００４】
このため、センサから得られる観測データを統計的に解析し、標準的な振る舞いを抽出する手法が提案されている。特許文献１に記載の独居老人在宅異常通報装置は、被観測者の行動や位置を検出するセンサを設置し、就寝や入浴等の各行動に対する生起頻度・生起間隔・持続時間をデータから求め、異常監視時にはセンサの観測値から被観測者の行動を推定してその生起確率を求めるというものである。
また非特許文献１では行列計算を、特許文献２に記載の計器異常検出装置ではニューラルネットを用いてセンサ間の相関を抽出し、異常検出を行っている。
【特許文献１】特開２０００−９９８５８号公報
【特許文献２】持開２０００−１８９８３号公報
【非特許文献１】Ｓ．Ｗ．ヴェゲリッヒ（S.W.Wegerich et al.）,“ヘルスモニタ装置に対するバイブレーション・シグナル・フィーチャーのノンパラメトリック・モデリング（Nonparametric Modeling of Vibration Signal Features for Equipment Health Monitoring）”, In Proc. IEEE Aeroconf. (7) ，p.3113〜3122, 2003年
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１では、センサの観測値を独立と考え確率分布を推定し乖離度を求めている。しかし、例えば同じ室内に置かれた照度センサと温度センサのように、センサ間には往々にして相関関係が存在する。センサ間に相関関係が存在する場合、これを無視して独立に各センサの観測値を扱えば、確率密度分布を正確に抽出することができない。特許文献１では、各行動パターンごとに乖離度を算出し、その重みつきの和を異常度と定義しているが、各行動パターンの乖離度は独立に算出されるため、センサ間の相関を正確に捉えることは困難である。
これに対し、非特許文献１や特許文献２は相関を利用して異常検出を行うが、計算量のオーダーが高く、大規模なセンサネットワークには適用することが難しい。またセンサ間の関係を可視化できないため、異常発生時の原因特定が困難である。
【０００６】
本発明は、このような事情を考慮してなされたもので、その目的は、多数の多様なセンサを含むセンサネットワークにおいて、センサ自身の故障や、センサの観測対象となる事象の異常を検出できる手段を提供し、センサ間の依存関係や各センサの観測値の統計的な振舞いから想定外の異常を検出することのできる特異パターン検出システム、モデル学習装置、特異パターン検出装置、特異パターン検出方法、及び、コンピュータプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
前記課題を解決するために、本発明は、センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおいて、前記モデル学習装置は、前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信部と、前記学習データ受信部により受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習部と、前記構造学習部によって求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習部と、前記構造学習部により求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信部とを備え、前記特異パターン検出装置は、前記モデル学習装置から前記親センサ群の情報と前記統計的なパラメータを受信するパラメータ受信部と、前記パラメータ受信部により受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ保管部と、前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信部と、前記パラメータ保管部に格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信部により受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出部とを備える、ことを特徴とする特異パターン検出システムである。
上記によれば、センサの観測値間に内在する相関関係を観測データから学習することができる。
【０００８】
また、本発明は、上述する特異パターン検出システムであって、前記パラメータ学習部は、各センサ観測値に対する親センサ群からの重回帰モデルを構築し、構築した重回帰モデル中のパラメータを算出する回帰モデル学習部と、前記回帰モデル学習部により算出された重回帰モデル中のパラメータを用い、前記センサ観測値に対する条件付確率分布を算出する確率密度学習部とを備える、ことを特徴とする。
上記によれば、センサ観測値が連続値である場合にも、離散化等の操作を行うことなくそのまま扱って重回帰モデル中のパラメータを学習するとともに、観測値に対する条件付確率分布を学習することができる。
【０００９】
また、本発明は、上述する特異パターン検出システムであって、前記特異パターン検出部は、前記観測パターンに対して、前記パラメータ格納部に格納された前記統計的なパラメータを用いて、親センサ群の値から各センサ観測値の予測値を算出する予測部と、前記観測パターンの示す実際のセンサ観測値と、前記予測部によって算出されたセンサ観測値の予測値との乖離度を、前記パラメータ格納部に格納された前記統計的なパラメータを用いて算出する乖離度算出部と、各センサごとに定められる閾値を保持し、前記乖離度算出部により算出された乖離度が閾値を超えた場合にユーザ端末に通知を行う診断部と、を備えることを特徴とする。
【００１０】
また、本発明は、上述する特異パターン検出システムであって、前記特異パターン検出装置は、前記特異パターン検出部による出力に対応した判断結果を受信して前記閾値を調整する閾値操作部をさらに備える、ことを特徴とする。
【００１１】
また、本発明は、上述する特異パターン検出システムであって、前記特異パターン検出装置は、前記特異パターン検出部による出力及び前記閾値操作部により受信した判断結果の履歴情報を保存し、当該履歴情報からあるセンサ群に対して継続的に異常が発生したことを検出した場合に、部分的あるいは全体的な統計モデルの再学習を前記モデル学習装置へ指示するモデル診断部をさらに備える、ことを特徴とする。
【００１２】
上記発明によれば、センサネットワークの異常検出において、想定外の異常をも検出可能な手段を提供するために、モデル学習装置により観測データの統計的な振舞いを抽出する。ここでグラフィカルモデリング機能を用い、センサ間の依存関係をグラフの形で記述することで異常発生時の故障箇所の特定を容易にする。また回帰機能を用い、センサ間の関係を抽出して観測値の信頼度を高める。回帰機能を用いることにより、観測データを離散化することなくそのまま利用でき、またセンサ間の関係がまったく未知の場合でも、観測データから関係を抽出することができる。
さらに、上記発明によれば、学習された統計モデルを用い、乖離度を元に特異的な観測パターンを検出してユーザに通知するとともに、ユーザからのフィードバックを受け、乖離度に対する閾値やモデル内のパラメータをリアルタイムに調節し、外界の変化を追従する。
【００１３】
また、本発明は、センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記モデル学習装置であって、前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信部と、前記学習データ受信部により受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習部と、前記構造学習部によって求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習部と、前記構造学習部により求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信部と、を備えることを特徴とするモデル学習装置である。
【００１４】
また、本発明は、上述するモデル学習装置であって、前記パラメータ学習部は、各センサ観測値に対する親センサ群からの重回帰モデルを構築し、構築した重回帰モデル中のパラメータを算出する回帰モデル学習部と、前記回帰モデル学習部により算出された重回帰モデル中のパラメータを用い、前記センサ観測値に対する条件付確率分布を算出する確率密度学習部とを備える、ことを特徴とする。
【００１５】
また、本発明は、センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記特異パターン検出装置であって、前記センサネットワーク内の各センサの観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群の情報と、センサ及び当該センサの親センサ群の依存関係を元に得られるセンサ観測値の統計的なパラメータとを前記モデル学習装置から受信するパラメータ受信部と、前記パラメータ受信部により受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ保管部と、前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信部と、前記パラメータ保管部に格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信部により受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出部と、を備えることを特徴とする特異パターン検出装置である。
【００１６】
また、本発明は、上述する特異パターン検出装置であって、前記特異パターン検出部は、前記観測パターンに対して、前記パラメータ格納部に格納された前記統計的なパラメータを用いて、親センサ群の値から各センサ観測値の予測値を算出する予測部と、前記観測パターンの示す実際のセンサ観測値と、前記予測部によって算出されたセンサ観測値の予測値との乖離度を、前記パラメータ格納部に格納された前記統計的なパラメータを用いて算出する乖離度算出部と、各センサごとに定められる閾値を保持し、前記乖離度算出部により算出された乖離度が閾値を超えた場合にユーザ端末に通知を行う診断部とを備える、ことを特徴とする。
【００１７】
また、本発明は、センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける特異パターン検出方法であって、前記モデル学習装置が、前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信ステップと、前記学習データ受信ステップにおいて受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習ステップと、前記構造学習ステップにおいて求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習ステップと、前記構造学習ステップにおいて求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信ステップと、前記特異パターン検出装置が、前記モデル学習装置から前記親センサ群の情報と前記統計的なパラメータを受信するパラメータ受信ステップと、前記パラメータ受信ステップにおいて受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ格納ステップと、前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信ステップと、前記パラメータ記憶ステップにおいて格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信ステップにおいて受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出ステップと、を有することを特徴とする特異パターン検出方法である。
【００１８】
また、本発明は、センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記モデル学習装置に用いられるコンピュータを、前記センサネットワークと接続されたデータベースサーバから、当該センサネットワーク内の各センサから得たセンサ観測値を示す観測データを受信する学習データ受信部、前記学習データ受信部により受信した観測データから、各センサ観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群を求める構造学習部、前記構造学習部によって求められたセンサと当該センサの親センサ群との依存関係を元に、前記観測データから得られるセンサ観測値の統計的なパラメータを求めるパラメータ学習部、前記構造学習部により求められた前記親センサ群の情報と、前記パラメータ学習部により求められた前記統計的なパラメータを、前記特異パターン検出装置に送信するパラメータ送信部、として動作させることを特徴とするコンピュータプログラムである。
【００１９】
また、本発明は、センサネットワークのモデルを学習するモデル学習装置と、当該センサネットワークにおける特異的な観測値を検出する特異パターン検出装置とを有する特異パターン検出システムにおける前記特異パターン検出装置に用いられるコンピュータを、前記センサネットワーク内の各センサの観測値に対して直接的に影響を与えるセンサ観測値を有するセンサ群である親センサ群の情報と、センサ及び当該センサの親センサ群の依存関係を元に得られるセンサ観測値の統計的なパラメータとを前記モデル学習装置から受信するパラメータ受信部、前記パラメータ受信部により受信した前記親センサ群の情報と前記統計的なパラメータを格納するパラメータ保管部、前記データベースサーバから、特異パターン検出対象となる各観測時刻ごとの観測データである観測パターンを受信するデータ受信部、前記パラメータ保管部に格納された前記親センサ群の情報と前記統計的なパラメータを用いて、前記データ受信部により受信した観測パターンの特異性を判定し、異常検出時には警告を出力する特異パターン検出部、として動作させることを特徴とするコンピュータプログラムである。
【発明の効果】
【００２０】
本発明によれば、多数の多様なセンサを含むセンサネットワークにおいて、学習データからセンサ間の依存関係や各センサの観測値の統計的な振舞いを抽出し、想定外の異常をも検出できる。また、特殊な装置を必要としないためコスト的にも有利であり、従来の異常検出システムと併用することでより強固な監視を行うことが出来る。
さらに、本発明によれば、センサ間の依存関係を抽出することにより、各センサの信頼性を高めることができ、これによって、異常発生時の原因特定を容易にすることができるとともに、ユーザからのフィードバックを受け、システムを環境に追従させることも可能である。
【発明を実施するための最良の形態】
【００２１】
以下、図面を用いて本発明の実施形態を説明する。
【００２２】
［第１の実施形態］
図１は、本発明の第１の実施形態による特異パターン検出システムのシステム構成図である。
同図において、センサネットワーク１００は、センサネットワーク１００に設置されているセンサのリストを保持するセンサリスト格納部２１０を備えたデータベースサーバ２００と接続されており、データベースサーバ２００には、モデル学習サーバ３００と、モデル学習サーバ３００及びユーザ端末５００に接続される特異パターン検出サーバ４００とが接続されている。
【００２３】
図２は、本実施形態が対象とするセンサネットワーク１００の構成の一例を示す。
センサネットワーク１００は、センサ１３０、無線タグセンサ１１０、無線タグリーダ１２０、センササーバ１４０からなる。センサ１３０及び無線タグリーダ１２０はセンササーバ１４０と連結し、センササーバ１４０は、他のセンササーバ１４０やデータベースサーバ２００とネットワーク１５０を介して連結している。センササーバ１４０は定められた時間間隔で、接続されたセンサ１３０からセンサデータを取得し、また無線タグリーダ１２０からタグデータを受信し、ネットワーク１５０を介してデータベースサーバ２００へ取得したデータを送信する。また無線タグセンサ１１０は、センサを内蔵した無線タグであり、定められた時間間隔で内蔵するセンサからデータを取得し、無線を介して無線タグリーダ１２０に送信する。
【００２４】
図３に本実施形態によるデータベースサーバ２００の構成の一例を示す。
データベースサーバ２００は、センサネットワーク１００中に存在するセンサ１３０及び無線タグリーダ１２０（以下、総称して単に「センサ」とも記載する）に対する情報を格納するセンサリスト格納部２１０と、センサネットワーク１００から得られる観測データを受信するデータ受信部２２０と、データ受信部２２０の受信した観測データを保持するデータ記憶部２３０と、モデル学習サーバ３００や特異パターン検出サーバ４００の要求を受け、観測時刻と、センごとにそれぞれ整列するデータ整形部２４０と、前記モデル学習サーバ３００や前記特異パターン検出サーバ４００に対して整形されたデータを送信するデータ送信部２５０とからなる。
【００２５】
表１および表２にデータベースサーバ２００のセンサリスト格納部２１０に格納されるセンサリストの一例を示す。表１は、センサ１３０についてのセンサリストであり、表２は、無線タグセンサ１１０についてのセンサリストである。なお、各リストにおいては、センサＩＤまたはタグＩＤの項さえあればよく、その他の項は必要に応じて適宜、設ければよい。
【００２６】
【表１】
2007279887.tif 000003
【００２７】
【表２】
2007279887.tif 000004
【００２８】
表３にデータベースサーバ２００のデータ記憶部２３０に記憶されるデータの一例を示す。データ記憶部２３０に記憶されるデータは、センサＩＤまたはタグＩＤ、観測されたデータ、および観測時刻の３つの値が組で記憶される。
【００２９】
【表３】
2007279887.tif 000005
【００３０】
観測時刻を取得するためのタイマは、データベースサーバ２００に設置しても、各センサに設置してもよい。タイマをデータベースサーバ２００に設置した場合、データベースサーバ２００はセンサネットワーク１００より観測データを受信し、タイマから受信時点の時刻を取得して、受信した観測データと時刻を組にして記録する。しかし、この手法ではセンサが実際に観測値を取得した時間と、データベース２００に記録された時間とに若干のずれが生じる。一方、各センサにタイマを持たせた場合には、各タイマの同期を取る必要がある。
【００３１】
図４は、に本実施形態によるモデル学習サーバ３００の構成を示すブロック図であり、モデル学習サーバ３００は、学習データ受信部３１０、構造学習部３２０、パラメータ学習部３３０、パラメータ送信部３４０を備える。また、図５は、本実施形態による特異パターン検出サーバ４００の構成を示すブロック図であり、特異パターン検出サーバ４００は、パラメータ受信部４１０、パラメータ保管部４２０、データ受信部４３０、及び、特異パターン検出部４４０を備える。
【００３２】
以下、本実施形態による特異パターン検出システムの動作の詳細を説明する。
まず、ユーザはデータベースサーバ２００のセンサリスト格納部２１０に監視対象となるセンサリストを登録する。
センサネットワーク１００は、定期的にセンサの観測値を取得し、データベースサーバ２００に送信する。データベースサーバ２００はセンサネットワーク１００からの観測データをデータ受信部２２０により受信し、データ記憶部２３０に登録する。
モデル学習サーバ３００はデータベースサーバ２００に対してモデル学習に必要なデータを要求する。この学習用データはある程度蓄積されたデータを用いてもよいし、観測データをリアルタイムに取得してもよい。
データベースサーバ２００はモデル学習サーバ３００からの要求メッセージを受信し、データ記憶部２３０から必要なデータを抽出し、データ整形部２４０で時刻とセンサＩＤを軸とするデータ行列を生成して、欠損値補完や正規化等の前処理を加え、モデル学習サーバ３００ヘ送信する。
【００３３】
【表４】
2007279887.tif 000006
【００３４】
表４は、データベースサーバ２００が生成し、モデル学習サーバ３００ヘ送信するデータ行列の一例を示す。ＩＤの項を横軸、時間の項を縦軸として、データ記憶部２３０のデータを整列したものである。横軸のＩＤについては、全センサ１３０および全無線タグセンサ１１０が対象である。縦軸の時刻については、どこからどこまでを学習対象とするのか、また時間間隔をどの程度に設定するかに基づき、ユーザが指定する。また、欠損値はデータ前処理機能により補完されているものとする。
【００３５】
モデル学習サーバ３００は学習データ受信部３１０により受信したデータを元に、構造学習部３２０において各センサに対する親センサ群を抽出し、パラメータ学習部３３０ではその親センサ群に対してのパラメータの学習を行い、学習されたモデルの良さを評価する。これを繰り返して最適な親センサ群や統計的なパラメータを求め、パラメータ送信部３４０により特異パターン検出サーバ４００に送信する。
【００３６】
特異パターン検出サーバ４００はモデル学習サーバ３００から親センサ群や統計的なパラメータをパラメータ受信部４１０により受信し、パラメータ保管部４２０に格納する。次に、データ受信部４３０によりデータベースサーバ２００から逐次的に観測パターンを受信し、特異パターン検出部４４０において観測パターンの特異性を判定し、特異的だと判断された場合にはユーザ端末５００に警告を発信する。
【００３７】
なお、欠損データの補完方法については０で補完する、全体の平均値で補完する、前後の時点における観測値の平均値で補完する等の簡易な手法から、Rubin[Rubin DR. “Multiple imputation for nonresponse in surveys." New York: John Wiley ＆Sons; 1987]によって提唱されたMultiple Imputation等の高精度な手法まで様々な方法を用いることが可能であり、処理時間と精度の兼ね合いから適切な手法を選択する。
【００３８】
また、正規化については、モデル学習に用いる各センサの観測値がそれぞれ平均０、分散１となるように行う。ｐ個のセンサが存在するセンサネットワーク１００において、モデル学習にｎ組の観測データを用いたと仮定すると、学習データは、ｎ×ｐ行列であるｘ＝（ｘ１，・・・，ｘｎ）Ｔ、ｘｉ＝（ｘｉ１，・・・，ｘｉｐ）Ｔで表すことができる（ｉ＝１〜ｎ）。なお、右肩のＴの文字はベクトル、行列の転置を表す。ｐ個のうちｊ番目のセンサであるセンサｊの時刻ｉにおける観測値ｘｉｊの正規化後の値は、ｘｉｊ’＝（ｘｉｊ−μｊ）／σｊで得られる。ここで
【００３９】
【数１】
2007279887.tif 000007
である。
【００４０】
センサネットワーク１００の観測データには欠損値の存在が予想され、また観測値の値域もセンサ種別によって大幅に異なるため、必要に応じてこのような前処理を行うことで予測精度を向上させることが出来る。
【００４１】
図６は、本実施形態の特異パターン検出システムを適用可能なオフィスオートメーションのためのセンサネットワークの具体例である。
照度センサ１３１、温度センサ１３２、湿度センサ１３３はそれぞれ照明や空調を監視するためのものであり、連続値を返す。また人感センサ１３４、磁気センサ１３５はそれぞれオフィス内の人の存在、扉の開閉を監視するためのものであり、ＯＮ／ＯＦＦの２値を返す。ＲＦＩＤ（Radio Frequency Identification）タグ１１１は、物品管理用のものであり、そのタグＩＤがＲＦＩＤタグタグリーダ１２１によって収集される。タグの付いた物品が存在する時「１」、存在しない時「０」を返す２値のセンサと設定することもできるし、電波強度を実数値で返すセンサとしてもよい。
【００４２】
ユーザは本特異パターン検出システムの監視対象となるセンサ群のリストを予め前述ようようにデータベースサーバ２００に登録するが、本手法では観測データからそのセンサの特徴を把握するため、センサ種別や物理的な配置等の情報は未知であってもよい。またそれらの情報が既知であるならば、モデル学習時にそれらの情報を利用することも可能である。
【００４３】
［第２の実施形態］
第２の実施形態は、第１の実施形態のモデル学習サーバ３００の構造学習部３２０を説明するためのものである。
本実施形態はセンサ間の依存関係を、グラフィカルモデリング手法を用いて抽出する。ここでは、代表的なグラフィカルモデリング手法であるベイジアンネットワークを用いた手法を説明する。本来、ベイジアンネットワークは離散変数（質的変数）に適用されるものであるが、本実施形態では、条件付確率表を確率密度関数に置き換え、またセンサ間の関係を、回帰モデルを用いて表すことにより、量的変数に対してもベイジアンネクトワークを適用することを可能としている。
【００４４】
ベイジアンネットワークは確率変数間の関係を非循環な有向グラフで表す。ここでは、まず１つ１つのセンサ観測値を確率変数とみなし、それぞれにノードを１つずつ割り当てる。次に、センサ間に依存関係が存在する場合、そのセンサに対応するノードにリンクを張る。例えば、センサＡとセンサＢの観測値に相関があれば、ノードＡとノードＢの間にリンクを張る。センサＡ及びセンサＢ間の関係が因果関係であるときは、矢印でその向きを表現する。例えば、センサＡがセンサＢに影響を与える場合、センサＡをセンサＢの親と呼び、Ａ→Ｂという矢印でその関係を表す。
【００４５】
図７に一例を示す。グラフ中のノードはセンサを、矢印は依存関係を表す。同図において、矢印の始点側のセンサ（親）が、矢印の終点側のセンサ（子）に影響を与えることを示している。図７中のセンサネットワークは５つのセンサ１〜５を持ち、子であるセンサ２は親であるセンサ１に、子であるセンサ５は親であるセンサ３とセンサ４にそれぞれ依存する。
【００４６】
センサ間の依存関係が既知である時、観測データの同時確率は各センサの条件付確率の積として求めることができる。つまり、時刻ｉにおける観測値の同時確率Ｐ（Ｘ（ｉ））、学習データ全体の同時確率Ｐ（Ｘ）は、以下の形で与えられる。
【００４７】
【数２】
2007279887.tif 000008
【００４８】
【数３】
2007279887.tif 000009
【００４９】
ここでＸ，Ｘ（ｉ），Ｘｉｊは、観測値行列ｘ、観測値ベクトルｘ（ｉ）、観測値ｘｉｊにそれぞれ対応する確率変数であり、
【００５０】
【数４】
2007279887.tif 000010
【００５１】
（以下、「Ｐａｊ（ｉ）」と記載）は、センサｊの親集合の時刻ｉにおける観測値ベクトルに対応する確率変数である。またｘの密度関数ｆ（ｘ）は以下となる。
【００５２】
【数５】
2007279887.tif 000011
【００５３】
ここで、
【００５４】
【数６】
2007279887.tif 000012
【００５５】
（以下、「ｐａｊ（ｉ）」と記載）は、Ｐａｊ（ｉ）の観測値ベクトルである。
【００５６】
なお、本実施形態では、条件付確率分布の形でセンサ間の関係のモデルを構築するため、センサ間の関係はすべて因果関係とみなされる。
【００５７】
このように、ベイジアンネットワークを用いると、観測データの同時確率を各センサの条件付確率の積に置き換えることができるため、観測データの同時確率計算量が大幅に短縮されると共に、センサ間の関係を有向グラフとして可視化でき、異常発生時の原因特定が容易になる。
【００５８】
センサ間の関係の有無は、モデル学習サーバ３００の構造学習部３２０においてデータから学習する。統計モデルの学習は、（１）後述する第３の実施形態に記載のセンサ間の相関の有無の学習（定性的な関係の学習）と、（２）後述する第４の実施形態に記載の定性的な関係があるとみなされたセンサ間の相関関係を表すためのパラメータの学習の２段階に分かれている。従来の手法では、（１）については人為的に決定し、（２）のパラメータのみを学習していた。これに対し、本実施形態では、まず第３の実施形態に記載の通り、全解探索または近似的な探索アルゴリズムを用いて各センサに相関のあるセンサ群を選択し、第４の実施形態に記載の通り選択されたセンサ群から対象センサヘの回帰パラメータを最適化する。この２つの段階を反復的に行うことで、（１）、（２）のそれぞれを局所的に最適化する。
【００５９】
［第３の実施形態］
第３の実施形態は、第１の実施形態のモデル学習サーバ３００の構造学習部３２０を説明するためのものである。
本実施の形態においては、モデル学習サーバ３００の構造学習部３２０は、各センサに対する未知の親センサ集合を観測データから学習する。センサ数が２０〜３０程度のセンサネットワークにおいては、全解探索を行い、最適解を求める。また、それ以上のセンサネットワークにおいては、greedy hill climbing [Friedman, N. and Goldszmidt, M.“Learning Bayesian Networks With Local Structure", Proc. Twelfth Conf. on Uncertainty in Artificial Intelligence, 252-262, 1996]や、simulated annealing [Carrillo,M.A., Cantu Ortiz, F.J., Morales-Menendez, R. and Garza Castanon, L.E.“Learning Bayesian Network Structures from Small Datasets using Simulated Annealing and Bayesian Score", Proc. Artificial Intelligence and Applications, 453:122-, 2005]等のアルゴリズムを用いて近似解を探索する。
【００６０】
図８に、greedy hill climbingを用いた場合のモデル学習サーバ３００の処理フローを示す。まず、モデル学習サーバ３００の学習データ受信部３１０は、データベースサーバ２００から学習用データを受信する（ステップＳ１１）。構造学習部３２０は、対象となるセンサｊを選択し（ステップＳ１２）、各センサｊに対して親集合Ｐａｊをそれぞれ定める（ステップＳ１３）。
パラメータ学習部３３０は、構造学習部３２０が定めた親集合も用い、第２の実施形態で述べたように、Ｐａｊ（ｉ）からＸｉｊへの回帰を行い、各センサの条件付確率密度関数ｆｊ（ｘｉｊ｜ｐａｊ（ｉ））のパラメータの推定を行う（ステップＳ１４）。
【００６１】
次に、構造学習部３２０は、情報量基準が改善されたかにより、推定されたモデルの良さを計算する（ステップＳ１５）。ここではAIC[Akaike, H.,“A new look at the statistical model identification."，IEEE Trans Automatic Control, 19:716-723, 1974.]や、BIC[Schwarz, G., “Estimating the dimension of a model.", Ann. Stat.6:461-464, 1978]のような情報量規準に基づいてモデルの良さを判断する。情報量規準が直前のものより良い値であった場合は（ステップＳ１６：ＹＥＳ）、パラメータを更新して再び親集合の選択を行う（ステップＳ１７）。これを情報量規準の変化がなくなるまで繰り返し（ステップＳ１６：ＮＯ）、各センサｊに対する親集合Ｐａｊ、及び対応するパラメータを定める（ステップＳ１８）。
【００６２】
［第４の実施形態］
図９は、本実施形態におけるモデル学習サーバ３００の構成図を示す。
同図において、図４のモデル学習サーバ３００と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図４と異なる点は、各センサ観測値に対する親センサ群からの重回帰モデルを構築し、重回帰モデル中のパラメータを算出する回帰モデル学習部３３１と、回帰モデル学習部３３１により算出されたパラメータを用い、観測値に対する条件付確率分布を算出する確率密度学習部３３２がパラメータ学習部３００に設けられている点である。
【００６３】
第２の実施形態に記載のベイジアンネットワークモデルにおいて、各センサの観測値が離散値であれば、学習データから条件付確率表を作成することにより、条件付確率Ｐ（Ｘｉｊ｜Ｐａｊ（ｉ））を求めることが出来る。また連続値である場合には、条件付確率密度関数ｆｊ（ｘｉｊ｜ｐａｊ（ｉ））を以下のように構築する。
【００６４】
まず、ｘｉｊをｐａｊ（ｉ）の関数ｍ（ｐａｊ（ｉ））で回帰し、ｘｉｊ＝ｍ（ｐａｊ（ｉ））＋εｊという式を得る。
ｍ（ｐａｊ（ｉ））に対して加法モデルを当てはめ、
【００６５】
【数７】
2007279887.tif 000013
【００６６】
を得る。ここでｑｊは、センサｊの親数、
【００６７】
【数８】
2007279887.tif 000014
（以下、「ｐａｊｋ（ｉ）」と記載）は、センサｊのｋ番目の親となるセンサの時刻ｉにおける観測値である。ここでｍｋ（・）に対して線形式を当てはめると線形回帰、スプライン等のノンパラメトリック基底関数を用いるとノンパラメトリック回帰となる。また、εｊは誤差項であり、εｊに対して特定の確率分布を仮定することで、条件付確率密度関数ｆｊ（ｘｉｊ｜ｐａｊ（ｉ））を構築することが出来る。例えばεｊが平均０、
【００６８】
【数９】
2007279887.tif 000015
の正規分布に従うとき、条件付確率密度関数ｆｊ（ｘｉｊ｜ｐａｊ（ｉ））は、以下となる。
【００６９】
【数１０】
2007279887.tif 000016
【００７０】
ベイジアンネットワークと線形回帰を用いた場合、本実施形態中のｍ（ｐａｊ（ｉ））はそれぞれの親の観測値ｐａｊｋ（ｉ）の線形和となる。つまり、ｍｋ（ｐａｊｋ（ｉ））＝αｊｋｐａｊｋ（ｉ）である。この場合、学習対象のパラメータは、αｊｋ（センサｊとそのｋ番目の親との関係を表す係数）と標準偏差σである。
【００７１】
また、例えば、Ｂスプラインを基底関数とするノンパラメトリック回帰を用いた場合は、以下となる。
【００７２】
【数１１】
2007279887.tif 000017
ここで、
【００７３】
【数１２】
2007279887.tif 000018
はＢスプライン規定関数であり、Ｍはユーザにより定義される定数なので、学習対象パラメータは、それぞれのＢスプライン基底関数に対する係数γｍｋと標準偏差σになる。
【００７４】
センサ間の依存関係、つまり各センサに対する親集合Ｐａｊについては、事前に分かっていれば予めモデル学習サーバに登録する。分からない場合は、第３の実施形態の通り学習データから抽出する。
【００７５】
図１０は、線形回帰の場合のモデル学習サーバ３００における処理フローを示す図である。
同図において、回帰モデル学習部３３１は、構造学習部３２０からセンサｊに対する親集合Ｐａｊを受信する（ステップＳ２１）。回帰モデル学習部３３１は、センサｊの親センサ群の観測行列Ｐａｊとセンサｊの観測ベクトルｘｊに対して、ｘｊ＝Ｐａｊβｊ＋ｅｊと線形モデルを考え、最小二乗法により以下のパラメータを求める（ステップＳ２２）。
【００７６】
【数１３】
2007279887.tif 000019
【００７７】
回帰モデル学習部３３１は、εｉｊが正規分布に従うとし、
【００７８】
【数１４】
2007279887.tif 000020
として
【００７９】
【数１５】
2007279887.tif 000021
を求める（ステップＳ２３）。但し、ｋは、センサｊの親センサ数である。
【００８０】
回帰モデル学習部３３１は、確率密度学習部３３２により以下にように算出されるｘｉｊの条件付確率密度ｆ（ｘｉｊ｜Ｐａｊ（ｉ））を用いて、情報量基準ＡＩＣを算出する（ステップＳ２４）。
【００８１】
【数１６】
2007279887.tif 000022
【００８２】
【数１７】
2007279887.tif 000023
【００８３】
回帰モデル学習部３３１は、
【００８４】
【数１８】
2007279887.tif 000024
と、算出された情報量基準ＡＩＣの値を構造学習部３２０へ送信する（ステップＳ２５）。
【００８５】
図１１は、ノンパラメトリック回帰の場合のモデル学習サーバ３００における処理フローを示す図である。
同図において、回帰モデル学習部３３１は、構造学習部３２０からセンサｊに対する親集合Ｐａｊを受信する（ステップＳ３１）。回帰モデル学習部３３１は、センサｊの親センサ群の観測行列Ｐａｊとセンサｊの観測ベクトルｘｊに対して、以下のノンパラメトリック行列を考え、係数用列γ（ｊ）と誤差ベクトルｅｊを最適化する（ステップＳ３２）。
【００８６】
【数１９】
2007279887.tif 000025
【００８７】
回帰モデル学習部３３１は、εｉｊがＮ（０，１）の正規分布に従うとし、上記ノンパラメトリック回帰モデルに基づいて以下のように分散σ２を求める（ステップＳ３３）。但し、ｋは、センサｊの親センサ数である。
【００８８】
【数２０】
2007279887.tif 000026
【００８９】
回帰モデル学習部３３１は、確率密度学習部３３２により以下にように算出されるｘｉｊの条件付確率密度ｆ（ｘｉｊ｜Ｐａｊ（ｉ））を用いて、情報量基準ＡＩＣを算出する（ステップＳ３４）。
【００９０】
【数２１】
2007279887.tif 000027
【００９１】
【数２２】
2007279887.tif 000028
【００９２】
回帰モデル学習部３３１は、パラメータγ（ｊ），σｊと、算出された情報量基準ＡＩＣの値を構造学習部３２０へ送信する（ステップＳ３５）。
【００９３】
［第５の実施形態］
図１２に本実施形態における特異パターン検出サーバ４００の構成図を示す。
同図において、図５の特異パターン検出サーバ４００と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図５と異なる点は、特異パターン検出部４４０に予測部４４１、乖離度算出部４４２、及び、診断部４４３を備える点である。
【００９４】
本実施形態の特異パターン検出サーバ４００は、学習された親センサ集合とパラメータをモデル学習サーバ３００からパラメータ受信部４１０により受信し、パラメータ保管部４２０に格納する。次にデータ受信部４３０によりデータベースサーバ２００から逐次的に観測パターンを受信し、予測部４４１により各センサの予測値を求め、乖離度算出部４４２によりこの予測値に対する各センサ観測値の乖離度を学習されたパラメータを利用してそれぞれ求め、診断部４４３により観測パターンが特異的であるかを判断する。
例えば、各センサの観測値が正規分布に従うと仮定したとき、センサｊの観測値ｘｊに対する乖離度は（ｘｊ−μｊ）／σｊの形で与えられる。ここでμｊ＝ｍｊ（ｐａｊ）であり、ｍｊ（・）の中のパラメータやσｊは、モデル学習サーバ３００より受信したものである。
【００９５】
ここで、モデル学習サーバ３００から送信され、特異パターン検出サーバ４００のパラメータ保管部４２０に格納されるデータについて説明する。
親センサ群を示す情報のパラメータ構造は、１行につき、センサとそのセンサに対する親センサ集合を記述した表形式になっている。例えば３つのセンサが存在し、センサ２の親センサ集合が｛センサ１｝、センサ３の親センサ集合が｛センサ２、センサ３｝であるとき、以下の表形式となる。
【００９６】
【表５】
2007279887.tif 000029
【００９７】
また、パラメータ保管部４２０に格納される統計的なパラメータは、線形回帰モデルを用いる場合は係数行列βと分散ベクトルσであり、ノンパラメトリック回帰モデルの場合は係数行列γ、分散ベクトルσである。
【００９８】
但し、β＝｛βｉｊ｝は、センサｊのｉ番目の親に対する係数である。
また、
【００９９】
【数２３】
2007279887.tif 000030
は、センサｊとそのｋ番目の親との関係を示すＢスプライン基底関数族のうち、ｍ番目のＢスプラインに関する係数である。つまり、βは、実数の２次元配列、すなわち、センサ１については（センサ１の１番目の親の係数，…，センサ１のｑ１番目の親の係数）、センサ２については（センサ２の１番目の親の係数，…，センサ２のｑ２番目の親の係数）、…という２次元配列である。
【０１００】
また、γは各センサｊ に対する係数行列γ（ｊ）を、１番目の親については（１番目のＢスプラインに対する係数，…，Ｍ番目のＢスプラインに対する係数）、２番目の親については（１番目のＢスプラインに対する係数，…，Ｍ番目のＢスプラインに対する係数）、…、ｑｊ番目の親については（１番目のＢスプラインに対する係数，…，Ｍ番目のＢスプラインに対する係数）とし、これらをこれを各センサについて求めた３次元配列となる。なお、Ｍは、Ｂスプラインの本数であり、システム構成時に予め設定されるパラメータである。
また、σは、実数のベクトルである。
【０１０１】
図１３に、本実施形態による特異パターン検出サーバ４００の処理フローを示す。特異パターン検出サーバ４００のパラメータ受信部４１０は、モデル学習サーバ３００から、学習によって得られた親集合及びパラメータを受信し、パラメータ保管部４２０へ格納する。データ受信部４３０は、データベースサーバ２００から監視対象となる観測データを逐次受信し（ステップＳ４１）、センサｊをセットする（ステップＳ４２）。
【０１０２】
続いて、各センサｊの観測値ｘｊに対して期待値μｊ及び乖離度を計算する。すなわち、予測部４４１は、親集合Ｐａｊの観測値ベクトルを学習により得られた回帰式に当てはめ、期待値μｊ＝ｍｊ（ｐａｊ）を算出する（ステップＳ４３）。さらに、乖離度算出部４４２は、ステップＳ４３において得られた期待値μｊと、観測値ｘｊから乖離度（ｘｊ−μｊ）／σｊを計算する（ステップＳ４４）。
【０１０３】
診断部４４３は、ステップＳ４４において算出された乖離度が予め診断部４４３内の保持されているセンサｊに対する閾値ｔｈｒｊを越えていると判断した場合（ステップＳ４５：ＹＥＳ）、観測データを特異と判定し、ユーザ端末５００に警告を送信する（ステップＳ４６）。ステップＳ４６において警告を送信した後、あるいは、ステップＳ４５において乖離度がセンサｊに対する閾値ｔｈｒｊ以下であると判断した場合、全てのセンサについて終了したかを判断し、全てについて終了していない場合には（ステップＳ４７：ＮＯ）、ステップＳ４２からの処理を繰り返す。そして、全てのセンサについて終了した場合には（ステップＳ４７：ＹＥＳ）、処理を終了する。
【０１０４】
なお、閾値ｔｈｒｊの値が小さいほど検出の精度が高まるが、同時に誤検出も増加する。閾値ｔｈｒｊは前もってユーザにより設定され、また後述する第６の実施形態で述べるとおり、ユーザからのフィードバックを受けて適宜調整される。
【０１０５】
［第６の実施形態］
図１４に本実施形態における特異パターン検出サーバ４００の構成図を示す。
同図において、図１２の特異パターン検出サーバ４００と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図１２と異なる点は、閾値調整部４５０が設けられている点である。
【０１０６】
ユーザはユーザ端末５００により警告を受けた観測データが、真に異常であるかを診断し、その結果をユーザ端末によって特異パターン検出サーバ４００に送信する。
例えば、本特異パターン検出システムにより、ある温度センサの観測値に対して異常が検出されたとする。ユーザは本特異パターン検出システムからの警告をユーザ端末５００により受け、温度センサが故障していないか、温度センサの観測対象（室温等）が異常ではないかを検査する。その結果、実際に異常が発見されれば本特異パターン検出システムの結果が正しかった、異常がなければ間違っていたと診断する。
ユーザが異常ではないと判断した場合、その旨がユーザ端末５００の入力部５１０により入力され、特異パターン検出サーバ４００へ通知される。特異パターン検出サーバ４００の閾値調整部４５０は、異常ではないと判断されたその観測データを記録し、また内部に記憶している閾値ｔｈｒｊの値を増加させて同様の警告を発さないようにする。
【０１０７】
この機能により、ユーザからのフィードバックを以後の異常検出に反映し、誤検出を減少させてユーザの負荷を減らすことが出来る。
センサネットワーク中には重要なセンサもそうでないものも混在していると考えられるので、重要なセンサに対しては小さな異常も検出できるよう閾値を低く、そうでないセンサは誤検出を避けるために高めに設定することが望ましい。しかし事前に全てのセンサに適切な閾値を設定するのは困難である。そこで、本実施形態では予め初期値を低く設定し、誤検出が頻発するセンサに対しては閾値を高め、また異常が見過ごされたセンサについては閾値を低めることで、各センサごとにsensitivity（検出感度）とspecificity（特異性）のバランスの取れた閾値を設定する。
【０１０８】
［第７の実施形態］
図１５に本実施形態における特異パターン検出サーバ４００の構成図を示す。
同図において、図１４の特異パターン検出サーバ４００と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図１４と異なる点は、モデル診断部４６０が設けられている点である。モデル診断部４６０は特異パターン検出部４４０の出力の履歴や、それに対して閾値調整部４５０がユーザ端末５００から受信したユーザのフィードバックを記録し、解析する。
【０１０９】
モデル診断部４６０は、特異パターン検出部４４０によって予め決められた短期間に多数の特異的な観測パターンが検出され、かつユーザによってそれらが異常ではないと診断されたことを、内部に記憶しているフィードバックから検出した時、学習されたモデルが現在の監視対象の状態に適さないと判定し、モデル再構築要求をユーザ端末５００に送信する。
ユーザは、モデル再構築が必要か不要かを判断し、その判断結果をユーザ端末５００の入力部５１０により入力し、特異パターン検出サーバ４００のモデル診断部４６０に対して通知する。モデル診断部４６０は、ユーザ端末５００からモデル再構築が必要であるとの通知を受取った場合、モデル学習サーバ３００にモデル再構築を要求する。
モデル学習サーバ３００は、モデル再構築の要求に応じて、部分的にあるいは全センサに対する親センサ集合及びパラメータの学習を、上述した実施形態２、３、４のように行うことにより、再学習する。
この機能により、正常状態が次第に変化するようなセンサネットワークにおいて、モデルを環境変化に追従させることが可能になる。
【０１１０】
上述した実施形態によれば、以下の４点の効果がある。
第１に、本実施形態では連続値の取り扱いを可能にしたことで、特定のセンサを前提とすることなく幅広いセンサネットワークに適用可能である。第２に、グラフィカルモデリング機能によりセンサ間の構造を可視化することで、それぞれのセンサの信頼性を高めることができ、また異常発生時に原因特定が容易になる。第３に、学習データから統計モデルを学習するため、ユーザが事前に想定できなかった異常を検出できる可能性がある。第４に、ユーザからのフィードバックを受け、モデル構造や閾値を変化させることで、外界の変化にリアルタイムに追従可能である。
【０１１１】
このように、本実施形態によれば、多数の多様なセンサを含むセンサネットワークにおいて、学習データからセンサ間の依存関係や各センサの観測値の統計的な振舞いを抽出し、想定外の異常をも検出できる。また、特殊な装置を必要としないためコスト的にも有利であり、従来の異常検出システムと併用することでより強固な監視を行うことが出来る。
さらに、センサ間の依存関係を抽出することにより、各センサの信頼性を高めることができ、これによって、異常発生時の原因特定を容易にすることができるとともに、ユーザからのフィードバックを受け、システムを環境に追従させることも可能である。
【０１１２】
なお、上述の特異パターン検出システムのデータベースサーバ２００、モデル学習サーバ３００、及び、特異パターン検出サーバ４００は、内部にコンピュータシステムを有している。そして、データベースサーバ２００、モデル学習サーバ３００、及び、特異パターン検出サーバ４００の各部の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＣＰＵ及び各種メモリやＯＳ、周辺機器等のハードウェアを含むものである。
【０１１３】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【図面の簡単な説明】
【０１１４】
【図１】本発明の第１の実施形態による特異パターン検出システムの構成を示す図である。
【図２】図１に示すセンサネットワークの構成例を示す図である。
【図３】図１に示すデータベースサーバのブロック図である。
【図４】図１に示すモデル学習サーバのブロック図である。
【図５】図１に示す特異パターン検出サーバのブロック図である。
【図６】図１に示すセンサネットワークの具体例を示す図である。
【図７】第２の実施形態によるベイジアンネットワークの例を示す図である。
【図８】第３の実施形態によるモデル学習サーバの処理フローを示す図である。
【図９】第４の実施形態によるモデル学習サーバのブロック図である。
【図１０】図９に示すモデル学習サーバの処理フローを示す図である。
【図１１】図９に示すモデル学習サーバの他の処理フローを示す図である。
【図１２】第５の実施形態による特異パターン検出サーバのブロック図である。
【図１３】図１２に示す特異パターン検出サーバの処理フローを示す図である。
【図１４】第６の実施形態による特異パターン検出サーバのブロック図である。
【図１５】第７の実施形態による特異パターン検出サーバのブロック図である。
【符号の説明】
【０１１５】
１００…センサネットワーク
１１０…無線タグセンサ
１１１…ＲＦＩＤタグ
１２０…無線タグリーダ
１２１…ＲＦＩＤタグリーダ
１３０…センサ
１３１…照度センサ
１３２…温度センサ
１３３…湿度センサ
１３４…人感センサ
１３５…磁気センサ
１４０…センササーバ
１５０…センサネットワーク
２００…データベースサーバ
２１０…センサリスト格納部
２２０…データ受信部
２３０…データ記憶部
２４０…データ整形部
２５０…データ送信部
３００…モデル学習サーバ
３１０…学習データ受信部
３２０…構造学習部
３３０…パラメータ学習部
３３１…回帰モデル学習部
３３２…確率密度学習部
３４０…パラメータ送信部
４００…特異パターン検出サーバ
４１０…パラメータ受信部
４２０…パラメータ保管部
４３０…データ受信部
４４０…特異パターン検出部
４４１…予測部
４４２…乖離度算出部
４４３…診断部
４５０…閾値調整部
４６０…モデル診断部
５００…ユーザ端末
５１０…入力部
【図１】
2007279887.tif 000031
【図２】
2007279887.tif 000032
【図３】
2007279887.tif 000033
【図４】
2007279887.tif 000034
【図５】
2007279887.tif 000035
【図６】
2007279887.tif 000036
【図７】
2007279887.tif 000037
【図８】
2007279887.tif 000038
【図９】
2007279887.tif 000039
【図１０】
2007279887.tif 000040
【図１１】
2007279887.tif 000041
【図１２】
2007279887.tif 000042
【図１３】
2007279887.tif 000043
【図１４】
2007279887.tif 000044
【図１５】
2007279887.tif 000045