深層学習は異常検知機能を定義しない

問題設定:異常検知問題

一般的に異常検知問題は、「異常(anomal)」な観測データを「正常(normal)」な観測データから区別することが如何にして可能になるのかという問題として設定されている。この問題の解決策として設計される異常検知器の機能は、観測データ点に対して、「異常(anomal)」と「正常(normal)」の区別を導入することである。

論理学的に言えば、異常検知のモデリングは、この二値論理構造を常に前提としている。このことから、異常検知問題は二値分類問題として再設定することができる。しかし、二値論理が二値論理として構造化されているのは、第三項排除律が満たされる場合に限られる。異常検知のモデリングを試みた設計者の事前信念に反して、「正常」とも「異常」とも判断できない特徴が観測データ点に含まれていた場合、そのモデルはもはや二値分類として機能しない。

問題解決策:「異常」と「正常」の意味論

「正常」と「異常」の区別は極めて形式的に導入される傾向がある。単に「異常」と述べても、それは次のような意味を持つ場合がある。

– 「疑わしい活動/出来事/行動(suspicious activity/event/behavior)」
– 「不規則な活動/出来事/行動(irregular activity/event/behavior)」
– 「珍しい活動/出来事/行動(uncommon activity/event/behavior)」
– 「希少な活動/出来事/行動(unusual activity/event/behavior)」
– あるいは望まない「ノイズ(nosie)」

このように、この形式的な概念には様々な意味が代入される。いずれの定義においても、「正常」の概念との関連から記述されている。つまり「異常」という概念の定義が先にあるのではなく、「正常」との差異があって初めて「異常」の概念が記述されるのである。定義の「同一性」が先にあるのではない、あくまでも区別の「差異性」があって初めて、「同一性」が成り立つ。(この「同一性」という概念もまた、「同一性」と「差異性」の差異があって初めて成り立つ。)

「異常」と「正常」の意味論はまた、問題志向的に規定される場合もある。例えば異常検知問題と極めて近しい領域にある「外れ値検知(outlier detection)」の問題設定では、観測データ点の外れ値となる異常サンプルが「異常」概念ということになる。一方、「変化点検知(change-point detection)」の場合は、時系列的な変異性が「異常」概念となる。

統計的機械学習問題の枠組みでは、データの性質に応じて確率分布を如何にして学習するのかという観点から、「異常度(anomaly score)」を如何にして確率分布と結び付けるのかを定式化することになる。正常なデータと異常なデータは、それぞれ異なる確率分布に基づいて生成されている。

教師ラベルが得られる場合には、この確率分布の比、すなわち「尤度比(likelihood ratio)」から異常度を計算することになる。だが教師ラベルが得られない場合には、情報理論的な計算が必要になる。この場合、異常データは希少であることが前提となる。つまり、正常データの学習時、出現確率が低い観測データ点ほど異常度が高いということである。逆に言えば、異常度の高いデータは情報量、あるいは情報エントロピーが高いと認識される。

教師ラベルが十分に得られない場合は、教師なし学習や半教師あり学習の戦略が採用されてきた。異常検知モデルの設計は長らく分類モデルや統計学的な手法によって実施されてきた。だがこれらの方法では、多数の課題に人手で対処しなければならなかった。教師あり学習のアノテーションは、従来の方法の「人間」に対する依存を示す最たる例である。

分類モデルでは、最低限「正常」と「異常」を区別できる教師データのラベル付きサンプルを用意しなければならない。だが、「異常」と「正常」の区別は形式的に導入される。故にアノテーションやラベル付けの担当者次第では、それらの意味に揺らぎが伴う可能性がある。

仮に精確なアノテーションが揃ったとしても、「異常」データのサンプリングが間に合わない場合があり得る。学習・訓練データの分布とテスト用のデータが共に「真の分布」を近似し得るほどのデータ量に達しているか否かは判断し難い。

典型的な異常検知問題においては、経験的に「異常」と見做されるデータサンプルは少ない。よって、サンプリングされたデータ量が適切であると楽観視することはできないのである。そして、仮に十分な量のデータサンプルが得られたとしても、今度は時系列的なパターンを考慮した特徴工学が必要になる。信号データや映像データの中には、周期性や系列の特徴が潜在化していることは間々ある。

