[go: up one dir, main page]

JP2018169994A - Information processing apparatus, information processing method, and computer program - Google Patents

Information processing apparatus, information processing method, and computer program Download PDF

Info

Publication number
JP2018169994A
JP2018169994A JP2017183925A JP2017183925A JP2018169994A JP 2018169994 A JP2018169994 A JP 2018169994A JP 2017183925 A JP2017183925 A JP 2017183925A JP 2017183925 A JP2017183925 A JP 2017183925A JP 2018169994 A JP2018169994 A JP 2018169994A
Authority
JP
Japan
Prior art keywords
data
value
model
temporary
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017183925A
Other languages
Japanese (ja)
Other versions
JP6313516B1 (en
Inventor
田 貴 弘 永
Takahiro Nagata
田 貴 弘 永
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.)
Mitsubishi Research Institute Dcs Co Ltd
Original Assignee
Mitsubishi Research Institute Dcs Co Ltd
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 Mitsubishi Research Institute Dcs Co Ltd filed Critical Mitsubishi Research Institute Dcs Co Ltd
Application granted granted Critical
Publication of JP6313516B1 publication Critical patent/JP6313516B1/en
Publication of JP2018169994A publication Critical patent/JP2018169994A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】限定的なデータサンプリングにより学習用のデータ群の分布に偏りがあっても、外れ値を高精度に検知可能なモデルを構築する。【解決手段】本発明の実施形態に係る情報処理装置は、データ加工部と、学習部とを備える。前記データ加工部は、複数の対象装置の状態を表すN次元のデータ群を、複数のパターンで離散化する。前記学習部は、前記複数のパターンで前記データ群を離散化した複数の離散化データ群と、LOF(Local outlier factor)のパラメータKの複数の候補値とをそれぞれ1つずつ組み合わせて複数の仮モデルを生成し、前記データ群に基づき前記複数の仮モデルを評価することにより、前記複数の仮モデルからモデルを選択する。【選択図】図3To build a model capable of detecting an outlier with high accuracy even if the distribution of a learning data group is biased by limited data sampling. An information processing apparatus according to an embodiment of the present invention includes a data processing unit and a learning unit. The data processing unit discretizes an N-dimensional data group representing the states of a plurality of target devices with a plurality of patterns. The learning unit combines a plurality of discretized data groups obtained by discretizing the data group with the plurality of patterns, and a plurality of candidate values for a parameter K of LOF (Local outer factor), respectively, to generate a plurality of temporary data. By generating a model and evaluating the plurality of temporary models based on the data group, a model is selected from the plurality of temporary models. [Selection] Figure 3

Description

本発明の実施形態は、情報処理装置、情報処理方法およびコンピュータプログラムに関する。   Embodiments described herein relate generally to an information processing apparatus, an information processing method, and a computer program.

近年、CPU(Central Processing Unit)およびメモリなどの計算資源の技術が発展するとともに、ビッグデータ関連インフラが整備されてきている。また、データ収集基盤プログラム、リアルタイム処理基盤プログラム等の技術が整備され、さらにそれらがオープンソースソフトウェアとして誰もが使えるようになっている。
これらを受け、故障予兆の検知やセキュリティ侵入検知といった異常検知技術が今後強く求められる。
In recent years, technology for computing resources such as a CPU (Central Processing Unit) and a memory has been developed, and a big data-related infrastructure has been developed. In addition, technologies such as data collection infrastructure programs and real-time processing infrastructure programs have been established, and these can be used by anyone as open source software.
In response to these, anomaly detection technologies such as failure sign detection and security intrusion detection will be strongly required in the future.

異常検知技術のひとつとして、機械学習による外れ値検知がある。外れ値検知には、統計学を使った手法と、使わない手法がある。統計学を使った手法では、平均からのずれが、標準偏差を基準として一定以上離れた場合に、外れ値と認定するという手法が一般的である。しかし、この方法を使うには、対象データの分布が単峰性を持つことを仮定する必要がある。故障の予測やネットワーク不正侵入検知など、外れ値検知を活用したいシーンの多くでは、データが多変量、且つ、生成メカニズムが複雑であることが多く、常に単峰性を仮定することは難しい。   One of the abnormality detection techniques is outlier detection by machine learning. There are two methods for detecting outliers, one using statistics and the other not using it. In a method using statistics, a method is generally known in which a deviation from an average is recognized as an outlier when the standard deviation is a certain distance or more. However, to use this method, it is necessary to assume that the distribution of the target data is unimodal. In many scenes that use outlier detection, such as failure prediction and network intrusion detection, the data is often multivariate and the generation mechanism is complex, and it is difficult to always assume unimodality.

一方、統計学を用いない手法では、データ間の距離に基づく外れ値検知手法がある。この手法を、距離ベース外れ値検知と呼ぶ。距離ベース外れ値検知は、単峰性が仮定できないデータに対しても適用することができる。最も有名な距離ベース外れ値検知アルゴリズムとして、K−近傍法が知られている。しかしながら、K−近傍法では、データ分布に格差(取得データ内におけるデータ密度の格差)がある場合に、検知基準を適切に設定できないという欠点がある。   On the other hand, in a method that does not use statistics, there is an outlier detection method based on the distance between data. This method is called distance-based outlier detection. Distance-based outlier detection can also be applied to data that cannot assume unimodality. The K-neighbor method is known as the most famous distance-based outlier detection algorithm. However, the K-neighbor method has a drawback that the detection standard cannot be set appropriately when there is a difference in data distribution (a difference in data density in the acquired data).

空間内においてデータ分布の格差がある場合にも有効な距離ベース外れ値検知のアルゴリズムとして、LOF(Local outlier factor)がある。LOFは、教師なし学習アルゴリズムのひとつであり、通常、学習データとして正常データのみを用いる。しかし、LOFは、機械学習であるため、機械学習手法の抱える問題のひとつである過学習の問題がある。   LOF (Local Outer Factor) is an effective distance-based outlier detection algorithm even when there is a difference in data distribution in the space. LOF is one of unsupervised learning algorithms, and normally only normal data is used as learning data. However, since LOF is machine learning, there is an overlearning problem that is one of the problems of the machine learning method.

過学習への対策技術として、正則化という手法がある。しかしながら、正則化は、回帰や分類など、入力データセットと出力値との間の関係を「関数」として学習するタイプの機械学習にのみ適用可能である。LOFは、学習により関数を生成するタイプの機械学習ではないため、LOFに正則化を適用することはできない。   As a countermeasure technique for over-learning, there is a method of regularization. However, regularization is applicable only to machine learning of the type that learns the relationship between input data sets and output values as “functions”, such as regression and classification. Since LOF is not a type of machine learning that generates a function by learning, regularization cannot be applied to LOF.

https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm(k-nearest neighbors algorithm)https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm (k-nearest neighbors algorithm) http://www.dbs.ifi.lmu.de/Publikationen/Papers/LOF.pdf(LOF: Identifying Density-Based Local Outliers)http://www.dbs.ifi.lmu.de/Publikationen/Papers/LOF.pdf (LOF: Identifying Density-Based Local Outliers) http://www.keihirose.com/material/392-399_hirose.pdf(スパースモデリングとモデル選択)http://www.keihirose.com/material/392-399_hirose.pdf (sparse modeling and model selection)

本発明は、限定的なデータサンプリングにより学習用のデータ群の分布に偏りがあっても、高精度に外れ値を検知することを可能にするモデルを構築可能な情報処理装置、情報処理方法およびコンピュータプログラムを提供する。   The present invention relates to an information processing apparatus, an information processing method, and an information processing apparatus capable of constructing a model capable of detecting an outlier with high accuracy even when the distribution of a learning data group is biased by limited data sampling Provide a computer program.

本発明の実施形態に係る情報処理装置は、データ加工部と、学習部とを備える。前記データ加工部は、複数の対象装置の状態を表すN次元のデータ群を、複数のパターンで離散化する。前記学習部は、前記複数のパターンで前記データ群を離散化した複数の離散化データ群と、LOF(Local outlier factor)のパラメータKの複数の候補値とをそれぞれ1つずつ組み合わせて複数の仮モデルを生成し、前記データ群に基づき前記複数の仮モデルを評価することにより、前記複数の仮モデルからモデルを選択する。   An information processing apparatus according to an embodiment of the present invention includes a data processing unit and a learning unit. The data processing unit discretizes an N-dimensional data group representing the states of a plurality of target devices with a plurality of patterns. The learning unit combines a plurality of discretized data groups obtained by discretizing the data group with the plurality of patterns, and a plurality of candidate values for a parameter K of LOF (Local outer factor), respectively, to generate a plurality of temporary data. By generating a model and evaluating the plurality of temporary models based on the data group, a model is selected from the plurality of temporary models.

LOFの説明図。Explanatory drawing of LOF. LOFの説明図。Explanatory drawing of LOF. 本発明の実施形態に係る情報処理システムのブロック図。1 is a block diagram of an information processing system according to an embodiment of the present invention. 図3のシステムの動作シーケンス図。The operation | movement sequence diagram of the system of FIG. 各監視対象装置から収集したデータ例を示す図。The figure which shows the example of data collected from each monitoring object apparatus. 図5のデータを正規化した例を示す図。The figure which shows the example which normalized the data of FIG. 図6のデータを、複数の離散化パターンのそれぞれで離散化した例を示す図。The figure which shows the example which discretized the data of FIG. 6 by each of several discretization patterns. 離散化処理の説明図。Explanatory drawing of a discretization process. 仮モデルごとに計算したスコアの標準偏差の例を示す図。The figure which shows the example of the standard deviation of the score calculated for every temporary model. 仮モデルごとに計算した識別率を示す図。The figure which shows the identification rate calculated for every temporary model. 監視装置のブロック図。The block diagram of a monitoring apparatus. 本実施形態に係る情報処理装置のハードウェア構成例のブロック図。The block diagram of the hardware structural example of the information processing apparatus which concerns on this embodiment.

以下、図面を参照しながら、本発明の実施形態について説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

本実施形態は、LOF(Local outlier factor)による機械学習において、現実的な学習データ数(サンプル数)に基づき、高い精度で外れ値を検知可能とするモデル(LOFモデル)、すなわち、誤検知の極めて少ないモデルを学習することを特徴の1つとする。   In this embodiment, in machine learning using LOF (Local Outer Factor), a model (LOF model) that can detect an outlier with high accuracy based on the actual number of learning data (number of samples), that is, erroneous detection. One of the features is learning an extremely small number of models.

以下、LOF(Local outlier factor)の概要と、本発明者が本発明をなすに至った経緯について説明する。   Hereinafter, the outline of LOF (Local Outer Factor) and the background to which the present inventor has made the present invention will be described.

図1に、多数のデータを複数次元空間にプロットした図を示す。黒いドット(点)が、プロットされたデータを表す。ここでは、説明のため、2次元を想定するが、3次元以上でもかまわない。データ集団Cとデータ集団Cが存在し、さらに、これらのデータ集団から離れた位置にデータOとデータOが存在する。データ集団Cの密度は、データ集団Cの密度より高く、全体のデータ分布で見ると、データの密度が偏っているといえる。データ集団Cとデータ集団Cはともに正常データであり、データOとデータO共に外れ値であるとする。人間の目で見ると、データOとデータO共に外れ値であることが容易に分かるが、これを自動で認識しようとする場合、単純には実現できない。 FIG. 1 shows a diagram in which a large number of data are plotted in a multidimensional space. Black dots (dots) represent the plotted data. Here, for explanation, two dimensions are assumed, but three or more dimensions may be used. A data group C 1 and a data group C 2 exist, and further, data O 2 and data O 1 exist at positions away from these data groups. The density of the data group C 2 is higher than the density of the data group C 1 , and it can be said that the density of data is biased when viewed from the overall data distribution. The data group C 1 and the data group C 2 are both normal data, and the data O 1 and the data O 2 are both outliers. From the human eye, it is easy to see that both the data O 1 and the data O 2 are outliers, but this cannot be simply realized when trying to recognize this automatically.

図1のデータ群を対象に、距離ベース外れ値検知(例えばK−近傍法)を行うことを考える。この場合、データ集団Cから見てデータOが外れ値となるような基準(閾値)を設定すると、データ集団Cに比べて密度が低いデータ集団Cに属する個々のデータは、この基準に照らすと、全て外れ値とみなされてしまう。逆に、データ集団Cから見てデータOが外れ値となるような基準を設定してしまうと、データOは、データ集団Cと距離が近いと判断され、正常データとみなされてしまう。 Consider performing distance-based outlier detection (for example, the K-neighbor method) for the data group in FIG. In this case, setting a reference (threshold value) as data O 2 is outliers when viewed from the data population C 2, each data belonging to the data group C 1 density is lower than the data group C 2, the All of them are considered outliers in light of the standards. On the contrary, if a reference is set such that the data O 1 is an outlier as viewed from the data group C 1 , the data O 2 is determined to be close to the data group C 2 and is regarded as normal data. End up.

このように、データが生成されるメカニズムが本質的に異なるために空間内で正常データの分布(密度)に格差がある場合、K−近傍法等では、検知基準を適切に設定できず、外れ値を正しく検出できなくなる場合がある。このような場合においても、外れ値を正しく検知可能とするアルゴリズムがLOFである。   In this way, if the distribution (density) of normal data in the space is disparate because the mechanism by which data is generated is essentially different, the detection criteria cannot be properly set by the K-neighbor method, etc. The value may not be detected correctly. Even in such a case, LOF is an algorithm that allows outliers to be detected correctly.

