JP6538615B2 - Abnormality detection device, abnormality detection method and abnormality detection program - Google Patents
Abnormality detection device, abnormality detection method and abnormality detection program Download PDFInfo
- Publication number
- JP6538615B2 JP6538615B2 JP2016109033A JP2016109033A JP6538615B2 JP 6538615 B2 JP6538615 B2 JP 6538615B2 JP 2016109033 A JP2016109033 A JP 2016109033A JP 2016109033 A JP2016109033 A JP 2016109033A JP 6538615 B2 JP6538615 B2 JP 6538615B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- value
- abnormality
- degree
- relationship
- 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
Links
- 230000005856 abnormality Effects 0.000 title claims description 222
- 238000001514 detection method Methods 0.000 title claims description 177
- 239000013598 vector Substances 0.000 claims description 229
- 238000004364 calculation method Methods 0.000 claims description 104
- 230000002159 abnormal effect Effects 0.000 claims description 36
- 239000011159 matrix material Substances 0.000 claims description 4
- 230000000052 comparative effect Effects 0.000 claims 1
- 230000010365 information processing Effects 0.000 claims 1
- 238000000034 method Methods 0.000 description 56
- 238000012545 processing Methods 0.000 description 45
- 238000010586 diagram Methods 0.000 description 25
- 238000009826 distribution Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 10
- 230000015654 memory Effects 0.000 description 9
- 230000007423 decrease Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000002547 anomalous effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Complex Calculations (AREA)
- Testing And Monitoring For Control Systems (AREA)
Description
本発明は、異常検知装置、異常検知方法及び異常検知プログラムに関する。 The present invention relates to an abnormality detection device, an abnormality detection method, and an abnormality detection program.
多数のサーバやルータ等の機器で構成されるシステムでは、各装置のハードディスクやメモリ等のハードウェア異常を検知することが運用上必要になる。情報・通信機器に限らず、多数のセンサを持つ産業機械や自動車などにおいても、温度や加速度等のセンサデータから機械の異常検知をしたいという需要が存在する。また、機器類だけでなく、例えばクレジットカードの利用状況を分析することによる不正使用の検知、情報セキュリティにおけるDDoS(Distributed Denial of Service)攻撃の検知分野やマルウェアの検知分野でも、異常検知技術が用いられている。 In a system composed of a large number of servers and devices such as routers, it is necessary for operation to detect hardware abnormalities such as hard disks and memories of each device. Not only in information and communication equipment but also in industrial machines and automobiles having a large number of sensors, there is a demand for detecting machine abnormalities from sensor data such as temperature and acceleration. In addition to equipments, anomaly detection technology is used, for example, in detection of unauthorized use by analyzing credit card usage, detection of Distributed Denial of Service (DDoS) attacks in information security, and detection of malware. It is done.
最も簡単な異常検知の方法として、人間がデータを直接視認することで、データにおける異常を検知するという方法が考えられる。しかし、多数のデータがどのような傾向を示した時に異常であるかを把握するには、相当な習熟が必要になるため、人間の目で異常判定することは困難である。仮に人間の目で異常検知できるとしても、特定の習熟した作業者に依存してしまい、その作業者がいなくなれば異常検知はできなくなってしまう。以上を鑑みると、異常検知の仕組みを何らかの方法で機械的に実行することが必要になる。 As the simplest method of anomaly detection, a method is conceivable in which an anomaly in data is detected by human being directly viewing the data. However, in order to grasp what kind of tendency a large number of data show when it is abnormal, considerable learning is required, so it is difficult for the human eye to make an abnormal judgment. Even if an abnormality can be detected by human eyes, it depends on a specific trained worker, and if the worker disappears, the abnormality can not be detected. In view of the above, it is necessary to mechanically execute the mechanism of anomaly detection in some way.
このような機械的な異常検知の方法として最も簡易なものに、データの値域に閾値を設け、閾値を超えた際に異常であると判定する方法がある。この方法は、適切に機能する場合があるものの、一般的には、妥当な閾値を決定することが困難である。これは、閾値を大きくすると、本来異常として発見したい事象をとり損ねる可能性がある一方で、閾値を小さくすると異常でないのに異常であると判定してしまう事象が増えるためである。 As the simplest method of such mechanical abnormality detection, there is a method of providing a threshold value in the data range and determining an abnormality when the threshold value is exceeded. Although this method may work properly, it is generally difficult to determine a reasonable threshold. This is because increasing the threshold may cause an event that the user originally intended to detect as an anomaly to fail, while decreasing the threshold increases events that are determined to be abnormal although they are not abnormal.
そこで、それまでに出現していないパターンを発見し、異常であると判定する異常検知方法として、広く利用されている方法にLOFが提案されている(例えば、非特許文献1参照)。LOFは、データ空間内での局所的密度を計算する方法である。 Therefore, LOF has been proposed as a widely used method as an abnormality detection method for detecting a pattern that has not appeared so far and determining that the pattern is abnormal (for example, see Non-Patent Document 1). LOF is a method of calculating local density in data space.
具体的には、LOFは、新たに得られたデータが、それまでに得られているデータの空間の中で密度の高い箇所に存在する場合は、異常度合いを表す数値を小さく出力する。言い換えると、LOFは、新たに得られたデータがそれまでにも得られているデータと類似するデータである場合、新たに得られたデータは、異常ではないと判定する。一方、新たに得られたデータが密度の低い箇所に存在する場合、異常度合いを表す数値を大きく出力する。言い換えると、LOFは、新たに得られたデータがそれまでに得られているデータと類似しないデータである場合、新たに得られたデータは、異常であると判定する。 Specifically, the LOF outputs a small numerical value indicating the degree of abnormality when newly obtained data is present at a high density location in the space of data obtained so far. In other words, the LOF determines that the newly obtained data is not abnormal if the newly obtained data is data similar to the data obtained so far. On the other hand, when the newly obtained data is present at a low density portion, the numerical value representing the degree of abnormality is largely output. In other words, the LOF determines that the newly obtained data is abnormal if the newly obtained data is not similar to the data obtained so far.
また、データ間に何らかの関係性がある場合に、この関係性が崩れたことから異常を検知する方法がある。この方法として、複数種類のデータ間の相関関係が維持されているか否かを分析し、その結果から異常を発見する方法が提案されている。この方法では、データを2組ずつ選び、例えば単回帰により一方から他方を予測する関数を構築し、その予測値が観測値から一定以上離れていることによって相関関係が破壊されているとみなしている。 In addition, there is a method of detecting an abnormality from the fact that the relationship is broken when there is any relationship between data. As this method, a method of analyzing whether or not the correlation between plural types of data is maintained, and finding an abnormality from the result has been proposed. In this method, two sets of data are selected, for example, a function that predicts one from the other by simple regression is constructed, and the correlation is considered to be broken because the predicted value is separated from the observed value by a certain amount or more. There is.
しかしながら、LOFでは、データ間に相関がある場合に、相関に従っているデータであって本来正常であるデータであっても、データの集合から外れているデータを異常として検知する、という問題がある。具体的に、図13〜図15を参照して、従来技術の問題を説明する。図13〜図15は、従来技術に係る異常検知方法を説明するための図である。図13〜図15は、データとしてX及びYの組が与えられたとして、座標平面上にその組をプロットしたものである。 However, in the LOF, there is a problem in that, when there is a correlation between data, even if the data is data that follows the correlation and is originally normal, data that is out of the data set is detected as abnormal. Specifically, the problems of the prior art will be described with reference to FIGS. 13 to 15 are diagrams for explaining an abnormality detection method according to the prior art. FIGS. 13 to 15 are plots of the sets on the coordinate plane, assuming that the sets of X and Y are given as data.
図13では、X及びYの組に対する点として、平均ベクトルが(3,3)であり、共分散行列が[[1,0.9]、[0.9,1]]の2次元正規分布に従う点を200点(白丸)プロットしている。また、右上に位置する点Pbは、(6.5,6.5)の点である。また、左上の点Prは、(2,5)の点である。 In FIG. 13, two-dimensional normal distributions with mean vectors of (3, 3) and covariance matrices of [[1, 0.9], [0.9, 1]] as points for a set of X and Y 200 points (open circles) are plotted according to points. Further, a point Pb located at the upper right is a point of (6.5, 6.5). The upper left point Pr is the point (2, 5).
この図13では、次のような、データ間に相関が見られる場合をイメージして、XとYとの組に対する点をプロットしている。例えば、X及びYが、アプリケーションサーバAとアプリケーションサーバBとのCPU(Central Processing Unit)使用率をそれぞれ表しているとする。そして、アプリケーションサーバAとアプリケーションサーバBとが、Webサーバからのリクエストを均等に受け付けている場合を例とする。 In this FIG. 13, points are plotted against a set of X and Y by imaging the case where there is a correlation between data as follows. For example, it is assumed that X and Y represent central processing unit (CPU) usage rates of the application server A and the application server B, respectively. A case where the application server A and the application server B equally receive requests from the web server is taken as an example.
この場合、Webサーバへのアクセス数が増加し、アプリケーションサーバへのリクエストが増加すると、X及びYがともに上昇すると考えられる。逆に、Webサーバへのアクセス数が減少すると、X及びYはともに下降すると考えられる。図13において、白丸は、正常な状態のデータの例である。そして、点Pbは、相関関係を維持したままで、それまでには存在していなかった値をとった場合の例である。また、点Prは、相関関係が崩れた場合の例である。以下、正常な状態のデータである白丸が先に与えられ、続いて異常検知対象データとして、点Pb及び点Prが与えられた状況を考える。 In this case, when the number of accesses to the web server increases and the requests to the application server increase, it is considered that both X and Y rise. Conversely, if the number of accesses to the web server decreases, it is thought that both X and Y fall. In FIG. 13, white circles are examples of data in a normal state. And, the point Pb is an example in the case of taking a value which did not exist until then while maintaining the correlation. Further, the point Pr is an example in the case where the correlation is broken. In the following, it is assumed that a white circle, which is data of a normal state, is given first, and then, a point Pb and a point Pr are given as abnormality detection target data.
このうち、点Pbは、正常な状態において成り立つ相関関係を維持しているため、本来、異常でないと判定すべき場合がある。一方、点Prでは正常な状態において成り立つ相関関係には従っていないため、異常であると判定すべき場合がある。しかしながら、LOFではデータ間の関係性を考慮していないため、白丸の密度が低い点に存在する点Pb及び点Prは、いずれも異常度合いを表わす数値が大きく出力されてしまう。すなわち、異常であると判定すべきではない点Pbにおいて、異常であると判定されてしまう問題がある。 Among these, since the point Pb maintains the correlation that holds in the normal state, it may be determined that it is not abnormal originally. On the other hand, since the point Pr does not follow the correlation established in the normal state, it may be determined as abnormal. However, since the LOF does not take into consideration the relationship between the data, the points Pb and Pr existing at the points where the density of the white circles is low will both output a large numerical value indicating the degree of abnormality. That is, there is a problem that the point Pb is determined to be abnormal at a point Pb that should not be determined to be abnormal.
一方、複数種類データ間の相関関係が維持されているか否かを分析し、その結果から異常を発見する方法では、図14や図15に示すように、データ間の関係性が複数あり、複雑な関係が見られる場合に異常を検知することが難しいという問題がある。 On the other hand, in the method of analyzing whether or not the correlation between plural types of data is maintained and finding an abnormality from the result, as shown in FIG. 14 and FIG. There is a problem that it is difficult to detect an abnormality when a certain relationship is observed.
例えば、図14の白丸は、平均ベクトルが(3,3)、共分散行列が[[1,0.99],[0.99,1]]の2次元正規分布に従う200点(データ群Rb)と、これらを(π/5)だけ反時計回りに回転させた点(データ群Rb´)である。図14の例では、データ間の関係性が2つあり、検知データをいずれの相関関係と比較すればよいか判断が難しい。そして、この図14では、白丸で表示された点の相関係数は「0.07」と小さい。したがって、関係性が崩れたことから異常を検知する方法でも、図14の例では、正常な状態のデータに限っても相関が見られないと判断するため、異常検知を適切に実行することが難しい。 For example, the white circles in FIG. 14 have a mean vector of (3, 3) and a covariance matrix of 200 points according to a two-dimensional normal distribution of [[1, 0.99], [0.99, 1]] (data group Rb And a point (data group Rb ') obtained by rotating them counterclockwise by (.pi. / 5). In the example of FIG. 14, there are two relationships between data, and it is difficult to determine which correlation the detected data should be compared with. And in this FIG. 14, the correlation coefficient of the point displayed by the white circle is as small as "0.07." Therefore, even in the method of detecting an abnormality because the relationship is broken, in the example shown in FIG. difficult.
そして、図15では、正常な状態が、データで見ると3つの離れた群を構成している場合のイメージを示す。図15中の白丸は正常な状態のデータである。点Pgは、異常判定対象のデータである。また、直線Lbは、正常な白丸のみから単回帰直線(具体的には、「Y=0.9175X+0.1081」の関係を有する。)を計算し、図15中にプロットしたものである。図15中、左下の白丸の群(データ群Rc)は、X及びYが、それぞれ平均が「0.5」、標準偏差が「0.1」の正規分布に従う乱数をとった100点をプロットしたものである。右の直線Lbの上の群(データ群Rd)は、Xは平均「3」、標準偏差「0.1」、Yは平均「4」、標準偏差「0.1」の正規分布に従う乱数をとった20点をプロットしたものである。右の直線Lbの下の群(データ群Re)は、Xは平均「4」、標準偏差「0.1」、Yは平均「3」、標準偏差「0.1」の正規分布に従う乱数をとった20点をプロットしたものである。なお、白丸の相関係数は「0.9231」という高い値をとっている。 And in FIG. 15, the normal state shows the image at the time of seeing in data, when it comprises three distant groups. White circles in FIG. 15 are data in a normal state. The point Pg is data as an abnormality determination target. Further, the straight line Lb is obtained by calculating a simple regression line (specifically, having a relationship of “Y = 0.9175X + 0.1081”) only from normal white circles, and plotting it in FIG. In FIG. 15, the lower left white circle group (data group Rc) plots 100 points in which X and Y each have a random distribution according to a normal distribution with an average of “0.5” and a standard deviation of “0.1”. It is The group above the straight line Lb on the right (data group Rd) is a random number that follows the normal distribution with an average "3", a standard deviation "0.1", and an average "4" and a standard deviation "0.1". It is a plot of the 20 points taken. The lower group (data group Re) on the right straight line Lb is a random number that follows the normal distribution with an average "4", a standard deviation "0.1", and an average "3" and a standard deviation "0.1". It is a plot of the 20 points taken. In addition, the correlation coefficient of the white circle has a high value of "0.9231".
ここで、図15に示す点Pgは、明らかに白丸の3つのデータ群Rc〜Rdから大きく離れている。しかしながら、単回帰直線の直線Lbには近い位置であるため、点Pgと直線Lbとの比較を行うだけでは、点Pgが直線Lbに対応する相関から崩れていると判断することはできない。すなわち、点Pgは、正常な状態のデータから見れば離れた箇所に存在するものであるが、関係性が崩れたことから異常を検知する方法では、この点Pgを異常であると検知することができない。 Here, the point Pg shown in FIG. 15 is clearly far away from the three white circle data groups Rc to Rd. However, since the position is close to the straight line Lb of the simple regression line, it can not be determined that the point Pg is broken from the correlation corresponding to the straight line Lb simply by comparing the point Pg and the straight line Lb. That is, although the point Pg exists in a distant place when viewed from data in a normal state, the method P for detecting an abnormality is that the point Pg is detected as an abnormality because the relationship is broken. I can not
本発明は、上記に鑑みてなされたものであって、データ間の関係性に基づいた検知対象データの異常検知を精度よく実行することができる異常検知装置、異常検知方法及び異常検知プログラムを提供することを目的とする。 The present invention has been made in view of the above, and provides an abnormality detection apparatus, an abnormality detection method, and an abnormality detection program that can accurately execute abnormality detection of detection target data based on the relationship between data. The purpose is to
上述した課題を解決し、目的を達成するために、本発明に係る異常検知装置は、データ間の関係性に基づいて、検知対象である検知データの、データ間の関係性からの乖離を表す乖離値ベクトルと、比較対象である比較データの、データ間の関係性からの乖離を表す乖離値ベクトルと、を計算する乖離値ベクトル計算部と、検知データの乖離値ベクトルの、比較データの乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算する異常度計算部と、離散度合が所定の閾値を超えた場合に検知データは異常であることを判定する異常判定部と、を有する。 In order to solve the problems described above and to achieve the object, the abnormality detection device according to the present invention represents the deviation of the detection data to be detected from the relationship between the data based on the relationship between the data. Deviation value of the comparison data of the deviation value vector calculation unit that calculates deviation value vector and deviation value vector that represents deviation from the relationship between the comparison data to be compared and deviation value vector of the detection data An abnormality degree calculation unit that calculates the degree of discreteness from the set of value vectors as the degree of abnormality, and an abnormality determination unit that determines that the detected data is abnormal when the degree of discreteness exceeds a predetermined threshold value; Have.
本発明によれば、データ間の関係性に基づき、検知対象データの異常検知を精度よく実行することができる。 According to the present invention, abnormality detection of detection target data can be accurately performed based on the relationship between data.
以下、図面を参照して、本発明の一実施の形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. The present invention is not limited by the embodiment. Further, in the description of the drawings, the same portions are denoted by the same reference numerals.
[実施の形態1]
まず、第一の実施形態について説明する。以下の実施形態では、第一の実施形態に係る異常検知装置の構成、異常検知装置による処理の流れを説明する。
First Embodiment
First, the first embodiment will be described. In the following embodiments, the configuration of the abnormality detection apparatus according to the first embodiment and the flow of processing by the abnormality detection apparatus will be described.
[異常検知装置の構成]
図1は、実施の形態1に係る異常検知装置10の構成の一例を示すブロック図である。図1に示すように、第一の実施形態に係る異常検知装置10は、通信処理部11、制御部12及び記憶部13を有する。
[Configuration of abnormality detection device]
FIG. 1 is a block diagram showing an example of the configuration of the abnormality detection apparatus 10 according to the first embodiment. As shown in FIG. 1, the abnormality detection device 10 according to the first embodiment includes a
通信処理部11は、接続される端末装置20との間でやり取りする各種情報に関する通信を制御する。例えば、通信処理部11は、比較対象であるデータ、検知対象となるデータ、及び、検知対象となるデータに対する異常検知処理の要求を端末装置20から受信する。また、例えば、通信処理部11は、異常検知処理の処理結果を端末装置20に対して送信する。
The
制御部12は、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部12は、CPUやMPU(Micro Processing Unit)などの電子回路である。制御部12は、関係性推定部121、乖離値ベクトル計算部122、異常度計算部123及び異常判定部124を有する。
The control unit 12 has a program defining various processing procedures and the like, and an internal memory for storing required data, and executes various processing by these. For example, the control unit 12 is an electronic circuit such as a CPU or a micro processing unit (MPU). The control unit 12 includes a relationship estimation unit 121, a difference value vector calculation unit 122, an abnormality degree calculation unit 123, and an
関係性推定部121は、データ間の関係性を推定し、データ間の関係性を示すパラメータを算出する。例えば、与えられたデータについて、データ間の関係性が式として与えられているものの、パラメータに相当するものが未定である場合に、パラメータを推定する。具体的には、データXとデータYとの関係性が、「Y=aX+b」という単回帰であることは与えられているが、「a」及び「b」が不明な場合に、関係性推定部121は、与えられたデータを基に「a」及び「b」を推定する。この場合、関係性推定部121は、それを出力した機器等が正常な状態のデータ、言い換えると、異常な状態のデータを含まないデータを、パラメータ推定のために用いることが望ましい。 The relationship estimation unit 121 estimates the relationship between data, and calculates a parameter indicating the relationship between data. For example, for the given data, although the relationship between the data is given as an equation, the parameter is estimated when the equivalent of the parameter is undecided. Specifically, although it is given that the relationship between data X and data Y is a simple regression "Y = aX + b", relationship estimation is made when "a" and "b" are unknown. The part 121 estimates "a" and "b" based on the given data. In this case, it is desirable that the relationship estimation unit 121 use, for parameter estimation, data in a normal state of the device or the like that has output the data, that is, data that does not include abnormal state data.
乖離値ベクトル計算部122は、データ間の関係性に基づき、関係性からの乖離を表す乖離値ベクトルを計算する。実施の形態1では、乖離値ベクトル計算部122は、データ間の関係性に基づいて、検知対象である検知データの、データ間の関係性からの乖離を表す乖離値ベクトルを計算する。そして、乖離値ベクトル計算部122は、データ間の関係性に基づいて、比較対象である比較データの、データ間の関係性からの乖離を表す乖離値ベクトルを計算する。すなわち、乖離値ベクトル計算部122は、データ間に何らかの関係性が見られる場合に、その関係性からの乖離を示す値を、検知データ及び比較データについて計算する。なお、乖離値ベクトル計算部122は、データ間の乖離値ベクトルを、記憶部13(後述)の乖離値ベクトル記憶部131に記憶させてもよい。また、乖離値ベクトル計算部122は、関係性推定部121が算出したデータ間の関係性を示すパラメータを、データ間の関係性に適用し、データ間の乖離値ベクトルを計算する。なお、このデータ間の関係性は、予め与えられたものであってもよい。
The divergence value vector calculation unit 122 calculates a divergence value vector representing the divergence from the relationship based on the relationship between the data. In the first embodiment, the divergence value vector calculation unit 122 calculates, based on the relationship between data, a divergence value vector representing a divergence from the relationship between data of detection data to be detected. Then, the divergence value vector calculation unit 122 calculates, based on the relationship between the data, a divergence value vector representing the divergence from the relationship between the comparison data to be compared. That is, when there is any relationship between the data, the difference value vector calculation unit 122 calculates a value indicating the difference from the relationship for the detection data and the comparison data. The divergence value vector calculation unit 122 may store the divergence value vector between the data in the divergence value
異常度計算部123は、検知データの乖離値ベクトルの、比較データの乖離値ベクトルの集合からの離散度合を計算する。具体的には、異常度計算部123は、検知データの乖離値ベクトルの、比較データの乖離値ベクトルの集合からの、空間的な距離や密度などに基づき、離散度合を計算する。この異常度計算部123が計算した離散度合は、異常を示す異常度として、異常判定部124(後述)における判定において用いられる。なお、異常度計算部123は、乖離値ベクトル記憶部131(後述)が記憶する乖離値ベクトルを用いて離散度合を計算してもよい。 The abnormality degree calculation unit 123 calculates the degree of discreteness of the divergence value vector of the detection data from the set of divergence value vectors of the comparison data. Specifically, the abnormality degree calculation unit 123 calculates the degree of discreteness based on the spatial distance, the density, and the like from the set of the divergent value vectors of the comparison data of the divergent value vector of the detected data. The degree of discreteness calculated by the abnormality degree calculating unit 123 is used in the determination in the abnormality determining unit 124 (described later) as the abnormality degree indicating the abnormality. Note that the abnormality degree calculation unit 123 may calculate the degree of discreteness using a divergence value vector stored in the divergence value vector storage unit 131 (described later).
異常判定部124は、異常度計算部123が計算した離散度合が所定の閾値を超えた場合に、検知データは異常であることを判定する。異常判定部124は、離散度合が所定の閾値以下である場合に、検知データは正常であることを判定する。異常判定部124による判定結果は、異常検知結果として、通信処理部11を介して、例えば、端末装置20に出力される。
The
記憶部13は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、異常検知装置10を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。記憶部13は、乖離値ベクトル計算部122が計算した乖離値ベクトルを記憶する乖離値ベクトル記憶部131を有する。
The
[処理対象のデータの例]
次に、異常検知装置10における処理対象のデータの例について説明する。図2は、異常検知装置10における処理対象のデータ構成の一例を示す図である。
[Example of data to be processed]
Next, an example of data to be processed in the abnormality detection device 10 will be described. FIG. 2 is a view showing an example of the data configuration of the processing target in the abnormality detection apparatus 10. As shown in FIG.
図2に示すように、例えば、検知データとして、「X1」〜「XN」というN種類のデータが与えられたとする。図2において、「xn m」は、n番目のデータのmにおける観測値である。添字の「m」は、観測された地点や時点を意味する。例えば、「X1」〜「XN」がユーザ「1」からユーザ「N」を示し、データの要素が商品「m」の購入の有無を表す場合、添字が等しいデータは、同一商品の購入の有無を意味する。或いは、「X1」〜「XN」がサーバ「1」からサーバ「N」のCPU使用率を示し、データの要素が時点「m」におけるCPU使用率を表す場合、添字が等しいデータは、観測時点が等しいことを意味する。 As shown in FIG. 2, for example, it is assumed that N types of data “X 1 ” to “X N ” are given as detection data. In FIG. 2, “x n m ” is an observation value at m of the n-th data. The subscript "m" means the observed point or time. For example, when “X 1 ” to “X N ” indicate user “N” from user “1” and the data element indicates the presence or absence of purchase of the product “m”, data having the same subscript is purchase of the same product Means the presence or absence of Alternatively, if “X 1 ” to “X N ” indicate the CPU utilization of server “1” to server “N” and the data element represents the CPU utilization at time “m”, data with the same subscript is It means that observation time is equal.
[関係性推定部の処理]
関係性推定部121は、「X1」〜「XN」の間に成り立つ関係性を推定し、「X1」〜「XN」間の関係性を示すパラメータを算出する。
[Processing of relationship estimation unit]
The relationship estimating unit 121 estimates the relationship that holds between the "X 1" - "X N", calculates a parameter indicating the relationship between "X 1" - "X N".
この場合、関係性推定部121は、それを出力した機器等が正常な状態のデータ、言い換えると、異常な状態のデータを含まないデータを、パラメータ算出のために用いることが望ましい。正常な状態のデータであるか否かは、機器が正常であったことから判断してもよい。また、正常な状態のデータであるか否かは、データを見て、異常値に相当するものを含まないことなどを基に、人間が視認して判断してもよい。これは、異常判定部124での異常検知において、「正常と異なる」ことを「異常」とみなすという指標を用いるためである。さらに、関係性推定部121において、正常なデータのみを用いて、正常な状態のデータに成り立つ関係式を推定することで、異常検知の感度を向上させることが期待できる。
In this case, it is desirable that the relationship estimation unit 121 use, for parameter calculation, data in a normal state of the device or the like that has output the data, that is, data that does not include abnormal state data. Whether the data is normal or not may be determined from the fact that the device was normal. In addition, whether or not the data is in a normal state may be determined by visual recognition based on the fact that the data is not included and the data corresponding to the abnormal value is not included. This is because, in the abnormality detection in the
例えば、データ間の関係性が式として与えられているものの、パラメータに相当するものが未定である場合に、関係性推定部121は、このパラメータを推定する。具体的には、データXとデータYとの関係性が、「Y=aX+b」という単回帰であることは与えられているが、「a」及び「b」が不明な場合に、関係性推定部121は、与えられたデータを基に「a」及び「b」を推定する。 For example, although the relationship between data is given as a formula, when the thing equivalent to a parameter is undecided, the relationship estimation part 121 estimates this parameter. Specifically, although it is given that the relationship between data X and data Y is a simple regression "Y = aX + b", relationship estimation is made when "a" and "b" are unknown. The part 121 estimates "a" and "b" based on the given data.
また、関係性推定部121は、データ間の関係性として、例えば、「X1」〜「XN」のいずれかを目的変数、残りを説明変数とする重回帰式が与えられる場合、この重回帰式のパラメータを求める。また、関係性推定部121は、データ間の関係性として、「X1」〜「XN」の中から2組ずつを選択し、2組ごとに一方を目的変数とし、他方を説明変数とする単回帰式が与えられる場合、この単回帰式のパラメータを求める。 In addition, as the relationship between the data, for example, when the multiple regression equation in which one of “X 1 ” to “X N ” is an objective variable and the rest is an explanatory variable is given as the relationship between the data, Find the regression equation parameters. Further, the relationship estimation unit 121 selects two sets of “X 1 ” to “X N ” as the relationship between data, and sets one as an objective variable for each two sets, and the other as an explanatory variable. If a single regression equation is given, the parameters of this single regression equation are determined.
或いは、関係性推定部121は、データ間の関係性として、各「XN」が系列データであり、過去のデータから将来を予測する自己回帰式またはベクトル自己回帰式が与えられる場合、この自己回帰式またはベクトル自己回帰式のパラメータを求めてもよい。添え字の「1,2,…,m,…」に順序性がある場合、例えば、前述のサーバのCPU使用率がデータである例などの場合である。 Alternatively, in the case where each “X N ” is series data and an autoregressive equation or a vector autoregression equation for predicting the future from past data is given as the relationship between data, the relationship estimation unit 121 performs this autocorrelation. Parameters of regression equation or vector autoregression equation may be obtained. In the case where the suffixes “1, 2,..., M,...” Have orderness, for example, this is the case where the CPU utilization of the above-mentioned server is data.
また、データ間の関係性は、混合分布モデルでモデリングしてあってもよいし、より複雑な非線形な関係を表す式で示されたものであってもよい。例えば、何らかの確率分布を用いて、データ間の関係性を表してもよい。例えば、データ間の関係性が「K」個のクラスタを持つ、混合分布モデルにより表現される場合、関係性推定部121は、(1)式に示す関係式のパラメータを求める。 Further, the relationship between data may be modeled by a mixture distribution model, or may be represented by an equation representing a more complicated non-linear relationship. For example, some probability distribution may be used to represent the relationship between data. For example, when the relationship between data is expressed by a mixed distribution model having “K” number of clusters, the relationship estimation unit 121 obtains a parameter of the relational expression shown in equation (1).
なお、「X1」〜「XN」の間に成り立つ関係性が予め与えられている場合には、本実施の形態では、関係性推定部121の算出処理を省略することができる。 In the present embodiment, when the relationship that holds between “X 1 ” and “X N ” is given in advance, the calculation process of the relationship estimation unit 121 can be omitted.
[乖離値ベクトル計算部の処理]
続いて、乖離値ベクトル計算部122は、「X1」〜「XN」および「X1」〜「XN」の間に成り立つ関係性から、乖離値ベクトルを計算する。図3は、乖離値ベクトル計算部122が行う乖離値ベクトルの計算処理の例を示す図である。
[Process of deviation value vector calculation unit]
Subsequently, the divergence value vector calculation unit 122 calculates the divergence value vector from the relationship established between “X 1 ” to “X N ” and “X 1 ” to “X N ”. FIG. 3 is a diagram illustrating an example of calculation processing of the divergence value vector performed by the divergence value vector calculation unit 122.
図3に示す例では、乖離値ベクトルは、添字「m」ごとに計算されるものとしている。また、この例では、図3に示すデータ「X1」〜「XN」が与えられ、この「X1」〜「XN」の間に成り立つ関係性を、「F(X1,X2,・・・,XN)=0」としている。この例では、関係式が、「X1」〜「XN」のいずれかを目的変数、残りを説明変数とする重回帰式であることをイメージしている。 In the example shown in FIG. 3, the divergence value vector is calculated for each subscript "m". Further, in this example, data “X 1 ” to “X N ” shown in FIG. 3 are given, and the relationship established between “X 1 ” to “X N ” is “F (X 1 , X 2 ,..., X N ) = 0. In this example, it is assumed that the relational expression is a multiple regression that uses any one of “X 1 ” to “X N ” as a target variable and the rest as an explanatory variable.
具体的には、図3における「X1の乖離値」は、添字「m」における観測値「x1 m」と、「m」において観測されたデータから、関係性を用いて推定される「X1」の値「F(x1 m,x2 m,・・・,xN m)」と、の差である。また、「X2の乖離値」は、添字「m」における観測値「x2 m」と、「m」において観測されたデータから、関係性を用いて推定される「X2」の値「F(x1 m,x2 m,・・・,xN m)」と、の差である。乖離値ベクトル計算部122は、図3に示す計算処理を行うことによって、「X1」〜「XN」の各乖離値を計算する。そして、図3に示すように、乖離値ベクトル計算部122は、共通の添字「m」を持つ複数種類のデータから計算した乖離値を、乖離値ベクトルとして出力する。 Specifically, the “deviation value of X 1 ” in FIG. 3 is estimated using the relationship from the observed value “x 1 m ” at the subscript “m” and the data observed at “m” This is the difference between the value of X 1 and the value “F (x 1 m , x 2 m ,..., X N m )”. Further, "divergence values of X 2" is the observed value of the subscript "m" and "x 2 m" from the observed data in the "m", the value of "X 2" which is estimated using the relationship " F (x 1 m, x 2 m, ···, x N m) and "a difference. The difference value vector calculation unit 122 calculates each difference value of “X 1 ” to “X N ” by performing the calculation process shown in FIG. 3. Then, as shown in FIG. 3, the divergence value vector calculation unit 122 outputs, as a divergence value vector, a divergence value calculated from a plurality of types of data having the common subscript “m”.
また、データ間の関係性は「F(X1,X2,・・・,XN)=0」のように、全てのデータに対して一つの関係性が与えられる場合だけでなく、データの組に対して与えられる場合もある。例えば、「X1」〜「XN」の中から2組ずつを選択し、2組ごとに一方を目的変数、他方を説明変数とする単回帰式で関連性が与えられる場合である。そこで、図4を参照して、この場合における乖離値ベクトルの計算処理について説明する。図4は、乖離値ベクトル計算部122が行う乖離値ベクトルの計算処理の他の例を示す図である。 Also, the relationship between data is not limited to the case where one relationship is given to all data, such as “F (X 1 , X 2 ,..., X N ) = 0”, but also data It may be given for a set of For example, in the case where two sets are selected from “X 1 ” to “X N ”, and relevance is given by a single regression equation in which one set is an objective variable and the other set is an explanatory variable. Then, with reference to FIG. 4, the calculation process of the divergence value vector in this case is demonstrated. FIG. 4 is a diagram showing another example of the calculation processing of the divergence value vector performed by the divergence value vector calculation unit 122. As shown in FIG.
図4に示すように、例えば、「X1のX2から見た乖離値」は、添字「m」における観測値「x1 m」と、「m」において観測されたデータから、「X1」と「X2」の関係性「F12」を用いて推定される「X1」の値「F12(x1 m,x2 m)」と、の差を乖離値である。乖離値ベクトル計算部122は、図4に示す計算処理を行うことによって、「X1のX2から見た乖離値」〜「XN−1のXNから見た乖離値」を計算する。そして、乖離値ベクトル計算部122は、図4に示すように、共通の添字「m」を持つ複数種類のデータから計算した乖離値を、乖離値ベクトルとして出力する。 As shown in FIG. 4, for example, "divergence values viewed from X 2 of X 1 'is the observed value of the subscript" m "and" x 1 m ", from the observed data in the" m "," X 1 "and" relationship between X 2 "," the value of "X 1" which is estimated using the F 12 "" F 12 (x 1 m, x 2 m) ", the difference of a deviation value. The divergence value vector calculation unit 122 calculates “a divergence value viewed from X 2 of X 1 ” to “a divergence value viewed from X N of X N −1 ” by performing the calculation process shown in FIG. 4. Then, as shown in FIG. 4, the divergence value vector calculation unit 122 outputs, as a divergence value vector, divergence values calculated from a plurality of types of data having a common subscript “m”.
なお、図4では特に指定していないが、データ間の関係性が一部の組み合わせに対してのみ成り立つと考えてもよい。例えば、「X1」と「X2」の間は、相関係数が大きく相関関係が認められるのに対し、「X1」と「X3」の間は、相関係数が小さく相関関係が認められないような場合である。このような場合、乖離値ベクトル計算部122は、関係性が認められるものに対してのみ乖離値を計算すればよい。 Although not particularly specified in FIG. 4, it may be considered that the relationship between data holds for only some combinations. For example, correlation coefficient is large between “X 1 ” and “X 2 ”, while correlation coefficient is small between “X 1 ” and “X 3 ”. It is a case that is not recognized. In such a case, the divergence value vector calculation unit 122 may calculate the divergence value only for those for which the relationship is recognized.
また、データ間の関係性が(1)式に示す混合分布モデルで表現される場合には、乖離値ベクトル計算部122は、以下の(2)式で定義される各クラスタへの帰属度「mk」を計算する。帰属度が大きい程、そのクラスタへの帰属度が高い、すなわち、そのクラスタの中心点に近いと言える。言い換えると、帰属度が大きい程、そのクラスタへの乖離度が小さいと言える。 Further, when the relationship between data is expressed by the mixed distribution model represented by equation (1), the divergence value vector calculation unit 122 determines the degree of belonging to each cluster defined by the following equation (2). Calculate m k ". The larger the degree of attribution, the higher the degree of attribution to the cluster, that is, the closer to the center point of the cluster. In other words, it can be said that the greater the degree of attribution, the smaller the degree of deviation from that cluster.
この場合、乖離値ベクトル計算部122は、(2)式を用いて計算した帰属度「mk」に対し、乖離値ベクトルとして、「(m1,m2,・・・,mK)」を求める。或いは、乖離値ベクトル計算部122は、(2)式を用いて計算した帰属度「mk」に対し、乖離値ベクトルとして、「−logΣπkP(x|θk)」のように、負の対数尤度を計算してもよい。なお、この場合には、乖離値ベクトルは、1次元となる。 In this case, the divergence value vector calculation unit 122 sets “(m 1 , m 2 ,..., M K )” as the divergence value vector with respect to the degree of attribution “m k ” calculated using equation (2). Ask for Alternatively, the divergence value vector calculation unit 122 may use a negative value vector such as “−logΣπ k P (x | θ k )” as the divergence value vector with respect to the degree of membership “m k ” calculated using equation (2). The log likelihood of may be calculated. In this case, the divergence value vector is one-dimensional.
乖離値ベクトル計算部122は、上記に示したような計算処理を行うことによって、データ間の関係性に基づいて検知データ及び比較データのデータ間の関係性からの乖離を表す乖離値ベクトルを計算する。なお、一般的には、比較データは複数存在する。もちろん、比較データは、一つでもよい。 By performing the calculation processing as described above, the divergence value vector calculation unit 122 calculates the divergence value vector representing the divergence from the relationship between the detection data and the comparison data based on the relationship between the data. Do. Generally, a plurality of comparison data exist. Of course, the comparison data may be one.
[異常度計算部の処理]
次に、異常度計算部123の処理について説明する。異常度計算部123は、乖離値ベクトル計算部122が、検知データから計算した乖離値ベクトルと、比較データから計算した乖離値ベクトルと、を用いて、離散度合を計算する。
[Processing of abnormality degree calculation unit]
Next, the process of the abnormality degree calculator 123 will be described. The abnormality degree calculation unit 123 calculates the degree of discreteness using the divergence value vector calculated from the detection data and the divergence value vector calculated from the comparison data by the divergence value vector calculation unit 122.
具体的には、異常度計算部123は、検知データの乖離値ベクトルが、比較データの乖離値ベクトルの集合から、空間的にどのくらい離れているかを計算する。この場合、異常度計算部123は、例えばk−NN(k−nearest neighbor method)法を用いて、検知データの乖離値ベクトルが、比較データの乖離値ベクトルの集合から、空間的にどのくらい離れているかを計算する。図5を参照して、異常度計算部123が、k−NN法を用いて、離散度合を計算した場合について説明する。 Specifically, the abnormality degree calculation unit 123 calculates how far apart the deviation value vector of the detection data is from the set of the deviation value vectors of the comparison data. In this case, using the k-NN (k-nearest neighbor method) method, for example, the anomalous degree calculating unit 123 determines how far away the divergence value vector of the detection data is from the set of divergence value vectors of comparison data. Calculate if A case where the abnormality degree calculator 123 calculates the degree of discreteness using the k-NN method will be described with reference to FIG.
図5は、異常度計算部123による異常度計算処理を説明する図である。図5は、乖離値ベクトルの次元1〜次元3に対し、乖離値ベクトル計算部122が比較データ及び検知データから計算した各乖離値ベクトルをプロットした図である。図5において、原点近傍に位置する白丸のデータ群R1は、比較データから計算された乖離値ベクトルに対応する。点P1は、検知データから計算した乖離値ベクトルに対応する(図5の(1)参照)。k−NN法では、検知データの乖離値に対応する点P1から見て、k番目に近い点Pkまでの距離を、異常度(離散度合)として計算する(図5の(2)参照)。ここで、「k」は、パラメータであり、ヒューリスティックスを用いて設定される。
FIG. 5 is a diagram for explaining abnormality degree calculation processing by the abnormality degree calculation unit 123. As shown in FIG. FIG. 5 is a diagram in which each divergence value vector calculated by the divergence value vector calculation unit 122 from the comparison data and the detection data is plotted with respect to the
また、異常度計算部123は、検知データの乖離値ベクトルが、比較データの乖離値ベクトルの集合から、どのくらい空間的に疎な位置に存在するかを計算してもよい。この場合、異常度計算部123は、例えば、LOFを用いて検知データの乖離値ベクトルが、比較データの乖離値ベクトルの集合から、空間的にどのくらい離れているかを計算する。 Further, the abnormality degree calculating unit 123 may calculate how much the spatially separated position of the difference value vector of the detection data exists from the set of difference value vectors of the comparison data. In this case, the abnormality degree calculation unit 123 calculates, for example, how far the divergence value vector of the detected data is spatially separated from the set of the divergence value vectors of the comparison data using the LOF.
図6は、異常度計算部123による異常度計算処理の他の例を説明する図である。LOFは、空間内での局所的密度を計算する手法である。図6の白丸のデータ群R1は、比較データの乖離値ベクトルに対応する点の集まりであり、点P1は、検知データから計算した乖離値ベクトルに対応する点である(図6の(1)参照)。 FIG. 6 is a diagram for explaining another example of abnormality degree calculation processing by the abnormality degree calculation unit 123. As shown in FIG. LOF is a method of calculating local density in space. The white circle data group R1 in FIG. 6 is a group of points corresponding to the divergence value vector of the comparison data, and the point P1 is a point corresponding to the divergence value vector calculated from the detection data ((1) in FIG. 6). reference).
具体的には、検知データの乖離値(点P1)から見て、k番目までに近い点Pkまでの距離の平均を、それらk番目の点Pkから見てm番目までに近い点Pmまでの距離の平均で割った値を異常度(離散度合)として計算する(図6の(2)参照)。例えば、データ群R1の密度の高い位置に、検知データの乖離値ベクトルに対応する点P1があった場合には、点P1からk番目に近い点Pkまでの距離の平均が小さくなり、点Pkから点Pmまでの距離も小さくなるため、離散度合は小さくなる。一方、データ群R1の密度の低い位置に点P1があった場合には、点P1からk番目に近い点Pkまでの距離の平均が大きくなるため、離散度合は小さくなる。なお、「k」及び「m」は、パラメータであり、ヒューリスティックスを用いて設定される。 Specifically, the average of the distances to the points Pk close to the k-th point from the deviation value (point P1) of the detected data is the points to the point Pm near the m-th points from the k-th point Pk A value divided by the average of the distances is calculated as an abnormality (discrete degree) (see (2) in FIG. 6). For example, if the point P1 corresponding to the divergence value vector of the detection data is at a high density position of the data group R1, the average of the distance from the point P1 to the point Pk closest to the kth becomes small, and the point Pk Since the distance from the point to point Pm also decreases, the degree of discreteness decreases. On the other hand, when the point P1 is at a position where the density of the data group R1 is low, the average of the distance from the point P1 to the point Pk closest to the k-th becomes large, so the degree of discreteness decreases. Note that “k” and “m” are parameters and are set using heuristics.
また、比較データは、正常な状態のデータに限定することで、後述する異常判定部124の異常検知精度を高めることができる。「正常な状態のデータ」の定義は前述の通りである。また、正常な状態のデータのみを比較データとした場合、乖離値ベクトルは、空間的には局所に集中することに注意しておく。例えば図5及び図6において説明した方法を用いて乖離値ベクトルを計算すると、空間的には原点近傍に乖離値ベクトルが集中する。また、(2)式に示す帰属度「mk」に対し、乖離値ベクトルを(m1,m2,・・・,mK)で定義した場合は、乖離値ベクトルは、空間的にはK個のクラスタに集中する。
Further, by limiting the comparison data to data in a normal state, it is possible to enhance the abnormality detection accuracy of the
また、検知データと比較データとが別々に与えられる場合がある。例えば、ある特定の過去1日分の複数のサーバのCPU使用率を比較データとして異常検知装置10に届き、検知データは、異常検知装置10の運用時に逐次的に届くような場合である。このような場合、比較データの乖離値ベクトルを、検知対象のデータが届くたびに計算し直すことは計算リソース上、効率的ではない。そこで、記憶部13の乖離値ベクトル記憶部131は、このような場合に比較データの乖離値を再計算する必要がないように、比較データの乖離値ベクトルを記憶しておく。乖離値ベクトル記憶部131を利用する場合、異常度計算部123は、検知データの乖離値ベクトルと、乖離値ベクトル記憶部131が記憶する乖離値ベクトルと、を比較する。
Also, detection data and comparison data may be provided separately. For example, the CPU usage rates of a plurality of servers for a specific past one day are delivered to the abnormality detection apparatus 10 as comparison data, and the detection data is sequentially delivered when the abnormality detection apparatus 10 is operated. In such a case, it is not efficient in terms of computational resources to recalculate the difference value vector of the comparison data each time the data to be detected arrives. Therefore, the difference value
そして、乖離値ベクトル記憶部131を利用する場合も、比較データとして、正常な状態のデータから計算した乖離値ベクトルのみを記憶させることで、異常検知精度を高めることができる。
Also in the case where the divergence value
[異常判定部の処理]
異常判定部124は、異常度計算部123が計算した離散度合が所定の閾値を超えた場合に、検知データは異常であることを判定する。異常判定部124は、離散度合が所定の閾値以下である場合に、検知データは正常であることを判定する。
[Process of abnormality determination unit]
The
ここで、判定の基準となる閾値は、予め設定されたものである。或いは、テストデータがある場合は、テストデータ中の特定のデータ、すなわち、異常が発生した際のデータにおける異常度を閾値として設定してもよい。または、テストデータにおける異常度が、適当な確率分布に従うと考え、その上位5%或いは上位1%などの値を閾値として設定してもよい。異常判定部124による判定結果は、異常検知結果として、通信処理部11を介して、例えば、端末装置20に出力される。
Here, the threshold that is the reference of the determination is a preset one. Alternatively, when there is test data, a specific data in the test data, that is, an abnormality degree in data when an abnormality occurs may be set as a threshold. Alternatively, it may be considered that the degree of abnormality in the test data follows an appropriate probability distribution, and a value such as the top 5% or the top 1% may be set as the threshold. The determination result by the
[異常検知処理の流れ]
次に、異常検知装置10が実行する異常検知処理について説明する。図7は、異常検知装置10が実行する異常検知処理の処理手順を示すフローチャートである。
[Flow of anomaly detection processing]
Next, the abnormality detection process performed by the abnormality detection device 10 will be described. FIG. 7 is a flowchart showing the procedure of the abnormality detection process performed by the abnormality detection apparatus 10.
まず、異常検知装置10では、関係性推定部121が、入力されたデータに対して、データ間の関係性を推定し、データ間の関係性を示すパラメータを算出する関係性推定処理を行う(ステップS1)。関係性推定部121は、それを出力した機器等が正常な状態のデータ、言い換えると、異常な状態のデータを含まないデータを、パラメータ推定のために用いる。データ間に成り立つ関係性が予め与えられている場合には、本ステップS1を省略することができる。 First, in the abnormality detection device 10, the relationship estimation unit 121 performs a relationship estimation process of estimating the relationship between the data with respect to the input data, and calculating a parameter indicating the relationship between the data (see FIG. Step S1). The relationship estimation unit 121 uses, for parameter estimation, data of a normal state of the device or the like that has output the data, that is, data that does not include abnormal state data. This step S1 can be omitted if the relationship established between the data is given in advance.
そして、乖離値ベクトル計算部122は、データ間の関係性に基づいて、検知対象である検知データの集合及び比較データの集合におけるデータ間の乖離値ベクトルを計算する乖離値ベクトル計算処理を実行する(ステップS2)。ここで、乖離値ベクトル計算部122は、比較データが予め与えられている場合、該比較データの集合におけるデータ間の乖離値ベクトルを計算して、乖離値ベクトル記憶部131に記憶する。
Then, the divergence value vector calculation unit 122 executes the divergence value vector calculation processing for calculating the divergence value vector between the data in the set of detection data to be detected and the comparison data based on the relationship between the data. (Step S2). Here, when the comparison data is given in advance, the difference value vector calculation unit 122 calculates a difference value vector between data in the set of comparison data, and stores the difference value vector in the difference value
続いて、異常度計算部123は、検知データの乖離値ベクトルの、比較データの乖離値ベクトルの集合からの離散度合を、異常度として計算する異常度計算処理を行う(ステップS3)。なお、異常度計算部123は、比較データの乖離値ベクトルが予め計算されて乖離値ベクトル記憶部131に記憶されている場合、乖離値ベクトル記憶部131から比較データの乖離値ベクトルを読み出して、比較データの乖離値ベクトルの集合を取得する。
Subsequently, the abnormality degree calculation unit 123 performs abnormality degree calculation processing for calculating the degree of discreteness of the deviation value vector of the detection data from the set of deviation value vectors of the comparison data as the abnormality degree (step S3). When the difference value vector of the comparison data is calculated in advance and stored in the difference value
そして、異常判定部124は、異常度計算部123が計算した離散度合を基に、検知データが異常であるか否かを判定する異常判定処理を行う(ステップS4)。この場合、異常判定部124は、異常度計算部123が計算した離散度合が所定の閾値を超えた場合に、検知データは異常であることを判定する。一方、異常判定部124は、離散度合が所定の閾値以下である場合に、検知データは正常であることを判定する。異常判定部124は、判定結果を異常検知結果として、通信処理部11を介して端末装置20に出力し、異常検知処理を終了する。
Then, the
[異常検知処理の具体例]
図8は、実施の形態1の異常検知処理を説明する図である。図8は、データとして、X及びYの組が与えられたとして、座標平面上にその組をプロットしたものである。図8の白丸は、正常な状態の比較データに対応する。また、点Pbは、相関関係を維持したままで、それまでには存在していなかった値をとった場合の例である。点Prは、相関関係が崩れた場合の例である。また、正常である比較データ(図8の白丸)を基に、X及びYの関係性として、直線Ltで示される「Y=aX+b」という単回帰が与えられている。
[Specific example of abnormality detection processing]
FIG. 8 is a diagram for explaining the abnormality detection process according to the first embodiment. FIG. 8 is a plot of the set on the coordinate plane, given the set of X and Y as data. The white circles in FIG. 8 correspond to comparison data in a normal state. In addition, the point Pb is an example in the case where the correlation is maintained and a value which has not existed until then is taken. The point Pr is an example when the correlation is broken. Moreover, based on the comparison data (white circle in FIG. 8) that is normal, a simple regression “Y = aX + b” indicated by a straight line Lt is given as the relationship between X and Y.
図8の示す点Pbは、直線Lt上に位置し、正常である場合に成り立つ相関関係を維持しているため、正常であることが想定される。ここで、従来用いられていたLOFでは、データ間の関係性を考慮しておらず、白丸の密度が低い点に存在する点Pb及び点Prは、いずれも異常であると検知される。 The point Pb shown in FIG. 8 is assumed to be normal because it is located on the straight line Lt and maintains the correlation established when it is normal. Here, in the LOF conventionally used, the relationship between the data is not taken into consideration, and the point Pb and the point Pr existing at the point where the density of the white circles is low are detected as abnormal.
これに対し、本実施の形態1では、データ間の関係性に基づいて、検知データの集合におけるデータ間の乖離値ベクトルと、比較データの集合におけるデータ間の乖離値ベクトルと、を計算し、検知データの乖離値ベクトルの、比較データの乖離値ベクトルの集合からの離散度合を、異常度として異常判定を行う。 On the other hand, in the first embodiment, the difference value vector between data in the set of detection data and the difference value vector between data in the set of comparison data are calculated based on the relationship between the data, An abnormality determination is performed with the degree of discrepancies from the set of deviation value vectors of comparison data as the deviation value vector of detection data as the abnormality degree.
例えば、点Pbが検知データである場合を例とする。この点Pbは、直線Lt上に位置するため、点Pbに示す「X,Y」は、直線Ltで示される「Y=aX+b」の関係を有していると言える。したがって、この点Pbに示す「X,Y」について、直線Ltで示される「Y=aX+b」に対する乖離値ベクトルを計算し、その乖離値ベクトルの、正常である比較データ(白丸)の乖離値ベクトルの集合からの離散度合を計算すると、ほぼ0となり、点Pbは正常であることを検知できる。 For example, the case where point Pb is detection data is taken as an example. Since this point Pb is located on the straight line Lt, it can be said that "X, Y" shown at the point Pb has a relationship of "Y = aX + b" shown by the straight line Lt. Therefore, for "X, Y" shown at this point Pb, the divergence value vector for "Y = aX + b" shown by straight line Lt is calculated, and the divergence value vector of the comparison data (white circle) of the divergence value vector that is normal. When the discrete degree from the set of is calculated, it becomes almost 0, and it can be detected that the point Pb is normal.
一方、点Prが検知データである場合について説明する。この点Prは、直線Ltから離れているため、点Prに示す「X,Y」は、「Y=aX+b」の関係を有していないと言える。したがって、この点Prに示す「X,Y」の、直線Ltで示される「Y=aX+b」に対する乖離値ベクトルを計算し、その乖離値ベクトルの、正常である比較データ(白丸)の乖離値ベクトルの集合からの離散度合を計算すると、その値は大きくなり、Prは異常であることを検知できる。 On the other hand, the case where point Pr is detection data will be described. Since this point Pr is far from the straight line Lt, it can be said that "X, Y" shown at the point Pr does not have the relationship of "Y = aX + b". Therefore, the divergence value vector for "Y = aX + b" indicated by straight line Lt of "X, Y" shown at this point Pr is calculated, and the divergence value vector of the comparison data (white circle) which is normal for that divergence value vector. If we calculate the degree of discreteness from the set of, the value becomes large and we can detect that Pr is anomalous.
このように、異常検知装置10は、乖離値ベクトルという概念を導入し、検知対象のデータの乖離値ベクトルと、正常である比較データの乖離値ベクトルの集合との空間的な距離や密度に基づき離散度合(異常度)を計算し、検知データの異常の有無を判定する。したがって、異常検知装置10は、データ間に相関がある場合に、相関に乗っているが、比較データの集合から外れた、正常であると想定できるデータ(例えば、点Pb)を、正常であると検知することができる。 Thus, the anomaly detection apparatus 10 introduces the concept of a divergence value vector, and based on the spatial distance and density of the divergence value vector of the data to be detected and the set of divergence value vectors of comparison data that is normal. The discreteness degree (abnormality degree) is calculated to determine the presence or absence of abnormality in the detected data. Therefore, when there is a correlation between the data, the abnormality detection device 10 is normal when the data (for example, the point Pb) which is on the correlation but deviates from the set of comparison data and can be assumed to be normal is normal. Can be detected.
また、図14や図15のように、データ間に単なる相関関係でない、複雑な関係性が見られる場合であっても、データ間の関係性からの乖離値ベクトルという概念により、異常検知を精度よく実行することができる。 Also, as shown in FIG. 14 and FIG. 15, even in the case where complex relationships between data are not found to be mere correlations, the accuracy of abnormality detection can be achieved by the concept of the difference value vector from the relationship between the data. It can be done well.
[実施の形態1の効果]
上記のように、実施の形態1では、乖離値ベクトルという概念を導入し、データ間の関係性に基づいて計算した、検知データの乖離値ベクトルと、正常である比較データの乖離値ベクトルの集合との空間的な距離や密度に基づき離散度合(異常度)を計算し、検知データの異常の有無を判定するため、データ間の関係性に基づいた検知対象データの異常検知を精度よく実行することができる。
[Effect of Embodiment 1]
As described above, in the first embodiment, the concept of the difference value vector is introduced, and a set of difference value vectors of detected data and a set of difference value vectors of comparison data that are normal calculated based on the relationship between data. To calculate the degree of abnormality (the degree of abnormality) based on the spatial distance and density of the object and to determine the presence or absence of the abnormality in the detection data, accurately execute the abnormality detection of the detection target data based on the relationship between the data be able to.
[実施の形態2]
次に、実施の形態2について説明する。実施の形態2では、離散度合として、検知データ及び比較データの乖離値ベクトルに基づいたマハラノビス距離を計算し、異常の有無を判定する。なお、実施の形態2に係る異常検知装置は、図1に示す異常検知装置10と同等の構成を有する。
Second Embodiment
Next, the second embodiment will be described. In the second embodiment, the Mahalanobis distance based on the difference value vector of the detection data and the comparison data is calculated as the discrete degree, and the presence or absence of abnormality is determined. The abnormality detection apparatus according to the second embodiment has the same configuration as the abnormality detection apparatus 10 shown in FIG.
実施の形態2では、実施の形態1と同様に、乖離値ベクトル計算部122が、データ間の関係性に基づいて、検知対象である検知データの集合におけるデータ間の乖離値ベクトルを計算する。そして、乖離値ベクトル計算部122は、比較データの集合におけるデータ間の乖離値ベクトルを計算する。なお、実施の形態1と同様に、乖離値ベクトル計算部122は、比較データが予め与えられている場合、該比較データの集合におけるデータ間の乖離値ベクトルを計算して、乖離値ベクトル記憶部131に記憶してもよい。 In the second embodiment, as in the first embodiment, the divergence value vector calculation unit 122 calculates the divergence value vector between data in the set of detection data to be detected based on the relationship between the data. Then, the divergence value vector calculation unit 122 calculates a divergence value vector between data in the set of comparison data. As in the first embodiment, when the comparison data is given in advance, the divergence value vector calculation unit 122 calculates the divergence value vector between the data in the set of comparison data, and calculates the divergence value vector storage unit. It may be stored in 131.
そして、異常度計算部123は、比較データの乖離値ベクトルが多次元正規分布に従うと仮定し、それらの乖離値ベクトルの平均と共分散行列とを計算する。続いて、異常度計算部123は、(3)式で定義されるマハラノビス距離を計算し、このマハラノビス距離を離散度合(異常度)として出力する。 Then, assuming that the difference value vectors of the comparison data follow the multidimensional normal distribution, the abnormality degree calculation unit 123 calculates an average and a covariance matrix of the difference value vectors. Subsequently, the abnormality degree calculation unit 123 calculates the Mahalanobis distance defined by the equation (3), and outputs this Mahalanobis distance as a discrete degree (abnormality degree).
異常判定部124は、異常度計算部123が計算したマハラノビス距離が一定の閾値を超えた場合に、検知データは異常であることを判定する。一方、異常判定部124は、異常度計算部123が計算したマハラノビス距離が一定の閾値以下である場合には、検知データは正常であることを判定する。なお、本実施の形態2では、比較データの乖離値ベクトルが多次元正規分布に従うと仮定しており、この場合、乖離値ベクトルのマハラノビス距離は近似的にx二乗分布に従うため、x二乗分布に基づき閾値を決定することができる。このような方法は、ホテリングのT2検定と呼ばれている(「竹内啓,統計学辞典 P112,東洋経済新聞社,1989」参照)。
The
[実施の形態2の効果]
このように、実施の形態2においては、離散度合として、マハラノビス距離を計算し、計算したマハラノビス距離と所定の閾値との比較結果によって、異常の有無を判定する。マハラノビス距離は、データ間の関係性に基づく検知データ及び比較データの乖離値ベクトルを基に計算されたものであるため、実施の形態2は、実施の形態1と同様に、データ間の関係性に基づいた検知対象データの異常検知を精度よく実行することができる。
[Effect of Embodiment 2]
As described above, in the second embodiment, the Mahalanobis distance is calculated as the degree of discreteness, and the presence or absence of abnormality is determined based on the comparison result of the calculated Mahalanobis distance and a predetermined threshold. Since the Mahalanobis distance is calculated based on the difference value vector of the detection data and the comparison data based on the relationship between the data, in the second embodiment, the relationship between the data is the same as the first embodiment. It is possible to accurately execute abnormality detection of detection target data based on.
[実施の形態3]
次に、実施の形態3について説明する。この実施の形態3に係る異常検知装置は、図1に示す異常検知装置10と同等の構成を有する。
Third Embodiment
Next, the third embodiment will be described. The abnormality detection device according to the third embodiment has the same configuration as the abnormality detection device 10 shown in FIG.
また、実施の形態1と同様に、乖離値ベクトル計算部122は、データ間の関係性に基づいて、検知対象である検知データの集合におけるデータ間の乖離値ベクトルを計算する。そして、乖離値ベクトル計算部122は、比較データの集合におけるデータ間の乖離値ベクトルを計算する。なお、実施の形態1と同様に、乖離値ベクトル計算部122は、比較データが予め与えられている場合、該比較データの集合におけるデータ間の乖離値ベクトルを計算して、乖離値ベクトル記憶部131に記憶してもよい。そこで、次に、異常度計算部123の処理を説明する。 Further, as in the first embodiment, the divergence value vector calculation unit 122 calculates the divergence value vector between data in the set of detection data to be detected based on the relationship between the data. Then, the divergence value vector calculation unit 122 calculates a divergence value vector between data in the set of comparison data. As in the first embodiment, when the comparison data is given in advance, the divergence value vector calculation unit 122 calculates the divergence value vector between the data in the set of comparison data, and calculates the divergence value vector storage unit. It may be stored in 131. Therefore, next, the process of the abnormality degree calculator 123 will be described.
[異常度計算部の処理]
実施の形態3では、異常度計算部123は、さらに、One-class Support Vector Machine(以下「One-class SVM」と略す。詳しくは、「B. Scholkopf, J. C. Platt, J. Shawe-Taylor, A. J. Smola, and R. C. Williamson, “Estimating the Support of a High-Dimensional Distribution”, Neural Computation, 13(7):1443-1471, 2001.」参照。)の概念に基づいて、比較データの乖離値ベクトルの集合を含む領域を推定する。
[Processing of abnormality degree calculation unit]
In the third embodiment, the abnormality degree calculation unit 123 is further abbreviated as One-class Support Vector Machine (hereinafter referred to as "One-class SVM". For details, see "B. Scholkopf, JC Platt, J. Shawe-Taylor, AJ. Based on the concept of “Smola, and RC Williamson,“ Estimating the Support of High-Dimensional Distribution ”, Neural Computation, 13 (7): 1443-1471, 2001. Estimate the area that contains
具体的に、図9を参照して、離散度合(異常度)を求める処理について説明する。図9は、実施の形態3に係る異常度計算処理を説明する図である。図9は、データの乖離値ベクトルを所定の高次元空間に写像したものである。 Concretely, with reference to FIG. 9, the process which calculates | requires a discrete degree (abnormality degree) is demonstrated. FIG. 9 is a diagram for explaining abnormality degree calculation processing according to the third embodiment. FIG. 9 is a map of deviation value vectors of data in a predetermined high-dimensional space.
異常度計算部123は、One-class SVMに基づき、正常データである比較データの乖離値ベクトルを、高次元空間(図9ではφの次元1及び次元2)に写像する。そして、異常度計算部123は、写像した比較データの乖離値ベクトルに対応する点の、原点からの距離(マージン)が最大化するような平面(超平面)を求める。この平面は、図9の例では、超平面Leとして示している。この超平面Leは、正常である比較データの乖離値ベクトルの集合の境界に対応するものであり、実際には、写像した比較データの乖離値ベクトルを示す点は、超平面Leよりも原点側でない方に位置する。
Based on the One-class SVM, the degree-of-abnormality calculation unit 123 maps the difference value vector of the comparison data, which is normal data, to a high-dimensional space (
続いて、異常度計算部123は、検知対象データの乖離値ベクトルを、比較データに対して写像した高次元空間と同じ高次元空間に写像する。例えば、図9に示すように、写像した検知データの乖離値ベクトルを示す各点は、超平面Leから見て、原点側にある群R2と、原点側にない群R3とに分けられる。異常度計算部123は、写像した検知データの乖離値ベクトルに対応する点が、超平面Leから見て原点側にあるか否かを基に、離散度合(異常度)を計算する。 Subsequently, the abnormality degree calculation unit 123 maps the difference value vector of the detection target data into the same high-dimensional space as the high-dimensional space mapped to the comparison data. For example, as shown in FIG. 9, each point indicating the difference value vector of the mapped detection data is divided into a group R2 on the origin side and a group R3 not on the origin side when viewed from the hyperplane Le. The degree-of-abnormality calculation unit 123 calculates the degree of discreteness (degree of abnormality) based on whether the point corresponding to the difference value vector of the mapped detection data is on the origin side as viewed from the hyperplane Le.
そこで、異常度計算部123における計算処理を、図10を参照して、説明する。図10は、実施の形態3に係る異常度計算処理を説明する図である。まず、比較データの乖離値ベクトルを「e1,e2,・・・,eM」とする。この比較データの乖離値ベクトルに対し、図10に示す式G((A)式参照)を、(B)式及び(C)式に示す条件下で最小化する最小化問題を解く。なお、記号「<,>」は内積を表す。 Therefore, the calculation process in the abnormality degree calculation unit 123 will be described with reference to FIG. FIG. 10 is a diagram for explaining abnormality degree calculation processing according to the third embodiment. First, the difference value vector of the comparison data is set to “e 1 , e 2 ,..., E M ”. With respect to the difference value vector of the comparison data, a minimization problem is solved in which the equation G (see equation (A) shown in FIG. 10) is minimized under the conditions shown in equations (B) and (C). The symbol "<,>" represents an inner product.
この問題では、超平面として、各データの(「φ(ベクトルem)」の距離を、「dm」としたときに、最も小さいdmを最大化する超平面を求めようとしている。言い換えると、最も超平面に近いデータまでの距離を最大化する、超平面のパラメータ「ベクトルw」と「ρ」を求めようとしている。 This problem, as hyperplane, the distance of each data ( "phi (vector e m)", when the "d m", and attempts to find a hyperplane that maximizes the smallest d m. In other words And we try to find the hyperplane parameters "vector w" and "p" which maximize the distance to the data closest to the hyperplane.
この最小化問題は、以下の(4)式に示す「L」を最小化するLagrangeの未定乗数法により解くことができる。この(4)式の1行目は、Gそのものであり、(4)式の2行目については、図10の(B)式に示す制約条件を反映し、(4)式の3行目については、図10の(C)式に示す制約条件を反映する。 This minimization problem can be solved by Lagrange's undetermined multiplier method which minimizes “L” shown in the following equation (4). The first line of the equation (4) is G itself, and the second line of the equation (4) reflects the constraint shown in the equation (B) of FIG. 10, and the third line of the equation (4) 10 reflects the constraint shown in the equation (C) of FIG.
図11は、実施の形態3に係る異常度計算処理及び異常判定処理を説明する図である。異常度計算部123は、異常データの乖離値ベクトルを「e’」としたとき、図11に示す式f(e’)によって、検知データの乖離値ベクトル「e’」に対する異常度を計算する。式f(e’)は、(4)式で求めたパラメータを適用し、比較データの乖離値ベクトル「em」を高次元空間に写像した点と、検知データの乖離値ベクトル「e’」を高次元空間に写像した点との距離に基づいた異常度を計算するものである。異常度計算部123は、この式f(e’)を用いた計算を行うことによって、写像した検知データの乖離値ベクトルに対応する点が、超平面Leから見て原点側にあるか否かを示す異常度を求めることができる。 FIG. 11 is a diagram for explaining abnormality degree calculation processing and abnormality determination processing according to the third embodiment. The abnormality degree calculation unit 123 calculates the abnormality degree with respect to the deviation value vector “e ′” of the detection data by the expression f (e ′) shown in FIG. 11 when the deviation value vector of the abnormality data is “e ′”. . Formula f (e ') is (4) by applying the parameter obtained by the formula, and that the mapping divergence value vector of the comparison data to "e m' in high-dimensional space, divergence value vector of the detection data" e '" To calculate the degree of anomaly based on the distance between the point mapped to the high-dimensional space. Whether the point corresponding to the difference value vector of the mapped detection data is on the origin side with respect to the hyperplane Le or not by performing calculation using this equation f (e ′) Can be determined.
このように、異常度計算部123は、上述のOne-class SVMに従い、写像した検知データの乖離値ベクトルを示す点が、平面(例えば、超平面Le)から見て原点側にあるか、或いは、平面から見て原点側にないかを、式f(e’)を用いて計算する。 As described above, according to the above-described One-class SVM, the abnormality degree calculation unit 123 determines whether the point indicating the difference value vector of the mapped detection data is on the origin side as viewed from the plane (for example, the hyperplane Le) or Using the equation f (e '), it is calculated whether or not it is on the origin side as viewed from the plane.
[異常判定部の処理]
そして、実施の形態3では、異常判定部124は、写像した検知データの乖離値ベクトルを示す点が、平面から見て原点側にある場合には、該検知データは異常であると判定する。一方、異常判定部124は、写像した検知データの乖離値ベクトルを示す点が、平面から見て原点側にない場合には、正常であると判定する。例えば、異常判定部124は、図9に示す写像した検知データの乖離値ベクトルを示す各点のうち、超平面Leから見て、原点側にある群R2については、検知データは異常であると判定する。一方、異常判定部124は、超平面Leから見て、原点側にない群R3については、検知データは正常であると判定する(図9の枠B1参照)。
[Process of abnormality determination unit]
Then, in the third embodiment, when the point indicating the deviation value vector of the mapped detection data is on the origin side as viewed from the plane, the
ここで、異常判定部124は、検知データに対し式(e’)で求めた異常度と、前述の未定乗数法((4)式)によって求めた超平面に対応するパラメータ(ρチルダ)と、を比較することによって、検知データの異常の有無を判定する。すなわち、図11に示すように、異常判定部124は、検知データについての異常度f(e’)が、(4)式からパラメータ(ρチルダ)よりも小さい場合には、検知データが超平面Leよりも原点側にあると判断して、該検知データは異常であると判定する。一方、異常判定部124は、検知データについての異常度f(e’)が、パラメータ(ρチルダ)よりも大きい場合には、検知データが超平面Leよりも原点側にないと判断して、正常であると判定する。
Here, the
[実施の形態3の効果]
このように、実施の形態3においては、比較データの乖離値ベクトルを高次元空間に写像して原点からの距離が最大化する超平面を求める。そして、実施の形態3では、検知データの乖離値ベクトルを高次元空間に写像した場合に該写像した乖離値ベクトルに対応する点が、超平面から見て原点側にあるか否かを基に異常度を計算して、異常の有無を判定する。すなわち、実施の形態3においても、実施の形態1と同様に、データ間の関係性に基づいて計算した、検知データの乖離値ベクトルと、正常である比較データの乖離値ベクトルの集合との距離によって、検知データの異常の有無を判定しているため、データ間の関係性に基づいた検知対象データの異常検知を精度よく実行することができる。
[Effect of Third Embodiment]
As described above, in the third embodiment, the difference value vector of the comparison data is mapped to the high-dimensional space to obtain a hyperplane at which the distance from the origin is maximized. Then, in the third embodiment, when the divergence value vector of the detection data is mapped to the high-dimensional space, based on whether or not the point corresponding to the mapped divergence value vector is on the origin side with respect to the hyperplane. The degree of abnormality is calculated to determine the presence or absence of an abnormality. That is, also in the third embodiment, as in the first embodiment, the distance between the difference value vector of the detected data and the set of difference value vectors of the comparison data which is normal, calculated based on the relationship between the data. Since the presence or absence of abnormality of detection data is determined by this, abnormality detection of detection object data based on the relationship between data can be performed accurately.
[実施形態のシステム構成について]
図1に示した異常検知装置10の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、異常検知装置10の機能の分散および統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。
[About the system configuration of the embodiment]
Each component of the abnormality detection device 10 illustrated in FIG. 1 is functionally conceptual, and does not necessarily have to be physically configured as illustrated. That is, the specific form of the distribution and integration of the functions of the abnormality detection apparatus 10 is not limited to that illustrated, but all or a part thereof may be functionally or physically in any unit depending on various loads, usage conditions, etc. Can be distributed or integrated.
また、異常検知装置10においておこなわれる各処理は、全部または任意の一部が、CPU(Central Processing Unit)およびCPUにより解析実行されるプログラムにて実現されてもよい。また、異常検知装置10においておこなわれる各処理は、ワイヤードロジックによるハードウェアとして実現されてもよい。 In addition, each process performed in the abnormality detection apparatus 10 may be realized by all or any part of a CPU (Central Processing Unit) and a program analyzed and executed by the CPU. Further, each process performed in the abnormality detection apparatus 10 may be realized as hardware by wired logic.
また、実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述および図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。 Further, among the processes described in the embodiment, all or part of the processes described as being automatically performed can be manually performed. Alternatively, all or part of the processing described as being performed manually may be performed automatically by a known method. In addition, the information including the above-described and illustrated processing procedures, control procedures, specific names, various data and parameters can be appropriately changed unless otherwise specified.
[プログラム]
図12は、プログラムが実行されることにより、異常検知装置10が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
[program]
FIG. 12 is a diagram illustrating an example of a computer in which the abnormality detection device 10 is realized by executing a program. The
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
The
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、異常検知装置10の各処理を規定するプログラムは、コンピュータ1000により実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、異常検知装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
The hard disk drive 1090 stores, for example, an
また、上述した実施の形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
The setting data used in the process of the above-described embodiment is stored as
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN、WAN等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
The
以上、本発明者によってなされた発明を適用した実施の形態について説明したが、本実施の形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施の形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。 Although the embodiment to which the invention made by the inventor is applied has been described above, the present invention is not limited by the description and the drawings that form a part of the disclosure of the present invention according to the present embodiment. That is, all other embodiments, examples, operation techniques and the like made by those skilled in the art based on the present embodiment are included in the scope of the present invention.
10 異常検知装置
11 通信処理部
12 制御部
13 記憶部
121 関係性推定部
122 乖離値ベクトル計算部
123 異常度計算部
124 異常判定部
131 乖離値ベクトル記憶部
DESCRIPTION OF SYMBOLS 10
Claims (14)
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算する異常度計算部と、
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定する異常判定部と、
を有することを特徴とする異常検知装置。 Based on the relationship between the data, the difference between the observed value of the detected data to be detected and the value estimated from the observed value based on the relationship between the data represented by the multiple regression equation A divergence value representing a divergence that is the difference between the representing value value vector representing, the observation value of the comparison data to be compared, and the value estimated from the observation value based on the relationship between the data represented by the multiple regression equation A deviation value vector calculation unit that calculates a vector,
An abnormality degree calculation unit that calculates the degree of discreteness of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as the degree of abnormality.
An abnormality determination unit that determines that the detection data is abnormal when the degree of discreteness exceeds a predetermined threshold;
An abnormality detection device characterized by having.
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算する異常度計算部と、 An abnormality degree calculation unit that calculates the degree of discreteness of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as the degree of abnormality.
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定する異常判定部と、An abnormality determination unit that determines that the detection data is abnormal when the degree of discreteness exceeds a predetermined threshold;
を有することを特徴とする異常検知装置。 An abnormality detection device characterized by having.
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算する異常度計算部と、 An abnormality degree calculation unit that calculates the degree of discreteness of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as the degree of abnormality.
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定する異常判定部と、An abnormality determination unit that determines that the detection data is abnormal when the degree of discreteness exceeds a predetermined threshold;
を有することを特徴とする異常検知装置。 An abnormality detection device characterized by having.
前記異常度計算部は、前記乖離値ベクトル記憶部が記憶する乖離値ベクトルを用いて前記離散度合を計算することを特徴とする請求項1〜3のいずれか一つに記載の異常検知装置。 The apparatus further includes a divergence value vector storage unit that stores the divergence value vector calculated by the divergence value vector calculation unit,
The abnormality detection device according to any one of claims 1 to 3, wherein the abnormality degree calculation unit calculates the degree of discreteness using a divergence value vector stored in the divergence value vector storage unit.
前記乖離値ベクトル計算部は、前記関係性推定部が算出した前記データ間の関係性を示すパラメータを前記データ間の関係性に適用し、前記乖離値ベクトルを計算することを特徴とする請求項1〜4のいずれか一つに記載の異常検知装置。 The information processing apparatus further includes a relationship estimation unit that estimates a relationship between the data and calculates a parameter indicating the relationship between the data,
The said difference value vector calculation part is characterized by applying the parameter which shows the relationship between the said data which the said relationship estimation part calculated to the relationship between the said data, and calculating the said difference value vector. The abnormality detection device according to any one of 1 to 4 .
データ間の関係性に基づいて、検知対象である検知データの、観測値と、重回帰式で表わされるデータ間の関係性に基づいて観測値から推定される値と、の差である乖離を表す乖離値ベクトルと、比較対象である比較データの、観測値と、重回帰式で表わされるデータ間の関係性に基づいて観測値から推定される値と、の差である乖離を表す乖離値ベクトルと、を計算する工程と、
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算する工程と、
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定する工程と、
を含んだことを特徴とする異常検知方法。 An anomaly detection method executed by an anomaly detection apparatus that detects the presence or absence of an anomaly with respect to a set of detection data to be detected,
Based on the relationship between the data, the difference between the observed value of the detected data to be detected and the value estimated from the observed value based on the relationship between the data represented by the multiple regression equation A divergence value representing a divergence that is the difference between the representing value value vector representing, the observation value of the comparison data to be compared, and the value estimated from the observation value based on the relationship between the data represented by the multiple regression equation Calculating a vector, and
Calculating the degree of discrepancies of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as a degree indicating an abnormality;
Determining that the detection data is abnormal if the degree of discreteness exceeds a predetermined threshold;
An abnormality detection method characterized by including:
データ間の関係性に基づいて、検知対象である検知データの、観測値と、単回帰式で表わされるデータ間の関係性に基づいて観測値から推定される値と、の差である乖離を表す乖離値ベクトルと、比較対象である比較データの、観測値と、単回帰式で表わされるデータ間の関係性に基づいて観測値から推定される値と、の差である乖離を表す乖離値ベクトルと、を計算する工程と、 Based on the relationship between the data, the difference between the observed value of the detected data to be detected and the value estimated from the observed value based on the relationship between the data represented by the simple regression equation A divergence value representing a divergence that is the difference between the representing value value vector representing, the observation value of the comparison data to be compared, and the value estimated from the observation value based on the relationship between the data represented by the simple regression equation Calculating a vector, and
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算する工程と、 Calculating the degree of discrepancies of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as a degree indicating an abnormality;
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定する工程と、Determining that the detection data is abnormal if the degree of discreteness exceeds a predetermined threshold;
を含んだことを特徴とする異常検知方法。 An abnormality detection method characterized by including:
データ間の関係性に基づいて、検知対象である検知データの、観測値と、自己回帰式で表わされるデータ間の関係性に基づいて観測値から推定される値と、の差である乖離を表す乖離値ベクトルと、比較対象である比較データの、観測値と、自己回帰式で表わされるデータ間の関係性に基づいて観測値から推定される値と、の差である乖離を表す乖離値ベクトルと、を計算する工程と、 Based on the relationship between the data, the difference between the observed value of the detected data to be detected and the value estimated from the observed value based on the relationship between the data represented by the autoregressive equation A divergence value representing a divergence that is the difference between the representing value value vector representing, the observed value of the comparison data to be compared, and the value estimated from the observed value based on the relationship between the data represented by the autoregressive equation Calculating a vector, and
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算する工程と、 Calculating the degree of discrepancies of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as a degree indicating an abnormality;
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定する工程と、Determining that the detection data is abnormal if the degree of discreteness exceeds a predetermined threshold;
を含んだことを特徴とする異常検知方法。 An abnormality detection method characterized by including:
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算するステップと、
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定するステップと、
をコンピュータに実行させるための異常検知プログラム。 Based on the relationship between the data, the difference between the observed value of the detected data to be detected and the value estimated from the observed value based on the relationship between the data represented by the multiple regression equation A divergence value representing a divergence that is the difference between the representing value value vector representing, the observation value of the comparison data to be compared, and the value estimated from the observation value based on the relationship between the data represented by the multiple regression equation Calculating a vector, and
Calculating the degree of discrepancies of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as a degree indicating an abnormality;
Determining that the detection data is abnormal if the degree of discreteness exceeds a predetermined threshold;
An anomaly detection program to make a computer execute.
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算するステップと、 Calculating the degree of discrepancies of the deviation value vector of the detection data from the set of the deviation value vectors of the comparison data as a degree indicating an abnormality;
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定するステップと、Determining that the detection data is abnormal if the degree of discreteness exceeds a predetermined threshold;
をコンピュータに実行させるための異常検知プログラム。 An anomaly detection program to make a computer execute.
前記検知データの前記乖離値ベクトルの、前記比較データの前記乖離値ベクトルの集合からの離散度合を、異常を示す度合として計算するステップと、 Calculating the degree of discrepancies of the deviation value vector of the detection data from the set of deviation value vectors of the comparison data as a degree indicating an abnormality;
前記離散度合が所定の閾値を超えた場合に前記検知データは異常であることを判定するステップと、Determining that the detection data is abnormal if the degree of discreteness exceeds a predetermined threshold;
をコンピュータに実行させるための異常検知プログラム。 An anomaly detection program to make a computer execute.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016109033A JP6538615B2 (en) | 2016-05-31 | 2016-05-31 | Abnormality detection device, abnormality detection method and abnormality detection program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016109033A JP6538615B2 (en) | 2016-05-31 | 2016-05-31 | Abnormality detection device, abnormality detection method and abnormality detection program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017215765A JP2017215765A (en) | 2017-12-07 |
JP6538615B2 true JP6538615B2 (en) | 2019-07-03 |
Family
ID=60576967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016109033A Active JP6538615B2 (en) | 2016-05-31 | 2016-05-31 | Abnormality detection device, abnormality detection method and abnormality detection program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6538615B2 (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019244203A1 (en) * | 2018-06-18 | 2019-12-26 | 三菱電機株式会社 | Diagnostic device, diagnostic method and program |
KR102016967B1 (en) * | 2018-09-28 | 2019-10-21 | 유은영 | Method of processing vulnerability/risk through data correlation/association analysis of system information for system and processing the vulnerability/risk of system and apparatus therefor |
CN109375609B (en) * | 2018-10-18 | 2021-02-02 | 北京鼎力信安技术有限公司 | Abnormal attack detection method and device |
JP7238378B2 (en) * | 2018-12-17 | 2023-03-14 | 富士通株式会社 | Abnormality detection device, abnormality detection program, and abnormality detection method |
US11983072B2 (en) | 2019-01-16 | 2024-05-14 | Nec Corporation | Estimation apparatus, estimation method, and computer-readable storage medium |
JP7179663B2 (en) * | 2019-03-28 | 2022-11-29 | 三菱重工業株式会社 | PLANT MONITORING DEVICE, PLANT MONITORING METHOD, AND PROGRAM |
JP7387325B2 (en) * | 2019-08-01 | 2023-11-28 | 三菱重工業株式会社 | Plant monitoring device, plant monitoring method, and program |
JP7461798B2 (en) | 2020-05-29 | 2024-04-04 | 日鉄テックスエンジ株式会社 | Equipment monitoring support device, method, and program |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5533894B2 (en) * | 2011-05-17 | 2014-06-25 | 株式会社豊田中央研究所 | Outlier detection device, outlier detection method, program, and vehicle fault diagnosis system |
JP2015082190A (en) * | 2013-10-22 | 2015-04-27 | 日本電信電話株式会社 | Outlier detector, method, and program |
-
2016
- 2016-05-31 JP JP2016109033A patent/JP6538615B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017215765A (en) | 2017-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6538615B2 (en) | Abnormality detection device, abnormality detection method and abnormality detection program | |
CN105320727B (en) | Method for detecting anomalies in real-time sequences | |
US10339784B2 (en) | Method and system for monitoring sensor data of rotating equipment | |
WO2019174419A1 (en) | Method and device for predicting abnormal sample | |
US9727723B1 (en) | Recommendation system based approach in reducing false positives in anomaly detection | |
EP3113072B1 (en) | Methods and apparatuses for updating user authentication data | |
JP6585482B2 (en) | Device diagnostic apparatus and system and method | |
US11573877B2 (en) | Distributed architecture for fault monitoring | |
JP2019521422A (en) | Method, apparatus and computer readable medium for detecting abnormal user behavior related application data | |
TWI723476B (en) | Interpretation feature determination method, device and equipment for abnormal detection | |
EP2579210A1 (en) | Face feature-point position correction device, face feature-point position correction method, and face feature-point position correction program | |
US20190370982A1 (en) | Movement learning device, skill discriminating device, and skill discriminating system | |
JP6097517B2 (en) | Condition diagnosis method and condition diagnosis apparatus | |
US10068073B2 (en) | Verification device and control method for verifiction device, as well as computer program | |
US10567398B2 (en) | Method and apparatus for remote malware monitoring | |
Cheng et al. | A distribution‐free multivariate control chart for phase I applications | |
US11042880B1 (en) | Authenticating users in the presence of small transaction volumes | |
CN116107847B (en) | Multi-element time series data anomaly detection method, device, equipment and storage medium | |
US20180176108A1 (en) | State information completion using context graphs | |
JP2015184818A (en) | Server, model application propriety determination method and computer program | |
JP6930195B2 (en) | Model identification device, prediction device, monitoring system, model identification method and prediction method | |
JP7500980B2 (en) | Information processing device, information processing method, and information processing program | |
JP2010128674A (en) | Computer network, and apparatus, method, and program for detecting abnormality | |
CN111309993B (en) | Enterprise asset data portrayal generation method and system | |
JP2021149315A (en) | Information processing device, information processing method, and information processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180412 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190131 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190419 |
|
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: 20190604 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190606 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6538615 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |