Model generation device, machine learning system, model generation method, and program
By determining and integrating the misclassification types of deep neural networks and generating appropriate integrated models, the problem of uneven misclassification risks in existing technologies is solved, and the classification accuracy and security are improved.
Patent Information
- Application Number
- CN202480009437.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-02-03
- Filing Date
- 2024-01-31
- Publication Date
- 2025-09-05
AI Technical Summary
In the existing technology, the misclassification risk level of deep neural networks is uneven, resulting in the inability to properly correct parameters according to the type of misclassification, affecting security.
The suspicious parameters of each misclassification type are determined by the model generation device to generate an integrated model, and the parameter integration unit is used to integrate and correct the parameters according to the risk level to generate an integrated model.
The classification accuracy of deep neural networks is improved, the risk of misclassification is appropriately reduced, and security is improved.
Smart Images

Figure CN120604243A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a model generation device, a machine learning system, a model generation method and a program. Background Art
[0002] Deep neural networks (DNNs), which are based on deep learning, have been widely used in fields such as image classification, natural language processing, and decision making. In recent years, their application to safety-critical technologies such as autonomous driving and medical diagnostics has been growing.
[0003] In safety-critical technical fields, prediction errors in deep neural networks can have serious consequences. To reduce prediction errors, techniques for correcting learned deep neural networks have been proposed. For example, Non-Patent Document 1 discloses a technique that uses a defect localization method to detect parameters that influence misclassification and then corrects them to reduce misclassification while maintaining accurate classification.
[0004] <Prior Art Literature>
[0005] <Patent Document>
[0006] Non-patent literature 1: J. Sohn, S. Kang, and S. Yoo, "Search based repair of deep neural networks," CoRR, abs / 1912.12463, 2019. Summary of the Invention
[0007] <Problems to be Solved by the Invention>
[0008] However, existing technologies have a problem in not adjusting parameters based on the risk level of misclassification. For example, the severity and frequency of accidents that may occur due to misclassification vary. If parameters could be appropriately adjusted based on the risk level of misclassification, safety could be improved.
[0009] In view of the above-mentioned technical problems, an object of one embodiment of the present invention is to appropriately correct a learned model for various types of misclassifications.
[0010] <Methods used to solve the problem>
[0011] In order to solve the above-mentioned problems, a model generation device involved in one embodiment of the present invention comprises: a parameter determination unit, which is configured to determine the parameters affecting the misclassification among the parameters of the classification model according to each misclassification type based on misclassified data incorrectly classified by a learned classification model; a parameter correction unit, which is configured to generate, according to each misclassification type, correction parameters obtained by correcting the parameters determined by the parameter determination unit; and a parameter integration unit, which is configured to generate an integrated model including integrated parameters obtained by integrating the correction parameters of each misclassification type.
[0012] <Effects of the Invention>
[0013] According to one aspect of the present invention, a learned model can be appropriately corrected for various types of misclassifications. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 This is a block diagram showing an example of the overall structure of a machine learning system.
[0015] Figure 2 This is a block diagram showing an example of the hardware configuration of a computer.
[0016] Figure 3 This is a block diagram showing an example of the functional structure of a machine learning system.
[0017] Figure 4 This is a flowchart showing an example of the generation process.
[0018] Figure 5 This is a flowchart showing an example of classification processing.
[0019] Figure 6A This is a diagram showing an example of verification results using VGG16 as the target.
[0020] Figure 6B This is a diagram showing an example of the verification result for ENetB7.
[0021] Figure 7 This is a block diagram showing another example of the overall structure of a machine learning system.
[0022] Figure 8 This is a block diagram showing another example of the functional structure of the machine learning system.
[0023] Figure 9 This is a flowchart showing another example of the generation process. DETAILED DESCRIPTION
[0024] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In addition, in this specification and the drawings, components having substantially the same functional configuration are denoted by the same reference numerals, and redundant descriptions are omitted.
[0025] [First embodiment]
[0026] A first embodiment of the present invention is a machine learning system that learns a classification model based on learning data assigned correct labels and classifies the data using the learned 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 requiring high safety. Examples of tasks requiring high safety include identifying surrounding objects in an autonomous vehicle and detecting lesions from medical images in medical diagnostic equipment.
[0027] In recent years, the use of deep neural networks (DNNs) based on deep learning has been gaining momentum in safety-critical technologies such as autonomous driving and medical diagnostics. In these safety-critical technological fields, misclassification by DNNs can have serious consequences, leading to a strong need to analyze the risk of accidents caused by specific types of misclassification.
[0028] The impact of misclassification varies depending on the type of vehicle, and the severity and frequency of potential accidents for each type of vehicle carry different risk levels. For example, in the case of autonomous driving technology, misclassifying a passenger car as a truck in the direction of the autonomous vehicle's travel has minimal impact on safety. On the other hand, misclassifying a pedestrian as a motorcycle driver increases the likelihood of an accident.
[0029] When evaluating the predictive performance of deep neural networks with safety in mind, if the predictive performance is insufficient, retraining by adding additional learning data can be considered. However, because retraining deep neural networks involves modifying all parameters, there are cases where the expected risk is not sufficiently reduced or unexpected risks are increased.
[0030] The method disclosed in Non-Patent Document 1 optimizes parameters that influence misclassification. This method first uses a fault localization method to detect parameters that are considered to have the greatest impact on misclassification (hereinafter referred to as "suspicious parameters"). Next, a metaheuristic optimization method is used to search for alternative values of the suspicious parameters (hereinafter referred to as "alternative parameter values") that can reduce misclassification while maintaining correct classification.
[0031] However, the method disclosed in Non-Patent Document 1 does not consider the type of misclassification, but corrects the parameters for each type of misclassification at once. Therefore, it is not possible to correct the parameters considering the risk level of each type of misclassification.
[0032] The purpose of the machine learning system in this embodiment is to appropriately correct the deep neural network for various types of misclassification. In particular, the purpose of the machine learning system in this embodiment is to appropriately correct the deep neural network based on the risk level corresponding to each type of misclassification.
[0033] Overall structure of the machine learning system
[0034] Reference Figure 1 The overall structure of the machine learning system in this embodiment is described. Figure 1 This is a block diagram showing an example of the overall configuration of the machine learning system in this embodiment.
[0035] like Figure 1 As shown, the 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 via a communication network N1 such as a LAN (Local Area Network) or the Internet for data communication.
[0036] The model generation device 10 is an information processing device such as a personal computer, workstation, or server that learns a classification model. The model generation device 10 learns the classification model based on learning data that has been assigned correct labels. The model generation device 10 corrects the learned classification model based on misclassified data incorrectly classified by the learned classification model. The classification model generated by the model generation device 10 is output to the data classification device 20.
[0037] The data classification device 20 is an information processing device such as a personal computer, workstation, or server that classifies object data. The data classification device 20 inputs object data to be classified into the classification model generated by the model generation device 10 and outputs a classification result of the object data.
[0038] in addition, Figure 1 The overall structure of the machine learning system 1 shown is an example, and various system configuration examples are possible depending on the application and purpose. For example, the machine learning system 1 may include multiple devices, including 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 using multiple computers or as a cloud computing service. Figure 1 The division of devices such as the model generation device 10 and the data classification device 20 shown is an example.
[0039] <Hardware Structure of Machine Learning System>
[0040] Reference Figure 2The hardware configuration of each device included in the machine learning system 1 in this embodiment will be described.
[0041] Computer Hardware Structure
[0042] The model generation device 10 and the data classification device 20 in this embodiment are realized by, for example, a computer. Figure 2 This is a block diagram showing an example of the hardware configuration of a computer in this embodiment.
[0043] like Figure 2 As shown, the computer 500 in 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 interface (I / F) 507, and an external I / F 508. The CPU 501, ROM 502, and RAM 503 form a so-called computer. The various hardware components of the computer 500 are interconnected via a bus 509. Alternatively, the input device 505 and the display device 506 may be connected to an external I / F 508 for use.
[0044] The CPU 501 is a computing device that reads programs and data from a storage device such as a ROM 502 or an HDD 504 into a RAM 503 and executes the data, thereby controlling and performing the overall functions of the computer 500. The computer 500 may include a GPU (Graphics Processing Unit) in addition to or in place of the CPU 501.
[0045] ROM 502 is an example of a nonvolatile semiconductor memory (storage device) that can retain programs and data even when the power is turned off. ROM 502 functions as a main storage device that stores various programs and data required for CPU 501 to execute various programs installed in HDD 504. Specifically, ROM 502 stores boot programs such as the BIOS (Basic Input / Output System) and EFI (Extensible Firmware Interface) that are executed when the computer 500 starts up, as well as OS (Operating System) settings, network settings, and other data.
[0046] RAM 503 is an example of a volatile semiconductor memory (storage device) that deletes programs and data when power is turned off. Examples of RAM 503 include DRAM (Dynamic Random Access Memory) and SRAM (Static Random Access Memory). RAM 503 provides a work area that is used when CPU 501 executes various programs installed in HDD 504.
[0047] HDD 504 is an example of a nonvolatile storage device that stores programs and data. The programs and data stored in HDD 504 include the OS, which is the basic software that controls the entire computer 500, and application programs that provide various functions within the OS. Alternatively, computer 500 may utilize a storage device using flash memory as a storage medium (e.g., an SSD).
[0048] The input device 505 is a touch panel, operation keys or buttons, a keyboard or a mouse for the user to input various signals, a microphone for inputting audio data such as voice, or the like.
[0049] The display device 506 is composed of a display such as liquid crystal or organic EL (Electro-Luminescence) for displaying a screen, and a speaker for outputting audio data such as sound.
[0050] The communication I / F 507 is an interface for connecting to a communication network and for the computer 500 to perform data communication.
[0051] The external I / F 508 is an interface with an external device, such as a driver device 510 .
[0052] Drive device 510 is a device for setting recording medium 511. Recording medium 511 herein includes media that record information optically, electrically, or magnetically, such as CD-ROMs, floppy disks, and magneto-optical disks. Alternatively, recording medium 511 may include semiconductor memory that records information electrically, such as ROMs and flash memories. This allows computer 500 to read from and / or write to recording medium 511 via external I / F 508.
[0053] Furthermore, various programs installed in HDD 504 are installed by, for example, placing distributed recording medium 511 in drive device 510 connected to external I / F 508, and having drive device 510 read various programs recorded in recording medium 511. Alternatively, various programs installed in HDD 504 may be installed by downloading from a network other than the communication network via communication I / F 507.
[0054] Functional Structure of the Machine Learning System
[0055] Reference Figure 3 The functional structure of the machine learning system in this embodiment is described. Figure 3 This is a block diagram showing an example of the functional configuration of the machine learning system 1 in this embodiment.
[0056] Functional structure of the model generation device
[0057] like Figure 3 As shown, the model generation device 10 in this embodiment includes: a learning data storage unit 101, a model learning unit 102, a model verification unit 103, a correction data storage unit 104, a misclassification extraction unit 105, a parameter determination unit 106, a parameter correction unit 107 and a parameter integration unit 108.
[0058] The model learning unit 102, the model verification unit 103, the misclassification extraction unit 105, the parameter determination unit 106, the parameter correction unit 107 and the parameter integration unit 108 are executed by the CPU 501. Figure 2 The learning data storage unit 101 and the correction data storage unit 104 are implemented by, for example, using Figure 2 This is achieved using the HDD 504 shown.
[0059] The learning data storage unit 101 stores a plurality of learning data in advance. Learning data is used to learn the classification model. The learning data is assigned a correct answer label indicating the correct answer value for the classification. The amount of learning data varies depending on the type of classification model; however, it can be sufficient to enable the classification model to learn.
[0060] The model learning unit 102 learns the classification model based on the learning data read from the learning data storage unit 101. The structure of the classification model in this embodiment is, for example, a deep neural network. An example of a classification model is an image recognition model called VGG16 based on a convolutional neural network. Another example of a classification model is an image recognition model called ENetB7 having a network of an encoder and a decoder. The network structure of the classification model is not limited to these, and any model can be used as long as it is a model that performs a classification task based on a deep neural network. The learning method of the classification model varies depending on the type of classification model, but a well-known learning algorithm can be used.
[0061] The model verification unit 103 classifies a plurality of validation data based on the learned classification model generated by the model learning unit 102. The validation data is data for which the correct answer value for the classification is known. For example, the validation data can be extracted from the learning data that has been assigned a correct answer label, or data different from the learning data can be collected and automatically or manually assigned a correct answer label.
[0062] Based on the classification results of the validation data, the model verification unit 103 divides the validation data into correctly classified data and incorrectly classified data. Correctly classified data refers to correctly classified validation data. Incorrectly classified data refers to incorrectly classified validation data. Correct classification can be determined by comparing the classification results of the validation data with the correct answer labels. Specifically, the model verification unit 103 classifies validation data whose classification results agree with the correct answer labels as correctly classified data, and classifies validation data whose classification results disagree with the correct answer labels as incorrectly classified data.
[0063] The correction data storage unit 104 stores correction data including correct classification data and misclassification data generated by the model verification unit 103. The correction data is data for correcting the classification model generated by the model learning unit 102 and already learned.
[0064] The misclassification extraction unit 105 extracts misclassification data for each misclassification type from the corrected data stored in the corrected data storage unit 104. The misclassification type can be determined based on a combination of the classification results of the model verification unit 103 and the correctness value of the classification. Furthermore, each misclassification type has a predetermined risk level.
[0065] Based on the misclassification data extracted by the misclassification extraction unit 105, the parameter determination unit 106 determines suspicious parameters from the parameters of the learned classification model for each misclassification type. Suspicious parameters can be determined, for example, using a defect localization method. Methods for determining suspicious parameters using defect localization methods are disclosed, for example, in Non-Patent Document 1.
[0066] The parameter correction unit 107 corrects the suspicious parameters determined by the parameter determination unit 106 according to the type of misclassification based on the correct classification data stored in the correction data storage unit 104 and the misclassification data extracted by the misclassification extraction unit 105. Alternative parameter values for the suspicious parameters can be searched for, for example, using a method such as metaheuristic optimization. Methods for searching for alternative parameter values using metaheuristic optimization are disclosed, for example, in Non-Patent Document 1.
[0067] 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 misclassification type. The parameter integration unit 108 generates a classification model (hereinafter also referred to as "integrated model") by replacing the parameters of the learned classification model generated by the model learning unit 102 with integrated parameters that integrate the corrected parameters. The parameter integration unit 108 outputs the integrated model to the data classification device 20.
[0068] 》Functional structure of data classification device》
[0069] like Figure 3 As shown, the data classification device 20 in this embodiment includes a model storage unit 201 , a data acquisition unit 202 , and a data classification unit 203 .
[0070] The data acquisition unit 202 and the data classification unit 203 are executed by the CPU 501, for example. Figure 2 The model storage unit 201 is implemented by, for example, using the program developed from the HDD 504 to the RAM 503. Figure 2 This is achieved using the HDD 504 shown.
[0071] The model storage unit 201 stores a learned classification model that is an integrated model learned by the model generation device 10 and in which parameters are corrected for various misclassifications.
[0072] The data acquisition unit 202 acquires target data to be classified. The target data is data whose correct answer value for classification is unknown.
[0073] The data classification unit 203 classifies the target data by inputting the target data acquired by the data acquisition unit 202 into the learned classification model read from the model storage unit 201. The data classification unit 203 outputs the classification result of the target data.
[0074] <Processing of machine learning system>
[0075] Reference Figure 4 as well as Figure 5The machine learning method executed by the machine learning system 1 in this embodiment will be described. The machine learning method in this embodiment includes a generation process executed by the model generation device 10 (see Figure 4 ) and the classification process performed by the data classification device 20 (refer to Figure 5 ).
[0076] Generate Processing
[0077] Reference Figure 4 The generation process in this embodiment will be described in detail. Figure 4 1 is a flowchart showing an example of the generation process in this embodiment. The generation process is a process of generating a classification model based on learning data.
[0078] In step S1, the model learning unit 102 of the model generation device 10 reads learning data from the learning data storage unit 101. Here, the model learning unit 102 reads a portion (e.g., ¾ of the total) of the learning data stored in the learning data storage unit 101. Next, the model learning unit 102 learns a classification model based on the read learning data. The model learning unit 102 then transmits the learned classification model to the model verification unit 103.
[0079] In step S2, the model verification unit 103 of the model generation device 10 receives the learned classification model from the model learning unit 102. Next, the model verification unit 103 obtains a plurality of verification data. Here, the model verification unit 103 reads the learning data (i.e., 1 / 4 of the total) that was not used in learning the classification model from the learning data storage unit 101 as verification data.
[0080] The model verification unit 103 inputs the read verification data into the learned classification model to calculate the classification result of the verification data. Then, the model verification unit 103 compares the classification result output from the learned classification model with the correct answer label assigned to the verification data.
[0081] If the classification result matches the correct label, the model verification unit 103 appends the verification 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 appends the verification data to the incorrectly classified data. The model verification unit 103 then stores the corrected data, including the correctly classified data and the incorrectly classified data, in the corrected data storage unit 104.
[0082] In step S3, the misclassification extraction unit 105 of the model generation device 10 determines the type of misclassification to be processed from a predetermined set of multiple misclassifications. Next, the unit reads the correction data stored in the correction data storage unit 104. The unit extracts misclassification data that matches the type of misclassification to be processed from the read correction data. The unit then transmits the extracted misclassification data to the parameter determination unit 106.
[0083] In step S4, the parameter determination unit 106 of the model generation device 10 receives the misclassification data from the misclassification extraction unit 105. Next, the parameter determination unit 106 identifies suspicious parameters among the parameters of the learned classification model based on the received misclassification data. The parameter determination unit 106 then transmits information indicating the identified suspicious parameters to the parameter correction unit 107.
[0084] In step S5, the parameter correction unit 107 of the model generation device 10 receives information indicating the suspicious parameter from the parameter determination unit 106. Next, the parameter correction unit 107 searches for an alternative parameter value for the suspicious parameter. The parameter correction unit 107 then sends the corrected parameter obtained by replacing the suspicious parameter with the alternative parameter value to the parameter integration unit 108.
[0085] The parameter correction unit 107 may also output a classification model (hereinafter also referred to as a "corrected model") obtained by replacing suspicious parameters with substitute parameter values. The parameter correction unit 107 may output the corrected model together with the corrected parameters or may output the corrected model instead of the corrected parameters.
[0086] 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. The search variable x in non-patent document 1 corresponds to the alternative parameter value. The fitness function frep in non-patent document 1 is calculated using the misclassified data extracted by the misclassification extraction unit 105 and the correct classification data generated by the model verification unit 103. The parameter correction unit 107 adjusts the search variable x so that the fitness function frep is maximized, and outputs the search variable x when the fitness function frep converges as the alternative parameter value.
[0087] Formula (1) is the suitability function f in this embodiment. rep An example of.
[0088] [Formula 1]
[0089]
[0090] Where NI is the set of misclassified data. PI is the set of correctly classified data. indis the classification model with the suspicious parameters changed, M ind (t) is obtained through M ind The result of classifying input t. label(t) is the correct label for input t. loss is the gradient loss in the error backpropagation method.
[0091] The processing from step S3 to step S5 is repeatedly performed for each misclassification type, thereby generating a correction parameter for each misclassification type.
[0092] In step S6, the parameter integration unit 108 of the model generation device 10 receives the correction parameter for each misclassified type from the parameter correction unit 107. Next, the parameter integration unit 108 integrates the received correction parameters for each misclassified type, thereby generating an integrated parameter that integrates the correction parameters.
[0093] The correction parameter integration method will be described in more detail. The parameter integration unit 108 searches for integration parameters based on an objective function REM based on the misclassification risk level. The objective function REM calculates a score by weighting the classification model's classification results by the risk level associated with the type of misclassification. The parameter integration unit 108 searches for integration parameters so that the score calculated by the objective function REM is maximized. Evolutionary algorithms such as genetic algorithms can be used to search for integration parameters.
[0094] Formula (2) is an example of the objective function REM in this embodiment.
[0095] [Formula 2]
[0096]
[0097] Among them, MR α is the probability of misclassifying α. α,β is the probability of misclassifying α as β. AC α is the probability of correctly classifying α. ped, car, rider, truck, bicy, and motor are the labels for pedestrians, car drivers, motorcycle drivers, trucks, bicycles, and motorcycles, respectively. rw1 to rw6 are weights predetermined based on the risk level. mw and aw are weights that determine the relative importance of the first and second items. Here, MR ped , MR car,rider Defined as risk level 1, MR rider , MR car ,truck , MR bicy Defined as risk level 2, MR ped,rider , MR rider,ped , MR motor,ped Defined as risk level 3.
[0098] The search scope for integrated parameters is a parameter set that includes all correction parameters for each misclassification type. This parameter set is formed by setting the parameters corrected for multiple misclassifications to the weighted sum of the maximum and minimum values of the replacement parameter values, and setting the parameter corrected for a single misclassification to the weighted sum of the original parameter value and the replacement parameter value, with the weights varied. Specifically, parameter integration unit 108 represents the integrated parameter as the weighted sum of the replacement parameter values and searches for the optimal combination of these weights.
[0099] In step S7 , the parameter integration unit 108 replaces the parameters of the learned classification model with the searched integration parameters. This generates an integrated model containing the integration parameters. The parameter integration unit 108 then sends the integrated model to the data classification device 20 .
[0100] The data classification device 20 receives the integrated model from the model generation device 10. The data classification device 20 stores the received integrated model in the model storage unit 201 as a learned classification model.
[0101] Classification Processing
[0102] Reference Figure 5 The classification process in this embodiment will be described in detail. Figure 5 This is a flowchart showing an example of classification processing in this embodiment.
[0103] In step S11 , the data acquisition unit 202 of the data classification device 20 acquires target data to be classified. Then, the data acquisition unit 202 sends the acquired target data to the data classification unit 203 .
[0104] 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 the learned classification model stored in the model storage unit 201. Next, the data classification unit 203 inputs the target data into the read learned classification model to calculate the classification result of the target data. The data classification unit 203 then outputs the classification result of the target data.
[0105] Evaluation Results
[0106] Reference Figure 6A as well as Figure 6B The results of evaluating the classification performance of the classification model in this embodiment will be described. Figure 6A This is a diagram showing an example of evaluation results for VGG16. Figure 6B This is a diagram showing an example of the evaluation results for ENetB7.
[0107] Figure 6AThis is the result of comparing multiple existing technologies with this embodiment using VGG16 as the target. NW rep 、RETR W rep 、RETR NW rep+tr 、RETR W rep+tr It is an existing technology that uses learning data to learn the model and uses correction data to relearn only the final fully connected layer. REM This is a conventional technique that uses misclassified data to correct suspicious parameters. DISTRRP is the method of this embodiment.
[0108] The modified evaluation index used to compare the various methods uses the objective function REM. REM, as shown in Equation (2), is a score calculated by weighting the classification model's classification results according to the risk level. Figure 6 shows the change in REM before and after relearning or modification.
[0109] like Figure 6A As shown, using VGG16 as the object, the method of this embodiment has a positive minimum, maximum, and average value for the modified evaluation index, significantly improving classification accuracy. On the other hand, in other prior art techniques, the modified evaluation index has a range that includes negative values, resulting in limited improvement in classification accuracy. Therefore, the method of this embodiment improves the modified evaluation index compared to other prior art techniques.
[0110] Figure 6B This is the result of comparing several existing technologies with this embodiment, taking ENetB7 as the object. Figure 6B As shown, even when ENetB7 is used as the target, the method of this embodiment improves the correction evaluation index compared with other conventional technologies.
[0111] according to Figure 6A as well as Figure 6B The evaluation results shown indicate that the machine learning system 1 in this embodiment can correct the classification model with high accuracy for various misclassifications.
[0112] That is, according to the machine learning system 1 in this embodiment, it is possible to generate correction parameters for each misclassified type by taking into account the risk level corresponding to the misclassified type. In the method of this embodiment, the classification accuracy is greatly improved regardless of whether VGG16 is used as the object or ENetB7 is used as the object. On the other hand, in the ARACHNE as the prior art, which is an integrated model that appropriately integrates the correct classification parameters and the misclassified parameters in order to achieve a balance, the classification accuracy is reduced regardless of whether VGG16 is used as the object or ENetB7 is used as the object. In addition, in the ARACHNE as the prior art REM Even when ENetB7 is used as the target, the improvement in classification accuracy is small compared with the machine learning system 1 in this embodiment.
[0113] As shown in this way, when generating parameters, correction parameters are generated for each misclassification type by considering the risk level corresponding to the misclassification type, and when integrating parameters, a method of searching for integrated parameters in a manner that increases the score calculated by the objective function REM based on the misclassification risk level is effective.
[0114] <Effects of the First Embodiment>
[0115] The model generation device 10 in this embodiment identifies suspicious parameters for each misclassification type based on misclassified data that has been misclassified by the learned classification model, corrects the suspicious parameters for each misclassification type, and generates an integrated model including integrated parameters that integrate the corrected parameters. Therefore, the model generation device 10 in this embodiment can appropriately correct the model for various types of misclassification.
[0116] The model generation device 10 in this embodiment determines suspicious parameters for each misclassification type using a defect localization method. Therefore, the model generation device 10 in this embodiment can accurately grasp the cause of misclassification for each misclassification type.
[0117] The model generation device 10 in this embodiment generates a correction parameter for correcting the suspicious parameter for each misclassification type. Therefore, the model generation device 10 in this embodiment can obtain a correction parameter specifically for reducing risk for each misclassification type.
[0118] The model generation device 10 in this embodiment integrates correction parameters for each misclassification type based on an objective function based on the risk level. Therefore, the model generation device 10 in this embodiment can efficiently and appropriately adjust the parameters based on the risk level, based on the knowledge of correction parameters specific to each misclassification type.
[0119] The model generation device 10 in this embodiment repeatedly searches for integrated parameters from a parameter set containing correction parameters for each misclassified type using a method such as evolutionary computation. Therefore, the model generation device 10 in this embodiment can efficiently repeat trial and error based on trade-off balance adjustments.
[0120] [Second embodiment]
[0121] A second embodiment of the present invention is a machine learning system 300 including a plurality of clients 330 including a model generation device 310 having some of the functions of the model generation device 10 described in the first embodiment, and further including a communication network N2 and a server 340 for transmitting and receiving data with the plurality of clients 330. This machine learning system 300 can collectively repair a DNN model without sharing raw data among the plurality of clients 330.
[0122] The effectiveness of DNN repair methods depends on the quantity and quality of the 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, data sharing for repair is not actively promoted due to intellectual property protection and privacy concerns. In this embodiment, a system is provided that enables collaborative DNN repair without sharing data between members who do not use the same DNN.
[0123] Machine learning system 300 incorporates a mechanism that shares intermediate calculation results for unavailable raw data on server 340. This allows the calculation of metrics (such as suspicion scores and fitness values) required for DNN repair to be divided into various data sets and then aggregated. This eliminates the need to share raw data, achieving the same level of repair performance as a single DNN repair.
[0124] Overall structure of the machine learning system
[0125] Reference Figure 7 The overall structure of the machine learning system in the second embodiment will be described. Figure 7 This is a block diagram showing an example of the overall configuration of the machine learning system in this embodiment.
[0126] like Figure 7 As shown, the machine learning system 300 in this embodiment includes multiple clients 330 and a server 340. Each client 330 includes a model generation device 310 and a data classification device 320. Each client 330 and the server 340 are connected to each other via a communication network N2 such as a LAN (Local Area Network) or the Internet for data communication.
[0127] Model generation device 310 is an information processing device such as a personal computer, workstation, or server that learns a classification model. Model generation device 310 collaborates with server 340 to learn the classification model based on learning data assigned correct labels. It also corrects the learned classification model based on misclassified data incorrectly classified by the learned classification model. The corrected classification model is output to data classification device 320.
[0128] Data classification device 320, similar to data classification device 20 shown in the first embodiment, is an information processing device such as a personal computer, workstation, or server that classifies object data. Data classification device 320 inputs object data to be classified into a classification model generated by model generation device 310 and server 340, and outputs a classification result for the object data.
[0129] <Hardware Structure of Machine Learning System>
[0130] 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 in the first embodiment. Figure 2 Since the structures are the same, the description thereof will be omitted.
[0131] Functional Structure of the Machine Learning System
[0132] Reference Figure 8 The functional configuration of the machine learning system 300 in this embodiment will be described. Figure 8 This is a block diagram showing an example of the functional configuration of the machine learning system 300 in this embodiment.
[0133] Functional structure of the model generation device
[0134] like Figure 8 As shown, the model generation device 310 in this embodiment is configured in multiple clients 330, and includes: a learning data storage unit 301, a model learning unit 302, a model verification unit 303, a correction data storage unit 304, a misclassification extraction unit 305, a parameter determination unit 306, and a parameter correction unit 307.
[0135] On the other hand, the parameter integration unit 308 is provided in the server 340 , and the plurality of clients 330 and the server 340 are connected via a communication network N2 .
[0136] The model learning unit 302, the model verification unit 303, the misclassification extraction unit 305, the parameter determination unit 306, and the parameter correction unit 307 of the model generation device 310 are configured to execute the following operations: Figure 2The learning data storage unit 301 and the correction data storage unit 303 are implemented by, for example, using Figure 2 This is achieved using the HDD 504 shown.
[0137] On the other hand, the parameter integration unit 308 is provided as a function of the server 340. The server 340 is provided by Figure 2 The same hardware structure is formed, so the parameter integration unit 308 is configured by, for example, causing the CPU 501 to execute Figure 2 This is achieved by processing of a program expanded from the HDD 504 to the RAM 503 .
[0138] 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 determination unit 306, and the parameter correction unit 307 have the same functions as 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 determination unit 106, and the parameter correction unit 107 of the machine learning system 1 as the first embodiment, and detailed descriptions are omitted.
[0139] On the other hand, the parameter integration unit 308 is provided in the server 340. The parameter integration unit 308 receives input of the substitute parameters generated by the parameter correction unit 307 in the model generation device 310 disposed in each client 330 via the communication network N2.
[0140] The parameter integration unit 308 integrates the corrected parameters obtained by replacing the suspicious parameters with the substitute parameter values for each misclassification type. The parameter integration unit 308 generates an integrated model, which is a classification model obtained by replacing the parameters of the learned classification model generated by the model learning unit 302 with the integrated parameters that integrate the corrected parameters. The parameter integration unit 308 outputs the integrated model to the data classification device 320 included in each client via the communication network N2.
[0141] Functional structure of data classification device
[0142] like Figure 8 As shown, the data classification device 320 in this embodiment includes a model storage unit 321 , a data acquisition unit 322 , and a data classification unit 323 .
[0143] The data acquisition unit 322 and the data classification unit 323 are executed by the CPU 501, for example. Figure 2 The model storage unit 321 is implemented by, for example, using the program developed from the HDD 504 to the RAM 503. Figure 2 This is achieved using the HDD 504 shown.
[0144] The functional configurations of the model storage unit 321 , the data acquisition unit 322 , and the data classification unit 323 are the same as those of the model storage unit 201 , the data acquisition unit 202 , and the data classification unit 203 in the data classification device 20 shown in the first embodiment, and detailed description thereof will be omitted.
[0145] <Processing of machine learning system>
[0146] Regarding the generation process in the machine learning method executed by the machine learning system 300 in this embodiment that is different from the machine learning method of the machine learning system 1 shown in the first embodiment, refer to Figure 9 To explain.
[0147] Generate Processing
[0148] Figure 9 1 is a flowchart showing an example of the generation process in this embodiment. The generation process is a process of generating a classification model based on learning data.
[0149] In step S31, the model learning unit 302 of the model generation device 310 reads the learning data from the learning data storage unit 301. Here, it is assumed that the model learning unit 302 reads a portion (e.g., ¾ of the total) of the learning data stored in the learning data storage unit 301. Next, the model learning unit 302 learns a classification model based on the read learning data. The model learning unit 302 then sends the learned classification model to the model verification unit 303.
[0150] In step S32, the model verification unit 303 of the model generation device 310 receives the learned classification model from the model learning unit 302. Next, the model verification unit 303 obtains a plurality of verification data. Here, the model verification unit 303 reads the learning data (i.e., 1 / 4 of the total) that was not used in learning the classification model from the learning data storage unit 301 as verification data.
[0151] The model verification unit 303 inputs the read verification data into the learned classification model to calculate the classification result of the verification data. Then, the model verification unit 303 compares the classification result output from the learned classification model with the correct answer label assigned to the verification data.
[0152] If the classification result matches the correct label, the model verification unit 303 appends the verification 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 appends the verification data to the incorrectly classified data. The model verification unit 303 then stores the corrected data, including the correctly classified data and the incorrectly classified data, in the corrected data storage unit 304.
[0153] In step S33, the misclassification extraction unit 305 of the model generation device 310 determines the type of misclassification to be processed from among the predetermined plurality of misclassifications. Next, the unit reads the correction data stored in the correction data storage unit 304. The unit extracts misclassification data that matches the type of misclassification to be processed from the read correction data. The unit then transmits the extracted misclassification data to the parameter determination unit 306.
[0154] In step S34, the parameter determination unit 306 of the model generation device 310 receives the misclassification data from the misclassification extraction unit 305. Next, the parameter determination unit 306 identifies suspicious parameters among the parameters of the learned classification model based on the received misclassification data. The parameter determination unit 306 then transmits information indicating the identified suspicious parameters to the parameter correction unit 307.
[0155] In step S35, parameter correction unit 307 of model generation device 310 receives information indicating the suspicious parameter from parameter determination unit 306. Next, parameter correction unit 307 searches for an alternative parameter value for the suspicious parameter. Then, parameter correction unit 307 replaces the suspicious parameter with the alternative parameter value, and transmits the corrected parameter obtained by replacing the suspicious parameter with the alternative parameter value to parameter integration unit 308 located on server 340.
[0156] In addition, the search method for the alternative parameter value can be the same method as the search method described in the first embodiment.
[0157] Here, the processing from step S33 to step S35 is repeatedly executed for each misclassification type, thereby generating a correction parameter for each misclassification type.
[0158] In step S36, the parameter integration unit 308 configured in the server 340 receives correction parameters for each misclassified type from the parameter correction units 307 included in the model generation device 310 in each client 330 via the communication network N2. The parameter integration unit 308 then integrates the received correction parameters for each misclassified type, thereby generating integrated parameters that incorporate the correction parameters.
[0159] The method for integrating the correction parameters will be described. The parameter integration unit 308 searches for integration parameters based on the objective function REM based on the risk level of misclassification. The objective function REM calculates a score that weights the classification results of the classification model based on the risk level associated with the type of misclassification. As the objective function REM, the same function as equation (2) described in the first embodiment can be used. The parameter integration unit 308 searches for integration parameters in a manner that increases the score calculated by the objective function REM. The search for integration parameters can use evolutionary algorithms such as genetic algorithms.
[0160] The search scope for integrated parameters is a parameter set that includes all correction parameters for each misclassification type, transmitted from each client 330 to the server 340 via the communication network N2. This parameter set is formed by setting the parameters corrected for multiple misclassifications to the weighted sum of the maximum and minimum values of the replacement parameter values, and setting the parameter corrected for a single misclassification to the weighted sum of the original parameter value and the replacement parameter value, with the weights varied. Specifically, the parameter integration unit 308 sets the integrated parameter to be represented by the weighted sum of the replacement parameter values and searches for the optimal combination of these weights.
[0161] In step S37, the parameter integration unit 308 replaces the parameters of the learned classification model with the searched integrated parameters. This generates an integrated model that includes the integrated parameters. The parameter integration unit 308 then transmits the integrated model to the data classification device 320 included in each client 330 via the communication network N2.
[0162] The data classification device 320 receives the integrated model from the server 340. The data classification device 320 stores the received integrated model in the model storage unit 321 as a learned classification model.
[0163] Classification Processing
[0164] The classification process in this embodiment is the same as the classification process described in the first embodiment, and the description thereof will be omitted.
[0165] <Effects of the Second Embodiment>
[0166] In this way, in the machine learning system 300 involved in the second embodiment, since the intermediate calculation results of the original raw data that cannot be obtained are shared in the server 340, the calculations required for DNN repair are performed, and therefore, there is no need to share the original data held by each client, and the same repair performance as a single DNN repair can be obtained.
[0167] [Replenish]
[0168] The functions of the embodiments described above can be implemented by one or more processing circuits. The term "processing circuit" as used in this specification includes a processor implemented as an electronic circuit that is configured to execute the functions through software, an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), or other conventional circuit modules designed to execute the functions described above.
[0169] While 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 can be made within the scope of the gist of the present invention described in the claims.
[0170] This application claims the benefit of 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.
[0171] Label Description
[0172] 1. 300: Machine Learning System
[0173] 10, 310: Model generation device
[0174] 101, 301: Learning Data Storage Department
[0175] 102, 302: Model Learning Department
[0176] 103, 303: Model Validation Department
[0177] 104, 304: Correction of data storage unit
[0178] 105, 305: Misclassification Extraction Unit
[0179] 106, 306: parameter determination unit
[0180] 107, 307: Parameter correction unit
[0181] 108, 308: Parameter Integration Department
[0182] 20, 320: Data classification device
[0183] 201, 321: Model storage department
[0184] 202, 322: Data acquisition department
[0185] 203, 323: Data Classification Department
[0186] 330: Client
[0187] 340: Server.
Claims
1. A model generation device comprising: a parameter determination unit configured to determine, for each type of misclassification, a parameter of the classification model that affects the misclassification based on misclassified data misclassified by the learned classification model; a parameter correction unit configured to generate, for each type of misclassification, a correction parameter obtained by correcting the parameter determined by the parameter determination unit; as well as The parameter integration unit is configured to generate an integration model including an integration parameter obtained by integrating the correction parameters for each of the misclassified types.
2. The model generation device according to claim 1, wherein: The parameter integration unit is configured to search for the integration parameter from a parameter group including the correction parameter for each misclassification type based on an objective function that weights the classification result of the classification model by a risk level associated with the misclassification type.
3. The model generation device according to claim 2, wherein: The parameter integration unit is configured to search for the integration parameter using evolutionary computation.
4. A machine learning system, wherein a plurality of clients and a server can communicate via a network, The client has: a parameter determination unit configured to determine, for each type of misclassification, a parameter of the classification model that affects the misclassification based on misclassified data misclassified by the learned classification model; as well as a parameter correction unit configured to generate, for each type of misclassification, correction parameters obtained by correcting the parameters determined by the parameter determination unit, and transmit the correction parameters to the server; The server has: The parameter integration unit is configured to generate an integration model including integration parameters obtained by integrating the correction parameters for each of the misclassified types received from the plurality of clients.
5. A model generation method, wherein: The computer performs the following processes: a parameter determination process of determining, based on misclassified data incorrectly classified by the learned classification model, parameters affecting the misclassification among parameters of the classification model for each type of misclassification; a parameter correction process for generating, according to each type of misclassification, correction parameters obtained by correcting the parameters determined by the parameter determination process; as well as The parameter integration process generates an integration model including integration parameters obtained by integrating the correction parameters of each misclassified type.
6. A model generation method, performed by a machine learning system having multiple clients and a server capable of communicating via a network, wherein the following processes are performed: a parameter determination process, wherein the client determines, based on misclassified data incorrectly classified by the learned classification model, parameters of the classification model that affect the misclassification according to each type of misclassification; a parameter correction process, wherein the client generates, according to each misclassification type, correction parameters obtained by correcting the parameters determined by the parameter determination process, and sends the correction parameters to the server; as well as In a parameter integration process, the server generates an integration model including integration parameters obtained by integrating the correction parameters of each misclassified type received from the plurality of clients.
7. A program that causes a computer to execute the following processes: a parameter determination process of determining, based on misclassified data incorrectly classified by the learned classification model, parameters affecting the misclassification among parameters of the classification model for each type of misclassification; a parameter correction process for generating, according to each type of misclassification, correction parameters obtained by correcting the parameters determined by the parameter determination process; as well as The parameter integration process generates an integration model including integration parameters obtained by integrating the correction parameters of each misclassified type.
Citation Information
Patent Citations
Fall prevention bar fixing device and method for attaching the fall prevention bar fixing device to a luggage rack
JP2023014970A