図2は、LOFのアルゴリズムを説明するための図である。正常データであるデータ集団Cと、データPとが、複数次元空間(本例では2次元空間)にプロットされている。この図に基づき、LOFにおける基礎的な概念である「K距離」について説明する。   FIG. 2 is a diagram for explaining the LOF algorithm. Data group C, which is normal data, and data P are plotted in a multidimensional space (in this example, a two-dimensional space). Based on this figure, the “K distance”, which is a basic concept in LOF, will be described.

ある点に注目し、周囲の点を、注目点から近い順に数えていくとする。このとき、K番目に近い点(近傍点)までの距離をK距離と呼ぶ。Kは、LOFのパラメータ情報であり、注目点に対する近傍点の個数を定める。パラメータKは、注目点を中心とする球(円)に入る点数の閾値(MinPts:a minimum number of points)であるとも言える。   Let's say that we focus on a certain point and count surrounding points in order from the point of interest. At this time, the distance to the Kth closest point (neighboring point) is called the K distance. K is LOF parameter information and determines the number of neighboring points with respect to the point of interest. It can be said that the parameter K is a threshold value (MinPts: a minimum number of points) for entering the sphere (circle) around the target point.

図2の点Pに着目し、K=3とすると、図のdmaxが、点PにとってのK距離となる。なお、dminは、点Pから最も近い点までの距離である。点Pを中心とする半径Kの距離の球の領域を考えると、その中に点が3つ入っている。点Pに関する密度(局所到達可能密度)は、一例として、点Pから上記の3つの点までの距離の平均の逆数により計算できる。図には、点Pを中心とする半径Kの距離の球(2次元球、すなわち円)が描かれている。もし点Pが外れ値であれば、K距離は長くなるため、球の体積が大きくなり、密度は低くなることが想定される。 Focusing on the point P in FIG. 2 and assuming K = 3, d max in the figure is the K distance for the point P. D min is the distance from the point P to the nearest point. Considering an area of a sphere having a radius K and centering on the point P, there are three points. As an example, the density related to the point P (local reachable density) can be calculated by the reciprocal of the average of the distances from the point P to the above three points. In the figure, a sphere (two-dimensional sphere, that is, a circle) having a radius K and a center at the point P is drawn. If the point P is an outlier, the K distance will be long, so the volume of the sphere will be large and the density will be low.

ここで、点PのK距離圏内に存在する3つの点についても同様に、K距離を求める。図には、これら3つの点のそれぞれを中心とする半径Kの距離の球(円)が描かれている。
これら3つの点のそれぞれに関する密度も計算する。密度の計算は、上記同様に、3つの点のそれぞれについて、K距離圏内の3つの点までの距離の平均の逆数を計算することで行う。これら3つの点は外れ値ではないため、これら3つの点に関する密度はいずれも高くなることが想定される。なお、これら3つの点のそれぞれについてdmaxとdminを計算した場合に、これらのうち最も大きなものがimax、最も小さなものがiminである。
Here, the K distance is similarly obtained for three points existing within the K distance range of the point P. In the figure, a sphere (circle) having a radius of K around each of these three points is drawn.
The density for each of these three points is also calculated. Similarly to the above, the density is calculated by calculating the reciprocal of the average of the distances to the three points within the K distance range for each of the three points. Since these three points are not outliers, it is assumed that the density for these three points will all be high. When d max and d min are calculated for each of these three points, i max is the largest of these, and i min is the smallest.

ここで、点Pの外れ度合いを、以下の式で算出されるスコアによって評価する。

Figure 2018169994
もし、点Pが3つの点と同じ集団に属していれば、点PのK距離圏の密度は、3つの点それぞれのK距離圏の密度と同程度となり、上記スコアは1または1に近い値となる。一方、点Pが外れ値であれば、点PのK距離圏の密度は、3つの点それぞれのK距離圏の密度に比べて小さくなるため、スコアは1より十分大きくなる。1より大きい閾値を設定し、スコアが閾値より大きければ、点Pは外れ値、スコアが閾値以下であれば、点Pは外れ値でない(正常データ)であると判断できる。この際に用いる閾値は、操作者が評価時に適宜設定すればよい。あるいは、閾値を、事前に定めておき、評価時にこの値を用いてもよい。 Here, the degree of deviation of the point P is evaluated by a score calculated by the following equation.
Figure 2018169994
If the point P belongs to the same group as the three points, the density of the K distance sphere of the point P is almost the same as the density of the K distance sphere of each of the three points, and the score is close to 1 or 1. Value. On the other hand, if the point P is an outlier, the density of the K distance zone of the point P is smaller than the density of the K distance zone of each of the three points, so the score is sufficiently larger than 1. If a threshold value greater than 1 is set and the score is greater than the threshold value, it can be determined that the point P is an outlier, and if the score is less than or equal to the threshold value, the point P is not an outlier (normal data). The threshold used at this time may be appropriately set by the operator at the time of evaluation. Alternatively, a threshold value may be determined in advance, and this value may be used at the time of evaluation.

上述したLOFによれば、空間内でデータの分布(密度)に本質的な格差がある場合でも、外れ値を高い精度で検出できる。しかしながら、LOFは機械学習であるため、過学習の問題がある。LOFにおける過学習とは、本来正常のはずのデータが、現状得られているデータ分布から見ると外れ値に見えてしまうことである。これは、限られたデータサンプリングにおいて、データがたまたまある領域に集中してしまうと、LOFの利点が逆に弊害となり、そこから若干離れた領域は、本来正常な領域であっても、スコアが高くなってしまうことに起因する。このような偶発的なデータ分布の格差は、十分なデータサンプルを集めることで解消されるものである。しかしながら、多次元空間では、次元数の増加に伴い、爆発的に体積が増加する。そのため、空間内全体においてデータの揺らぎに影響を受けないほどデータを集めることは、容易でない。   According to the LOF described above, outliers can be detected with high accuracy even when there is an essential disparity in the distribution (density) of data in space. However, since LOF is machine learning, there is an overlearning problem. Over-learning in LOF means that data that should be normal appears to be an outlier when viewed from the currently obtained data distribution. This is because, in limited data sampling, if the data happens to be concentrated in a certain area, the advantage of LOF is adversely affected. Even if it is a normal area, the score is slightly distant from that area. This is due to the high price. Such an accidental disparity in data distribution can be eliminated by collecting sufficient data samples. However, in a multidimensional space, the volume increases explosively as the number of dimensions increases. Therefore, it is not easy to collect data so as not to be affected by data fluctuations in the entire space.

そこで、本実施形態は、LOF(Local outlier factor)による機械学習において、現実的なデータサンプル数に基づき、高精度に外れ値を検知できるモデルの学習を実現しようとするものである。   Therefore, the present embodiment is intended to realize learning of a model capable of detecting an outlier with high accuracy based on a realistic number of data samples in machine learning using LOF (Local Outer Factor).

図3は、本実施形態に係る情報処理システムの全体構成を示す図である。図3の情報処理システムは、情報処理装置10と、複数の監視対象装置(以下、対象装置)20と、監視装置30とを備える。情報処理装置10は、ネットワーク40を介して、複数の対象装置20および監視装置30と接続されている。ネットワーク40は、有線ネットワークでも、無線ネットワークでも、これらのハイブリッドのネットワークであってもかまわない。情報処理装置10と対象装置20とを接続するネットワークと、情報処理装置10と監視装置30とを接続するネットワークが物理的に同一でも、異なってもかまわない。   FIG. 3 is a diagram illustrating an overall configuration of the information processing system according to the present embodiment. The information processing system in FIG. 3 includes an information processing device 10, a plurality of monitoring target devices (hereinafter, target devices) 20, and a monitoring device 30. The information processing device 10 is connected to a plurality of target devices 20 and monitoring devices 30 via a network 40. The network 40 may be a wired network, a wireless network, or a hybrid network of these. The network connecting the information processing apparatus 10 and the target apparatus 20 and the network connecting the information processing apparatus 10 and the monitoring apparatus 30 may be physically the same or different.

情報処理装置10は、大きく、学習段階と、判定段階との2つの動作を実行する。学習段階では、情報処理装置10は、複数の対象装置20のそれぞれからデータを収集し、収集したデータを学習データとして用いて、外れ値を検知するためのモデルを構築する。判定段階では、情報処理装置10は、各対象装置20からデータを受信し、受信したデータが外れ値であるかを、モデルに基づき判定する。外れ値である場合は、情報処理装置10は、監視装置30に、外れ値と判断されたデータおよび当該データの発生元の対象装置に関する情報を送信する。以下、このような本システムについてさらに詳細に説明する。   The information processing apparatus 10 performs two operations, that is, a learning stage and a determination stage. In the learning stage, the information processing device 10 collects data from each of the plurality of target devices 20, and uses the collected data as learning data to construct a model for detecting outliers. In the determination stage, the information processing device 10 receives data from each target device 20, and determines whether the received data is an outlier based on the model. In the case of an outlier, the information processing apparatus 10 transmits data regarding the data determined to be an outlier and information related to the target device from which the data is generated to the monitoring apparatus 30. Hereinafter, the present system will be described in more detail.

複数の対象装置20のそれぞれは、情報処理装置10による監視対象となる装置である。対象装置20は、例えば、計算機能を備えたコンピュータ装置、ネットワーク機器、ビルや工場等の設備機器、および、家庭内の家電機器などである。コンピュータ装置の例として、デスクトップ型パーソナルコンピュータ(PC)、ノート型PC、移動体端末(スマートフォン、タブレット端末、携帯電話など)などがある。設備機器の例として、空調機器や照明機器などがある。家電機器の例として、空調機器、照明機器、TVなどがある。ネットワーク機器の例として、ルータ、LAN(Local Area Network)スイッチ、アクセスポイントなどがある。ここで列挙した以外に、ウェアラブルデバイスなど、他にも様々な装置が考えられる。複数の対象装置20のそれぞれが、1つのLANスイッチが備える複数のポートのそれぞれに対応してもよい。以下の説明において、複数の対象装置20はいずれも同じ種類の装置であるとする。   Each of the plurality of target devices 20 is a device to be monitored by the information processing device 10. The target device 20 is, for example, a computer device having a calculation function, a network device, equipment equipment such as a building or factory, and household electrical appliances. Examples of the computer device include a desktop personal computer (PC), a notebook PC, a mobile terminal (smart phone, tablet terminal, mobile phone, etc.) and the like. Examples of equipment include air conditioning equipment and lighting equipment. Examples of home appliances include air conditioning equipment, lighting equipment, and TV. Examples of network devices include routers, LAN (Local Area Network) switches, and access points. In addition to those listed here, various other devices such as wearable devices are conceivable. Each of the plurality of target devices 20 may correspond to each of a plurality of ports included in one LAN switch. In the following description, it is assumed that the plurality of target devices 20 are all the same type of device.

複数の対象装置20のそれぞれは、データ測定部21と、データ送信部22とを備える。   Each of the plurality of target devices 20 includes a data measurement unit 21 and a data transmission unit 22.

データ測定部21は、対象装置20の状態を測定することにより、対象装置20の状態を表す複数の特徴量(第1の特徴量〜第Nの特徴量)を取得する。データ測定部21は、取得した複数の特徴量(第1の特徴量〜第Nの特徴量)を含むデータを、メモリ等の記憶部(図示せず)に格納する。特徴量は、対象装置20の測定値に基づく値である限り、何でもよい。一例として、特徴量は、測定値そのものでもよいし、測定値の統計値(平均、最大値、最小値、標準偏差など)でもよいし、測定値に基づき対象装置20を分類したときのカテゴリ(例えば温度を測定した場合の高温、中温、低温のカテゴリなど)を表す値でもよい。または特徴量は、異なる種類の測定値間の演算値(例えば電流と電圧とを乗じた電力)でもよいし、その他の値でもよい。以下では、特徴量が測定値の場合を例に説明を行うが、測定値を特徴量と読み替えることで、特徴量が、測定値以外の値の場合に対しても、本発明は実施可能である。   The data measurement unit 21 acquires a plurality of feature amounts (first feature amount to Nth feature amount) representing the state of the target device 20 by measuring the state of the target device 20. The data measurement unit 21 stores data including a plurality of acquired feature amounts (first feature amount to Nth feature amount) in a storage unit (not shown) such as a memory. The feature amount may be anything as long as it is a value based on the measurement value of the target device 20. As an example, the feature value may be a measurement value itself, or may be a statistical value of the measurement value (average, maximum value, minimum value, standard deviation, etc.), or a category when the target device 20 is classified based on the measurement value ( For example, it may be a value representing a category of high temperature, medium temperature, low temperature, etc. when temperature is measured. Alternatively, the feature amount may be a calculated value between different types of measurement values (for example, power obtained by multiplying current and voltage), or may be another value. In the following, the case where the feature value is a measurement value will be described as an example. However, the present invention can be implemented even when the feature value is a value other than the measurement value by replacing the measurement value with the feature value. is there.

ここで、データ測定部21が測定する値の例として、コンピュータ装置の場合、CPUの稼働率、通信特性値(通信量(送信量、受信量)、通信のエラー率(送信エラー率、受信エラー率)、平均スループットなど)、ストレージ装置に対するデータの読み出しまたは書き込み量などがある。空調機器の場合、運転状態(オン、オフなど)、温度、湿度などがある。照明機器の場合、動作状態(オン、オフなど)、照度などがある。測定は、センサを用いて行ってもよいし、CPU(具体的にはCPUで動作するアプリケーションまたはOS(オペレーティングシステム))が計算した値を取得することで行ってもよい。CPUからの値の取得は、データ測定部21が、CPUに値の取得要求を行い、CPUから値を取得することで行ってもよいし、CPUが所定の記憶領域(レジスタまたはメモリ)に、演算した値を定期的に書き込み、この値を読み出すことで行ってもよい。ここで述べた以外の方法で、測定を行ってもよい。   Here, as an example of values measured by the data measuring unit 21, in the case of a computer device, the CPU operating rate, communication characteristic values (communication amount (transmission amount, reception amount), communication error rate (transmission error rate, reception error) Rate), average throughput, etc.), and the amount of data read or written to the storage device. In the case of an air conditioner, there are operating conditions (on, off, etc.), temperature, humidity, and the like. In the case of lighting equipment, there are operating states (on, off, etc.), illuminance, and the like. The measurement may be performed using a sensor, or may be performed by acquiring a value calculated by a CPU (specifically, an application or OS (operating system) operating on the CPU). The acquisition of the value from the CPU may be performed by the data measuring unit 21 requesting the CPU to acquire the value and acquiring the value from the CPU, or the CPU may store the value in a predetermined storage area (register or memory). The calculated value may be periodically written and this value may be read. Measurements may be performed by methods other than those described here.

