WO2021079479A1 - 判定方法、判定プログラムおよび情報処理装置 - Google Patents
判定方法、判定プログラムおよび情報処理装置 Download PDFInfo
- Publication number
- WO2021079479A1 WO2021079479A1 PCT/JP2019/041793 JP2019041793W WO2021079479A1 WO 2021079479 A1 WO2021079479 A1 WO 2021079479A1 JP 2019041793 W JP2019041793 W JP 2019041793W WO 2021079479 A1 WO2021079479 A1 WO 2021079479A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- model
- learning model
- data
- environment
- inspector
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 38
- 230000010365 information processing Effects 0.000 title claims description 6
- 238000001514 detection method Methods 0.000 claims abstract description 28
- 230000007423 decrease Effects 0.000 claims abstract description 12
- 238000012549 training Methods 0.000 claims description 30
- 238000010801 machine learning Methods 0.000 description 128
- 238000011161 development Methods 0.000 description 50
- 230000018109 developmental process Effects 0.000 description 50
- 238000004519 manufacturing process Methods 0.000 description 33
- 230000006866 deterioration Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 26
- 238000012544 monitoring process Methods 0.000 description 23
- 238000012545 processing Methods 0.000 description 18
- 238000009826 distribution Methods 0.000 description 15
- 241000282326 Felis catus Species 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000012795 verification Methods 0.000 description 8
- 238000003860 storage Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 210000003423 ankle Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
- G06F18/2113—Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
- G06F18/2178—Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor
- G06F18/2185—Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor the supervisor being an automated module, e.g. intelligent oracle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/776—Validation; Performance evaluation
Definitions
- the present invention relates to a determination method, a determination program, and an information processing device.
- models For information systems used by companies, etc., the introduction of machine learning models (hereinafter, may be simply referred to as "models") for data judgment and classification functions is progressing. Since the machine learning model makes judgments and classifications according to the teacher data learned at the time of system development, if the tendency (data distribution) of the input data changes during system operation, the accuracy of the machine learning model deteriorates.
- model accuracy deterioration detection during system operation is a method of manually checking the correctness of the model output result by a human being to calculate the correct answer rate and detecting the accuracy deterioration from the decrease in the correct answer rate. Is used.
- the T 2 statistic (Hotelling's T-squre) is known as a technique for automatically detecting the accuracy deterioration of a machine learning model during system operation.
- the input data and the normal data (training data) group are analyzed for principal components, and the T 2 statistic of the input data, which is the sum of the squares of the distances from the origins of each standardized principal component, is calculated.
- the change in the ratio of the outlier data is detected, and the accuracy deterioration of the model is automatically detected.
- the development environment of the machine learning model and the introduction environment (production environment) in which the machine learning model is introduced do not always match, and the features and quality of the input data are often different.
- the features and quality of the input data are often different.
- the brightness, the installation position of the camera, the performance of the camera, and the like are different, so that the resolution of the image data to be captured is also different.
- machine learning models make judgments and classifications according to the teacher data learned in the development environment at the time of development, so due to the difference in the tendency (data distribution) between the teacher data in the development environment and the input data in the production environment. It is possible that performance degradation will occur.
- a human manually confirms the correctness of the model output result, calculates the correct answer rate, inspects the model performance, and determines whether or not the model can be introduced.
- One aspect is to provide a judgment method, a judgment program, and an information processing device capable of automatically inspecting whether or not a trained machine learning model can be introduced into a production environment.
- the determination method executes a process of acquiring the first output result when the computer inputs other environment data generated in another environment different from the learning environment into the learning model. To do.
- the determination method is a second output result when the computer inputs the other environment data to the detection model that detects a decrease in the accuracy rate of the learning model when the learning model is diverted to the other environment. Is executed.
- the determination method determines whether or not the computer relearns the learning model when the learning model is diverted to the other environment based on the first output result and the second output result. Execute the process to be performed.
- FIG. 1 is a diagram illustrating an introduction determination device according to the first embodiment.
- FIG. 2 is a diagram for explaining accuracy deterioration.
- FIG. 3 is a diagram illustrating an inspector model according to the first embodiment.
- FIG. 4 is a functional block diagram showing a functional configuration of the introduction determination device according to the first embodiment.
- FIG. 5 is a diagram showing an example of information stored in the development environment data DB.
- FIG. 6 is a diagram illustrating a specific example of teacher data.
- FIG. 7 is a diagram showing an example of information stored in the introduction destination data DB.
- FIG. 8 is a diagram showing the relationship between the number of training data and the applicable range.
- FIG. 9 is a diagram illustrating detection of accuracy deterioration.
- FIG. 1 is a diagram illustrating an introduction determination device according to the first embodiment.
- FIG. 2 is a diagram for explaining accuracy deterioration.
- FIG. 3 is a diagram illustrating an inspector model according to the first embodiment.
- FIG. 4 is
- FIG. 10 is a diagram for explaining the introduction determination based on the matching rate.
- FIG. 11 is a flowchart showing the flow of processing.
- FIG. 12 is a diagram illustrating a specific example of whether or not the introduction is possible.
- FIG. 13 is a diagram illustrating a method for generating a machine learning model according to the second embodiment.
- FIG. 14 is a diagram illustrating a hardware configuration example.
- FIG. 1 is a diagram illustrating an introduction determination device 10 according to the first embodiment.
- the introduction determination device 10 shown in FIG. 1 executes determination (classification) of input data using a trained machine learning model (hereinafter, may be simply referred to as a “model”), while the machine learning model.
- a trained machine learning model hereinafter, may be simply referred to as a “model”
- This is an example of a computer device that monitors the accuracy of the device and detects the deterioration of the accuracy.
- a machine learning model is trained using image data with an explanatory variable as image data and teacher data with an objective variable as a clothing name during training, and when image data is input as input data during operation, a "shirt” or the like is used. It is an image classifier that outputs the judgment result.
- the machine learning model is an example of an image classifier that performs classification of high-dimensional data and multi-class classification.
- the machine learning model learned by machine learning or deep learning is learned based on the teacher data that is a combination of the training data and the labeling, it functions only within the range included in the teacher data.
- learning is executed in a state including the features of the development environment (a state in which the distribution of the input data is different from that of the production environment). Therefore, when a trained machine learning model learned in the development environment is introduced into a production environment different from the development environment, the distribution of input data is different, so the accuracy deteriorates in the production environment and is about the same as the development environment. Performance may not be exhibited.
- FIG. 2 is a diagram for explaining the deterioration of accuracy.
- FIG. 2 is information organized by excluding unnecessary data of the input data, and shows a feature space in which the machine learning model classifies the input input data.
- FIG. 2 illustrates the feature space classified into class 0, class 1, and class 2.
- the distribution of the class 0 input data may be different from that in the development environment. That is, with the learned features of class 0, input data that is difficult to classify as class 0 is input. In this case, in the production environment, the input data of the class 0 crosses the determination boundary, and the accuracy rate of the machine learning model decreases. That is, the feature amount of the input data to be classified as class 0 is different from the development environment.
- the distribution of the input data may change from the time of learning, and as a result, the accuracy rate of the machine learning model decreases, and the accuracy of the machine learning model deteriorates.
- the introduction determination device 10 solves the same problem as the machine learning model to be monitored, and at least one inspector model generated by using DNN (Deep Neural Network). (Monitorer, sometimes referred to simply as “inspector” below) is used. Specifically, the introduction determination device 10 determines the matching rate between the output of the machine learning model and the output of each inspector model with respect to the data in the production environment before introducing the machine learning model into the production environment. Aggregate by output class. In this way, the introduction determination device 10 according to the first embodiment determines whether or not the machine learning model can be introduced.
- DNN Deep Neural Network
- FIG. 3 is a diagram illustrating an inspector model according to the first embodiment.
- the inspector model is an example of a detection model generated under different conditions (different model application domain (Applicability Domain)) from the machine learning model. That is, each area (each feature amount) judged by the inspector model as class 0, class 1, and class 2 is narrower than each area judged by the machine learning model as class 0, class 1, and class 2. , The inspector model is generated.
- different model application domain Applicability Domain
- the machine learning model is determined to be class 0 with respect to the input data.
- the inspector model is also judged to be class 0. That is, both are within the model application area of class 0, and the output values always match, so that the matching rate does not decrease.
- the machine learning model determines that the input data is class 0, but the inspector model is the model of each class. Since it is an area outside the applicable range, it is not always determined to be class 0. That is, since the output values do not always match, the matching rate decreases.
- the introduction determination device 10 has a machine learning model in the middle of development or development completed, and an inspector model trained to have a model application area narrower than the model application area of the machine learning model. Input the input data of the production environment to each and acquire the output result. Then, the introduction determination device 10 can collect in advance the change in accuracy when the machine learning model is introduced into the production environment based on the matching rate of each output result.
- FIG. 4 is a functional block diagram showing a functional configuration of the introduction determination device 10 according to the first embodiment.
- the introduction determination device 10 includes a communication unit 11, a storage unit 12, and a control unit 20.
- the communication unit 11 is a processing unit that controls communication with other devices, such as a communication interface. For example, the communication unit 11 receives various instructions from an administrator terminal or the like. In addition, the communication unit 11 receives input data to be determined from various terminals.
- the storage unit 12 is an example of a storage device that stores data, a program executed by the control unit 20, and the like, such as a memory and a hard disk.
- the storage unit 12 stores the development environment data DB 13, the introduction destination data DB 14, the machine learning model 15, and the inspector model DB 16.
- the development environment data DB 13 is a database that stores teacher data of the development environment used for learning the machine learning model and is also used for learning the inspector model.
- FIG. 5 is a diagram showing an example of information stored in the development environment data DB 13. As shown in FIG. 5, the development environment data DB 13 stores the data ID and the teacher data in association with each other.
- the data ID stored here is an identifier that identifies the teacher data.
- the teacher data is training data used for learning or verification data used for verification at the time of learning.
- the training data X whose data ID is “A1” and the verification data Y whose data ID is “B1” are illustrated.
- the training data and the verification data are data in which the image data, which is an explanatory variable, and the correct answer information (label), which is an objective variable, are associated with each other.
- FIG. 6 is a diagram illustrating a specific example of teacher data.
- specific examples of teacher data include a T-shirt with a label of class 0, trousers with a label of class 1, a proover with a label of class 2, a dress with a label of class 3, and a label.
- Each image data of the class 4 coat is used.
- image data of sandals having a label of class 5 shirts having a label of class 6, sneakers having a label of class 7, bags having a label of class 8, and ankle boots having a label of class 9 are used.
- the introduction destination data DB 14 is a database that stores the data acquired and collected at the introduction destination (production environment) where the machine learning model 15 is introduced. Specifically, the introduction destination data DB 14 stores image data that is expected to be input to the machine learning model or image data to be image-classified.
- FIG. 7 is a diagram showing an example of information stored in the introduction destination data DB 14. As shown in FIG. 7, the introduction destination data DB 14 stores the data ID and the input data in association with each other.
- the data ID stored here is an identifier that identifies the input data.
- the input data is image data to be classified, which is expected to be a judgment (prediction) target of the machine learning model 15. In the example of FIG. 7, the input data 1 whose data ID is “01” is illustrated.
- the input data does not need to be stored in advance and may be transmitted as a data stream from another terminal.
- the machine learning model 15 is a learned machine learning model, and is a model to be evaluated by the introduction determination device 10. It is also possible to store a machine learning model 15 such as a neural network or a support vector machine in which trained parameters are set, and a trained parameter that can be constructed by the trained machine learning model 15 is stored. May be good.
- the inspector model DB 16 is a database that stores information on at least one inspector model used for detecting accuracy deterioration.
- the inspector model DB 16 is a parameter for constructing each of the five inspector models, and stores various parameters of the DNN generated (optimized) by machine learning by the control unit 20 described later.
- the inspector model DB 16 can also store the trained parameters, and can also store the inspector model itself (DNN) in which the trained parameters are set.
- the control unit 20 is a processing unit that controls the entire introduction determination device 10, such as a processor.
- the control unit 20 includes an inspector model generation unit 21, a threshold value setting unit 22, a deterioration detection unit 23, and an introduction determination unit 26.
- the inspector model generation unit 21, the threshold value setting unit 22, the deterioration detection unit 23, and the introduction determination unit 26 are an example of an electronic circuit included in the processor and an example of a process executed by the processor.
- the inspector model generation unit 21 is a processing unit that generates an inspector model, which is an example of a monitor and a detection model that detects accuracy deterioration of the machine learning model 15. Specifically, the inspector model generation unit 21 generates a plurality of inspector models having different model application ranges by deep learning using the teacher data stored in the development environment data DB 13 used for learning the machine learning model 15. To do. Then, the inspector model generation unit 21 stores various parameters for constructing each inspector model (each DNN) having a different model application range obtained by deep learning in the inspector model DB 16.
- the inspector model generation unit 21 generates a plurality of inspector models having different application ranges by controlling the number of training data.
- FIG. 8 is a diagram showing the relationship between the number of training data and the applicable range.
- FIG. 8 illustrates the feature space of the three class classifications of class 0, class 1, and class 2.
- the larger the number of training data the more features are learned. Therefore, more comprehensive learning is executed and a model with a wide model application range is generated. Will be done.
- the feature amount of the teacher data to be learned is smaller, so that the range (feature amount) that can be covered is limited, and a model with a narrow model application range is generated.
- the inspector model generation unit 21 generates a plurality of inspector models by changing the number of training data while keeping the number of trainings the same. For example, consider a case where five inspector models are generated in a state where the machine learning model 15 is trained by the number of trainings (100 epochs) and the number of training data (1000 pieces / class). In this case, the inspector model generation unit 21 sets the number of training data of the inspector model 1 to "500 / class", the number of training data of the inspector model 2 to "400 / class", and the number of training data of the inspector model 3.
- the inspector model generation unit 21 stores various parameters of the learned inspector models 1, 2, 3, 4, and 5 in the inspector model DB 16. In this way, the inspector model generation unit 21 can generate five inspector models having a model application range narrower than the application range of the machine learning model 15 and having different model application ranges.
- the inspector model generation unit 21 can learn each inspector model by using a method such as error back propagation, and other methods can also be adopted. For example, the inspector model generator updates the DNN parameters so that the error between the output result obtained by inputting the training data into the inspector model and the label of the input training data becomes small, so that the inspector model can be used. (DNN) learning is performed.
- the threshold value setting unit 22 sets a threshold value for determining whether or not the machine learning model 15 can be introduced into the production environment, and is used for determining the matching rate. For example, the threshold setting unit 22 reads the machine learning model 15 from the storage unit 12 and reads various parameters from the inspector model DB 16 to construct five trained inspector models. Then, the threshold setting unit 22 reads out each verification data of the development environment stored in the development environment data DB 13, inputs them into the machine learning model 15 and each inspector model, and models based on the respective output results (classification results). Get the distribution result to the application area.
- the threshold setting unit 22 sets the matching rate of each class between the machine learning model 15 and the inspector model 1 with respect to the verification data, the matching rate of each class between the machine learning model 15 and the inspector model 2, and the machine learning model 15.
- the matching rate of each class between the inspector model 3 and the matching rate of each class between the machine learning model 15 and the inspector model 4 and the matching rate of each class between the machine learning model 15 and the inspector model 5 are calculated.
- the threshold value setting unit 22 sets the threshold value using each matching rate. For example, the threshold value setting unit 22 displays each match rate on a display or the like and accepts the threshold value setting from the user. Further, the threshold value setting unit 22 is arbitrarily selected and set according to the deterioration state requested by the user, such as the average value of each matching rate, the maximum value of each matching rate, and the minimum value of each matching rate. Can be done.
- the deterioration detection unit 23 has a classification unit 24 and a monitoring unit 25, compares the output result of the machine learning model 15 with respect to the input data of the installation environment and the output result of each inspector model, and compares the output result of each inspector model with the machine learning model.
- 15 is a processing unit that detects deterioration in accuracy.
- the classification unit 24 is a processing unit that inputs the input data stored in the introduction destination data DB 14 into each of the machine learning model 15 and each inspector model and acquires the output result (classification result) of each. For example, when the learning of each inspector model is completed, the classification unit 24 acquires the parameters of each inspector model from the inspector model DB 16 to construct each inspector model, and executes the machine learning model 15.
- the classification unit 24 inputs the input data of the introduction destination to the machine learning model 15 and acquires the output result, and at the same time, the input data of the introduction destination is input from the inspector model 1 (DNN1) to the inspector model 5 (DNN5). Input to each of the five inspector models and get each output result. After that, the classification unit 24 stores the input data of the introduction destination and each output result in association with each other in the storage unit 12, and outputs the data to the monitoring unit 25.
- the monitoring unit 25 is a processing unit that monitors the accuracy deterioration of the machine learning model 15 by using the output results of each inspector model. Specifically, the monitoring unit 25 measures the distribution change of the matching rate between the output of the machine learning model 15 and the output of the inspector model for each class based on the processing result by the classification unit 24. For example, the monitoring unit 25 calculates the matching rate between the output result of the machine learning model 15 and the output result of each inspector model for each input data, and detects the deterioration of the accuracy of the machine learning model 15 when the matching rate decreases. To do. The monitoring unit 25 outputs the detection result to the introduction determination unit 26.
- FIG. 9 is a diagram for explaining the detection of accuracy deterioration.
- FIG. 9 illustrates the output result of the machine learning model 15 to be monitored and the output result of the inspector model for the input data of the introduction destination.
- the output of the inspector model is calculated with respect to the output of the machine learning model 15 to be monitored by using one inspector model as an example and the data distribution to the model application area in the feature space.
- the monitoring unit 25 has six input data belonging to the model application area of class 0 and six to the model application area of class 1 from the machine learning model 15 to be monitored. It is acquired that the input data belongs and eight input data belong to the model application area of the class 2. On the other hand, from the inspector model, the monitoring unit 25 has 6 input data belonging to the model application area of class 0, 6 input data belonging to the model application area of class 1, and 8 to the model application area of class 2. Gets that two input data belong.
- the monitoring unit 25 calculates the matching rate as 100% because the matching rate of each class of the machine learning model 15 and the inspector model matches. At this timing, the classification results match.
- the monitoring unit 25 receives from the machine learning model 15 to be monitored that six input data belong to the model application area of class 0 and six input data belong to the model application area of class 1. It is acquired that eight input data belong to the model application area of class 2. On the other hand, from the inspector model, the monitoring unit 25 has three input data belonging to the model application area of class 0, six input data belonging to the model application area of class 1, and eight to the model application area of class 2. Gets that two input data belong.
- the monitoring unit 25 calculates the match rate as 50% ((3/6) ⁇ 100) for class 0, and calculates the match rate as 100% for class 1 and class 2. That is, a change in the class 0 data distribution is detected. At this timing, the inspector model is not always classified into class 0 with respect to the three input data not classified into class 0.
- the monitoring unit 25 belongs to the machine learning model 15 to be monitored, and three input data belong to the model application area of class 0, and six input data belong to the model application area of class 1. , Acquire that eight input data belong to the model application area of class 2.
- the monitoring unit 25 has one input data belonging to the model application area of class 0, six input data belonging to the model application area of class 1, and eight to the model application area of class 2. Gets that two input data belong.
- the monitoring unit 25 calculates the match rate as 33% ((1/3) ⁇ 100) for class 0, and calculates the match rate as 100% for class 1 and class 2. That is, it is determined that the class 0 data distribution has changed.
- the input data that should be classified as class 0 is not classified as class 0, and in the inspector model, the five input data that are not classified as class 0 are classified as class 0. It is not always classified.
- the monitoring unit 25 introduces the machine learning model 15 developed using the teacher data of the development environment and the inspector model generated using the teacher data of the development environment into each of the introduction destinations (production). Calculate the match rate when the input data of (environment) is input. Then, the monitoring unit 25 periodically calculates the matching rate and outputs it to the introduction determination unit 26.
- the introduction determination unit 26 is a processing unit that determines whether or not the machine learning model 15 can be introduced into the production environment based on the matching rate calculated by the monitoring unit 25. Specifically, the introduction determination unit 26 calculates the average of the match rate for each class for each inspector model for which the match rate has been calculated for each class, and calculates the match rate for each inspector model. Then, the introduction determination unit 26 can predict the occurrence of accuracy deterioration when the machine learning model 15 is introduced into the production environment when there are a predetermined number or more of the inspector models whose matching rate is less than the threshold value among the inspector models. It is determined that the machine learning model 15 cannot be introduced, and that re-learning of the machine learning model 15 is necessary.
- FIG. 10 is a diagram for explaining the introduction determination based on the match rate.
- the horizontal axis is the match rate (match rate) of each inspector model and the vertical axis is the match rate (match rate) of each inspector model, and the change in the match rate between each of the five inspector models and the machine learning model 15 is shown.
- the threshold value of the match rate will be described as 0.6 (60%).
- the inspector model 1 has the widest size of the model application area of the inspector models 1, 2, 3, 4, and 5, and the inspector model 5 has the narrowest size.
- the introduction determination unit 26 inputs the data of the introduction destination (production environment) into the machine learning model 15 and each inspector model, and executes the introduction determination based on each match rate.
- the introduction determination unit 26 can be introduced. Is determined. Specifically, since the number of inspector models whose matching rate is equal to or greater than the threshold value is equal to or greater than the specified number (for example, 2), the introduction determination unit 26 deteriorates in performance when the machine learning model 15 is introduced into the production environment. Is determined to be small.
- the introduction determination unit 26 cannot be introduced. judge. Specifically, since the number of inspector models whose matching rate is equal to or higher than the threshold value is less than the specified number (for example, 2), the introduction determination unit 26 deteriorates the performance when the machine learning model 15 is introduced into the production environment. Is determined to be large.
- the introduction determination unit 26 can acquire the matching rate of each inspector model for each class and determine the learning policy of the machine learning model 15. For example, the introduction determination unit 26 compares the matching rate of each inspector model as shown in FIG. 10 for each of class 0, class 1, and class 2. Then, the introduction determination unit 26 has 3 inspector models whose matching rate is equal to or higher than the threshold value for class 0, 4 inspector models whose matching rate is equal to or higher than the threshold value for class 1, and 4 matching rates for class 2. Is specified that the number of inspector models whose value is equal to or greater than the threshold value is 1.
- the introduction determination unit 26 can output a message or the like prompting the re-learning of the machine learning model 15 to the display or the like for the class 2.
- the user can generate new teacher data in which noise or the like is added to the teacher data used for learning as the teacher data of the class 2, and relearn the machine learning model 15.
- the introduction determination unit 26 can automatically relearn the machine learning model 15 not only for the user notification. For example, the introduction determination unit 26 generates new teacher data using the output result of the inspector model whose matching rate is less than the threshold value as correct information for class 1, and relearns the machine learning model 15.
- the timing of the introduction judgment can be set arbitrarily.
- the introduction determination can be executed at the timing when the matching rate is calculated by the deterioration detection unit 223, and the introduction determination is executed after the calculation of the matching rate for the input data of the predetermined number or more of the introduction destinations is completed. You can also.
- FIG. 11 is a flowchart showing the flow of processing.
- the inspector model generation unit 21 when the process is started (S101: Yes), the inspector model generation unit 21 generates teacher data for each inspector model based on the teacher data in the development environment (S102), and the generated development Using the training data in the environment teacher data, training for each inspector model is performed to generate each inspector model (S103).
- the threshold value setting unit 22 calculates the matching rate of the output result obtained by inputting the verification data in the teacher data of the development environment into the machine learning model 15 and each inspector model (S104), and the threshold value is calculated based on the matching rate. Is set (S105).
- the deterioration detection unit 23 inputs the input data of the introduction destination to the machine learning model 15 to acquire the output result (S106), and inputs the input data of the introduction destination to each inspector model to acquire the output result (S106). S107).
- the deterioration detection unit 23 accumulates the comparison of the output results, that is, the distribution of the model application area in the feature amount space (S108), and repeats S106 and subsequent steps until the accumulated number reaches the specified number (S109: No).
- the deterioration detection unit 23 calculates the matching rate between each inspector model and the machine learning model 15 for each class (S110). Then, the introduction determination unit 26 determines whether or not the machine learning model 15 can be introduced into the production environment based on the matching rate, and outputs a determination result to the introduction destination (S111).
- the introduction determination device 10 prepares a plurality of inspector models that solve the same problems as the machine learning model to be inspected, and aggregates the matching rate of the output for each class or each inspector model. Then, the introduction determination device 10 inspects the performance deterioration of the machine learning model from the difference in the distribution of the matching rate between the development environment and the production environment, and determines whether or not the introduction is possible. As a result, the introduction determination device 10 can automatically inspect the deterioration of the model performance in advance before the introduction, and no manpower is required, so that the cost at the time of introducing the machine learning model 15 into the production environment can be reduced.
- FIG. 12 is a diagram for explaining a specific example of whether or not the introduction is possible.
- the horizontal and vertical axes of each graph in FIG. 12 also show the features.
- FIG. 12 the introduction determination result when the machine learning model 15 learned by using the image data of a cat whose background is often green in the development environment as the training data is introduced to the A introduction destination and the B introduction destination is shown. Shown.
- the machine learning model 15 learns that there are many green components and white components as feature quantities in order to determine the cat class from the image data. Therefore, when the image data of a dog having a large amount of green component is input as in the introduction destination of A, it is erroneously determined as the cat class because the feature amount of the green component is learned as the cat class. Further, in the case of image data having an abnormally large amount of white, such as the B introduction destination, the machine learning model 15 has too many white features even if it is a cat image. Cannot be detected.
- the inspector model according to the first embodiment has a narrower model application area than the machine learning model 15. Therefore, the inspector model can determine that the dog is not in the cat class even when the image data of a dog having a large amount of green components is input as in the A introduction destination. Further, the inspector model can accurately learn the feature amount of the cat even if it is the image data of the cat having an abnormally large amount of white as in the introduction destination of B, so that it can be detected as a cat class.
- the introduction determination device 10 can determine that neither the introduction to the A introduction destination nor the introduction to the B introduction destination is appropriate.
- the introduction determination device 10 uses image data of a dog with a large amount of green components (label: dog) and image data of a cat with an abnormally large amount of white (label: cat) as a machine learning model. Fifteen relearnings can be performed. Further, the user can also relearn the machine learning model 15 and then introduce the machine learning model 15 to the A introduction destination or the B introduction destination.
- Example 1 an example of evaluating the machine learning model 15 using the data of the production environment has been described, but the present invention is not limited to this. For example, it is possible to develop a highly versatile machine learning model by using data of a plurality of different customers.
- the introduction determination device 10 is a machine learning model that develops data of various existing customers when developing a general-purpose machine learning model to be introduced in different environments (different customers).
- the input data suitable for developing a versatile machine learning model is inspected and the teacher data is generated.
- the processes described here can also be executed independently of the processes described in the first embodiment.
- FIG. 13 is a diagram illustrating a method for generating the machine learning model 15 according to the second embodiment.
- the introduction determination device 10 uses the existing teacher data of the customer's site to generate an inspector model for each customer (see (1) of FIG. 13).
- the inspector model generation unit 21 generates the inspector model A using the data of the customer A (teacher data), generates the inspector model B using the data of the customer B (teacher data), and generates the data of the customer C (teacher data).
- Inspector model C is generated using teacher data).
- the introduction determination device 10 inputs each input data collected from the Internet or the like to each of the model under development (machine learning model 15) and the inspector model for each inspector model, and calculates the match rate (match rate). (See (2) in FIG. 13).
- the deterioration detection unit 23 inputs the input data X into the inspector model A, the inspector model B, the inspector model C and the model under development, and the matching rate (0.6) between the inspector model A and the model under development.
- the matching rate between the inspector model B and the model under development (0.2) and the matching rate between the inspector model C and the model under development (0.9) are calculated.
- the deterioration detection unit 23 inputs the input data Y into the inspector model A, the inspector model B, the inspector model C and the model under development, and the matching rate (0.1) between the inspector model A and the model under development. , The matching rate (0.3) between the inspector model B and the model under development, and the matching rate (0.2) between the inspector model C and the model under development are calculated.
- the introduction determination device 10 adds input data in which the matching rate between one inspector model and the learning model under development is equal to or greater than the threshold value to the teacher data (see (3) in FIG. 13).
- the introduction determination unit 26 uses the input data X as teacher data because the matching rate with the inspector model A and the matching rate with the inspector model C are equal to or higher than the threshold value (0.6). select.
- the introduction determination unit 26 does not select the input data Y as the teacher data because the match rate of any of the inspector models is less than the threshold value (0.6).
- the introduction determination device 10 can generate a more versatile learning model by re-learning the learning model under development using all the added teacher data.
- the introduction determination unit 26 adds the input data X among the input data collected from the Internet to the teacher data group of the development environment, and relearns the learning model under development.
- the machine learning model 15 when it is determined that the machine learning model 15 needs to be relearned, the machine learning model 15 is re-learned by using the re-learning data in which the determination result of the inspector model for the input data of the introduction destination is used as the correct answer information.
- An example of performing learning was explained. For example, when the judgment result of the inspector model for the input data P of the introduction destination is "label P" and the judgment result of the machine learning model is "label Q", the input data is used as the explanatory variable and the label P is used as the objective variable.
- An example of executing re-learning of the machine learning model 15 using the training data has been described, but the present invention is not limited to this.
- the machine learning model 15 is retrained using the retraining data in which each input data captured by the production camera in the production environment is used as an explanatory variable and the correct answer information (label) of each input data is used as the objective variable. You can also do it.
- the machine learning model under development has been described as an example, but it can also be applied to a trained machine learning model. In that case, the machine learning model is relearned.
- the input data for the matching rate determination in the second embodiment may be the data of the customers A, B, and C. In this case, data effective for general-purpose learning is extracted from each of the data of customers A, B, and C.
- the match rate was calculated by focusing on class 0, but each class can also be focused on.
- the monitoring unit 25 after the lapse of time, the monitoring unit 25 has 6 input data belonging to the model application area of class 0 from the machine learning model 15 to be monitored, and 6 in the model application area of class 1. It is acquired that one input data belongs and eight input data belong to the model application area of class 2.
- the monitoring unit 25 has three input data belonging to the model application area of class 0, nine input data belonging to the model application area of class 1, and eight to the model application area of class 2. Gets that two input data belong. In this case, the monitoring unit 25 can detect a decrease in the matching rate for each of the class 0 and the class 1.
- each component of each device shown in the figure 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. That is, all or a part thereof can be functionally or physically distributed / integrated in any unit according to various loads, usage conditions, and the like.
- a device that executes the machine learning model 15 to classify input data and a device that detects accuracy deterioration can be realized in separate housings.
- each processing function performed by each device can be realized by a CPU and a program that is analyzed and executed by the CPU, or can be realized as hardware by wired logic.
- FIG. 14 is a diagram illustrating a hardware configuration example.
- the introduction determination device 10 includes a communication device 10a, an HDD (Hard Disk Drive) 10b, a memory 10c, and a processor 10d. Further, the parts shown in FIG. 14 are connected to each other by a bus or the like.
- HDD Hard Disk Drive
- the communication device 10a is a network interface card or the like, and communicates with other devices.
- the HDD 10b stores a program or DB that operates the function shown in FIG.
- the processor 10d reads a program that executes the same processing as each processing unit shown in FIG. 4 from the HDD 10b or the like and expands it in the memory 10c to operate a process that executes each function described in FIG. 4 or the like. For example, this process executes the same function as each processing unit of the introduction determination device 10. Specifically, the processor 10d reads a program having the same functions as the inspector model generation unit 21, the threshold value setting unit 22, the deterioration detection unit 23, the introduction determination unit 26, and the like from the HDD 10b and the like. Then, the processor 10d executes a process of executing the same processing as the inspector model generation unit 21, the threshold value setting unit 22, the deterioration detection unit 23, the introduction determination unit 26, and the like.
- the introduction determination device 10 operates as an information processing device that executes the introduction determination method by reading and executing the program. Further, the introduction determination device 10 can realize the same function as that of the above-described embodiment by reading the program from the recording medium by the medium reading device and executing the read program.
- the program referred to in the other embodiment is not limited to being executed by the introduction determination device 10.
- the present invention can be similarly applied when another computer or server executes a program, or when they execute a program in cooperation with each other.
- Introduction judgment device 11 Communication unit 12 Storage unit 13 Development environment data DB 14 Installation destination data DB 15 Machine learning model 16 Inspection model DB 20 Control unit 21 Inspector model generation unit 22 Threshold setting unit 23 Deterioration detection unit 24 Classification unit 25 Monitoring unit 26 Introduction judgment unit
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
導入判定装置は、学習モデルに対して、学習環境とは異なる他の環境で生成された他環境データを入力したときの第一の出力結果を取得する。導入判定装置は、学習モデルを他の環境に転用した際の学習モデルの正解率の低下を検出する検出モデルに対して、他環境データを入力したときの第二の出力結果を取得する。導入判定装置は、第一の出力結果および第二の出力結果に基づいて、学習モデルを他の環境に転用する際に、学習モデルを再学習するか否かを判定する。
Description
本発明は、判定方法、判定プログラムおよび情報処理装置に関する。
企業等で利用されている情報システムに対して、データの判定や分類機能などへの機械学習モデル(以下では、単に「モデル」と記載する場合がある)の導入が進んでいる。機械学習モデルは、システム開発時に学習させた教師データの通りに判定や分類を行うので、システム運用中に入力データの傾向(データ分布)が変化すると、機械学習モデルの精度が劣化する。
一般的に、システム運用中のモデル精度劣化検知は、定期的に手動で、モデルの出力結果の正誤を人間が確認することで正解率を算出し、正解率の低下から精度劣化を検知する手法が利用される。
近年では、システム運用中の機械学習モデルの精度劣化を自動で検出する技術として、T2統計量(Hotelling’s T-squre)が知られている。例えば、入力データと正常データ(訓練データ)群を主成分分析し、標準化した各主成分の原点からの距離の二乗の合計である、入力データのT2統計量を算出する。そして、入力データ群のT2統計量の分布に基づき、異常値データの割合の変化を検出して、モデルの精度劣化を自動で検知する。
A. Shabbak and H.Midi,"An Improvement of the Hotelling Statistic in Monitoring Multivariate Quality Characteristics", Mathematical Problems in Engineering (2012) 1-15.
ところで、機械学習モデルの開発環境と機械学習モデルを導入する導入環境(本番環境)とは必ずしも一致せず、入力データの特徴量や品質が異なることが多い。例えば、画像データを扱う場合には、明るさ、カメラの設置位置、カメラの性能などが異なるので、撮像される画像データの解像度なども異なる。
一般的に、機械学習モデルは、開発時に開発環境で学習させた教師データの通りに判定や分類を行うので、開発環境の教師データと本番環境の入力データの傾向(データ分布)の違いにより、性能低下が発生することが考えられる。現状では、本番環境の導入時に、手動で、モデルの出力結果の正誤を人間が確認することで、正解率を算出してモデル性能を検査し、導入可否を判定している。
一つの側面では、学習済みの機械学習モデルの本番環境への導入可否を自動で検査することができる判定方法、判定プログラムおよび情報処理装置を提供することを目的とする。
第1の案では、判定方法は、コンピュータが、学習モデルに対して、学習環境とは異なる他の環境で生成された他環境データを入力したときの第一の出力結果を取得する処理を実行する。判定方法は、コンピュータが、前記学習モデルを前記他の環境に転用した際の学習モデルの正解率の低下を検出する検出モデルに対して、前記他環境データを入力したときの第二の出力結果を取得する処理を実行する。判定方法は、コンピュータが、前記第一の出力結果および前記第二の出力結果に基づいて、前記学習モデルを前記他の環境に転用する際に、前記学習モデルを再学習するか否かを判定する処理を実行する。
一実施形態によれば、学習済みの機械学習モデルの本番環境への導入可否を自動で検査することができる。
以下に、本発明にかかる判定方法、判定プログラムおよび情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
[導入判定装置の説明]
図1は、実施例1にかかる導入判定装置10を説明する図である。図1に示す導入判定装置10は、学習済みの機械学習モデル(以下では、単に「モデル」と記載する場合がある)を用いて入力データの判定(分類)を実行する一方で、機械学習モデルの精度を監視して精度劣化を検出するコンピュータ装置の一例である。
図1は、実施例1にかかる導入判定装置10を説明する図である。図1に示す導入判定装置10は、学習済みの機械学習モデル(以下では、単に「モデル」と記載する場合がある)を用いて入力データの判定(分類)を実行する一方で、機械学習モデルの精度を監視して精度劣化を検出するコンピュータ装置の一例である。
例えば、機械学習モデルは、学習時には、説明変数を画像データ、目的変数を衣料名とする教師データを用いて学習され、運用時には、入力データとして画像データが入力されると、「シャツ」などの判定結果を出力する画像分類器である。つまり、機械学習モデルは、高次元データの分類や多クラス分類を実行する画像分類器の一例である。
ここで、機械学習や深層学習などで学習された機械学習モデルは、訓練データとラベル付けの組み合わせた教師データを元に学習されるので、教師データが含む範囲でのみ機能する。例えば、開発環境で撮像された教師データを用いた場合、開発環境の特徴量を含んだ状態(入力データの分布が本番環境と異なる状態)で学習が実行される。そのため、開発環境で学習された学習済みの機械学習モデルを、開発環境と異なる本番環境に導入した場合に、入力データの分布が異なることから、本番環境では精度が劣化し、開発環境と同程度の性能が発揮できない場合がある。
図2は、精度劣化を説明する図である。図2では、入力データの余計なデータを除いて整理した情報であり、機械学習モデルが入力された入力データを分類する、特徴量空間を示している。図2では、クラス0、クラス1、クラス2に分類する特徴量空間を図示している。
図2に示すように、開発環境では、機械学習モデルにデータを入力すると、全ての入力データが正常な位置であり、各クラスの決定境界の内側に分類されるので、機械学習モデルの出力結果の信頼性が高く、高精度を維持できる。しかし、本番環境では、開発環境と比較してクラス0の入力データの分布が異なる場合がある。つまり、学習されたクラス0の特徴量では、クラス0と分類することが難しい入力データが入力される。この場合、本番環境では、クラス0の入力データが決定境界を跨ぎ、機械学習モデルの正解率が低下する。つまり、クラス0と分類すべき入力データの特徴量が開発環境とは異なる。
このように、開発環境から本番環境に導入すると、入力データの分布が学習時から変化することがあり、結果として、機械学習モデルの正解率が低下し、機械学習モデルの精度劣化が発生する。
そこで、図1に示すように、実施例1にかかる導入判定装置10は、監視対象の機械学習モデルと同様の問題を解く、DNN(Deep Neural Network)を用いて生成された少なくとも1つのインスペクターモデル(監視器、以下では単に「インスペクター」と記載する場合がある)を用いる。具体的には、導入判定装置10は、機械学習モデルを本番環境に導入する前に、本番環境のデータに対する、機械学習モデルの出力と各インスペクターモデルの出力との合致率を、機械学習モデルの出力クラスごとに集計する。このようにして、実施例1にかかる導入判定装置10は、機械学習モデルの導入可否を判定する。
ここで、インスペクターモデルについて説明する。図3は、実施例1にかかるインスペクターモデルを説明する図である。インスペクターモデルは、機械学習モデルとは異なる条件(異なるモデル適用領域(Applicability Domain))で生成される検出モデルの一例である。つまり、インスペクターモデルがクラス0、クラス1、クラス2と判定する各領域(各特徴量)は、機械学習モデルがクラス0、クラス1、クラス2と判定する各領域よりも狭い範囲となるように、インスペクターモデルが生成される。
これは、モデル適用領域が狭いほど、入力データの小さな変化で出力が敏感に変化するためである。そのため、監視対象の機械学習モデルよりもインスペクターモデルのモデル適用領域の狭くすることで、入力データの小さな変化でインスペクターモデルの出力値が変動し、機械学習モデルの出力値との合致率でデータの傾向の変化を測定することができる。
具体的には、図3に示すように、導入先(本番環境)の入力データがインスペクターモデルのモデル適用領域の範囲内である場合、当該入力データに対して、機械学習モデルはクラス0と判定し、インスペクターモデルもクラス0と判定する。つまり、両方ともクラス0のモデル適用領域内となり、出力値は必ず合致するので、合致率は低下しない。
一方、導入先(本番環境)の入力データがインスペクターモデルのモデル適用領域の範囲外である場合、当該入力データに対して、機械学習モデルはクラス0と判定するが、インスペクターモデルは各クラスのモデル適用範囲外の領域であることから、必ずしもクラス0と判定するとは限らない。つまり、出力値は必ずしも合致しないので、合致率が低下する。
このように、実施例1にかかる導入判定装置10は、開発途中または開発が完了した機械学習モデルと、機械学習モデルのモデル適用領域より狭いモデル適用領域を有するように学習されたインスペクターモデルとのそれぞれに、本番環境の入力データを入力して出力結果を取得する。そして、導入判定装置10は、各出力結果の合致率により、機械学習モデルを本番環境へ導入した時の精度の変化を事前に収集することができる。
[導入判定装置の機能構成]
図4は、実施例1にかかる導入判定装置10の機能構成を示す機能ブロック図である。図4に示すように、導入判定装置10は、通信部11、記憶部12、制御部20を有する。
図4は、実施例1にかかる導入判定装置10の機能構成を示す機能ブロック図である。図4に示すように、導入判定装置10は、通信部11、記憶部12、制御部20を有する。
通信部11は、他の装置との間の通信を制御する処理部であり、例えば通信インタフェースなどである。例えば、通信部11は、管理者端末などから各種指示を受信する。また、通信部11は、各種端末から、判定対象の入力データを受信する。
記憶部12は、データや制御部20が実行するプログラムなどを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部12は、開発環境データDB13、導入先データDB14、機械学習モデル15、インスペクターモデルDB16を記憶する。
開発環境データDB13は、機械学習モデルの学習に利用された開発環境の教師データであって、インスペクターモデルの学習にも利用される教師データを記憶するデータベースである。図5は、開発環境データDB13に記憶される情報の例を示す図である。図5に示すように、開発環境データDB13は、データIDと教師データとを対応付けて記憶する。
ここで記憶されるデータIDは、教師データを識別する識別子である。教師データは、学習に利用される訓練データまたは学習時の検証に利用される検証データである。図5の例では、データIDが「A1」である訓練データXと、データIDが「B1」である検証データYを図示している。なお、訓練データや検証データは、説明変数である画像データと、目的変数である正解情報(ラベル)とが対応付けられたデータである。
教師データに利用される画像データの例について説明する。図6は、教師データの具体例を説明する図である。図6に示すように、教師データの具体例は、ラベルがクラス0であるT-シャツ、ラベルがクラス1であるズボン、ラベルがクラス2であるプロオーバー、ラベルがクラス3ではドレス、ラベルがクラス4であるコートの各画像データを用いる。また、ラベルがクラス5であるサンダル、ラベルがクラス6であるシャツ、ラベルがクラス7であるスニーカー、ラベルがクラス8ではバッグ、ラベルがクラス9であるアンクルブーツの各画像データを用いる。
導入先データDB14は、機械学習モデル15を導入する先である導入先(本番環境)で取得や収集されたデータを記憶するデータベースである。具体的には、導入先データDB14は、機械学習モデルへ入力されることが想定される画像データ、または、画像分類を行う対象の画像データを記憶する。図7は、導入先データDB14に記憶される情報の例を示す図である。図7に示すように、導入先データDB14は、データIDと入力データとを対応付けて記憶する。
ここで記憶されるデータIDは、入力データを識別する識別子である。入力データは、機械学習モデル15が判定(予測)対象とすることが想定される分類対象の画像データである。図7の例では、データIDが「01」である入力データ1を図示している。入力データは、予め記憶する必要はなく、他の端末からデータストリームとして送信されてもよい。
機械学習モデル15は、学習された機械学習モデルであり、導入判定装置10による評価対象となるモデルである。なお、学習済みのパラメータが設定されたニューラルネットワークやサポートベクタマシンなどの機械学習モデル15を記憶することもでき、学習済みの機械学習モデル15が構築可能な学習済みのパラメータなどを記憶していてもよい。
インスペクターモデルDB16は、精度劣化検出に利用する少なくとも1つのインスペクターモデルに関する情報を記憶するデータベースである。例えば、インスペクターモデルDB16は、5つのインスペクターモデルそれぞれを構築するためのパラメータであって、後述する制御部20によって機械学習によって生成(最適化)されたDNNの各種パラメータを記憶する。なお、インスペクターモデルDB16は、学習済みのパラメータを記憶することもでき、学習済みのパラメータが設定されたインスペクターモデルそのもの(DNN)を記憶することもできる。
制御部20は、導入判定装置10全体を司る処理部であり、例えばプロセッサなどである。この制御部20は、インスペクターモデル生成部21、閾値設定部22、劣化検出部23、導入判定部26を有する。なお、インスペクターモデル生成部21、閾値設定部22、劣化検出部23、導入判定部26は、プロセッサが有する電子回路の一例やプロセッサが実行するプロセスの一例などである。
インスペクターモデル生成部21は、機械学習モデル15の精度劣化を検出する監視器や検出モデルの一例であるインスペクターモデルを生成する処理部である。具体的には、インスペクターモデル生成部21は、機械学習モデル15の学習に利用された開発環境データDB13に記憶される教師データを用いた深層学習により、モデル適用範囲の異なる複数のインスペクターモデルを生成する。そして、インスペクターモデル生成部21は、深層学習によって得られた、モデル適用範囲が異なる各インスペクターモデル(各DNN)を構築するための各種パラメータをインスペクターモデルDB16に格納する。
例えば、インスペクターモデル生成部21は、訓練データの数を制御することで、適用範囲の異なる複数のインスペクターモデルを生成する。図8は、訓練データ数と適用範囲との関係を示す図である。図8では、クラス0、クラス1、クラス2の3クラス分類の特徴量空間を図示している。
図8に示すように、一般的には、訓練データの数が多いほど、多くの特徴量を多く学習することになるので、より網羅的な学習が実行され、モデル適用範囲が広いモデルが生成される。一方で、訓練データの数が少ないほど、学習する教師データの特徴量が少ないので、網羅できる範囲(特徴量)が限定的になり、モデル適用範囲が狭いモデルが生成される。
そこで、インスペクターモデル生成部21は、訓練回数は同じにして、訓練データの数を変更することで、複数のインスペクターモデルを生成する。例えば、機械学習モデル15が訓練回数(100エポック)、訓練データ数(1000個/1クラス)で学習された状態で、5つのインスペクターモデルを生成する場合を考える。この場合、インスペクターモデル生成部21は、インスペクターモデル1の訓練データ数を「500個/1クラス」、インスペクターモデル2の訓練データ数を「400個/1クラス」、インスペクターモデル3の訓練データ数を「300個/1クラス」、インスペクターモデル4の訓練データ数を「200個/1クラス」、インスペクターモデル5の訓練データ数を「100個/1クラス」と決定し、開発環境データDB13から教師データを無作為に選択して、それぞれを100エポックで学習する。
その後、インスペクターモデル生成部21は、学習されたインスペクターモデル1、2、3、4、5それぞれの各種パラメータをインスペクターモデルDB16に格納する。このようにして、インスペクターモデル生成部21は、機械学習モデル15の適用範囲よりも狭いモデル適用範囲を有するとともに、それぞれのモデル適用範囲が異なる5つのインスペクターモデルを生成することができる。
なお、インスペクターモデル生成部21は、誤差逆伝搬などの手法を用いて、各インスペクターモデルを学習することができ、他の手法を採用することもできる。例えば、インスペクターモデル生成部は、訓練データをインスペクターモデルに入力して得られる出力結果と、入力された訓練データのラベルとの誤差が小さくなるように、DNNのパラメータを更新することで、インスペクターモデル(DNN)の学習を実行する。
図4に戻り、閾値設定部22は、機械学習モデル15の本番環境への導入可否を判定する閾値であって、合致率の判定に利用する閾値を設定する。例えば、閾値設定部22は、記憶部12から機械学習モデル15を読み出すとともに、インスペクターモデルDB16から各種パラメータを読み出して学習済みの5つのインスペクターモデルを構築する。そして、閾値設定部22は、開発環境データDB13に記憶される開発環境の各検証データを読み出して、機械学習モデル15と各インスペクターモデルに入力して、それぞれの出力結果(分類結果)に基づくモデル適用領域への分布結果を取得する。
その後、閾値設定部22は、検証データに対する機械学習モデル15とインスペクターモデル1と間の各クラスの合致率、機械学習モデル15とインスペクターモデル2と間の各クラスの合致率、機械学習モデル15とインスペクターモデル3と間の各クラスの合致率、機械学習モデル15とインスペクターモデル4と間の各クラスの合致率、機械学習モデル15とインスペクターモデル5と間の各クラスの合致率を算出する。
そして、閾値設定部22は、各合致率を用いて閾値を設定する。例えば、閾値設定部22は、各合致率をディスプレイ等に表示して、ユーザから閾値の設定を受け付ける。また、閾値設定部22は、各合致率の平均値、各合致率の最大値、各合致率の最小値など、ユーザが検出を要求する劣化状態に応じて、任意に選択して設定することができる。
図4に戻り、劣化検出部23は、分類部24、監視部25を有し、導入環境の入力データに対する機械学習モデル15の出力結果と各インスペクターモデルの出力結果とを比較し、機械学習モデル15の精度の劣化を検出する処理部である。
分類部24は、導入先データDB14に記憶される入力データを機械学習モデル15と各インスペクターモデルとのそれぞれに入力して、それぞれの出力結果(分類結果)を取得する処理部である。例えば、分類部24は、各インスペクターモデルの学習が完了すると、各インスペクターモデルのパラメータをインスペクターモデルDB16から取得して各インスペクターモデルを構築するとともに、機械学習モデル15を実行する。
そして、分類部24は、導入先の入力データを機械学習モデル15に入力してその出力結果を取得するとともに、当該導入先の入力データをインスペクターモデル1(DNN1)からインスペクターモデル5(DNN5)の5つのインスペクターモデルそれぞれに入力して各出力結果を取得する。その後、分類部24は、導入先の入力データと各出力結果とを対応付けて記憶部12に格納するとともに、監視部25に出力する。
監視部25は、各インスペクターモデルの出力結果を用いて、機械学習モデル15の精度劣化を監視する処理部である。具体的には、監視部25は、分類部24による処理結果に基づき、クラスごとに機械学習モデル15の出力と、インスペクターモデルの出力との合致率の分布変化を測定する。例えば、監視部25は、各入力データに対する機械学習モデル15の出力結果と各インスペクターモデルの出力結果との合致率を算出し、合致率が低下した場合に、機械学習モデル15の精度劣化を検出する。なお、監視部25は、検出結果を導入判定部26に出力する。
図9は、精度劣化の検出を説明する図である。図9では、導入先の入力データに対する監視対象の機械学習モデル15の出力結果とインスペクターモデルの出力結果とを図示している。ここでは、説明を分かりやすくするため、1つのインスペクターモデルを例に、特徴量空間におけるモデル適用領域へのデータ分布を用いて、監視対象の機械学習モデル15の出力に対してインスペクターモデルの出力が合致する確率を説明する。
図9に示すように、監視部25は、運用開始時、監視対象の機械学習モデル15から、クラス0のモデル適用領域には6つの入力データが属し、クラス1のモデル適用領域には6つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。一方、監視部25は、インスペクターモデルから、クラス0のモデル適用領域には6つの入力データが属し、クラス1のモデル適用領域には6つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。
つまり、監視部25は、機械学習モデル15とインスペクターモデルとの各クラスの合致率が一致することから合致率を100%と算出する。このタイミングでは、それぞれの分類結果が一致する。
時間経過が進むと、監視部25は、監視対象の機械学習モデル15から、クラス0のモデル適用領域には6つの入力データが属し、クラス1のモデル適用領域には6つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。一方、監視部25は、インスペクターモデルから、クラス0のモデル適用領域には3つの入力データが属し、クラス1のモデル適用領域には6つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。
つまり、監視部25は、クラス0については合致率を50%((3/6)×100)と算出し、クラス1とクラス2については合致率を100%と算出する。すなわち、クラス0のデータ分布の変化が検出される。このタイミングでは、インスペクターモデルは、クラス0に分類されなかった3つの入力データに対して、クラス0に分類するとは限らない状態である。
さらに時間経過が進むと、監視部25は、監視対象の機械学習モデル15から、クラス0のモデル適用領域には3つの入力データが属し、クラス1のモデル適用領域には6つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。一方、監視部25は、インスペクターモデルから、クラス0のモデル適用領域には1つの入力データが属し、クラス1のモデル適用領域には6つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。
つまり、監視部25は、クラス0については合致率を33%((1/3)×100)と算出し、クラス1とクラス2については合致率を100%と算出する。すなわち、クラス0のデータ分布が変化したと判定される。このタイミングでは、機械学習モデル15では、クラス0と分類されるべき入力データがクラス0と分類されず、インスペクターモデルでは、クラス0に分類されなかった5つの入力データに対しては、クラス0に分類されるとは限らない状態である。
このようにして、監視部25は、開発環境の教師データを用いて開発された機械学習モデル15と、開発環境の教師データを用いて生成された各インスペクターモデルとのそれぞれに、導入先(本番環境)の入力データを入力したときの合致率を算出する。そして、監視部25は、定期的に、合致率を算出して導入判定部26に出力する。
導入判定部26は、監視部25により算出された合致率に基づき、機械学習モデル15の本番環境への導入可否を判定する処理部である。具体的には、導入判定部26は、クラスごとに合致率が算出された各インスペクターモデルについて、クラスごとの合致率の平均を算出し、各インスペクターモデルの合致率を算出する。そして、導入判定部26は、各インスペクターモデルのうち合致率が閾値未満であるインスペクターモデルが所定数以上存在する場合に、機械学習モデル15を本番環境に導入した場合に精度劣化の発生が予見できると判定し、機械学習モデル15を導入不可と判定するとともに、機械学習モデル15の再学習が必要と判定する。
図10は、合致率による導入判定を説明する図である。図10では、横軸が各インスペクターモデル、縦軸が各インスペクターモデルの合致率(合致した割合)であり、5つのインスペクターモデルそれぞれと機械学習モデル15との合致率の変化を示している。ここでは、合致率の閾値を0.6(60%)として説明する。また、インスペクターモデル1、2、3、4、5のモデル適用領域の大きさをインスペクターモデル1が最も広く、インスペクターモデル5が最も狭い。
図10の(a)に示すように、インスペクターモデル1から5は、モデル適用範囲が徐々に狭いことから、開発環境の検証データに対する合致率もインスペクターモデル1が最も高く、インスペクターモデル5が最も低い。このような状態で、導入判定部26は、導入先(本番環境)のデータを機械学習モデル15と各インスペクターモデルとに入力し、各合致率に基づき導入判定を実行する。
例えば、図10の(b)に示すように、インスペクターモデル1を2の合致率が閾値以上であり、インスペクターモデル3から5の合致率が閾値未満である場合、導入判定部26は、導入可能と判定する。具体的には、導入判定部26は、合致率が閾値以上であるインスペクターモデルの数が規定数(例えば2)以上であることから、機械学習モデル15を本番環境への導入したときの性能劣化が小さいと判定する。
また、図10の(c)に示すように、インスペクターモデル1の合致率が閾値以上であり、インスペクターモデル2から5の合致率が閾値未満である場合、導入判定部26は、導入不可能と判定する。具体的には、導入判定部26は、合致率が閾値以上であるインスペクターモデルの数が規定数(例えば2)未満であることから、機械学習モデル15を本番環境への導入したときの性能劣化が大きいと判定する。
また、導入判定部26は、クラスごとに、各インスペクターモデルの合致率を取得して、機械学習モデル15の学習方針を決定することができる。例えば、導入判定部26は、クラス0、クラス1、クラス2のそれぞれについて、図10のような各インスペクターモデルの合致率を比較する。そして、導入判定部26は、クラス0については合致率が閾値以上であるインスペクターモデルの数が3、クラス1については合致率が閾値以上であるインスペクターモデルの数が4、クラス2については合致率が閾値以上であるインスペクターモデルの数が1であることを特定したとする。
この場合、導入判定部26は、クラス2について、機械学習モデル15の再学習を促すメッセージ等をディスプレイ等に出力することができる。この結果、ユーザは、クラス2の教師データとして、学習に利用された教師データにノイズ等を付加した新たな教師データを生成して、機械学習モデル15の再学習を実行することができる。
また、導入判定部26が、ユーザ通知に限らず、自動で機械学習モデル15の再学習を実行することができる。例えば、導入判定部26が、クラス1については合致率が閾値未満であるインスペクターモデルの出力結果を正解情報とする新たな教師データを生成して、機械学習モデル15の再学習を実行する。
なお、導入判定のタイミングは、任意に設定することができる。例えば、劣化検出部223により合致率が算出されたタイミングで導入判定を実行することができ、所定数以上の導入先の入力データに対する合致率の算出が終了してから、導入判定を実行することもできる。
[処理の流れ]
図11は、処理の流れを示すフローチャートである。図11に示すように、処理が開始されると(S101:Yes)、インスペクターモデル生成部21は、開発環境における教師データに基づき各インスペクターモデル用の教師データを生成し(S102)、生成した開発環境の教師データ内の訓練データを用いて、各インスペクターモデル用の訓練を実行して、各インスペクターモデルを生成する(S103)。
図11は、処理の流れを示すフローチャートである。図11に示すように、処理が開始されると(S101:Yes)、インスペクターモデル生成部21は、開発環境における教師データに基づき各インスペクターモデル用の教師データを生成し(S102)、生成した開発環境の教師データ内の訓練データを用いて、各インスペクターモデル用の訓練を実行して、各インスペクターモデルを生成する(S103)。
続いて、閾値設定部22は、開発環境の教師データ内の検証データを機械学習モデル15と各インスペクターモデルに入力して得られる出力結果の合致率を算出し(S104)、合致率に基づき閾値を設定する(S105)。
その後、劣化検出部23は、導入先の入力データを機械学習モデル15に入力して出力結果を取得し(S106)、導入先の入力データを各インスペクターモデルに入力して出力結果を取得する(S107)。
そして、劣化検出部23は、出力結果の比較、すなわち特徴量空間におけるモデル適用領域の分布を蓄積し(S108)、蓄積数が規定数に到達するまで(S109:No)、S106以降を繰り返す。
その後、劣化検出部23は、蓄積数が規定数に到達すると(S109:Yes)、クラスごとに各インスペクターモデルと機械学習モデル15との合致率を算出する(S110)。そして、導入判定部26は、合致率に基づき、機械学習モデル15の本番環境への導入可否を判定導入先への判定結果を出力する(S111)。
[効果]
上述したように、導入判定装置10は、検査対象の機械学習モデルと同様の問題を解く複数のインスペクターモデルを用意し、その出力の合致率をクラスごとまたはインスペクターモデルごとに集計する。そして、導入判定装置10は、開発環境と本番環境での合致率の分布の差異から、機械学習モデルの性能低下を検査し、導入可否を判定する。この結果、導入判定装置10は自動でモデル性能低下を導入前に事前に検査することができ、人手が不要となるので、機械学習モデル15の本番環境導入時のコストが削減できる。
上述したように、導入判定装置10は、検査対象の機械学習モデルと同様の問題を解く複数のインスペクターモデルを用意し、その出力の合致率をクラスごとまたはインスペクターモデルごとに集計する。そして、導入判定装置10は、開発環境と本番環境での合致率の分布の差異から、機械学習モデルの性能低下を検査し、導入可否を判定する。この結果、導入判定装置10は自動でモデル性能低下を導入前に事前に検査することができ、人手が不要となるので、機械学習モデル15の本番環境導入時のコストが削減できる。
図12は、導入可否の具体例を説明する図である。図12の各グラフの横軸、縦軸も特徴量を示している。図12では、開発環境で、背景に緑色が多く利用される猫の画像データを訓練データに用いて学習した機械学習モデル15を、A導入先とB導入先に導入する場合の導入判定結果を示している。
図12に示すように、機械学習モデル15は、開発時に、画像データから猫クラスと判定するために、緑の成分と白の成分とが多いことを特徴量として学習する。そこで、A導入先のように、緑成分の多い犬の画像データが入力された場合、緑成分の特徴量を猫クラスと学習していることから、猫クラスと誤判定する。さらに、機械学習モデル15は、B導入先のように、白が異常に多い画像データの場合には、それが猫の画像であっても、白の特徴量が多すぎることから、猫クラスと検出できない。
一方、実施例1によるインスペクターモデルは、機械学習モデル15よりもモデル適用領域が狭い。このため、インスペクターモデルは、A導入先のように、緑成分の多い犬の画像データが入力された場合でも、猫クラスではない判定することができる。さらに、インスペクターモデルは、B導入先のように、白が異常に多い猫の画像データであっても、猫の特徴量を正確に学習できているので、猫クラスと検出することができる。
この結果、A導入先の入力データを用いた場合、機械学習モデル15の出力結果とインスペクターモデルの出力結果との合致率は小さくなる。同様に、B導入先の入力データを用いた場合、機械学習モデル15の出力結果とインスペクターモデルの出力結果との合致率も小さくなる。したがって、導入判定装置10は、A導入先への導入もB導入先への導入も適切ではないと判定することができる。
また、これらの結果を踏まえて、導入判定装置10は、緑成分の多い犬の画像データ(ラベル:犬)や白が異常に多い猫の画像データ(ラベル:猫)を用いて、機械学習モデル15の再学習を実行することができる。また、ユーザは、機械学習モデル15の再学習を実行した上で、A導入先やB導入先に、機械学習モデル15を導入することもできる。
ところで、実施例1では、機械学習モデル15を本番環境のデータを用いて評価する例を説明したが、これに限定されるものではない。例えば、複数の異なる顧客先のデータを利用して汎用性の高い機械学習モデルを開発することもできる。
例えば、セキュリティや契約の問題により、顧客から取得した現場のデータを他社(異なる顧客)の機械学習モデルの教師データとして利用することが難しく、顧客ごとに用意した教師データで機械学習モデルを訓練せざるを得ないことが想定される。そのため、汎用性の高い機械学習モデルを開発するために、各顧客の現場のデータを持ち寄って教師データとして利用することが困難なことが多い。
そこで、実施例2にかかる導入判定装置10は、異なる環境(異なる顧客先)に導入する汎用的な機械学習モデルを開発する際に、既存の様々な顧客先のデータを開発する機械学習モデルの教師データとして利用できない状況下で、汎用性の高い機械学習モデルを開発するために適した入力データを検査し、教師データを生成する。なお、ここで説明する処理は、実施例1で説明した各処理とは独立して実行することもできる。
図13は、実施例2にかかる機械学習モデル15の生成手法を説明する図である。図13に示すように、導入判定装置10は、既存の顧客先の現場の教師データを利用して、顧客先ごとのインスペクターモデルを生成する(図13の(1)参照)。例えば、インスペクターモデル生成部21は、顧客Aのデータ(教師データ)を用いてインスペクターモデルAを生成し、顧客Bのデータ(教師データ)を用いてインスペクターモデルBを生成し、顧客Cのデータ(教師データ)を用いてインスペクターモデルCを生成する。
次に、導入判定装置10は、各インスペクターモデルについて、インターネット等から収集した各入力データを開発中のモデル(機械学習モデル15)とインスペクターモデルとのそれぞれに入力して、合致率を算出する(図13の(2)参照)。
例えば、劣化検出部23は、入力データXをインスペクターモデルA、インスペクターモデルB、インスペクターモデルCと開発中のモデルとに入力して、インスペクターモデルAと開発中のモデルの合致率(0.6)、インスペクターモデルBと開発中のモデルの合致率(0.2)、インスペクターモデルCと開発中のモデルの合致率(0.9)を算出する。
また、劣化検出部23は、入力データYをインスペクターモデルA、インスペクターモデルB、インスペクターモデルCと開発中のモデルとに入力して、インスペクターモデルAと開発中のモデルの合致率(0.1)、インスペクターモデルBと開発中のモデルの合致率(0.3)、インスペクターモデルCと開発中のモデルの合致率(0.2)を算出する。
そして、導入判定装置10は、1つのインスペクターモデルと開発中の学習モデルの合致率が閾値以上の入力データを教師データに追加する(図13の(3)参照)。上記例で説明すると、導入判定部26は、入力データXについては、インスペクターモデルAとの合致率およびインスペクターモデルCのとの合致率が閾値(0.6)以上であることから、教師データに選択する。一方、導入判定部26は、入力データYについては、いずれのインスペクターモデルの合致率も閾値(0.6)未満であることから、教師データに選択しない。
その後、導入判定装置10は、追加した全ての教師データを使って、開発中の学習モデルを再学習することで、より汎用性が高い学習モデルを生成できる。上記例で説明すると、導入判定部26は、インターネットから収集した入力データのうち入力データXを開発環境の教師データ群に追加して、開発中の学習モデルを再学習する。
上述した処理により、自社所有の教師データのみで、汎用性の高い機械学習モデルを開発できるので、新規顧客に対して機械学習モデルの新規開発が不要となり、コストを削減できる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
[環境等]
上記実施例では、開発環境(学習環境)と異なる本番環境を例にして説明したが、環境の一例としては、モデルの利用シーン、教師データを生成するカメラやセンサの場所、モデルを適用するシステム環境などが想定される。
上記実施例では、開発環境(学習環境)と異なる本番環境を例にして説明したが、環境の一例としては、モデルの利用シーン、教師データを生成するカメラやセンサの場所、モデルを適用するシステム環境などが想定される。
[再学習]
上記実施例では、機械学習モデル15の再学習が必要と判定されたときに、導入先の入力データに対するインスペクターモデルの判定結果を正解情報とする再学習データを用いて、機械学習モデル15の再学習を実行する例を説明した。例えば、導入先の入力データPに対するインスペクターモデルの判定結果が「ラベルP」で、機械学習モデルの判定結果が「ラベルQ」である場合、入力データを説明変数、ラベルPを目的変数とする再学習データを用いて、機械学習モデル15の再学習を実行する例を説明したが、これに限定されるものではない。
上記実施例では、機械学習モデル15の再学習が必要と判定されたときに、導入先の入力データに対するインスペクターモデルの判定結果を正解情報とする再学習データを用いて、機械学習モデル15の再学習を実行する例を説明した。例えば、導入先の入力データPに対するインスペクターモデルの判定結果が「ラベルP」で、機械学習モデルの判定結果が「ラベルQ」である場合、入力データを説明変数、ラベルPを目的変数とする再学習データを用いて、機械学習モデル15の再学習を実行する例を説明したが、これに限定されるものではない。
例えば、導入先である本番環境のデータを収集して再学習データとすることもできる。つまり、本番環境において本番のカメラで撮像された各入力データを説明変数、各入力データの正解情報(ラベル)を目的変数とする再学習データを用いて、機械学習モデル15の再学習を実行することもできる。
また、実施例2では、開発途中の機械学習モデルを例にして説明したが、学習済みの機械学習モデルに対しても適用することができ、その場合は、機械学習モデルの再学習が実行される。また、実施例2における合致率判定の入力データは、顧客A、B、Cのデータであってもよい。この場合、顧客A、B、Cの各データのうち汎用的な学習に有効なデータが抽出される。
[数値等]
また、上記実施例で用いたデータ例、数値、各閾値、特徴量空間、ラベル数、インスペクターモデル数、具体例等は、あくまで一例であり、任意に変更することができる。また、入力データや学習方法などもあくまで一例であり、任意に変更することができる。また、学習モデルには、ニューラルネットワークなど様々な手法を採用することができる。
また、上記実施例で用いたデータ例、数値、各閾値、特徴量空間、ラベル数、インスペクターモデル数、具体例等は、あくまで一例であり、任意に変更することができる。また、入力データや学習方法などもあくまで一例であり、任意に変更することができる。また、学習モデルには、ニューラルネットワークなど様々な手法を採用することができる。
[モデル適用範囲等]
実施例1では、教師データの数を削減することで、モデル適用範囲の異なる複数のインスペクターモデルを生成する例を説明したが、これに限定されるものではなく、例えば訓練回数(エポック数)を削減することで、モデル適用範囲の異なる複数のインスペクターモデルを生成することもできる。また、教師データの数ではなく、教師データに含まれる訓練データの数を削減することで、モデル適用範囲の異なる複数のインスペクターモデルを生成することもできる。
実施例1では、教師データの数を削減することで、モデル適用範囲の異なる複数のインスペクターモデルを生成する例を説明したが、これに限定されるものではなく、例えば訓練回数(エポック数)を削減することで、モデル適用範囲の異なる複数のインスペクターモデルを生成することもできる。また、教師データの数ではなく、教師データに含まれる訓練データの数を削減することで、モデル適用範囲の異なる複数のインスペクターモデルを生成することもできる。
[合致率]
例えば、上記実施例では、各クラスのモデル適用領域に属する入力データの合致率を求める例を説明したが、これに限定されるものではない。例えば、機械学習モデル15の出力結果とインスペクターモデルの出力結果との合致率により精度劣化を検出することもできる。
例えば、上記実施例では、各クラスのモデル適用領域に属する入力データの合致率を求める例を説明したが、これに限定されるものではない。例えば、機械学習モデル15の出力結果とインスペクターモデルの出力結果との合致率により精度劣化を検出することもできる。
また、図9の例では、クラス0に着目して合致率を算出したが、各クラスに着目することもできる。例えば、図9の例では、時間経過後、監視部25は、監視対象の機械学習モデル15から、クラス0のモデル適用領域には6つの入力データが属し、クラス1のモデル適用領域には6つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。一方、監視部25は、インスペクターモデルから、クラス0のモデル適用領域には3つの入力データが属し、クラス1のモデル適用領域には9つの入力データが属し、クラス2のモデル適用領域には8つの入力データが属することを取得する。この場合、監視部25は、クラス0とクラス1のそれぞれについて、合致率の低下を検出することができる。
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、機械学習モデル15を実行して入力データを分類する装置と、精度劣化を検出する装置とを別々の筐体で実現することもできる。
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[ハードウェア]
図14は、ハードウェア構成例を説明する図である。図14に示すように、導入判定装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図14に示した各部は、バス等で相互に接続される。
図14は、ハードウェア構成例を説明する図である。図14に示すように、導入判定装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図14に示した各部は、バス等で相互に接続される。
通信装置10aは、ネットワークインタフェースカードなどであり、他の装置との通信を行う。HDD10bは、図4に示した機能を動作させるプログラムやDBを記憶する。
プロセッサ10dは、図4に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、図4等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、導入判定装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、インスペクターモデル生成部21、閾値設定部22、劣化検出部23、導入判定部26等と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、インスペクターモデル生成部21、閾値設定部22、劣化検出部23、導入判定部26等と同様の処理を実行するプロセスを実行する。
このように、導入判定装置10は、プログラムを読み出して実行することで導入判定方法を実行する情報処理装置として動作する。また、導入判定装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、導入判定装置10によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
10 導入判定装置
11 通信部
12 記憶部
13 開発環境データDB
14 導入先データDB
15 機械学習モデル
16 インスペクターモデルDB
20 制御部
21 インスペクターモデル生成部
22 閾値設定部
23 劣化検出部
24 分類部
25 監視部
26 導入判定部
11 通信部
12 記憶部
13 開発環境データDB
14 導入先データDB
15 機械学習モデル
16 インスペクターモデルDB
20 制御部
21 インスペクターモデル生成部
22 閾値設定部
23 劣化検出部
24 分類部
25 監視部
26 導入判定部
Claims (7)
- コンピュータが、
学習モデルに対して、学習環境とは異なる他の環境で生成された他環境データを入力したときの第一の出力結果を取得し、
前記学習モデルを前記他の環境に転用した際の学習モデルの正解率の低下を検出する検出モデルに対して、前記他環境データを入力したときの第二の出力結果を取得し、
前記第一の出力結果および前記第二の出力結果に基づいて、前記学習モデルを前記他の環境に転用する際に、前記学習モデルを再学習するか否かを判定する
処理を実行することを特徴とする判定方法。 - 前記コンピュータが、
前記学習モデルを再学習すると判定された場合に、前記他環境データに対する前記検出モデルの判定結果に基づき、前記他環境データを説明変数、前記判定結果を目的変数とする再学習データを用いて、前記学習モデルを再学習する処理を実行することを特徴とする請求項1に記載の判定方法。 - 前記コンピュータが、
前記学習モデルを再学習すると判定された場合に、前記他の環境で生成されたデータを用いて、前記学習モデルを再学習する処理を実行することを特徴とする請求項1に記載の判定方法。 - 前記コンピュータが、
複数の異なる環境それぞれの教師データを用いて、前記複数の異なる環境それぞれに対応した複数の検出モデルを生成し、
複数のデータそれぞれを、学習途中である前記学習モデルと前記複数の検出モデルそれぞれとに入力し、前記学習途中である学習モデルの出力結果と前記複数の検出モデルそれぞれの出力結果との合致率を算出し、
前記複数のデータのうち、前記複数の検出モデルに対応するいずれかの合致率が閾値以上であるデータを、前記学習モデルの学習データに選択する処理を実行することを特徴とする請求項1に記載の判定方法。 - 前記コンピュータが、
前記学習環境で生成された教師データと前記学習データとを用いて、前記学習モデルの学習を実行する処理を実行することを特徴とする請求項4に記載の判定方法。 - コンピュータに、
学習モデルに対して、学習環境とは異なる他の環境で生成された他環境データを入力したときの第一の出力結果を取得し、
前記学習モデルを前記他の環境に転用した際の学習モデルの正解率の低下を検出する検出モデルに対して、前記他環境データを入力したときの第二の出力結果を取得し、
前記第一の出力結果および前記第二の出力結果に基づいて、前記学習モデルを前記他の環境に転用する際に、前記学習モデルを再学習するか否かを判定する
処理を実行させることを特徴とする判定プログラム。 - 学習モデルに対して、学習環境とは異なる他の環境で生成された他環境データを入力したときの第一の出力結果を取得する取得部と、
前記学習モデルを前記他の環境に転用した際の学習モデルの正解率の低下を検出する検出モデルに対して、前記他環境データを入力したときの第二の出力結果を取得する取得部と、
前記第一の出力結果および前記第二の出力結果に基づいて、前記学習モデルを前記他の環境に転用する際に、前記学習モデルを再学習するか否かを判定する判定部と
を有することを特徴とする情報処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021553245A JP7205644B2 (ja) | 2019-10-24 | 2019-10-24 | 判定方法、判定プログラムおよび情報処理装置 |
PCT/JP2019/041793 WO2021079479A1 (ja) | 2019-10-24 | 2019-10-24 | 判定方法、判定プログラムおよび情報処理装置 |
US17/715,687 US20220230028A1 (en) | 2019-10-24 | 2022-04-07 | Determination method, non-transitory computer-readable storage medium, and information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/041793 WO2021079479A1 (ja) | 2019-10-24 | 2019-10-24 | 判定方法、判定プログラムおよび情報処理装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/715,687 Continuation US20220230028A1 (en) | 2019-10-24 | 2022-04-07 | Determination method, non-transitory computer-readable storage medium, and information processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021079479A1 true WO2021079479A1 (ja) | 2021-04-29 |
Family
ID=75619713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/041793 WO2021079479A1 (ja) | 2019-10-24 | 2019-10-24 | 判定方法、判定プログラムおよび情報処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220230028A1 (ja) |
JP (1) | JP7205644B2 (ja) |
WO (1) | WO2021079479A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3213680A1 (en) * | 2021-03-31 | 2022-10-06 | Justine Celeste Fox | Secure data enclave |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016152053A1 (ja) * | 2015-03-23 | 2016-09-29 | 日本電気株式会社 | 精度推定モデル生成システムおよび精度推定システム |
-
2019
- 2019-10-24 WO PCT/JP2019/041793 patent/WO2021079479A1/ja active Application Filing
- 2019-10-24 JP JP2021553245A patent/JP7205644B2/ja active Active
-
2022
- 2022-04-07 US US17/715,687 patent/US20220230028A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016152053A1 (ja) * | 2015-03-23 | 2016-09-29 | 日本電気株式会社 | 精度推定モデル生成システムおよび精度推定システム |
Non-Patent Citations (1)
Title |
---|
KIM YOUNGIN, PARK CHEONG HEE: "An Efficient Concept Drift Detection Method for Streaming Data under Limited Labeling", IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, INFORMATION & SYSTEMS SOCIETY, TOKYO., JP, vol. E100.D, no. 10, 10 October 2017 (2017-10-10), JP, pages 2537 - 2546, XP055819275, ISSN: 0916-8532, DOI: 10.1587/transinf.2017EDP7091 * |
Also Published As
Publication number | Publication date |
---|---|
JP7205644B2 (ja) | 2023-01-17 |
US20220230028A1 (en) | 2022-07-21 |
JPWO2021079479A1 (ja) | 2021-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11295993B2 (en) | Maintenance scheduling for semiconductor manufacturing equipment | |
JP6871877B2 (ja) | 情報処理装置、情報処理方法及びコンピュータプログラム | |
JP2019185422A (ja) | 故障予知方法、故障予知装置および故障予知プログラム | |
CN112036426B (zh) | 利用高维传感器数据的多数表决进行无监督异常检测和责任的方法和系统 | |
US20220222545A1 (en) | Generation method, non-transitory computer-readable storage medium, and information processing device | |
Yilmaz et al. | Per-device adaptive test for analog/RF circuits using entropy-based process monitoring | |
Lugaresi et al. | Online validation of digital twins for manufacturing systems | |
US20220221843A1 (en) | Anomaly detection in high-volume manufacturing lines | |
US20220230028A1 (en) | Determination method, non-transitory computer-readable storage medium, and information processing device | |
JP2021089116A (ja) | 情報処理装置、情報処理方法、プログラム及び学習済みモデルの生成方法 | |
Lutska et al. | Forecasting the efficiency of the control system of the technological object on the basis of neural networks | |
US20220222580A1 (en) | Deterioration detection method, non-transitory computer-readable storage medium, and information processing device | |
JP7207566B2 (ja) | 生成方法、生成プログラムおよび情報処理装置 | |
CN110990236A (zh) | 一种基于隐马尔科夫随机场的SaaS软件性能问题识别方法 | |
JP7207565B2 (ja) | 生成方法、生成プログラムおよび情報処理装置 | |
JP7283563B2 (ja) | 生成方法、生成プログラムおよび情報処理装置 | |
WO2021079481A1 (ja) | 劣化検出方法、劣化検出プログラムおよび情報処理装置 | |
JP7371695B2 (ja) | 劣化検出方法、劣化検出プログラムおよび情報処理装置 | |
Turek et al. | Automated classification of electroluminescence images using artificial neural networks in correlation to solar cell performance parameters | |
JP7345006B1 (ja) | 学習モデル生成方法及び検査装置 | |
JP7287093B2 (ja) | 学習プログラム、学習方法および学習装置 | |
CN112598118B (zh) | 有监督学习的标注异常处理方法、装置、存储介质及设备 | |
CN110454904B (zh) | 除湿机中冷媒含量的处理方法和装置 | |
Piardi et al. | Evaluation Metrics for Collaborative Fault Detection and Diagnosis in Cyber-Physical Systems | |
Hosain et al. | Software reliability using Markov Chain usage model |
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: 19950094 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021553245 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: 19950094 Country of ref document: EP Kind code of ref document: A1 |