WO2021075009A1 - 学習装置、推定装置、学習方法及び学習プログラム - Google Patents

学習装置、推定装置、学習方法及び学習プログラム Download PDF

Info

Publication number
WO2021075009A1
WO2021075009A1 PCT/JP2019/040777 JP2019040777W WO2021075009A1 WO 2021075009 A1 WO2021075009 A1 WO 2021075009A1 JP 2019040777 W JP2019040777 W JP 2019040777W WO 2021075009 A1 WO2021075009 A1 WO 2021075009A1
Authority
WO
WIPO (PCT)
Prior art keywords
domain
latent
sample
learning
objective function
Prior art date
Application number
PCT/JP2019/040777
Other languages
English (en)
French (fr)
Inventor
充敏 熊谷
具治 岩田
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2021552047A priority Critical patent/JP7331938B2/ja
Priority to PCT/JP2019/040777 priority patent/WO2021075009A1/ja
Priority to US17/764,995 priority patent/US20220405585A1/en
Publication of WO2021075009A1 publication Critical patent/WO2021075009A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0895Weakly supervised learning, e.g. semi-supervised or self-supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/096Transfer learning

Definitions

  • the present invention relates to a learning device, an estimation device, a learning method, and a learning program.
  • Abnormality detection refers to a technique for detecting a sample that behaves differently from the majority of normal samples as anomaly. Anomaly detection is used in various practical applications such as intrusion detection, medical image diagnosis, and industrial system monitoring.
  • Semi-supervised anomaly detection is a method of learning an anomaly detector using only normal samples and using it to detect anomalies.
  • Supervised anomaly detection is a method of learning anomaly detectors by using anomaly samples in addition to normal samples.
  • supervised anomaly detection uses both normal and abnormal samples for learning, so it often shows higher performance than semi-supervised anomaly detection.
  • the target domain even if the abnormal sample is not available in the domain of interest (called the target domain), it may be available in the related domain (called the related domain).
  • the related domain For example, in the cyber security field, there is a service that centrally monitors the networks of multiple customers and detects signs of cyber attacks. Even if there is no data (abnormal sample) at the time of an attack on the new customer network (target domain), it is highly likely that it will be available on the existing customer network (related domain) that has been monitored for a long time.
  • anomalous samples are not available in newly introduced systems (target domains), but may be available in existing systems (related domains) that have been in operation for a long period of time.
  • New features are learned in advance from samples of related domains using a neural network, and anomaly detectors are used by the semi-supervised anomaly detection method using the learned features and normal samples of the target domain.
  • a learning method is known (see, for example, Non-Patent Document 1).
  • Non-Patent Document 2 there is known a method of learning a function for converting a parameter of a normal sample generation distribution to a parameter of an abnormal sample generation distribution using normal and abnormal samples of a plurality of related domains (for example,). See Non-Patent Document 2).
  • the parameters of the normal sample generation distribution of the target domain are input to the trained function to generate the parameters of the abnormal sample in a pseudo manner, and the parameters of the normal and abnormal generation distribution are used to be suitable for the target domain.
  • Build an anomaly detector is used to be suitable for the target domain.
  • Non-Patent Document 1 it may be difficult to perform accurate abnormality detection without learning a sample of a target domain.
  • IoT Internet of Things
  • IoT devices do not have sufficient computing resources, it is difficult to perform burdensome learning on these terminals even if a sample of the target domain can be obtained.
  • cyber attacks on IoT devices are increasing rapidly, but there are a wide variety of IoT devices (for example, cars, TVs, smartphones, etc., and the characteristics of data differ depending on the vehicle type), and new IoT devices are being created one after another. Is released to the world, so if high-cost learning is performed every time a new IoT device (target domain) appears, it will not be possible to respond to cyber attacks.
  • Non-Patent Document 1 Since the method described in Non-Patent Document 1 is based on the premise that a normal sample of the target domain can be used at the time of learning, the above-mentioned problem occurs. Further, in the method described in Non-Patent Document 2, by learning the parameter conversion function in advance, anomaly detection can be executed immediately (without learning) when a sample of the target domain is given. However, since it is necessary to estimate the generation distribution of anomalous samples in the related domain, if only a small amount of anomalous samples are available, it is not possible to create an accurate generation distribution and it is difficult to perform accurate anomaly detection. Is.
  • the learning device of the present invention is a latent expression calculation unit that calculates a latent expression representing the characteristics of the domain from a sample belonging to the domain by using the first model.
  • the objective function generation unit that generates the objective function for the second model that calculates the anomaly score of the sample from the sample belonging to the domain and the latent expression of the domain calculated by the latent expression calculation unit. It is characterized by having an update unit that updates the first model and the second model so that the objective functions of a plurality of domains calculated by the objective function generation unit are optimized.
  • FIG. 1 is a diagram showing a configuration example of a learning device and an estimation device according to the first embodiment.
  • FIG. 2 is a diagram showing a configuration example of the learning unit.
  • FIG. 3 is a diagram showing a configuration example of the estimation unit.
  • FIG. 4 is a diagram for explaining a learning process and an estimation process.
  • FIG. 5 is a flowchart showing a processing flow of the learning device according to the first embodiment.
  • FIG. 6 is a flowchart showing a processing flow of the estimation device according to the first embodiment.
  • FIG. 7 is a diagram showing an example of a computer that executes a learning program or an estimation program.
  • the learning device the estimation device, the learning method, and the embodiment of the learning program according to the present application will be described in detail based on the drawings.
  • the present invention is not limited to the embodiments described below.
  • FIG. 1 is a diagram showing a configuration example of a learning device and an estimation device according to the first embodiment.
  • the learning device 10 and the estimation device 20 may be configured as one device.
  • the learning device 10 includes an input unit 11, an extraction unit 12, a learning unit 13, and a storage unit 14.
  • the target domain is a domain that is the target of abnormality detection.
  • the related domain is a domain related to the target domain.
  • the input unit 11 accepts input of samples of a plurality of domains. Only the normal sample of the related domain, or both the normal sample and the abnormal sample are input to the input unit 11. Further, a normal sample of the target domain may be input to the input unit 11.
  • the extraction unit 12 converts each input sample into a set of a feature vector and a label.
  • the feature vector is a representation of the features of the required data as an n-dimensional number vector.
  • the extraction unit 12 can use a method generally used in machine learning. For example, when the data is text, the extraction unit 12 can perform conversion by morphological analysis, conversion by n-gram, conversion by delimiter, and the like.
  • the label is a tag representing "abnormal" and "normal".
  • the learning unit 13 uses the sample data after feature extraction to output an abnormality detector suitable for the domain from a normal sample set of each domain, which is an "abnormality detector predictor" (hereinafter, simply referred to as a predictor). There is) to learn.
  • an abnormality detector predictor (hereinafter, simply referred to as a predictor).
  • a method used for anomaly detection with semi-supervised learning such as an autoencoder, a Gaussian mixed model (GMM), and kNN can be used.
  • GMM Gaussian mixed model
  • FIG. 2 is a diagram showing a configuration example of the learning unit.
  • the learning unit 13 includes a latent expression calculation unit 131, a domain-specific objective function generation unit 132, an all-domain objective function generation unit 133, and an update unit 134. The processing of each part of the learning part 13 will be described later.
  • the estimation device 20 includes an input unit 21, an extraction unit 22, an estimation unit 23, and an output unit 25.
  • a normal sample set of the target domain or a test sample set of the target domain is input to the input unit 21.
  • the test sample set is a sample whose normal or abnormal state is unknown.
  • the estimation device 20 can execute the detection by receiving the test sample after receiving the normal sample set once.
  • the extraction unit 22 converts each input sample into a set of a feature vector and a label in the same manner as the extraction unit 12.
  • the estimation unit 23 outputs an abnormality detector from a normal sample set using the trained predictor.
  • the estimation unit 23 estimates whether the test sample is abnormal or normal by using the obtained abnormality detector.
  • the estimation unit 23 can save the abnormality detector, and thereafter, when a test sample of the target domain is input, can perform estimation using the saved abnormality detector.
  • the output unit 25 outputs the detection result. For example, the output unit 25 outputs whether the test sample is abnormal or normal based on the estimation result of the estimation unit 23. Further, the output unit 25 may output a list of test samples estimated by the estimation unit 23 as abnormal as a detection result.
  • FIG. 3 is a diagram showing a configuration example of the estimation unit.
  • the estimation unit 23 includes a model acquisition unit 231, a latent expression calculation unit 232, and a score calculation unit 233. The processing of each part of the estimation unit 23 will be described later.
  • FIG. 4 is a diagram for explaining a learning process and an estimation process.
  • the Target domain in FIG. 4 is the target domain.
  • Source domain 1 and Source domain 2 are related domains.
  • the learning device 10 calculates the latent domain vector z d representing the characteristics of the domain from the normal sample set of each domain, and uses the latent domain vector to generate an anomaly detector. Do learning. Then, if a normal sample of the target domain is given, the estimation device 20 generates an anomaly detector suitable for the target domain using the trained predictor, and uses the generated anomaly detector to generate a test sample (anomalous). (Test)) abnormality detection can be performed. Therefore, if the predictor has been trained, the estimation device 20 does not need to relearn the target domain.
  • the abnormal sample set of the d-th related domain is represented by Eq. (1-1).
  • x dn is the M-dimensional feature vector of the nth anomalous sample of the dth related domain.
  • the normal sample set of the d-th related domain shall be expressed by Eq. (1-2).
  • the number of abnormal samples is extremely small compared to the normal sample. That is, the number of N d + abnormal samples, N d - When the number of normal samples, N d + ⁇ N d - holds.
  • the learning unit 13 performs a process for generating a function s d for calculating the anomaly score.
  • the function s d is a function that outputs an abnormality score indicating the degree of abnormality of the sample x when the sample x of the domain d is input.
  • a function s d will be referred to as an anomaly score function.
  • the anomaly score function of this embodiment is based on a general autoencoder (AE: Autoencoder).
  • AE Autoencoder
  • the anomaly score function may be based not only on AE but also on any semi-supervised anomaly detection method such as GMM (Gaussian mixture model) or VAE (Variational AE).
  • F is a neural network called an encoder.
  • G is a neural network called a decoder. Normally, the output of F is set to a dimension smaller than the dimension of the input x. In the autoencoder, when x is input, F converts x to a lower dimension, and then G restores x again.
  • the autoencoder can restore X correctly.
  • the reconstruction error shown in Eq. (4) can be used as the anomaly score function.
  • the d-th domain has a K-dimensional latent representation z d.
  • the K-dimensional vector representing the latent representation z d is called the latent domain vector.
  • the anomaly score function of this embodiment is defined as in Eq. (5) using the latent domain vector.
  • the anomaly score function s ⁇ is an example of the second model.
  • ( ⁇ F , ⁇ G ) is a parameter of the encoder F and the decoder G.
  • the characteristics of the anomaly score function of each domain can be changed by changing z d.
  • the learning unit 13 estimates the latent domain vector z d from the given data.
  • the Gaussian distribution of Eq. (6) is assumed as a model for estimating the latent domain vector z d.
  • the mean function and the covariance function of the Gaussian distribution are modeled by a neural network with the parameter ⁇ , respectively.
  • the latent expression calculation unit 131 calculates the latent expression representing the characteristics of the domain from the sample belonging to the domain by using the first model. That is, the latent domain vector z d is calculated using the neural network of the parameter ⁇ which is an example of the first model.
  • the Gaussian distribution is represented by the mean function and the covariance function.
  • the average function and the covariance function are expressed by the architecture shown in Eq. (7).
  • ⁇ in Eq. (7) is an average function or a covariance function.
  • ⁇ and ⁇ are arbitrary neural networks.
  • the latent expression calculation unit 131 tables the sum of the outputs obtained by inputting each of the samples belonging to the domain into ⁇ by each of the average function and the covariance function as the output obtained by further inputting into ⁇ . Compute the latent representation that follows the Gaussian distribution.
  • is an example of the first neural network.
  • is an example of the second neural network.
  • the latent expression calculation unit 131 calculates ⁇ ave (X d ⁇ ) by the average function ⁇ ave having the neural networks ⁇ ave and ⁇ ave. Further, the latent expression calculation unit 131 calculates ⁇ cov (X d ⁇ ) by the covariance function ⁇ cov having the neural networks ⁇ cov and ⁇ cov.
  • the function based on the architecture of equation (7) can always return a constant output regardless of the order of the sample set. That is, the function based on the architecture of Eq. (7) can take a set as an input. Note that this form of architecture can also represent average and maximum pooling.
  • the domain-specific objective function generation unit 132 and the all-domain objective function generation unit 133 calculate the abnormality score of the sample from the sample belonging to the domain and the latent expression of the domain calculated by the latent expression calculation unit 131. Generate an objective function for. That is, the domain-specific objective function generation unit 132 and the all-domain objective function generation unit 133 generate an objective function for learning the anomaly score function s ⁇ from the normal sample of the related domain and the target domain and the latent expression vector z d. To do.
  • the domain-specific objective function generation unit 132 generates the objective function of the dth related domain as shown in Eq. (8).
  • is a positive real number and f is a sigmoid function.
  • the first term of the objective function of Eq. (8) is the average of the abnormal scores of normal samples.
  • the second term is a continuous approximation of AUC (Area Under the Curve), which is minimized when the score of the abnormal sample becomes larger than the score of the normal sample.
  • the anomaly score function s ⁇ is the reconstruction error. Therefore, the domain-specific objective function generation unit 132 generates the objective function based on the reconstruction error when the sample and the latent expression calculated by the latent expression calculation unit 131 are input to the autoencoder capable of inputting the latent expression. Can be said to do.
  • the objective function of equation (8) was conditioned by the latent domain vector z d. Since the latent domain vector is estimated from the data, there is uncertainty about the estimation. Therefore, the domain-specific objective function generation unit 132 generates a new objective function based on the expected value of the equation (8) as shown in the equation (9).
  • the first term of Eq. (9) is the expected value of the objective function of Eq. (8), which is a robust estimate because it is a quantity that takes into account all the probabilities that the latent domain vector z d can take, that is, uncertainty. Is possible.
  • the domain-specific objective function generation unit 132 can obtain an expected value by integrating the objective function of Eq. (8) with respect to the probability of the latent domain vector z d. In this way, the domain-specific objective function generation unit 132 can generate the objective function using the expected value of the latent expression that follows the distribution.
  • the second term of the objective function in Eq. (9) is a regularization term that prevents overfitting of the latent domain vector, and ⁇ specifies the strength of regularization.
  • P (z d ) is a standard Gaussian distribution and acts as a prior distribution.
  • the domain-specific objective function generation unit 132 can generate the objective function based on the average of the abnormal scores of the normal sample as in Eq. (10).
  • the objective function of Eq. (10) is based on Eq. (8) minus the continuous approximation of AUC. Therefore, the domain-specific objective function generation unit 132 can generate a function for calculating the average of the abnormal scores of the normal sample or a function for subtracting an approximation of AUC from the average of the abnormal scores of the normal sample as the objective function.
  • the all-domain objective function generation unit 133 generates the objective function for all domains as shown in equation (11).
  • ⁇ d is a positive real number representing the importance of the domain d.
  • the objective function of Eq. (11) is differentiable and can be minimized by any gradient-based optimization method.
  • the update unit 134 updates the first model and the second model so that the objective functions of a plurality of domains calculated by the domain-specific objective function generation unit 132 and the all-domain objective function generation unit 133 are optimized. ..
  • the first model in this embodiment is a neural network having a parameter ⁇ for calculating the latent domain vector z d. Therefore, the update unit 134 updates the parameters of the neural networks ⁇ ave and ⁇ ave of the average function, and also updates the parameters of the neural networks ⁇ cov and ⁇ cov of the covariance function. Further, since the second model is an anomaly score function, the update unit 134 updates the parameter ⁇ of the anomaly score function. Further, the update unit 134 stores each updated parameter as a predictor in the storage unit 14.
  • the model acquisition unit 231 acquires the predictor, that is, the parameter ⁇ * of the function for calculating the latent domain vector, and the parameter ⁇ * of the anomaly score calculation function from the storage unit 14 of the learning device 10.
  • Score calculation unit 233 the normal sample set X d'target domain d'- obtained from the anomaly score function as (12). Actually, the score calculation unit 233 uses the approximate expression of the third side of the equation (12) as the anomaly score. The approximate expression on the third side shows that L latent domain vectors are randomly obtained.
  • the latent expression calculation unit 232 calculates ⁇ and ⁇ for each of the L latent domain vectors based on the parameter ⁇ *. Further, the normal sample set of the target domain input here may or may not be used at the time of learning.
  • the latent expression calculation unit 232 calculates the latent expressions of a plurality of related domains related to the target domain by using the first model for calculating the latent expressions representing the characteristics of the domain from the sample belonging to the domain. ..
  • the score calculation unit 233 determines whether the test sample is normal or abnormal depending on whether the score obtained by inputting the test sample of the target domain in the third side of the equation (12) is equal to or higher than the threshold value. To estimate.
  • the score calculation unit 233 inputs each of the L latent expressions of the related domain into the anomaly score function together with the sample xd'of the target domain, and calculates the average of the L abnormal scores obtained from the anomaly score function. ..
  • FIG. 5 is a flowchart showing a processing flow of the learning device according to the first embodiment.
  • the learning device 10 receives a sample of a plurality of domains as an input (step S101).
  • the plurality of domains here may or may not include the target domain.
  • the learning device 10 converts the sample of each domain into a set of a feature vector and a label (step S102). Then, the learning device 10 learns a predictor that outputs a domain-specific abnormality detector from a normal sample set of each domain (step S103).
  • FIG. 6 is a flowchart showing a processing flow of the estimation device according to the first embodiment.
  • the estimation device 20 receives a normal sample set of the target domain and a test sample as inputs (step S104). Next, the estimation device 20 converts each data into a feature vector (step S105).
  • the estimation device 20 outputs an abnormality detector using the abnormality detection predictor, executes detection of each test sample using the output abnormality detector (step S106), and outputs the detection result (step S106). Step S107). That is, the estimation device 20 calculates a latent feature vector from a normal sample of the target domain, generates an anomaly score function using the latent feature vector, and inputs a test sample to the anomaly score function, which is abnormal. Estimate whether it is normal or normal.
  • the latent expression calculation unit 131 calculates the latent expression representing the characteristics of the domain from the sample belonging to the domain by using the first model. Further, the domain-specific objective function generation unit 132 and the all-domain objective function generation unit 133 calculate the abnormality score of the sample from the sample belonging to the domain and the latent expression of the domain calculated by the latent expression calculation unit 131. Generate an objective function for the model of. Further, the update unit 134 sets the first model and the second model so that the objective functions of a plurality of domains calculated by the domain-specific objective function generation unit 132 and the all-domain objective function generation unit 133 are optimized. Update.
  • the learning device 10 can learn the first model that can predict the second model for calculating the abnormality score. Then, at the time of estimation, the second model can be predicted from the trained first model. Therefore, according to the learning device 10, it is possible to perform accurate abnormality detection without learning a sample of the target domain.
  • the latent expression calculation unit 131 further inputs the sum of the outputs obtained by inputting each of the samples belonging to the domain to the first neural network by the average function and the variance function to the second neural network. It is possible to calculate the latent representation according to the Gaussian distribution expressed as the output obtained. In this way, the learning device 10 can calculate the latent expression using the neural network. Therefore, the learning device 10 can improve the accuracy of the first model by using the learning method of the neural network.
  • the update unit 134 can update the first neural network and the second neural network for each of the average function and the variance function as the first model. In this way, the learning device 10 can improve the accuracy of the first model by using the learning method of the neural network.
  • the domain-specific objective function generation unit 132 can generate an objective function using the expected value of the latent expression that follows the distribution. Therefore, the learning device 10 can obtain an objective function even when the latent expression is represented by something having uncertainty such as a probability distribution.
  • the domain-specific objective function generation unit 132 can generate a function for calculating the average of the abnormal scores of the normal sample or a function for subtracting an approximation of AUC from the average of the abnormal scores of the normal sample as the objective function. Therefore, the learning device 10 can obtain the objective function even when there is no abnormal sample, and can obtain a more accurate objective function when there is an abnormal sample.
  • the domain-specific objective function generation unit 132 generates an objective function based on the reconstruction error when the sample and the latent expression calculated by the latent expression calculation unit 131 are input to the autoencoder capable of inputting the latent expression. be able to. Therefore, the learning device 10 can improve the accuracy of the second model by using the learning method of the autoencoder.
  • the latent expression calculation unit 232 can calculate the latent expressions of a plurality of related domains related to the target domain by using the first model for calculating the latent expressions representing the characteristics of the domain from the sample belonging to the domain. it can.
  • the score calculation unit 233 uses the latent expression of the related domain in the sample belonging to the domain and the second model for calculating the abnormal score of the sample from the latent expression of the domain calculated by using the first model. Each of these is entered with a sample of the target domain and the average anomaly score obtained from the second model is calculated. In this way, the estimation device 20 can obtain the anomaly score function without retraining the normal sample. Further, the estimation device 20 can calculate the anomaly score of the test sample of the target domain by using the anomaly score function obtained once.
  • each component of each of the illustrated devices is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution and integration of each device is not limited to the one shown in the figure, and all or part of the device is functionally or physically dispersed or physically distributed in arbitrary units according to various loads and usage conditions. Can be integrated and configured. Further, each processing function performed by each device may be realized by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware by wired logic.
  • the learning device 10 and the estimation device 20 can be implemented by installing a learning program that executes the above learning process as package software or online software on a desired computer.
  • the information processing device can function as the learning device 10.
  • the information processing device referred to here includes a desktop type or notebook type personal computer.
  • information processing devices include smartphones, mobile communication terminals such as mobile phones and PHS (Personal Handyphone System), and slate terminals such as PDAs (Personal Digital Assistants).
  • the learning device 10 can be implemented as a learning server device in which the terminal device used by the user is a client and the service related to the above learning process is provided to the client.
  • the learning server device is implemented as a server device that provides a learning service that receives graph data as input and outputs graph signal processing or graph data analysis results.
  • the learning server device may be implemented as a Web server, or may be implemented as a cloud that provides the above-mentioned services related to the learning process by outsourcing.
  • FIG. 7 is a diagram showing an example of a computer that executes a learning program or an estimation program.
  • the computer 1000 has, for example, a memory 1010 and a CPU 1020.
  • the computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. Each of these parts is connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012.
  • the ROM 1011 stores, for example, a boot program such as a BIOS (BASIC Input Output System).
  • BIOS BASIC Input Output System
  • the hard disk drive interface 1030 is connected to the hard disk drive 1090.
  • the disk drive interface 1040 is connected to the disk drive 1100.
  • a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100.
  • the serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120.
  • the video adapter 1060 is connected to, for example, the display 1130.
  • the hard disk drive 1090 stores, for example, OS1091, application program 1092, program module 1093, and program data 1094. That is, the program that defines each process of the learning device 10 or the estimation device 20 is implemented as a program module 1093 in which a code that can be executed by a computer is described.
  • the program module 1093 is stored in, for example, the hard disk drive 1090.
  • a program module 1093 for executing a process similar to the functional configuration in the learning device 10 or the estimation device 20 is stored in the hard disk drive 1090.
  • the hard disk drive 1090 may be replaced by an SSD.
  • the setting data used in the processing of the above-described embodiment is stored as program data 1094 in, for example, a memory 1010 or a hard disk drive 1090. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 into the RAM 1012 as needed, and executes the processing of the above-described embodiment.
  • the program module 1093 and the program data 1094 are not limited to the case where they are stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). Then, the program module 1093 and the program data 1094 may be read by the CPU 1020 from another computer via the network interface 1070.
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

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