データ送信部22は、データ測定部21により測定されたデータを、ネットワーク40を介して、情報処理装置10に送信する。データは、実際には、使用する通信プロトコルに応じてパケットまたはフレームに整形されて、送信される。一例として、データは、TCP/IPに従って送信される。データの送信タイミングは、データ測定が一定時間間隔(例えば1分間隔、10分間隔、30分間隔、1時間間隔、1日間隔など)で行われる場合は、当該データ測定のタイミングに合わせて、一定時間間隔ごとに送信してもよいし、情報処理装置10がデータの送信要求を、対象装置20に送信し、この送信要求に応じてデータを送信してもよい。送信するデータは、送信要求で指定されたデータ(例えば所定の時刻のデータなど)でもよいし、対象装置20が測定した最新のデータでもよい。ここで述べた以外の方法で、データを送信してもよい。なお、データ送信部22は、送信するデータをデータ測定部21から直接受け取ってもよいし、図示しない記憶部から読み出すことで、送信するデータを取得してもよい。   The data transmission unit 22 transmits the data measured by the data measurement unit 21 to the information processing apparatus 10 via the network 40. The data is actually shaped into a packet or frame according to the communication protocol used and transmitted. As an example, the data is transmitted according to TCP / IP. When data measurement is performed at regular time intervals (for example, 1 minute interval, 10 minute interval, 30 minute interval, 1 hour interval, 1 day interval, etc.), the data transmission timing is adjusted to the data measurement timing. The information processing apparatus 10 may transmit a data transmission request to the target apparatus 20 and transmit data in response to the transmission request. The data to be transmitted may be data specified by a transmission request (for example, data at a predetermined time) or the latest data measured by the target device 20. Data may be transmitted by methods other than those described here. The data transmission unit 22 may receive the data to be transmitted directly from the data measurement unit 21 or may acquire the data to be transmitted by reading it from a storage unit (not shown).

情報処理装置10は、データ受信部11、制御部12、データ加工部13、外れ値検知部14、アラート送信部15、学習部16、および記憶装置17を備える。記憶装置17は、受信データ記憶部D1と、設定データ記憶部D2と、結果データ記憶部D3とを含む。   The information processing apparatus 10 includes a data reception unit 11, a control unit 12, a data processing unit 13, an outlier detection unit 14, an alert transmission unit 15, a learning unit 16, and a storage device 17. The storage device 17 includes a reception data storage unit D1, a setting data storage unit D2, and a result data storage unit D3.

情報処理装置10は、上述したように、大きく学習段階の動作と、判定段階の動作とを実行する。学習段階では、各対象装置20からデータを収集および蓄積し、蓄積したデータに基づいて、モデル(LOFモデル)の生成を行う。判定段階では、各対象装置20から受信したデータに対して、LOFモデルに基づいて、外れ値か否かの判定を行う。   As described above, the information processing apparatus 10 largely performs the learning stage operation and the determination stage operation. In the learning stage, data is collected and accumulated from each target device 20, and a model (LOF model) is generated based on the accumulated data. In the determination stage, it is determined whether or not the data received from each target device 20 is an outlier based on the LOF model.

学習段階における各対象装置20からのデータ収集は、各対象装置20が正常状態であるときに行い、収集されたデータが正常データであることを前提としてもよい。あるいは、そのような前提を課すことなく、各対象装置からデータを収集してもよい。対象装置20が1年に数回しか異常にならないのが一般的であれば、1か月分のデータを収集すると、収集されるデータに異常データが含まれないことが普通であるが、若干の異常データが含まれる可能性もある。本実施形態は、収集されるデータがすべて正常データである場合、および、収集されるデータに若干の異常データが含まれる場合のいずれも対応可能である。   Data collection from each target device 20 in the learning stage may be performed when each target device 20 is in a normal state, and the collected data may be assumed to be normal data. Alternatively, data may be collected from each target device without imposing such a premise. If it is common for the target device 20 to become abnormal only a few times a year, when data for one month is collected, it is normal that abnormal data is not included in the collected data. It is possible that abnormal data is included. This embodiment can deal with both cases where the collected data are all normal data and cases where the collected data includes some abnormal data.

図4は、学習段階および判定段階のそれぞれの動作シーケンスを示す。   FIG. 4 shows an operation sequence of each of the learning stage and the determination stage.

[学習段階]
データ受信部11は、各対象装置20から送信されたデータを受信する(S11)。
[Learning stage]
The data receiving unit 11 receives data transmitted from each target device 20 (S11).

制御部12は、本情報処理装置の全体の動作を司る。制御部12は、データ受信部11に接続されており、データ受信部11を用いて、各対象装置20からデータを収集する(S12)。制御部12は、記憶装置17に接続されており、収集したデータを、記憶装置17における受信データ記憶部D1に保存する(S13)。受信データ記憶部D1は、一例としてデータベースにより構成される。ここで、データ収集時、各対象装置20は、正常状態である(異常状態でない)ことを前提としてもよい場合、本システムの管理者が、各対象装置20の管理者に、各対象装置20が正常状態であることを事前に確認してもよい。   The control unit 12 governs the overall operation of the information processing apparatus. The control unit 12 is connected to the data receiving unit 11 and collects data from each target device 20 using the data receiving unit 11 (S12). The control unit 12 is connected to the storage device 17 and stores the collected data in the received data storage unit D1 in the storage device 17 (S13). The reception data storage unit D1 is configured by a database as an example. Here, at the time of data collection, when it is possible to assume that each target device 20 is in a normal state (not in an abnormal state), the administrator of this system sends the administrator of each target device 20 to each target device 20. It may be confirmed in advance that is in a normal state.

各対象装置20から送信されるデータは、予め定めたフォーマットに従っているものとする。データに含まれるN個の測定値は、フォーマットに従った順序で並べられている。   It is assumed that data transmitted from each target device 20 follows a predetermined format. N measurement values included in the data are arranged in an order according to the format.

また、データには、対象装置20の識別子(対象装置ID)、およびデータの識別子(データID)が関連づけられていてもよい。この場合、対象装置IDは、各対象装置20を区別可能な値であれば何でもよい。対象装置IDは、本情報処理装置が予め各対象装置に割り当てたIDでもよいし、対象装置のユーザのユーザIDでもよい。制御部12が、受信したデータのパケットの宛先アドレスを特定し、予め保持しているアドレスと対象装置IDとの対応表から、対象装置IDを特定してもよい。また、データIDは、同じ対象装置から収集したデータ間を区別可能な値であれば、何でもよい。データの送信毎に1インクリメントする値でもよいし、対象装置におけるデータの生成時刻または測定時刻でもよい。データIDは、制御部12がデータを取得した時点で、当該データに割り当ててもよい。例えばデータを取得するごとに、1インクリメントした値をデータIDとして割り当ててもよい。また、データ内にN個の各測定値を識別可能となるような要素識別子を含めてもよい。   Further, the identifier of the target device 20 (target device ID) and the data identifier (data ID) may be associated with the data. In this case, the target device ID may be any value as long as each target device 20 can be distinguished. The target device ID may be an ID previously assigned to each target device by the information processing device, or may be a user ID of a user of the target device. The control unit 12 may specify the destination address of the received data packet, and may specify the target device ID from the correspondence table between the address and the target device ID held in advance. The data ID may be anything as long as it is a value that can distinguish between data collected from the same target device. It may be a value incremented by 1 each time data is transmitted, or may be a data generation time or a measurement time in the target device. The data ID may be assigned to the data when the control unit 12 acquires the data. For example, every time data is acquired, a value incremented by 1 may be assigned as a data ID. In addition, an element identifier that can identify each of the N measurement values may be included in the data.

ここでは、複数の測定値が一度にまとめて送信される場合を想定しているが、複数の測定値がそれぞれ別々のタイミングで送信されてもよい。この場合、制御部12が、それぞれ別々に受信された測定値を並べて、並べた後の測定値を含むデータを、受信データ記憶部D1に保存すればよい。あるいは、個々の測定値を受信するごとに、受信した測定値を、データベースの該当する項目に保存してもよい。但し、その場合は、要素識別子をデータ内に含めるか、分割シーケンスIDをデータに含める必要がある。   Here, it is assumed that a plurality of measurement values are transmitted at once, but a plurality of measurement values may be transmitted at different timings. In this case, the control part 12 should just arrange | position the measured value received separately, respectively, and should preserve | save the data containing the measured value after arranging in the received data storage part D1. Alternatively, every time an individual measurement value is received, the received measurement value may be stored in a corresponding item in the database. However, in that case, it is necessary to include an element identifier in the data or to include a division sequence ID in the data.

図5に、受信データ記憶部D1に保存されたデータ例を示す。各対象装置20から収集したデータが、データベースに保存されている。この例では、各対象装置(対象装置1〜h)からそれぞれs個のデータを受信している。データベースにおける個々のエントリ(横一列)は、対象装置IDと、データIDと、N個の測定値とを含んでいる。   FIG. 5 shows an example of data stored in the received data storage unit D1. Data collected from each target device 20 is stored in a database. In this example, s pieces of data are received from each target device (target devices 1 to h). Each entry (one horizontal row) in the database includes a target device ID, a data ID, and N measurement values.

ここで、i番目の対象装置におけるj番目のデータのr番目の測定値を、“xi,j,r”と表す。例えば、1番目の対象装置における1番目のデータの2番目(種類2)の測定値は、“x1,1,2”である。図5の例では、この値は0.7である。 Here, the r-th measurement value of the j-th data in the i-th target device is represented as “x i, j, r ”. For example, the measurement value of the second of the first data in the first target device (type 2) is a "x 1,1,2". In the example of FIG. 5, this value is 0.7.

学習部16は、本実施形態に係るモデルを生成する学習処理を行う。学習部16は、予め定めた条件が成立したかを判断し、予め定めた条件が成立すると、学習処理を開始する。予め定めた条件としては、受信データ記憶部D1に一定量のデータが蓄積されたことでもよいし、予め定めた時刻になったことでもよいし、本情報処理装置の管理者がユーザインタフェース(キーボード、マウス、タッチパネル、または音声入力など)を用いて学習指示を入力し、この学習指示を受けたことでもよい。ここで述べた以外の条件でもよい。   The learning unit 16 performs a learning process for generating a model according to the present embodiment. The learning unit 16 determines whether a predetermined condition is satisfied, and starts the learning process when the predetermined condition is satisfied. The predetermined condition may be that a certain amount of data has been stored in the received data storage unit D1, or that a predetermined time may have been reached, or that the administrator of the information processing apparatus has received a user interface (keyboard). A learning instruction may be input using a mouse, a touch panel, or a voice input, and the learning instruction may be received. Conditions other than those described here may be used.

学習処理において、学習部16は、受信データ記憶部D1から、モデル学習に用いる複数のデータ(データセット)を読み出す(S14)。読み出したデータを、学習データと呼ぶ。学習部16は、任意の方法で、受信データ記憶部D1において学習データを特定する。一例として、現在からX日前(30日前など)までの過去のデータを、学習データとして特定する。別の方法として、期間の開始時刻と終了時刻を指定し、これらの期間に含まれるデータを学習データとして特定してもよい。以下の説明では、図5に示したデータベースにおいて、対象装置1〜hのデータ1〜sが学習データとして特定された場合を想定する。   In the learning process, the learning unit 16 reads a plurality of data (data sets) used for model learning from the received data storage unit D1 (S14). The read data is called learning data. The learning unit 16 specifies learning data in the reception data storage unit D1 by an arbitrary method. As an example, past data from the present to X days ago (30 days ago, etc.) is specified as learning data. As another method, the start time and end time of a period may be specified, and data included in these periods may be specified as learning data. In the following description, it is assumed that data 1 to s of target devices 1 to h are specified as learning data in the database shown in FIG.

学習部16は、データ加工部13で行うデータ加工用のパラメータ情報を生成する(S15)。データ加工は、正規化と、本実施形態で新たに定義および導入した“離散化”とからなる。この離散化は、過学習対策として行うものである。このため、データ加工用のパラメータ情報は、正規化用のパラメータ情報と、離散化用のパラメータ情報とを含む。   The learning unit 16 generates parameter information for data processing performed by the data processing unit 13 (S15). Data processing includes normalization and “discretization” newly defined and introduced in the present embodiment. This discretization is performed as an overlearning measure. For this reason, the parameter information for data processing includes parameter information for normalization and parameter information for discretization.