問題再設定:再構成誤差最小化問題としての異常検知

Malhotra, P., et al. (2016)が提唱したEncoder/Decoder for Anomaly Detection(EncDec-AD)をはじめとする深層学習に準拠した異常検知モデルは、LSTMを用いたEncoder/Decoderスキーマや自己符号化器(Auto-encoder)の構造を利用することで、これらの課題を克服しつつある。これらのモデルは、「正常(normal)」な時系列的振る舞いを再構成(reconstruct)するために学習するモデルとして設計されている。ここでの「再構成誤差(reconstruct error)」が、異常検知における「異常度(anomalies)」として参照される。

問題解決策:誤差関数の設計

Encoder/Decoderの訓練は、「正常(normal)」な時系列のインスタンスを再構成するために、入力値となる時系列それ自体を出力値の目的関数とすることで実施される。言い換えれば、このネットワーク構造は入力と出力が同値となるある種の自己符号化器(Auto-encoder)となる。再構成誤差は自己符号化の再構成誤差に他ならない。再構成誤差は異常度の尤度(Likelihood)を計算するために用いられる。Encoder/Decoderモデルは正常な系列のみを用いて学習する。これにより、異常度の検出を可能にする。

自己符号化器の再構成誤差は、大方観測データ点と再構成データ点の平均二乗誤差(Mean Square Error: MSE)によって計算される。言わば再構成誤差としての異常度は、観測データ点の要約統計量として算出される。EncDec-ADのパラダイムでは、この要約統計量に対する閾値を設定することで、「正常」と「異常」をやはり形式的に区別する。閾値以上ならば「異常」であり、それ未満ならば「正常」という訳だ。

派生問題:排除された第三項

閾値以上と閾値未満の区別が導入されていることからもわかるように、EncDec-ADに基づく異常検知もまた二値論理構造を前提としている。そしてこのモデリングが機能するのは、二値論理構造が第三項排除律を満たす場合である。

第三項排除律が危ぶまれるのは、当の区別とは独立しており、座標系としては直交している別の区別が導入された時である。例えば、物体が映されているビデオに対する異常検知をモデリングするのならば、設計者は、「前景(foreground)」と「背景(background)」の差異や「移動体(moving object)」と「静止系(static system)」の差異を知覚することになるであろう。

こうした区別は、「正常」と「異常」の区別とは別の二値論理で構造化されている。とはいえ、一方の二値論理が他方の二値論理を「否定(Negation)」している訳ではない。「否定」の論理演算は、あくまでも二値論理構造の内部で実行される。「正常」と「異常」の区別の内部では、「正常」の「否定」は「異常」であり、「異常」の「否定」は「正常」である。決して「正常」の「否定」が「前景」や「移動体」となる訳ではない。

「移動体」と「静止系」の区別や「前景」と「背景」の区別は、あくまでも「正常」と「異常」の二値論理の外部に位置する。これらの区別は、「正常」と「異常」の区別を「否定」しているのではない。これらの二値論理は「正常」と「異常」の二値論理とは独立した固有の論理演算として作動している。この意味での関連性を、論理学では「棄却(Rejektion)」の論理演算という。それぞれの二値論理は、相互に棄却し合う関連にある。それは、一方の二値論理で何らかの意味内容が確定したからといって、他方の二値論理の意味内容が確定する訳ではないということでもある。

これを前提とすれば、異常検知の観測対象となるビデオの映像には、「正常」と「異常」の二値論理のみならず、「前景」と「背景」の二値論理や「前景」と「背景」の二値論理などのような様々な区別が直交し合う「多値論理」として構造化されていることになる。

二値論理構造が前提とする第三項排除律が危ぶまれるのは、こうした多値論理の構造が構成されることで、当の二値論理と直交する別の二値論理が、当の二値論理によって導入されている区別を「棄却」した場合である。例えば「正常」と「異常」の区別が「前景」と「背景」の区別によって「棄却」された場合、「前景」と「背景」の二値論理で確定する意味内容は、「正常」と「異常」の区別における「排除された第三項」となる。

「正常」と「異常」の二値論理を前提に、ビデオを対象とした異常検知器をモデリングしていた設計者は、この「排除された第三項」を観察することにより、「正常」とも「異常」とも判断できない「前景」や「背景」の意味内容を観察せざるを得なくなる。