Abstract

潜在表現計算部(131)は、第1のモデルを用いて、ドメインに属するサンプルから、ドメインの特徴を表す潜在表現を計算する。また、ドメイン別目的関数生成部(132)及び全ドメイン目的関数生成部(133)は、ドメインに属するサンプル、及び、潜在表現計算部(131)によって計算されたドメインの潜在表現から、サンプルの異常スコアを算出する第2のモデルに関する目的関数を生成する。また、更新部(134)は、ドメイン別目的関数生成部(132)及び全ドメイン目的関数生成部(133)によって計算された複数のドメインの目的関数が最適化されるように、第1のモデル及び第2のモデルを更新する。

Description

学習装置、推定装置、学習方法及び学習プログラム
 本発明は、学習装置、推定装置、学習方法及び学習プログラムに関する。
 異常検知とは、正常な大多数のサンプルとは振る舞いが異なるサンプルを異常として検知する技術を指す。異常検知は侵入検知、医療画像診断、産業システム監視等様々な実応用で利用されている。
 異常検知のアプローチには、半教師あり異常検知と呼ばれるものと、教師あり異常検知と呼ばれるものがある。半教師あり異常検知は、正常サンプルのみを用いて異常検知器を学習し、それを用いて異常検知を行う手法である。また、教師あり異常検知は、正常サンプルに加え、異常サンプルも併せて用いて異常検知器を学習する手法である。
 通常、教師あり異常検知は、正常及び異常の両方のサンプルを学習に用いるため、半教師あり異常検知に比べ高い性能を示すことが多い。これに対し、異常サンプルはその希少性から手に入れること自体が難しいことが多く、実問題では教師あり異常検知のアプローチは採用できないことが多い。
 一方、関心のあるドメイン(目標ドメインと呼ぶ)で異常サンプルが手に入らない場合であっても、関連するドメイン(関連ドメインと呼ぶ)であれば手に入るケースがある。例えば、サイバーセキュリティ分野では、複数顧客のネットワークを一元的に監視し、サイバー攻撃の兆候を検知するサービスがある。新規顧客のネットワーク(目標ドメイン)では攻撃を受けた際のデータ(異常サンプル)がない場合でも、長期に渡り監視してきた既存顧客のネットワーク(関連ドメイン)では手に入る可能性が高い。同様に、産業システムの監視においても、新たに導入したシステム(目標ドメイン)では異常サンプルは手に入らないが、長期稼働している既存システム(関連ドメイン)では手に入る可能性がある。
 以上のような状況から、目標ドメインの正常サンプルに加えて、複数の関連ドメインから得られる正常又は異常サンプルを用いることで異常検知器を学習する手法が提案されている。
 ニューラルネットワークを用いて事前に関連ドメインのサンプルから新たな特徴量を学習しておき、さらに、学習済みの特徴量と目標ドメインの正常サンプルを用いて、半教師あり異常検知法により異常検知器を学習する手法が知られている(例えば、非特許文献1を参照)。
 また、複数の関連ドメインの正常及び異常サンプルを用いて、正常サンプルの生成分布のパラメータから異常サンプルの生成分布のパラメータへの変換を行う関数を学習しておく手法が知られている(例えば、非特許文献2を参照)。この手法では、目標ドメインの正常サンプルの生成分布パラメータを学習済みの関数に入力することで、異常サンプルのパラメータを疑似的に生成し、正常及び異常の生成分布のパラメータを用いて目標ドメインに適した異常検知器を構築する。
