JP2019101781A - 検知システム、学習方法及び学習プログラム - Google Patents

検知システム、学習方法及び学習プログラム Download PDF

Info

Publication number
JP2019101781A
JP2019101781A JP2017232320A JP2017232320A JP2019101781A JP 2019101781 A JP2019101781 A JP 2019101781A JP 2017232320 A JP2017232320 A JP 2017232320A JP 2017232320 A JP2017232320 A JP 2017232320A JP 2019101781 A JP2019101781 A JP 2019101781A
Authority
JP
Japan
Prior art keywords
data
generation
unit
learning
latent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017232320A
Other languages
English (en)
Other versions
JP6835704B2 (ja
Inventor
真徳 山田
Masanori Yamada
真徳 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017232320A priority Critical patent/JP6835704B2/ja
Publication of JP2019101781A publication Critical patent/JP2019101781A/ja
Application granted granted Critical
Publication of JP6835704B2 publication Critical patent/JP6835704B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Analysis (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

【課題】生成モデルの潜在変数にDisentangleな表現を獲得させる際の学習コストを抑制する。【解決手段】生成部141は、異常検知に用いられる生成モデルであって、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルを用いて、検知対象物の正常状態の所定のデータからデータを繰り返し生成する。また、更新部142aは、生成部141によってデータが生成されるたびに、潜在変数がDisentangleな表現を獲得するように潜在変数を更新する。また、停止部142bは、更新部142aによって潜在変数が所定回数だけ更新されたときに、潜在変数間の相互情報量の分散が所定値以上である場合、生成部141によるデータの生成の繰り返しを停止する。【選択図】図2

Description

本発明は、検知システム、学習方法及び学習プログラムに関する。
従来、正常状態のデータを学習データとして、教師なし深層学習により生成モデルの学習を行い、当該生成モデルを用いて異常データの検知を行うアノマリ型の異常検知システムが知られている(例えば、非特許文献1を参照)。生成モデルの学習方法としては、潜在変数に分散表現を獲得させる方法が知られている。
また、近年では、潜在変数にDisentangleな表現を獲得させる学習方法が注目されている。このような方法を用いて潜在変数にDisentangleな表現を獲得させることで、観測できないデータに対する予言(Zero-shot Transfer)が可能となる。
Jinwon An, Sungzoon Cho, "Variational Autoencoder based Anomaly Detection using Reconstruction Probability" [online]、[平成29年11月27日検索]、インターネット(http://dm.snu.ac.kr/static/docs/TR/SNUDM-TR-2015-03.pdf)
しかしながら、従来の技術には、生成モデルの潜在変数にDisentangleな表現を獲得させる際の学習コストを抑制することが困難な場合があるという問題がある。例えば、確率変数で表される潜在変数にDisentangleな表現を獲得させる学習方法は、乱数の影響を受けるため、潜在変数がDisentangleな表現を獲得できず、失敗する確率が非常に高いことが知られている。このため、特に学習を繰り返し行う場合、学習コストが膨大になる場合がある。
一方で、潜在変数がDisentangleな表現を獲得できているか否かを学習の途中で判断する手法は知られていないため、生成モデルの潜在変数にDisentangleな表現を獲得させる際の学習コストを抑制することは困難な場合がある。
本発明の検知システムは、異常検知に用いられる生成モデルであって、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルを用いて、検知対象物の正常状態の所定のデータからデータを繰り返し生成する生成部と、前記生成部によってデータが生成されるたびに、前記潜在変数がDisentangleな表現を獲得するように前記潜在変数を更新する更新部と、前記更新部によって前記潜在変数が所定回数だけ更新されたときに、前記潜在変数間の相互情報量の分散が所定値以上である場合、前記生成部によるデータの生成の繰り返しを停止する停止部と、を有することを特徴とする。
本発明によれば、生成モデルの潜在変数にDisentangleな表現を獲得させる際の学習コストを抑制することができる。
図1は、第1の実施形態に係る検知システムの構成の一例を示す図である。 図2は、第1の実施形態に係る検知装置の構成の一例を示す図である。 図3は、Disentangleな表現を獲得した潜在変数について説明するための図である。 図4は、VAEについて説明するための図である。 図5は、実験における学習データの一例を示す図である。 図6は、実験結果のグラフの一例を示す図である。 図7は、実験結果のグラフの一例を示す図である。 図8は、実験結果のグラフの一例を示す図である。 図9は、実験結果のグラフの一例を示す図である。 図10は、第1の実施形態に係る検知装置の学習処理の流れを示すフローチャートである。 図11は、第1の実施形態に係る検知装置の学習処理の流れを示すフローチャートである。 図12は、第1の実施形態に係る検知装置の検知処理の流れを示すフローチャートである。 図13は、学習プログラムを実行するコンピュータの一例を示す図である。
以下に、本願に係る検知システム、学習方法及び学習プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
[第1の実施形態の構成]
まず、図1を用いて、第1の実施形態に係る検知システムの構成について説明する。図1は、第1の実施形態に係る検知システムの構成の一例を示す図である。図1に示すように、検知システム1は、検知装置10、ゲートウェイ20、機器30を有し、ゲートウェイ20は外部ネットワーク40と接続されている。
検知装置10は、機器30に関する正常状態のデータ及び検知対象のデータを取得し、取得した正常状態のデータの学習及び取得した検知対象のデータの異常検知を行う。例えば、検知装置10は、機器30と外部ネットワーク40との通信であって、ゲートウェイ20を通過する通信のログ等を取得する。また、機器30は、例えば監視カメラやウェアラブルデバイスのようなIoT機器であってもよい。例えば、機器30が監視カメラである場合、検知装置10は、監視カメラの解像度を変化させたときのトラフィックデータを正常状態のデータとして取得することができる。
次に、図2を用いて、検知装置10の構成について説明する。図2は、第1の実施形態に係る検知装置の構成の一例を示す図である。図2に示すように、検知装置10は、入出力部11、通信部12、記憶部13及び制御部14を有する。
入出力部11は、ユーザからのデータの入力を受け付ける。入出力部11は、例えば、マウスやキーボード等の入力装置、及びディスプレイやタッチパネル等の表示装置を含む。通信部12は、ネットワークを介して、他の装置との間でデータ通信を行う。例えば、通信部12はNIC(Network Interface Card)である。通信部12は、例えばゲートウェイ20との間でデータ通信を行う。
記憶部13は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部13は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。記憶部13は、検知装置10で実行されるOS(Operating System)や各種プログラムを記憶する。さらに、記憶部13は、プログラムの実行で用いられる各種情報を記憶する。また、記憶部13は、学習済みモデルDB131を有する。学習済みモデルDB131は、学習済みの生成モデルのパラメータ等を記憶する。
制御部14は、検知装置10全体を制御する。制御部14は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)、MPU(Micro Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部14は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部14は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部14は、生成部141、学習部142及び検知部143を有する。また、学習部142は、更新部142a及び停止部142bを有する。
生成部141は、異常検知に用いられる生成モデルであって、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルを用いて、入力されたデータから出力データを生成する。
[学習部]
学習部142は、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルの学習を、正常状態にある所定の機器に関するデータを学習データとして、潜在変数がDisentangleな表現を獲得するように行う。
学習部142は、一例として、非特許文献1に記載されたVAE(Variational Autoencoder)という手法に対し、潜在変数がDisentangleな表現を獲得するような学習を行うように変更を加えた手法を用いて学習を行う。従来のVAEは、オートエンコーダに基づく手法であり、潜在変数として確率分布が仮定されていることを特徴としている。
学習部142による生成モデルの学習が行われる場合、生成部141は、生成モデルを用いて、検知対象物の正常状態の所定のデータからデータを繰り返し生成する。その際、更新部142aは、生成部141によってデータが生成されるたびに、潜在変数がDisentangleな表現を獲得するように潜在変数を更新する。また、停止部142bは、更新部142aによって潜在変数が所定回数だけ更新されたときに、潜在変数間の相互情報量の分散が所定値以上である場合、生成部141によるデータの生成の繰り返しを停止する。
また、学習部142による生成モデルの学習が行われる場合、まず、生成部141は、潜在変数を用いた計算における乱数を生成するための初期値(ランダムシード)を設定する。そして、生成部141は、データの生成の繰り返しを開始し、データの生成の繰り返しが停止した場合、ランダムシードを再設定し、さらにデータの生成の繰り返しを開始する。
ここで、例として、ある図形が所定の位置に所定のスケールで表示された画像データを学習データとして、従来のVAEを用いて生成モデルの学習を行う場合を考える。この場合、学習によって決定された潜在変数zが図形の水平方向の位置とスケールを表し、潜在変数zが図形の水平方向の位置と垂直方向の位置とスケールを表し、潜在変数zが図形の水平方向の位置と垂直方向の位置を表す、といったことが起こる場合がある。つまり、この場合、図形の水平方向の位置がz、z及びzによって表され、図形の垂直方向の位置がz及びzによって表され、図形のスケールがz及びzによって表される。これは、従来のVAEでは、学習データに含まれる1つの意味が複数の潜在変数で表される分散表現を獲得するように学習を行っているためである。
ここで、従来のVAEを用いて学習された生成モデルを用いて画像データを生成することを考える。このとき、例えば、学習データとして用いられた全ての画像データにおいて、図形が中央より右側に位置していた場合、従来のVAEを用いて学習された生成モデルでは、図形が左端に位置するような画像データを生成することができない場合がある。これは、分散表現を獲得するように学習を行う従来のVAEでは、観測できないデータに対する予言(Zero-shot Transfer)が困難であるためである。
これに対し、本実施形態の手法では、学習データに含まれる1つの意味が複数の1つの潜在変数で表されるDisentangleな表現を獲得するように学習を行うため、観測できないデータに対する予言が可能となる。例えば、ある図形が所定の位置に所定のスケールで表示された画像データを学習データとして、本実施形態の手法を用いて生成モデルの学習を行った場合、zが図形の水平方向の位置を表し、zが図形の垂直方向の位置を表し、zが図形のスケールを表すようにすることができる。この場合、例えば、zの値を学習データには存在しなかった範囲の値に変更することで、図形の位置が生成モデルによって生成される画像における図形の水平方向の位置を、学習データには存在しなかった位置に設定することができる。
図3は、Disentangleな表現を獲得した潜在変数について説明するための図である。図3の軸151及び軸152は、それぞれ異なる潜在変数の値である。また、領域153は学習データが観測できた領域である。各点155は、観測された学習データを表している。領域154は学習データが観測できなかった領域である。このとき、本実施形態の手法では、軸151及び軸152自体を学習し、それぞれの潜在変数はDisentangleな表現を獲得するため、領域154の学習データの予言、すなわちZero-shot Transferが可能となる。
図4は、VAEについて説明するための図である。図4に示すように、従来のVAEの生成モデルは、オートエンコーダである。また、従来のVAEは、in層に入力された学習データを基にエンコーダqφ(z|x)により確率変数で表される潜在変数p(z)を生成し、p(z)から確率的に決定されたzを基にデコーダpθ(x|z)により出力データを生成し、out層に出力する。
ここで、エンコーダqφ(z|x)、潜在変数p(z)、及びデコーダpθ(x|z)は、いずれも分布を仮定するものである。また、エンコーダqφ(z|x)と潜在変数p(z)との間は確率的であるため、逆誤差伝搬が不可能である。一方、潜在変数p(z)とデコーダpθ(x|z)との間は決定的であるため、逆誤差伝搬が可能である。
また、従来のVAEは、logp(x)の再構成誤差項からKL divergenceによるp(z)の束縛を表す正則化項を引いた変分下限の部分を目的関数として、当該目的関数が最大化されるように学習を行う。
潜在変数がDisentangleな表現を獲得するためには、確率分布で表される潜在変数間の独立の度合いを大きくすることや、確率分布で表される潜在変数間の相互情報量を小さくすることが考えられる。そこで、本実施形態において、学習部142は、VAEの目的関数の最大化を、(1)式の右辺の最大化に置き換えた手法を用いて学習を行う。ただし、Iは相互情報量、β及びηはユーザによって決められる定数である。
βを大きくした場合、間接的に確率分布で表される潜在変数間の独立の度合いが大きくなる。また、(1)式の右辺を最大化すると、I(z;z)を小さくすることになるため、確率分布で表される潜在変数間の相互情報量が小さくなる。つまり、更新部142aは、潜在変数間の相互情報量が小さくなるように潜在変数を更新する。具体的に、更新部142aは、パラメータθ及びφを更新する。
本実施形態の検知装置10を用いて実験を行った際の結果について説明する。図5は、実験における学習データの一例を示す図である。図5の画像データは、人工的に生成したものであり、図5の画像データは、楕円形のモノクロ画像に対してx position(16パターン)、y position(16パターン)、スケール(40パターン)、回転(40パターン)を振って人工的に生成したものである。図5に示す64枚の画像データは実験における学習データの一部であり、実際には図示しない画像データも学習データとして用いている。また、実験では、β=1、η=1000を用いた。
入出力部11は、学習部142による学習の結果をグラフとして表示することができる。ユーザは、入出力部11によって表示されたグラフを見て、潜在変数がDisentangleな表現を獲得したか否かの評価を行うことができる。図6は、実験結果のグラフの一例を示す図である。図6のグラフ50、51、52、53、54及び55は、入出力部11によって出力されたものである。
図6のグラフ50、51、52、53、54及び55は、それぞれ潜在変数z、z、z、z、z、zに対応し、学習データの図形の位置を少しずつ変化させたとき各位置に対応するp(z|x)=N(μ,σ)のμをプロットしたものである。グラフ50、51、52、53、54及び55において、μが大きい値である場合は黒い点でプロットし、μが小さい値である場合は灰色の点でプロットしている。グラフ50、51、52、53、54及び55の横軸はx position(例えば、2,4,…,30,32の16パターン)に対応し、縦軸はy position(例えば、2,4,…,30,32の16パターン)に対応している。
例えば、潜在変数zに対応するグラフ53では、横軸の値が小さいほど黒い点が多くなり、横軸の値が大きいほど灰色の点が多くなっている。一方、グラフ53の縦軸方向では大きな模様の変化は見られない。これより、潜在変数zの値が大きいほどx positionが小さくなること、及び、潜在変数zの値がy positionに影響を与えないことがいえる。つまり、グラフ53から、潜在変数zが「楕円形のx方向の位置」という意味を持っていることがいえる。同様に、潜在変数zに対応するグラフ55から、潜在変数zが「楕円形のy方向の位置」という意味を持っていることがいえる。
このように、実験では、入出力部11によって出力されたグラフの縞模様のでき方から、学習部142による学習によって、x方向とy方向の意味が潜在変数として分離して抽出されていることがわかる。これより、本実施形態によれば、それぞれの潜在変数はDisentangleな表現を獲得するため、学習データが観測できなかった領域の学習データの予言、すなわちZero-shot Transferが可能となる。
ここで、図7、8及び9を用いて、潜在変数がDisentangleな表現を獲得する場合、潜在変数間の相互情報量が小さくなることを説明する。図7、8及び9は、実験結果のグラフの一例を示す図である。図7、8及び9は、βにそれぞれ異なる値を設定した場合の実験結果である。入出力部11は、生成モデルに正常状態におけるデータが入力された際の、複数の潜在変数間の相互情報量を出力する。
図7のグラフ60、61、62、63、64及び65から、グラフ61に対応する潜在変数z、及びグラフ65に対応する潜在変数zが、Disentangleな表現を獲得できていることがいえる。また、相互情報量を表すグラフ600に示すように、相互情報量の最大値は、潜在変数z(番号:1)と潜在変数z(番号:5)との間の相互情報量であり、0.01程度である(グラフ600の(1 5))。
また、図8のグラフ70、71、72、73、74及び75から、グラフ71に対応する潜在変数z、グラフ72に対応する潜在変数z、及びグラフ74に対応する潜在変数zがDisentangleな表現を獲得できていることがいえる。ただし、図7と図8を比較すると、図7の方が模様の形状がよりはっきりと表れているので、図8の場合よりも図7の場合の方が、よりDisentangleな表現を獲得できている。また、相互情報量を表すグラフ700に示すように、相互情報量の最大値は、潜在変数z(番号:1)と潜在変数z(番号:2)との間の相互情報量であり、0.12程度である(グラフ700の(1 2))。
また、図9の場合、グラフ80、81、82、83、84及び85から、Disentangleな表現を獲得できていないことがいえる。また、相互情報量を表すグラフ800に示すように、相互情報量の最大値は、潜在変数z(番号:0)と潜在変数z(番号:4)との間の相互情報量であり、0.55程度である(グラフ800の(0 4))。
このように、潜在変数がDisentangleな表現を獲得する場合、潜在変数間の相互情報量が小さくなるため、相互情報量は、潜在変数がDisentangleな表現を獲得したか否かを評価する指標となる。
また、潜在変数がDisentangleな表現を獲得している場合、潜在変数間の相互情報量の分散が小さくなる傾向がある。ここで、図7の実験結果に示される相互情報量の分散は約7.8×10−6である。また、図8の実験結果に示される相互情報量の分散は約1.0×10−3である。また、図9の実験結果に示される相互情報量の分散は約2.7×10−2である。このように、潜在変数がDisentangleな表現を獲得しているほど、相互情報量の分散は小さくなる。
このため、停止部142bは、更新部142aによって潜在変数が所定回数だけ更新されたときに、潜在変数間の相互情報量の分散が所定値以上である場合、生成部141によるデータの生成の繰り返しを停止する。これにより、学習部142は、繰り返しの途中であっても、潜在変数がDisentangleな表現を獲得する見込みがない場合、学習を停止することができる。なお、本実施形態の検知装置10において、潜在変数がDisentangleな表現を獲得することができなかった場合、Lossを小さくできたとしても、学習は失敗である。
また、潜在変数がDisentangleな表現を獲得するか否かは、潜在変数を用いた計算において使用される乱数の影響を受ける。このため、停止部142bが学習を停止した場合、生成部141は、ランダムシードを再設定し、さらにデータの生成の繰り返しを開始する。これにより、検知装置10は、失敗した場合と異なる乱数を使用した学習を行うことが可能となる。
検知部143は、検知対象データと生成部141によって生成されたデータとの類似度が所定値未満である場合、検知対象データを異常と検知する。なお、検知部143による検知が行われる場合、生成部141は、生成モデルを用いて、所定の検知対象データからデータを生成する。
ここで、学習部142による学習の繰り返しについて、具体例を挙げて説明する。まず、学習部142は、セット数を18、試験回数を10、エポック数を1000、分散の閾値を1.0×10−4と設定する。ここで、セット数は、生成部141がランダムシードを設定し、繰り返しを開始する回数である。つまり、検知装置10は、18通りのランダムシードで学習を行うことができる。また、エポック数は、検知装置10が学習を繰り返す回数である。また、学習の繰り返し数が試験回数に達した場合、停止部142bは、潜在変数間の相互情報量の分散を計算し、分散が閾値以上である場合は繰り返しを停止する。また、最終的に学習が成功したか否かは、潜在変数間の相互情報量自体の小ささ及び分散の小ささの両方で判断することができる。
ここで、18通りのランダムシードのうち、2通りのランダムシードで学習が成功することとする。当然、学習開始時には、いくつのランダムシードで学習が成功するか及び何通りのランダムシードで学習が成功するかは不明である。なお、例えば、停止部142bは、潜在変数間の相互情報量の分散を、ビンサイズ2のジャックナイフ法を使って計算することができる。
ここで、全通りの学習が行われる場合、セット数が18、エポック数が1000なので、検知装置10は、18×1000=18,000回のデータの生成及び潜在変数の更新を行うことになる。
一方、停止部142bによる繰り返しの停止が行われる場合、セット数が18、試験回数が10、エポック数が1000なので、18通りのランダムシードのうち、2通りのランダムシードでは繰り返し数が1000回となり、16通りのランダムシードでは繰り返し数が10回となる。
このため、停止部142bによる繰り返しの停止が行われる場合、検知装置10は、(2×1000)+(16×10)=2,160回のデータの生成及び潜在変数の更新を行うことになる。このため、停止部142bによる繰り返しの停止が行われる場合、停止部142bによる繰り返しの停止が行われない場合と比べて、学習コストは約1/9となる。
[検知部]
学習部142による生成モデルの学習は、in層に入力された学習データとout層で出力されるデータとがなるべく同一になるように行われる。このため、学習済みの生成モデルのin層に検知対象のデータを入力した際に、当該検知対象のデータが正常状態のものであればout層から入力データと類似したデータを出力することができる。一方、検知対象のデータが異常データであればout層から入力データと類似しないデータが出力される。検知部143が、生成モデルのこのような性質を利用して検知を行う。
[第1の実施形態の処理]
図10を用いて検知装置10の学習部142の処理について説明する。図10は、第1の実施形態に係る検知装置の学習処理の流れを示すフローチャートである。図10に示すように、まず、学習部142には正常状態のデータが入力される(ステップS11)。そして、学習部142は、潜在変数がDisentangleな表現を獲得するように生成モデルの学習を行う(ステップS12)。そして、学習部142は、学習済みの生成モデルを学習済みモデルDB131に保存する(ステップS13)。
図11を用いて検知装置10の学習処理について詳しく説明する。図11は、第1の実施形態に係る検知装置の学習処理の流れを示すフローチャートである。図11に示すように、学習部142は、まず、セット数、試験回数、エポック数を設定し(ステップS121)、入力された正常状態のデータを取得する(ステップS122)。次に、学習部142は、ランダムシードを設定し、データの生成回数を0に初期化する(ステップS123)。
そして、生成部141は、生成モデルを用いて、正常状態のデータから出力データを生成する(ステップS124)。ここで、更新部142aは、生成モデルの潜在変数をDisentangleな表現を獲得するように更新する(ステップS125)。具体的には、更新部142aは、(1)式に示すように、VAEの目的関数に正則化項の重みβや相互情報量I(z;z)を小さくする項が追加された目的関数を用いて、誤差が最小化されるように潜在変数を更新することで、潜在変数にDisentangleな表現を獲得させることができる。
ここで、データの生成回数がエポック数でない場合(ステップS126、No)、かつ、データの生成回数が試験回数でない場合(ステップS127、No)、処理がステップS124に戻され、生成部141は、生成モデルを用いて、正常状態のデータから出力データを生成する。なお、データの生成回数が試験回数でない場合には、データの生成回数が試験回数未満である場合と、データの生成回数が試験回数を超えた場合とが含まれる。
つまり、ステップS124及びステップS125は、データの生成回数がエポック数と一致するか(ステップS126、Yes)、又は、データの生成回数が試験回数と一致する(ステップS127、Yes)まで繰り返される。
データの生成回数がエポック数である場合(ステップS126、Yes)、かつ、ランダムシードの設定回数がセット回数である場合(ステップS129、Yes)、検知装置10は学習処理を終了する。一方、データの生成回数がエポック数である場合(ステップS126、Yes)、かつ、ランダムシードの設定回数がセット回数でない場合(ステップS129、No)、処理がステップS123に戻され、学習部142は、ランダムシードを再設定し、データの生成回数を0に初期化する。
また、ステップS127で、データの生成回数が試験回数である場合(ステップS128、Yes)、停止部142bは、潜在変数間の相互情報量の分散を計算し、分散が閾値以上であるか否かを判定する(ステップS128)。分散が閾値以上でない場合(ステップS128、No)、学習が成功するとみなされ、処理がステップS124に戻され、生成部141は、生成モデルを用いて、正常状態のデータから出力データを生成する。
一方、分散が閾値以上である場合(ステップS128、Yes)、学習が失敗するとみなされ、処理がステップS129に進められる。そして、ランダムシードの設定回数がセット回数である場合(ステップS129、Yes)、検知装置10は学習処理を終了する。一方、ランダムシードの設定回数がセット回数でない場合(ステップS129、No)、処理がステップS123に戻され、学習部142は、ランダムシードを再設定し、データの生成回数を0に初期化する。
図12を用いて検知装置10の検知部143の処理について説明する。図12は、第1の実施形態に係る検知装置の検知処理の流れを示すフローチャートである。図12に示すように、まず、検知部143には検知対象のデータが入力される(ステップS21)。そして、検知部143は、学習済みモデルDB131に保存された生成モデルを用いて、出力データを生成する(ステップS22)。ここで、検知対象のデータと出力データとの類似度が所定値以上である場合(ステップS23、Yes)、検知部143は検知対象のデータを異常と検知せず、処理を終了する。一方、検知対象のデータと出力データとの類似度が所定値以上でない場合(ステップS23、No)、検知部143は検知対象のデータを異常と検知する(ステップS24)。
[第1の実施形態の効果]
生成部141は、異常検知に用いられる生成モデルであって、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルを用いて、検知対象物の正常状態の所定のデータからデータを繰り返し生成する。また、更新部142aは、生成部141によってデータが生成されるたびに、潜在変数がDisentangleな表現を獲得するように潜在変数を更新する。また、停止部142bは、更新部142aによって潜在変数が所定回数だけ更新されたときに、潜在変数間の相互情報量の分散が所定値以上である場合、生成部141によるデータの生成の繰り返しを停止する。このように、検知装置10は、潜在変数が所定回数だけ更新された段階で、その学習が成功するか失敗するかを判断し、失敗すると判断した場合は繰り返しを停止することができる。このため、本実施形態の検知システム1は、生成モデルの潜在変数にDisentangleな表現を獲得させる際の学習コストを抑制することができる。
生成部141は、潜在変数を用いた計算における乱数を生成するための初期値を設定し、データの生成の繰り返しを開始し、データの生成の繰り返しが停止した場合、初期値を再設定し、さらにデータの生成の繰り返しを開始する。潜在変数がDisentangleな表現を獲得できるか否かは、学習時に使用される乱数に影響される。本実施形態の検知システム1は、ランダムシードを変更することで、繰り返しが開始されるたびに異なる乱数を使った学習を行うことができる。
更新部142aは、潜在変数間の相互情報量が小さくなるように潜在変数を更新する。これにより、本実施形態の検知システム1は、生成モデルの潜在変数がDisentangleな表現を獲得できるようになる。
生成部141は、生成モデルを用いて、所定の検知対象データからデータを生成する。このとき、検知部143は、検知対象データと生成部141によって生成されたデータとの類似度が所定値未満である場合、検知対象データを異常と検知する。これにより、本実施形態の検知システム1は、生成モデルの性質を利用した異常の検知を行うことが可能となる。
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
一実施形態として、検知装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の検知を実行する学習プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の学習プログラムを情報処理装置に実行させることにより、情報処理装置を検知装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
また、検知装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の検知に関するサービスを提供する検知サーバ装置として実装することもできる。例えば、検知サーバ装置は、検知対象のデータを入力とし、検知結果を出力とする検知サービスを提供するサーバ装置として実装される。この場合、検知サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の検知に関するサービスを提供するクラウドとして実装することとしてもかまわない。
図13は、学習プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、検知装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、検知装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSDにより代替されてもよい。
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 検知装置
11 入出力部
12 通信部
13 記憶部
14 制御部
20 ゲートウェイ
30 機器
40 外部ネットワーク
141 生成部
142 学習部
142a 更新部
142b 停止部
143 検知部

Claims (6)

  1. 異常検知に用いられる生成モデルであって、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルを用いて、検知対象物の正常状態の所定のデータからデータを繰り返し生成する生成部と、
    前記生成部によってデータが生成されるたびに、前記潜在変数がDisentangleな表現を獲得するように前記潜在変数を更新する更新部と、
    前記更新部によって前記潜在変数が所定回数だけ更新されたときに、前記潜在変数間の相互情報量の分散が所定値以上である場合、前記生成部によるデータの生成の繰り返しを停止する停止部と、
    を有することを特徴とする検知システム。
  2. 前記生成部は、前記潜在変数を用いた計算における乱数を生成するための初期値を設定し、データの生成の繰り返しを開始し、データの生成の繰り返しが停止した場合、前記初期値を再設定し、さらにデータの生成の繰り返しを開始することを特徴とする請求項1に記載の検知システム。
  3. 前記更新部は、前記潜在変数間の相互情報量が小さくなるように前記潜在変数を更新することを特徴とする請求項1又は2に記載の検知システム。
  4. 前記生成部は、前記生成モデルを用いて、所定の検知対象データからデータを生成し、
    前記検知対象データと前記生成部によって生成されたデータとの類似度が所定値未満である場合、前記検知対象データを異常と検知する検知部をさらに有することを特徴とする請求項1から3のいずれか1項に記載の検知システム。
  5. コンピュータによって実行される学習方法であって、
    異常検知に用いられる生成モデルであって、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルを用いて、検知対象物の正常状態の所定のデータからデータを繰り返し生成する生成工程と、
    前記生成工程によってデータが生成されるたびに、前記潜在変数がDisentangleな表現を獲得するように前記潜在変数を更新する更新工程と、
    前記更新工程によって前記潜在変数が所定回数だけ更新されたときに、前記潜在変数間の相互情報量の分散が所定値以上である場合、前記生成工程によるデータの生成の繰り返しを停止する停止工程と、
    を含んだことを特徴とする学習方法。
  6. コンピュータに、
    異常検知に用いられる生成モデルであって、確率変数で表される複数の潜在変数を基にデータを生成する生成モデルを用いて、検知対象物の正常状態の所定のデータからデータを繰り返し生成する生成ステップと、
    前記生成ステップによってデータが生成されるたびに、前記潜在変数がDisentangleな表現を獲得するように前記潜在変数を更新する更新ステップと、
    前記更新ステップによって前記潜在変数が所定回数だけ更新されたときに、前記潜在変数間の相互情報量の分散が所定値以上である場合、前記生成ステップによるデータの生成の繰り返しを停止する停止ステップと、
    を実行させることを特徴とする学習プログラム。
JP2017232320A 2017-12-04 2017-12-04 検知システム、学習方法及び学習プログラム Active JP6835704B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017232320A JP6835704B2 (ja) 2017-12-04 2017-12-04 検知システム、学習方法及び学習プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017232320A JP6835704B2 (ja) 2017-12-04 2017-12-04 検知システム、学習方法及び学習プログラム

Publications (2)

Publication Number Publication Date
JP2019101781A true JP2019101781A (ja) 2019-06-24
JP6835704B2 JP6835704B2 (ja) 2021-02-24

Family

ID=66976982

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017232320A Active JP6835704B2 (ja) 2017-12-04 2017-12-04 検知システム、学習方法及び学習プログラム

Country Status (1)

Country Link
JP (1) JP6835704B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU201808U1 (ru) * 2019-11-28 2021-01-13 Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук Инструментально-моделирующий комплекс координации процессов позиционирования и диспозиции сложного динамического объекта в группе
WO2021250868A1 (ja) * 2020-06-11 2021-12-16 日本電信電話株式会社 復元可否判定方法、復元可否判定装置及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014228991A (ja) * 2013-05-21 2014-12-08 ソニー株式会社 情報処理装置および方法、並びにプログラム
WO2017094267A1 (ja) * 2015-12-01 2017-06-08 株式会社Preferred Networks 異常検出システム、異常検出方法、異常検出プログラム及び学習済モデル生成方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014228991A (ja) * 2013-05-21 2014-12-08 ソニー株式会社 情報処理装置および方法、並びにプログラム
WO2017094267A1 (ja) * 2015-12-01 2017-06-08 株式会社Preferred Networks 異常検出システム、異常検出方法、異常検出プログラム及び学習済モデル生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IRINA HIGGINS, ET AL.: "β-VAE: Learning Basic Visual Concepts with a Constrained Variational Framework", INTERNATIONAL CONFERENCE ON LEARNING REPRESENTATIONS (ICLR) 2017 [ONLINE], JPN6020023130, 18 April 2017 (2017-04-18), ISSN: 0004394900 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU201808U1 (ru) * 2019-11-28 2021-01-13 Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук Инструментально-моделирующий комплекс координации процессов позиционирования и диспозиции сложного динамического объекта в группе
WO2021250868A1 (ja) * 2020-06-11 2021-12-16 日本電信電話株式会社 復元可否判定方法、復元可否判定装置及びプログラム

Also Published As

Publication number Publication date
JP6835704B2 (ja) 2021-02-24

Similar Documents

Publication Publication Date Title
JP6767312B2 (ja) 検知システム、検知方法及び検知プログラム
JP2020140580A (ja) 検知装置及び検知プログラム
JP6870508B2 (ja) 学習プログラム、学習方法及び学習装置
JP6965206B2 (ja) クラスタリング装置、クラスタリング方法およびプログラム
US11157380B2 (en) Device temperature impact management using machine learning techniques
WO2019245006A1 (ja) 検知装置及び検知方法
JP6835704B2 (ja) 検知システム、学習方法及び学習プログラム
EP3816829B1 (en) Detection device and detection method
JP6494005B1 (ja) 情報処理装置、情報処理方法及びプログラム
US20230016772A1 (en) Checking device, checking method, and checking program
JP7420244B2 (ja) 学習装置、学習方法、推定装置、推定方法及びプログラム
JP2018073241A (ja) 検知装置、検知方法および検知プログラム
JP2015001968A (ja) 機械学習装置、機械学習方法、およびプログラム
JP7396505B2 (ja) モデル生成プログラム、モデル生成方法及びモデル生成装置
JP7077746B2 (ja) 学習装置、学習方法及び学習プログラム
JP7331938B2 (ja) 学習装置、推定装置、学習方法及び学習プログラム
KR20180119443A (ko) 가우시안 프로세스 회귀분석을 이용한 클러스터링 방법 및 그 장치
WO2019208248A1 (ja) 学習装置、学習方法及び学習プログラム
JP7444270B2 (ja) 判定装置、判定方法及び判定プログラム
WO2023181222A1 (ja) 学習装置、学習方法、および、学習プログラム
WO2023195120A1 (ja) 学習装置、学習方法、および、学習プログラム
WO2022059208A1 (ja) 学習装置、学習方法及び学習プログラム
WO2022070342A1 (ja) 学習装置、学習方法及び学習プログラム
WO2023195138A1 (ja) 学習方法、学習装置及び学習プログラム
WO2022070343A1 (ja) 学習装置、学習方法及び学習プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210122

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210204

R150 Certificate of patent or registration of utility model

Ref document number: 6835704

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150