Model generation device, machine learning system, server, client, model generation method and program

JPWO2024162380A5Pending Publication Date: 2025-10-16
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024574965
Authority / Receiving Office
JP · JP
Patent Type
Applications
Priority Date
2024-01-31
Filing Date
2024-01-31
Publication Date
2025-10-16
Patent Text Reader

Abstract

This model generation device is provided with: a parameter identification unit for identifying a parameter impacting a misclassification in question, among parameters of a classification model, for respective types of misclassification, on the basis of misclassified data that was misclassified by a trained classification model; a parameter correction unit for generating a corrected parameter obtained by correcting the parameter identified by the parameter identification unit for each of the types of misclassification; and a parameter integration unit for generating an integrated model including an integrated parameter obtained by integrating corrected parameters of the respective types of misclassification.
Need to check novelty before this filing date? Find Prior Art

Description

Model generation device, machine learning system, model generation method and program

[0001] The present invention relates to a model generation device, a machine learning system, a model generation method, and a program.

[0002] Deep neural networks (DNNs) based on deep learning have been used in technical fields such as image classification, natural language processing, and decision-making. In recent years, the application of deep neural networks has progressed in technical fields where safety is important, such as autonomous driving technology and medical diagnosis technology.

[0003] In technical fields where safety is essential, prediction errors in deep neural networks can have serious consequences. Techniques for correcting trained deep neural networks have been proposed to reduce prediction errors. For example, Non-Patent Document 1 discloses a technique that uses a defect localization technique to detect parameters that affect misclassification and correct the network to reduce misclassification while maintaining correct classification.

[0004] J. Sohn, S. Kang, and S. Yoo, "Search based repair of deep neural networks," CoRR, abs / 1912.12463, 2019.

[0005] However, the conventional technology has a problem in that it is not possible to modify parameters taking into account the risk level of misclassification. For example, the severity and frequency of accidents that may occur due to misclassification are not uniform. If the parameters could be modified appropriately according to the risk level of misclassification, safety could be improved.

[0006] In view of the above-described technical problems, one aspect of the present invention aims to appropriately correct a trained model for multiple types of misclassification.

[0007] In order to solve the above problem, a model generation device according to one aspect of the present invention includes a parameter identification unit configured to identify, for each type of misclassification, parameters of a classification model that affect the misclassification, based on misclassified data that has been incorrectly classified by a trained classification model; a parameter modification unit configured to generate modified parameters by modifying the parameters identified by the parameter identification unit, for each type of misclassification; and a parameter integration unit configured to generate an integrated model including an integrated parameter that integrates the modified parameters for each type of misclassification.

[0008] According to one aspect of the present invention, a trained model can be appropriately corrected for multiple types of misclassification.

[0009] FIG. 1 is a block diagram showing an example of the overall configuration of a machine learning system. FIG. 2 is a block diagram showing an example of the hardware configuration of a computer. FIG. 3 is a block diagram showing an example of the functional configuration of a machine learning system. FIG. 4 is a flowchart showing an example of a generation process. FIG. 5 is a flowchart showing an example of a classification process. FIG. 6A is a diagram showing an example of a verification result for VGG16. FIG. 6B is a diagram showing an example of a verification result for ENetB7. FIG. 7 is a block diagram showing another example of the overall configuration of a machine learning system. FIG. 8 is a block diagram showing another example of the functional configuration of a machine learning system. FIG. 9 is a flowchart showing another example of a generation process.

[0010] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In this specification and drawings, components having substantially the same functional configurations are designated by the same reference numerals, and redundant description will be omitted.

[0011] [First Embodiment] A first embodiment of the present invention is a machine learning system that trains a classification model based on training data to which correct labels have been assigned, and classifies data using the trained classification model. An example of the classification model in this embodiment is a deep neural network based on deep learning. The classification model in this embodiment performs tasks that require high safety. Examples of tasks that require high safety include a task of identifying surrounding objects in an autonomous vehicle and a task of detecting lesions from medical images in medical diagnostic equipment.

[0012] In recent years, efforts to utilize deep neural networks based on deep learning have progressed in fields that require high safety, such as autonomous driving technology and medical diagnostic technology. In technical fields that require safety, misclassification by deep neural networks can have serious consequences, so there is a strong need to analyze the risk of accidents caused by specific types of misclassification.

[0013] The impact of misclassification is not uniform across types of vehicles, with each type carrying different risk levels depending on the severity and frequency of potential accidents. For example, with autonomous driving technology, misclassifying a passenger car in the path of an autonomous vehicle as a truck has little impact on safety. On the other hand, misclassifying a pedestrian as a motorcyclist increases the likelihood of an accident.

[0014] If the predictive performance of a deep neural network is found to be insufficient after evaluating it while taking safety into consideration, it may be possible to retrain it by adding training data. However, because retraining a deep neural network modifies all parameters, intended risks may not be sufficiently reduced or unintended risks may increase.

[0015] The method disclosed in Non-Patent Document 1 optimizes parameters that affect misclassification. This method first uses a defect localization technique to detect parameters that are likely to have the greatest impact on misclassification (hereinafter also referred to as "suspicious parameters"). Next, metaheuristic optimization is used to search for alternative values ​​for the suspicious parameters (hereinafter also referred to as "alternative parameter values") that reduce misclassification while maintaining correct classification.

[0016] However, the method disclosed in Non-Patent Document 1 does not consider the type of misclassification, but instead corrects parameters for various types of misclassification collectively, making it impossible to correct parameters while taking into account the risk level for each type of misclassification.