J. T. Andrews, T. Tanay, E. J. Morton, L. D. Griffin. "Transfer representation-learning for anomaly detection."In Anomaly Detection Workshop in ICML, 2016. J. Chen, X. Liu. "Transfer learning with one-class data." Pattern Recognition Letters, 37:32-40, 2014.
 しかしながら、これらの手法では実問題に適用する際に問題が生じる。具体的には、非特許文献1では、目標ドメインのサンプルを学習することなく精度の良い異常検知を行うことが困難な場合がある。例えば、近年のIoT(Internet of Things)の普及に伴い、センサーやカメラ、車と行ったIoTデバイス上で異常検知を行う事例が増えてきている。そのような事例において、目標ドメインのサンプルを学習することなく異常検知を行うことが求められる場合がある。
 例えば、IoTデバイスは十分な計算リソースを持たないため、目標ドメインのサンプルが取得できた場合であっても、これらの端末上で負担のかかる学習を行うことは難しい。また、IoTデバイスへのサイバー攻撃も急増しているが、IoTデバイスは多種多様(例えば、車、テレビ、スマホ等。車によっても車種によってデータの特徴は異なる)であり、続々と新たなIoTデバイスが世に放たれるため、新たなIoTデバイス(目標ドメイン)が現れる度に高コストな学習を行っていてはサイバー攻撃に則座に対応することはできない。
 非特許文献1に記載の手法は、目標ドメインの正常サンプルが学習時に利用可能であることを前提としたものであるため、上述の問題が生じる。また、非特許文献2に記載の手法では事前にパラメータの変換関数を学習しておくことで、目標ドメインのサンプルが与えられた際に即座に(学習することなく)異常検知が実行できる。しかしながら、関連ドメインの異常サンプルの生成分布を推定しておく必要があるため、異常サンプルが少量しか手に入らない場合、精度良く生成分布を作成できず、精度の良い異常検知を行うことは困難である。
 上述した課題を解決し、目的を達成するために、本発明の学習装置は、第1のモデルを用いて、ドメインに属するサンプルから、前記ドメインの特徴を表す潜在表現を計算する潜在表現計算部と、ドメインに属するサンプル、及び、前記潜在表現計算部によって計算された前記ドメインの潜在表現から、前記サンプルの異常スコアを算出する第2のモデルに関する目的関数を生成する目的関数生成部と、前記目的関数生成部によって計算された複数のドメインの目的関数が最適化されるように、前記第1のモデル及び前記第2のモデルを更新する更新部と、を有することを特徴とする。
 本発明によれば、目標ドメインのサンプルを学習することなく精度の良い異常検知を行うことができる。