正規化は、学習データセットを対象に、測定値の種類毎に、尺度調整と重心移動とを行うものである。尺度調整は、複数の測定値のうちの最大値により各測定値を除算することで、各測定値を0〜1までの値となるように調整するものである。重心移動は、尺度調整後の複数の測定値からこれらの平均値を減算することで、平均値が原点(ゼロ)となるように調整するものである。学習部16は、測定値の種類毎に算出した最大値と平均値とを、正規化用のパラメータ情報として取得する。学習部16は、正規化用のパラメータ情報を、設定データ記憶部D2に格納する。   Normalization performs scale adjustment and center-of-gravity movement for each type of measurement value for a learning data set. In the scale adjustment, each measurement value is adjusted to be a value from 0 to 1 by dividing each measurement value by the maximum value among the plurality of measurement values. The center of gravity shift is performed by subtracting these average values from a plurality of measured values after scale adjustment so that the average value becomes the origin (zero). The learning unit 16 acquires the maximum value and the average value calculated for each type of measurement value as parameter information for normalization. The learning unit 16 stores the parameter information for normalization in the setting data storage unit D2.

離散化は、正規化完了後の学習データセットをN次元空間にプロットした場合に、学習データを表す点の分布(密度)の偏りに過剰に反応することを避けるため、学習データを加工するものである。   Discretization is the processing of learning data in order to avoid excessive reaction to the distribution (density) of points representing learning data when the learning data set after normalization is plotted in an N-dimensional space. It is.

学習部16は、加工の荒さ(目盛りの荒さまたは精度の荒さとも言う)に違いを付けた複数の離散化パターンを生成する。予め複数の離散化パターンを記憶装置17または別の記憶装置に記憶させておき、これらを学習部16が候補として読み出してもよい。以下の説明では、離散パターンを、単にパターンと呼ぶこともある。   The learning unit 16 generates a plurality of discretized patterns with different processing roughness (also referred to as scale roughness or precision roughness). A plurality of discretization patterns may be stored in advance in the storage device 17 or another storage device, and these may be read out as candidates by the learning unit 16. In the following description, the discrete pattern may be simply referred to as a pattern.

離散化パターンの例を以下に3つ示す。パラメータmは1以上の任意の実数である。[・・・]はガウス記号であり、小数点以下の切り捨てを行う。例えば[1.45]は、1である。

Figure 2018169994
Three examples of discretization patterns are shown below. The parameter m is an arbitrary real number of 1 or more. [...] is a Gaussian symbol, which is rounded down. For example, [1.45] is 1.
Figure 2018169994

x’i,j,rは、i番目の対象装置のj番目のデータにおけるr番目の測定値の正規化後の値である。σx’i,rは、種類rの正規化後の測定値(正規化後のr番目の測定値)の標準偏差である。標準偏差はばらつきを表す値の一例であり、分散など、ばらつきを表す別の値を用いることも可能である。学習部16は、測定値の種類毎に、正規化後の測定値の標準偏差σx’i,rを計算する。また、学習部16は、m(1以上の任意の実数)の値を決定する。mの値は、予めメモリまたはアプリケーションプログラム等に格納されていて、それを読み出してもよいし、本情報処理装置の管理者がユーザインタフェースを用いて、mの値を指定してもよい。あるいは、予め定めた範囲の中から学習部16がランダムに選択することも可能である。mの決定方法は任意でかまわない。一例としてmの値は、10である。m、m、mは、例えば加工の荒さ(目盛りの荒さまたは精度の荒さ)に対応する。 x ′ i, j, r is a value after normalization of the r-th measurement value in the j-th data of the i-th target device. σ x′i, r is the standard deviation of the measurement value after normalization of the type r (the r-th measurement value after normalization). The standard deviation is an example of a value representing variation, and another value representing variation such as variance can be used. The learning unit 16 calculates the standard deviation σ x′i, r of the normalized measurement value for each type of measurement value. The learning unit 16 determines a value of m (an arbitrary real number equal to or greater than 1). The value of m may be stored in advance in a memory or an application program and read out, or the administrator of the information processing apparatus may specify the value of m using a user interface. Alternatively, the learning unit 16 can randomly select from a predetermined range. The method for determining m may be arbitrary. As an example, the value of m is 10. m, m 2 , and m 3 correspond to, for example, machining roughness (scale roughness or accuracy roughness).

パターン1は、正規化後の測定値x’i,j,rを、σx’i,r/m(σx’i,rをmで除算した値)で除算し、小数点以下を切り捨てた後に、再度、σx’i,r/mを積算する。r=1〜Nとした場合に、σx’i,1/m〜σx’i,N/mは、本実施形態に係る第1の値〜第Nの値に対応する。
パターン2は、正規化後の測定値x’i,j,rを、σx’i,r/m(σx’rをmの二乗で除算した値)で除算し、小数点以下を切り捨てた後に、再度、σx’i,r/mを積算する。r=1〜Nとした場合に、σx’i,1/m〜σx’i,N/mは、本実施形態に係る第1の値〜第Nの値に対応する。
パターン3は、正規化後の測定値x’i,j,rを、σx’i,r/m(σx’rをmの三乗で除算した値)で除算し、小数点以下を切り捨てた後に、再度、σx’i,r/mを積算する。r=1〜Nとした場合に、σx’i,1/m〜σx’i,N/mは、本実施形態に係る第1の値〜第Nの値に対応する。
In pattern 1, the measured value x ′ i, j, r after normalization is divided by σ x ′ i, r / m (a value obtained by dividing σ x ′ i , r by m), and the decimal part is rounded down. Later, σ x′i, r / m is added again. When r = 1 to N, σ x′i, 1 / m to σ x′i, N / m correspond to the first value to the Nth value according to the present embodiment.
Pattern 2 divides the normalized measurement value x ′ i, j, r by σ x ′ i, r / m 2 (a value obtained by dividing σ x′r by the square of m) and rounds off the decimal part. After that, σ x′i, r / m 2 is integrated again. When r = 1 to N, σ x′i, 1 / m 2 to σ x′i, N / m 2 correspond to the first value to the Nth value according to the present embodiment.
Pattern 3 divides the normalized measurement value x ′ i, j, r by σ x ′ i, r / m 3 (value obtained by dividing σ x′r by the cube of m), After rounding down, σ x′i, r / m 3 is added again. When r = 1 to N, σ x′i, 1 / m 3 to σ x′i, N / m 3 correspond to the first value to the Nth value according to the present embodiment.

例えば、mを10とすると、パターン1は、標準偏差の1/10の目盛り幅で離散化するパターン、パターン2は標準偏差の1/100の目盛り幅で離散化するパターン、パターン3は標準偏差の1/1000の目盛り幅で離散化するパターンであるといえる。ここでは離散化パターンを3つ示したが、4つ以上でもよいし、2つ以下でもよい。
また、mの値は10に限定されない。
For example, if m is 10, pattern 1 is discretized with a scale width of 1/10 of the standard deviation, pattern 2 is discretized with a scale width of 1/100 of the standard deviation, and pattern 3 is standard deviation. It can be said that the pattern is discretized at a scale width of 1/1000 of the scale. Although three discretization patterns are shown here, the number may be four or more, or two or less.
The value of m is not limited to 10.

上述した例では、端数処理として、小数点第1位以下の切り捨てを行ったが、四捨五入または小数点以下の切り上げを行ってもよい。また、小数点第1位ではなく、第2位またはそれより下位を対象として、端数処理を行ってもよい。また、本実施形態では、離散化の前に正規化を行っているが、正規化を省略する構成も可能である。   In the example described above, rounding is performed to the first decimal place as the fraction processing, but rounding off or rounding up may be performed. In addition, fraction processing may be performed not on the first decimal place but on the second or lower order. In the present embodiment, normalization is performed before discretization, but a configuration in which normalization is omitted is also possible.

学習部16は、複数の離散化パターン(離散化用のパラメータ情報)を、設定データ記憶部D2、または別の記憶部に格納してもよい。   The learning unit 16 may store a plurality of discretization patterns (discretization parameter information) in the setting data storage unit D2 or another storage unit.

学習部16は、学習データセットの加工(正規化と、離散化)を依頼する指示情報を、正規化用のパラメータ情報および複数の離散化パターン(離散化用のパラメータ情報)とともに、データ加工部13に出力する(S16)。   The learning unit 16 includes instruction information for requesting processing (normalization and discretization) of the learning data set together with parameter information for normalization and a plurality of discretization patterns (parameter information for discretization). 13 (S16).

データ加工部13は、学習部16から提供された正規化用のパラメータ情報と、離散化用のパラメータ情報に基づき、学習データセットに対して、正規化と離散化を行う。   The data processing unit 13 performs normalization and discretization on the learning data set based on the parameter information for normalization provided from the learning unit 16 and the parameter information for discretization.

すなわち、データ加工部13は、正規化用のパラメータ情報(測定値の種類毎の最大値と平均値)に基づき、学習データセットを正規化する。具体的には、前述したように、個々の学習データに対して、測定値の種類毎に、上記最大値で測定値を除算することで、測定値を、0〜1の範囲内の値に調整する(尺度調整)。そして、尺度調整後の測定値から上記平均値を減算する(重心移動)。正規化後の学習データセットのイメージを図6に示す。なお、本実施形態では、学習データを直接、正規化しているが、学習データに含まれる複数の測定値から複数の第2特徴量を計算し、複数の第2特徴量を含む第2学習データを生成し、第2学習データに対して正規化を行ってもよい。この場合、以降の処理も、第2学習データを対象に行う。第2特徴量は、前述した特徴量と同様、測定値そのものでもよいし統計値でもよいし、カテゴリ値でもよいし、2つ以上の測定値間の演算値でもよいし、その他の値でもよい。なお、第2特徴量を計算する元となる値は、測定値以外の第1特徴量でもよい。   That is, the data processing unit 13 normalizes the learning data set based on the parameter information for normalization (maximum value and average value for each type of measurement value). Specifically, as described above, by dividing the measured value by the maximum value for each type of measured value for each learning data, the measured value is set to a value within the range of 0 to 1. Adjust (scale adjustment). Then, the average value is subtracted from the measured value after the scale adjustment (center of gravity movement). An image of the learning data set after normalization is shown in FIG. In the present embodiment, the learning data is directly normalized, but a plurality of second feature amounts are calculated from a plurality of measurement values included in the learning data, and the second learning data includes a plurality of second feature amounts. And normalization may be performed on the second learning data. In this case, the subsequent processing is also performed on the second learning data. The second feature amount may be a measurement value itself, a statistical value, a category value, a calculated value between two or more measurement values, or other values, similar to the above-described feature amount. . Note that the value from which the second feature value is calculated may be a first feature value other than the measured value.

また、データ加工部13は、正規化後の学習データセットに対して、複数の離散化パターンのそれぞれを用いて、離散化を行う。これにより、複数の離散化パターンのそれぞれについて、離散化された学習データセットが得られる。離散化された学習データを、加工データと呼ぶ。図7に、離散化パターンごとに得られた加工データセットのイメージを示す。図7(A)が離散化パターン1に対応する加工データセット、図7(B)が離散化パターン2に対応する加工データセット、図7(C)が離散化パターン3に対応する加工データセットを表す。   The data processing unit 13 discretizes the normalized learning data set using each of a plurality of discretization patterns. Thereby, a discretized learning data set is obtained for each of the plurality of discretized patterns. The discretized learning data is called processed data. FIG. 7 shows an image of the machining data set obtained for each discretization pattern. 7A is a machining data set corresponding to the discretization pattern 1, FIG. 7B is a machining data set corresponding to the discretization pattern 2, and FIG. 7C is a machining data set corresponding to the discretization pattern 3. Represents.

また、加工データセット内に複数の同じ加工データが存在する場合、1つの加工データのみを残し、残りを削除することで、加工データセットに含まれる複数の加工データをユニーク化する。これにより、同一座標にK個以上のデータが存在することで注目点のK距離が0となり逆数が発散してスコアが計算できなくなることを阻止できる。   Further, when a plurality of the same processing data exists in the processing data set, only one processing data is left, and the rest is deleted, so that the plurality of processing data included in the processing data set is made unique. As a result, it can be prevented that the K distance of the attention point becomes 0 and the reciprocal diverges and the score cannot be calculated because there are K or more data in the same coordinates.

ある3つの学習データ(仮に学習データA、B、Cとする)を対象に、離散化の具体例を示す。各学習データにおいて、種類rの正規化後の測定値が0.777、0.776、0.778であったとする。また、当該種類rの標準偏差は、0.598であったとする。また、m=10とする。   A specific example of discretization will be shown with respect to certain three learning data (assuming learning data A, B, and C). In each learning data, it is assumed that the measurement values after normalization of the type r are 0.777, 0.776, and 0.778. The standard deviation of the type r is 0.598. In addition, m = 10.

このとき、パターン1を用いた場合、0.777の離散化後の値は、[0.777/(0.598/10)]×(0.598/10)=[12.9933]×(0.598/10)=12×(0.598/10)=0.7176となる。
0.776の離散化後の値は、[0.776/(0.598/10)]×(0.598/10)=[12.9765]×(0.598/10)=12×(0.598/10)=0.7176となる。
0.778の離散化後の値は、[0.778/(0.598/10)]×(0.598/10)=[13.0100]×(0.598/10)=13×(0.598/10)=0.7774となる。
離散化前の測定値(正規化後の測定値)と、離散化後の測定値をまとめると、以下のようになる。