[0017] The machine learning system of this embodiment aims to appropriately correct a deep neural network for multiple types of misclassification, particularly by taking into account the risk level corresponding to each type of misclassification.

[0018] <Overall Configuration of Machine Learning System> The overall configuration of a machine learning system according to this embodiment will be described with reference to Fig. 1. Fig. 1 is a block diagram showing an example of the overall configuration of a machine learning system according to this embodiment.

[0019] 1, a machine learning system 1 in this embodiment includes a model generation device 10 and a data classification device 20. The model generation device 10 and the data classification device 20 are connected to each other so as to be able to communicate data with each other via a communication network N1 such as a local area network (LAN) or the Internet.

[0020] The model generation device 10 is an information processing device such as a personal computer, workstation, or server that trains a classification model. The model generation device 10 trains the classification model based on training data to which correct labels have been assigned. The model generation device 10 corrects the trained classification model based on misclassified data that has been incorrectly classified by the trained classification model. The classification model generated by the model generation device 10 is output to the data classification device 20.

[0021] The data classification device 20 is an information processing device such as a personal computer, a workstation, or a server that classifies target data. The data classification device 20 inputs the target data to be classified into the classification model generated by the model generation device 10, and outputs the classification results obtained by classifying the target data.

[0022] Note that the overall configuration of the machine learning system 1 shown in Figure 1 is one example, and various system configuration examples are possible depending on the application and purpose. For example, the machine learning system 1 may include multiple models of one or more of the model generation device 10 and the data classification device 20. For example, the model generation device 10 or the data classification device 20 may be implemented by multiple computers, or may be implemented as a cloud computing service. The classification of devices such as the model generation device 10 and the data classification device 20 shown in Figure 1 is one example.

[0023] <Hardware Configuration of Machine Learning System> The hardware configuration of each device included in the machine learning system 1 in this embodiment will be described with reference to FIG.

[0024] <Hardware Configuration of Computer> The model generating device 10 and the data classifying device 20 in this embodiment are realized by, for example, a computer. Fig. 2 is a block diagram showing an example of the hardware configuration of a computer in this embodiment.

[0025] 2, the computer 500 of this embodiment includes a CPU (Central Processing Unit) 501, a ROM (Read Only Memory) 502, a RAM (Random Access Memory) 503, a HDD (Hard Disk Drive) 504, an input device 505, a display device 506, a communication I / F (Interface) 507, and an external I / F 508. The CPU 501, the ROM 502, and the RAM 503 form a so-called computer. The hardware components of the computer 500 are connected to each other via a bus line 509. The input device 505 and the display device 506 may be connected to the external I / F 508 for use.

[0026] The CPU 501 is a computing device that reads programs and data from a storage device such as the ROM 502 or the HDD 504 onto the RAM 503 and executes processing to realize overall control and functions of the computer 500. The computer 500 may have a GPU (Graphics Processing Unit) in addition to or instead of the CPU 501.

[0027] The ROM 502 is an example of a non-volatile semiconductor memory (storage device) that can retain programs and data even when the power is turned off. The ROM 502 functions as a main storage device that stores various programs, data, etc. required for the CPU 501 to execute various programs installed in the HDD 504. Specifically, the ROM 502 stores boot programs such as a Basic Input / Output System (BIOS) and an Extensible Firmware Interface (EFI) that are executed when the computer 500 starts up, as well as data such as OS (Operating System) settings and network settings.

[0028] The RAM 503 is an example of a volatile semiconductor memory (storage device) in which programs and data are erased when the power is turned off. The RAM 503 is, for example, a dynamic random access memory (DRAM) or a static random access memory (SRAM). The RAM 503 provides a working area in which various programs installed in the HDD 504 are expanded when executed by the CPU 501.

[0029] The HDD 504 is an example of a non-volatile storage device that stores programs and data. The programs and data stored in the HDD 504 include an OS, which is basic software that controls the entire computer 500, and applications that provide various functions on the OS. Note that the computer 500 may use a storage device that uses flash memory as a storage medium (e.g., an SSD (Solid State Drive)) instead of the HDD 504.

[0030] The input device 505 includes a touch panel, operation keys and buttons, a keyboard and mouse, a microphone for inputting sound data such as voice, and the like, which are used by the user to input various signals.

[0031] The display device 506 is composed of a display such as a liquid crystal display or organic electroluminescence (EL) display for displaying a screen, a speaker for outputting sound data such as voice, and the like.

[0032] The communication I / F 507 is an interface that connects to a communication network and enables the computer 500 to perform data communication.

[0033] The external I / F 508 is an interface with external devices, such as a drive device 510.

[0034] The drive device 510 is a device for loading a recording medium 511. The recording medium 511 here includes media that record information optically, electrically, or magnetically, such as CD-ROMs, flexible disks, and magneto-optical disks. The recording medium 511 may also include semiconductor memories that record information electrically, such as ROMs and flash memories. This allows the computer 500 to read from and / or write to the recording medium 511 via the external I / F 508.

[0035] The various programs to be installed in the HDD 504 are installed, for example, by setting the distributed recording medium 511 in a drive device 510 connected to the external I / F 508 and reading the various programs recorded on the recording medium 511 by the drive device 510. Alternatively, the various programs to be installed in the HDD 504 may be installed by being downloaded via the communication I / F 507 from a network different from the communication network.

