(57)【特許請求の範囲】
【請求項１】
学習用の時系列データの特徴量の分布に基づいて生成された複数の正常モデルについて、それぞれの識別情報と特徴量の分布情報とを観測モデルとして記憶した観測モデル記憶手段と、
前記学習用の時系列データにおける異常状態及び前記複数の正常モデルのそれぞれとの間の遷移関係とその遷移確率を記憶した遷移関係記憶手段と、
異常検知の対象とする時系列データを取得するデータ取得手段と、
前記取得した時系列データの所定の時刻における特徴量を算出する特徴量算出手段と、
前記算出した特徴量と前記複数の正常モデルのそれぞれの特徴量の分布情報とに基づいて、１つの正常モデルまたは異常状態を観測モデルとして選択し、該選択された観測モデルの観測スコアを算出するモデル選択手段と、
前記選択した観測モデルに関する遷移関係とその遷移確率とを前記遷移関係記憶手段から取得するモデル関係取得手段と、
前記選択された観測モデルの観測スコアと前記取得した遷移関係とその遷移確率とに基づいて評価スコアを算出する評価手段と、
前記評価スコアに基づいて前記時系列データの異常を検知する異常検知手段とを有することを特徴とする異常検知装置。
【請求項２】
前記学習用の時系列データから算出された特徴量に基づいて前記観測モデルを学習し、前記観測モデル記憶手段に記録する観測モデル学習手段をさらに有することを特徴とする請求項１に記載の異常検知装置。
【請求項３】
前記観測モデル学習手段により学習された観測モデルの時系列の遷移関係を学習し、前記遷移関係記憶手段に記録する遷移モデル学習手段をさらに有することを特徴とする請求項２に記載の異常検知装置。
【請求項４】
前記観測モデルは、前記正常モデルのラベルと異常ラベルが用いられることを特徴とする請求項１から３のいずれか１項に記載の異常検知装置。
【請求項５】
前記モデル関係取得手段は、前記遷移関係として、同一のラベルへの遷移または異なるラベルへの遷移の関係を時系列で取得することを特徴とする請求項１から４のいずれか１項に記載の異常検知装置。
【請求項６】
前記異常検知手段は、前記観測モデルのラベル間の遷移の長さに応じて閾値を変更し、当該閾値と前記評価スコアとに基づいて前記時系列データの異常を検知することを特徴とする請求項５に記載の異常検知装置。
【請求項７】
異常検知の対象とする時系列データを取得するデータ取得ステップと、
前記取得した時系列データの所定の時刻における特徴量を算出する特徴量算出ステップと、
前記算出した特徴量と、学習用の時系列データの特徴量の分布に基づいて生成された複数の正常モデルについて、それぞれの識別情報と特徴量の分布情報とを観測モデルとして記憶した観測モデル記憶手段における複数の正常モデルのそれぞれの特徴量の分布情報とに基づいて、１つの正常モデルまたは異常状態を観測モデルとして選択し、該選択された観測モデルの観測スコアを算出するモデル選択ステップと、
前記選択した観測モデルに関する遷移関係とその遷移確率とを、前記学習用の時系列データにおける異常状態及び前記複数の正常モデルのそれぞれとの間の遷移関係とその遷移確率を記憶した遷移関係記憶手段から取得するモデル関係取得ステップと、
前記選択された観測モデルの観測スコアと前記取得した遷移関係とその遷移確率とに基づいて評価スコアを算出する評価ステップと、
前記評価スコアに基づいて前記時系列データの異常を検知する異常検知ステップとを有することを特徴とする異常検知方法。
【請求項８】
コンピュータを、請求項１から６のいずれか１項に記載の異常検知装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサデータや映像データ中の異常を検知する異常検知方法、異常検知装置、及びそのプログラムに関する。
【背景技術】
【０００２】
従来から、時系列のセンサデータや映像データについて異常があるか否かを判定するために、正常時に収集されたデータからモデルを作成し、判定対象となるセンサデータや映像データを該モデルと比較して正常か異常かを判定する技術が知られている。
【０００３】
特許文献１には、映像データから追尾処理により移動体の軌跡を算出して、異常を検知する異常判定方法が開示されている。この判定方法では、学習した軌跡モデルと移動体の軌跡の大域的異常度と、軌跡をグリッドで分割し各グリッドの軌跡を学習したモデルと比較して局所的異常度を算出し、大域的異常度と局所的異常度の総和で異常判定を行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１９４９６７号公報
【非特許文献】
【０００５】
【非特許文献１】Ｄ．Ｃｏｍａｎｉｃｉｕ  ａｎｄ  Ｐ．  Ｍｅｅｒ，  “Ｍｅａｎ  Ｓｈｉｆｔ  ａｎａｌｙｓｉｓ  ａｎｄ  ａｐｐｌｉｃａｔｉｏｎ”，  Ｐｒｏｃ．  ＩＥＥＥ  Ｉｎｔ．  Ｃｏｎｆ．  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，  ｐｐ．１１９７−１２０３，  １９９９
【非特許文献２】Ｊ．  Ｐｅｒｓ，  ｅｔ  ａｌ．，  Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  ｏｐｔｉｃａｌ  ｆｌｏｗ  ｆｏｒ  ｅｆｆｉｃｉｅｎｔ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎ  ｏｆ  ｂｏｄｙ  ｍｏｔｉｏｎ，  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ｌｅｔｔｅｒｓ，  ｖｏｌ．  ３１，  ｎｏ．  １１，  ｐｐ．  １３６９−−１３７６，  ２０１０
【非特許文献３】Ｎ．  Ｄａｌａｌ  ａｎｄ  Ｂ．  Ｔｒｉｇｇｓ，  Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  ｏｒｉｅｎｔｅｄ  ｇｒａｄｉｅｎｔｓ  ｆｏｒ  ｈｕｍａｎ  ｄｅｔｅｃｔｉｏｎ，  Ｉｎ  ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ  （ＣＶＰＲ），  ｐｐ．  ８８６−−８９３，  ２００５
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では異常かどうかを判定するために移動体の移動軌跡が必要であるため、異常判定処理を行うためには一定時間のデータが必要であるという問題があった。
【課題を解決するための手段】
【０００７】
本発明によれば、異常検知装置に、学習用の時系列データの特徴量の分布に基づいて生成された複数の正常モデルについて、それぞれの識別情報と特徴量の分布情報とを観測モデルとして記憶した観測モデル記憶手段と、前記学習用の時系列データにおける異常状態及び前記複数の正常モデルのそれぞれとの間の遷移関係とその遷移確率を記憶した遷移関係記憶手段と、異常検知の対象とする時系列データを取得するデータ取得手段と、前記取得した時系列データの所定の時刻における特徴量を算出する特徴量算出手段と、前記算出した特徴量と前記複数の正常モデルのそれぞれの特徴量の分布情報とに基づいて、１つの正常モデルまたは異常状態を観測モデルとして選択し、該選択された観測モデルの観測スコアを算出するモデル選択手段と、前記選択した観測モデルに関する遷移関係とその遷移確率とを前記遷移関係記憶手段から取得するモデル関係取得手段と、前記選択された観測モデルの観測スコアと前記取得した遷移関係とその遷移確率とに基づいて評価スコアを算出する評価手段と、前記評価スコアに基づいて前記時系列データの異常を検知する異常検知手段とを備える。
【発明の効果】
【０００８】
以上の構成によれば、本発明は、時系列で変化するデータに対して逐次的に処理して異常を検知することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態に関わる異常検知装置のブロック図。
【図２】第１の実施形態に関わる観測モデルの学習を説明する図。
【図３】第１の実施形態に関わる観測モデルの時系列での遷移関係を示す図。
【図４】第１の実施形態に関わる観測モデルの時系列でのモデル遷移を示す図。
【図５】第１の実施形態に関わる異常検知方法の処理フローを示す図。
【図６】第２の実施形態に関わる正常時の学習映像データ例を示す図。
【図７】第２の実施形態に関わる観測モデルの学習方法を示す図。
【図８】第２の実施形態に関わる判定対象の映像データ例を示す図。
【図９】第２の実施形態に関わる移動体８０２の時系列でのモデル遷移を示す図。
【図１０】第２の実施形態に関わる移動体８０２のモデル遷移関係を示す図。
【図１１】第２の実施形態に関わる異常検知方法の処理フローを示す図。
【図１２】第２の実施形態に関わるモデル遷移関係の抽出処理に係るフローを示す図。
【図１３】第２の実施形態に関わる判定対象の映像データの別の例を示す図。
【図１４】第２の実施形態に関わる移動体１３０２の時系列でのモデル遷移を示す図。
【図１５】第２の実施形態に関わる移動体１３０２のモデル遷移関係を示す図。
【発明を実施するための形態】
【００１０】
［第１の実施形態］
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００１１】
図１は本実施形態に関わる異常検知装置の構成（ソフトウェア構成）を説明する図である。図１に示す各機能部は、異常検知装置が有しているＣＰＵがＲＯＭまたはＲＡＭ等の格納手段に格納されている制御プログラムを実行することにより実現される。
【００１２】
本実施形態の動作は学習処理と識別処理に大きくは分けられる。学習処理に関わる学習部１２１は、観測モデル学習部１０３、観測モデル関係抽出部１０４、遷移モデル学習部１０５から構成される。また、識別処理に関わる識別部１２２は、モデル選択部１０６、モデル関係抽出部１０７、モデル関係評価部１０８、異常判定部１０９から構成される。また、学習処理、識別処理に共通して用いられる機能部は、データ取得部１０１、特徴量算出部１０２、観測モデル記録部１１１、遷移モデル記録部１１２により構成されている。
【００１３】
初めに学習処理に関わる学習部１２１を中心に説明を行ない、その後に識別処理に関わる識別部１２２を中心に説明を行なう。
【００１４】
（学習部）
データ取得部１０１は、機器に取り付けられたセンサの出力値を時系列で取得する。ここで用いるセンサは熱センサ、角度センサ、振動センサなどの各種センサを用いることができ、本発明ではどのセンサからの出力かについて特に限定しない。機器に取り付けられたセンサから取得された時系列のデータは、特徴量算出部１０２へと出力される。
【００１５】
特徴量算出部１０２は、得られた時系列データから特徴量を算出する。特徴量としては時系列データから同一時刻のセンサ出力値を取り出し、各センサの出力値をベクトルの各要素として多次元の特徴ベクトルとする。特徴ベクトルは大きさが１になるように正規化してもよい。また、その他の特徴量として、各センサの出力値を時系列でまとめ、離散ウェーブレット変換を適用して特徴ベクトルとしてもよい。抽出した各特徴量は観測モデル学習部１０３へと出力される。
【００１６】
観測モデル学習部１０３は、特徴量算出部１０２から取得した特徴量に基づいて観測モデルを学習する。観測モデル学習部１０３は、混合正規分布で特徴分布のクラスタリングを行い、観測モデルを作成する。ここで、混合正規分布のクラスタ数は、所定の離散値に設定するか、所定の離散値の候補の中から赤池情報量基準などを用いて選択してもよい。また、混合正規分布によるクラスタリングの他にｋ近傍法で所定離散値のクラスタ数Ｃに分割させてもよい。
【００１７】
図２は、観測モデルの学習を説明するための図である。同図において、２つのセンサの出力値を各要素として特徴ベクトルとした場合の特徴量の分布が示されており、図中の白丸が１個の特徴ベクトルに対応する。得られた特徴ベクトルはクラスタリングされて、ここでは、クラスタ２１１、２１２、２１３が形成されている。観測モデル学習部１０３は、各クラスタに対して、各クラスタ内の特徴分布から分散共分散行列を算出する。算出した各クラスタの分散共分散行列は観測モデル記録部１１１に記録するとともに、観測モデル関係抽出部１０４へ出力される。なお、バツ印で示す特徴量２２１、２２２については後述する。
【００１８】
図１に戻り、観測モデル関係抽出部１０４は、観測モデル学習部１０３で作成された観測モデルからクラスタＩＤおよび異常ラベルを時系列で記録する。本実施形態では、観測モデルに対して正常モデルのラベルであるクラスタＩＤと異常ラベルとを用いるようにしている。観測モデル関係抽出部１０４は、機器の正常稼働時に予め取得した時系列データを観測モデル２０１に適用することによりクラスタＩＤまたは異常ラベルを取得し、時系列で前後するデータを組み合わせてクラスタ間の遷移の関係をモデル遷移関係として抽出する。なお、複数のクラスタを用いてモデル遷移関係を抽出する場合、全ての組み合わせでもよいし、任意のクラスタ間の遷移関係を複数個、時系列でまとめてもよい。抽出した時系列でのクラスタ間の遷移の関係はモデル遷移関係として、遷移モデル学習部１０５へと出力される。
【００１９】
遷移モデル学習部１０５は、観測モデルのクラスタＩＤおよび異常ラベルの時系列での遷移関係を用いて、観測モデルのモデル遷移関係を学習する。本実施形態では、学習方法として隠れマルコフモデル（Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌ：ＨＭＭ）を用いるが、例えばベイジアンネットワークなどの他の方法を用いて学習してもよい。得られた時系列でのクラスタ間の遷移関係は、次の式１を用いてパラメータθ（対数尤度）が最大になるよう繰り返し更新することで、観測モデルのクラスタＩＤおよび異常ラベル間の遷移確率を学習する。
【００２０】
【数１】
0006525542.tif 000002
【００２１】
ここで、ｎは入力の観測モデルの時系列での遷移関係の数、ｘｉはｉ番目のモデル関係クラスタＩＤまたは異常ラベルのセットである。これにより、観測モデル２０１における時系列でのモデル遷移関係が得られる。図３は、得られたモデル遷移関係３０１、各クラスタＩＤおよび異常ラベルへの遷移確率３０２〜３０７を示している。得られたモデル遷移関係３０１及び遷移確率３０２〜３０７は、遷移モデル記録部１１２へと出力され、保存される。
【００２２】
（識別部）
データ取得部１０１は、各センサから判定対象となるセンサデータを取得する。取得した判定対象のセンサデータは、特徴量算出部１０２へと送られる。
【００２３】
特徴量算出部１０２は、データ取得部１０１が取得した判定対象のセンサデータから特徴量を算出する。特徴量の算出には、学習処理における特徴量の算出と同じ算出方法を用いて、判定対象のセンサデータの特徴ベクトルを算出する。算出した特徴量は、モデル選択部１０６へと出力される。
【００２４】
モデル選択部１０６は、観測モデル記録部１１１から混合ガウスモデル（観測モデル２０１）の各クラスタとクラスタの分散共分散行列を読み込む。そして、モデル選択部１０６は、判定対象のセンサデータの出力値から算出した特徴量に対して、観測モデル内のクラスタを一つ選択する。選択方法としては、特徴量とクラスタ重心位置のマハラノビス距離が最小となるクラスタを選択する。各特徴量に対して上述のマハラノビス距離の算出を行うことにより、各特徴量に対して混合ガウスモデル内のクラスタが選択される。
【００２５】
図２には、判定対象のセンサデータの出力値から作成した特徴量２２１、２２２をバツ印で示している。同図において、特徴量２２１に対してはクラスタ２１１が選択され、特徴量２２２に対してはクラスタ２１３が選択される。また、マハラノビス距離が設定した閾値以上である場合には、異常が選択されることになる。モデル選択部１０６は、各特徴量に対してクラスタＩＤまたは異常ラベルを決定して、その結果をモデル関係抽出部１０７へと出力する。更には、クラスタとのマハラノビス距離に応じたスコア値（距離が小さければ高く、距離が遠ければ低い）が観測スコアとしてモデル関係抽出部１０７へと出力される。
【００２６】
モデル関係抽出部１０７は、時系列での遷移関係として、センサデータから作成した特徴量が属するクラスタＩＤまたは異常ラベルを抽出することで、時系列の遷移関係を取得するモデル関係取得部としての機能を果たす。ここでの遷移関係の抽出方法は、学習方法における抽出方法と同じ方法を用いる。図４には、各時刻におけるクラスタＩＤまたは異常ラベルをモデル関係の抽出結果４０１として示している。また、同図の表には観測スコア、モデル遷移確率も併せて記載している。モデル関係抽出部１０７は、この各時刻におけるクラスタＩＤまたは異常ラベルをモデル関係評価部１０８へと出力する。
【００２７】
モデル関係評価部１０８は、まず遷移モデル記録部１１２からモデル遷移の学習データであるモデル遷移関係３０１及び遷移確率３０２〜３０７を読み込む。続いて、モデル関係評価部１０８は、モデルの遷移関係を評価したスコアを算出する。この評価スコアの算出方法としては、モデル遷移関係３０１及び遷移確率３０２〜３０７を用い、式２よりそのスコアを算出する。この評価スコアは、算出したスコアが閾値より高ければ正常、閾値より低ければ異常と判定される。
【００２８】
【数２】
0006525542.tif 000003
【００２９】
ここで、ｘｔは時刻ｔにおけるモデルのクラスタＩＤまたは異常ラベル、Ｐ（ｘｔ｜ｘｔ−１）はモデルの遷移確率、Ｐ（ｙｔ｜ｘｔ）はモデル選択部１０６で算出した観測スコアである。モデル関係評価部１０８は、式２によりモデル内のクラスタ遷移関係を評価した評価スコアを算出する。算出した評価スコアは、異常判定部１０９へと出力される。
【００３０】
異常判定部１０９は、上記評価スコアに基づいて、判定対象のセンサデータが正常か異常かを判定し、判定対象となるセンサデータの異常の検知をする異常検知部としての役割を果たす。つまり、異常判定部１０９は、上述した評価スコアが閾値以下の場合には異常と判定する。ここで、評価スコアの判定に用いる閾値は、任意の値を設定してもよいし、異常判定部１０９が、正常稼働時のデータから学習した観測モデルの遷移関係を用いて、その遷移の長さに応じて閾値を変更してもよい。正常稼働時のデータからモデル関係を作成し、正常稼働時のデータをモデルに適用して評価スコアを算出し、そのスコアに基づき閾値を決定するようにすることもできる。
【００３１】
続いて、本実施形態における異常検知方法の処理フローについて説明する。図５は、本実施形態の異常検知方法の処理フローを示すフローチャートである。なお、同フローチャートに従ったプログラムコードは本実施形態の異常検知装置内のＲＡＭやＲＯＭ等のメモリ（不図示）に格納されており、ＣＰＵ（不図示）等により読み出され、実行される。同図において、（Ａ）は学習処理のフローチャート、（Ｂ）は識別処理のフローチャートである。なお、この二つの処理を連続して行う必要はなく、また一度学習処理を実行しておけば、識別処理のみを任意のタイミングで行うことも可能である。
【００３２】
（学習処理）
まず、学習処理の処理フローについて説明する。ステップＳ５０１において、データ取得部１０１は機器に設置されているセンサから学習用データを取得する。取得したデータは特徴量算出部１０２へと送られ、処理はステップＳ５０２へと進む。
【００３３】
ステップＳ５０２では、特徴量算出部１０２が学習用データを用いて特徴量を算出する。特徴量算出部１０２は、センサの出力値を並べて特徴ベクトルすることで、特徴量を算出する。算出した特徴量は観測モデル学習部１０３へと送られ、処理はステップＳ５０３へと進む。
【００３４】
ステップＳ５０３では、観測モデル学習部１０３が各特徴量を用いて観測モデルの学習を行う。ここでの観測モデルの学習には、混合正規分布によるクラスタリング手法を用いる。観測モデル学習部１０３は、クラスタリングした結果から各クラスタに属する特徴量の分布に対して分散共分散行列も求める。観測モデル学習部１０３は、求めたクラスタ及び分散共分散行列を観測モデル記録部１１１へ記録するとともに、観測モデル関係抽出部１０４へと送る。そして、処理はステップＳ５０４へと進む。
【００３５】
ステップＳ５０４では、観測モデル関係抽出部１０４がモデル関係を抽出する。機器の正常稼働時に予め取得した時系列データを観測モデル２０１に適用してクラスタＩＤおよび異常ラベルを取得して、時系列で前後するデータを組み合わせたものをモデル関係として抽出する。抽出したモデル関係は遷移モデル学習部１０５へと出力され、処理はステップＳ５０５へと進む。
【００３６】
ステップＳ５０５では、遷移モデル学習部１０５が観測モデル関係抽出部１０４で抽出した時系列のモデル関係を学習して、観測モデルにおける遷移確率を算出する。遷移モデル学習部１０５は、各クラスタＩＤまたは異常ラベルの遷移確率が最大になるようパラメータθ＊を更新することにより、観測モデルの遷移確率の算出を行う。算出された観測モデルの遷移確率３０２〜３０７は、遷移モデル記録部１１２へと保存される。以上により、学習処理の処理フローは終了する。
【００３７】
（識別処理）
次に、識別処理の処理フローについて説明する。ステップＳ５１１において、データ取得部１０１は、機器に設置されているセンサからデータを取得する。センサからは一定の時間間隔で出力があり、データ取得部１０１は時系列のセンサデータを取得する。取得したセンサデータは特徴量算出部１０２へと送られ、処理はステップＳ５１２へと進む。
【００３８】
ステップＳ５１２では、特徴量算出部１０２がセンサデータを用いて特徴量を算出する。特徴量算出部１０２は、センサの出力値を並べて特徴ベクトルすることで、特徴量を算出する。算出した特徴量はモデル選択部１０６へと送られ、処理はステップＳ５１３へと進む。
【００３９】
ステップＳ５１３では、モデル選択部１０６が学習した観測モデルを観測モデル記録部１１１から読み込む。そして、モデル選択部１０６は、特徴量算出部１０２が算出した判定対象となるセンサデータの特徴量それぞれに対して、クラスタの重心位置からマハラノビス距離が最も近く、また特徴量が距離閾値内であるクラスタを選択する。マハラノビス距離が閾値以上である場合には、クラスタＩＤではなく異常ラベルが選択される。さらに、本ステップでは、モデル選択部１０６がマハラノビス距離に応じて観測スコアを算出する。特徴量ごとに選択されたクラスタＩＤまたは異常ラベルと観測スコアはモデル関係抽出部１０７へと出力され、処理はステップＳ５１４へと進む。
【００４０】
ステップＳ５１４では、モデル関係抽出部１０７が、時系列のセンサデータからモデルの遷移関係を抽出する。モデル関係抽出部１０７は、時系列で取得した特徴量から、各時刻におけるクラスタＩＤまたは異常ラベルをモデル関係抽出結果４０１として記録する。このモデル関係抽出結果４０１は、モデル関係評価部１０８へと送られ、処理はステップＳ５１５へと進む。
【００４１】
ステップＳ５１５では、まず、モデル関係評価部１０８が遷移モデル記録部１１２からモデル遷移関係３０１及び遷移確率３０２〜３０７を取得する。また、モデル関係評価部１０８は、取得したモデル遷移関係３０１及び遷移確率３０２〜３０７を用いて判定対象データの評価スコアを算出する。評価スコアは、上述したように式２を用いて算出され、算出されたた評価スコアは異常判定部１０９へと出力される。そして、処理はステップＳ５１６へと進む。
【００４２】
ステップＳ５１６において、異常判定部１０９は、評価スコアに基づいてデータに異常があるかを判定する。異常と判定された場合は、機器の表示部分に故障を表示し、機器を停止して処理を終了する。異常と判定されなければ、処理はステップＳ５１１へ戻り、異常検知処理が繰り返し実行される。以上により、識別処理は終了する。
【００４３】
ここで、本実施形態の異常検知方法による具体的な検知結果を説明する。本実施形態の異常検知方法では、評価スコアの閾値を０．１と設定している。そして、図３に示すモデル遷移関係３０１及び遷移確率３０２〜３０７、図４に示す観測スコアを用いて、評価スコアを式２より算出すると、時刻ｔ２からｔ３での評価スコアはＳｃｏｒｅ＝０．２５２となる。このスコアは閾値の０．１よりも大きいため、正常と判定することができる。一方で、図４に示すように、時刻ｔ３において観測モデルのみの判定では異常と判定されてしまう。このようなケースにおける検知精度を高めるには、一定時間のデータを蓄積して一定量のデータから異常か否かを判断する必要があった。これに対し、時系列の観測モデルの遷移関係を利用することにより時刻ｔ３の段階で判定を行うことができる。
【００４４】
このように、本実施形態では、観測スコアのみで異常を判定するのではなく、各時刻の観測スコアと時系列の観測モデルの遷移関係の両方を評価して異常の有無を判定するようにしているため、逐次的に異常検知を行うことができる。つまり、本実施形態では、観測スコアと時系列の遷移関係により評価スコアを算出し、その評価スコアを閾値との比較で異常を検知するようにしている。このような構成によって、本実施形態では、一定時間のデータを蓄積して異常を検知する手法に比べて早い段階で、異常の検知を行うことが可能となる。また、本実施形態は、観測スコアと時系列の観測モデルの遷移関係の両方に基づいて算出した評価スコアにより異常を検知するため、観測モデルのみで判断する場合に比べて高精度に異常を検知することができる。
【００４５】
［第２の実施形態］
次に、本発明の第２の実施形態として、映像データ内の正常行動を学習し、監視カメラ等から入力される映像データに異常がないかを判定する構成について説明を行う。なお、第１の実施形態において既に説明をした構成については、同一の符号を付し、その説明を省略する。
【００４６】
本実施形態の異常検知装置も、図１に示した第１の実施形態の異常検知装置と同様の構成（機能部）を有している。以下、本実施形態における各機能部の処理内容について説明する。
【００４７】
（学習部）
データ取得部１０１は、監視カメラ等で撮影した正常時の映像データを取得する。図６は、正常時の映像データの一例を図示している。図６の映像データ６０１では、移動体６０２、６０３、６０４がそれぞれ経路６０５、６０６、６０７、６０８を移動している。また、同図に示されるように、取得した正常時の映像データ６０１はグリッド６０９により各領域に分割される。この領域分割は、複数のブロック領域に等分割してもよいし、非特許文献１に記載のＭｅａｎ  Ｓｈｉｆｔなどの公知の技術を用いて分割するようにしてもよい。分割した各領域の映像データは、特徴量算出部１０２へと出力される。
【００４８】
特徴量算出部１０２は、取得した正常時の映像データ６０１をグリッド６０９で分割した各領域に対して特徴量を算出する。特徴量としては、映像データに対して、連続する２フレームの画像を抜き出し、２フレーム間の画像の２次元の動きベクトルを求めて特徴量とする。
【００４９】
図７は、本実施形態における観測モデルの学習を説明する図である。同図において、白丸で示すのは、正常時の映像データ６０１のうち領域（３，３）において算出した２次元の動きベクトルの特徴量である。同図においては、抽出された特徴量が、クラスタ７０１、７０２としてクラスタリングされている。なお、特徴量は２次元の動きベクトルに限定されるものではなく、非特許文献２に記載のＨＯＦ（Ｈｉｓｔｏｇｒａｍ  ｏｆ  Ｏｐｔｉｃａｌ  Ｆｌｏｗ）特徴量を用いてもよい。また、非特許文献３に記載の画像データの各領域に対してＨＯＧ（Ｈｉｓｔｏｇｒａｍ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔ）などの特徴量や、３次元勾配（映像データのｘ、ｙ、ｔ方向の勾配）のヒストグラムなどの時空間特徴量を併せて用いてもよい。得られた各領域の特徴量は、観測モデル学習部１０３へと出力される。
【００５０】
観測モデル学習部１０３は、各領域で算出した特徴量から混合正規分布でクラスタリングすることにより、観測モデルを学習する。また、観測モデル学習部１０３は、各クラスタの分散共分散行列を算出し、観測モデル記録部１１１へ記録するとともに、観測モデル関係抽出部１０４へ出力する。
【００５１】
観測モデル関係抽出部１０４は、正常時の映像データの特徴量を観測モデルに適用してクラスタＩＤまたは異常ラベルを選択し、選択されたモデルの時系列の遷移関係を抽出する。その際、観測モデル関係抽出部１０４は、正常時の映像データに基づいて、動きベクトルから移動体の領域を抽出し、移動体の重心位置を決定する。そして、観測モデル関係抽出部１０４は、各移動体の重心位置からどの分割領域内に属するかを決定し、領域ＩＤを時系列でつなげ、また各時刻において選択されたモデルのクラスタＩＤまたは異常ラベルもモデル間の遷移関係として抽出する。このときの時刻の間隔は、２フレーム間隔でも、５フレーム間隔でも、１０フレーム間隔でもよい。また、移動体の位置関係は、必ずしも隣接する領域間の関係を抽出する必要はなく、例えば、領域（２，１）と領域（４，１）のような離れた位置のモデル遷移関係を抽出してもよい。抽出したモデル遷移関係に対応する正常の映像データの観測モデルによるクラスタＩＤまたは異常ラベルをそれぞれセットにすることで、観測モデルにおける遷移関係が作成される。抽出した観測モデルの遷移関係は、遷移モデル学習部１０５へと出力される。
【００５２】
遷移モデル学習部１０５は、正常時の映像データから抽出した移動体の動きに基づく領域内・領域間のモデルのクラスタＩＤまたは異常ラベルの遷移関係を用いて、ベイジアンネットワークや隠れマルコフモデルなどにより遷移確率を学習する。具体的には、遷移モデル学習部１０５は、上述した式２を用いて、各遷移確率の尤度が最大になるように遷移確率を学習する。また、別の学習方法として、階層型隠れマルコフモデルを用い、領域内の遷移確率と領域間の遷移確率を個別に学習してもよい。求めた観測モデルの遷移確率は、遷移モデル記録部１１２へと保存される。
【００５３】
（識別部）
データ取得部１０１は、監視カメラ等から判定対象となる映像データを取得する。図８は、本実施形態において判定対象となる映像データを示す図である。同図に示されるように、映像データ８０１では、移動体８０２が経路８０３に沿って移動している。取得した映像データ８０１は、学習時と同様にして複数の領域に分割される。分割された各領域の映像データは、特徴量算出部１０２へと出力される。
【００５４】
特徴量算出部１０２は、取得した判定対象の映像データ８０１を分割してなる各領域に対して特徴量を算出する。特徴量の算出は、学習時と同様に２フレーム間での２次元の動きベクトルを抽出する。得られた各領域の特徴量は、モデル選択部１０６へと出力される。
【００５５】
モデル選択部１０６は、観測モデル記録部１１１から各領域の観測モデルを読み込む。モデル選択部１０６は、判定対象の映像データの各領域で算出した特徴量に対して各領域の観測モデルを適用し、クラスタＩＤまたは異常ラベルを選択する。具体的には、モデル選択部１０６は、各クラスタと特徴量のマハラノビス距離を算出し、最も距離が近いクラスタで且つ閾値以下の距離にあるクラスタＩＤを選択する。マハラノビス距離が閾値以上であれば、モデル選択部１０６は異常ラベルを選択する。また、モデル選択部１０６は、各領域の特徴量に対して選択されたクラスタＩＤとのマハラノビス距離に基づき観測スコアを決定する。選択されたクラスタＩＤまたは異常ラベルと、観測スコアはモデル関係抽出部１０７へと出力される。
【００５６】
モデル関係抽出部１０７は、選択されたモデルの時系列および領域間でのモデル遷移関係を抽出する。ここで、モデル関係抽出部１０７は、学習方法と同様の方法によりモデル遷移関係を抽出する。また、モデル関係抽出部１０７は、時刻が経過するたびに移動体の位置を算出して時系列で対応を取り、対応が取れた移動体に対して、モデルの遷移関係が更新されていく。モデル関係抽出部１０７により抽出された観測モデルの遷移関係と観測スコアは、モデル関係評価部１０８へと出力される。
【００５７】
モデル関係評価部１０８は、まず遷移モデル記録部１１２から領域内・領域間でのクラスタＩＤまたは異常ラベルの遷移関係モデルを読み込む。そして、モデル関係評価部１０８は、モデル関係抽出部１０７によって抽出された判定対象データのモデル遷移関係と観測スコアを用いて評価スコアを算出する。
【００５８】
図１０は、図８に示した移動体８０２に対するモデルの遷移関係を示している。同図において、白丸で示す各グラフがクラスタＩＤまたは異常ラベル、実線のエッジが遷移関係、各エッジに対して付されているｐは観測モデルの遷移確率を表している。図１０に示したグラフモデルは、移動体毎にＨＭＭを適用することにより構築される。モデル関係評価部１０８は、判定対象データのモデル遷移関係と観測スコアを用い、上述の式２より評価スコアを算出する。これにより、移動体８０２に対する観測モデルの遷移関係１００１の各時刻で繰り返しスコアが算出される。算出された評価スコアは、異常判定部１０９へと出力される。
【００５９】
異常判定部１０９は、モデル関係評価部１０８で算出した評価スコアを用いて、判定対象となる映像データに異常がないかを判定する。異常判定部１０９は、評価スコアが閾値以下の場合に異常ありと判定する。
【００６０】
続いて、本実施形態における異常検知方法の処理フローについて説明する。図１１は、本実施形態の異常検知方法の処理フローを示すフローチャートである。なお、同フローチャートに従ったプログラムコードは本実施形態の異常検知装置内のＲＡＭやＲＯＭ等のメモリ（不図示）に格納されており、ＣＰＵ（不図示）等により読み出され、実行される。
【００６１】
（学習処理）
まず、本実施形態の学習処理の処理フローについて説明する。ステップＳ１１０１において、データ取得部１０１は監視カメラ等で撮影した監視対象の正常時の学習映像データを取得する。また、データ取得部１０１は、取得した映像データを複数の領域に分割し、領域分割した学習映像データを特徴量算出部１０２へと送る。そして、処理はステップＳ１１０２へと進む。
【００６２】
ステップＳ１１０２では、特徴量算出部１０２は正常時の学習映像データの各領域に対して２フレーム間の画像を抜き出し、２次元の動きベクトルを算出する。算出した学習映像データの各領域の特徴量は、観測モデル学習部１０３へと出力され、処理はステップＳ１２０３へと進む。
【００６３】
ステップＳ１１０３では、観測モデル学習部１０３は学習映像データの各領域の特徴量を用いて観測モデルを学習する。観測モデル学習部１０３は、特徴量を混合正規分布でクラスタリングし、各クラスタの分散共分散行列を併せて算出することにより、観測モデルの学習を行う。学習した学習映像データの各領域の観測モデルは、観測モデル記録部１１１に記録されるとともに、観測モデル関係抽出部１０４へ出力され、処理はステップＳ１２０４へと進む。
【００６４】
ステップＳ１１０４では、観測モデル関係抽出部１０４は学習映像データのモデルの遷移関係を抽出する。この処理は、３つのステップに分けられる。図１２は、観測モデル関係抽出部１０４によるモデルの遷移関係抽出の処理フローを示している。
【００６５】
図１２のステップＳ１２０１において、観測モデル関係抽出部１０４は学習映像データから移動体の領域を抽出する。観測モデル関係抽出部１０４は、特徴量算出部１０２により算出した動きベクトルを用いて、動きベクトルがある画素を連結させて領域とし、映像データ内にある動き領域を抽出する。
【００６６】
次に、ステップＳ１２０２では、観測モデル関係抽出部１０４は抽出した各領域に対して重心位置を求め、それを移動体の位置とする。そして、観測モデル関係抽出部１０４は、求めた移動体領域の重心位置より、映像データを分割して作成した領域のどの領域に移動体が属するかを決定し、その領域ＩＤを記録する。
【００６７】
ステップＳ１２０３では、決定された領域ＩＤに基づき前時刻においてどの移動体と対応するかを決定するため、ユークリッド距離で求めて最も距離が近い位置にある移動体と連結する。これらの処理を時系列で行い、また移動体の領域ＩＤおよびそのときの特徴量から選択されたクラスタＩＤを併せて記憶することで、モデルの遷移関係１００１が作成される。このようにして、モデルの遷移関係１００１は各移動体に対して作成される。
【００６８】
以上がステップＳ１１０４におけるモデルの遷移関係を抽出する処理であり、抽出されたモデルの遷移関係１００１は遷移モデル学習部１０５へと送られ、処理はステップＳ１２１５へと進む。
【００６９】
ステップＳ１１０５では、遷移モデル学習部１０５は、移動体の領域内または領域間における動きに基づいてモデルのクラスタＩＤまたは異常ラベルの遷移について学習する。遷移モデル学習部１０５は、各遷移確率が最大となるようにモデルの遷移関係を学習することにより、観測モデルのクラスタＩＤまたは異常への遷移確率を得る。学習した遷移モデルは、遷移モデル記録部１１２に記録され、ステップＳ１１０５は終了となる。以上で学習処理は終了する。
【００７０】
次に、本実施形態の識別処理の処理フローについて説明する。ステップＳ１１１１において、データ取得部１０１は判別対象となる映像データを取得する。データ取得部１０１は、映像データを監視カメラ等から取得する。また、データ取得部１０１は、取得した映像データを複数の領域に分割し、分割した映像データを特徴量算出部１０２へと出力する。そして、処理はステップＳ１１１２へと進む。
【００７１】
ステップＳ１１１２では、特徴量算出部１０２は、上述した特徴量の抽出手法により、取得した映像データの各領域に対して特徴量を抽出する。特徴量算出部１０２は、抽出した特徴量をモデル選択部１０６へと出力し、処理はステップ１１１３へと進む。
【００７２】
ステップＳ１１１３では、まずモデル選択部１０６が、観測モデル記録部１１１から各領域の観測モデルを読み込む。そして、モデル選択部１０６は、判定対象となる映像データの各領域の特徴量に対して、観測モデルの各クラスタＩＤとのマハラノビス距離を算出し、最も距離が短く且つ距離が閾値以下であるクラスタＩＤを選択する。距離が閾値以上の場合には、異常のラベルが選択される。モデル選択部１０６は、選択したクラスタＩＤと、そのクラスタとの距離に基づき求められる観測スコアとをモデル関係抽出部１０７へと送り、処理はステップＳ１１１４へと進む。
【００７３】
ステップＳ１１１４では、モデル関係抽出部１０７は、判定対象となる映像データのモデル間の遷移関係を抽出する。この遷移関係の抽出処理の内容は、ステップＳ１１０４と同様であるため、ここでは省略する。本ステップの処理により、判定対象の映像データの観測モデルの遷移関係１００１が得られ、モデル関係評価部１０８へと出力される。そして、処理はステップＳ１１１５へと進む。
【００７４】
ステップＳ１１１５では、モデル関係評価部１０８は、判定対象の映像データに対するモデルの遷移関係を評価する。まず、モデル関係評価部１０８は、遷移モデル記録部１１２からモデルの遷移関係における遷移確率を読み込む。次に、モデル関係評価部１０８は、抽出した移動体のモデル遷移関係１００１から、ＨＭＭを用いてグラフモデルを作成し、各モデル遷移の遷移確率を割り当てる。さらに、モデル関係評価部１０８は、このグラフモデルに対して、上述した式２を用いて評価スコアを算出する。これは移動体が複数あれば、各移動体に対して評価スコアの算出が行われる。以上の処理が終了すると、評価スコアは異常判定部１０９へと送られ、処理はステップＳ１１１６へと進む。
【００７５】
ステップＳ１１１６では、異常判定部１０９は上述の評価スコアが設定した閾値以下かどうかを判定し、閾値以下であれば映像データ内に異常があると判断して異常箇所を映像に合わせて表示し、処理を終了する。異常が検出されなければ、次の時刻に移り、処理はステップＳ１１１１へと戻り、識別処理の実行を繰り返す。
【００７６】
ここで、本実施形態の異常検知方法による具体的な検知結果を説明する。図９は、図８の移動体８０２の時系列での遷移関係９０１として、モデル選択部１０６によって選択されたモデルのクラスタＩＤと観測スコアを示している。同図の例では、時刻ｔ７において観測スコアが低いために、時刻ｔ７におけるモデルのクラスタＩＤとして異常ラベルが抽出されており、時刻ｔ７において観測モデルのみの判定では異常と判定されてしまう。しかし、本実施形態では、遷移モデル学習部１０５が観測モデルを学習した結果、図９に示されているように、クラスタＩＤ“３”から異常ラベルへの遷移確率は他に比べても低く、そのためモデル関係評価部１０８が算出する評価スコアが高い値となる。これにより、本実施形態の異常検知方法では、時刻ｔ７も正常と判断する。
【００７７】
また、その他の例として、図１３には、移動体１３０２が経路１３０３に沿って移動する映像データ１３０１が図示されている。図１４は、図１３の移動体１３０２のモデルの遷移関係１４０１としてモデル選択部１０６によって選択されたモデルのクラスタＩＤと観測スコアを示し、図１５は、移動体１３０２に関わる遷移関係１５０１とモデル遷移確率を示している。
【００７８】
図１４に示す例では、観測モデルのみで判定する異常検知方法では、時刻ｔ４、ｔ７、ｔ８、ｔ１３、ｔ１４において映像中の移動体１３０２の動きが異常として検知される。ただし、このような検知手法では、移動体１３０２が正常時と異なる動きをしている領域しか異常として検知されない。また、図１３に示す移動体１３０２の一連の動き（Ｕターン）を異常な行動として検知するためには、一定時間の映像データを蓄積して追尾処理により移動体の軌跡を求め、移動体の異常を検知する必要があった。
【００７９】
しかし、本実施形態の異常検知方法によれば、観測モデルとモデルの遷移確率の両方に基づいて算出された評価スコアにより異常の検知を行っているため、観測スコアと遷移確率が低くなる時刻ｔ４から継続して移動体１３０２の動きを異常と判定できる。
【００８０】
以上説明したように、本実施形態に関わる異常検知方法は、映像データから移動体の各時刻の特徴量とモデル遷移関係を抽出し、各時刻の特徴量から算出される観測スコアとモデル遷移関係とにより評価スコアを算出する。そして、この評価スコアを閾値と比較することで、映像データ中の異常を検知する。このように、本実施形態では、観測スコアと時系列の観測モデルの遷移関係の両方を評価して異常の有無を判定するようにしているため、逐次的に異常検知を行うことができる。従って、一定時間のデータを蓄積して異常を検知する手法に比べて早い段階で、異常の検知を行うことが可能となる。
【００８１】
また、図８に示す移動体の動き（一連の左折動作）に関して、観測モデルだけで異常を検知する構成では、ちょうど左折するタイミング（図９のｔ７）の僅かな動きによって異常と判定されてしまう。一方、本実施形態によれば、観測モデルに加えてモデル間の遷移関係も併せて正常か異常か判定することで、誤検知を低減した異常検知方法を実現できる。
【００８２】
また、本発明は、上記実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００８３】
１０１  データ取得部
１０２  特徴量算出部
１０３  観測モデル学習部
１０４  観測モデル関係抽出部
１０５  遷移モデル学習部
１０６  モデル選択部
１０７  モデル関係抽出部
１０８  モデル関係評価部
１０９  異常判定部
１１１  観測モデル記録部
１１２  遷移モデル記録部
【図１】
0006525542.tif 000004
【図２】
0006525542.tif 000005
【図３】
0006525542.tif 000006
【図４】
0006525542.tif 000007
【図５】
0006525542.tif 000008
【図６】
0006525542.tif 000009
【図７】
0006525542.tif 000010
【図８】
0006525542.tif 000011
【図９】
0006525542.tif 000012
【図１０】
0006525542.tif 000013
【図１１】
0006525542.tif 000014
【図１２】
0006525542.tif 000015
【図１３】
0006525542.tif 000016
【図１４】
0006525542.tif 000017
【図１５】
0006525542.tif 000018