Figure 2018169994
学習データAとCに着目すると、離散化前の値の差分は、0.778−0.777=0.001である。一方、離散化後の値の差分は、0.7774−0.7176=0.0598である。離散化前の間隔0.001に比べて、離散化後では間隔が0.0598となり、大きく離散化されたことが分かる。つまり、種類rの測定値の間隔が、離散化により、大きく広げられている。このことから、離散化を行うことで、データ密度を低くできることが理解される。 At this time, when pattern 1 is used, the value after the discretization of 0.777 is [0.777 / (0.598 / 10)] × (0.598 / 10) = [12.9933] × ( 0.598 / 10) = 12 × (0.598 / 10) = 0.7176.
The value after discretization of 0.776 is [0.776 / (0.598 / 10)] × (0.598 / 10) = [12.9765] × (0.598 / 10) = 12 × ( 0.598 / 10) = 0.7176.
The value after discretization of 0.778 is [0.778 / (0.598 / 10)] × (0.598 / 10) = [13.0100] × (0.598 / 10) = 13 × ( 0.598 / 10) = 0.7774.
The measured values before discretization (measured values after normalization) and the measured values after discretization are summarized as follows.
Figure 2018169994
Focusing on learning data A and C, the difference between the values before discretization is 0.778−0.777 = 0.001. On the other hand, the difference between the values after discretization is 0.7774-0.7176 = 0.0598. Compared to the interval 0.001 before discretization, the interval is 0.0598 after discretization, and it can be seen that the discretization is greatly increased. That is, the interval between the measurement values of type r is greatly expanded by discretization. From this, it is understood that data density can be lowered by discretization.

同じ例を用いて、パターン2を適用した場合の、離散化前の値と、離散化後の値は以下のようになる。この例では、どの学習データ間でも、離散化による値の幅の変化はパターン1と比べて小さい。

Figure 2018169994
Using the same example, the value before discretization and the value after discretization when pattern 2 is applied are as follows. In this example, the change in value width due to discretization is smaller than that of pattern 1 between any learning data.
Figure 2018169994

同じ例を用いて、パターン3を適用した場合の、離散化前の値と、離散化後の値は以下のようになる。この例では、どの学習データ間でも、離散化による値の幅の変化はパターン1と比べてさらに小さい。

Figure 2018169994
Using the same example, the value before discretization and the value after discretization when pattern 3 is applied are as follows. In this example, the change in the value width due to the discretization is smaller than that in the pattern 1 between any learning data.
Figure 2018169994

図8は、本実施形態に係る離散化を概念的に表したものである。図8(A)は正規化後の学習データセットを2次元空間にプロットしたものである。横方向が種類1の離散化後の測定値、縦方向が種類2の離散化後の測定値に対応する。図8(B)は、図8(A)の学習データセットを離散化することで得られた加工データセットを2次元空間にプロットしたものである。離散化前では、学習データ分布(データ密度)に偏りが見られるが、離散化後では、データ分布の偏りが緩和されている。より具体的には、密度の高い領域の密度が低くなることで、全体のデータ分布が均一に近づいている。前述した目盛り幅に応じた離散化が行われることで、元々密度の低い領域では、密度が低くなることが抑制されている。   FIG. 8 conceptually shows the discretization according to the present embodiment. FIG. 8A is a plot of the normalized learning data set in a two-dimensional space. The horizontal direction corresponds to the measured value after discretization of type 1, and the vertical direction corresponds to the measured value after discretization of type 2. FIG. 8B is a plot of a processed data set obtained by discretizing the learning data set of FIG. 8A in a two-dimensional space. Before discretization, there is a bias in the learning data distribution (data density), but after discretization, the bias in the data distribution is alleviated. More specifically, the entire data distribution is approaching to be uniform as the density of the high density region is reduced. By performing the discretization according to the scale width described above, it is possible to suppress the density from being lowered in the originally low density region.

学習部16は、以降の処理において、上述した複数の離散化パターンを用いて、高い精度で外れ値を検知できるモデル(LOFモデル)を構築する。   In the subsequent processing, the learning unit 16 uses the plurality of discretization patterns described above to construct a model (LOF model) that can detect an outlier with high accuracy.

このために、学習部16は、データ加工部13から、各離散化パターンで離散化された加工データセットを取得する(S17)。学習部16は、各離散化パターンに対応する加工データセットと、LOFのパラメータKの候補値の範囲とに基づいて、LOFの学習アルゴリズムを利用して、複数の仮モデルを生成する(S18)。複数の仮モデルを、正規化データセットを用いて評価することにより、各仮モデルの評価値をそれぞれ計算する(同S18)。そして、評価値に基づき、複数の仮モデルのうちの1つのモデルを、外れ値検知用のモデル(LOFモデル)として選択する(S19)。   For this purpose, the learning unit 16 acquires from the data processing unit 13 a processed data set discretized with each discretization pattern (S17). The learning unit 16 generates a plurality of temporary models using the LOF learning algorithm based on the processed data set corresponding to each discretization pattern and the range of candidate values of the LOF parameter K (S18). . An evaluation value of each temporary model is calculated by evaluating a plurality of temporary models using the normalized data set (S18). Based on the evaluation value, one of the plurality of temporary models is selected as an outlier detection model (LOF model) (S19).

以下、LOFモデルを生成する方法について詳細に説明する。   Hereinafter, a method for generating the LOF model will be described in detail.

学習部は、複数の離散化パターンのうちの1つと、パラメータKの候補値の範囲に含まれる複数の候補値(以下、K値と記述)のうちの1つとの全ての組み合わせについて、仮モデルを生成する。仮モデルは、当該組み合わせ数だけ生成される。例えば離散化パターン数が3、K値の個数が10であれば、3×10=30の仮モデルが生成される。   The learning unit uses a temporary model for all combinations of one of a plurality of discretization patterns and one of a plurality of candidate values (hereinafter referred to as K values) included in the range of candidate values for parameter K. Is generated. As many temporary models as the number of combinations are generated. For example, if the number of discretized patterns is 3 and the number of K values is 10, a temporary model of 3 × 10 = 30 is generated.

仮モデルは、当該組み合わせに含まれる離散化パターンで離散化された加工データセットと、当該組み合わせに含まれるK値とを少なくとも含む。仮モデルは、判定対象となるデータが与えられた場合に、仮モデルに含まれる加工データセットとK値に基づき、当該データのスコア(式1)を計算する関数として構成されてもよい。この場合、仮モデルは、判定対象となるデータを入力変数xとし、スコアを計算して出力変数zとする関数(z=f(x))と、当該スコアの計算に用いる加工データセットとを含むモデルファイルである。関数は、加工データセットとK値に基づき、LOFアルゴリズムにより当該データのスコア(式1)を計算するプログラムコードを含む。関数に、スコアを閾値と比較するプログラムコードと、比較結果として外れ値か否かを示す値を出力するプログラムコードとを含めてもよい。   The provisional model includes at least a machining data set discretized with a discretization pattern included in the combination and a K value included in the combination. The temporary model may be configured as a function that calculates a score (Equation 1) of the data based on the processed data set and the K value included in the temporary model when data to be determined is given. In this case, the provisional model includes a function (z = f (x)) that uses the data to be determined as an input variable x, calculates a score, and sets the output variable z, and a processed data set used for calculating the score. It is a model file that contains. The function includes program code for calculating a score (Equation 1) of the data by the LOF algorithm based on the machining data set and the K value. The function may include a program code for comparing the score with a threshold value and a program code for outputting a value indicating whether the result is a outlier as a comparison result.

ここで、Kの候補値の範囲は、予めメモリ等の記憶部に設定しておき、学習部16は、これを読み出してもよい。あるいは、候補値の範囲を複数設定しておき、管理者が1つの範囲を、ユーザインタフェースを介して選択し、選択された範囲を学習部16が読み出してもよい。または、管理者がユーザインタフェースを介して候補値の範囲を入力してもよい。候補値の範囲は、開始位置と終了位置とによって表現してもよいし、開始位置と幅とによって表現してもよい。例えば、候補値の範囲が10以上50以下の場合、前者の例では、“開始位置10、終了位置50”を指定し、後者の例では、“開始位置10、幅40”を指定する。   Here, the range of K candidate values may be set in advance in a storage unit such as a memory, and the learning unit 16 may read the range. Alternatively, a plurality of candidate value ranges may be set, the administrator may select one range via the user interface, and the learning unit 16 may read the selected range. Alternatively, the administrator may input a range of candidate values via the user interface. The range of candidate values may be expressed by a start position and an end position, or may be expressed by a start position and a width. For example, when the range of candidate values is 10 or more and 50 or less, “start position 10, end position 50” is specified in the former example, and “start position 10, width 40” is specified in the latter example.

学習部16は、正規化データセットに基づき、仮モデルの評価値を計算する。より詳細には、学習部16は、仮モデルに基づき、正規化データセットに含まれる複数のデータのスコア(式1参照)を計算する。この計算は、仮モデルにおける加工データセットを空間に展開し、データ(正規化されたデータ)を当該空間に注目点P(図2参照)としてマッピングした場合に、仮モデルに含まれるK値と、式1に従って、当該データのスコアを計算することに相当する。注目点Pに対するK距離圏内の各点は加工データである。仮モデルがデータを入力変数、スコアを出力変数とする関数として構成されていれば、この関数にデータを入力することでスコアを計算する。学習部16は、複数のデータのスコアのばらつきを表す値を、仮モデルの評価値として計算する。   The learning unit 16 calculates an evaluation value of the temporary model based on the normalized data set. More specifically, the learning unit 16 calculates scores (see Equation 1) of a plurality of data included in the normalized data set based on the temporary model. This calculation is performed when the machining data set in the temporary model is expanded in space and the data (normalized data) is mapped to the space as the point of interest P (see FIG. 2). This corresponds to calculating the score of the data according to Equation 1. Each point within the K distance range with respect to the point of interest P is processed data. If the temporary model is configured as a function with data as input variables and score as an output variable, the score is calculated by inputting data into this function. The learning unit 16 calculates a value representing the variation in the scores of the plurality of data as the evaluation value of the temporary model.

ここで、ばらつきを表す値の具体例として、標準偏差、不偏標準偏差または分散などがある。ここでは標準偏差を想定する。標準偏差の計算式を以下に示す。

Figure 2018169994
σはスコアの標準偏差、nは正規化データセットに含まれるデータ数、yはデータiのスコア、μはn個のデータのスコアの平均である。 Here, a specific example of a value representing variation includes standard deviation, unbiased standard deviation, or variance. Here, a standard deviation is assumed. The formula for calculating the standard deviation is shown below.
Figure 2018169994
σ e is a standard deviation of scores, n is the number of data included in the normalized data set, y is a score of data i, and μ is an average of scores of n data.

学習部16は、以上の処理を、上記の組み合わせ数分繰り返す。すなわち、学習部16は、上記の組み合わせ数の仮モデルのそれぞれについて、評価値(スコアの標準偏差)を計算する。これにより、複数の仮モデルのそれぞれについて、スコアの標準偏差を得る。   The learning unit 16 repeats the above processing for the number of combinations described above. That is, the learning unit 16 calculates an evaluation value (score standard deviation) for each of the provisional models having the number of combinations. Thereby, the standard deviation of the score is obtained for each of the plurality of provisional models.

学習部16は、複数の仮モデルのうち、標準偏差が最も小さい仮モデルを選択する。あるいは、これとは別の例として、標準偏差が閾値以下の仮モデルを選択してもよい。例えば複数の仮モデルについて順番に評価値(スコアの標準偏差)を計算し、閾値以下の標準偏差が計算された時点で、以降の処理を停止する。これにより、処理の高速化を図ることができる。   The learning unit 16 selects a temporary model having the smallest standard deviation among the plurality of temporary models. Alternatively, as another example, a temporary model having a standard deviation equal to or less than a threshold value may be selected. For example, evaluation values (score standard deviation) are calculated in order for a plurality of temporary models, and the subsequent processing is stopped when a standard deviation equal to or less than a threshold is calculated. As a result, the processing speed can be increased.

図9に、3つの離散化パターン1、2、3と、96個のK値(5〜100)との組み合わせに基づき、複数の仮モデルを生成し、これらの仮モデルに対して、スコアの標準偏差を計算した例を表形式で示す。この例では、仮モデル1〜288が生成されている。一例として、仮モデル1は、離散化パターン1で正規化データセットを離散化した加工データセットと、K値=5とに基づき生成された仮モデルである。また、仮モデル97は、離散化パターン2で正規化データセットを離散化した加工データセットと、K値=5とに基づき生成された仮モデルである。仮モデル193は、離散化パターン3で正規化データセットを離散化した加工データセットと、K値=5とに基づき生成された仮モデルである。   In FIG. 9, a plurality of temporary models are generated based on combinations of three discretization patterns 1, 2, and 3 and 96 K values (5 to 100). An example of calculating the standard deviation is shown in tabular form. In this example, temporary models 1 to 288 are generated. As an example, the temporary model 1 is a temporary model generated based on a machining data set obtained by discretizing a normalized data set using the discretization pattern 1 and a K value = 5. The temporary model 97 is a temporary model generated based on a machining data set obtained by discretizing the normalized data set with the discretization pattern 2 and a K value = 5. The temporary model 193 is a temporary model generated based on a machining data set obtained by discretizing a normalized data set with the discretization pattern 3 and a K value = 5.

学習部16は、仮モデル1〜288の中で最も標準偏差が小さい仮モデルを、LOFモデルとして選択する(S19)。図9の例では、仮モデル1〜288のうち、最小の標準偏差は、仮モデル8の標準偏差0.134である。よって、学習部16は、仮モデル8をLOFモデルとして選択する。LOFモデルに含まれるK値は12である。LOFモデルに含まれる加工データセットは、離散化パターン1で正規化データセットを離散化した加工データセットである。   The learning unit 16 selects a temporary model having the smallest standard deviation among the temporary models 1 to 288 as the LOF model (S19). In the example of FIG. 9, the minimum standard deviation of the temporary models 1 to 288 is the standard deviation 0.134 of the temporary model 8. Therefore, the learning unit 16 selects the temporary model 8 as the LOF model. The K value included in the LOF model is 12. The machining data set included in the LOF model is a machining data set obtained by discretizing the normalized data set with the discretization pattern 1.

