(57)【要約】      （修正有）【課題】時系列データを複数のクラスに識別するのに適したモデルの学習を行えるようにする。【解決手段】定対象の時系列データを複数のクラスに識別するためのモデルを学習する学習装置２０であって、学習用の時系列データから特徴量を抽出する抽出部１２と、前記特徴量を用いてモデルを学習する学習部２１と、前記モデルの複雑度に基づいて、前記モデルを学習する際のモデルの粒度を変更する変更部２３と、を有する。学習部は、変更部により変更された粒度により前記モデルを再度学習する。【選択図】図１
2016200971.tif 000002
【特許請求の範囲】
【請求項１】
判定対象の時系列データを複数のクラスに識別するためのモデルを学習する学習装置であって、
学習用の時系列データから特徴量を抽出する抽出部と、
前記特徴量を用いてモデルを学習する学習部と、
前記モデルの複雑度に基づいて、前記モデルを学習する際の該モデルの粒度を変更する変更部と、を有し、
前記学習部は、前記変更部により変更された粒度により前記モデルを再度学習することを特徴とする学習装置。
【請求項２】
前記変更部は、前記モデルを学習する領域範囲または時間範囲のうち少なくともどちらか一方を変更することにより、当該モデルの粒度を変更することを特徴とする請求項１に記載の学習装置。
【請求項３】
前記モデルの複雑度を決定する決定部を更に有することを特徴とする請求項１または２に記載の学習装置。
【請求項４】
前記決定部は、前記モデルを評価するための評価モデルをランダムフォレストにより学習した際の当該ランダムフォレストの深さに基づいて、前記モデルの複雑度を決定することを特徴とする請求項３に記載の学習装置。
【請求項５】
前記モデルは、前記判定対象の時系列データから正常または異常を判別するためのモデルであることを特徴とする請求項１から４のいずれか１項に記載の学習装置。
【請求項６】
前記変更部は、前記モデルの複雑度が所定の閾値以下となるか、または前記モデルの粒度が設定された最小粒度となるまで、前記モデルの粒度を繰り返し変更することを特徴とする請求項１から５のいずれか１項に記載の学習装置。
【請求項７】
前記変更部は、前記モデルの複雑度と前記特徴量の複雑度とに基づいて、前記モデルを学習する際の該モデルの粒度を変更することを特徴とする請求項１から６のいずれか１項に記載の学習装置。
【請求項８】
請求項１から７のいずれか１項に記載の学習装置により学習されたモデルを用いて、判定対象の時系列データを複数のクラスに識別することを特徴とする識別装置。
【請求項９】
判定対象の時系列データを複数のクラスに識別するためのモデルを学習する学習方法であって、
学習用の時系列データから特徴量を抽出する抽出ステップと、
前記特徴量を用いてモデルを学習する学習ステップと、
前記モデルの複雑度に基づいて、前記モデルを学習する際の該モデルの粒度を変更する変更ステップと、を有し、
前記学習ステップは、前記変更ステップにより変更された粒度により前記モデルを再度学習することを特徴とする学習方法。
【請求項１０】
請求項９に記載の学習方法により学習されたモデルを用いて、判定対象の時系列データを複数のクラスに識別することを特徴とする識別方法。
【請求項１１】
コンピュータを、請求項１から７のいずれか１項に記載の学習装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データに基づいて複数クラスに識別するモデルを学習し、学習されたモデルに基づいて対象の時系列データを識別する技術に関する。
【背景技術】
【０００２】
従来から、センサが取得したデータが異常であるか否かを判定する異常検知処理に関する様々な技術が知られている。その手法の１つとして、正常時に収集された正常データがとりうる正常の範囲を示す正常モデルを学習し、判定対象のデータが正常モデルの範囲内にある場合は正常と判定し、範囲外にある場合は異常と判定するものがある。
【０００３】
非特許文献１に記載された方法では、まず、映像データのフレームを格子状に分割し、あらかじめ領域ごとに正常モデルを学習する。そして、判定対象となる映像データの各フレームを学習時と同様に格子状に分割し、分割された各領域から求めたデータが異常であるか否かを判定する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｈ．  Ｈａｃｈｉｙａ，Ｍ．  Ｍａｔｓｕｇｕ．  ＮＳＨ：  Ｎｏｒｍａｌｉｔｙ  Ｓｅｎｓｉｔｉｖｅ  Ｈａｓｈｉｎｇ  ｆｏｒ  Ａｎｏｍａｌｙ  Ｄｅｔｅｃｔｉｏｎ．  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  Ｗｏｒｋｓｈｏｐｓ  （ＩＣＣＶＷ），２０１３  ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ，ｐａｇｅｓ  ７９５−８０２，２０１３．
【非特許文献２】Ｊ．  Ｌｉ，Ｓ．  Ｇｏｎｇ，Ｔ．  Ｘｉａｎｇ．  Ｓｃｅｎｅ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ｆｏｒ  Ｂｅｈａｖｉｏｕｒ  Ｃｏｒｒｅｌａｔｉｏｎ．  Ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｅｕｒｏｐｅａｎ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  （ＥＣＣＶ），  Ｍａｒｓｅｉｌｌｅ，Ｆｒａｎｃｅ，２００８．
【非特許文献３】Ｊ．  Ｐｅｒｓ，ｅｔ  ａｌ．，  Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  ｏｐｔｉｃａｌ  ｆｌｏｗ  ｆｏｒ  ｅｆｆｉｃｉｅｎｔ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎ  ｏｆ  ｂｏｄｙ  ｍｏｔｉｏｎ，Ｐａｔｔｅｒｎ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ｌｅｔｔｅｒｓ，ｖｏｌ．  ３１，  ｎｏ．  １１，ｐａｇｅｓ  １３６９−１３７６，２０１０
【非特許文献４】Ｄ．  Ｇ．  Ｌｏｗｅ，Ｏｂｊｅｃｔ  ｒｅｃｏｇｎｉｔｉｏｎ  ｆｒｏｍ  ｌｏｃａｌ  ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｆｅａｔｕｒｅｓ，Ｉｎ  ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｉｎｔｅｒｎａｔｉｏｎａｌ  ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  ｃｏｍｐｕｔｅｒ  ｖｉｓｉｏｎ  （ＩＣＣＶ），ｐａｇｅｓ  １１５０−１１５７，１９９９
【非特許文献５】Ｄ．  Ａ．  Ｒｅｙｎｏｌｄｓ．  Ｒｏｂｕｓｔ  ｔｅｘｔ−ｉｎｄｅｐｅｎｄｅｎｔ  ｓｐｅａｋｅｒ  ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  ｕｓｉｎｇ  Ｇａｕｓｓｉａｎ  ｍｉｘｔｕｒｅ  ｓｐｅａｋｅｒ  ｍｏｄｅｌｓ，Ｓｐｅｅｃｈ  ａｎｄ  Ａｕｄｉｏ  Ｐｒｏｃｅｓｓｉｎｇ，ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ，ｖｏｌ．３，ｉｓｓｕｅ  １，ｐａｇｅｓ  ７２−８３，１９９５
【非特許文献６】Ｈ．  Ａｋａｉｋｅ．  Ｉｎｆｏｒｍａｔｉｏｎ  ｔｈｅｏｒｙ  ａｎｄ  ａｎ  ｅｘｔｅｎｓｉｏｎ  ｏｆ  ｔｈｅ  ｍａｘｉｍｕｍ  ｌｉｋｅｌｉｈｏｏｄ  ｐｒｉｎｃｉｐｌｅ．  Ｉｎ  Ｂ．  Ｎ．  Ｐｅｔｒｏｖ  ＆  Ｂ．  Ｆ．  Ｃｓａｋｉ  （Ｅｄｓ．），Ｓｅｃｏｎｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｈｅｏｒｙ，ｐａｇｅｓ  ２６７−２８１，Ａｃａｄｅｍｉａｉ  Ｋｉａｄｏ：  Ｂｕｄａｐｅｓｔ，１９７３．
【非特許文献７】Ｌ．  Ｂｒｅｉｍａｎ，Ｒａｎｄｏｍ  Ｆｏｒｅｓｔｓ，Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ，ｖｏｌ．  ４５，  ｉｓｓｕｅ  １，ｐａｇｅｓ  ５−３２，２００１．
【非特許文献８】Ｍａｈａｌａｎｏｂｉｓ，Ｐｒａｓａｎｔａ  Ｃｈａｎｄｒａ，Ｏｎ  ｔｈｅ  ｇｅｎｅｒａｌｉｓｅｄ  ｄｉｓｔａｎｃｅ  ｉｎ  ｓｔａｔｉｓｔｉｃｓ，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｎａｔｉｏｎａｌ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｓｃｉｅｎｃｅｓ  （Ｃａｌｃｕｔｔａ）  ２，ｐａｇｅｓ  ４９−５５，１９３６．
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、非特許文献１に記載の方法では、映像データのフレームを単に格子状に分割しているだけであったので、異常と正常の判定に適した正常モデルが学習される領域に分割されているとは限らなかった。
【課題を解決するための手段】
【０００６】
以上の課題を解決するために、本発明は、判定対象の時系列データを複数のクラスに識別するためのモデルを学習する学習装置であって、学習用の時系列データから特徴量を抽出する抽出部と、前記特徴量を用いてモデルを学習する学習部と、前記モデルの複雑度に基づいて、前記モデルを学習する際の該モデルの粒度を変更する変更部と、を有し、前記学習部は、前記変更部により変更された粒度により前記モデルを再度学習することを特徴とする。
【発明の効果】
【０００７】
以上の構成によれば、本発明は、時系列データを複数のクラスに識別するのに適したモデルを学習することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態に関わる異常検知システムの構成を示す概略ブロック図。
【図２】第１の実施形態に関わる学習装置の動作を示すフローチャート。
【図３】第１の実施形態において特徴空間上に散布されたサンプル点と正常モデルの識別平面を示す模式図。
【図４】第１の実施形態において特徴空間に散布されたサンプル点を正常モデルを非表示にして示す模式図。
【図５】第１の実施形態においてランダムフォレストの学習済みツリーの特徴空間上での識別平面の模式図。
【図６】第１の実施形態において正常モデルを学習する領域範囲の例を示す図。
【図７】第１の実施形態に関わる識別装置の動作を示すフローチャート。
【図８】第２の実施形態に関わる異常検知システムの構成を示す概略ブロック図。
【図９】第２の実施形態に関わる学習装置の動作を示すフローチャート。
【図１０】第２の実施形態において正常モデルを学習する時間範囲の例を示す図。
【図１１】第２の実施形態に関わる識別装置の動作を示すフローチャート。
【図１２】第３の実施形態に関わる異常検知システムの構成を示す概略ブロック図。
【図１３】第３の実施形態に関わる学習装置の動作を示すフローチャート。
【図１４】第３の実施形態において特徴量複雑度の算出方法を説明するための概念図。
【発明を実施するための形態】
【０００９】
［第１の実施形態］
本実施形態は、より単純な正常モデルが学習されるように、正常モデルの粒度を変更するものである。本実施形態において、正常モデルの粒度とは、同一の正常モデルを学習する領域の範囲に相当する。つまり、本実施形態では、各正常モデルの複雑度が低くなるように、正常モデルを学習する領域範囲を決定して、各領域範囲で異なる正常モデルを学習する。
【００１０】
以下、図面を参照して本発明の実施形態を詳細に説明する。図１は、本実施形態に係る異常検知システムの構成を示す概略ブロック図である。異常検知システム１は、学習用データ取得装置１０と、学習装置２０と、判定用データ取得装置３０と、識別装置４０と、端末装置５０と、モデル記憶部Ｍ１とで構成されている。なお、これらの装置間は、電子回路を介して接続されていても、ネットワークを介して接続されていてもよい。このネットワークには、例えば、携帯電話回線網やインターネットが適用できる。
【００１１】
異常検知システム１の各装置は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ＨＤＤ等のハードウェア構成を備える。そして、ＣＰＵがＲＯＭやＨＤ等に格納されたプログラムを実行することにより、例えば、後述する学習装置２０及び識別装置４０の機能構成やこれら装置に係るフローチャートの処理が実現される。ＲＡＭは、ＣＰＵがプログラムを展開して実行するワークエリアとして機能する記憶領域を有する。ＲＯＭは、ＣＰＵが実行するプログラム等を格納する記憶領域を有する。ＨＤは、ＣＰＵが処理を実行する際に要する各種のプログラム、閾値に関するデータ等を含む各種のデータを格納する記憶領域を有する。
【００１２】
本実施形態で説明する異常検知システム１の動作は、学習フェーズと、識別フェーズとに分けることができる。学習フェーズでは、監視対象の正常な状態をカメラなどの撮影手段で取得した映像データ（時系列データ）を学習用の正常データとし、この正常データから得られる特徴量の分布を正常なモデルとして学習する。本実施形態では、映像データのフレームに対して領域ごとに異なる正常モデルが学習される。
【００１３】
識別フェーズでは、監視対象をカメラなどの撮影手段で取得した映像データを判定対象データとし、この判定対象データから得られた特徴量を、学習した正常モデルを用いて正常クラス又は異常クラスに識別する。異常がある場合は、警備室等の監視センタに常駐する監視者に警報する。この監視対象には、例えば、一般家庭の屋内及び屋外、又は病院、駅などの公共施設にいる人物や、生産ラインで製造された製品や、設備機器などが含まれる。
【００１４】
次に、学習用データ取得装置１０の構成について詳細に説明する。学習用データ取得装置１０は、学習用データ取得部１１と、学習用特徴量抽出部１２とを備えている。学習用データ取得部１１は、正常な学習用映像データを取得し、取得した映像データを学習用特徴量抽出部１２に転送する。学習用特徴量抽出部１２は、学習用データ取得部１１から受け取った映像データから特徴量を抽出する。ここで、特徴量を抽出する方式としては種々の方式を採用することができ、例えばオプティカルフローを用いることで動き特徴量を抽出するようにしてもよい。オプティカルフローを抽出するためのアルゴリズムについても種々の方法を用いることができ、例えば非特許文献３で提案されている方式を用いることができる。
【００１５】
なお、学習用特徴量抽出部１２が複数の特徴量を同時に抽出するようにしてもよい。オプティカルフロー以外の画像特徴量を用いる場合は、例えば非特許文献４で提案されている特徴量を用いることができる。学習用特徴量抽出部１２によって抽出された特徴量の情報は、学習装置２０に送られる。
【００１６】
次に、学習装置２０の構成について詳細に説明する。学習装置２０は、モデル学習部２１と、モデル複雑度決定部２２と、領域範囲変更部２３とを備えている。図２は、本実施形態に関わる学習装置２０の動作を示すフローチャートである。以下、図２を用いて、学習装置２０の各機能部の構成を説明する。
【００１７】
ステップＳ１０１において、モデル学習部２１は、学習用特徴量抽出部１２によって抽出された特徴量を受け取る。ここで受け取った特徴量に基づいて映像データのフレーム全体を一つの領域として正常モデルを学習する。
【００１８】
本実施形態において、正常モデルを学習する方法は特定の方法に限定されるものではなく、例えば非特許文献５で提案されている混合正規分布モデルクラスタリング（以降、ＧＭＭクラスタリングと呼ぶ）を用いることができる。ＧＭＭクラスタリングは、特徴空間上の特徴量の分布に近似するように混合正規分布を当てはめ、正常モデルを学習することが可能である。以降では、ＧＭＭクラスタリングを用いて正常モデルを学習した場合、一度のＧＭＭクラスタリングで用いた混合正規分布を指して正常モデルと呼ぶ。なお、ＧＭＭクラスタリングにおいて単独の正規分布を用いた場合は、混合数を１とするＧＭＭであり、同様に該正規分布を正常モデルと呼ぶ。なお、上記の説明のように正常モデルを学習するのではなく、あらかじめ用意した正常モデルを選択して用いてもよい。例えば、異なる平均値と分散が定義された正規分布を複数用意しておき、ＧＭＭクラスタリングで用いることができる。モデル学習部２１は、本ステップで取得した正常モデルをモデル複雑度決定部２２に転送する。
【００１９】
ステップＳ１０２において、モデル複雑度決定部２２はモデル学習部２１から正常モデルを受け取り、正常モデル複雑度を決定する。ここで、正常モデル複雑度は正常モデルがどの程度複雑であるかを示す指標である。正常モデルの複雑度を測る方法は大きく分けて二つあり、モデル学習部２１で取得した正常モデルのパラメータに基づいて複雑度を決定する方法と、特徴空間上に配置された正常モデルの複雑度を決定する方法とがある。上記の二つの方法はアプローチが異なるが、正常モデルの複雑度を測るという点で目的を同じくする。
【００２０】
以下、正常モデルの複雑度を決定する、上記の二つの方法について詳細に説明する。まず、モデル学習部２１で取得した正常モデルのパラメータに基づいて複雑度を決定する方法について説明する。この方法は、正常モデルが複雑度に相当するパラメータを持っている場合に限り適用可能である。例えば、モデル学習部２１でＧＭＭクラスタリングを用いて正常モデルを学習している場合には、正規分布の混合数を複雑度として用いることができる。この場合には、正常な特徴量の分布に対して正常モデルが十分精度良く近似するように、適切な混合数が選ばれていることが望ましい。例えば、特徴空間上で特徴量が多峰状に分布している場合に、ＧＭＭクラスタリングの混合数が１であるのは適切ではないと考えられる。適切な混合数を決定する方法としては、例えば非特許文献６で提案されている赤池情報量を基準として最適な混合数を選べば良い。
【００２１】
次に、特徴空間上に配置された正常モデルの複雑度を取得する方法について説明する。この方法は、正常モデルを学習する手法が複雑度に相当するパラメータを持っていない場合に適用することができる。例えば、単一のＯｎｅ  ＣｌａｓｓカーネルＳｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ識別器（ＳＶＭ）によって正常モデルを学習する場合、ＳＶＭのパラメータからでは正常モデルの複雑度を得ることは困難である。このような場合には、まず特徴空間上での正常モデルの形を抽出し、ここで得られた正常モデルの形を再現するような複雑度評価用正常モデルを学習する。複雑度評価用正常モデルは、その正常モデルが複雑度に相当するパラメータを持っている手法、例えばＧＭＭクラスタリングなどを用いて学習することができる。
【００２２】
具体的には、まず、特徴空間上で正常モデルの複雑度を評価するために、正常モデルの形を抽出する。正常モデルの形は、特徴空間上に散布されたサンプル点に対する、該正常モデルの識別結果によって表わされる。図３に、特徴空間上に散布されたサンプル点と正常モデルの識別平面の模式図を示す。図３には、特徴次元５１および５２によって構成された特徴空間上に正常モデル５３とサンプル点５４および５５とが示されている。サンプル点５４および５５は、正常モデル５３を学習する際に用いた正常な特徴量の点である必要はなく、ランダムに散布された点であってもよい。ここで、正常モデル５３の内側にある丸で示されたサンプル点は、正常サンプル点５４を示している。また、正常モデル５３の外側にあるバツで示されたサンプル点は、異常サンプル点５５を示している。このうち、正常サンプル点５４が特徴空間５１および５２における正常モデル５３の形を表している。すなわち、正常サンプル点５４の複雑度を評価することで、近似的に正常モデル５３の複雑度を測ることが可能になる。なお、サンプル点はランダムではなく特徴空間上に等間隔に配置してもよい。
【００２３】
次に、正常モデルのパラメータに基づいて複雑度を決定することが可能な手法を用いて、正常サンプル点５４を用いた複雑度評価用正常モデル（評価モデル）の学習を行う。ここで複雑度評価用正常モデルは、正常サンプル点５４の複雑度を決定するためだけに用いられる。複雑度評価用正常モデルを学習する手法としては、例えばＧＭＭクラスタリングを用いることができる。ＧＭＭクラスタリングを用いた正常モデルの学習については、前述したモデル学習部２１における処理と同じであるため、ここでは説明を省略する。
【００２４】
なお、複雑度評価用正常モデルの学習には、正常サンプル点５４だけでなく、異常サンプル点５５を用いても良い。正常サンプル点５４および異常サンプル点５５を用いて複雑度評価用正常モデルを学習する場合、例えば非特許文献７のランダムフォレストを用いることができる。図４は、図３の正常モデル５３を非表示にした特徴空間を示す。ここでは、図４に示される正常サンプル点５４および異常サンプル点５５を用いて、ランダムフォレストの学習を行う。ここで、ツリーの分岐条件として、例えば分割した際に最も情報量が増大する分岐を選ぶことができる。ここで学習したランダムフォレストの深さが、正常モデルの複雑度に対応する。具体的には、深さを算出するために、ランダムフォレストを構成する学習済みツリーの深さの平均や最大値などの統計量を用いることができる。
【００２５】
図５は、図４に示されたサンプル点を用いて学習したランダムフォレストのうち、あるツリーの特徴空間上での識別平面の模式図である。そして、図５の（ａ）、（ｂ）、（ｃ）、（ｄ）、および（ｅ）は、ツリーの学習のステップを示している。ここで用いるツリーは２分木であり、ランダムに選んだ特徴次元において、サンプル点を最もよく分類するように特徴空間上で識別平面が学習される。ここで、識別平面はツリーの分岐に対応している。分岐が深くなることで、ある分岐の識別平面によって分けられた特徴空間が、さらに別の識別平面によって分けられる。図５は２次元の特徴空間を示しており、ツリーの分岐が学習されることで、１つの次元に識別平面が学習される。
【００２６】
以下、ツリーの学習の流れを説明する。２分木の分岐によって特徴空間上での学習処理は２つに枝分かれするが、ここでは簡単のために分岐のうち一方のみを説明する。図５において、（ａ）から（ｂ）の学習ステップでは、特徴次元５１が選ばれ、識別平面５６が学習される。次に、（ｂ）から（ｃ）の学習ステップでは、識別平面５６で分割された特徴次元５２が選ばれ、識別平面５７が学習される。同様に、（ｃ）から（ｄ）の学習ステップでは、識別平面５８が学習され、また（ｄ）から（ｅ）の学習ステップでは、識別平面５９が学習される。分岐の学習を停止するか否かの停止条件としては、例えば識別平面を学習することで情報量の増加が閾値よりも低いか否かを条件とすることができる。ここで、図５の識別平面５９の分岐の深さは４となっており、例えば図５のツリーの深さを用いて複雑度の決定を行う場合、複雑度は４になる。
【００２７】
図２に戻り、ステップＳ１０３において、モデル複雑度決定部２２は、上記のように決定した正常モデルの複雑度に対して予め定められた閾値を用いることで、この正常モデルが複雑であるか否かを判定する。ここで、正常モデルの複雑度が所定の閾値以下であれば、これ以上、正常モデルの粒度を変更する必要がないと判断する。また、前回のステップＳ１０３との比較で、正常モデルの複雑度が低下していないなど、正常モデルの複雑度の低下が閾値未満の場合には、これ以上、正常モデルの粒度を変更する必要がないと判断する。
【００２８】
ステップＳ１０４において、モデル複雑度決定部２２は、正常モデルの粒度が、予め設定されている最小粒度であるか否かについて判定する。正常モデルの粒度は映像データのフレームに関する領域範囲に対応するため、原理的な最小の粒度は１画素である。そのため、１画素以上の領域範囲を最小粒度として予め設定しておくことができる。
【００２９】
ステップＳ１０５において、学習装置２０のＣＰＵは、ステップＳ１０３において複雑度が閾値以下の場合、または、ステップＳ１０４において正常モデルの粒度が最小粒度以下である場合には、終了条件を満たすと判定する。一方、複雑度が閾値より大きく、かつ正常モデルの粒度が最小粒度より大きい場合、終了条件を満たさないと判定する。なお、例外として、モデルの粒度を変更することで複雑度が増加する場合もあり、この場合には、モデルの粒度を変更しないようにするために、終了条件を満たすものと判定する。
【００３０】
ステップＳ１０５において終了条件を満たさないと判定された場合、ステップＳ１０６において、領域範囲変更部２３は、正常モデルの粒度を変更するために領域範囲を変更する。図６に、正常モデルを学習する領域範囲の例を示す。図６（ａ）、（ｂ）、および（ｃ）は、ステップＳ１０６で領域範囲変更部２３により領域範囲が変更されていく繰り返し処理の例を示している。正常モデル粒度である領域範囲６２は、最初、図６（ａ）に示されるように映像データのフレーム６１全体が指定されており、受け取った特徴量はすべて同一の正常モデルとして学習される。そして、本実施形態では、一回目のステップＳ１０６で図６（ａ）から（ｂ）に領域範囲が変更され、フレーム全体に相当する領域範囲６２が領域範囲区切り線６３および６４とで４分割される。また、図６の（ｂ）から（ｃ）への領域範囲変更の例では、図２の二巡目の処理によって４分割された各領域範囲で正常モデルが学習された際、右上の領域範囲６５のみが終了条件を満たさないと判定されている。つまり、二回目のステップＳ１０６では、終了条件を満たさないと判定された領域範囲６５が、図６の（ｂ）から（ｃ）のように、領域範囲区切り線６６および６７で更に４分割される。
【００３１】
次に、ステップＳ１０１に戻り、モデル学習部２１は、ステップＳ１０５の領域分割によって新たに生成された領域範囲において、正常モデルを再度学習する。上記説明では、二巡目の処理フローでは４分割された各領域範囲で正常モデルを学習し、三巡目の処理フローでは領域範囲６５を４分割して生成した４つの領域範囲で正常モデルを学習する。例えば、ＧＭＭクラスタリングを用いて正常モデルを学習する場合、図６の領域範囲区切り線６３および６４によって区切られている４領域を、それぞれ独立に学習する。正常モデルの学習では、領域それぞれに含まれる特徴量に対してＧＭＭクラスタリングを行う。これによって、領域ごとに正常モデルが学習される。
【００３２】
ステップＳ１０５において、全ての領域範囲で終了条件を満たすと判断されるまで、上記のようにモデル学習部２１、モデル複雑度決定部２２、及び領域範囲変更部２３の処理が繰り返し行われる。そして、ステップＳ１０５において全ての領域範囲が終了条件を満たしたと判断された場合、ステップＳ１０７において、モデル複雑度決定部２２はモデル記憶部Ｍ１に正常モデルを転送する。また、モデル記憶部Ｍ１は、受け取った正常モデルを保存する。ここで保存される正常モデルは、図２のステップＳ１０６により決定された領域範囲ごとに学習された各正常モデルである。
【００３３】
再び図１を参照して、判定用データ取得装置３０の詳細な構成について説明する。判定用データ取得装置３０は、判定用データ取得部３１と判定用特徴量抽出部３２とを備えている。判定用データ取得部３１は、判定対象の映像データを取得し、取得した映像データを判定用特徴量抽出部３２に転送する。ここでは説明の簡略化のために、転送する映像データを取得した全映像データとするが、必ずしも全映像データを送信する必要はなく、例えばリアルタイムに取得した最新の映像を数フレームごとに転送してもよい。本実施形態では、判定用データ取得部３１が取得した映像データを判定用特徴量抽出部３２に転送するたびに、識別装置４０が後述する図７のフローチャートの処理を行うことで、リアルタイムに異常を検知することが可能である。
【００３４】
判定用特徴量抽出部３２は、判定用データ取得部３１から受け取った映像データから判定用特徴量を抽出する。ここで、特徴量を抽出する方式は、学習用特徴量抽出部１２と同様の方式を用いる。例えば、学習用特徴量抽出部１２において映像データからオプティカルフローを抽出する場合は、判定用特徴量抽出部３２においても、同様にオプティカルフローを抽出する。本実施形態では、判定対象となる全映像データから特徴量を一括に抽出する。ここで抽出される各特徴量は、映像データのフレーム上での位置と対応付けられており、フレーム上の位置に関する情報も有している。判定用特徴量抽出部３２によって抽出された特徴量の情報は、識別装置４０の識別部４１に送られる。
【００３５】
次に、識別装置４０の構成について説明する。識別装置４０は、識別部４１と識別結果出力部４２とを備えている。図７は、本実施形態に関わる識別装置４０の動作を示すフローチャートである。以下、図７に示すフローチャートを参照しつつ、識別装置４０の各機能部の詳細について説明する。
【００３６】
ステップＴ１０１において、識別部４１は判定用特徴量抽出部３２から受け取った特徴量を判定対象データとして取得する。次に、ステップＴ１０２において、識別部４１はモデル記憶部Ｍ１に存在するすべての正常モデルの取得を行う。ここで、取得される正常モデルは、図２のステップＳ１０６により決定された領域範囲ごとに学習された正常モデルである。続いて、ステップＴ１０３において、識別部４１は判定対象データの位置情報と正常モデルの領域範囲とを照合し、判定対象データの位置情報を含む領域範囲で学習した正常モデルを取得する。
【００３７】
次に、ステップＴ１０４では、識別部４１が、判定対象データと該判定対象データの位置に対応する正常モデルとを用いて、該判定対象データの異常スコアを算出する。本実施形態において、異常スコアの算出方法は特定の方法に限定されるものではない。例えば正常モデルの学習にＧＭＭを用いる場合、非特許文献８で示されるマハラノビス距離を用いてクラスタ中心と判定対象データとの距離を測ることにより、異常スコアを算出することができる。
【００３８】
次に、ステップＴ１０５において、識別部４１は、算出された各異常スコアに基づいて判定対象データが正常であるか異常であるかを判定する。さらに、識別部４１は、すべての判定対象データの識別結果を識別結果出力部４２に転送する。
【００３９】
ステップＴ１０６において、識別結果出力部４２は、判定結果が異常であった場合、異常である旨を通知するための表示情報の生成を行う。また、正常であった場合には、正常である旨を通知するための表示情報の生成を行う。
【００４０】
ステップＴ１０７において、識別結果出力部４２は、端末装置５０に対して表示情報（識別結果）の出力を行う。そして、端末装置５０は、識別結果出力部４２から受け取った表示情報を出力する。
【００４１】
以上説明したように、本実施形態の学習装置２０は、場所ごとに異なる正常モデルを学習する際に、正常モデルの複雑度をもとに領域範囲を変更して、正常モデルを学習する。これによって、正常モデルの複雑度がより低減されるように正常モデルが学習され、精度良く異常判定を行うことが可能になる。
【００４２】
［第２の実施形態］
次に、本発明の第２の実施形態について説明を行う。前述の第１の実施形態では、場所ごとに異なる正常モデルを学習するのに対して、本実施形態は、時間ごとに異なる正常モデルを学習するものである。つまり、第１の実施形態では、正常モデルの粒度が同一の正常モデルを学習する領域範囲に相当していたのに対して、本実施形態の正常モデルの粒度は同一モデルを学習する時間範囲に相当することになる。なお、第１の実施形態において既に説明をした構成については、同一の符号を付し、その説明を省略する。
【００４３】
図８は、本実施形態に係る異常検知システムの構成を示す概略ブロック図である。本実施形態の異常検知システム１も、第１の実施形態と同様に、学習用データ取得装置１０、学習装置２０、判定用データ取得装置３０、識別装置４０、端末装置５０、及びモデル記憶部Ｍ１により構成されている。
【００４４】
学習用データ取得装置１０は、学習用データ取得部１１と学習用特徴量抽出部１２とを備える。本実施形態において、学習用データ取得部１１は、正常な映像データを取得する際に撮像時の時間情報も取得し、映像データと紐づける。なお、時間情報とは、例えば時刻、朝や昼や夕方などの時間帯、日付、曜日、月、および季節などの情報である。また、学習用特徴量抽出部１２は、映像データから特徴量を抽出する際、抽出された特徴量に、映像データに紐づけられた時間情報を付与する。
【００４５】
本実施形態の学習装置２０は、モデル学習部２１と、モデル複雑度決定部２２と、時間範囲変更部２３ａとを備える。時間範囲変更部２３ａは、モデル複雑度決定部２２から得られた正常モデルの複雑度が予め決められた閾値よりも高ければ、モデル粒度の変更を行う。モデル粒度を変更するにあたっては、同一の正常モデルを学習する時間の範囲を変更する。
【００４６】
モデル記憶部Ｍ１は、モデル複雑度決定部２２から転送された正常モデルを記憶する。本実施形態において、正常モデルは時間範囲の情報を有する。ここで保存される正常モデルは、時間範囲ごとに学習された正常モデルである。
【００４７】
判定用データ取得装置３０は、判定用データ取得部３１と判定用特徴量抽出部３２とを備える。本実施形態の判定用データ取得部３１は、判定対象の映像データを取得する際に撮像時の時間情報も取得し、判定用映像データと紐づける。ここで取得する時間情報は、少なくとも学習用データ取得部１１が取得する時間情報を含んでいる。判定用特徴量抽出部３２は、判定用映像データから特徴量を抽出する際、判定用映像データに紐づけられた時間情報を抽出された特徴量に付与する。
【００４８】
識別装置４０は、識別部４１と識別結果出力部４２とを備える。識別部４１は、第１の実施形態と同様に、モデル記憶部Ｍ１に記憶された正常モデルと判定用特徴量抽出部３２から転送された判定対象データとを取得し、判定対象データの識別を行う。
【００４９】
次に、学習装置２０の各機能部の詳細について説明する。図９は、本実施形態に関わる学習装置２０の動作を示すフローチャートである。なお、説明の簡略化のために、ここでは、学習用データ取得部１１により取得される時間情報は０時０分から２３時５９分の範囲の時刻情報であるとする。
【００５０】
ステップＳ１０１において、モデル学習部２１は正常モデルの学習を行う。本実施形態において、モデル学習部２１は、時間ごとに異なる正常モデルの学習を行う。最初に正常モデルの学習を行う際は、時間範囲変更は行われていないため、すべての時間範囲に渡って同一の正常モデルを学習する。
【００５１】
次に、ステップＳ１０２において、モデル複雑度決定部２２はモデル複雑度を算出し、続くステップＳ１０３において、モデル複雑度決定部２２は複雑度閾値判定を行う。ステップＳ１０２およびステップＳ１０３における処理は、第１の実施形態と同様である。
【００５２】
ステップＳ１０４において、モデル複雑度決定部２２は、正常モデルが最小粒度であるか否かを判定する。正常モデルの原理的な最小粒度は映像データに紐付けられる時間情報の細かさに依存し、本実施形態の最小粒度は１分間である。正常モデルの最小粒度は、原理的な最小粒度の値以上の任意の値として予め設定できる。続くステップＳ１０５では、第１の実施形態と同様に、学習装置２０のＣＰＵが終了条件を満たすか否かを判定する。
【００５３】
ステップＳ１０５において、終了条件を満たさないと判定された場合は、処理はステップＳ１０６ａに進む。ステップＳ１０６ａにおいて、時間範囲変更部２３ａは、正常モデルの時間範囲の変更を行う。図１０は、本実施形態において、正常モデルを学習する時間範囲の例を示す。図１０（ａ）、（ｂ）、および（ｃ）は、ステップＳ１０６ａで時間範囲変更部２３ａにより時間範囲が変更されていく繰り返し処理の例を示している。同図（ａ）において、時間軸８１は、学習用の映像データに紐付けられる時間情報の時間に対応し、例えば監視カメラを用いて映像データを撮影した時刻を示している。また、時間範囲８２は、０時０分から２３時５９分の全ての範囲に渡って同一の正常モデルを学習することを意味している。
【００５４】
時間範囲８２は、最初、図１０（ａ）に示されるように映像データを撮影した時間範囲８２の全体が指定されており、受け取った特徴量はすべて同一の正常モデルとして学習される。そして、本実施形態では、一回目のステップＳ１０６で図６（ａ）から（ｂ）に領域範囲が変更され、時間範囲８２が時間範囲区切り線８３により２分割される。また、図１０の（ｂ）から（ｃ）への時間範囲変更の例では、図９の二巡目の処理によって２分割された各時間範囲で正常モデルが学習された際、後半にあたる右側の時間範囲のみが終了条件を満たさないと判定されている。つまり、二回目のステップＳ１０６では、終了条件を満たさないと判定された右側の時間範囲が、図６の（ｂ）から（ｃ）のように、時間範囲区切り線８４によって再度２分割されている。なお、正常モデルを学習する際、最初の時間範囲は０時０分から２３時５９分の時間範囲以外でもよく、例えば一週間、一ヶ月間、一年間など、任意の期間において設定した時間範囲から正常モデルの学習を始めることができる。
【００５５】
そして、第１の実施形態と同様にして、ステップＳ１０５において全ての時間範囲で終了条件を満たすと判断されるまで、モデル学習部２１、モデル複雑度決定部２２、及び時間範囲変更部２３ａの処理が繰り返し行われる。そして、ステップＳ１０５において全ての時間範囲が終了条件を満たしたと判断された場合、処理はステップＳ１０７に進み、モデル複雑度決定部２２はモデル記憶部Ｍ１に正常モデルを転送する。また、モデル記憶部Ｍ１は、受け取った正常モデルを保存する。ここで保存される正常モデルは、図９のステップＳ１０６ａにより決定された時間範囲ごとに学習された各正常モデルである。
【００５６】
次に、本実施形態における識別装置４０の構成について説明する。図１１は、本実施形態に関わる識別装置４０の動作を示すフローチャートである。図１１における識別装置４０の処理のフローの中で、第１の実施形態と相違する処理は、ステップＴ１０３ａである。第１の実施形態では、ステップＴ１０３ａにおいて、識別部４１は判定対象データの位置情報と正常モデルの領域範囲とを照合していた。本実施形態のステップＴ１０３ａでは、識別部４１は、判定対象データの時間情報と正常モデルが持つ時間範囲の情報との照合を行う。また、これに合わせて、本実施形態のＴ１０４では、判定対象データとこの判定対象データの時間情報に合致した正常モデルとを用いて該判定対象データの異常スコアを算出する。その他の処理については、第１の実施形態と同様である。
【００５７】
次に、識別装置４０の構成について説明する。識別装置４０は、識別部４１と識別結果出力部４２とを備えている。図７は、本実施形態に関わる識別装置４０の動作を示すフローチャートである。以下、図７に示すフローチャートを参照しつつ、識別装置４０の各機能部の詳細について説明する。
【００５８】
ステップＴ１０１において、識別部４１は判定用特徴量抽出部３２から受け取った特徴量を判定対象データとして取得する。次に、ステップＴ１０２において、識別部４１はモデル記憶部Ｍ１に存在するすべての正常モデルの取得を行う。ここで、取得される正常モデルは、図２のステップＳ１０６により決定された領域範囲ごとに学習された正常モデルである。続いて、ステップＴ１０３において、識別部４１は判定対象データの位置情報と正常モデルの領域範囲とを照合し、判定対象データの位置情報を含む領域範囲で学習した正常モデルを取得する。
【００５９】
以上のように、本実施形態の学習装置２０は、時間ごとに異なる正常モデルを学習する際に、正常モデルの複雑度をもとに時間範囲を変更し、正常モデルを学習する。これにより、正常モデルの複雑度が低減されるように正常モデルが学習され、精度良く異常判定を行うことが可能になる。
【００６０】
［第３の実施形態］
次に、本発明の第３の実施形態について説明を行う。本実施形態は、正常モデルの複雑度に加えて、特徴空間上に分布する特徴量の複雑度に基づいて、正常モデルの粒度を変更するものである。以下、本実施形態の詳細を説明する。なお、第１の実施形態または第２の実施形態において既に説明をした構成については、同一の符号を付し、その説明を省略する。
【００６１】
図１２は、本実施形態に係る異常検知システムの構成を示す概略ブロック図である。本実施形態の異常検知システム１も、第１、第２の実施形態と同様に、学習用データ取得装置１０、学習装置２０、判定用データ取得装置３０、識別装置４０、端末装置５０、及びモデル記憶部Ｍ１により構成される。ただし、本実施形態の学習装置２０は、第１、第２の実施形態におけるモデル複雑度決定部２２に代えて、特徴量・モデル複雑度決定部２２ａを有する。特徴量・モデル複雑度決定部２２ａは、学習用特徴量抽出部１２から受け取った特徴量と、正常モデル学習部から受け取った正常モデルとに基づいて、特徴量・モデル複雑度を決定する。そして、特徴量・モデル複雑度決定部２２ａは、決定した特徴量・モデル複雑度を領域範囲変更部２３に転送する。
【００６２】
領域範囲変更部２３は、特徴複雑度決定部２４から受け取った複雑度を用いて、領域範囲の変更を行う。また、モデル学習部２１は、領域範囲変更部２３により変更された領域範囲に基づいて再度モデルの学習を行う。
【００６３】
次に、学習装置２０の各機能部の詳細について説明する。図１３は、本実施形態に関わる学習装置２０の動作を示すフローチャートである。ステップＳ１０１において、モデル学習部２１は、正常モデルを学習する。最初、モデル学習部２１は、学習用映像データのフレーム全体の領域範囲において、同一の正常モデルを学習する。
【００６４】
ステップＳ１０２ａにおいて、まず、特徴量・モデル複雑度決定部２２ｂは特徴量複雑度を算出する。本実施形態では、特徴量複雑度を算出するために、映像フレームの各画素における特徴量の分散を用いる。なお、特徴量複雑度の算出にあたっては、特徴量の分布の平均情報量やその他の統計量を用いるようにしてもよい。
【００６５】
図１４は、特徴量複雑度の算出方法を説明するための概念図である。ここでは、説明の簡略化のために、４×４の計１６画素で構成される画像９１について特徴量複雑度を算出する例を示す。画像９１は計１６個の画素で構成され、各画素は例えば横軸方向および縦軸方向の動き方向に関して、特徴分布の分散を有する。図１４（ａ）では、各画素が有する特徴空間上での横軸方向および縦軸方向の特徴分布の分散が二軸の矢印として示されている。図１４（ａ）では、矢印が長いほど、その方向への分散の値が大きいことを示している。
【００６６】
特徴量複雑度は、例えば各画素の分散の平均を正規化して得ることができる。特徴量複雑度は０から１の間の値により表わされ、その値が１に近いほど複雑であることを示す。図１４（ｂ）は、画像９１の各画素について算出した特徴量複雑度を各画素の明度により示した模式図であり、明度が高い画素ほど特徴複雑度が高いことを示している。
【００６７】
特徴量・モデル複雑度決定部２２ａは、第１、第２の実施形態と同様にして、更に正常モデルの複雑度を決定する。そして、前述のようにして得られた特徴量複雑度およびモデル複雑度に基づいて、特徴量・モデル複雑度を算出する。本実施形態では、正常モデルの複雑度（モデル複雑度）と、その正常モデルが学習された領域範囲に含まれる画素の特徴量複雑度の平均との積を算出し、この算出した値を特徴量・モデル複雑度とする。ステップＳ１０２ａ以降の処理は、モデル複雑度に代えて特徴量・モデル複雑度を用いることにより、第１、第２の実施形態と同様に実行できる。
【００６８】
以上のように、本実施形態の学習装置２０は、映像データから抽出される特徴量の複雑度と正常モデルの複雑度とに基づいて、同一の正常モデルを学習する領域範囲を変更し、得られた領域範囲ごとに正常モデルを学習する。これにより、正常モデルの複雑度がより低減されるように正常モデルが学習され、精度良く異常判定を行うことができる。なお、本実施形態では領域範囲を変更する構成について説明したが、第２の実施形態のように時間範囲を変更する構成に適用することも可能である。
【００６９】
［その他の実施形態］
前述の実施形態では、学習用データ取得装置１０と、学習装置２０と、判定用データ取得装置３０と、識別装置４０と、端末装置５０と、モデル記憶部Ｍ１とがそれぞれ別体として構成された異常検知システム１の例を示した。しかし、本発明はこれに限られず、例えば学習装置２０が学習用データ取得装置１０と一体に構成され、学習装置２０自体が学習用映像データから特徴量を抽出する学習用特徴量抽出部１２を備えるようにしてもよい。また、異常検知システム１の各装置が一体の装置として構成されていてもよい。
【００７０】
また、前述の第１の実施形態では、正常モデルの複雑度に基づいて領域範囲を分割するようにしたが、その際、分割されて新しく生成された領域範囲が互いに一部重複するように分割してもよい。同様に、第２の実施形態の時間範囲についても、互いが一部重複するように分割するようにしてもよい。
【００７１】
また、前述の実施形態では、正常モデルの複雑度に応じて領域範囲または時間または時間範囲を分割するようにしたが、領域範囲と時間範囲の両方を分割するようにしてもよい。その場合には、２次元の領域範囲と１次元の時間範囲からなる３次元空間上で同一の正常モデルを学習する範囲を変更するようにすればよい。また、前述の実施形態では正常モデルの粒度を変更するにあたり、領域範囲、時間範囲を変更するようにしたが、正常モデルの粒度として他範囲を変更するようにしてもよい。
【００７２】
また、前述の実施形態では、正常または異常を判別するための正常モデルを用いて説明を行ったが、本発明はこの構成に限らず、複数のクラスを識別するためのモデルを用いる形態に広く適用できるものである。
【００７３】
また、本発明は、上記実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００７４】
２０  学習装置
２１  モデル学習部
２２  モデル複雑度決定部
２３  領域範囲変更部
【図１】
2016200971.tif 000003
【図２】
2016200971.tif 000004
【図３】
2016200971.tif 000005
【図４】
2016200971.tif 000006
【図５】
2016200971.tif 000007
【図６】
2016200971.tif 000008
【図７】
2016200971.tif 000009
【図８】
2016200971.tif 000010
【図９】
2016200971.tif 000011
【図１０】
2016200971.tif 000012
【図１１】
2016200971.tif 000013
【図１２】
2016200971.tif 000014
【図１３】
2016200971.tif 000015
【図１４】
2016200971.tif 000016