図1は、第1の実施形態に係る学習装置及び推定装置の構成例を示す図である。 図2は、学習部の構成例を示す図である。 図3は、推定部の構成例を示す図である。 図4は、学習処理及び推定処理を説明するための図である。 図5は、第1の実施形態に係る学習装置の処理の流れを示すフローチャートである。 図6は、第1の実施形態に係る推定装置の処理の流れを示すフローチャートである。 図7は、学習プログラム又は推定プログラムを実行するコンピュータの一例を示す図である。
 以下に、本願に係る学習装置、推定装置、学習方法及び学習プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
[第1の実施形態の構成]
 図1を用いて、第1の実施形態に係る学習装置及び推定装置の構成について説明する。図1は、第1の実施形態に係る学習装置及び推定装置の構成例を示す図である。なお、学習装置10及び推定装置20は1つの装置として構成されるものであってもよい。
 まず、学習装置10の構成について説明する。図1に示すように、学習装置10は、入力部11、抽出部12、学習部13及び記憶部14を有する。また、目標ドメインは、異常検知の対象となるドメインである。また、関連ドメインは、目標ドメインに関連するドメインである。
 入力部11は、複数ドメインのサンプルの入力を受け付ける。入力部11には、関連ドメインの正常サンプルのみ、又は正常サンプル及び異常サンプルの両方が入力される。また、入力部11には、目標ドメインの正常サンプルが入力されてもよい。
 抽出部12は、入力された各サンプルを特徴ベクトルとラベルの組に変換する。ここで、特徴ベクトルとは、必要なデータの特徴をn次元の数ベクトルで表記したものである。抽出部12は、機械学習で一般的に用いられている手法を利用することができる。例えば、抽出部12は、データがテキストの場合には、形態素解析による変換、n-gramによる変換、区切り文字による変換等を行うことができる。また、ラベルとは「異常」及び「正常」を表すタグである。
 学習部13は、特徴抽出後のサンプルデータを用いて、各ドメインの正常サンプル集合から、当該ドメインに適した異常検知器を出力する「異常検知器予測器」(以下、単に予測器と呼ぶ場合がある)を学習する。ベースとなる異常検知器としては、オートエンコーダ、ガウス混合モデル(GMM)、kNN等の半教師あり異常検知で用いられる手法を用いることができる。
 図2は、学習部の構成例を示す図である。図2に示すように、学習部13は、潜在表現計算部131、ドメイン別目的関数生成部132、全ドメイン目的関数生成部133及び更新部134を有する。学習部13の各部の処理については後述する。
 次に、推定装置20の構成について説明する。図1に示すように、推定装置20は、入力部21、抽出部22、推定部23及び出力部25を有する。入力部21には、目標ドメインの正常サンプル集合、又は目標ドメインのテストサンプル集合が入力される。テストサンプル集合は、正常であるか異常であるかが未知のサンプルである。なお、推定装置20は、1度正常サンプル集合を受け取った後であれば、テストサンプルを受け取ることにより検知を実行することができる。
 抽出部22は、抽出部12と同様に、入力された各サンプルを特徴ベクトルとラベルの組に変換する。推定部23は、学習済みの予測器を用いて、正常サンプル集合から異常検知器を出力する。推定部23は、得られた異常検知器を用いて、テストサンプルが異常であるか正常であるかを推定する。また、推定部23は、異常検知器を保存しておき、以降、目標ドメインのテストサンプルが入力された場合は保存済みの異常検知器を用いて推定を行うことができる。
 出力部25は検知結果を出力する。例えば、出力部25は、推定部23の推定結果を基に、テストサンプルが異常であるか正常であるかを出力する。また、出力部25は、推定部23が異常と推定したテストサンプルの一覧を検知結果として出力してもよい。
 図3は、推定部の構成例を示す図である。図3に示すように、推定部23は、モデル取得部231、潜在表現計算部232及びスコア計算部233を有する。推定部23の各部の処理については後述する。
 ここで、学習装置10による学習処理及び推定装置20による推定処理を詳細に説明する。図4は、学習処理及び推定処理を説明するための図である。図4のTarget domainは目標ドメインである。また、Source domain 1及びSource domain 2は、関連ドメインである。
 図4に示すように、学習装置10は、各ドメインの正常サンプル集合から、ドメインの特徴を表す潜在ドメインベクトルzdを計算し、潜在ドメインベクトルを用いて、異常検知器を生成する予測器の学習を行う。そして、推定装置20は、目標ドメインの正常サンプルが与えられれば、学習済みの予測器を用いて目標ドメインに適した異常検知器を生成し、当該生成した異常検知器を用いてテストサンプル(anomalous(test))の異常検知を行うことができる。このため、予測器が学習済みであれば、推定装置20は、目標ドメインの再学習を行う必要がない。
 ここで、d番目の関連ドメインの異常サンプル集合を(1-1)式で表すものとする。また、xdnは、d番目の関連ドメインのn番目の異常サンプルのM次元特徴ベクトルである。同様に、d番目の関連ドメインの正常サンプル集合を(1-2)式で表すものとする。また、各関連ドメインにおいて、異常サンプルは正常サンプルに比べて極端に少ないものとする。つまり、Nd +を異常サンプルの数、Nd -を正常サンプルの数とすると、Nd +<<Nd -が成り立つ。