問題再設定:前景検知問題

こうして別の二値論理を発見した設計者は、それまで取り組んでいた異常検知問題を、前景検知問題として再設定する機会を得る。例えばEncDec-ADのパラダイムと同じように、Xu, P., et al. (2014)らは自己符号化器を応用した前景検知器を設計している。

問題解決策:誤差関数の設計

Xu, P., et al. (2014)は「テクニカルに設計されたコスト関数(a technically designed cost function)」(Xu, P., et al. 2014, p108.)を設計することにより、自己符号化器に「前景」と「背景」の分離機能/関数(separation function)を持たせている。この特殊なコスト関数を導入するにあたり、Xu, P., et al. (2014)は、「前景」と「背景」の区別を「クリーンなデータ(clean data)」と「ノイズのデータ(noise data)」の区別で展開している。ここからこのモデルはノイズ除去型自己符号化(Denoising Auto-encoder)の発想に近付いていく。つまりこのモデルの学習は、「前景」と「背景」の混成によって成り立つ観測データ点をノイズありの観測データ点として学習していくアルゴリズムと論理的に等価となる。

派生問題:排除された第三項

しかし、このように区別を導入した場合でも、「排除された第三項」は不意に顕在化してくる。例えばここで「前景」と「背景」の区別を「棄却」し得るのは、照明の変化の有無の区別だ。「前景」と「背景」の区別を導入した場合、照明の変化がこの区別のどちらの側に位置付けられるのかが不透明になる。時系列のパターンとして観るなら、照明の変化が生じたフレームは、外れ値のようなもので、ノイジーでもある。故にモデルは、照明の変化が生じたフレームを「ノイズのデータ」として観察するかもしれない。

だが照明の光は、照明と移動体との間の障害物を仮定しないならば、前景と背景の双方に行き届くはずだ。だとするとこの場合、モデルによって「ノイズのデータ」として観察されるのは、我々が「前景」として認識している移動体と本来の意味での「背景」の双方であるということになる。しかしながらモデルはフレームの全域を「ノイズのデータ」として観察するのだから、モデルの観点では、「前景」と「背景」の差異は消失してしまう。結果的にノイズ除去型の自己符号化器として機能するXu, P., et al. (2014)のモデルは、このフレームから、全てのピクセル領域を「前景」として検知してしまう。それ故に推論される「背景」は、「前景」も「背景」も無い、言わば「空」となる。

問題再設定:「照明」変化点検知問題

論理学的に言えば、照明の変化は、「前景」と「背景」の区別を導入したことによって派生する「排除された第三項」である。照明の変化は、「前景」と「背景」の区別の二値論理構造を破綻させる。「前景」と「背景」の区別が二値論理として機能し続けるためには、照明の変化を無視し続けなければならない。言い換えれば、「照明」の変化点を検知しなければならない。これを前提とすれば、この深層背景学習が機能するのは、照明の変化を盲点として位置付けておき、この盲点が決して暴露されない限りにおいてのこととなる。

問題解決策:誤差関数の設計

Bahri, F., et al.(2018)が提案した「教師なしニューラル移動体検知(Neural Unsupervised Moving Object Detection: NUMOD)」は、Xu, P., et al. (2014)の盲点としての照明変化を初めから埋め合わせるべく設計されている。このモデルでは、「前景」と「背景」の区別を導入するのではなく、「前景」となる「移動体」と「背景」と「照明変化(illumination changes)」の区別を導入している。二値論理ではなく多値論理を前提としたこのモデルは、画像系列の背景に関する低次元の多様体を生成モデルで抽出することで、背景のモデルを生成する。

アルゴリズムは差分画像の計算から始まると考えれば、この生成モデルの深層アーキテクチャもわかり易い構成になる。多くの場合、差分画像の計算結果には、疎らな外れ値が残る。確かに時系列的に隣り合う二つのフレームの差分画像を計算すれば、その計算結果には、移動体の痕跡も描かれている。しかしそれ以外にも、この差分画像には移動体の影や照明の変化も含まれている。NUMODのモデルは、こうした影や照明から移動体を識別するために、影と照明不変表現(illumination invariant representation)を事前知識として導入している。この関連からNUMODは、この照明不変表現に基づいて、誤差関数に幾つかの制約を追加している。これにより、各差分画像の疎な部分を「照明」と「前景」に分解する。