[0036] <Functional Configuration of Machine Learning System> The functional configuration of the machine learning system in this embodiment will be described with reference to Fig. 3. Fig. 3 is a block diagram showing an example of the functional configuration of the machine learning system 1 in this embodiment.

[0037] <Functional Configuration of Model Generation Device> As shown in FIG. 3 , the model generation device 10 in this embodiment includes a training data storage unit 101, a model training unit 102, a model verification unit 103, a correction data storage unit 104, a misclassification extraction unit 105, a parameter identification unit 106, a parameter correction unit 107, and a parameter integration unit 108.

[0038] The model learning unit 102, the model verification unit 103, the misclassification extraction unit 105, the parameter identification unit 106, the parameter correction unit 107, and the parameter integration unit 108 are realized, for example, by a process in which a program loaded from the HDD 504 shown in Fig. 2 onto the RAM 503 is executed by the CPU 501. The learning data storage unit 101 and the correction data storage unit 104 are realized, for example, using the HDD 504 shown in Fig. 2.

[0039] The training data storage unit 101 stores a plurality of training data in advance. The training data is data used for training a classification model. Correct labels indicating correct values ​​for classification are assigned to the training data. The number of training data varies depending on the type of classification model, but it is sufficient that the amount is sufficient for training the classification model.

[0040] The model training unit 102 trains a classification model based on the training data read from the training data storage unit 101. The structure of the classification model in this embodiment is, for example, a deep neural network. One example of the classification model is an image recognition model based on a convolutional neural network called VGG16. Another example of the classification model is an image recognition model having a network of encoders and decoders called ENetB7. The network structure of the classification model is not limited to these, and any model that executes a classification task based on a deep neural network may be used. The training method of the classification model varies depending on the type of classification model, but a known learning algorithm may be used.

[0041] The model validation unit 103 classifies multiple pieces of validation data based on the trained classification model generated by the model training unit 102. The validation data is data for which the correct answer value for classification is known. The validation data may be extracted from training data to which a correct answer label has been assigned, or data different from the training data may be collected and assigned a correct answer label automatically or manually.

[0042] The model verification unit 103 divides the validation data into correctly classified data and misclassified data based on the classification result of the validation data. Correctly classified data is validation data that has been correctly classified. Misclassified data is validation data that has been incorrectly classified. Whether the validation data has been correctly classified can be determined by comparing the classification result of the validation data with the correct label. That is, the model verification unit 103 classifies validation data whose classification result matches the correct label as correctly classified data, and classifies validation data whose classification result does not match the correct label as misclassified data.

[0043] The correction data storage unit 104 stores correction data including correctly classified data and misclassified data generated by the model verification unit 103. The correction data is data for correcting the trained classification model generated by the model training unit 102.

[0044] The misclassification extraction unit 105 extracts misclassified data for each type of misclassification from the correction data stored in the correction data storage unit 104. The type of misclassification can be determined based on the combination of the classification result by the model verification unit 103 and the correct answer value for the classification. Note that a risk level is predetermined for each type of misclassification.

[0045] The parameter identifying unit 106 identifies suspicious parameters from the parameters of the trained classification model for each type of misclassification based on the misclassification data extracted by the misclassification extraction unit 105. The suspicious parameters can be identified by, for example, a defect localization technique. A technique for identifying suspicious parameters by a defect localization technique is disclosed in, for example, Non-Patent Document 1.

[0046] The parameter correction unit 107 corrects the suspicious parameters identified by the parameter identification unit 106 for each type of misclassification, based on the correctly classified data stored in the correction data storage unit 104 and the misclassified data extracted by the misclassification extraction unit 105. Alternative parameter values ​​for the suspicious parameters can be found using a technique such as metaheuristic optimization. A technique for finding alternative parameter values ​​using metaheuristic optimization is disclosed in, for example, Non-Patent Document 1.

[0047] The parameter integration unit 108 integrates parameters (hereinafter also referred to as "corrected parameters") obtained by replacing suspicious parameters with alternative parameter values ​​for each type of misclassification. The parameter integration unit 108 generates a classification model (hereinafter also referred to as "integrated model") in which the parameters of the trained classification model generated by the model training unit 102 are replaced with integrated parameters obtained by integrating the corrected parameters. The parameter integration unit 108 outputs the integrated model to the data classifier 20.

[0048] <Functional Configuration of Data Classification Apparatus> As shown in FIG. 3, the data classification apparatus 20 in this embodiment includes a model storage unit 201, a data acquisition unit 202, and a data classification unit 203.

[0049] The data acquisition unit 202 and the data classification unit 203 are realized, for example, by a program loaded from the HDD 504 shown in Fig. 2 onto the RAM 503, which is executed by the CPU 501. The model storage unit 201 is realized, for example, using the HDD 504 shown in Fig. 2.

[0050] A trained classification model is stored in the model storage unit 201. The classification model is an integrated model trained by the model generation device 10 and in which parameters are corrected for multiple types of misclassification.

[0051] The data acquisition unit 202 acquires target data to be classified. The target data is data for which the correct answer value for classification is unknown.

[0052] The data classification unit 203 classifies the target data acquired by the data acquisition unit 202 by inputting the target data to the trained classification model read out from the model storage unit 201. The data classification unit 203 outputs the classification result of the target data.

[0053] <Processing Procedure of Machine Learning System> The machine learning method executed by the machine learning system 1 in this embodiment will be described with reference to Figures 4 and 5. The machine learning method in this embodiment includes a generation process executed by the model generation device 10 (see Figure 4) and a classification process executed by the data classification device 20 (see Figure 5).