ここで、最小の標準偏差を有する仮モデルをLOFモデルとする理由について説明する。加工データセットには、ノイズが含まれる可能性や、若干の異常データが含まれる可能性はあるものの、大多数のデータは正常である。このため、大多数のデータのスコアは1.0近傍になり、したがって、スコア分布の標準偏差は小さいことが期待される。したがって、スコアの標準偏差を指標とし、これが最小になる仮モデルを、LOFモデルとする方法は有効であると言える。   Here, the reason why the temporary model having the minimum standard deviation is the LOF model will be described. Although the processed data set may contain noise or some abnormal data, most of the data is normal. For this reason, the scores of the majority of data are close to 1.0, and therefore the standard deviation of the score distribution is expected to be small. Therefore, it can be said that it is effective to use the standard model of the score as an index and the temporary model that minimizes the standard model as the LOF model.

最小の標準偏差が2つもしくはそれ以上存在する場合、一例として、K値が最も小さい仮モデルをLOFモデルとする。この理由は、K値は小さいほど感度が高くなるためである。また、別の方法として、離散化幅が最も大きい離散化パターンで離散化した加工データセットを含む仮モデルをLOFモデルとする方法も可能である。離散化幅が大きいほど、加工化データの値の有効桁数を短くできるため、LOFモデルファイルのデータ容量が小さくなるためである。   When two or more minimum standard deviations exist, as an example, a provisional model having the smallest K value is set as a LOF model. This is because the smaller the K value, the higher the sensitivity. As another method, a temporary model including a machining data set discretized with a discretization pattern having the largest discretization width can be used as the LOF model. This is because, as the discretization width is larger, the number of significant digits of the value of the processed data can be shortened, so that the data capacity of the LOF model file becomes smaller.

学習部16は、LOFモデルを、外れ値検知部14に提供する(S20)。また、学習部16は、このLOFモデルを、設定データ記憶部D2に格納する(S21)。なお、学習部16は、LOFモデルの生成に利用された離散化パターンを表す情報(パラメータmの値を含む)を、設定データ記憶部D2に格納してもよい。   The learning unit 16 provides the LOF model to the outlier detection unit 14 (S20). Further, the learning unit 16 stores this LOF model in the setting data storage unit D2 (S21). Note that the learning unit 16 may store information (including the value of the parameter m) indicating the discretization pattern used for generating the LOF model in the setting data storage unit D2.

(変形例)LOFモデルを構築する別の方法として、以下のようにしてもよい。上記と同様にして複数の仮モデルを生成する。仮モデルのうち、最も識別率(識別精度)が良い、すなわち誤検知率が最も低い仮モデルをLOFモデルとする。誤検知率または識別率は、仮モデルの評価値の一例である。誤検知率は、例えば以下のようにして計算できる。正規化データセットに含まれる各データについて、仮モデルでスコア(式(1)参照)を計算し、スコアが予め定めた閾値(1より大きい閾値)以上であれば、外れ値(不正解)、閾値未満であれば、外れ値でない(正解)と判断する。そして、不正解の回数を、正解と不正解の回数の合計で除算することにより、誤検知率を計算する。本方法は、各データが正常データであることを前提としている。一般に、識別率には、誤検知率と、検知率との2つの意味が含まれる。誤検知率は、正常データのうちのいくつが異常と判定されたかを意味する。検知率は、異常データのうち、いくつが異常と判定されかを意味する。各データが正常データであることを前提としている場合、検知率は確認できないため、誤検知率のみで識別率を評価する。ここでは誤検知率が最も低い仮モデルをLOFとしたが、誤検知率が閾値以下の仮モデルのうちの1つをLOFモデルとしてもよい。 (Modification) Another method for constructing the LOF model may be as follows. A plurality of temporary models are generated in the same manner as described above. Among the temporary models, the temporary model with the highest identification rate (identification accuracy), that is, the lowest false detection rate is defined as the LOF model. The false detection rate or the identification rate is an example of the evaluation value of the temporary model. The false detection rate can be calculated as follows, for example. For each data included in the normalized data set, a score (see formula (1)) is calculated with a temporary model, and if the score is equal to or greater than a predetermined threshold (threshold greater than 1), an outlier (incorrect answer), If it is less than the threshold value, it is determined that it is not an outlier (correct answer). Then, the false detection rate is calculated by dividing the number of incorrect answers by the total number of correct answers and incorrect answers. This method assumes that each data is normal data. In general, the identification rate includes two meanings of a false detection rate and a detection rate. The false detection rate means how many normal data are determined to be abnormal. The detection rate means how many abnormal data are determined to be abnormal. When it is assumed that each data is normal data, since the detection rate cannot be confirmed, the identification rate is evaluated only by the false detection rate. Although the temporary model with the lowest false detection rate is LOF here, one of the temporary models with the false detection rate equal to or less than the threshold may be the LOF model.

上述した変形例に対して、交差検証法を適用してもよい。例えば、まずKの値を仮決めする。その上で、加工データセットを、W個の部分データセットに分割する。2番目〜W番目の部分データセットを訓練事例、1番目の部分データセットに対応する部分正規化データセットをテスト事例として利用して、誤検知率を計算する。W個の部分データセットそれぞれが1回ずつテスト事例として利用されるまで同様の処理を繰り返す。結果として得られたW個の誤検知率の代表値を統計的な方法で決定する。一例として、平均をとる方法がある。この代表値を仮決めしたKにおける誤検知率と定義する。当該仮決めしたKと、使用した加工データセットとに基づく仮モデルを生成する。このプロセスを、Kを変えながら各離散化パターンに対して繰り返し、仮モデルと誤検知率のテーブルを作成する。このテーブルの中から、最適な仮モデルをLOFモデルとする。例えば最も誤検知率の低かった仮モデルを採択する。   You may apply a cross-validation method with respect to the modification mentioned above. For example, first, the value of K is provisionally determined. Then, the machining data set is divided into W partial data sets. The false detection rate is calculated by using the second to Wth partial data sets as training examples and the partial normalized data set corresponding to the first partial data set as test examples. The same process is repeated until each of the W partial data sets is used as a test case once. The representative value of the W false detection rates obtained as a result is determined by a statistical method. As an example, there is a method of taking an average. This representative value is defined as the false detection rate at the temporarily determined K. A temporary model based on the provisionally determined K and the used machining data set is generated. This process is repeated for each discretization pattern while changing K, and a table of temporary models and false detection rates is created. From this table, the optimum temporary model is set as the LOF model. For example, the temporary model with the lowest false detection rate is adopted.

図10に、仮モデル(図では離散化パターンとK値の組によって仮モデルを表現している)と、誤検知率とをまとめた表を示す。この例では、交差検証法を用いて、各仮モデルについて、誤検知率を求めている。学習部16は、この中から、最も誤検知率が低い仮モデル(離散化パターンとK値との組)を選択する。図10の例では、離散化パターン1とKの値(=11)の組に対応する仮モデルが、誤検知率が最も低い。このため、離散化パターン1とKの値(=11)の組に対応する仮モデルをLOFモデルとして選択する。   FIG. 10 shows a table summarizing the temporary model (in the figure, the temporary model is represented by a set of a discretization pattern and a K value) and a false detection rate. In this example, the cross-validation method is used to obtain the false detection rate for each temporary model. The learning unit 16 selects a temporary model (a set of a discretized pattern and a K value) having the lowest false detection rate from among them. In the example of FIG. 10, the provisional model corresponding to the set of the discretization pattern 1 and the value of K (= 11) has the lowest false detection rate. For this reason, the temporary model corresponding to the set of the discretization pattern 1 and the value of K (= 11) is selected as the LOF model.

[判定段階]
制御部12は、データ受信部11を介して、各対象装置からデータを取得し(S31、S32)、取得したデータを受信データ記憶部D1に格納する(S33)。なお、学習段階と、判定段階とで、データを保存するデータベースを分けてもよいし、同じデータベースを用いてもよい。
[Judgment stage]
The control unit 12 acquires data from each target device via the data reception unit 11 (S31, S32), and stores the acquired data in the reception data storage unit D1 (S33). Note that the database for storing data may be divided between the learning stage and the determination stage, or the same database may be used.

また、制御部12は、データの正規化に必要なパラメータ情報(測定値の種類ごとの最大値と平均値)を、設定データ記憶部D2から読み出す(S34)。このパラメータ情報は、学習段階で設定データ記憶部D2に格納したものと同じである。そして、制御部12は、対象装置から取得したデータの加工(ここでは正規化のみ)を依頼する指示情報を、読み出したパラメータ情報とともにデータ加工部13に出力する(S35)。   Further, the control unit 12 reads parameter information (maximum value and average value for each type of measurement value) necessary for data normalization from the setting data storage unit D2 (S34). This parameter information is the same as that stored in the setting data storage unit D2 in the learning stage. Then, the control unit 12 outputs instruction information for requesting processing (here, only normalization) of data acquired from the target device to the data processing unit 13 together with the read parameter information (S35).

データ加工部13は、制御部12に指示されたデータを、正規化用のパラメータ情報に従って加工(ここでは正規化のみ)し、正規化したデータを制御部12に返す(S36)。   The data processing unit 13 processes the data instructed by the control unit 12 according to the parameter information for normalization (here, only normalization), and returns the normalized data to the control unit 12 (S36).

制御部12は、データ加工部13から受け取った正規化後のデータについて、当該データが外れ値か否かの判定を行うことを依頼する指示情報を、外れ値検知部14に出力する(S37)。   The control unit 12 outputs, to the outlier detection unit 14, instruction information for requesting to determine whether the data after the normalization received from the data processing unit 13 is an outlier (S37). .

外れ値検知部14は、制御部12から指示されたデータが外れ値か否か(すなわち対象装置が異常か否か)を、LOFモデルに基づき判定する。外れ値検知部14は、当該判定結果を、制御部12に返す(S38)。   The outlier detection unit 14 determines whether the data instructed by the control unit 12 is an outlier (that is, whether the target device is abnormal) based on the LOF model. The outlier detection unit 14 returns the determination result to the control unit 12 (S38).

具体的な動作例として、外れ値検知部14は、制御部12から指示されたデータと、LOFモデルとからスコアを計算する。このスコアの計算の動作例を説明する。LOFモデルに含まれる加工データセットをプロットしたN次元空間対象に、判定対象となるデータをさらにプロットした場合に、判定対象となるデータを表す点を注目点として、注目点から近い順に、K番目に近い点まで(すなわちK距離圏内のK個の点)を特定する。注目点について、K個の点のそれぞれとの距離を計算し、注目点に対する密度を算出する。例えば、注目点からK個の点までの距離の平均の逆数により、密度を計算する。特定したK個の点のそれぞれについても同様にして、K距離圏内のK個の点を特定し、密度を求める。   As a specific operation example, the outlier detection unit 14 calculates a score from the data instructed by the control unit 12 and the LOF model. An operation example of the score calculation will be described. When further plotting the data to be judged on the N-dimensional space object on which the machining data set included in the LOF model is plotted, the point representing the data to be judged is the point of interest, and the Kth Up to a point close to (that is, K points within the K distance range). For the attention point, the distance to each of the K points is calculated, and the density for the attention point is calculated. For example, the density is calculated from the average reciprocal of the distance from the point of interest to K points. Similarly, for each of the specified K points, K points within the K distance range are specified, and the density is obtained.

注目点に対して求めた密度と、特定したK個の点のそれぞれについて求めた密度とから、スコアを計算する。そして、スコアを閾値と比較し、スコアが閾値以上であれば、判定対象となるデータは外れ値である(すなわち、対象装置は異常状態にある、もしくは異常状態にある可能性がある)と判断する。一方、スコアが閾値未満であれば、判定対象となるデータは、外れ値でない(対象装置は正常状態にある)と判断する。ここで用いる閾値(判定段階用の閾値)は、学習段階で用いたものと同じ値でもよいし、学習段階で用いたものと異なる値でもよい。後者の場合、管理者がユーザインタフェースを介して閾値を入力してもよいし、予めメモリ等の記憶部に判定段階用の閾値を格納しておき、これを読み出してもよい。   A score is calculated from the density obtained for the attention point and the density obtained for each of the specified K points. Then, the score is compared with a threshold, and if the score is equal to or greater than the threshold, it is determined that the data to be determined is an outlier (that is, the target device is in an abnormal state or may be in an abnormal state). To do. On the other hand, if the score is less than the threshold value, it is determined that the data to be determined is not an outlier (the target device is in a normal state). The threshold value used here (the threshold value for the determination stage) may be the same value as that used in the learning stage, or may be a value different from that used in the learning stage. In the latter case, an administrator may input a threshold value via a user interface, or a threshold value for a determination step may be stored in advance in a storage unit such as a memory and read out.

判定時の演算量を低減するため、LOFモデルに使用した加工データセットの各データについて、K距離内のK個のデータがどれであるかを特定した情報(近傍データ情報と呼ぶ)を、テーブル等の形式で保存しておいてもよい。この近傍データ情報を利用することで、注目点のK距離圏内に存在するK個の各点についてK距離を求める際、各点のK距離圏に存在する点(データ)を特定する処理を高速に行うことができる。この場合、本実施形態のLOFモデルは、Kの値に加え、当該近傍データ情報を含んでもよい。   In order to reduce the amount of calculation at the time of determination, for each data of the machining data set used for the LOF model, information specifying which K pieces of data within the K distance (referred to as neighborhood data information) It may be saved in a format such as. By using this neighborhood data information, when obtaining the K distance for each of the K points existing within the K distance range of the target point, the process of specifying the points (data) existing within the K distance range of each point can be performed at high speed. Can be done. In this case, the LOF model of this embodiment may include the neighborhood data information in addition to the value of K.

