(57)【要約】【課題】サンプルの次元数にかかわらず、AUC最適化基準を用いた変分オートエンコーダのモデル学習を可能とするモデル学習技術を提供する。【解決手段】正常時に観測される音から生成される正常データと異常時に観測される音から生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習部とを含み、AUC値は、エンコーダq(z│ x; φ)と潜在変数zに関する事前分布p(z)の差異を測る尺度と再構成確率を用いて定義されるものである。【選択図】図２
2019144623.tif 000002
【特許請求の範囲】
【請求項１】
正常時に観測される音から生成される正常データと異常時に観測される音から生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習部と
を含むモデル学習装置であって、
前記AUC値は、エンコーダq(z│ x; φ)と潜在変数zに関する事前分布p(z)の差異を測る尺度（以下、異常度という）と再構成確率を用いて定義されるものである
モデル学習装置。
【請求項２】
請求項１に記載のモデル学習装置であって、
前記AUC値は、異常度から算出される値と再構成確率から算出される値の和を用いて定義されるものである
ことを特徴とするモデル学習装置。
【請求項３】
請求項１に記載のモデル学習装置であって、
X+={xi+| i∈[1, …, N+]}を異常データの集合、X-={xj-| j∈[1, …, N-]}を正常データの集合、X={(xi+, xj-)| i∈[1, …, N+], j∈[1, …, N-]}を学習データ集合、N=N+×N-とし、
IKL(x;φ)=KL[q(z│x;φ)|| p(z)]を異常度、RP(Z;θ)を再構成確率とし、
前記AUC値は、次式により定義される
【数１４】
2019144623.tif 000016
ことを特徴とするモデル学習装置。
【請求項４】
請求項１に記載のモデル学習装置であって、
X+={xi+| i∈[1, …, N+]}を異常データの集合、X-={xj-| j∈[1, …, N-]}を正常データの集合、X={(xi+, xj-)| i∈[1, …, N+], j∈[1, …, N-]}を学習データ集合、N=N+×N-とし、
IKL(x;φ)=KL[q(z│x;φ)|| p(z)]を異常度、RP(Z;θ)を再構成確率とし、
前記AUC値は、次式により定義される
【数１５】
2019144623.tif 000017
ことを特徴とするモデル学習装置。
【請求項５】
正常時に観測される音から生成される正常データと異常時に観測される音から生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習部と
を含むモデル学習装置であって、
前記AUC値は、エンコーダq(z│ x; φ)と、正常データに対する潜在変数zに関する事前分布p(z)または異常データに対する潜在変数zに関する事前分布p-(z)の差異を測る尺度（以下、異常度という）と再構成確率を用いて定義されるものであり、
前記事前分布p(z)は、原点およびその周辺において密となる分布であり、前記事前分布p-(z)は、原点およびその周辺において疎となる分布である
モデル学習装置。
【請求項６】
正常時に観測されるデータから生成される正常データと異常時に観測されるデータから生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習部と
を含むモデル学習装置であって、
前記AUC値は、エンコーダq(z│ x; φ)と潜在変数zに関する事前分布p(z)の差異を測る尺度（以下、異常度という）と再構成確率を用いて定義されるものである
モデル学習装置。
【請求項７】
モデル学習装置が、正常時に観測される音から生成される正常データと異常時に観測される音から生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習ステップと
を含むモデル学習方法であって、
前記AUC値は、エンコーダq(z│ x; φ)と潜在変数zに関する事前分布p(z)の差異を測る尺度（以下、異常度という）と再構成確率を用いて定義されるものである
モデル学習方法。
【請求項８】
請求項１ないし６のいずれか１項に記載のモデル学習装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械の動作音から故障を検知する等、観測データから異常を検知するために用いるモデルを学習するモデル学習技術に関する。
【背景技術】
【０００２】
例えば、機械の故障を故障前に発見することや、故障後に素早く発見することは、業務の継続性の観点で重要である。これを省力化するための方法として、センサを用いて取得したデータ（以下、センサデータという）から、電気回路やプログラムにより、正常状態からの乖離である「異常」を発見する異常検知という技術分野が存在する。特に、マイクロフォン等のように、音を電気信号に変換するセンサを用いるものを異常音検知と呼ぶ。また、音以外の、例えば、温度、圧力、変位等の任意のセンサデータやネットワーク通信量のようなトラフィックデータを対象とする任意の異常検知ドメインについても、同様に異常検知を行うことができる。
【０００３】
異常検知分野において、異常検知の精度の良さを表す代表的尺度としてAUC(Area under the receiver operating characteristic curve)がある。このAUCを直接教師あり学習において最適化するアプローチであるAUC最適化という技術がある（非特許文献１、非特許文献２）。
【０００４】
また、変分オートエンコーダ(VAE: Variational Autoencoder)という生成モデルを異常検知に適用する技術もある（非特許文献３）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Akinori Fujino and Naonori Ueda, “A Semi-Supervised AUC Optimization Method with Generative Models”, 2016 IEEE 16th International Conference on Data Mining (ICDM), IEEE, pp.883-888, 2016.
【非特許文献２】Alan Herschtal and Bhavani Raskutti, “Optimising area under the ROC curve using gradient descent”, ICML '04, Proceedings of the twenty-first international conference on Machine learning, ACM, 2004.
【非特許文献３】Jinwon An and Sungzoon Cho, “Variational Autoencoder based Anomaly Detection using Reconstruction Probability”, インターネット<URL: http://dm.snu.ac.kr/static/docs/TR/SNUDM-TR-2015-03.pdf>, 2015.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
AUC最適化基準は、異常検知タスクに対して最適なモデルを直接学習できる点において優れている。一方、正常データのみを用いて教師なし学習を行う、従来の変分オートエンコーダによるモデル学習では、学習したモデルの表現力は高いが、異常検知評価基準を最適にするとは限らないという欠点があった。
【０００７】
そこで、AUC最適化基準を変分オートエンコーダによるモデル学習に適用することが考えられるが、適用にあたっては、サンプル（観測データ）の異常度合を表す「異常度」の定義が重要になる。異常度の定義によく利用されるものとして再構成確率があるが、この再構成確率はサンプルの持つ次元数に依存した形で異常度を定義するため、次元の大きさに起因する「次元の呪い」を回避することができないという問題がある（参考非特許文献１）。
（参考非特許文献１：Arthur Zimek, Erich Schubert, and Hans-Peter Kriegel, “A survey on unsupervised outlier detection in high-dimensional numerical data”, Statistical Analysis and Data Mining, Vol.5, Issue 5, pp.363-387, 2012.）
つまり、サンプルの次元数が大きい場合、AUC最適化基準を用いて変分オートエンコーダのモデル学習を行うことは容易ではない。
【０００８】
そこで本発明では、サンプルの次元数にかかわらず、AUC最適化基準を用いた変分オートエンコーダのモデル学習を可能とするモデル学習技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一態様は、正常時に観測される音から生成される正常データと異常時に観測される音から生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習部とを含み、前記AUC値は、エンコーダq(z│ x; φ)と潜在変数zに関する事前分布p(z)の差異を測る尺度（以下、異常度という）と再構成確率を用いて定義されるものである。
【００１０】
本発明の一態様は、正常時に観測される音から生成される正常データと異常時に観測される音から生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習部とを含み、前記AUC値は、エンコーダq(z│ x; φ)と、正常データに対する潜在変数zに関する事前分布p(z)または異常データに対する潜在変数zに関する事前分布p-(z)の差異を測る尺度（以下、異常度という）と再構成確率を用いて定義されるものであり、前記事前分布p(z)は、原点およびその周辺において密となる分布であり、前記事前分布p-(z)は、原点およびその周辺において疎となる分布である。
【００１１】
本発明の一態様は、正常時に観測されるデータから生成される正常データと異常時に観測されるデータから生成される異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習するモデル学習部とを含み、前記AUC値は、エンコーダq(z│ x; φ)と潜在変数zに関する事前分布p(z)の差異を測る尺度（以下、異常度という）と再構成確率を用いて定義されるものである。
【発明の効果】
【００１２】
本発明によれば、サンプルの次元数にかかわらず、AUC最適化基準を用いた変分オートエンコーダのモデル学習が可能となる。
【図面の簡単な説明】
【００１３】
【図１】ヘヴィサイド階段関数とその近似関数の様子を示す図。
【図２】モデル学習装置１００／１０１の構成の一例を示すブロック図。
【図３】モデル学習装置１００／１０１の動作の一例を示すフローチャート。
【図４】異常検知装置２００の構成の一例を示すブロック図。
【図５】異常検知装置２００の動作の一例を示すフローチャート。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１５】
本発明の実施の形態では、ユーザによる設定次第で任意の次元にすることができる潜在変数を用いた異常度を定義することにより、データの次元数の問題を解決する。しかし、この異常度を用いてAUC最適化基準を直接適用すると、正常データに対する異常度を下降させることに対しては制約されるが、異常データに対する異常度を上昇させることに対しては制約が少ない定式化となり、異常データに対する異常度が発散してしまう。このように異常度が発散するように学習が行われると、パラメータの絶対値が大きくなり、数値計算が不安定になるなどの不都合が生じることがある。そこで、再構成確率をAUC値の定義に取り込み、自己回帰も同時に行う形でモデル学習することにより、異常データに対する異常度の発散を抑制することが可能な変分オートエンコーダのモデル学習方法を提案する。
【００１６】
まず、本発明の実施の形態の技術的背景について説明する。
【００１７】
＜技術的背景＞
以下の説明に登場する小文字の変数は、特記なき場合、スカラーまたは（縦）ベクトルを表すものとする。
【００１８】
パラメータψを持つモデルを学習するにあたり、異常データの集合X+={xi+| i∈[1, …, N+]}と正常データの集合X-={xj-| j∈[1, …, N-]}を用意する。各集合の要素は特徴量ベクトル等の1サンプルに相当する。
【００１９】
要素数N=N+×N-である異常データ集合X+と正常データ集合X-の直積集合X={(xi+, xj-)| i∈[1, …, N+], j∈[1, …, N-]}を学習データ集合とする。このとき、（経験）AUC値は、次式により与えられる。
【００２０】
【数１】
2019144623.tif 000003
【００２１】
ただし、関数H(x)は、ヘヴィサイド階段関数である。つまり、関数H(x)は、引数xの値が0より大きいときは1を、小さいときは0を返す関数である。また、関数I(x; ψ)は、パラメータψを持つ、引数xに対応する異常度を返す関数である。なお、xに対する関数I(x; ψ)の値は、スカラー値であり、xの異常度ということもある。
【００２２】
式(1)は、任意の異常データと正常データのペアに対して、異常データの異常度が正常データの異常度より大きくなるモデルが好ましいことを表す。また、式(1)の値が最大になるのは、すべてのペアに対して異常データの異常度が正常データの異常度より大きい場合であり、そのとき、値は1となる。このAUC値を最大（つまり、最適）にするパラメータψを求める基準がAUC最適化基準である。
【００２３】
一方、変分オートエンコーダは、本来、教師なし学習により学習される（自己回帰）生成モデルである。この変分オートエンコーダを異常検知に用いる際は、正常データのみを用いて学習を行い、再構成誤差、再構成確率、変分下界値等を用いて定義される、適当な異常度を用いて異常検知を行うことが普通である。
【００２４】
しかしながら、再構成誤差などを用いて定義される上記異常度はいずれも回帰誤差を含むため、サンプルの次元数が大きい場合、次元の呪いを回避することができない。つまり、球面集中現象により、正常・異常に関わらず、同じような異常度しか出力されなくなることが起こる。この問題に対する通常のアプローチは、次元数を落とすことである。
【００２５】
変分オートエンコーダは、観測変数xに加えて、1以上の任意の次元数を設定可能な潜在変数zを扱うため、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダ、つまり、潜在変数zの事後確率分布q(z│ x; φ)により、観測変数xを潜在変数zに変換し、その結果を用いたAUC最適化基準による学習を考えることができる。
【００２６】
通常の教師なし学習による変分オートエンコーダの周辺尤度最大化基準は、次式の変分下界値L(θ, φ; X-)の最大化基準を用いて代替される。
【００２７】
【数２】
2019144623.tif 000004
【００２８】
ただし、p(x|z; θ)は、パラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダ、つまり、観測変数xの事後確率分布である。また、p(z)は潜在変数zに関する事前分布である。p(z)には、通常、平均が0、ベクトル分散が単位行列であるガウス分布が用いられる。
【００２９】
上記最大化基準における、潜在変数zの事前分布p(z)からの遠さを表すKLダイバージェンスKL[q(z│x;φ)|| p(z)]を用いて、次式により異常度IKL(x;φ)を定義する。
【００３０】
【数３】
2019144623.tif 000005
【００３１】
異常度IKL(x;φ)は、値が大きいほど異常、小さいほど正常であることを示す。また、潜在変数zの次元は任意に設定することが可能であるため、式(3)により異常度IKL(x;φ)を定義することで次元数を削減することが可能である。
【００３２】
しかし、異常度IKL(x;φ)を用いた式(1)のAUC値は、再構成確率を含まない。このため、後述するヘヴィサイド階段関数の近似法によっては、異常データに対する異常度IKL(x+;φ)を上げることでいくらでも式(1)の近似値を上げることができてしまい、異常度が発散する。この問題を、観測変数xの特徴を保持するように働く再構成確率を含めることにより、解決する。これにより、異常度を極端に大きな値にすることが困難になり、異常データに対する異常度の発散を抑制することが可能となる。
【００３３】
そこで、次式の再構成確率RP(Z={z(l)}; θ)を用いて式(1)を再定義することを考える。
【００３４】
【数４】
2019144623.tif 000006
【００３５】
具体的には、パラメータセットψ={θ, φ}に対して、再構成確率RP(Z={z(l)};θ)を統合したAUC値を次式により定義する。
【００３６】
【数５】
2019144623.tif 000007
【００３７】
または、再構成確率RP(Z={z(l)};θ)をヘヴィサイド階段関数の外に出した次式により定義する。
【００３８】
【数６】
2019144623.tif 000008
【００３９】
式(5)、式(6)のAUC値を用いると、観測変数の再構成とAUC最適化を同時に行うことができるようになる。また、式(5)に対して、式(6)の方がヘヴィサイド階段関数による最大値の制約がない分、再構成の制約を優先した形式となっている。
【００４０】
また、線形結合定数を用いて式(5)、式(6)の各項の寄与度を変えてもよい。特に、再構成確率項に関する線形結合定数を0（つまり、再構成確率項の寄与を0）とし、任意の時点で学習を打ち切ることにより、異常データに対する異常度の発散を防止してもよい。式(5)、式(6)の各項の寄与度のバランスは、例えば、再構成の制約の程度と異常検知対象ドメインでのAUC値の関係を実際に評価して、異常検知対象ドメインでのAUC値が高くなるように選ぶとよい。
【００４１】
異常度の差に関する項IKL(xi+;φ)-IKL(xj-;φ)は、事前分布p(z)として平均が0、ベクトル分散が単位行列であるガウス分布を用いる場合、次式のようになる。
【００４２】
【数７】
2019144623.tif 000009
【００４３】
ただし、μi+及びσi+、μj-及びσj-は、異常データxi+、正常データxj-に対応したエンコーダq(z│x;φ)のパラメータである。
【００４４】
なお、潜在変数zが多次元である場合、各次元についての異常度の差に関する項の和をとってもよい。
【００４５】
再構成確率RP(Z={z(l)};θ)の最大値が0となる場合（再構成が完璧に行える場合）は、AUC値が不変であることもわかる。つまり、式(5)、式(6)のAUC値は（経験）AUC値と一致する。例えば、再構成確率密度p(x|z(l);θ)の最大値が1となるケースが該当する。なお、再構成確率項には、観測変数のベクトルの種類、例えば、連続ベクトル、離散ベクトルの別に応じて、回帰問題、判別問題等を表現する任意の関数を用いてもよい。
【００４６】
式(5)、式(6)をパラメータについて微分し、勾配を取り、適当な勾配法を用いることにより、最適なパラメータψ^={θ^, φ^}の導出が可能であるが、ヘヴィサイド階段関数H(x)は原点において微分不可能であるため、このままではうまくいかない。
【００４７】
そこで、従来は、微分・劣微分可能な連続関数を用いてヘヴィサイド階段関数H(x)を近似することでAUC最適化を行っていた。ここで、KLダイバージェンスはいくらでも大きくすることができるため、ヘヴィサイド階段関数H(x)の最大値に対して制約を設けるべきであることがわかる。実際、ヘヴィサイド階段関数H(x)の最小値と最大値はそれぞれ0と1であり、最大値だけでなく、最小値についても制約が設定されている。しかし、正常、異常の間で異常度の逆転が著しい（「異常度逆転」する）場合に対するペナルティを大きくしたいという意味では、最小値にはむしろ制約を設けない方が望ましい。AUC最適化における関数近似法には様々なものが知られている（例えば、参考非特許文献２、参考非特許文献３、参考非特許文献４）が、以下では、ランプ関数とソフトプラス関数を用いた近似法について説明する。
（参考非特許文献２：Charanpal Dhanjal, Romaric Gaudel and Stephan Clemencon, “AUC Optimisation and Collaborative Filtering”, arXiv preprint, arXiv:1508.06091, 2015.）
（参考非特許文献３：Stijn Vanderlooy and Eyke Hullermeier, “A critical analysis of variants of the AUC”, Machine Learning, Vol.72, Issue 3, pp.247-262, 2008.）
（参考非特許文献４：Steffen Rendle, Christoph Freudenthaler, Zeno Gantner and Lars Schmidt-Thieme, “BPR: Bayesian personalized ranking from implicit feedback”, UAI '09, Proceedings of the Twenty-Fifth Conference on Uncertainty in Artificial Intelligence, pp.452-461, 2009.）
【００４８】
最大値を制約するランプ関数（の変形）ramp’(x)は、次式で与えられる。
【００４９】
【数８】
2019144623.tif 000010
【００５０】
また、ソフトプラス関数（の変形）softplus’(x)は、次式で与えられる。
【００５１】
【数９】
2019144623.tif 000011
【００５２】
式(8)の関数は異常度逆転に対して線形にコストを掛ける関数であり、式(9)の関数は微分可能な近似関数である。
【００５３】
ソフトプラス関数（式(9)）を用いた、式(5)のAUC値は、次式のようになる。
【００５４】
【数１０】
2019144623.tif 000012
【００５５】
ソフトプラス関数を用いると、引数の値が十分大きい、つまり異常判定に成功したとみなせる場合には、ヘヴィサイド階段関数、標準シグモイド関数、ランプ関数と同様、1に近い値を返し、引数が十分小さい、つまり極端な異常度逆転を起こしている場合には、ランプ関数と同様、異常度逆転の程度に比例した値をペナルティとして返すことができる。
【００５６】
また、標準シグモイド関数では、異常検知に成功した場合についても関数の傾きが存在するため、厳密なAUCには存在しなかった、異常データの異常度と正常データの異常度との間のマージンを引き離す効果が存在する。異常度間のマージンの大きさは、厳密なAUCでは測定していないが異常検知タスクにおいて重要な尺度であり、これが大きいほど外乱に対して頑健であることを意味する。ソフトプラス関数を用いた近似である式(10)においても正の領域において傾きが存在するため、標準シグモイド関数が有する上記のような効果が期待できる。
【００５７】
関数近似について、全体を右にずらすことで任意の大きさのマージンを得るように、また、全体を左にずらすことである程度の異常検知ミスを許容するように設計できることが知られているため、いずれの近似関数についても引数に定数の和をとってもよい。
【００５８】
図１は、ヘヴィサイド階段関数とその近似関数（標準シグモイド関数、ランプ関数、ソフトプラス関数）の様子を示すものである。図１は、0を境として、正領域が正常データと異常データのペアに対して異常検知に成功した場合、負領域が失敗した場合とみることができる。
【００５９】
ヘヴィサイド階段関数の近似関数を用いると、式(10)のような、これらの近似関数を用いたAUC値（近似AUC値）を最適化するように勾配法等でパラメータψを最適化することができる。 
【００６０】
この近似AUC値最適化基準は、部分的に従来の教師なし学習による変分オートエンコーダの周辺尤度最大化基準を含んでいるため、安定して動作することが期待できる。具体的に説明する。ランプ関数またはソフトプラス関数を用いた近似では、異常度逆転の程度が大きい場合、つまり負の極限において、ヘヴィサイド階段関数H(x)が、x+1と近似されるため、近似AUC値は、次式のようになる。
【００６１】
【数１１】
2019144623.tif 000013
【００６２】
ここで、式(11)の項RP(Zj-;θ)-IKL(xj-;φ)は、正常データを用いた教師なし学習による変分オートエンコーダの周辺尤度と一致する。また、異常データについては、通常の周辺尤度からKLダイバージェンス項の符号を逆転したものとなっている。つまり、異常検知性能の低い学習初期のように、異常度逆転の程度が大きい場合には、正常データについては従来法と同様の学習をする。一方、異常データについては再構成を行いつつも、潜在変数zの事前分布p(z)から事後分布q(z│ x;φ)を引き離す方向に学習する。また、学習が十分に進み、異常判定に成功したと強くみなせる場合には、ヘヴィサイド階段関数H(x)の近似関数は1（恒等関数）となり、異常データについての事後分布q(z│ x;φ)を引き離す方向の勾配が弱まり、異常度であるIKL(x;φ)が無限に増大することが自発的に防止される。
【００６３】
＜第一実施形態＞
（モデル学習装置１００）
以下、図２〜図３を参照してモデル学習装置１００を説明する。図２は、モデル学習装置１００の構成を示すブロック図である。図３は、モデル学習装置１００の動作を示すフローチャートである。図２に示すようにモデル学習装置１００は、前処理部１１０と、モデル学習部１２０と、記録部１９０を含む。記録部１９０は、モデル学習装置１００の処理に必要な情報を適宜記録する構成部である。
【００６４】
以下、図３に従いモデル学習装置１００の動作について説明する。
【００６５】
Ｓ１１０において、前処理部１１０は、観測データから学習データを生成する。異常音検知を対象とする場合、観測データは、機械の正常動作音や異常動作音の音波形のような正常時に観測される音や異常時に観測される音である。このように、どのような分野を異常検知の対象としても、観測データは正常時に観測されるデータと異常時に観測されるデータの両方を含む。
【００６６】
また、観測データから生成される学習データは、一般にベクトルとして表現される。異常音検知を対象とする場合、観測データ、つまり正常時に観測される音や異常時に観測される音を適当なサンプリング周波数でＡＤ(アナログデジタル)変換し、量子化した波形データを生成する。このように量子化した波形データをそのまま１次元の値が時系列に並んだデータを学習データとしてもよいし、複数サンプルの連結、離散フーリエ変換、フィルタバンク処理等を用いて多次元に拡張する特徴抽出処理をしたものを学習データとしてもよいし、データの平均、分散を計算して値の取り幅を正規化する等の処理をしたものを学習データとしてもよい。異常音検知以外の分野を対象とする場合、例えば温湿度や電流値のように連続量に対しては、同様の処理を行えばよいし、例えば頻度やテキスト（文字、単語列等）のような離散量に対しては、数値や1-of-K表現を用いて特徴ベクトルを構成し同様の処理を行えばよい。
【００６７】
なお、正常時の観測データから生成される学習データを正常データ、異常時の観測データから生成される学習データを異常データという。異常データ集合をX+={xi+| i∈[1, …, N+]}、正常データ集合をX-={xj-| j∈[1, …, N-]}とする。また、＜技術的背景＞で説明したように、異常データ集合X+と正常データ集合X-の直積集合X={(xi+, xj-)| i∈[1, …, N+], j∈[1, …, N-]}を学習データ集合という。学習データ集合は正常データと異常データを用いて定義される集合である。
【００６８】
Ｓ１２０において、モデル学習部１２０は、Ｓ１１０で生成した正常データと異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習する。
【００６９】
ここで、AUC値とは、エンコーダq(z│ x; φ)と潜在変数zに関する事前分布p(z)の差異を測る尺度（以下、異常度という）とデコーダp(x| z; θ)を所定の関数に代入した値の平均として定義される再構成確率を用いて定義される値である。エンコーダq(z│ x; φ)と事前分布p(z)の差異を測る尺度は、例えば、式(3)のような、エンコーダq(z│ x; φ)の事前分布p(z)に対するカルバック・ライブラー情報量として定義される。また、再構成確率は、例えば、デコーダp(x| z; θ)を代入する関数として対数関数を用いると、式(4)のように定義される。そして、AUC値は、例えば、式(5)や式(6)のように計算される。つまり、AUC値は、異常度から算出される値と再構成確率から算出される値の和を用いて定義される値となる。
【００７０】
モデル学習部１２０がAUC値を用いてパラメータθ^, φ^を学習する際、最適化基準を用いて学習する。ここで、パラメータθ, φの最適値であるパラメータθ^, φ^を求めるために、任意の最適化手法を用いることができる。例えば、確率的勾配法を用いる場合、異常データと正常データの直積を要素とする学習データ集合を、任意の単位のミニバッチ集合に分解し、ミニバッチ勾配法を用いてもよい。また、通常の教師なし変分オートエンコーダに対して、周辺尤度最大化基準で学習したモデルのパラメータθ, φを初期値として、上記学習を開始するようにしてもよい。
【００７１】
（異常検知装置２００）
以下、図４〜図５を参照して異常検知装置２００を説明する。図４は、異常検知装置２００の構成を示すブロック図である。図５は、異常検知装置２００の動作を示すフローチャートである。図４に示すように異常検知装置２００は、前処理部１１０と、異常度算出部２２０と、異常判定部２３０と、記録部１９０を含む。記録部１９０は、異常検知装置２００の処理に必要な情報を適宜記録する構成部である。例えば、モデル学習装置１００が生成したパラメータθ^, φ^を記録しておく。
【００７２】
以下、図５に従い異常検知装置２００の動作について説明する。
【００７３】
Ｓ１１０において、前処理部１１０は、異常検知対象となる観測データから異常検知対象データを生成する。具体的には、モデル学習装置１００の前処理部１１０が学習データを生成するのと同一の方法により、異常検知対象データxを生成する。
【００７４】
Ｓ２２０において、異常度算出部２２０は、記録部１９０に記録してあるパラメータを用いて、Ｓ１１０で生成した異常検知対象データxから異常度を算出する。例えば、異常度I(x)は、式(3)により、I(x)=IKL(x;φ^)と定義することができる。また、IKL(x;φ^)と、再構成確率や再構成誤差を用いて計算される量を加算などにより組み合わせた量を異常度としてもよい。さらに、式(2)のような変分下界値を異常度としてもよい。つまり、異常検知装置２００で用いる異常度は、モデル学習装置１００で用いる異常度と同一のものでなくてもよい。
【００７５】
Ｓ２３０において、異常判定部２３０は、Ｓ２２０で算出した異常度から、入力である、異常検知対象となる観測データが異常であるか否かを示す判定結果を生成する。例えば、あらかじめ決められた閾値を用いて、異常度が当該閾値以上である（または当該閾値より大きい）場合に異常を示す判定結果を生成する。
【００７６】
異常検知装置２００で利用することが可能なモデル（パラメータ）が２以上ある場合は、ユーザがどのモデルを用いるかを決定、選択すればよいが、選択手法として、以下のような定量的手法や定性的手法がある。
【００７７】
〈定量的手法〉
異常検知対象と同様な傾向を持つ評価セット（学習データ集合に相当するもの）を用意し、モデルごとに算出した本来の経験AUC値や近似AUC値の大きさにより、各モデルの性能を判断する。
【００７８】
〈定性的手法〉
潜在変数zの次元を2としてモデル学習する、または潜在変数zの次元を3以上としてモデル学習した場合は、次元削減アルゴリズムにより次元を2とするなどにより、潜在変数zの次元を2とする。このとき、例えば2次元の潜在変数空間をグリッドに分け、潜在変数についてデコーダによりサンプルを再構成し、可視化する。この方法は、正常データ・異常データの区別なく、再構成が可能であるため、学習に成功している（モデルの精度がいい）場合は、正常データは原点付近に分布し、異常データは原点から離れて分布することになり、この分布を目視で確認することにより、各モデルの学習の成否の程度が分かる。
【００７９】
また、エンコーダのみを用いて、単に入力されるサンプルが2次元座標中のどの位置に移動するか確認することによっても判断することは可能である。
【００８０】
あるいは、上記同様、評価セットを用意し、モデルごとにエンコーダの出力する潜在変数空間への射影を生成する。当該射影、既知の正常・異常のサンプルの射影、これらの射影からデコーダにより再構成したデータを可視化した結果を画面に表示し、比較する。これにより、ユーザの異常検知対象ドメインに対する知識に基づいて、モデルの妥当性を判断し、いずれのモデルを異常検知に用いるか選択する。
【００８１】
（変形例１）
AUC最適化基準によるモデル学習は、正常データに対する異常度と異常データに対する異常度の差を最適化するようにモデル学習するものである。したがって、AUC最適化に類似するpAUC最適化（参考非特許文献４）やその他異常度の差を用いて定義される（AUC値に相当する）値を最適化する方法に対しても、＜技術的背景＞で説明した同様の置き換えを行うことで、モデル学習をすることができる。
（参考非特許文献４：Harikrishna Narasimhan and Shivani Agarwal, “A structural SVM based approach for optimizing partial AUC”, Proceeding of the 30th International Conference on Machine Learning, pp.516-524, 2013.）
【００８２】
（変形例２）
第一実施形態では、＜技術的背景＞で説明した潜在変数zに関する事前分布p(z)のみを仮定したモデル学習について説明した。ここでは、正常データ、異常データそれぞれに対して異なる事前分布を仮定し、モデル学習を行う形態について説明する。
【００８３】
正常データに対する潜在変数zに関する事前分布をp(z)、異常データに対する潜在変数zに関する事前分布をp-(z)とし、事前分布p(z)は、潜在変数空間内の原点に集まるような分布、つまり、原点およびその周辺において密となる分布であるという制約、事前分布p-(z)は、原点およびその周辺において疎となる分布であるという制約を設ける。潜在変数zの次元が1である場合、事前分布p(z)として、例えば、平均が0、分散が1であるガウス分布を、事前分布p-(z)として、例えば、次式の分布を用いることができる。
【００８４】
【数１２】
2019144623.tif 000014
【００８５】
ただし、N(z;0,s2)は、平均が0、分散がs2であるガウス分布、N(z;0,1)は、平均が0、分散が1であるガウス分布であり、Yは所定の定数である。また、sは、その値が通常、実験的に決定されるハイパーパラメータである。
【００８６】
なお、潜在変数zの次元が2以上である場合は、次元ごとにガウス分布や式(12)の分布を仮定すればよい。
【００８７】
以下、図２〜図３を参照してモデル学習装置１０１を説明する。図２は、モデル学習装置１０１の構成を示すブロック図である。図３は、モデル学習装置１０１の動作を示すフローチャートである。図２に示すようにモデル学習装置１０１は、前処理部１１０と、モデル学習部１２１と、記録部１９０を含む。記録部１９０は、モデル学習装置１０１の処理に必要な情報を適宜記録する構成部である。
【００８８】
以下、図３に従いモデル学習装置１０１の動作について説明する。ここでは、モデル学習部１２１について説明する。
【００８９】
Ｓ１２１において、モデル学習部１２１は、Ｓ１１０で生成した正常データと異常データを用いて定義される学習データ集合を用いて、所定のAUC値を用いた基準に基づいて、パラメータφを持つ、観測変数xから潜在変数zを構成するためのエンコーダq(z│ x; φ)とパラメータθを持つ、潜在変数zから観測変数xを再構成するためのデコーダp(x| z; θ)とからなる変分オートエンコーダのモデルのパラメータθ^, φ^を学習する。
【００９０】
ここで、AUC値とは、エンコーダq(z│ x; φ)と事前分布p(z)または事前分布p-(z)の差異を測る尺度（以下、異常度という）とデコーダp(x| z; θ) を所定の関数に代入した値の平均として定義される再構成確率を用いて定義される値である。エンコーダq(z│ x; φ)と事前分布p(z) の差異を測る尺度、エンコーダq(z│ x; φ)と事前分布p-(z)の差異を測る尺度はそれぞれ次式により与えられる。
【００９１】
【数１３】
2019144623.tif 000015
【００９２】
また、再構成確率は、例えば、デコーダp(x| z; θ)を代入する関数として対数関数を用いると、式(4)により定義される。そして、AUC値は、例えば、式(5)や式(6)のように計算される。つまり、AUC値は、異常度から算出される値と再構成確率から算出される値の和を用いて定義される値である。
【００９３】
モデル学習部１２１がAUC値を用いてパラメータθ^, φ^を学習する際、モデル学習部１２０と同様の方法により、最適化基準を用いて学習する。
【００９４】
本実施形態の発明によれば、サンプルの次元数にかかわらず、AUC最適化基準を用いた変分オートエンコーダのモデル学習が可能となる。変分オートエンコーダの潜在変数zを用いたAUC最適化基準によりモデル学習することにより、回帰誤差等を用いる従来方法の持つ次元の呪いを回避することができる。その際、再構成確率を加算によりAUC値の中に取り込むことにより、異常データに対する異常度の発散現象を抑制することが可能となる。
【００９５】
また、近似AUC値による最適化基準に基づきモデル学習をすることにより、部分的に従来の周辺尤度最大化基準を用いたモデル学習を取り込むことになり、異常度が逆転するような正常データと異常データのペアが多いような場合であっても安定した学習が実現できる。
【００９６】
＜補記＞
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部、ＣＰＵ（Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい）、メモリであるＲＡＭやＲＯＭ、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、ＣＰＵ、ＲＡＭ、ＲＯＭ、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、ＣＤ−ＲＯＭなどの記録媒体を読み書きできる装置（ドライブ）などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【００９７】
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている（外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるＲＯＭに記憶させておくこととしてもよい）。また、これらのプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に記憶される。
【００９８】
ハードウェアエンティティでは、外部記憶装置（あるいはＲＯＭなど）に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にＣＰＵで解釈実行・処理される。その結果、ＣＰＵが所定の機能（上記、…部、…手段などと表した各構成要件）を実現する。
【００９９】
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【０１００】
既述のように、上記実施形態において説明したハードウェアエンティティ（本発明の装置）における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
【０１０１】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【０１０２】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【０１０３】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【０１０４】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図１】
2019144623.tif 000018
【図２】
2019144623.tif 000019
【図３】
2019144623.tif 000020
【図４】
2019144623.tif 000021
【図５】
2019144623.tif 000022