Figure JPOXMLDOC01-appb-M000001
 今、(2-1)式に示すDs種の関連ドメインの異常サンプル及び正常サンプルと、(2-2)式に示すDT種の目標ドメインの正常サンプルが与えられたとする。ここで、学習部13は、アノマリスコアを計算する関数sdを生成するための処理を行う。なお、関数sdは、ドメインdのサンプルxを入力すると、サンプルxの異常さの度合いを表す異常スコアを出力する関数である。以降、このような関数sdを、アノマリスコア関数と呼ぶ。
Figure JPOXMLDOC01-appb-M000002
 本実施形態のアノマリスコア関数は、一般的なオートエンコーダ(AE: Autoencoder)を基にしたものである。なお、アノマリスコア関数は、AEだけでなく、GMM(Gaussian mixture model)やVAE(Variational AE)等の任意の半教師あり異常検知手法を基にしたものであってもよい。
 一般的なオートエンコーダの学習は、N個のサンプルX={x1, …, xN}が与えられたとき、(3)式の目的関数を最適化することにより行われる。
Figure JPOXMLDOC01-appb-M000003
 Fはエンコーダと呼ばれるニューラルネットワークである。また、Gはデコーダと呼ばれるニューラルネットワークである。通常、Fの出力は入力xの次元よりも小さい次元が設定される。オートエンコーダでは、xを入力した際、Fによりxを低次元に変換した後、Gによりxが再び復元される。
 Xが正常サンプル集合であるとき、オートエンコーダはXを正しく復元することができる。一方、Xが異常サンプル集合であるとき、オートエンコーダはXを正しく復元することができないことが期待できる。このため、一般的なオートエンコーダでは、(4)式に示す再構成誤差をアノマリスコア関数として用いることができる。
Figure JPOXMLDOC01-appb-M000004
 本実施形態では、各ドメインの特性を効率的に表現するため、d番目のドメインはK次元の潜在表現zdを持つと仮定する。潜在表現zdを表すK次元のベクトルを潜在ドメインベクトルと呼ぶ。本実施形態のアノマリスコア関数は、潜在ドメインベクトルを用いて(5)式のように定義される。なお、アノマリスコア関数sθは、第2のモデルの一例である。
Figure JPOXMLDOC01-appb-M000005
 ここで、θ=(θFG)はエンコーダF及びデコーダGのパラメータである。(5)式に示すように、エンコーダFは潜在ドメインベクトルに依存しているため、本実施形態では、zdを変化させることで、各ドメインのアノマリスコア関数の特性を変化させることができる。
 潜在ドメインベクトルzdは未知であるため、学習部13は、与えられたデータから潜在ドメインベクトルzdを推定する。ここでは、潜在ドメインベクトルzdを推定するためのモデルとして、(6)式のガウス分布を仮定する。