制御部12は、外れ値検知部14から受けとった判定結果と、判定対象となったデータ(正規化前のデータとするが、正規化後のデータでもよい)とを、結果データ記憶部D3に格納する(S39)。制御部12は、データ加工部13から受けた判定結果が、判定対象となったデータが外れ値であることを示す場合、アラート送信部15にアラート送信を依頼する指示情報を出力する(S40)。アラート送信部15は、制御部12の指示情報に従って、監視装置30にアラートメッセージを送信する(S41)。アラートメッセージの構成は任意でよいが、一例として、外れ値と判定されたデータ(正規化前のデータとするが、正規化後のデータでもよい)、および当該データの送信元となる対象機器の識別情報を含む。   The control unit 12 stores the determination result received from the outlier detection unit 14 and the data to be determined (data before normalization, but data after normalization may be used) in the result data storage unit D3. Store (S39). When the determination result received from the data processing unit 13 indicates that the data to be determined is an outlier, the control unit 12 outputs instruction information for requesting the alert transmission unit 15 to transmit an alert (S40). . The alert transmission unit 15 transmits an alert message to the monitoring device 30 according to the instruction information of the control unit 12 (S41). The configuration of the alert message may be arbitrary, but as an example, the data determined to be an outlier (the data before normalization may be data after normalization) and the target device that is the transmission source of the data Contains identification information.

図11に監視装置30のブロック図を示す。通信部33は、情報処理装置10の制御部12からアラートメッセージを受信する。制御部31は、アラートメッセージを表示部35に表示するとともに、記憶部32に格納する。操作部34は、監視装置30の管理者により操作される入力インタフェースである。管理者は、表示部35に表示されたアラートメッセージを確認すると、操作部34を用いて、対象装置20の管理者端末または対象装置20に、外れ値が検出されたことを通知するメッセージを送信する操作を行ってもよい。   FIG. 11 shows a block diagram of the monitoring device 30. The communication unit 33 receives an alert message from the control unit 12 of the information processing apparatus 10. The control unit 31 displays the alert message on the display unit 35 and stores it in the storage unit 32. The operation unit 34 is an input interface operated by an administrator of the monitoring device 30. Upon confirming the alert message displayed on the display unit 35, the administrator transmits a message notifying that the outlier has been detected to the administrator terminal of the target device 20 or the target device 20 using the operation unit 34. You may perform operation to do.

以上、本実施形態によれば、LOFによる機械学習において、学習データセットをデータ分布の偏りを緩和するように(データ分布を均一化するように)加工することにより、学習データ数が少ない場合においても、誤検知の極めて少ないモデルを作成することが可能となる。すなわち、学習データセットに偶発的なデータ分布の偏りが存在する場合においても、精度の高いモデルを作成できる。さらに、データ数削減による演算速度の向上も見込める。   As described above, according to the present embodiment, in the machine learning by LOF, when the learning data set is processed so as to reduce the bias of the data distribution (so as to make the data distribution uniform), the number of learning data is small. However, it is possible to create a model with very few false detections. That is, even when an accidental data distribution bias exists in the learning data set, a highly accurate model can be created. In addition, the calculation speed can be improved by reducing the number of data.

また、本実施形態で、標準偏差の値と端数処理とを利用した離散化を行っており、この方式を利用することで、データ分布の偏りを緩和して(密度の高い領域の密度を低くして)、精度の高いLOFモデルを生成できることが、本発明者により確認されている。ただし、本実施形態は、標準偏差の値を用いることに限定されず、目盛り幅に応じて密度の高い領域に属する点間の距離を広げることができる加工が可能な限り、別の値を利用することも可能である。   Also, in this embodiment, discretization is performed using standard deviation values and fraction processing. By using this method, data distribution bias is alleviated (the density of high-density regions is reduced). It has been confirmed by the present inventor that a highly accurate LOF model can be generated. However, the present embodiment is not limited to using the value of the standard deviation, and another value is used as long as processing that can widen the distance between points belonging to a high-density area according to the scale width is possible. It is also possible to do.

本実施形態に係る情報処理装置のハードウェア構成について、図12を参照して説明する。本実施形態に係る情報処理装置は、コンピュータ100により構成される。図12は、コンピュータ100の一例を示す図である。   A hardware configuration of the information processing apparatus according to the present embodiment will be described with reference to FIG. The information processing apparatus according to the present embodiment is configured by a computer 100. FIG. 12 is a diagram illustrating an example of the computer 100.

図12のコンピュータ100は、プロセッサ101と、入力装置102と、表示装置103と、通信装置104と、記憶装置105と、を備える。プロセッサ101、入力装置102、表示装置103、通信装置104、および記憶装置105は、バス106により相互に接続されている。   A computer 100 in FIG. 12 includes a processor 101, an input device 102, a display device 103, a communication device 104, and a storage device 105. The processor 101, the input device 102, the display device 103, the communication device 104, and the storage device 105 are connected to each other via a bus 106.

プロセッサ101は、コンピュータ100の制御装置および演算装置を含む電子回路である。プロセッサ101として、例えば、汎用目的プロセッサ、中央処理装置(CPU)、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、コントローラ、マイクロコントローラ、状態マシン、特定用途向け集積回路、フィールドプログラマブルゲートアレイ(FPGA)、プログラム可能論理回路(PLD)、およびこれらの組合せを用いることができる。   The processor 101 is an electronic circuit including a control device and a calculation device of the computer 100. Examples of the processor 101 include a general-purpose processor, a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a controller, a microcontroller, a state machine, an application-specific integrated circuit, a field programmable gate array (FPGA), and a program Possible logic circuits (PLDs) and combinations thereof can be used.

プロセッサ101は、バス106を介して接続された各装置(例えば、入力装置102、通信装置104、記憶装置105)から入力されたデータやプログラムに基づいて演算処理を行い、演算結果や制御信号を、バス106を介して接続された各装置(例えば、表示装置103、通信装置104、記憶装置105)に出力する。具体的には、プロセッサ101は、コンピュータ100のOS(オペレーティングシステム)や、図3の情報処理装置の機能を実現する情報処理プログラムなどを実行し、コンピュータ100を構成する各装置を制御する。   The processor 101 performs arithmetic processing based on data or a program input from each device (for example, the input device 102, the communication device 104, and the storage device 105) connected via the bus 106, and outputs a calculation result and a control signal. And output to each device (for example, the display device 103, the communication device 104, and the storage device 105) connected via the bus 106. Specifically, the processor 101 executes an OS (operating system) of the computer 100, an information processing program for realizing the functions of the information processing apparatus in FIG.

情報処理プログラムは、コンピュータ100に、情報処理装置の上述の各機能構成を実現させるプログラムである。情報処理プログラムは、コンピュータ読み取り可能な記憶媒体に記憶される。上記の記憶媒体は、例えば、光ディスク、光磁気ディスク、磁気ディスク、磁気テープ、フラッシュメモリ、半導体メモリであるが、これに限られない。プロセッサ101が情報処理プログラムを実行することにより、コンピュータ100が情報処理装置として機能する。   The information processing program is a program that causes the computer 100 to realize the above-described functional configurations of the information processing apparatus. The information processing program is stored in a computer-readable storage medium. The storage medium is, for example, an optical disk, a magneto-optical disk, a magnetic disk, a magnetic tape, a flash memory, or a semiconductor memory, but is not limited thereto. When the processor 101 executes the information processing program, the computer 100 functions as an information processing apparatus.

入力装置102は、コンピュータ100に情報を入力するための装置である。入力装置102は、例えば、キーボード、マウス、およびタッチパネルであるが、これに限られない。ユーザは、入力装置102を用いることにより、各種の設定を行うことができる。   The input device 102 is a device for inputting information to the computer 100. The input device 102 is, for example, a keyboard, a mouse, and a touch panel, but is not limited thereto. The user can make various settings by using the input device 102.

表示装置103は、画像や映像を表示するための装置である。表示装置103は、例えば、LCD(液晶ディスプレイ)、CRT(ブラウン管)、およびPDP(プラズマディスプレイ)であるが、これに限られない。表示装置103は、GUI又はCUIを表示する。また、表示装置103は、記憶装置105に記憶された各種のデータを表示してもよい。   The display device 103 is a device for displaying images and videos. The display device 103 is, for example, an LCD (liquid crystal display), a CRT (CRT), and a PDP (plasma display), but is not limited thereto. The display device 103 displays a GUI or CUI. The display device 103 may display various data stored in the storage device 105.

通信装置104は、コンピュータ100が外部装置と無線又は有線で通信するための装置である。通信装置104は、例えば、モデム、ハブ、およびルータであるが、これに限られない。センサのデータは、通信装置104を介して外部装置から入力され、記憶装置105に記憶されてもよい。   The communication device 104 is a device for the computer 100 to communicate with an external device wirelessly or by wire. The communication device 104 is, for example, a modem, a hub, and a router, but is not limited thereto. The sensor data may be input from an external device via the communication device 104 and stored in the storage device 105.

記憶装置105は、コンピュータ100のOSや、情報処理プログラム、情報処理プログラムの実行に必要なデータ、および情報処理の実行により生成されたデータなどを記憶するハードウェアの記憶媒体である。記憶装置105には、主記憶装置と外部記憶装置とが含まれる。主記憶装置は、例えば、RAM、DRAM、SRAM、NANDフラッシュ型メモリであるが、これに限られない。また、外部記憶装置は、例えば、ハードディスク、光ディスク、SSD、および磁気テープであるが、これに限られない。記憶装置105は、図3の記憶装置17に対応する。   The storage device 105 is a hardware storage medium that stores the OS of the computer 100, an information processing program, data necessary for execution of the information processing program, data generated by execution of the information processing, and the like. The storage device 105 includes a main storage device and an external storage device. The main storage device is, for example, a RAM, a DRAM, an SRAM, or a NAND flash memory, but is not limited thereto. The external storage device is, for example, a hard disk, an optical disk, an SSD, and a magnetic tape, but is not limited thereto. The storage device 105 corresponds to the storage device 17 of FIG.

なお、コンピュータ100は、プロセッサ101、入力装置102、表示装置103、通信装置104、および記憶装置105を、それぞれ1つ又は複数備えてもよいし、プリンタやスキャナなどの周辺機器を接続されていてもよい。また、コンピュータ100は、表示装置103または入力装置102を備えない構成でもよい。   Note that the computer 100 may include one or more processors 101, input devices 102, display devices 103, communication devices 104, and storage devices 105, and is connected to peripheral devices such as printers and scanners. Also good. The computer 100 may be configured not to include the display device 103 or the input device 102.

また、図3の情報処理装置は、単一のコンピュータ100により構成されてもよいし、相互に接続された複数のコンピュータ100からなるシステムとして構成されてもよい。   3 may be configured by a single computer 100, or may be configured as a system including a plurality of computers 100 connected to each other.

さらに、情報処理プログラムは、コンピュータ100の記憶装置105に予め記憶されていてもよいし、コンピュータ100の外部の記憶媒体に記憶されていてもよいし、インターネット上にアップロードされていてもよい。いずれの場合も、情報処理プログラムをコンピュータ100にインストールして実行することにより、情報処理装置の機能が実現される。   Further, the information processing program may be stored in advance in the storage device 105 of the computer 100, may be stored in a storage medium outside the computer 100, or may be uploaded on the Internet. In any case, the functions of the information processing apparatus are realized by installing and executing the information processing program in the computer 100.

本実施形態における用語“プロセッサ”は汎用目的プロセッサまたは中央処理装置(CPU)でもよいし、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の回路でもよいし、これらの組合せでもよい。汎用目的プロセッサまたはCPUの場合、命令コードを記述したプログラムを、汎用目的プロセッサまたはCPUに実行させることにより、本実施形態の情報処理装置の機能を実現できる。   The term “processor” in the present embodiment may be a general-purpose processor or a central processing unit (CPU), or may be a circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA), or a combination thereof. . In the case of a general purpose processor or CPU, the function of the information processing apparatus according to the present embodiment can be realized by causing the general purpose processor or CPU to execute a program describing an instruction code.

また、用語“記憶装置”は、ハードディスク装置、SSD(Solid State Drive)等、データを永続的に記憶可能なストレージ装置でもよいし、メモリでもよい。メモリは、DRAM(Dynamic RAM(Random Access Memory))、SRAM(Static RAM)等の揮発性メモリでもよいし、MRAM(Magnetoresistive RAM)、NAND(inverted AND)型フラッシュメモリ等の不揮発性メモリでもよいし、これらの両方でもよい。これらのメモリは、プロセッサによって読み出しおよび書き込みの少なくとも一方が可能である。   The term “storage device” may be a storage device capable of permanently storing data, such as a hard disk device or an SSD (Solid State Drive), or a memory. The memory may be a volatile memory such as a DRAM (Dynamic RAM (Random Access Memory)) or SRAM (Static RAM), or a non-volatile memory such as an MRAM (Magnetic Resistive RAM) or NAND (inverted AND) flash memory. Both of these may be used. These memories can be read and / or written by the processor.

本発明は、上述した実施形態に限定されるものではなく、本発明の構成要素を種々に具体化できる。また、上記実施形態における各構成要素を適宜、拡張し、変更し、削除し、または組み合わせて、本発明を形成することも可能である。また、別の構成要素を新たに追加して、本発明を形成することも可能である。   The present invention is not limited to the above-described embodiment, and various constituent elements of the present invention can be embodied. In addition, the present invention can be formed by appropriately expanding, changing, deleting, or combining each component in the above embodiment. It is also possible to add another component to form the present invention.