[0054] <<Generation Processing>> The generation processing in this embodiment will be described in detail with reference to Fig. 4. Fig. 4 is a flowchart showing an example of the generation processing in this embodiment. The generation processing is processing for generating a classification model based on training data.

[0055] In step S1, the model training unit 102 of the model generation device 10 reads training data from the training data storage unit 101. Here, the model training unit 102 reads a portion (e.g., three-quarters of the entire training data) of the training data stored in the training data storage unit 101. Next, the model training unit 102 trains a classification model based on the read training data. Subsequently, the model training unit 102 sends the trained classification model to the model validation unit 103.

[0056] In step S2, the model verification unit 103 of the model generation device 10 receives the trained classification model from the model training unit 102. Next, the model verification unit 103 acquires multiple pieces of verification data. Here, the model verification unit 103 reads, as verification data, training data that was not used in training the classification model from the training data storage unit 101 (i.e., one-fourth of the total).

[0057] The model verification unit 103 inputs each of the read validation data into the trained classification model to calculate the classification result of the validation data. Next, the model verification unit 103 compares the classification result output from the trained classification model with the correct label assigned to the validation data.

[0058] If the classification result matches the correct label, the model verification unit 103 adds the validation data to the correctly classified data. On the other hand, if the classification result does not match the correct label, the model verification unit 103 adds the validation data to the misclassified data. Then, the model verification unit 103 stores the corrected data including the correctly classified data and the misclassified data in the corrected data storage unit 104.

[0059] In step S3, the misclassification extraction unit 105 of the model generation device 10 determines a type of misclassification to be processed from among multiple predetermined types of misclassification. Next, the correction data stored in the correction data storage unit 104 is read. Next, the misclassification extraction unit 105 extracts misclassified data corresponding to the type of misclassification to be processed from the read correction data. Next, the misclassification extraction unit 105 sends the extracted misclassified data to the parameter identification unit 106.

[0060] In step S4, the parameter identifying unit 106 of the model generating device 10 receives the misclassified data from the misclassification extraction unit 105. Next, the parameter identifying unit 106 identifies suspicious parameters from among the parameters of the trained classification model based on the received misclassified data. Subsequently, the parameter identifying unit 106 sends information indicating the identified suspicious parameters to the parameter correction unit 107.

[0061] In step S5, the parameter modification unit 107 of the model generating device 10 receives information indicating the suspicious parameters from the parameter identification unit 106. Next, the parameter modification unit 107 searches for alternative parameter values ​​for the suspicious parameters. Subsequently, the parameter modification unit 107 sends the modified parameters, in which the suspicious parameters have been replaced with the alternative parameter values, to the parameter integration unit 108.

[0062] The parameter modification unit 107 may output a classification model in which suspicious parameters are replaced with alternative parameter values ​​(hereinafter also referred to as a "modified model"). The parameter modification unit 107 may output the modified model together with the modified parameters, or may output the modified model instead of the modified parameters.

[0063] The method for searching for alternative parameter values ​​will be described in more detail. The parameter correction unit 107 searches for alternative parameter values ​​according to the method disclosed in Non-Patent Document 1. Note that the search variable x in Non-Patent Document 1 corresponds to the alternative parameter value. The fitness function f rep is calculated using the misclassified data extracted by the misclassification extraction unit 105 and the correctly classified data generated by the model verification unit 103. The parameter correction unit 107 calculates the fitness function f rep The search variable x is adjusted to maximize the fitness function f rep When convergence occurs, the search variable x is output as the alternative parameter value.

[0064] Equation (1) is the fitness function f rep This is an example.

[0065]

[0066] where NI is the set of misclassified data, and PI is the set of correctly classified data. M ind is the classification model with the suspect parameters changed, and M ind (t) is the input t to M ind The classification result is shown in Fig. 1. label(t) is the correct label for input t. loss is the gradient loss in the backpropagation algorithm.

[0067] The processes from step S3 to step S5 are repeatedly executed for each type of misclassification, thereby generating correction parameters for each type of misclassification.

[0068] In step S6, the parameter integration unit 108 of the model generation device 10 receives the modified parameters for each type of misclassification from the parameter modification unit 107. Next, the parameter integration unit 108 integrates the received modified parameters for each type of misclassification. As a result, an integrated parameter is generated by integrating the modified parameters.

[0069] The method for integrating the correction parameters will be described in more detail. The parameter integration unit 108 searches for integration parameters based on an objective function REM that takes into account the risk level of misclassification. The objective function REM calculates a score that weights the classification result obtained by the classification model based on the risk level associated with the type of misclassification. The parameter integration unit 108 searches for integration parameters that increase the score calculated by the objective function REM. Evolutionary computation such as a genetic algorithm can be used to search for integration parameters.

[0070] Equation (2) is an example of the objective function REM in this embodiment.

[0071]

[0072] However, MR α is the probability of misclassifying α. MR α,β is the probability of misclassifying α as β. AC αis the probability of correctly classifying α. ped, car, rider, truck, bicy, and motor are labels indicating pedestrian, car, motorcyclist, truck, bicycle, and motorbike, respectively. rw1 to rw6 are weights determined in advance according to the risk level. mw and aw are weights that specify the relative importance of the first and second terms. Here, MR ped , MR car,rider Risk level 1, MR rider , MR car,truck , MR bicy Risk level 2, MR ped,rider , MR rider,ped , MR motor,ped is defined as risk level 3.