Figure JPOXMLDOC01-appb-M000006
 ここで、ガウス分布の平均関数と共分散関数はそれぞれパラメータφのニューラルネットワークでモデル化される。パラメータφのニューラルネットワークにドメインdの正常サンプル集合Xd -を入力すると、当該ドメインに対応した潜在ドメインベクトルzdのガウス分布が得られる。
 潜在表現計算部131は、第1のモデルを用いて、ドメインに属するサンプルから、ドメインの特徴を表す潜在表現を計算する。すなわち、第1のモデルの一例であるパラメータφのニューラルネットワークを用いて、潜在ドメインベクトルzdを計算する。
 ガウス分布は、平均関数及び共分散関数によって表される。また、平均関数及び共分散関数は、(7)式に示すアーキテクチャで表現される。(7)式のτは、平均関数又は共分散関数である。また、ρ及びηは、任意のニューラルネットワークである。
 そこで、潜在表現計算部131は、平均関数及び共分散関数のそれぞれが、ドメインに属するサンプルのそれぞれをρに入力して得られる出力の総和を、さらにηに入力して得られる出力、として表されるガウス分布に従う潜在表現を計算する。このとき、ηは、第1のニューラルネットワークの一例である。また、ρは、第2のニューラルネットワークの一例である。
 例えば、潜在表現計算部131は、ニューラルネットワークρave及びηaveを持つ平均関数τaveによりτave(Xd -)を計算する。また、潜在表現計算部131は、ニューラルネットワークρcov及びηcovを持つ共分散関数τcovによりτcov(Xd -)を計算する。
 (7)式のアーキテクチャによる関数は、サンプル集合の順番によらず常に一定の出力を返すことができる。すなわち、(7)式のアーキテクチャによる関数は、集合を入力とすることができる。なお、この形のアーキテクチャは、平均や最大値のプーリングも表現可能である。
Figure JPOXMLDOC01-appb-M000007
 ドメイン別目的関数生成部132及び全ドメイン目的関数生成部133は、ドメインに属するサンプル、及び、潜在表現計算部131によって計算されたドメインの潜在表現から、サンプルの異常スコアを算出する第2のモデルに関する目的関数を生成する。つまり、ドメイン別目的関数生成部132及び全ドメイン目的関数生成部133は、関連ドメイン及び目標ドメインの正常サンプルと潜在表現ベクトルzdから、アノマリスコア関数sθの学習を行うための目的関数を生成する。
 ドメイン別目的関数生成部132は、d番目の関連ドメインの目的関数を(8)式のように生成する。ここで、λは正の実数、fはシグモイド関数である。(8)式の目的関数の第1項は正常サンプルの異常スコアの平均である。また、第2項はAUC(Area Under the Curve)の連続近似であり、異常サンプルのスコアが正常サンプルのスコアよりも大きくなるときに最小化される。(8)式の目的関数を最小化することで、正常サンプルの異常スコアは小さく、異常サンプルの異常スコアは正常サンプルのものよりも大きくなるよう学習される。
Figure JPOXMLDOC01-appb-M000008
 アノマリスコア関数sθは再構成誤差である。このため、ドメイン別目的関数生成部132は、潜在表現を入力可能なオートエンコーダに、サンプル及び潜在表現計算部131によって計算された潜在表現を入力したときの再構成誤差を基に目的関数を生成するということができる。
 (8)式の目的関数は潜在ドメインベクトルzdで条件づけられていた。潜在ドメインベクトルはデータから推定されるものであるため、推定に関する不確実性が伴う。そこで、ドメイン別目的関数生成部132は、(9)式に示すように、(8)式の期待値に基づく新たな目的関数を生成する。
Figure JPOXMLDOC01-appb-M000009
 (9)式の第1項は、(8)式の目的関数の期待値であり、潜在ドメインベクトルzdが取り得る全ての確率、すなわち不確実性を考慮した量であるため、ロバストな推定が可能となる。なお、ドメイン別目的関数生成部132は、潜在ドメインベクトルzdの確率について(8)式の目的関数の積分を行うことで期待値を得ることができる。このように、ドメイン別目的関数生成部132は、分布に従う潜在表現の期待値を用いて目的関数を生成することができる。
 また、(9)式の目的関数の第2項は、潜在ドメインベクトルのオーバーフィットを防ぐ正則化項であり、βは正則化の強さを指定する。また、P(zd)は標準ガウス分布であり、事前分布として働く。(9)式の目的関数を最小化することで、事前分布の制約を守りながら、ドメインdにおいて、異常サンプルのスコアを高く、正常サンプルのスコアが低くなるような潜在ドメインベクトルzdを出力できるよう、パラメータφが学習される。
 なお、目標ドメインの正常サンプルが得られた場合、ドメイン別目的関数生成部132は、(10)式のように、正常サンプルの異常スコアの平均に基づいて目的関数を生成することができる。(10)式の目的関数は、(8)式からAUCの連続近似を除いたものを基にしている。このため、ドメイン別目的関数生成部132は、正常サンプルの異常スコアの平均を計算する関数、又は、正常サンプルの異常スコアの平均からAUCの近似を引く関数を目的関数として生成することができる。
Figure JPOXMLDOC01-appb-M000010
 さらに、全ドメイン目的関数生成部133は、(11)式のように、全ドメインについての目的関数を生成する。
Figure JPOXMLDOC01-appb-M000011
 ここで、αdはドメインdの重要度を表す正の実数である。(11)式の目的関数は微分可能であり、任意のgradient-basedな最適化手法により最小化可能である。また、(11)式の目的関数は様々なケースを含む。例えば、目標ドメインのサンプルが学習時に得られない場合、全ドメイン目的関数生成部133は、目標ドメインに対してはαd=0とし、関連ドメインに対してはαd=1とすればよい。なお、本実施形態では、目標ドメインのサンプルが学習時に得られない場合であっても、目標ドメインに適したアノマリスコア関数を出力することが可能である。
 更新部134は、ドメイン別目的関数生成部132及び全ドメイン目的関数生成部133によって計算された複数のドメインの目的関数が最適化されるように、第1のモデル及び第2のモデルを更新する。
 本実施形態における第1のモデルは、潜在ドメインベクトルzdを計算するための、パラメータφを持つニューラルネットワークである。このため、更新部134は、平均関数のニューラルネットワークρave及びηaveのパラメータを更新し、また、共分散関数のニューラルネットワークρcov及びηcovのパラメータを更新する。また、第2のモデルはアノマリスコア関数なので、更新部134は、アノマリスコア関数のパラメータθを更新する。また、更新部134は、更新した各パラメータを予測器として記憶部14に格納する。
 図3に戻り、モデル取得部231は、学習装置10の記憶部14から予測器、すなわち潜在ドメインベクトルを計算するための関数のパラメータφ*、及びアノマリスコア算出関数のパラメータθ*を取得する。
 スコア計算部233は、目標ドメインd´の正常サンプル集合X -から、(12)式のようにアノマリスコア関数を得る。実際には、スコア計算部233は、(12)式の第3辺の近似式をアノマリスコアとして使用する。第3辺の近似式は、L個の潜在ドメインベクトルをランダムに得ることを示している。
 このとき、(12)式に示すように、潜在表現計算部232は、パラメータφ*を基に、L個の潜在ドメインベクトルのそれぞれについてμ及びσを計算する。また、ここで入力される目標ドメインの正常サンプル集合は、学習時に用いられたものであってもよいし、学習時に用いられたものでなくてもよい。
 このように、潜在表現計算部232は、ドメインに属するサンプルから、ドメインの特徴を表す潜在表現を計算する第1のモデルを用いて、目標ドメインに関連する複数の関連ドメインの潜在表現を計算する。
 スコア計算部233は、(12)式の第3辺に目標ドメインのテストサンプルを入力して得られたスコアが閾値以上であるか否かによって、当該テストサンプルが正常であるか異常であるかを推定する。