したがって、論理学的に厳密に観察するなら、NUMODの多値論理構造は、二つの二値論理構造によって構成されていることがわかる。まず「前景」と「背景」の区別が導入され、更に「前景」と「照明」の区別が導入されている訳だ。だがNUMODの多値論理構造は、これだけでは済まされない。Bahri, F., et al.(2018)は、Chen, L. H., et al.(2011)に倣い、照明不変表現を照明の変動に対してロバストな自然画像のべき乗測スペクトルの仮定から導入されたShakeri, M., & Zhang, H. (2016)のウィナーフィルタの拡張系によって抽出している。

問題解決策:表現学習

Shakeri, M., & Zhang, H. (2016)のウィナーフィルタは、周波数スペクトルの全体に渡って、照度と反射率をより良く分離する識別的な方法として設計されている。このフィルタリングは、たとえ夜間の暗い画像を観測していた場合でも、その後の激しい照明の変化に対してロバストであり続けられる。ただしこのフィルタによって得られた表現は、色度を喪失させるために、Shakeri, M., & Zhang, H. (2016)のモデルでは、元の画像の対数色度を維持するためのエントロピー最小化に基づく影の除去法を利用している。

したがってNUMODは、更に色彩の有無や影の有無の区別も導入していることになる。加えて、自己相関関数が異なる二つの与えられた発生源から生成された二つの信号の合計を分解するウィナーフィルターが実行されれば、信号とそのノイズの区別も導入されるであろう。ここで、自己相関関数のフーリエ変換は、パワースペクトル密度に対応する。この方法では、全ての周波数において特徴が保持される。だが多くの周波数領域の解析方法では、専ら高周波の特徴ばかりが保持される。一方、多くの有意味な情報は、低周波の特徴として保持される。ここに、照明不変表現の鍵がある。ウィナーフィルタは、二つの信号によって構成された複合的な信号における二つのスペクトルを分解するために、ベイズフィルターとして機能する。そのため、このフィルターに画像を観測させれば、画像の照明不変表現が抽出される。

問題再設定:GANの時代以降の異常検知問題

我々は当初異常検知問題に取り組んでいた。だがこの問題設定で導入される「正常」と「異常」の区別は、「前景」と「背景」の区別によって「棄却」された。そこで目下の異常検知問題を前景検知問題として再設定することで、「前景」と「背景」の区別を前提としたモデリングに着手しようとした。だがここでもまた「排除された第三項」が顕在化した。前景検知問題は、いつの間にか「照明」変化の検知問題として再設定されることとなった。

しかしながら、前景検知問題や「照明」変化検知問題を解決したとしても、当の異常検知問題が解決される訳ではない。何故なら、当初「正常」と「異常」の区別を「棄却」していた「前景」と「背景」の区別や「照明」の有無の区別は、逆に「正常」と「異常」の区別によって「棄却」される可能性を持つためである。あくまでそれぞれの区別は直交している。それらは固有の二値論理で構造化されている。

問題解決策:異常度の区別

しかし、この度重なる区別の「棄却」による派生問題の再設定は、当初異常検知問題に取り組んでいた設計者に「情報」を与えることにもなる。グレゴリー・ベイトソンの有名な一句に表われているように、差異を構成する差異ならば何であれ「情報」となるのだから、「排除された第三項」を経由してより多くの区別の導入を経験してきた設計者は、それだけより多くの「情報」を手にしていることになる。

例えば設計者は、一口に「正常」と「異常」の区別を導入すると述べても、<「前景」に対する「正常」と「異常」の区別>と<「背景」に対する「正常」と「異常」の区別>を区別することが可能になる。その結果として設計者は、「正常な前景」、「異常な前景」、「正常な背景」、「異常な背景」を、それぞれ意味付ける可能性を手にする。これは、単に「異常」なデータを検知するだけではなく、その内訳を知り得るということである。