[0073] The search range for the integrated parameters is a parameter group that includes all corrected parameters for each type of misclassification. The parameter group is formed by changing the weights of the parameters corrected for multiple misclassifications as a weighted sum of the maximum and minimum values ​​of the alternative parameter values, and the parameters corrected for one misclassification as a weighted sum of the original parameter value and the alternative parameter value. In other words, the parameter integration unit 108 expresses the integrated parameters as a weighted sum of the alternative parameter values ​​and searches for the optimal combination of weights.

[0074] In step S7, the parameter integration unit 108 replaces the parameters of the trained classification model with the searched integrated parameters. This generates an integrated model including the integrated parameters. The parameter integration unit 108 then transmits the integrated model to the data classifying device 20.

[0075] The data classifying device 20 receives the integrated model from the model generating device 10. The data classifying device 20 stores the received integrated model in the model storage unit 201 as a trained classification model.

[0076] Classification Processing The classification processing in this embodiment will be described in detail with reference to Fig. 5. Fig. 5 is a flowchart showing an example of the classification processing in this embodiment.

[0077] In step S11, the data acquisition unit 202 of the data classifying device 20 acquires target data to be classified. Next, the data acquisition unit 202 sends the acquired target data to the data classifying unit 203.

[0078] In step S12, the data classification unit 203 of the data classification device 20 receives the target data from the data acquisition unit 202. Next, the data classification unit 203 reads out the trained classification model stored in the model storage unit 201. Subsequently, the data classification unit 203 inputs the target data into the trained classification model that has been read out, thereby calculating the classification result of the target data. Then, the data classification unit 203 outputs the classification result of the target data.

[0079] <Evaluation Results> The results of evaluating the classification performance of the classification model in this embodiment will be described with reference to Fig. 6A and Fig. 6B. Fig. 6A is a diagram showing an example of the evaluation result for VGG16. Fig. 6B is a diagram showing an example of the evaluation result for ENetB7.

[0080] FIG. 6A shows the results of a comparison between the present embodiment and several conventional techniques for VGG16. NW rep , RETR W rep , RETR NW rep+tr , RETR W rep+tr ARACHNE is a conventional technique that trains a model using training data and then retrains only the final fully connected layer using correction data. REM is a conventional technique that uses misclassified data to correct questionable parameters. DISTRRP is the method of the present embodiment.

[0081] The objective function REM was used as the correction evaluation index for comparing each method. REM is a score calculated by weighting the classification results of the classification model according to the risk level, as shown in Equation (2). Figure 6 shows the change in REM before and after re-learning or correction.

[0082] As shown in Figure 6A, when VGG16 was used as the target, the method of this embodiment had positive minimum, maximum, and average corrected evaluation indices, significantly improving classification accuracy. On the other hand, the other conventional techniques had corrected evaluation indices in a range that included negative values, limiting the improvement in classification accuracy. Therefore, the method of this embodiment resulted in a better corrected evaluation index than the other conventional techniques.

[0083] 6B shows the results of comparing the present embodiment with multiple conventional techniques for ENetB7. As shown in FIG. 6B, even for ENetB7, the method of the present embodiment resulted in a higher correction evaluation index than the other conventional techniques.

[0084] The evaluation results shown in Figures 6A and 6B demonstrate that the machine learning system 1 of this embodiment can accurately correct the classification model for multiple types of misclassification.

[0085] That is, according to the machine learning system 1 of this embodiment, correction parameters can be generated for each type of misclassification taking into account the risk level corresponding to the type of misclassification, and the method of this embodiment significantly improved classification accuracy whether targeting VGG16 or ENetB7. On the other hand, the ARACHNE, which is an integrated model that appropriately integrates all correct classification parameters and misclassification parameters in a balanced manner and is a conventional technology, showed reduced classification accuracy whether targeting VGG16 or ENetB7. REM Even when ENetB7 is targeted, the improvement in classification accuracy is slight compared to the machine learning system 1 of this embodiment.

[0086] In this way, it was shown that when generating parameters, it is effective to generate correction parameters for each type of misclassification taking into account the risk level corresponding to the type of misclassification, and when integrating parameters, it is effective to search for integrated parameters based on the objective function REM that takes into account the risk level of misclassification so that the score calculated by the objective function REM is large.

[0087] Effect of First Embodiment The model generation device 10 of this embodiment identifies suspicious parameters for each type of misclassification based on misclassified data that has been incorrectly classified by a trained classification model, corrects the suspicious parameters for each type of misclassification, and generates an integrated model including integrated parameters that integrate the corrected parameters. Therefore, the model generation device 10 of this embodiment can appropriately correct a model for multiple types of misclassification.

[0088] The model generating device 10 in this embodiment identifies suspicious parameters for each type of misclassification using a defect localization technique, and therefore, the model generating device 10 in this embodiment can accurately identify the cause of each type of misclassification.

[0089] The model generating device 10 in this embodiment generates correction parameters for correcting suspicious parameters for each type of misclassification, and therefore, the model generating device 10 in this embodiment can obtain correction parameters specialized for reducing the risk of each type of misclassification.

[0090] The model generating device 10 in this embodiment integrates the correction parameters for each type of misclassification based on an objective function that takes into account the risk level. Therefore, the model generating device 10 in this embodiment can grasp the correction parameters specialized for each type of misclassification and then adjust the parameters efficiently and appropriately based on the risk level.