Figure JPOXMLDOC01-appb-M000012
 つまり、スコア計算部233は、アノマリスコア関数に、関連ドメインのL個の潜在表現のそれぞれを目標ドメインのサンプルxd´とともに入力し、アノマリスコア関数から得られるL個の異常スコアの平均を計算する。
[第1の実施形態の処理]
 図5は、第1の実施形態に係る学習装置の処理の流れを示すフローチャートである。図5に示すように、学習装置10は、複数ドメインのサンプルを入力として受け取る(ステップS101)。ここでの複数ドメインには、目標ドメインが含まれていてもよいし、含まれていなくてもよい。
 次に、学習装置10は、各ドメインのサンプルを特徴ベクトル、ラベルの組に変換する(ステップS102)。そして、学習装置10は、各ドメインの正常サンプル集合から、ドメイン固有の異常検知器を出力する予測器を学習する(ステップS103)。
 図6は、第1の実施形態に係る推定装置の処理の流れを示すフローチャートである。図6に示すように、推定装置20は、目標ドメインの正常サンプル集合及びテストサンプルを入力として受け取る(ステップS104)。次に、推定装置20は、各データを特徴ベクトルに変換する(ステップS105)。
 ここで、推定装置20は、異常検知予測器を用いて異常検知器を出力し、出力した異常検知器を用いて、各テストサンプルの検知を実行し(ステップS106)、検知結果を出力する(ステップS107)。つまり、推定装置20は、目標ドメインの正常サンプルから潜在特徴ベクトルを計算し、当該潜在特徴ベクトルを用いてアノマリスコア関数を生成し、当該アノマリスコア関数にテストサンプルを入力することで、異常であるか正常であるかの推定を行う。
[第1の実施形態の効果]
 これまで説明してきたように、潜在表現計算部131は、第1のモデルを用いて、ドメインに属するサンプルから、ドメインの特徴を表す潜在表現を計算する。また、ドメイン別目的関数生成部132及び全ドメイン目的関数生成部133は、ドメインに属するサンプル、及び、潜在表現計算部131によって計算されたドメインの潜在表現から、サンプルの異常スコアを算出する第2のモデルに関する目的関数を生成する。また、更新部134は、ドメイン別目的関数生成部132及び全ドメイン目的関数生成部133によって計算された複数のドメインの目的関数が最適化されるように、第1のモデル及び第2のモデルを更新する。このように、学習装置10は、異常スコアを算出する第2のモデルを予測可能な第1のモデルを学習しておくことができる。そして、推定時には、学習済みの第1のモデルから第2のモデルを予測することができる。このため、学習装置10によれば、目標ドメインのサンプルを学習することなく精度の良い異常検知を行うことができる。
 また、潜在表現計算部131は、平均関数及び分散関数のそれぞれが、ドメインに属するサンプルのそれぞれを第1のニューラルネットワークに入力して得られる出力の総和を、さらに第2のニューラルネットワークに入力して得られる出力、として表されるガウス分布に従う潜在表現を計算することができる。このように、学習装置10は、ニューラルネットワークを使って潜在表現を算出することができる。このため、学習装置10は、学習装置10は、ニューラルネットワークの学習手法を利用して第1のモデルの精度を向上させることができる。
 また、更新部134は、第1のモデルとして、平均関数及び分散関数のそれぞれについて、第1のニューラルネットワーク及び第2のニューラルネットワークを更新することができる。このように、学習装置10は、ニューラルネットワークの学習手法を利用して第1のモデルの精度を向上させることができる。
 また、ドメイン別目的関数生成部132は、分布に従う潜在表現の期待値を用いて目的関数を生成することができる。このため、学習装置10は、潜在表現が確率分布のような不確実性を有するもので表される場合であっても、目的関数を得ることができる。
 また、ドメイン別目的関数生成部132は、正常サンプルの異常スコアの平均を計算する関数、又は、正常サンプルの異常スコアの平均からAUCの近似を引く関数を目的関数として生成することができる。このため、学習装置10は、異常サンプルがない場合でも目的関数を得ることができ、異常サンプルがある場合はさらに精度の良い目的関数を得ることができる。
 また、ドメイン別目的関数生成部132は、潜在表現を入力可能なオートエンコーダに、サンプル及び潜在表現計算部131によって計算された潜在表現を入力したときの再構成誤差を基に目的関数を生成することができる。このため、学習装置10は、オートエンコーダの学習手法を利用して第2のモデルの精度を向上させることができる。
 また、潜在表現計算部232は、ドメインに属するサンプルから、ドメインの特徴を表す潜在表現を計算する第1のモデルを用いて、目標ドメインに関連する複数の関連ドメインの潜在表現を計算することができる。このとき、スコア計算部233は、ドメインに属するサンプル、及び、第1のモデルを用いてによって計算されたドメインの潜在表現からサンプルの異常スコアを算出する第2のモデルに、関連ドメインの潜在表現のそれぞれを目標ドメインのサンプルとともに入力し、第2のモデルから得られる異常スコアの平均を計算する。このように、推定装置20は、正常サンプルの再学習を行うことなくアノマリスコア関数を得ることができる。さらに、推定装置20は、1度得られたアノマリスコア関数を用いて、目標ドメインのテストサンプルの異常スコアを算出することができる。