近年のニューラルネットワーク最適化に準拠した異常検知モデルは、EncDec-ADのパラダイムから緩やかに「敵対的生成ネットワーク(Generative Adversarial Networks: GANs)」のパラダイムへと移行している。この移行で特筆すべきなのは、自己符号化器とGANのネットワーク構造上の差異ではない。むしろ着目すべきなのは、双方の誤差関数の差異であろう。前者の誤差関数に関わるのは、MSEをはじめとした再構成誤差と若干の正則化戦略のみである。一方、後者の誤差関数には、単純な「敵対的誤差(Adversarial Loss)」のみならず、「識別誤差(discriminative loss)」や「文脈誤差(Contextual Loss)」や「特徴照合(feature matching)」上の誤差などのように、様々な誤差や正則化戦略が関わっている。

これらの事例からわかることは、異常検知の機能的再利用性が増大しているということだ。従来のEncDec-ADのパラダイムでは再構成誤差という単一のスカラー値に基づいた異常度しか計算できなかったのに対して、GANのフレームワークに準拠した異常検知器は、そのネットワーク構造の複合性を獲得したことにより、誤差関数の設計や正則化戦略の選択次第で、様々な誤差に依存した様々な異常度を算出できるようになったのである。それは、「前景」、「背景」、「移動体」、「照明」などのような要因ごとの異常度を、教師あり学習に基づく分類モデルを実装することなく実現することも意味する。

問題解決策:「漸進的」と「反復的」の区別

GANのフレームワークに準拠した異常検知器を設計する場合、必ずしも最初から全ての要因ごとの異常度を定義する必要が無い。何故ならこのフレームワークは、漸進的なアーキテクチャ設計を可能にしているからだ。当初は「前景」の異常度だけを検知したいのならば、「前景」の異常度の算出に必要となる誤差関数や正則化戦略を選定すれば良い。そして、後に例えば「照明」の変化点検知が必要になったのならば、その異常度を計算するために必要な誤差関数や正則化戦略を追加していけば良い。

条件付きGAN(Mirza, M., & Osindero, S. 2014)や敵対的自己符号化器(Makhzani, A., Goodfellow, I. et al. 2015)などのように、GANのフレームワークとして提案されている深層アーキテクチャは、確かに多岐に渡る。しかしながら、「どのアーキテクチャを採用するべきなのか」という問題の設定方法は、ただ単に「最先端(state-of-the-art)」のモデルを教条主義的に選好して一喜一憂するだけの試みでもない限りは、実り多き発見をもたらさないであろう。

先行して選定されるべきなのは、ネットワークの構造ではない。むしろ重視されるべきなのは、構造ではなく機能である。構造が機能を規定する訳ではない。検知したい異常要因から逆算して要求される、正則項を組み込んだ誤差関数(loss function)のような「機能(function)」の方が、当のアーキテクチャのネットワーク構造を方向付けていくのである。

無論、要求される機能は初めから十分に「定義」されている訳ではない。しかし、まさにここまでの記述そのものが例示している通り、そうした機能は、度重なる問題の再設定と情報の探索によって、徐々に明らかになっていくはずだ。問題を問題足らしめている意味論、すなわち区別がどのような多値論理構造の中で導入されているのか、どのような排除された第三項があり得るのかを探索していくことが、機能の反復的(Iterative)な積み上げを可能にすると共に、それが結果的に漸進的(Incremental)なアーキテクチャ中心設計を可能にしていくのである。

参考文献

  • Bahri, F., Shakeri, M., & Ray, N. (2018). Online illumination invariant moving object detection by generative neural network. arXiv preprint arXiv:1808.01066.
  • Makhzani, A., Shlens, J., Jaitly, N., Goodfellow, I., & Frey, B. (2015). Adversarial autoencoders. arXiv preprint arXiv:1511.05644.
  • Mirza, M., & Osindero, S. (2014). Conditional generative adversarial nets. arXiv preprint arXiv:1411.1784.
  • Xu, P., Ye, M., Li, X., Liu, Q., Yang, Y., & Ding, J. (2014, November). Dynamic background learning through deep auto-encoder networks. In Proceedings of the 22nd ACM international conference on Multimedia (pp. 107-116). ACM.
  • Malhotra, P., Ramakrishnan, A., Anand, G., Vig, L., Agarwal, P., & Shroff, G. (2016). LSTM-based encoder-decoder for multi-sensor anomaly detection. arXiv preprint arXiv:1607.00148.
  • Popoola, O. P., & Wang, K. (2012). Video-based abnormal human behavior recognition—A review. IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews), 42(6), 865-878.