[0091] The model generating device 10 in this embodiment repeatedly searches for integrated parameters from a parameter group including correction parameters for each type of misclassification using a technique such as evolutionary computing. Therefore, the model generating device 10 in this embodiment can efficiently repeat trial and error for balance adjustment taking into account trade-offs.

[0092] Second Embodiment The second embodiment of the present invention is a machine learning system 300 that includes a plurality of clients 330, each including a model generation device 310 having some of the functions of the model generation device 10 described in the first embodiment, and further includes a communication network N2 and a server 340 that transmit and receive data to and from the plurality of clients 330. This machine learning system 300 enables the plurality of clients 330 to collaboratively repair a DNN model without sharing raw data.

[0093] The effectiveness of DNN repair techniques depends on the quantity and quality of data used for DNN repair. For example, if data can be shared, more diverse and representative data can be obtained, resulting in a more reliable DNN. However, despite these advantages, repairs have not been actively performed by sharing data due to both intellectual property protection and privacy reasons. In this embodiment, a system is provided that enables members using the same DNN to collaboratively repair a DNN without sharing data.

[0094] In the machine learning system 300, intermediate calculation results for which the original raw data cannot be obtained are shared on the server 340, and a mechanism is introduced to divide the calculation of metrics (such as suspicion scores and fitness values) required for DNN repair into various data sets and re-aggregate them. This allows repair performance to be achieved at the same level as that of a single DNN repair without sharing individual raw data.

[0095] <Overall Configuration of Machine Learning System> The overall configuration of a machine learning system according to the second embodiment will be described with reference to Fig. 7. Fig. 7 is a block diagram showing an example of the overall configuration of a machine learning system according to this embodiment.

[0096] 7, the machine learning system 300 in this embodiment includes a plurality of clients 330 and a server 340. Each client 330 includes a model generating device 310 and a data classifying device 320. Each client 330 and the server 340 are connected to each other so as to enable data communication via a communication network N2 such as a local area network (LAN) or the Internet.

[0097] The model generation device 310 is an information processing device such as a personal computer, workstation, or server that trains a classification model. The model generation device 310 trains the classification model based on training data to which correct labels have been assigned, in cooperation with the server 340, and corrects the trained classification model based on misclassified data that has been incorrectly classified by the trained classification model. The corrected classification model is output to the data classification device 320.

[0098] The data classifying device 320 is equivalent to the data classifying device 20 described in the first embodiment, and is an information processing device such as a personal computer, workstation, or server that classifies target data. The data classifying device 320 inputs target data to be classified into the classification model generated by the model generating device 310 and the server 340, and outputs the classification results obtained by classifying the target data.

[0099] <Hardware configuration of machine learning system> The hardware configuration of each device included in the machine learning system 300 in this embodiment is the same as the hardware configuration of the machine learning system 1 of the first embodiment shown in Figure 2, and therefore a description thereof will be omitted.

[0100] <Functional Configuration of Machine Learning System> The functional configuration of the machine learning system 300 in this embodiment will be described with reference to Fig. 8. Fig. 8 is a block diagram showing an example of the functional configuration of the machine learning system 300 in this embodiment.

[0101] <Functional Configuration of Model Generation Device> As shown in FIG. 8 , a model generation device 310 in this embodiment is arranged in multiple clients 330, and includes a training data storage unit 301, a model training unit 302, a model verification unit 303, a correction data storage unit 304, a misclassification extraction unit 305, a parameter identification unit 306, and a parameter correction unit 307.

[0102] On the other hand, the parameter integration unit 308 is provided in a server 340, and the plurality of clients 330 and the server 340 are connected via a communication network N2.

[0103] The model learning unit 302, model verification unit 303, misclassification extraction unit 305, parameter identification unit 306, and parameter correction unit 307 included in the model generation device 310 are realized, for example, by a process in which a program loaded from the HDD 504 to the RAM 503 shown in Fig. 2 is executed by the CPU 501. The learning data storage unit 301 and the correction data storage unit 304 are realized, for example, using the HDD 504 shown in Fig. 2.

[0104] On the other hand, the parameter integration unit 308 is provided as a function of the server 340. Since the server 340 has the same hardware configuration as that shown in Fig. 2, the parameter integration unit 308 is realized, for example, by a process that the CPU 501 executes by a program loaded from the HDD 504 shown in Fig. 2 onto the RAM 503.

[0105] Here, the learning data storage unit 301, the model learning unit 302, the model verification unit 303, the correction data storage unit 304, the misclassification extraction unit 305, the parameter identification unit 306, and the parameter correction unit 307 have functions equivalent to those of the learning data storage unit 101, the model learning unit 102, the model verification unit 103, the correction data storage unit 104, the misclassification extraction unit 105, the parameter identification unit 106, and the parameter correction unit 107 of the machine learning system 1 of the first embodiment, and detailed description thereof will be omitted.

[0106] On the other hand, the parameter integration unit 308 is provided in the server 340. The parameter integration unit 308 receives, via the communication network N2, the alternative parameters generated by the parameter modification unit 307 disposed in the model generation device 310 in each client 330.

[0107] The parameter integration unit 308 integrates corrected parameters, which are parameters obtained by replacing suspicious parameters with alternative parameter values ​​for each type of misclassification. The parameter integration unit 308 generates an integrated model, which is a classification model obtained by replacing the parameters of the trained classification model generated by the model learning unit 302 with integrated parameters obtained by integrating the corrected parameters. The parameter integration unit 308 outputs the integrated model to the data classification device 320 provided in each client via communication network N2.