[システム構成等]
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 一実施形態として、学習装置10及び推定装置20は、パッケージソフトウェアやオンラインソフトウェアとして上記の学習処理を実行する学習プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の学習プログラムを情報処理装置に実行させることにより、情報処理装置を学習装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
 また、学習装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の学習処理に関するサービスを提供する学習サーバ装置として実装することもできる。例えば、学習サーバ装置は、グラフデータを入力とし、グラフ信号処理又はグラフデータの分析結果を出力とする学習サービスを提供するサーバ装置として実装される。この場合、学習サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の学習処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
 図7は、学習プログラム又は推定プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(BASIC Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、学習装置10又は推定装置20の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、学習装置10又は推定装置20における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSDにより代替されてもよい。
 また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 10 学習装置
 11、21 入力部
 12、22 抽出部
 13 学習部
 14 記憶部
 20 推定装置
 23 推定部
 25 出力部
 131、232 潜在表現計算部
 132 ドメイン別目的関数生成部
 133 全ドメイン目的関数生成部
 134 更新部
 231 モデル取得部
 233 スコア計算部

Claims (8)

  1.  第1のモデルを用いて、ドメインに属するサンプルから、前記ドメインの特徴を表す潜在表現を計算する潜在表現計算部と、
     ドメインに属するサンプル、及び、前記潜在表現計算部によって計算された前記ドメインの潜在表現から、前記サンプルの異常スコアを算出する第2のモデルに関する目的関数を生成する目的関数生成部と、
     前記目的関数生成部によって計算された複数のドメインの目的関数が最適化されるように、前記第1のモデル及び前記第2のモデルを更新する更新部と、
     を有することを特徴とする学習装置。
  2.  前記潜在表現計算部は、平均関数及び共分散関数のそれぞれが、ドメインに属するサンプルのそれぞれを第1のニューラルネットワークに入力して得られる出力の総和を、さらに第2のニューラルネットワークに入力して得られる出力、として表されるガウス分布に従う潜在表現を計算し、
     前記更新部は、前記第1のモデルとして、平均関数及び共分散関数のそれぞれについて、前記第1のニューラルネットワーク及び前記第2のニューラルネットワークを更新することを特徴とする請求項1に記載の学習装置。
  3.  前記目的関数生成部は、分布に従う潜在表現の期待値を用いて前記目的関数を生成することを特徴とする請求項1又は2に記載の学習装置。
  4.  前記目的関数生成部は、正常サンプルの異常スコアの平均を計算する関数、又は、正常サンプルの異常スコアの平均からAUC(Area Under the Curve)の近似を引く関数を目的関数として生成することを特徴とする請求項1から3のいずれか1項に記載の学習装置。
  5.  前記目的関数生成部は、潜在表現を入力可能なオートエンコーダに、サンプル及び前記潜在表現計算部によって計算された潜在表現を入力したときの再構成誤差を基に前記目的関数を生成することを特徴とする請求項1から4のいずれか1項に記載の学習装置。
  6.  ドメインに属するサンプルから、前記ドメインの特徴を表す潜在表現を計算する第1のモデルを用いて、目標ドメインに関連する複数の関連ドメインの潜在表現を計算する潜在表現計算部と、
     ドメインに属するサンプル、及び、前記第1のモデルを用いてによって計算された前記ドメインの潜在表現から前記サンプルの異常スコアを算出する第2のモデルに、前記関連ドメインの潜在表現のそれぞれを前記目標ドメインのサンプルとともに入力し、前記第2のモデルから得られる異常スコアの平均を計算するスコア計算部と、
     を有することを特徴とする推定装置。
  7.  コンピュータによって実行される学習方法であって、
     第1のモデルを用いて、ドメインに属するサンプルから、前記ドメインの特徴を表す潜在表現を計算する潜在表現計算工程と、
     ドメインに属するサンプル、及び、前記潜在表現計算工程によって計算された前記ドメインの潜在表現から、前記サンプルの異常スコアを算出する第2のモデルに関する目的関数を生成する目的関数生成工程と、
     前記目的関数生成工程によって計算された複数のドメインの目的関数が最適化されるように、前記第1のモデル及び前記第2のモデルを更新する更新工程と、
     を含むことを特徴とする学習方法。
  8.  コンピュータを、請求項1から5のいずれか1項に記載の学習装置として機能させるための学習プログラム。
PCT/JP2019/040777 2019-10-16 2019-10-16 学習装置、推定装置、学習方法及び学習プログラム WO2021075009A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021552047A JP7331938B2 (ja) 2019-10-16 2019-10-16 学習装置、推定装置、学習方法及び学習プログラム
PCT/JP2019/040777 WO2021075009A1 (ja) 2019-10-16 2019-10-16 学習装置、推定装置、学習方法及び学習プログラム
US17/764,995 US20220405585A1 (en) 2019-10-16 2019-10-16 Training device, estimation device, training method, and training program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/040777 WO2021075009A1 (ja) 2019-10-16 2019-10-16 学習装置、推定装置、学習方法及び学習プログラム

Publications (1)

Publication Number Publication Date
WO2021075009A1 true WO2021075009A1 (ja) 2021-04-22

Family

ID=75537544

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/040777 WO2021075009A1 (ja) 2019-10-16 2019-10-16 学習装置、推定装置、学習方法及び学習プログラム

Country Status (3)

Country Link
US (1) US20220405585A1 (ja)
JP (1) JP7331938B2 (ja)
WO (1) WO2021075009A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023223510A1 (ja) * 2022-05-19 2023-11-23 日本電信電話株式会社 学習装置、学習方法及び学習プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160048741A1 (en) * 2014-08-12 2016-02-18 Siemens Aktiengesellschaft Multi-layer aggregation for object detection
JP2019140680A (ja) * 2018-02-09 2019-08-22 株式会社Preferred Networks オートエンコーダ装置、データ処理システム、データ処理方法及びプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6881207B2 (ja) 2017-10-10 2021-06-02 日本電信電話株式会社 学習装置、プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160048741A1 (en) * 2014-08-12 2016-02-18 Siemens Aktiengesellschaft Multi-layer aggregation for object detection
JP2019140680A (ja) * 2018-02-09 2019-08-22 株式会社Preferred Networks オートエンコーダ装置、データ処理システム、データ処理方法及びプログラム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
FORSYTH D, A, ET AL.: "Computer Vision", TOKYO: KYORITSU SHUPPAN CO., LTD, 25 January 2007 (2007-01-25), pages 403 - 409, ISBN: 978-4-320-12157-7 *
IWATA TOMOHARU: "Communications of the operations Research Society of Japan", DATA MINING BASED ON PROBABILISTIC LATENT VARIABLE MODELS, vol. 64, no. 5, 1 May 2019 (2019-05-01), pages 272 - 277, ISSN: 0030-3674 *
MOTODA HIROCHI ET AL.: "Pattern statistical prediction by Bayes theory, first edition second printing", SPRINGER JAPAN KK, 8 August 2008 (2008-08-08), Tokyo, pages 155 - 157, ISBN: 978-4-431-10031-7 *
ZAHEER, MANZIL ET AL., DEEP SETS, ARXIV, 14 April 2018 (2018-04-14), pages 2 - 3, Retrieved from the Internet <URL:https://arxiv.org/pdf/1703.06114v3> [retrieved on 20200109] *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023223510A1 (ja) * 2022-05-19 2023-11-23 日本電信電話株式会社 学習装置、学習方法及び学習プログラム

Also Published As

Publication number Publication date
JPWO2021075009A1 (ja) 2021-04-22
JP7331938B2 (ja) 2023-08-23
US20220405585A1 (en) 2022-12-22

Similar Documents

Publication Publication Date Title
WO2021045818A1 (en) Protecting machine learning models from privacy attacks
JP6691094B2 (ja) 学習装置、検知システム、学習方法及び学習プログラム
CN110912908B (zh) 网络协议异常检测方法、装置、计算机设备和存储介质
JP6450032B2 (ja) 作成装置、作成方法、および作成プログラム
EP3916597A1 (en) Detecting malware with deep generative models
CN114467095A (zh) 基于强化学习的局部可解释模型
WO2019244930A1 (ja) 検知装置、検知方法および検知プログラム
US20210081800A1 (en) Method, device and medium for diagnosing and optimizing data analysis system
WO2017188048A1 (ja) 作成装置、作成プログラム、および作成方法
JP2013037471A (ja) 確率モデル更新システム、確率モデル更新装置、確率モデル更新方法およびプログラム
US20220327394A1 (en) Learning support apparatus, learning support methods, and computer-readable recording medium
JP2019003274A (ja) 検知システム、検知方法及び検知プログラム
WO2021075009A1 (ja) 学習装置、推定装置、学習方法及び学習プログラム
WO2021100184A1 (ja) 学習装置、推定装置、学習方法および学習プログラム
JP7276483B2 (ja) 学習装置、分類装置、学習方法及び学習プログラム
CN109343952B (zh) 贝叶斯网络确定方法、装置、存储介质和电子设备
WO2020039610A1 (ja) 異常要因推定装置、異常要因推定方法、及びプログラム
WO2021240661A1 (ja) 学習装置、学習方法、推定装置、推定方法及びプログラム
JP2016520220A (ja) 隠れ属性モデル推定装置、方法およびプログラム
JP2019040423A (ja) 検知装置、検知方法および検知プログラム
CN113822684A (zh) 黑产用户识别模型训练方法、装置、电子设备及存储介质
Han et al. On Root Cause Localization and Anomaly Mitigation through Causal Inference
Kuhlmann et al. Approximate, computationally efficient online learning in bayesian spiking neurons
Yudovina et al. Changepoint inference for Erdős–Rényi random graphs
CN112598118B (zh) 有监督学习的标注异常处理方法、装置、存储介质及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19949347

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021552047

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19949347

Country of ref document: EP

Kind code of ref document: A1