Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7306445B2 - 異常検知装置、異常検知方法、及びプログラム - Google Patents
[go: Go Back, main page]

JP7306445B2 - 異常検知装置、異常検知方法、及びプログラム - Google Patents

異常検知装置、異常検知方法、及びプログラム Download PDF

Info

Publication number
JP7306445B2
JP7306445B2 JP2021501252A JP2021501252A JP7306445B2 JP 7306445 B2 JP7306445 B2 JP 7306445B2 JP 2021501252 A JP2021501252 A JP 2021501252A JP 2021501252 A JP2021501252 A JP 2021501252A JP 7306445 B2 JP7306445 B2 JP 7306445B2
Authority
JP
Japan
Prior art keywords
node
score
data
tree structure
binary tree
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
JP2021501252A
Other languages
English (en)
Other versions
JPWO2020170420A1 (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPWO2020170420A1 publication Critical patent/JPWO2020170420A1/ja
Application granted granted Critical
Publication of JP7306445B2 publication Critical patent/JP7306445B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Biology (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Signal Processing (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は異常検知装置、異常検知方法、及びコンピュータ可読媒体に関し、特に二分木構造を用いてデータの異常を検知することが可能な異常検知装置、異常検知方法、及びコンピュータ可読媒体に関する。
近年の情報化社会の発達により、サイバーセキュリティの重要性が高まってきている。例えば、サイバーセキュリティの分野では、データの異常を検知するために、通常とは異なるデータ(異常値や外れ値)を発見することが重要である。このような外れ値を検知するためのアルゴリズムの一つとして、Isolation Forestが用いられている。
特許文献1には、木構造の分類モデルを用いた判定について、判定結果を評価するための情報を提供することが可能な分類装置が開示されている。特許文献2には、時系列データを複数のクラスに識別するのに適したモデルの学習を行うことが可能な学習装置に関する技術が開示されている。
特開2018-045516号公報 特開2016-200971号公報
Isolation Forestアルゴリズムは、複数のデータを用いて二分木構造(分離木構造)を作成し、この二分木構造を用いて複数のデータを分割していくアルゴリズムである。Isolation Forestアルゴリズムでは、根ノードから葉ノードに到達するまでのパス長をスコアとしており、このスコアが小さいほど(深さが浅いほど)、外れ値(異常データ)である可能性が高いと判断している。
Isolation Forestアルゴリズムは、データの分布に偏りがあると期待した結果が得られない場合がある。すなわち、Isolation Forestアルゴリズムでは、分割するデータの特徴(パラメータ)と閾値とをランダムに決定して二分木構造を作成している。このため、多数派のデータ群と少数派のデータ群とを備える偏りのあるデータの場合は、少数派のデータ群に含まれるデータを外れ値と判断する傾向があり、この結果、期待した通りにデータの異常を検知することができない場合がある。
しかしながら、ユーザによっては、このような少数派のデータ群に含まれるデータを正常値として扱いたい場合がある。したがって、ユーザの意図を反映させることが可能な異常検知装置が必要とされている。
上記課題に鑑み本発明の目的は、ユーザの意図を反映させることが可能な異常検知装置、異常検知方法、及びコンピュータ可読媒体を提供することである。
本発明の一態様にかかる異常検知装置は、複数のデータを用いて二分木構造を作成する二分木構造作成部と、前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出するスコア算出部と、前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する学習部と、を備える。
本発明の一態様にかかる異常検知方法は、複数のデータを用いて二分木構造を作成し、前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出し、前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する。
本発明の一態様にかかるコンピュータ可読媒体は、複数のデータを用いて二分木構造を作成する処理と、前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出する処理と、前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する処理と、をコンピュータに実行させるためのプログラムが格納された非一時的なコンピュータ可読媒体である。
本発明により、ユーザの意図を反映させることが可能な異常検知装置、異常検知方法、及びコンピュータ可読媒体を提供することができる。
実施の形態にかかる異常検知装置を説明するためのブロック図である。 実施の形態にかかる異常検知装置の具体的な構成を説明するためのブロック図である。 実施の形態にかかる異常検知装置の動作を説明するためのフローチャートである。 プロキシログデータの一例を示す表である。 プロキシログデータを特徴データに変換した一例を示す表である。 二分木構造の一例を示す図である。 ノード特徴の一例を説明するための図である。 ノード特徴の一例を説明するための図である。 ノード特徴の他の例を説明するための図である。 機械学習の一例を説明するための図である。 ノード評価モデルを学習する際の動作を説明するための図である。 データの分布に偏りがある場合を示す図である。 実施の形態にかかる異常検知装置の動作を説明するためのフローチャートである。 本発明にかかる異常検知処理用プログラムを実行するためのコンピュータを示すブロック図である。
まず、本発明の骨子について説明する。図1は、実施の形態にかかる異常検知装置を説明するためのブロック図であり、本発明の骨子を説明するための図である。本実施の形態にかかる異常検知装置1は、二分木構造作成部11、スコア算出部13、及び学習部14を備える。二分木構造作成部11は、入力された複数のデータを用いて二分木構造を作成する。スコア算出部13は、二分木構造作成部11で作成された二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出する。学習部14は、二分木構造の各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する。
本実施の形態にかかる異常検知装置1では、各々のノードの評価値を計算するノード評価モデルを学習部14において学習している。そして、この学習結果を用いて各々のノードのノード評価値を決定している。したがって、ユーザの意図を反映させることが可能な異常検知装置、異常検知方法、及びコンピュータ可読媒体を提供することができる。以下、本発明の実施の形態について詳細に説明する。
図2は、本実施の形態にかかる異常検知装置の具体的な構成を説明するためのブロック図である。図2に示すように、本実施の形態にかかる異常検知装置1は、二分木構造作成部11、ノード特徴抽出部12、スコア算出部13、及び学習部14を備える。また、異常検知装置1は、データセット格納部21、二分木構造格納部22、及びノード評価モデル格納部23を備える。
二分木構造作成部11は、複数のデータ(全データまたはサンプリングしたデータ)を用いて二分木構造を作成する。二分木構造作成部11は、入力されたデータに対して、分割の次元(パラメータ)および閾値をランダムに選択して二分木構造を作成する。このとき作成した二分木構造の葉ノードの数が指定した要素数になるまで、または、葉ノードの深さが所定の深さ(例えば、指定した最大値)になるまで分割を行う。
ノード特徴抽出部12は、二分木構造作成部11で作成された二分木構造の各々のノードのノード特徴を抽出する。ノード特徴の詳細については後述する。
スコア算出部13は、二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出する。スコア算出部13で算出されるスコアは、データの正常さの程度を示している。具体的には、スコアが大きいほどデータが正常であると判定される。逆に、スコアが小さいほどデータが異常であると(つまり外れ値であると)判定される。例えば、各々のノードのノード特徴に対するノード評価値は、各々のノードのノード特徴における重みであり、スコア算出部13は、二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードのノード特徴における重みを用いてスコアを算出する。
学習部14は、二分木構造の各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する。換言すると、学習部14は、各々のノードのノード特徴における重みを計算するためのノード評価モデルを学習する。例えば、学習部14は、深層学習などの機械学習を用いてノード評価モデルを学習する。
データセット格納部21には、異常検知の対象となるデータセットが格納されている。各々のデータは多次元ベクトルで表現されるデータxの集合である。また、データセット格納部21には、各々のデータxに対して、「正常/異常/不明」のいずれかを示すデータラベルが格納されている。
二分木構造格納部22は、二分木構造作成部11で作成された二分木構造を格納する。具体的には、二分木構造格納部22は、二分木構造作成部11で作成された二分木構造の各々のノードの情報を格納している。例えば、二分木構造格納部22は、ノード特徴抽出部12で抽出されたノード特徴を格納する。
二分木構造格納部22は、例えば、全てのノードのノード特徴を格納する。ここでノード特徴とは、二分木構造中のノードkに対するノード特徴nである。また、二分木構造格納部22は、中間ノードの情報として、「分岐に利用する項目」、「分岐の閾値」、「閾値未満/以上の場合の子ノードの識別子」に関する情報を格納してもよい。
また、Isolation Forestアルゴリズムでは複数の二分木構造(アンサンブル)を作成することができる。二分木構造格納部22はこのような複数の二分木構造を管理する。
ノード評価モデル格納部23は、学習部14で学習されたノード評価モデル(ノード評価関数)を格納する。例えば、ノード評価モデル格納部23は、学習モデル(学習モデルのパラメータ)や学習結果の重みなどを格納することができる。
また、本実施の形態にかかる異常検知装置1は、スコア算出部13で算出されたスコア結果や異常検知結果などを表示する表示部(不図示)を備えていてもよい。また、例えば、表示部に表示された下位のスコアのデータに対して、ユーザが異常/正常の判断結果を入力して、データセットを更新するようにしてもよい。
次に、本実施の形態にかかる異常検知装置の動作(特に学習フェーズにおける動作)について説明する。図3は、本実施の形態にかかる異常検知装置の動作を説明するためのフローチャートであり、異常検知装置の学習フェーズにおける動作を説明するためのフローチャートである。
図3に示すように、異常検知装置1の二分木構造作成部11(図2参照)は、複数のデータを用いて二分木構造を作成する(ステップS1)。つまり、二分木構造作成部11は、データセット格納部21に格納されている複数のデータに対して、分割の次元(パラメータ)および閾値をランダムに選択して二分木構造を作成する。作成された二分木構造のデータは、二分木構造格納部22に格納される。
次に、スコア算出部13は、二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアy’を算出する(ステップS2)。例えば、各々のノードのノード特徴は、ノード特徴抽出部12を用いて抽出される。また、例えば、ノード評価値とは、各々のノードのノード特徴における重みであり、スコア算出部13は、二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードのノード特徴における重みを用いてスコアを算出する。以下、ノード特徴とスコア算出処理について詳細に説明する。
ノード特徴とは、各々のノードの特徴を示す特徴量であり、ノードに属するデータの統計情報を用いて表現したり、直前の分岐情報を用いて表現したりすることができる。また、ノード特徴として、ノードに属するデータの統計情報を用いた表現と直前の分岐情報を用いた表現の両方を用いてもよい。
ノードに属するデータの統計情報を用いて表現する場合は、例えば、各々のノードに属するデータの最小値と最大値とを用いてノード特徴を生成することができる。すなわち、ノードに含まれる全データにおけるそれぞれの特徴に対して、最小値・最大値をノード特徴としてもよい。このとき、データの偏りを学習に反映させるために中央値を含めてもよい。また、最小値・最大値・中央値以外の統計情報を用いてノード特徴を表現してもよい。
統計情報を用いる場合は、データの次元数がDのとき、D×2の行列(またはD×3の行列)でノード特徴を表現することができる。この場合、ノード特徴は下記の値を用いて表現することができる。
k,d,1:ノードkに含まれるデータにおける第d成分の最小値
k,d,2:ノードkに含まれるデータにおける第d成分の最大値
k,d,3:ノードkに含まれるデータにおける第d成分の中央値(任意に選択可能)
また、直前の分岐情報を用いて表現する場合は、対象ノードに到達する直前の分岐(つまり、直前のノード)におけるパラメータを用いてノード特徴を生成することができる。例えば、対象ノードに到達する直前の分岐における特徴、閾値、及び分岐方向(未満/以上)を用いてノード特徴を生成することができる。
直前の分岐情報を用いて表現する場合は、データの次元数がDのとき、D×3の行列でノード特徴を表現することができる。この場合、ノード特徴は下記の値を用いて表現することができる。
k,d,1:第d成分で分割されている場合は「1」それ以外は「0」
k,d,2:第d成分で分割されている場合は「閾値」、それ以外は「0」
k,d,3:第d成分で分割されている場合は「-1/+1(未満/以上)」、それ以外は「0」
以下、ノード特徴の定義方法について、具体例を用いて説明する。図4は、プロキシログデータの一例を示す表であり、プロキシサーバのアクセスログの一例を示している。図4に示すプロキシログデータには、時刻、ドメイン、メソッド、パス、送信バイト数、受信バイト数、クライアントIPに関する情報が含まれている。
図5は、プロキシログデータを特徴データに変換した一例を示す表である。図5に示す表では、ドメイン毎にPOST率(f1)とアクセス回数(f2)を抽出した場合を示している。なお、POST率(f1)とは、図4に示す全メソッドに占めるPOSTの行の割合である。また、アクセス回数(f2)とは、図4に示す表の行の総数である。
なお、図5では、説明を簡単にするために、POST率(f1)とアクセス回数(f2)をノード特徴として抽出した場合を示した。しかし、これ以外にもノード特徴として、送信バイト数(最小値、最大値、平均値)、受信バイト数(最小値、最大値、平均値)、アクセスクライアント数などを用いてもよい。
図5に示したデータに対して二分木構造を作成した例を図6に示す。図6では、説明を簡単にするために、図5に示したデータの50%のデータ(d1、d3、d5、d7、d9、d11)をサンプリングして二分木構造を作成した場合を示している。また、各々のノードにおける閾値は、ノードに含まれるデータの最小値と最大値の平均値を採用している。図6に示す二分木構造では、実線の矢印(左への分岐)が条件を満たす場合、破線の矢印(右への分岐)が条件を満たさない場合を示している。
図6に示すノード(k=1)(k=1はノード識別子である)は、根ノードに対応している。ノード(k=1)は特徴f1(POST率)を用いて分岐している。すなわち、「f1<0.5」を条件として、この条件を満たす場合はノード(k=1)に含まれるデータを中間ノード(k=3)に分岐し、この条件を満たさない場合はノード(k=1)に含まれるデータを葉ノード(k=2)に分岐している。
また、全データのうち、ノード(k=1)に到達するデータの特徴f1の最小値と最大値はそれぞれ0.0と1.0である。図6では、「f1∈[0.0、1.0]と記載している。同様に、全データのうち、ノード(k=1)に到達するデータの特徴f2の最小値と最大値はそれぞれ2と140である。図6では、「f2∈[2、140]と記載している。
この場合、ノードに属するデータの統計情報を用いてノード(k=1)のノード特徴を表現すると、図7Aに示すような、2×2の行列で表現することができる。図7Aに示す行列nにおいて、1行目の[0.0、1.0]は、特徴f1の最小値と最大値に対応し、2行目の[2、140]は、特徴f2の最小値と最大値に対応している。
図6に示すノード(k=2)は、葉ノードに対応している。サンプリングデータのうち、ノード(k=2)に到達するデータはd11のデータである。また、全データのうち、ノード(k=2)に到達するデータの特徴f1の最小値と最大値はそれぞれ0.8と1.0である。図6では、「f1∈[0.8、1.0]と記載している。同様に、全データのうち、ノード(k=2)に到達するデータの特徴f2の最小値と最大値はそれぞれ5と100である。図6では、「f2∈[5、100]と記載している。
この場合、ノードに属するデータの統計情報を用いてノード(k=2)のノード特徴を表現すると、図7Bに示すような、2×2の行列で表現することができる。図7Aに示す行列nにおいて、1行目の[0.8、1.0]は、特徴f1の最小値と最大値に対応し、2行目の[5、100]は、特徴f2の最小値と最大値に対応している。
このようにノードに属するデータの統計情報を用いることで、各々のノードのノード特徴n、n、・・・を表現することができる。
次に、直前の分岐情報を用いてノード特徴を表現する場合の具体例について、図8を用いて説明する。図8では一例として、図6に示した二分木構造のノード(k=1~3)のノード特徴を示している。
図8に示すように、ノード(k=1)では直前の分岐はないので、ノード特徴nの行列の全ての要素を、便宜上0としている。
図8に示すように、ノード(k=2)の直前の分岐はノード(k=1)であるので、ノード(k=2)のノード特徴nは、ノード(k=1)の情報を用いて生成される。ノード特徴nのうち1行目の要素が直前の分岐であるノード(k=1)の特徴f1に対応している。また、ノード特徴nのうち2行目の要素が直前の分岐であるノード(k=1)の特徴f2に対応している。
ノード(k=1)では特徴f1を分岐の条件としているので、ノード特徴nの要素のうち1行目の要素が[1、0.5、1]となっている。ここで、ノード特徴nの1列目の要素「1」は、直前の分岐の条件が特徴f1であることを示している。また、ノード特徴nの2列目の要素「0.5」は、直前の分岐の条件の閾値が「0.5」であることを示している。また、ノード特徴nの3列目の要素「1」は、ノード(k=2)への到達が、直前の分岐の条件において、「f1<0.5」を満たさないことによる到達(つまり、「以上」での到達)を示している。
また、図8に示すように、ノード(k=3)の直前の分岐はノード(k=1)であるので、ノード(k=3)のノード特徴nは、ノード(k=1)の情報を用いて生成される。ノード特徴nのうち1行目の要素が直前の分岐であるノード(k=1)の特徴f1に対応している。また、ノード特徴nのうち2行目の要素が直前の分岐であるノード(k=1)の特徴f2に対応している。
ノード(k=1)では特徴f1を分岐の条件としているので、ノード特徴nの要素のうち1行目の要素が[1、0.5、-1]となっている。ここで、ノード特徴nの1列目の要素「1」は、直前の分岐の条件が特徴f1であることを示している。また、ノード特徴nの2列目の要素「0.5」は、直前の分岐の条件の閾値が「0.5」であることを示している。また、ノード特徴nの3列目の要素「-1」は、ノード(k=3)への到達が、直前の分岐の条件において、「f1<0.5」を満たしていることによる到達(つまり、「未満」での到達)を示している。
このように直前の分岐情報を用いることで、各々のノードのノード特徴n、n、・・・を表現することができる。
次に、図3に示すステップS2においてスコアを算出する際の動作について詳細に説明する。スコア算出部13は、二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出する。具体的には、ノード特徴nに対するノード評価値v(n)を用いて、データxのスコアを算出する。つまり、下記の式を用いて、スコアyを算出する。
Figure 0007306445000001
上記式において、xはi番目のデータの特徴ベクトルである。yは、i番目のデータのスコアである。I(x)は、xがノードkに属する場合には「1」、属さない場合には「0」となる値である。v(n)は、ノードkの評価値(重み)である。nは、ノードkの特徴ベクトルである。
つまり、スコア算出部13は、根ノードから葉ノードに到達するまでに通過する各々のノードのノード評価値v(n)(重み)を加算することで、データxのスコアを算出することができる。
次に、図3に示すように、学習部14は、学習データをサンプリングする(ステップS3)。その後、学習部14は、ステップS3でサンプリングしたデータを用いて、ノード評価モデルを学習する(ステップS4)。その後、スコア算出部13は、学習後のノード評価モデル(つまり、ノード評価v(n))を用いて、スコアyを算出する(ステップS5)。そして、スコアy’の値をyに更新して、ステップS3~S6の処理を繰り返す。このステップS3~S6の処理は学習処理に対応している。以下、本実施の形態にかかる異常検知装置の学習処理について詳細に説明する。
本実施の形態にかかる異常検知装置では、学習部14は、外れ値と判断されたデータのスコアを正常値の可能性が高いスコアから離すようにノード評価モデルを学習する。また、学習部14は、正常値と判断されたデータのスコアを外れ値の可能性が高いスコアから離すようにノード評価モデルを学習する。
図9は、機械学習の一例を説明するための図であり、重み関数の構成例を示している。図9では、ノードkのノード特徴nを入力層とし、重みvを出力層とするニューラルネットワークを利用している。出力層vには値が非負になる活性化関数(シグモイド関数、ReLUなど)を利用する。そして、各層W、W、Wの重みを調整することで、関数v=v(n)を学習する。関数v(n)の学習にDNN(Deep Neural Network)を用いてもよい。
このとき、本実施の形態では、異常ラベルが付与されたデータと上位スコアのデータとのスコア差に関するヒンジ損失および正常ラベルが付与されたデータと下位スコアのデータとのスコア差に関するヒンジ損失の少なくとも一方を含む損失関数を用いて、ノード評価モデルを学習してもよい。つまり、このような損失関数が最小化するように学習することで、ノード評価モデルを学習することができる。また、損失関数には、前回のスコアからの変動を抑制する項が含まれていてもよい。
具体的には、下記の式で表される損失Lを最小化するノード評価値v(n)を学習する。
Figure 0007306445000002
上記式において、Pは正常学習データであり、正常と判断されたデータjと下位スコアのデータiの組(i,j)を要素とする集合である。Pは異常学習データであり、異常と判断されたデータiと上位スコアのデータjの組(i,j)を要素とする集合である。λ、λは調整用パラメータである。ρ、ρは、外れ値と正常値のスコアに関するマージンである。y’は前回のスコアの値である(なお、初回は、全てのノード評価値が等しいものとして算出したスコアを利用する。)
上記の損失Lを示す損失関数において、第1項は、「異常ラベルが付与されたデータと上位スコアのデータとのスコア差に関するヒンジ損失」に対応している。また、第2項は、「正常ラベルが付与されたデータと下位スコアのデータとのスコア差に関するヒンジ損失」に対応している。また、第3項は、「前回のスコアからの変動を抑制する項」に対応している。本実施の形態では、上記損失関数において損失Lを最小化するノード評価値v(n)を学習する。
また本実施の形態では、ステップS3において学習データをサンプリングする際に、次のようにしている。すなわち、正常学習データPは、正常と判断されたデータjに対してスコアが下位のデータからサンプリングした1以上のデータiの組(i、j)を要素として作成する。また、異常学習データPは、異常と判断されたデータiに対してスコアが上位のデータからサンプリングした1以上のデータjの組(i、j)を要素として作成する。図10を用いて具体的に説明すると、データ31とデータ41がそれぞれ正常と異常と判断されているときに、正常と判断されたデータj(31)に対して、下位のスコアのデータの中からi(32)をサンプリングいている。また、異常と判断されたデータi(41)に対して、上位のスコアのデータの中からj(42)をサンプリングいている。
そして本実施の形態では、このようにしてサンプリングしたデータに対して学習処理を施すことで、ノード評価値v(n)を学習している。すなわち、このようにしてサンプリングしたデータに対して、上記損失関数の損失Lが最小化するようなノード評価値v(n)を学習している。
図10を用いて具体的に説明すると、正常と判断されたデータj(31)に関しては、スコアが高くなるように(右方向にシフトするように)している。また、外れ値である可能性が高いデータi(32)に関しては、スコアが低くなるように(左方向にシフトするように)している。ここで、ρは、サンプリングしたスコアが下位のデータと正常値とのスコアに関するマージンであり、スコアが下位のデータと正常値との間で維持すべき(つまり、最低限離したい)スコア差に対応している。
また、異常と判断されたデータi(41)に関しては、スコアが低くなるように(左方向にシフトするように)している。また、外れ値でない可能性が高いデータj(42)に関しては、スコアが高くなるように(右方向にシフトするように)している。ここで、ρは、外れ値とスコアが上位のデータとのスコアに関するマージンであり、外れ値とスコアが上位のデータとの間で(最低限)維持すべきスコア差に対応している。
学習部14は、このような学習処理を繰り返すことで、異常検知処理においてユーザの意図を反映させることができる。学習部14において学習されたノード評価モデルは、ノード評価モデル格納部23に格納される。
上述のように、Isolation Forestアルゴリズムは、複数のデータを用いて二分木構造(分離木構造)を作成し、この二分木構造を用いて複数のデータを分割していくアルゴリズムである。Isolation Forestアルゴリズムでは、根ノードから葉ノードに到達するまでのパス長をスコアとしており、このスコアが小さいほど(深さが浅いほど)、外れ値(異常データ)である可能性が高いと判断している。
Isolation Forestアルゴリズムは、データの分布に偏りがあると期待した結果が得られない場合がある。すなわち、Isolation Forestアルゴリズムでは、分割するデータの特徴(パラメータ)と閾値とをランダムに決定して二分木構造を作成している。このため、多数派のデータ群と少数派のデータ群とを備える偏りのあるデータの場合は、少数派のデータ群に含まれるデータを外れ値と判断する傾向があり、この結果、期待した通りにデータの異常を検知することができない場合がある。
例えば、図11に示すデータ群は複数のデータ121、122を備えるが、これらの複数のデータは、多数派のデータ群111と少数派のデータ群112とを備える偏りのあるデータとなっている。このようなデータ群にIsolation Forestアルゴリズムを適用すると、少数派のデータ群112に含まれるデータ122を外れ値と判断する傾向が高くなる。このため、偏りのあるデータにIsolation Forestアルゴリズムを適用した場合は、期待した通りにデータの異常を検知することができない場合がある。
しかしながら、ユーザによっては、このような少数派のデータ群に含まれるデータを正常値として扱いたい場合がある。したがって、ユーザの意図を反映させることが可能な異常検知装置が必要とされている。ここで、ユーザの意図とは、特定のデータ群を正常または異常のどちらとして扱うかに関するユーザの意図であり、データの扱いに関するユーザの方針を反映させた内容である。このようなユーザの意図は、複数のデータを分割(分類)する際に反映される。
本実施の形態にかかる異常検知装置1では、上述のように、学習部14において、二分木構造の各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習している。学習部14は、このような学習処理を行うことで、異常検知処理においてユーザの意図を反映させることができる。すなわち、ユーザの意図をフィードバックしながら学習処理を実施することで、異常検知処理においてユーザの意図を反映させることができる。ユーザの意図は、図3のステップS3においてサンプリングされる学習データを用いて反映させることができる。具体的には、学習データである正常学習データP、及び異常学習データPを用いて、ユーザの意図を反映させることができる。
図11で説明したように、偏りのあるデータにIsolation Forestアルゴリズムを適用した場合は、少数派のデータ群112に含まれるデータを外れ値と判断する傾向が高くなる。つまり、少数派のデータ群112には、浅い分割で到達するため、スコアが低くなる傾向にある。これに対して本実施の形態にかかる発明を適用した場合は、少数派のデータ群112に含まれるデータが他のデータよりもスコアが高くなるように学習させることができる。
また、本実施の形態では、二分木構造がスコアの制約になる働きを有するため、過学習になりにくいという特徴がある。つまり、深いノードに属するデータのスコアを大きくすることができる。
また、本実施の形態では、学習部14において学習されたノード評価モデルは、二分木構造を再構築した際に再利用してもよい。すなわち、データの増加などでデータセットに変化があった場合、必要に応じて二分木構造を再構築するが、このとき、学習済みのノード評価モデルを利用してもよい。
図12は、本実施の形態にかかる異常検知装置の動作を説明するためのフローチャートであり、二分木構造を再構築する場合の動作を説明するためのフローチャートである。図12に示すように、二分木構造を再構築する場合、異常検知装置1の二分木構造作成部11(図2参照)は、再構築用のデータセットを用いて二分木構造を作成する(ステップS11)。
次に、スコア算出部13は、二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出する(ステップS12)。このときスコア算出部13は、学習済みのノード評価モデルを再利用して、スコアを算出する。
その後、学習部14は、ノード評価モデルをチューニングする(ステップS13)。すなわち、図3に示したステップS3~S6の学習処理を実施することで、ノード評価モデルを新たなデータセットに応じてチューニングする。このとき、教師データを利用してチューニングを実施してもよい。なお、ステップS13のチューニング処理は不要であれば適宜省略してもよい。
このように、新たなデータセットに対して二分木構造を作成する際に、学習済みのノード評価モデルを再利用することで、演算処理の負荷を軽減することができる。
上述の実施の形態では、説明を簡単にするため1つの二分木構造を利用する構成としたが、本発明はこれに限定されない。すなわち、複数の二分木構造を利用してもよい。その場合、それぞれの二分木構造毎にノード評価モデルを学習するのではなく、全ての二分木構造で1つのノード評価モデルを学習する構成とすることができる。複数の二分木構造を利用する場合においても、データのスコアは上述のスコアyを算出する式を用いて、全ての二分木構造において通過するノード評価値の和として算出できる。
上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、異常検知処理を、プロセッサであるCPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。
すなわち、複数のデータを用いて二分木構造を作成する処理と、二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードのノード特徴に対するノード評価値を用いてスコアを算出する処理と、二分木構造の各々のノードの特徴であるノード特徴を用いて各々のノードの評価値を計算するノード評価モデルを学習する処理と、を含む異常検知処理を実行するためのプログラムを、コンピュータに実行させてもよい。
図13は、本発明にかかる異常検知処理用プログラムを実行するためのコンピュータを示すブロック図である。図13に示すように、コンピュータ90は、プロセッサ91およびメモリ92を備える。メモリ92には異常検知処理用のプログラムが格納されている。プロセッサ91は、メモリ92から異常検知処理用のプログラムを読み出す。そして、プロセッサ91において異常検知処理用のプログラムを実行することで、上述した本発明にかかる異常検知処理を実行することができる。
上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
上記の実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
複数のデータを用いて二分木構造を作成する二分木構造作成部と、
前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出するスコア算出部と、
前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する学習部と、を備える、
異常検知装置。
(付記2)
前記各々のノードのノード特徴に対するノード評価値は、前記各々のノードのノード特徴における重みであり、
前記スコア算出部は、前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードのノード特徴における重みを用いてスコアを算出し、
前記学習部は、前記各々のノードのノード特徴における重みを計算するためのノード評価モデルを学習する、
付記1に記載の異常検知装置。
(付記3)
前記ノード特徴は、前記各々のノードに属するデータの統計情報を用いて生成される、付記1または2に記載の異常検知装置。
(付記4)
前記ノード特徴は、前記各々のノードに属するデータの最小値と最大値とを用いて生成される、付記3に記載の異常検知装置。
(付記5)
前記ノード特徴は、対象ノードに到達する直前の分岐におけるパラメータを用いて生成される、付記1または2に記載の異常検知装置。
(付記6)
前記ノード特徴は、前記対象ノードに到達する直前の分岐における特徴、閾値、及び分岐方向を用いて生成される、付記5に記載の異常検知装置。
(付記7)
前記学習部は、外れ値と判断されたデータのスコアを正常値の可能性が高いスコアから離すように前記ノード評価モデルを学習する、付記1~6のいずれか一項に記載の異常検知装置。
(付記8)
前記学習部は、正常値と判断されたデータのスコアを外れ値の可能性が高いスコアから離すように前記ノード評価モデルを学習する、付記1~7のいずれか一項に記載の異常検知装置。
(付記9)
前記学習部は、異常ラベルが付与されたデータと上位スコアのデータとのスコア差に関するヒンジ損失および正常ラベルが付与されたデータと下位スコアのデータとのスコア差に関するヒンジ損失の少なくとも一方を含む損失関数を最小化することで、前記ノード評価モデルを学習する、付記1~8のいずれか一項に記載の異常検知装置。
(付記10)
前記損失関数は、前回のスコアからの変動を抑制する項を有する、付記9に記載の異常検知装置。
(付記11)
複数のデータを用いて二分木構造を作成し、
前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出し、
前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する、
異常検知方法。
(付記12)
複数のデータを用いて二分木構造を作成する処理と、
前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出する処理と、
前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する処理と、をコンピュータに実行させるためのプログラムが格納された非一時的なコンピュータ可読媒体。
以上、本発明を上記実施の形態に即して説明したが、本発明は上記実施の形態の構成にのみ限定されるものではなく、本願特許請求の範囲の請求項の発明の範囲内で当業者であればなし得る各種変形、修正、組み合わせを含むことは勿論である。
1 異常検知装置
11 二分木構造作成部
12 ノード特徴抽出部
13 スコア算出部
14 学習部
21 データセット格納部
22 二分木構造格納部
23 ノード評価モデル格納部
90 コンピュータ
91 プロセッサ
92 メモリ

Claims (11)

  1. Isolation Forestアルゴリズムを用いた異常検知装置であって、
    複数のデータを用いて二分木構造を作成する二分木構造作成部と、
    前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出するスコア算出部と、
    前記スコア算出部で算出されたスコアを用いて前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する学習部と、を備え、
    前記学習部は、外れ値と判断されたデータのスコアを正常値の可能性が高いスコアから離すように前記ノード評価モデルを学習する、
    異常検知装置。
  2. 前記各々のノードのノード特徴に対するノード評価値は、前記各々のノードのノード特徴における重みであり、
    前記スコア算出部は、前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードのノード特徴における重みを用いてスコアを算出し、
    前記学習部は、前記各々のノードのノード特徴における重みを計算するためのノード評価モデルを学習する、
    請求項1に記載の異常検知装置。
  3. 前記ノード特徴は、前記各々のノードに属するデータの統計情報を用いて生成される、請求項1または2に記載の異常検知装置。
  4. 前記ノード特徴は、前記各々のノードに属するデータの最小値と最大値とを用いて生成される、請求項3に記載の異常検知装置。
  5. 前記ノード特徴は、対象ノードに到達する直前の分岐におけるパラメータを用いて生成される、請求項1または2に記載の異常検知装置。
  6. 前記ノード特徴は、前記対象ノードに到達する直前の分岐における特徴、閾値、及び分岐方向を用いて生成される、請求項5に記載の異常検知装置。
  7. 前記学習部は、正常値と判断されたデータのスコアを外れ値の可能性が高いスコアから離すように前記ノード評価モデルを学習する、請求項1~のいずれか一項に記載の異常検知装置。
  8. 前記学習部は、異常ラベルが付与されたデータと上位スコアのデータとのスコア差に関するヒンジ損失および正常ラベルが付与されたデータと下位スコアのデータとのスコア差に関するヒンジ損失の少なくとも一方を含む損失関数を最小化することで、前記ノード評価モデルを学習する、請求項1~のいずれか一項に記載の異常検知装置。
  9. 前記損失関数は、前回のスコアからの変動を抑制する項を有する、請求項に記載の異常検知装置。
  10. Isolation Forestアルゴリズムを用いた異常検知方法であって、
    コンピュータが、
    複数のデータを用いて二分木構造を作成し、
    前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出し、
    前記算出されたスコアを用いて前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習し、
    前記ノード評価モデルを学習する際に、外れ値と判断されたデータのスコアを正常値の可能性が高いスコアから離すように前記ノード評価モデルを学習する、
    異常検知方法。
  11. Isolation Forestアルゴリズムを用いた異常検知処理をコンピュータに実行させるためのプログラムであって、
    複数のデータを用いて二分木構造を作成する処理と、
    前記二分木構造の根ノードから葉ノードに到達するまでに通過する各々のノードの特徴であるノード特徴に対するノード評価値を用いてスコアを算出する処理と、
    前記算出されたスコアを用いて前記二分木構造の前記各々のノードのノード特徴に対するノード評価値を計算するノード評価モデルを学習する処理と、をコンピュータに実行させ、
    前記ノード評価モデルを学習する処理を実行させる際に、外れ値と判断されたデータのスコアを正常値の可能性が高いスコアから離すように前記ノード評価モデルを学習させる、
    プログラム。
JP2021501252A 2019-02-22 2019-02-22 異常検知装置、異常検知方法、及びプログラム Active JP7306445B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/006776 WO2020170420A1 (ja) 2019-02-22 2019-02-22 異常検知装置、異常検知方法、及びコンピュータ可読媒体

Publications (2)

Publication Number Publication Date
JPWO2020170420A1 JPWO2020170420A1 (ja) 2021-12-16
JP7306445B2 true JP7306445B2 (ja) 2023-07-11

Family

ID=72144838

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021501252A Active JP7306445B2 (ja) 2019-02-22 2019-02-22 異常検知装置、異常検知方法、及びプログラム

Country Status (3)

Country Link
US (1) US20220129764A1 (ja)
JP (1) JP7306445B2 (ja)
WO (1) WO2020170420A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3128664A1 (en) * 2020-08-19 2022-02-19 Royal Bank Of Canada System and method for cascading decision trees for explainable reinforcement learning
US12373550B2 (en) * 2022-03-04 2025-07-29 Cisco Technology, Inc. Cross-domain indicator of compromise (IoC) identification
JP2024017523A (ja) * 2022-07-28 2024-02-08 株式会社東芝 情報処理装置、情報処理方法及び情報処理プログラム
JP7764416B2 (ja) * 2023-02-28 2025-11-05 株式会社東芝 異常検知装置、処理装置、異常検知方法及びプログラム
EP4690703A4 (en) * 2023-04-04 2026-03-18 Ericsson Telefon Ab L M APPARATUS AND METHOD FOR IDENTIFYING BASE STATION BEHAVIOR
CN118054967B (zh) * 2024-04-01 2024-09-06 雅安数字经济运营有限公司 一种基于网络安全的异常检测方法、介质及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541085A (ja) 2010-09-08 2013-11-07 インスティチュート テレコム−テレコム パリステック オブジェクトにスコアを提供する方法及び意思決定支援システム
JP2016511397A (ja) 2013-01-31 2016-04-14 ユニベルシテ ドゥ モンペリエ 希少事象を同定する方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9280740B1 (en) * 2015-01-12 2016-03-08 Bank Of America Corporation Transforming predictive models

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541085A (ja) 2010-09-08 2013-11-07 インスティチュート テレコム−テレコム パリステック オブジェクトにスコアを提供する方法及び意思決定支援システム
JP2016511397A (ja) 2013-01-31 2016-04-14 ユニベルシテ ドゥ モンペリエ 希少事象を同定する方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
高橋 良太、佐々木 崇光、松島 秀樹、芳賀 智之、岸川 剛、 鶴見 淳一,Sand Sprinkled Isolation Forest による車載セキュリティ向け異常検知の精度向上,2017年 暗号と情報セキュリティシンポジウム(SCIS2017),日本,2017年01月27日,p.1-6

Also Published As

Publication number Publication date
JPWO2020170420A1 (ja) 2021-12-16
WO2020170420A1 (ja) 2020-08-27
US20220129764A1 (en) 2022-04-28

Similar Documents

Publication Publication Date Title
JP7306445B2 (ja) 異常検知装置、異常検知方法、及びプログラム
US11853427B2 (en) Methods and apparatus for detecting whether a string of characters represents malicious activity using machine learning
US12387215B2 (en) Privacy-preserving collaborative machine learning training using distributed executable file packages in an untrusted environment
US10606885B2 (en) Data object creation and recommendation using machine learning based online evolution
CN107622333B (zh) 一种事件预测方法、装置及系统
US9690938B1 (en) Methods and apparatus for machine learning based malware detection
US12579268B2 (en) Systems and methods of data selection for iterative training using zero knowledge clustering
US20220277219A1 (en) Systems and methods for machine learning data generation and visualization
US11977978B2 (en) Finite rank deep kernel learning with linear computational complexity
US11651275B2 (en) Tree-based associative data augmentation
WO2020091865A1 (en) Finite rank deep kernel learning for robust time series forecasting and regression
US20230403247A1 (en) System for identifying and blocking suspect electronic communications based on artificial intelligence
CN110856037A (zh) 一种视频封面确定方法、装置、电子设备及可读存储介质
Marrón et al. Data stream classification using random feature functions and novel method combinations
US12554973B2 (en) Hierarchical data labeling for machine learning using semi-supervised multi-level labeling framework
CN110472659B (zh) 数据处理方法、装置、计算机可读存储介质和计算机设备
Ben-Shimon et al. An ensemble method for top-N recommendations from the SVD
US20140279815A1 (en) System and Method for Generating Greedy Reason Codes for Computer Models
US12061878B2 (en) Method and system for calculating minwise hash signatures from weighted sets
Obiedat Predicting the popularity of online news using classification methods with feature filtering techniques
US20240086762A1 (en) Drift-tolerant machine learning models
Wu et al. A new structure for Internet video traffic classification using machine learning
Xu et al. Virtual Node Isolation Forest: One-class isolation-based method for novelty detection
Letteri et al. Dataset optimization strategies for malwaretraffic detection
US11449789B2 (en) System and method for hierarchical classification

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210806

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230308

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230612

R151 Written notification of patent or utility model registration

Ref document number: 7306445

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151