[0108] <Functional Configuration of Data Classification Apparatus> As shown in FIG. 8 , the data classification apparatus 320 in this embodiment includes a model storage unit 321 , a data acquisition unit 322 , and a data classification unit 323 .

[0109] The data acquisition unit 322 and the data classification unit 323 are realized, for example, by a program loaded from the HDD 504 shown in Fig. 2 onto the RAM 503, which is executed by the CPU 501. The model storage unit 321 is realized, for example, by using the HDD 504 shown in Fig. 2.

[0110] The functional configurations of the model storage unit 321, data acquisition unit 322, and data classification unit 323 are equivalent to the model storage unit 201, data acquisition unit 202, and data classification unit 203 in the data classification device 20 shown in the first embodiment, and detailed explanations will be omitted.

[0111] <Processing Procedure of Machine Learning System> Of the machine learning methods executed by the machine learning system 300 in this embodiment, a generation process that differs from the machine learning method of the machine learning system 1 shown in the first embodiment will be described with reference to FIG. 9 .

[0112] <<Generation Process>> Fig. 9 is a flowchart showing an example of the generation process in this embodiment. The generation process is a process for generating a classification model based on training data.

[0113] In step S31, the model training unit 302 of the model generation device 310 reads training data from the training data storage unit 301. Here, the model training unit 302 reads a portion (e.g., three-quarters of the total) of the training data stored in the training data storage unit 301. Next, the model training unit 302 trains a classification model based on the read training data. Subsequently, the model training unit 302 sends the trained classification model to the model verification unit 303.

[0114] In step S32, the model verification unit 303 of the model generation device 310 receives the trained classification model from the model training unit 302. Next, the model verification unit 303 acquires multiple pieces of verification data. Here, the model verification unit 303 reads, as verification data, training data that was not used in training the classification model from the training data storage unit 301 (i.e., one-fourth of the total).

[0115] The model verification unit 303 inputs each of the read validation data into the trained classification model to calculate the classification result of the validation data. Next, the model verification unit 303 compares the classification result output from the trained classification model with the correct label assigned to the validation data.

[0116] If the classification result matches the correct label, the model verification unit 303 adds the validation data to the correctly classified data. On the other hand, if the classification result does not match the correct label, the model verification unit 303 adds the validation data to the misclassified data. Then, the model verification unit 303 stores the corrected data including the correctly classified data and the misclassified data in the corrected data storage unit 304.

[0117] In step S33, the misclassification extraction unit 305 of the model generation device 310 determines a type of misclassification to be processed from among multiple predetermined types of misclassification. Next, the correction data stored in the correction data storage unit 304 is read. Next, the misclassification extraction unit 305 extracts misclassified data corresponding to the type of misclassification to be processed from the read correction data. Next, the misclassification extraction unit 305 sends the extracted misclassified data to the parameter identification unit 306.

[0118] In step S34, the parameter identifying unit 306 of the model generating device 310 receives the misclassified data from the misclassification extraction unit 305. Next, the parameter identifying unit 306 identifies suspicious parameters from among the parameters of the trained classification model based on the received misclassified data. Subsequently, the parameter identifying unit 306 sends information indicating the identified suspicious parameters to the parameter correction unit 307.

[0119] In step S35, the parameter modification unit 307 of the model generating device 310 receives information indicating the suspicious parameters from the parameter identification unit 306. Next, the parameter modification unit 307 searches for alternative parameter values ​​for the suspicious parameters. Subsequently, the parameter modification unit 307 sends the modified parameters, in which the suspicious parameters have been replaced with the alternative parameter values, to the parameter integration unit 308 located in the server 340.

[0120] The method for searching for alternative parameter values ​​can be the same as that described in the first embodiment.

[0121] The processes from step S33 to step S35 are repeated for each type of misclassification, thereby generating correction parameters for each type of misclassification.

[0122] In step S36, the parameter integration unit 308 located in the server 340 receives, via communication network N2, correction parameters for each type of misclassification from each parameter correction unit 307 included in the model generation device 310 in each client 330. Next, the parameter integration unit 308 integrates the received correction parameters for each type of misclassification. As a result, an integrated parameter is generated by integrating the correction parameters.

[0123] A method for integrating correction parameters will be described. The parameter integration unit 308 searches for integration parameters based on an objective function REM that takes into account the risk level of misclassification. The objective function REM calculates a score that weights the classification result obtained by the classification model based on the risk level associated with the type of misclassification. The objective function REM can be the same function as equation (2) described in the first embodiment. The parameter integration unit 308 searches for integration parameters so that the score calculated by the objective function REM becomes larger. Evolutionary computation such as a genetic algorithm can be used to search for integration parameters.

[0124] The search range for the integrated parameters is a parameter group that includes all of the correction parameters for each type of misclassification sent from each client 330 to server 340 via communication network N2. The parameter group is formed by changing the weights of the parameters corrected due to multiple misclassifications as a weighted sum of the maximum and minimum values ​​of the alternative parameter values, and the parameters corrected due to one misclassification as a weighted sum of the original parameter value and the alternative parameter value. In other words, the parameter integration unit 308 expresses the integrated parameters as a weighted sum of the alternative parameter values ​​and searches for the optimal combination of weights.

[0125] In step S37, the parameter integration unit 308 replaces the parameters of the trained classification model with the searched integrated parameters. This generates an integrated model including the integrated parameters. The parameter integration unit 308 then transmits the integrated model to the data classification device 320 provided in each client 330 via communication network N2.

