JP7044117B2 - モデル学習装置、モデル学習方法、及びプログラム - Google Patents

モデル学習装置、モデル学習方法、及びプログラム Download PDF

Info

Publication number
JP7044117B2
JP7044117B2 JP2019564307A JP2019564307A JP7044117B2 JP 7044117 B2 JP7044117 B2 JP 7044117B2 JP 2019564307 A JP2019564307 A JP 2019564307A JP 2019564307 A JP2019564307 A JP 2019564307A JP 7044117 B2 JP7044117 B2 JP 7044117B2
Authority
JP
Japan
Prior art keywords
learning
data
model
test
unit
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.)
Active
Application number
JP2019564307A
Other languages
English (en)
Other versions
JPWO2019138655A1 (ja
Inventor
泰弘 池田
圭介 石橋
雄介 中野
敬志郎 渡辺
亮一 川原
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
Publication of JPWO2019138655A1 publication Critical patent/JPWO2019138655A1/ja
Application granted granted Critical
Publication of JP7044117B2 publication Critical patent/JP7044117B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Quality & Reliability (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、システムからリアルタイムで収集したデータを監視し、学習モデルに基づく検知器を用いて異常検知を行う処理を継続的に行うための技術に関連するものである。
リアルタイムな異常検知においては、様々なデータを定期的に観測し、予め学習した結果に基づいて、観測したデータが正常か異常かの判断を行う。特に、予め正常時として定義された「学習期間」のデータを学習データとして用いて学習を行い、異常検知を行う「テスト期間」においては、観測されたテストデータと、学習した教師データの傾向の比較を行う異常検知アルゴリズムとして、正常時における各種データの相関関係を学習し、テスト期間においては、学習したデータの相関関係が崩れた際に「異常」と判断するアルゴリズムが提案されている(非特許文献1~3)。このようなアルゴリズムではラベル付けの難しい異常時のデータを用いることなく、正常時のデータだけを用いて異常検知を行うことが可能である。
Hodge, Victoria J., and Jim Austin. "A survey of outlier detection methodologies." Artificial intelligence review 22.2 (2004): 85-126. 櫻田 麻由 ・ 矢入 健久,"オートエンコーダを用いた次元削減による宇宙機の異常検知",人工知能学会全国大会論文集 28, 1-3, 2014 Ringberg, Haakon, et al. "Sensitivity of PCA for traffic anomaly detection." ACM SIGMETRICS Performance Evaluation Review 35.1 (2007): 109-120.
このような検知アルゴリズムを異常検知に使い続ける際には、観測対象のデータの傾向に変化がある場合、傾向の変化自体を異常として検知してしまう場合があるという課題がある。
例えば、データがトラヒック量のようなデータであり、トラヒック量がネットワーク内で全体的に増加の傾向にある場合、異常検知アルゴリズムへの入力データが徐々に増加することで、単純なトラヒック量の増加を異常と検知してしまう場合があった。また、正常なデータを異常として判断してしまうような過検知や、異常なデータを正常として見逃してしまう非検知が発生する場合に、同様の過検知/非検知を繰り返し起こしてしまう課題もあった。
すなわち、従来技術では、学習したモデルを用いる異常検知アルゴリズムを継続的に利用する際に、異常検知を適切に行えなくなる場合があるという課題があった。
本発明は上記の点に鑑みてなされたものであり、学習したモデルを用いる異常検知アルゴリズムを継続的に利用する際に、異常検知が適切に行われるようにする技術を提供することを目的とする。
開示の技術によれば、学習データを用いて学習されたモデルのパラメータと、当該学習データとを格納する記憶部と、
前記モデルを用いて、テストデータの異常の有無を判断し、判断結果及び当該テストデータを前記記憶部に格納する検知部と、
前記判断結果、前記テストデータ、及び前記学習データを用いて、前記モデルの再学習を行う再学習部と、を備え、
前記再学習部は、前記パラメータの前記学習データに対する重要度を用い、重要度の大きさに応じて、再学習におけるパラメータの変化量を制限し、
前記再学習部は、異常であると過検知された正常なテストデータについて、当該テストデータと前記学習データとの距離が閾値以上である場合に、当該テストデータを前記再学習に使用しないと判定する
ことを特徴とするモデル学習装置が提供される。

開示の技術によれば、学習したモデルを用いる異常検知アルゴリズムを継続的に利用する際に、異常検知が適切に行われるようにする技術が提供される。
本発明の実施の形態におけるモデル学習装置100の構成図である。 モデル学習装置100のハードウェア構成の一例を示す図である。 実施例4におけるモデル学習装置100の動作を説明するためのフローチャートである。 実施例5におけるモデル学習装置100の動作を説明するためのフローチャートである。 実施例6におけるモデル学習装置100の動作を説明するためのフローチャートである。 実施例7におけるモデル学習装置100の動作を説明するためのフローチャートである。 実施例9におけるモデル学習装置100の動作を説明するためのフローチャートである。 本発明の技術を用いなかった場合の異常度の変化を表すグラフである。 実施例4を用いてトレンドへの追従を行った場合の異常度の変化を表すグラフである。 実施例4及び実施例5を用いてトレンドへの追従及び過検知の再学習を行った場合の異常度の変化を表すグラフである。 各評価における過検知数を比較した結果である。
以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
(システム構成)
図1に、本実施の形態におけるモデル学習装置100の構成例を示す。図1に示すように、本実施の形態におけるモデル学習装置100は、入力部101、記憶部102、検知部103、正解ラベル生成部104、再学習部105、パラメータ採否判定部106を有する。なお、最初にモデルの学習を実行する機能(ここでは学習部と呼ぶ)は、モデル学習装置100が備えてもよいし、モデル学習装置100の外部に備えられてもよいが、本実施の形態では、モデル学習装置100の外部に備えられていることを想定している。
入力部101は、監視対象のデータ、異常検知モデル、各種パラメータ等の外部の情報をモデル学習装置100に入力させる。
記憶部102は、入力部101より入力されたデータ、モデル及びパラメータや、再学習部105にて新たに計算されたモデル及びパラメータを保持する。
検知部103は、入力部101より入力されるか、又は記憶部102から読み出したデータ、モデル及びパラメータを用いて、データの異常の有無について判定する。
正解ラベル生成部104は、過去に入力された各データについて、正常性の確認を行い、正常であったか否かを示す正解ラベルを生成する。なお、正常性の確認の方法は特定の方法に限定されない。例えば、正解ラベル生成部104がデータを表示し、システムオペレータが目視で正常性の確認を行い、確認結果を正解ラベル生成部104に入力することにより、正解ラベルが生成されてもよい。
再学習部105は、記憶部102に保持されたデータ、モデル及びパラメータを用いて、予め定めた方法及びタイミングでモデルの再学習を行う。
パラメータ採否判定部106は、再学習部105にて新たに生成されたモデルを、それ以降の異常検知に用いるか否かの判断を行う。
上述した各機能部に関わる動作の詳細については後述する。
(ハードウェア構成例)
上述したモデル学習装置100は、例えば、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。
すなわち、モデル学習装置100は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、モデル学習装置100で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
図2は、本実施の形態における上記コンピュータのハードウェア構成例を示す図である。図2のコンピュータは、それぞれバスBで相互に接続されているドライブ装置150、補助記憶装置152、メモリ装置153、CPU154、インターフェース装置155、表示装置156、及び入力装置157等を有する。
当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体151によって提供される。プログラムを記憶した記録媒体151がドライブ装置150にセットされると、プログラムが記録媒体151からドライブ装置150を介して補助記憶装置152にインストールされる。但し、プログラムのインストールは必ずしも記録媒体151より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置152は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置153は、プログラムの起動指示があった場合に、補助記憶装置152からプログラムを読み出して格納する。CPU154は、メモリ装置153に格納されたプログラムに従って、モデル学習装置100に係る機能を実現する。インターフェース装置155は、ネットワークに接続するためのインターフェースとして用いられる。表示装置156はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置157はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。なお、表示装置156を備えないこととしてもよい。
(実施例)
次に、モデル学習装置100の動作例を実施例1~11として以下に説明する。以下、実施例1~2は動作の概要を示しており、その動作の詳細例については、実施例3以降で説明している。
<実施例1>
実施例1では、モデル学習装置100は、教師なし異常検知アルゴリズムを用いる。当該教師なし異常検知アルゴリズムに基づき、モデル学習装置100の検知部103は、テスト期間において、正常時のデータX_train={x_train_1, x_train_2,…,x_train_T}を用いて学習されたモデルを用い、当該モデルに対してテストデータx_testを入力し、データの異常度を出力する。また、モデル学習装置100は、過去のテストデータを記憶部102に蓄積し、再学習部105において、蓄積したテストデータや学習データを用いてモデルの再学習を行うことで、データの持つ時間的なトレンドへの追従や、誤った検知を繰り返さないようなモデルの更新を行う。具体的な処理例については実施例4、5、6において説明する。
<実施例2>
実施例2では、モデル学習装置100は、教師あり異常検知アルゴリズムを用いる。当該教師あり異常検知アルゴリズムに基づき、モデル学習装置100の検知部103は、学習データとして、X_train={x_train_1, x_train_2,…,x_train_T}に加えて、それぞれが属するクラスのラベルであるラベルデータY_train={y_train_1, y_train_2,…,y_train_T}を用いて学習されたモデルをテスト期間において使用することで、テストデータのクラスを分類し、分類結果から異常の有無を判断する。その際に、モデル学習装置100は、過去のテストデータを記憶部102に蓄積し、再学習部105において、蓄積したテストデータや学習データを用いてモデルの再学習を行うことで、データの持つ時間的なトレンドへの追従や、誤った検知を繰り返さないようなモデルの更新を行う。具体的な処理例については実施例7、8において説明する。
<実施例3>
実施例3では、実施例1において再学習部105が再学習を行う場合に、過去に学習したパラメータの重要度を考慮した学習を行うことで、過去に学習したデータの傾向を保持しつつ、新たなデータの傾向についての再学習を行う。
実施例3では、学習部でモデルの学習を行った際に、学習の結果得られたパラメータが、その学習においてどの程度重要であったかの重要度が算出され、その重要度が記憶部102に記憶される。なお、前述したように、学習部は、モデル学習装置100の外部の機能部であるが、学習部がモデル学習装置100に備えられる形態を採用してもよい。
ここでは、重要度を算出する方法について、モデルを確率モデルとみなした場合に、確率変数で与えられるデータXがパラメータに関して持つ情報量であるフィッシャー情報量(MLA Kirkpatrick, James, et al. "Overcoming catastrophic forgetting in neural networks." Proceedings of the National Academy of Sciences (2017): 201611835.参照)を、パラメータの重要度とみなした場合の例を示す。
学習部は、パラメータθを学習した後に、各パラメータのフィッシャー情報量についても計算し、それらをFとして記憶部102に保持する。再学習を行う場合には、再学習部105は、記憶部102に保持されたフィッシャー情報量Fを用いて、フィッシャー情報量の大きいパラメータについては大きく変化させないような学習を行う。そのような方法としては、例えば学習において最小化するべき関数に対し、ペナルティ項として、過去に学習したパラメータθ*_iとの二乗誤差に対し、フィッシャー情報量F_iを乗じたものを、全パラメータについて評価した値を加えるといった方法がある。
例えば、異常検知アルゴリズムとしてオートエンコーダ(非特許文献2)を用いる場合、学習において最小化するべき関数は、入力層x_1,x_2,…,x_Nと出力層x'_1, x'_2,…,x'_Nの平均二乗誤差L(x) =(1/N) Σ_i=1^N (x_i - x'_i)^2として与えられるが、フィッシャー情報量を用いた再学習は、最小化問題として
min_θ E(x, θ) = L(x) +(λ/2) * Σ_i=1^I F_i (θ_i -θ*_i )^2
のように与えられる。ここで、xは再学習で用いる学習データ、Iは全パラメータ数、λはペナルティ項に対する係数であり、λが大きいほどペナルティ項が強く効いて、再学習によるパラメータの変化が小さくなる。また、再学習で用いる学習データとしては、過去の学習データと過去に監視したテストデータの双方を用いてもよいが、過去の学習データを用いた学習に関する情報は、各パラメータの重要度としてFに集約されているため、再学習には過去に監視したテストデータのみを用いてもよい。再学習により新たなパラメータθ_newが得られたら、再学習部105は新たなパラメータについてのフィッシャー情報量を、再学習で用いた学習データxによって計算し、記憶部102に保持する。
<実施例4>
実施例4では、実施例1又は実施例3において、再学習部105が再学習を行う際に、過去に正常と判断されたテストデータを用いて再学習を行うことで、正常なデータの時間的なトレンドに追従した異常検知を実施する。ここでは、異常検知アルゴリズムとして、正常なデータのみを用いて学習を行うオートエンコーダ(非特許文献2)を用いた場合の例を示す。
実施例4におけるモデル学習装置100の動作手順であるフローチャートを図3に示す。実施例4では、まず、学習データX_train={x_train_1, x_train_2, …, x_train_T}、及び、その学習データによって学習されたモデルが入力部101より入力され、記憶部102に保存される(S1)。ここで、モデルはパラメータの集合θで表現することができ、当該集合は、オートエンコーダの各層の重み及びバイアスといったパラメータの集合である。
次にテストフェーズにおいては、入力部101より監視対象のテストデータx_test、異常度に対する閾値γが入力される(S2)。検知部103は、記憶部102に保存されたモデルパラメータθと、入力されたテストデータx_testを用いて、テストデータの異常度をMSE(非特許文献2)として計算する(S3)。
検知部103は、計算された異常度と閾値γを比較し(S4)、異常度が閾値以上であった場合には、検知結果を「異常」とし、x_testを異常データとして記憶部102に保存する(S5)。一方で、異常度が閾値未満であった場合には、検知結果を「正常」とし、x_testを正常データとして記憶部102に保存する(S6)。
再学習部105は、記憶部102に正常データとして保存されたx_testが予め定めた量Tだけ蓄積されたら(S7のYes)、x_test_1, x_test_2,…,x_test_T及び過去の学習データX_trainを用いて、モデルのパラメータθの再学習を行う(S8)。再学習の方法としては,例えばx_test_1, x_test_2,…,x_test_T及びX_trainの集合を新たな学習データとみなし確率的勾配降下法(Bottou, Leon. "Large-scale machine learning with stochastic gradient descent." Proceedings of COMPSTAT'2010. Physica-Verlag HD, 2010. 177-186.参照)を用いる方法や、最小化すべき関数(ここではMSEとして与えられる異常度)を最小化するような最急降下法などがある。
また、新たな学習データを用いる際に、x_test_1, x_test_2,…,x_test_Tを複製し学習データ内における量を増やすことで、x_test_1, x_test_2,…,x_test_Tが正常であるということを強く学習させるということを行ってもよい。また、実施例3のようにパラメータの重要度も考慮した方法を用いてもよい。再学習によって得られたパラメータθ_newを新たなモデルパラメータとして記憶部102に保存する。
<実施例5>
実施例5では、実施例1又は実施例3において、正常なデータx_testを異常として誤って判断した過検知が発生した際に、x_testが正常であるということを再学習させる。
実施例5のフローチャートを図4に示す。図4に示す例において、S1~S6の動作は、実施例4(図3)のS1~S6と同じである。
実施例5では、検知部103がx_testを正常あるいは異常として検知した場合に、S11において、過去に入力された各データが正常であったか否かを示す正解ラベルが正解ラベル生成部104により生成される。正解ラベルの生成方法は特定の方法に限られないが、例えば、以下の方法がある。
例えば、正解ラベルの生成方法として、監視対象から生成されるログを元に、データ取得時が通常動作中の場合「正常」とし、予め定義した特殊な動作を行っていた場合「異常」とする方法がある。その他にも、並行して動作している他の監視システムによる判断結果を入力とする方法や、システムを利用中のユーザからの異常申告を元に生成する方法、システムオペレータの目視による判断を入力する方法などもある。
S12において、再学習部105は、異常と判断したデータ(x_test)と正解ラベルとを比較し、比較した結果、判断が正しかった場合には再学習を行わないが、判断が誤っていた場合、すなわちx_testは正解ラベルでは「正常」となっていたにも関わらず、異常検知においては異常と判断していた場合は、再学習部105は、x_testが正常である旨をモデルに再学習させ、新たなパラメータθ_newを記憶部102に保存する(S13)。
ここでは、例えば、実施例1と同様にオートエンコーダを用いた異常検知の場合を想定すると、再学習部105は、モデルf(x_test, θ)で与えられる異常度が、閾値γ未満になるような再学習を行う。再学習の方法としては、実施例1のように、x_testとX_trainを用いる方法や、実施例3のようにパラメータの重要度も考慮した再学習をf(x_test, θ)が閾値γ以下になるまで繰り返すといった方法がある。
<実施例6>
実施例6では、実施例1又は実施例3において、異常なデータx_testを正常として誤って判断した非検知が発生した際に、x_testが異常であるということを再学習させる。実施例6のフローチャートを図5に示す。
図5において、S1~S11は、実施例5(図4)におけるS1~S11と同様である。x_testの検知結果を「正常」として検知した結果が正解ラベル生成部104により生成された正解ラベルでは「異常」であった場合(S21のYes)、再学習部105は、モデルf(x_test, θ)で与えられる異常度が、閾値γ以上になるような再学習を行う。再学習の方法としては、実施例5の再学習を、アルゴリズムの学習における評価関数の正負の値を逆転させることで容易に実現できる。例えば、実施例3で示したオートエンコーダをアルゴリズムに用いる場合、再学習は-L(x) =-(1/N) Σ_i=1^N (x_i - x'_i)^2を最小化する問題を解くことで実施できる。
<実施例7>
実施例7では、実施例2又は実施例3において、過去に分類を行ったテストデータについてその結果が正しいとみなせる場合に、分類結果をラベルとみなした過去のテストデータを新たな学習データとしてモデルの再学習を行うことで、データの時間的なトレンドに追従した異常検知を実施する。クラスの分類を行うモデルとしては、例えば、出力層がクラスの数だけノードを持つ多層ニューラルネットワークなどがあるが、これに限られるわけではない。
実施例7のフローチャートを図6に示す。まず、学習データX_train={x_train_1, x_train_2,…,x_train_T}、それぞれが属するクラスのラベルであるラベルデータY_train={y_train_1, y_train_2,…,y_train_T}、及び、その学習データによって学習されたモデルがパラメータθとして入力され、記憶部102に保存される(S31)。
テストフェーズにおいては、入力部101より監視対象のテストデータx_testが入力され(S32)、検知部103は記憶部102に保存されたモデルパラメータθと、入力されたテストデータx_testを用いて、テストデータが属するクラスを推定し、テストデータと共に記憶部102に保持する(S33)。
検知部103は、推定したクラスと、予め与えられた各クラスの「正常」、「異常」に関する情報に基づき、テストデータが正常か異常かの判断を行い(S34)、判断結果を記憶部102に保存する(S35、S36)。
再学習部105は、記憶部102に保持されたx_test及び推定されたクラスy_testの組が予め定めた量Tだけ蓄積されたら(S37のYes)、x_test_1, x_test_2,…,x_test_Tと、推定されたクラスy_test_1, y_test_2,…,y_test_T、及びX_train, Y_trainを用いて、モデルのパラメータθの再学習を行う(S38)。又は、実施例3のようにパラメータの重要度も考慮した方法を用いてもよい。なお、実施例4では正常データのみを用いて学習を行うため、再学習には正常と判断されたデータのみが保持されたが、実施例7ではラベル情報を用いた教師あり学習を行うため、異常と判断されたデータについても記憶部102に保持され再学習に用いられる。
<実施例8>
実施例8では、実施例2又は実施例3において、検知部103が行ったクラス分類が誤っていると判断された場合に、x_testを正しくクラス分類するような新しいパラメータθ_newの再学習を行う。実施例8の基本的な処理の流れは実施例7(図6)と同様であるが、下記に説明するように、正解ラベルと判断結果との比較に基づく再学習実行判断を行う点が実施例7と異なる。
実施例8では、実施例7(図6)のS33と同様に、検知部103がx_testについてクラスの分類を推定するが、その後、過去に入力された各データが属するクラスに関する正解ラベルが正解ラベル生成部104により生成される。
正解ラベルの生成方法としては、例えば、監視対象から生成されるログを元に、予め定義した、ログと各クラスの対応関係に基づいて、各データの取得時のログからそのデータが属するクラスの分類を行う方法がある。その他にも、並行して動作している他の分類システムによる分類結果を入力とする方法や、システムを利用中のユーザからの申告を元に生成する方法(例えば利用品質を「高」「中」「低」で分類し、ユーザからは品質の分類結果をフィードバックしてもらう)、システムオペレータの目視による判断を入力する方法などもある。
再学習部105は、検知部103による判断結果と正解ラベルとを比較し、比較した結果、判断が正しかった場合には再学習を行わず、判断が正しくなかった場合、すなわち正解ラベルで与えられたクラスと推定したクラスとが異なっていた場合には、再学習部105はx_testの属するクラスが、入力された実際のクラスy*_testであるということをモデルに再学習させる。再学習の方法としては,実施例2のように、x_test,y*_testとX_train,Y_trainを用いる方法や、実施例3のようにパラメータの重要度も考慮した再学習を繰り返すといった方法がある。
<実施例9>
実施例9では、実施例1~8の再学習について、再学習した結果得られたパラメータを採用するか否かについてを、別途用意したバリデーションデータに対する検知精度に基づいて判断する。実施例9は、実施例1~8のいずれにも適用できるが、一例として、実施例4の再学習で得られたパラメータについて、採否を判定するフローチャートを図7に示す。なお、バリデーションデータは既に記憶部102に格納されているものとする。
図7におけるS1~S8の処理は、実施例4(図3)でのS1~S8の処理と同じである。
再学習部105により新しいパラメータθ_newを得た後に、パラメータ採否判定部106は、記憶部102に保持されたバリデーションデータX_valid = {x_valid_1, x_valid_2,…,x_valid_M}と、それらのデータのラベルY_valid = {y_valid_1, y_valid_2,…,y_valid_M}を用いて、古いパラメータθを用いたモデルと、新しいパラメータθ_newを用いたモデルのそれぞれの精度を評価する(S41)。
ここで、ラベルについては、実施例4~6では「正常」「異常」の2種で与えられ、実施例7~8では、分類対象のクラスが与えられる。また、精度については、例えば横軸にFalse Positive Rate、縦軸にTrue Positive Rateを取った場合に引かれる曲線の下側の面積であるArea Under Receiver Operating Characteristc(AUROC)などを使用することができる(池田,石橋,中野,渡辺,川原,"オートエンコーダを用いた異常検知におけるスパース最適化を用いた要因推定手法,"信学会IN研究会信学技報, vol. 117, no. 89, IN2017-18, pp. 61-66, Jun. 2017.参照)。
図7の例では、このAUROCを使用している。AUROCのように精度が良いほど高い値を示すメトリックを用いる場合、古いパラメータを用いたモデルによる精度に比べて、新しいパラメータを用いたモデルによる精度がε以上向上したら(S42のYes)、新しいパラメータθ_newをそれ以降のモデルのパラメータとして採用する(S43)。ここで、εが正の場合には、ある程度以上精度が向上しない場合には新たなパラメータを採用しないことを示しており、εが負の場合には、精度の低下があっても新たなパラメータを積極的に採用することを示している。
<実施例10>
実施例10では、実施例1~8において再学習部105が再学習を行う場合に用いるテストデータx_testについて、過去の学習データX_trainの部分集合と近すぎるデータや遠すぎるデータを再学習対象から取り除く事で、過学習や不適切な学習を防ぐ。例えば、実施例4で正常と判断されたテストデータを用いた再学習を行う場合、過去の学習データX_train={x_train_1, x_train_2,…,x_train_T}に近いテストデータは、過去の学習データとの違いが小さく、再学習に用いた場合に、過去の学習データにフィットしすぎたモデルとなる過学習を引き起こす可能性がある。
そのため、実施例10では、パラメータ採否判断部106が、X_trainとテストデータの距離d(x_test, X_train)を計算し、距離が閾値以下であるテストデータは再学習に用いないこととする。なお、実施例10におけるこの判断は、再学習部105が行うこととしてもよい。これにより、過学習を防ぐことが期待される。なお、距離関数d(x_test, X_train)については、例えばX_trainの重心x*_trainとx_testのユークリッド距離が考えられるが,単純なユークリッド距離だけではなく、t-SNE(Maaten, Laurens van der, and Geoffrey Hinton. "Visualizing data using t-SNE." Journal of Machine Learning Research 9.Nov (2008): 2579-2605.参照)等を用いて、x_test, x*_trainをそれぞれ低次元空間に写像した上での、写像先の空間上でのユークリッド距離を用いるなどの方法を用いてもよい。
また、データxについて異常検知モデルにより計算される異常度をG(x)とした場合に,G(x_train_i),i=1,…,Tの分布と、G(x_test)との距離(例えばG(x_test)からG(x_train_i),i=1,…,Tの平均を引いた値)をd(x_test, X_train)とみなしてもよい。
また、実施例5で異常と過検知された正常なテストデータを用いて再学習する場合、x_testがX_trainから遠すぎると、正常であるとは言え、再学習によりモデルの傾向が変化しすぎてしまい、再学習による精度の低下が懸念される。そのため、X_trainとの距離が閾値以上であるテストデータは再学習に用いないことで、再学習による精度の低下を防ぐことが期待される。また、過検知の再学習については、X_trainからの距離ではなく、過去に過検知されたデータ全体からの距離を指標とすることで、過去に発生した過検知に近いものについては再学習に採用することとしてもよい。
多クラス分類を行うモデルの場合、例えば実施例7で正しくクラス分類されたテストデータを用いた再学習を行う場合は、例えばあるクラスcとして分類されたテストデータx_testを再学習に用いるかどうかについて判断する場合、学習データにおいてラベルがy_train=cとなるような学習データ全体の重心との距離を元に判断を行うことが考えられる。実施例8でも同様に、クラスcとして正しく再学習させたいx_testを再学習させるかどうかについては、y_train=cとなるような学習データ全体との重心の距離が閾値以下である場合にのみ行うといった方法を用いることができる。
<実施例11>
実施例11では、実施例1~10の学習に用いるモデルとして、ニューラルネットワークを用いる。実施例1及びそれのバリエーションとなる実施例において、教師なし学習として異常検知を行うニューラルネットワークとしては、例えば、オートエンコーダ(非特許文献2)がある。実施例2及びそれのバリエーションとなる実施例において、教師あり学習として異常検知を行うニューラルネットワークとしては、例えばManikopoulos, Constantine, and Symeon Papavassiliou. "Network intrusion and fault detection: a statistical anomaly approach." IEEE Communications Magazine 40.10 (2002): 76-82.に記載されたニューラルネットワークがある。
(効果について)
実施例を用いて説明した本発明に係る技術により、入力データの正常/異常の判断についてモデルの学習に基づいて行う異常検知アルゴリズムにおいて、データのトレンドにモデルを追従させたり、誤った判断を繰り返さないようにさせたりするためのモデルの再学習が可能となる。
実際に実施例4及び実施例5を用いて、正常なデータのトレンドを再学習させた結果について、ネットワークの代表的なベンチマークであるNSL-KDD(Tavallaee, Mahbod, et al. "A detailed analysis of the KDD CUP 99 data set." Computational Intelligence for Security and Defense Applications, 2009. CISDA 2009. IEEE Symposium on. IEEE, 2009.)を用いて評価した結果について以下に説明する。
ベンチマークは正常な通信に関するデータと異常な通信に関するデータからなるが、本評価では、データから正常な通信のみを抽出した67344データについて、送り側の送信量を表す特徴量である「src_bytes」で昇順にソートし、前半10000データを学習データ、後半57344データをテストデータとした。そのため、テストデータにおいては、src_bytesが学習データに比べて上昇するトレンドを持つことになる。学習アルゴリズムとしては、正常なデータだけで学習が可能なオートエンコーダ(非特許文献2)を用いた。まず、再学習を行わなかった場合にオートエンコーダが出力した異常度のグラフを図8に示す。ここで、横軸はテストデータのID、縦軸はオートエンコーダの異常度を示しており、実線は学習したモデルが出力した異常度、点線は閾値を表している。なお、閾値については、学習したモデルに対して学習データを入力した時の異常度の分布の平均+5×標準偏差によって与えている。
図8に示すように、テストデータのIDが20000手前から、異常度は閾値を超えて上昇し続けている。これは、src_bytesが上昇し続けているためであると考えられる。
次に、実施例4を用いて、正常と判断されたデータを用いて定期的に再学習することにより、データのトレンドに追従させた結果を図9に示す。ここでは、テストデータをID 10000から順番に入力し、異常度が閾値を下回った場合には正常データとして保存し、保存したデータが500だけ溜まったら、保存したデータを過去の学習データに追加し、再学習を行っている。なお、学習データ量が40000を超えた場合、新しい学習データの追加時には古いデータを削除している。また、学習データを更新した際には、その学習データを用いて閾値についても更新を行っている。再学習を行わない場合(図8)ではID 20000以降は全て閾値を上回っており、異常として過検知をしていたが、図9に示すように、再学習を行うことで、src_bytesの上昇トレンドを再学習し、正しく正常と判断できたデータが増えている。
更に、実施例4と実施例5を組み合わせることで、モデルをデータのトレンドに追従させながら、過検知が発生した際に同様の過検知が発生しないような再学習を行った結果を図10に示す。ここで、実施例5での再学習方法については、実施例3のように過去の学習データを用いて計算したフィッシャー情報量を重みとしたペナルティ項を加える方法を用いており、過検知されたデータのみを用いた再学習を行っている。トレンドの学習を行っても頻繁に過検知が発生していた図9の場合に比べて、図10では、大幅に過検知を削減できている点が確認できる。発生した過検知の数を比較した結果を図11に示す。図11より、トレンドの再学習だけでも大幅に過検知を削減できるが、実施例5の過検知再学習を更に組み合わせることにより、過検知数は元の過検知数の1%未満にまで抑えることができる。
(実施例のまとめ)
以上、説明したように、実施例1においては、数値ベクトルで表される監視データxの異常度をモデルf(x, θ)により計算するような異常検知について、予め正常であると分かっている学習データx_trainを用いてモデルf(x, θ)のパラメータθの学習が予めなされる。モデル学習装置100は、監視するテストデータx_testについてf(x_test, θ)の出力に基づいて異常の有無を判断するとともに、学習データや、過去に監視したテストデータ及びモデルによる異常有無の判断結果を記憶部102に蓄積しておく。再学習部105は、各データの異常の有無の判断結果や、別途外部から与えられるそのデータが異常であったか否かを示す正解ラベルに基づいて、モデルf(x, θ)の再学習を行って、新しいパラメータθ_newを得る。
実施例2において、モデル学習装置100は、数値ベクトルで表される監視データxについて多クラス分類を行った結果に基づき正常か異常の判断を行う異常検知を実施する。実施例2では、予め属するクラスがラベルy_trainとして与えられている学習データx_trainを用いてモデルf(x, θ)のパラメータθの学習が行われる。モデル学習装置100は、監視するテストデータx_testについてf(x_test, θ)の出力に基づいてx_testが属するクラスを判別し、判別されたクラスに基づき異常の有無を判断するとともに、学習データや、過去に監視したテストデータ及びモデルによる分類結果を記憶部102に蓄積しておく。再学習部105は、各データの分類結果や、別途外部から与えられるそのデータが属するクラスを示す正解ラベルに基づいて、モデルf(x, θ)の再学習にそれらのデータを用いることで、新しいパラメータθ_newを得る。
実施例3では、実施例1又は実施例2において、モデル学習装置100は、記憶部102に、過去に学習したパラメータの、学習データに対する重要度Fを保存しており、再学習部105による再学習の際には、重要度Fが大きいパラメータをなるべく変化させないようにしながら新しいパラメータθ_newを学習する。
実施例4では、実施例1又は実施例3において、モデル学習装置100は、監視データが時間的なトレンドを持つとした時に、正常と判断されたテストデータがある一定量、記憶部102に蓄積されたら、それらのデータや過去の学習データを用いてモデルf(x, θ)を再学習し、新しいパラメータθ_newを学習することで、データが持つ時間的なトレンドに追従させる。
実施例5では、実施例1又は実施例3において、モデル学習装置100は、正常なデータx_testについて異常と判断するような過検知が発生した場合に、過検知されたデータx_testを入力した時に、モデルが正しく正常と判断するような新しいパラメータθ_newを学習することで、同様の過検知を防ぐ。
実施例6では、実施例1又は実施例3において、モデル学習装置100は、異常なデータx_testについて正常と判断するような非検知が発生した場合に、非検知されたデータx_testを入力した時に、モデルが正しく異常と判断するような新しいパラメータθ_newを学習することで、同様の非検知を防ぐ。
実施例7では、実施例2又は実施例3において、モデル学習装置100は、例えば監視データが時間的なトレンドを持つとした時に、正しくクラス分類されたテストデータがある一定量、記憶部102に蓄積されたら、再学習部105において、そのデータと分類されたクラスや、過去の学習データとラベルを用いてモデルf(x, θ)を再学習し、新しいパラメータθ_newを学習することで、データが持つ時間的なトレンドに追従させる。
実施例8では、実施例2又は実施例3において、モデル学習装置100は、テストデータx_testについて誤ったクラス分類を行ってしまった場合に、x_testを入力した時に、モデルが正しいクラスへの分類を行うような新しいパラメータθ_newを学習することで、同様の誤分類を防ぐ。
実施例9では、実施例1~8において、予め正常か異常、又はクラスの分類について正解が分かっているバリデーションデータが存在するとし、当該バリデーションデータが記憶部102に保持される。再学習部105により新しいパラメータθ_newを得た後に、パラメータ採否判定部106は、θ_newを用いたモデルによるバリデーションデータの分類精度が、θを用いたモデルによる分類精度よりも予め定めた閾値ε以上向上しない場合には、パラメータの更新を行わず、θをモデルのパラメータとして使い続けるようにする。
実施例10では、実施例1~8において、過去のx_testを用いて再学習を行う際に、パラメータ採否判定部106は、予め定めた関数で定義される、x_testと過去の学習データX_train={x_train_1,…, x_train_T}との距離を表す関数d(x_test, X_train)が、予め定めた条件を満たす場合にのみパラメータの更新を行うことで、過去の学習データと傾向が近すぎるデータで再学習を行うことによる過学習や、極端に傾向の異なるデータの再学習による精度の劣化を防ぐこととする。
実施例11では、実施例1~10において、モデル学習装置100は、再学習部105において、ニューラルネットワークを用いた学習を行う。
上述したとおり、本発明の実施の形態により、学習データを用いて学習されたモデルのパラメータと、当該学習データとを格納する記憶部と、前記モデルを用いて、テストデータの異常の有無を判断し、判断結果及び当該テストデータを前記記憶部に格納する検知部と、前記判断結果、前記テストデータ、及び前記学習データを用いて、前記モデルの再学習を行う再学習部とを備えることを特徴とするモデル学習装置が提供される。
前記検知部は、前記モデルを用いて、前記テストデータのクラスを判別し、判別されたクラスに基づき当該テストデータの異常の有無を判断することとしてもよい。
前記再学習部は、前記パラメータの前記学習データに対する重要度を用い、重要度の大きさに応じて、再学習におけるパラメータの変化量を制限することとしてもよい。
前記再学習部は、前記テストデータの異常の有無に関する正解を用いることにより、誤った判断がなされたテストデータに対して正しい判断がなされるように、前記モデルの再学習を行うこととしてもよい。
前記モデル学習装置は、前記再学習部により、前記モデルの新たなパラメータが得られた後に、当該新たなパラメータを用いたバリデーションデータに対する異常検知の精度に基づいて、当該新たなパラメータを、前記検知部で用いる新たなパラメータとして採用するか否かを判定するパラメータ採否判定部を更に備えることとしてもよい。
前記再学習部は、前記テストデータと前記学習データとの距離に基づいて、当該テストデータを前記再学習に使用するか否かを判定することとしてもよい。
以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
本特許出願は2018年1月9日に出願した日本国特許出願第2018-001485号に基づきその優先権を主張するものであり、日本国特許出願第2018-001485号の全内容を本願に援用する。
100 モデル学習装置
101 入力部
102 記憶部
103 検知部
104 正解ラベル生成部
105 再学習部
106 パラメータ採否判定部
150 ドライブ装置
151 記録媒体
152 補助記憶装置
153 メモリ装置
154 CPU
155 インターフェース装置
156 表示装置
157 入力装置

Claims (6)

  1. 学習データを用いて学習されたモデルのパラメータと、当該学習データとを格納する記憶部と、
    前記モデルを用いて、テストデータの異常の有無を判断し、判断結果及び当該テストデータを前記記憶部に格納する検知部と、
    前記判断結果、前記テストデータ、及び前記学習データを用いて、前記モデルの再学習を行う再学習部と、を備え、
    前記再学習部は、前記パラメータの前記学習データに対する重要度を用い、重要度の大きさに応じて、再学習におけるパラメータの変化量を制限し、
    前記再学習部は、異常であると過検知された正常なテストデータについて、当該テストデータと前記学習データとの距離が閾値以上である場合に、当該テストデータを前記再学習に使用しないと判定する
    ことを特徴とするモデル学習装置。
  2. 前記検知部は、前記モデルを用いて、前記テストデータのクラスを判別し、判別されたクラスに基づき当該テストデータの異常の有無を判断する
    ことを特徴とする請求項1に記載のモデル学習装置。
  3. 前記再学習部は、前記テストデータの異常の有無に関する正解を用いることにより、誤った判断がなされたテストデータに対して正しい判断がなされるように、前記モデルの再学習を行う
    ことを特徴とする請求項1又は2に記載のモデル学習装置。
  4. 前記再学習部により、前記モデルの新たなパラメータが得られた後に、当該新たなパラメータを用いたバリデーションデータに対する異常検知の精度に基づいて、当該新たなパラメータを、前記検知部で用いる新たなパラメータとして採用するか否かを判定するパラメータ採否判定部
    を更に備えることを特徴とする請求項1ないし3のうちいずれか1項に記載のモデル学習装置。
  5. 学習データを用いて学習されたモデルのパラメータと、当該学習データとを格納する記憶部を備えるモデル学習装置が実行するモデル学習方法であって、
    前記モデルを用いて、テストデータの異常の有無を判断し、判断結果及び当該テストデータを前記記憶部に格納する検知ステップと、
    前記判断結果、前記テストデータ、及び前記学習データを用いて、前記モデルの再学習を行う再学習ステップと、を備え、
    前記再学習ステップにおいて、前記パラメータの前記学習データに対する重要度を用い、重要度の大きさに応じて、再学習におけるパラメータの変化量を制限するモデル学習方法であり
    前記再学習ステップにおいて、異常であると過検知された正常なテストデータについて、当該テストデータと前記学習データとの距離が閾値以上である場合に、当該テストデータを前記再学習に使用しないと判定する
    ことを特徴とするモデル学習方法。
  6. コンピュータを、請求項1ないしのうちいずれか1項に記載のモデル学習装置における各部として機能させるためのプログラム。
JP2019564307A 2018-01-09 2018-10-26 モデル学習装置、モデル学習方法、及びプログラム Active JP7044117B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018001485 2018-01-09
JP2018001485 2018-01-09
PCT/JP2018/039953 WO2019138655A1 (ja) 2018-01-09 2018-10-26 モデル学習装置、モデル学習方法、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2019138655A1 JPWO2019138655A1 (ja) 2021-01-14
JP7044117B2 true JP7044117B2 (ja) 2022-03-30

Family

ID=67218962

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019564307A Active JP7044117B2 (ja) 2018-01-09 2018-10-26 モデル学習装置、モデル学習方法、及びプログラム

Country Status (3)

Country Link
US (1) US20200334578A1 (ja)
JP (1) JP7044117B2 (ja)
WO (1) WO2019138655A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7234071B2 (ja) * 2019-08-02 2023-03-07 東北電力株式会社 情報処理装置、情報処理方法、およびプログラム
WO2021075288A1 (ja) * 2019-10-15 2021-04-22 ソニー株式会社 情報処理装置、情報処理方法
DE112021003974T5 (de) * 2020-07-27 2023-05-25 Fanuc Corporation Prüfgerät
KR20220019203A (ko) * 2020-08-07 2022-02-16 삼성디스플레이 주식회사 자동 판정 장치 및 자동 판정 방법
EP3955076A1 (en) * 2020-08-10 2022-02-16 Siemens Aktiengesellschaft System, device and method of detecting abnormal datapoints
AU2020468530B2 (en) 2020-09-18 2024-02-01 Nippon Telegraph And Telephone Corporation Assessment device, assessment method, and assessment program
CN111931175B (zh) * 2020-09-23 2020-12-25 四川大学 一种基于小样本学习的工业控制系统入侵检测方法
JP2022140951A (ja) * 2021-03-15 2022-09-29 オムロン株式会社 品質評価装置及び検査管理システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001236337A (ja) 2000-02-22 2001-08-31 Fuji Electric Co Ltd ニューラルネットワークによる予測装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140114442A1 (en) * 2012-10-22 2014-04-24 The Boeing Company Real time control system management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001236337A (ja) 2000-02-22 2001-08-31 Fuji Electric Co Ltd ニューラルネットワークによる予測装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
@yu4u,ニューラルネットワークが持つ欠陥「破滅的忘却」を回避するアルゴリズムをDeepMindが開発した論文を読んだ,2017年04月24日,p.1-7,https://qiita.com/yu4u/items/8b1e41fc04460b89cac2
中野雄介,池田泰弘,渡辺敬志郎,石橋圭介,川原亮一,オートエンコーダによるネットワーク異常検知,電子情報通信学会2017年総合大会講演論文集 通信2,日本,一般社団法人電子情報通信学会,2017年03月07日,p.126,ISSN1349-1369
佐藤佳州,高橋大介,対局に基づいた教師データの重要度の学習,情報処理学会 論文誌(ジャーナル),日本,情報処理学会,2014年11月15日, Vol.55,No.11,pp.2399-2409,ISSN1882-7764
植田良一,角井健太郎,爲岡啓,松下誠,井上克郎,Webサービスシステムの応答性能劣化診断のための学習データ自動選定方法,電子情報通信学会論文誌D,日本,電子情報通信学会,2016年01月01日,VolumeJ99-D,No.1,pp.100-108,ISSN1881-0225

Also Published As

Publication number Publication date
US20200334578A1 (en) 2020-10-22
JPWO2019138655A1 (ja) 2021-01-14
WO2019138655A1 (ja) 2019-07-18

Similar Documents

Publication Publication Date Title
JP7044117B2 (ja) モデル学習装置、モデル学習方法、及びプログラム
Chen et al. Unsupervised anomaly detection for intricate kpis via adversarial training of vae
CN110691100B (zh) 基于深度学习的分层网络攻击识别与未知攻击检测方法
JP7223839B2 (ja) 異常検出および/または予知保全のためのコンピュータ実装方法、コンピュータプログラム製品およびシステム
CN108023876B (zh) 基于可持续性集成学习的入侵检测方法及入侵检测系统
Yu et al. Policy-based reinforcement learning for time series anomaly detection
WO2020159706A1 (en) Methods and systems for fault detection and identification
Kuang et al. An anomaly intrusion detection method using the CSI-KNN algorithm
Gopali et al. A comparison of tcn and lstm models in detecting anomalies in time series data
JP2004309998A (ja) 確率分布推定装置および異常行動検出装置,ならびにその確率分布推定方法および異常行動検出方法
JPWO2009090939A1 (ja) ネットワーク異常検出装置及び方法
WO2018211721A1 (ja) 異常情報推定装置、異常情報推定方法及びプログラム
Ippoliti et al. An adaptive growing hierarchical self organizing map for network intrusion detection
Turchin et al. Tuning complex event processing rules using the prediction-correction paradigm
Al-mamory et al. Evaluation of different data mining algorithms with kdd cup 99 data set
Gupta et al. A supervised deep learning framework for proactive anomaly detection in cloud workloads
Nguyen et al. Nested one-class support vector machines for network intrusion detection
Bebeshko et al. Use of Neural Networks for Predicting Cyberattacks.
Gao et al. Consensus extraction from heterogeneous detectors to improve performance over network traffic anomaly detection
Gopali et al. A comparative study of detecting anomalies in time series data using LSTM and TCN models
Basterrech et al. Tracking changes using Kullback-Leibler divergence for the continual learning
Lust et al. A survey on assessing the generalization envelope of deep neural networks: predictive uncertainty, out-of-distribution and adversarial samples
CN110770753B (zh) 高维数据实时分析的装置和方法
CN115330362A (zh) 一种工程进度数据处理方法及系统
Ghosh et al. Real time failure prediction of load balancers and firewalls

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220124

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: 20220215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220228

R150 Certificate of patent or registration of utility model

Ref document number: 7044117

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150