10:情報処理装置
20:監視対象装置(対象装置)
30:監視装置
40:ネットワーク
11:データ受信部
12:制御部
13:データ加工部
14:外れ値検知部
15:アラート送信部
16:学習部
17:記憶装置
21:データ測定部
22:データ送信部
31:制御部
32:記憶部
33:通信部
34:操作部
35:表示部
10: Information processing device 20: Monitoring target device (target device)
30: Monitoring device 40: Network 11: Data reception unit 12: Control unit 13: Data processing unit 14: Outlier detection unit 15: Alert transmission unit 16: Learning unit 17: Storage device 21: Data measurement unit 22: Data transmission unit 31: Control unit 32: Storage unit 33: Communication unit 34: Operation unit 35: Display unit

Claims (11)

複数の対象装置の状態を表すN次元のデータ群を、複数のパターンで離散化するデータ加工部と、
前記複数のパターンで前記データ群を離散化した複数の離散化データ群と、LOF(Local outlier factor)のパラメータKの複数の候補値とをそれぞれ1つずつ組み合わせて複数の仮モデルを生成し、前記データ群に基づき前記複数の仮モデルを評価することにより、前記複数の仮モデルからモデルを選択する学習部と
を備えた情報処理装置。
A data processing unit for discretizing an N-dimensional data group representing the states of a plurality of target devices with a plurality of patterns;
Combining a plurality of discretized data groups obtained by discretizing the data groups with the plurality of patterns and a plurality of candidate values of LOF (Local outer factor) parameters K one by one to generate a plurality of temporary models; An information processing apparatus comprising: a learning unit that selects a model from the plurality of temporary models by evaluating the plurality of temporary models based on the data group.
前記学習部は、前記データ群に基づき前記複数の仮モデルのそれぞれの評価値を計算し、前記評価値に基づき、前記複数の仮モデルから前記モデルを選択する
請求項1に記載の情報処理装置。
The information processing apparatus according to claim 1, wherein the learning unit calculates an evaluation value of each of the plurality of temporary models based on the data group, and selects the model from the plurality of temporary models based on the evaluation value. .
前記学習部は、前記仮モデルに基づき前記データ群の各データのスコアを計算し、前記スコアに基づき、前記仮モデルの評価値を計算する
請求項2に記載の情報処理装置。
The information processing apparatus according to claim 2, wherein the learning unit calculates a score of each data of the data group based on the temporary model, and calculates an evaluation value of the temporary model based on the score.
前記評価値は、前記スコアのばらつきを表す値である
請求項3に記載の情報処理装置。
The information processing apparatus according to claim 3, wherein the evaluation value is a value representing variation in the score.
前記ばらつきを表す値は、標準偏差、不偏標準偏差または分散である
請求項4に記載の情報処理装置。
The information processing apparatus according to claim 4, wherein the value representing the variation is a standard deviation, an unbiased standard deviation, or a variance.
前記学習部は、前記標準偏差、前記不偏標準偏差または前記分散が最も小さい前記仮モデルを前記モデルとして選択する
請求項5に記載の情報処理装置。
The information processing apparatus according to claim 5, wherein the learning unit selects the temporary model having the smallest standard deviation, unbiased standard deviation, or variance as the model.
前記仮モデルの前記評価値は、前記仮モデルに基づく前記データ群の識別率である
請求項2に記載の情報処理装置。
The information processing apparatus according to claim 2, wherein the evaluation value of the temporary model is an identification rate of the data group based on the temporary model.
前記データ加工部は、前記データに含まれるN個の値のそれぞれを第1の値〜第Nの値により除算し、除算後の値を端数処理し、端数処理後の値に前記第1の値〜第Nの値のそれぞれを乗じることにより、前記データ群を離散化し、前記第1の値〜第Nの値は、前記データ群における前記N個の値のそれぞれのばらつきを表す値を所定値で除算した値である
請求項1ないし7のいずれか一項に記載の情報処理装置。
The data processing unit divides each of N values included in the data by a first value to an Nth value, rounds the value after the division, and sets the first value to the value after the rounding process. The data group is discretized by multiplying each of the value to the Nth value, and the first value to the Nth value are predetermined values representing the variations of the N values in the data group. The information processing apparatus according to claim 1, wherein the information processing apparatus is a value divided by a value.
前記対象装置から判定対象となる、第1の測定値〜第Nの測定値を含むデータを受信するデータ受信部と、
前記選択したモデルに基づいて前記受信したデータのスコアを計算し、前記スコアを閾値と比較することにより、前記データが外れ値か否かを判定する外れ値検知部と、
を備えた請求項1ないし8のいずれか一項に記載の情報処理装置。
A data receiving unit that receives data including a first measurement value to an Nth measurement value, which is a determination target from the target device;
An outlier detector that calculates a score of the received data based on the selected model and compares the score with a threshold to determine whether the data is an outlier;
The information processing apparatus according to any one of claims 1 to 8, further comprising:
複数の対象装置の状態を表すN次元のデータ群を、複数のパターンで離散化するステップと、
前記複数のパターンで前記データ群を離散化した複数の離散化データ群と、LOF(Local outlier factor)のパラメータKの複数の候補値とをそれぞれ1つずつ組み合わせて複数の仮モデルを生成し、前記データ群に基づき前記複数の仮モデルを評価することにより、前記複数の仮モデルからモデルを選択するステップと
を備えた情報処理方法。
Discretizing N-dimensional data groups representing the states of a plurality of target devices with a plurality of patterns;
Combining a plurality of discretized data groups obtained by discretizing the data groups with the plurality of patterns and a plurality of candidate values of LOF (Local outer factor) parameters K one by one to generate a plurality of temporary models; Selecting a model from the plurality of temporary models by evaluating the plurality of temporary models based on the data group.
複数の対象装置の状態を表すN次元のデータ群を、複数のパターンで離散化するステップと、
前記複数のパターンで前記データ群を離散化した複数の離散化データ群と、LOF(Local outlier factor)のパラメータKの複数の候補値とをそれぞれ1つずつ組み合わせて複数の仮モデルを生成し、前記データ群に基づき前記複数の仮モデルを評価することにより、前記複数の仮モデルからモデルを選択するステップと
をコンピュータに実行させるためのコンピュータプログラム。
Discretizing N-dimensional data groups representing the states of a plurality of target devices with a plurality of patterns;
Combining a plurality of discretized data groups obtained by discretizing the data groups with the plurality of patterns and a plurality of candidate values of LOF (Local outer factor) parameters K one by one to generate a plurality of temporary models; A computer program for causing a computer to execute a step of selecting a model from the plurality of temporary models by evaluating the plurality of temporary models based on the data group.
JP2017183925A 2017-03-30 2017-09-25 Information processing apparatus, information processing method, and computer program Active JP6313516B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017068835 2017-03-30
JP2017068835 2017-03-30

Publications (2)

Publication Number Publication Date
JP6313516B1 JP6313516B1 (en) 2018-04-18
JP2018169994A true JP2018169994A (en) 2018-11-01

Family

ID=61968301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017183925A Active JP6313516B1 (en) 2017-03-30 2017-09-25 Information processing apparatus, information processing method, and computer program

Country Status (1)

Country Link
JP (1) JP6313516B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112018004339T5 (en) 2017-09-29 2020-05-07 Denso Corporation FUEL INJECTION VALVE
JP2021174335A (en) * 2020-04-28 2021-11-01 株式会社マネーフォワード Information processing device and program
JP2021530017A (en) * 2019-08-27 2021-11-04 クーパン コーポレイション Computerized method for detecting fraudulent transactions using locality-sensitive hashing and local outlier factor algorithms
WO2021256443A1 (en) * 2020-06-15 2021-12-23 Jfeスチール株式会社 Mechanical property measurement device, mechanical property measurement method, material manufacturing facility, material managing method, and material manufacturing method
JPWO2021256442A1 (en) * 2020-06-15 2021-12-23

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7007243B2 (en) * 2018-07-04 2022-01-24 株式会社日立製作所 Anomaly detection system
CN116660667B (en) * 2023-07-26 2023-10-24 山东金科电气股份有限公司 Transformer abnormality monitoring method and system
CN117216484B (en) * 2023-11-08 2024-01-26 山东汇蓝环保科技有限公司 Environmental data monitoring method based on multidimensional data analysis
CN118017504B (en) * 2024-04-08 2024-06-14 菱亚能源科技(深圳)股份有限公司 Substation GIS (geographic information system) adjusting method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003141159A (en) * 2001-11-06 2003-05-16 Fujitsu Ltd Search device and method using distance index
JP2017033526A (en) * 2015-07-31 2017-02-09 ファナック株式会社 Machine learning device and machine learning method for learning fault condition and fault prediction device and fault prediction system equipped with machine learning device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003141159A (en) * 2001-11-06 2003-05-16 Fujitsu Ltd Search device and method using distance index
JP2017033526A (en) * 2015-07-31 2017-02-09 ファナック株式会社 Machine learning device and machine learning method for learning fault condition and fault prediction device and fault prediction system equipped with machine learning device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MARKUS M. BREUNIG, ET AL.: "LOF: Identifying Density-Based Local Outliers", PROC. OF THE 2000 ACM SIGMOD INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA, JPN7017001669, 16 May 2000 (2000-05-16), US, pages 93 - 104, XP055226141, ISSN: 0003728995, DOI: 10.1145/342009.335388 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112018004339T5 (en) 2017-09-29 2020-05-07 Denso Corporation FUEL INJECTION VALVE
JP2021530017A (en) * 2019-08-27 2021-11-04 クーパン コーポレイション Computerized method for detecting fraudulent transactions using locality-sensitive hashing and local outlier factor algorithms
US11263643B2 (en) 2019-08-27 2022-03-01 Coupang Corp. Computer-implemented method for detecting fraudulent transactions using locality sensitive hashing and locality outlier factor algorithms
JP2021174335A (en) * 2020-04-28 2021-11-01 株式会社マネーフォワード Information processing device and program
JP7511379B2 (en) 2020-04-28 2024-07-05 株式会社マネーフォワード Information processing device and program
WO2021256443A1 (en) * 2020-06-15 2021-12-23 Jfeスチール株式会社 Mechanical property measurement device, mechanical property measurement method, material manufacturing facility, material managing method, and material manufacturing method
JPWO2021256443A1 (en) * 2020-06-15 2021-12-23
JPWO2021256442A1 (en) * 2020-06-15 2021-12-23
WO2021256442A1 (en) * 2020-06-15 2021-12-23 Jfeスチール株式会社 Mechanical property measuring device, mechanical property measuring method, substance manufacturing facility, substance management method, and substance manufacturing method
JP7095815B2 (en) 2020-06-15 2022-07-05 Jfeスチール株式会社 Mechanical property measuring device, mechanical property measuring method, substance manufacturing equipment, substance management method and substance manufacturing method
JP7095814B2 (en) 2020-06-15 2022-07-05 Jfeスチール株式会社 Mechanical property measuring device, mechanical property measuring method, substance manufacturing equipment, substance management method and substance manufacturing method
US12099033B2 (en) 2020-06-15 2024-09-24 Jfe Steel Corporation Mechanical property measuring apparatus, mechanical property measuring method, substance manufacturing equipment, substance management method, and substance manufacturing method

Also Published As

Publication number Publication date
JP6313516B1 (en) 2018-04-18

Similar Documents

Publication Publication Date Title
JP6313516B1 (en) Information processing apparatus, information processing method, and computer program
JP7353238B2 (en) Method and system for performing automated root cause analysis of abnormal events in high-dimensional sensor data
JP7205139B2 (en) Systems, methods, and computer program products for anomaly detection
CN113792453B (en) Digital twinning-based partial discharge monitoring system, method and device
US12086699B2 (en) Venue detection
Yang et al. A systematic approach to occupancy modeling in ambient sensor-rich buildings
US20190012553A1 (en) Diagnostic device, diagnosis method and computer program
US11157346B2 (en) System and method for binned inter-quartile range analysis in anomaly detection of a data series
JP2018195308A (en) Methods and systems for optimization based on performance metrics data in the process and manufacturing industries
US11126519B2 (en) Monitoring device, monitoring method and non-transitory storage medium
JP2020107577A (en) Data processing device, data processing method, and computer program
US10970128B2 (en) Server, air conditioner and method for controlling thereof
McAssey An empirical goodness-of-fit test for multivariate distributions
TWI710922B (en) System and method of training behavior labeling model
JP2008269215A (en) Singular pattern detection system, model learning device, singular pattern detection method, and computer program
CN117669384B (en) Intelligent monitoring method and system for temperature sensor production based on Internet of things
JP2020512631A (en) Automated decision making using stepwise machine learning
WO2017034512A1 (en) Interactive analytics on time series
Tran et al. Change detection in streaming data in the era of big data: models and issues
CN115905450B (en) Water quality anomaly tracing method and system based on unmanned aerial vehicle monitoring
CN111382278B (en) A social network construction method and construction system based on spatio-temporal trajectory
US20210385238A1 (en) Systems And Methods For Anomaly Detection
Chirayil et al. Survey on anomaly detection in wireless sensor networks (WSNs)
CN114547145A (en) Method, system, storage medium and equipment for detecting time sequence data abnormity
CN118132319A (en) Fusion anomaly detection method, device, equipment, storage medium and product

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180207

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180322

R150 Certificate of patent or registration of utility model

Ref document number: 6313516

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531