[0126] Data classifying device 320 receives the integrated model from server 340. Data classifying device 320 stores the received integrated model in model storage unit 321 as a trained classification model.

[0127] Classification Processing The classification processing in this embodiment is the same as the classification processing shown in the first embodiment, and therefore a description thereof will be omitted.

[0128] <Effects of the Second Embodiment> In this way, in the machine learning system 300 according to the second embodiment, intermediate calculation results for which the original raw data cannot be obtained are shared on the server 340, and the calculations required for DNN repair are performed. Therefore, repair performance equivalent to that of a single DNN repair can be obtained without sharing raw data held by individual clients.

[0129] [Supplementary Note] Each function of the above-described embodiments can be realized by one or more processing circuits. Here, the term "processing circuit" in this specification includes a processor programmed to execute each function by software, such as a processor implemented by an electronic circuit, as well as devices such as an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), and conventional circuit modules designed to execute each of the above-described functions.

[0130] Although the embodiments of the present invention have been described in detail above, the present invention is not limited to these embodiments, and various modifications and changes are possible within the scope of the gist of the present invention described in the claims.

[0131] This application claims priority from Japanese Patent Application No. 2023-14970, filed with the Japan Patent Office on February 3, 2023, the entire contents of which are incorporated herein by reference.

[0132] 1, 300 Machine learning system 10, 310 Model generation device 101, 301 Learning data storage unit 102, 302 Model learning unit 103, 303 Model verification unit 104, 304 Corrected data storage unit 105, 305 Misclassification extraction unit 106, 306 Parameter identification unit 107, 307 Parameter correction unit 108, 308 Parameter integration unit 20, 320 Data classification device 201, 321 Model storage unit 202, 322 Data acquisition unit 203, 323 Data classification unit 330 Client 340 Server

Claims

1. a parameter specifying unit configured to specify, for each type of misclassification, parameters of the classification model that affect the misclassification, based on misclassified data that has been misclassified by the trained classification model; and a parameter modification unit configured to modify the parameters identified by the parameter identification unit for each type of misclassification to generate modified parameters; a parameter integration unit configured to generate an integrated model including an integrated parameter obtained by integrating the correction parameters for each of the types of misclassification; A model generation device comprising:

2. 2. The model generating device according to claim 1, the parameter integration unit is configured to search for the integration parameter from a parameter group including the correction parameter for each of the types of misclassification, based on an objective function that weights the classification result by the classification model by a risk level associated with the type of misclassification. Model generation device.

3. 3. The model generating device according to claim 2, The parameter integration unit is configured to search for the integrated parameters using evolutionary computing. Model generation device.

4. A machine learning system in which multiple clients and servers can communicate via a network, The client: a parameter specifying unit configured to specify, for each type of misclassification, parameters of the classification model that affect the misclassification, based on misclassified data that has been misclassified by the trained classification model; and a parameter modification unit configured to modify the parameters identified by the parameter specification unit for each type of misclassification to generate modified parameters and transmit the modified parameters to the server; Equipped with The server a parameter integration unit configured to generate an integrated model including an integrated parameter obtained by integrating the correction parameters for each of the types of misclassification received from the plurality of clients; Machine learning systems.

5. A server capable of communicating with a plurality of clients via a network, a parameter integration unit configured to generate an integrated model including an integrated parameter obtained by integrating correction parameters for each type of misclassification received from the plurality of clients; The modification parameters are: Identifying, for each type of misclassification, parameters of the classification model that affect the misclassification based on misclassified data that has been misclassified by the trained classification model; the parameters identified for each type of misclassification are modified. server.

6. A client capable of communicating with a server via a network, a parameter specifying unit configured to specify, for each type of misclassification, parameters of the classification model that affect the misclassification, based on misclassified data that has been misclassified by the trained classification model; and a parameter modification unit configured to modify the parameters identified by the parameter specification unit for each type of misclassification to generate modified parameters and transmit the modified parameters to the server; Equipped with The server generating an integrated model including an integrated parameter obtained by integrating the correction parameters for each of the types of misclassification received from a plurality of the clients; client.

7. The computer a parameter identification step of identifying, for each type of misclassification, parameters of the classification model that affect the misclassification based on misclassified data that has been incorrectly classified by the trained classification model; a parameter modification step for generating modified parameters by modifying the parameters identified by the parameter identification step for each type of misclassification; a parameter integration step of generating an integrated model including an integrated parameter obtained by integrating the correction parameters for each type of misclassification; A model generation method that performs

8. A model generation method executed by a machine learning system in which multiple clients and servers can communicate via a network, comprising: a parameter identification step in which the client identifies, for each type of misclassification, parameters of the classification model that affect the misclassification, based on misclassified data that has been incorrectly classified by the trained classification model; a parameter modification step in which the client modifies the parameters identified by the parameter identification step for each type of misclassification to generate modified parameters and transmits the modified parameters to the server; a parameter integration step in which the server generates an integrated model including an integrated parameter obtained by integrating the correction parameters for each of the types of misclassification received from the plurality of clients; A model generation method that performs

9. On the computer, a parameter identification step of identifying, for each type of misclassification, parameters of the classification model that affect the misclassification based on misclassified data that has been incorrectly classified by the trained classification model; a parameter modification step for generating modified parameters by modifying the parameters identified by the parameter identification step for each type of misclassification; a parameter integration step of generating an integrated model including an integrated parameter obtained by integrating the correction parameters for each type of misclassification; A program to execute.