Additional learning device, method, and program
The additional learning device addresses the issue of decreased classification accuracy by clustering and selectively extracting existing data based on cluster size, incorporating new data to maintain and enhance the model's accuracy for both existing and new data.
Patent Information
- Application Number
- JP2022118861
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-07-26
- Publication Date
- 2026-01-15
- Estimated Expiration
- 2042-07-26
AI Technical Summary
Existing methods for updating trained models to classify defects in new product data often result in a decrease in classification accuracy due to random downsampling of training data, which loses the trends and features of the existing data.
An additional learning device that includes a cluster data storage unit, data extraction unit, new learning data acquisition unit, and additional learning data storage unit, which extracts and clusters existing data based on cluster size, acquires new data, and stores additional learning data to maintain the classification accuracy of existing data while improving accuracy for new data.
The method improves the classification accuracy of new data while maintaining the accuracy of existing data, reducing training costs and preserving the features of new data, thus enhancing the robustness of the learning model.
Smart Images

Figure 0007799574000001 
Figure 0007799574000002 
Figure 0007799574000003
Abstract
Description
[Technical Field]
[0001] FIELD Embodiments of the present invention relate to an apparatus, method, and program for additional learning. [Background technology]
[0002] In the manufacturing industry, trained models are sometimes used to automatically classify defects in products based on training data that includes existing data acquired during the product manufacturing process and defect classifications based on the existing data. In this case, if new data with a distribution that does not exist in the training data is generated over time, the accuracy of defect classification by the trained model in operation will decrease. In this situation, the trained model needs to be updated so that it can accurately classify defects even for new product data.
[0003] In response to this, a method is known in which a trained model is updated by performing fine tuning on the trained model using additional training data in which new data is added to existing training data.
[0004] According to the inventor's investigation, when such additional learning methods are used, if existing training data is randomly downsampled to create additional training data, the trends and features of the existing training data are lost due to the random sampling, which may result in a decrease in the classification accuracy of the trained model for the existing data.
[0005] Therefore, it is desirable for the additional learning method to maintain the classification accuracy of existing data while improving the classification accuracy of new data. [Prior art documents] [Patent documents]
[0006] [Patent Document 1] Japanese Patent Publication No. 2020-107102 Summary of the Invention [Problem to be solved by the invention]
[0007] The problem to be solved by the present invention is to improve the classification accuracy of new data while maintaining the classification accuracy of existing data. [Means for solving the problem]
[0008] An additional learning device according to an embodiment includes a cluster data storage unit, a data extraction unit, a new learning data acquisition unit, and an additional learning data storage unit. The cluster data storage unit stores a plurality of existing learning data, each of which takes existing data as input data and outputs defect classifications corresponding to the existing data, and cluster data representing clusters to which each of the plurality of existing learning data belongs. The data extraction unit extracts a plurality of first existing learning data from the plurality of existing learning data according to the size of each cluster, based on the cluster data. The new learning data acquisition unit acquires a plurality of new learning data, each of which takes new data as input data and outputs defect classifications corresponding to the new data. The additional learning data storage unit stores a plurality of additional learning data based on the plurality of first existing learning data and the plurality of new learning data. [Brief explanation of the drawings]
[0009] [Figure 1] FIG. 1 is a block diagram showing an example of an additional learning device according to a first embodiment. [Figure 2] 4 is a flowchart showing an example of an operation in the first embodiment. [Figure 3] FIG. 3 is a schematic diagram for explaining the operation in the first embodiment. [Figure 4] 6 is a graph for explaining an example of an effect in the first embodiment. [Figure 5] 6 is a graph for explaining another example of the effect in the first embodiment. [Figure 6] 6 is a graph for explaining another example of the effect in the first embodiment. [Figure 7] FIG. 10 is a block diagram showing an example of an additional learning device according to a second embodiment. [Figure 8] 10 is a flowchart showing an example of an operation in the second embodiment. [Figure 9] FIG. 11 is a block diagram showing an example of an additional learning device according to a third embodiment. [Figure 10] 10 is a flowchart showing an example of an operation in the third embodiment. [Figure 11] FIG. 13 is a block diagram showing an example of the hardware configuration of an additional learning device according to a fourth embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0010] Hereinafter, each embodiment will be described with reference to the drawings. In the following description, the same reference numerals in the drawings denote similar components, and redundant description will be omitted.
[0011] First Embodiment 1 is a block diagram showing an example of an additional learning device according to the first embodiment. The additional learning device 1 includes a cluster data storage unit 10, a data extraction unit 20, a new learning data acquisition unit 30, an additional learning data storage unit 40, a pre-learning data storage unit 50, a pre-learning unit 60, a pre-learning model storage unit 70, and an additional learning unit 80.
[0012] Here, the cluster data storage unit 10 stores multiple existing learning data, with existing data as input data and defect classifications corresponding to the existing data as output data, and cluster data representing clusters to which each of the multiple existing learning data belongs. The output data may be, for example, a label indicating the presence or absence of a defect, or a label indicating the presence or absence and type of defect. The cluster data storage unit 10 may include an acquisition unit that acquires multiple existing learning data, a calculation unit that clusters the multiple existing learning data and calculates cluster data representing the cluster to which each of the multiple existing learning data belongs, and a storage unit that stores the multiple existing learning data and the cluster data. Alternatively, the acquisition unit and the calculation unit may be separate entities, and the cluster data storage unit 10 may include only the storage unit. The existing data may include, for example, management data collected during product manufacturing and quality control data such as inspection images acquired during product inspection, as appropriate. The cluster data is information about clusters generated when existing data is clustered. Specifically, for example, the cluster data may include information on the cluster to which each of the existing training data belongs, the center coordinates of each cluster in the feature space, the distance from the center of the cluster to which each of the existing training data belongs, etc. The cluster data out of the existing training data and the cluster data may be stored in a cluster data calculation device (not shown) or a server device connected to the cloud.
[0013] The data extraction unit 20 extracts data to be used for additional learning from the multiple existing learning data in the cluster data storage unit 10. Specifically, for example, the data extraction unit 20 extracts multiple first existing learning data (hereinafter referred to as first data) from the multiple existing learning data based on the cluster data in accordance with the size of each cluster. At this time, the data extraction unit 20 may randomly select and extract the multiple first data. Alternatively, the data extraction unit 20 may select and extract the multiple first data in accordance with the distance between each of the multiple existing learning data. Alternatively, the data extraction unit 20 may select and extract the multiple first data in accordance with the distribution of each of the multiple existing learning data. Alternatively, the data extraction unit 20 may select and extract the multiple first data in accordance with the label ratio of each of the existing learning data in a cluster. That is, the first existing learning data can be obtained by random extraction within a range based on the size of each cluster, extraction based on the distance between data, extraction based on the data distribution, extraction based on the label ratio of data in a cluster, or the like. Alternatively, the data extraction unit 20 may execute multiple types of algorithms to extract the first data.
[0014] The new training data acquisition unit 30 acquires a plurality of new training data using new data as input data and defect classifications corresponding to the new data as output data. Here, the new training data is training data that has arisen over time since the acquisition of the existing training data and has a distribution that does not exist in the existing training data. As described above, the new data can be appropriately used as quality control data, such as management data collected during the product manufacturing process and inspection images acquired during product inspection.
[0015] The additional training data storage unit 40 stores a plurality of additional training data based on a plurality of first data and a plurality of new training data. Here, the plurality of additional training data may include all of the plurality of first data extracted by the data extraction unit 20 and all of the plurality of new training data acquired by the new training data acquisition unit 30. Furthermore, the plurality of first existing training data included in the plurality of additional training data may be some of the first data among the extracted plurality of first data. Furthermore, the plurality of new training data included in the plurality of additional training data may be some of the new training data among the acquired plurality of new training data. Additionally, "based on" does not necessarily mean that all of the data is stored, but also means that some of the data is stored.
[0016] The pre-learning data storage unit 50 stores, as a plurality of pre-learning data, a plurality of second existing learning data (hereinafter referred to as second data) different from the plurality of first data, among the plurality of existing learning data.
[0017] The pre-learning unit 60 generates a pre-learning model by training the learning model based on multiple pre-learning data. In the pre-learning, it is not necessary to use only a single learning method for training the learning model, and multiple types of algorithms may be executed. In addition, the learning model may be called a classification model.
[0018] The pre-learning model storage unit 70 stores the pre-learning model generated by the pre-learning unit 60.
[0019] The additional learning unit 80 performs additional learning on the pre-learning model based on multiple pieces of additional learning data. In the additional learning, it is not necessary to use only a single learning method for learning the pre-learning model, and multiple types of algorithms may be executed.
[0020] Next, an example of the operation of the additional learning device configured as above will be described with reference to the flowchart of FIG. 2 and the graphs of FIGS.
[0021] In step S10, the acquisition unit in the cluster data storage unit 10 acquires a plurality of existing learning data using existing data as input data and defect classifications corresponding to the existing data as output data. Furthermore, the calculation unit in the cluster data storage unit 10 clusters the plurality of existing learning data and calculates cluster data representing clusters A, B, and C to which each of the plurality of existing learning data belongs, as shown in Fig. 3. Thereafter, the memory unit in the cluster data storage unit 10 stores the plurality of existing learning data and the cluster data.
[0022] In step S20, the data extraction unit 20 extracts multiple first data from multiple existing training data in accordance with the sizes of clusters A, B, and C based on the cluster data. The multiple first data are extracted from the multiple existing training data while maintaining the size ratio of each cluster A, B, and C after clustering. Since the extracted first data maintains the distribution of the original data, robust training can be performed on the existing training data even if the dataset becomes smaller. Furthermore, the data extraction unit 20 extracts multiple existing training data different from the multiple first data from the multiple existing training data as multiple second data. Note that the extraction of the second data may be performed in step S50, which will be described later.
[0023] In step S30, the new learning data acquisition unit 30 acquires a plurality of new learning data sets, with new data as input data and defect classifications according to the new data as output data. In step S40, a plurality of additional learning data sets based on the plurality of first data sets and the plurality of new learning data sets are stored.
[0024] In step S50, the pre-learning data storage unit 50 stores, as pre-learning data, a plurality of second data items that are different from the plurality of first data items among the plurality of existing learning data items. Note that the pre-learning data storage unit 50 is not limited to storing all of the plurality of second data items, and may store some of the plurality of second data items. In other words, the pre-learning data storage unit 50 stores pre-learning data based on the second data items other than the extracted first data items.
[0025] In step S60, the pre-learning unit 60 generates a pre-learning model by training the learning model based on a plurality of pieces of pre-learning data.
[0026] In step S70, the pre-training model storage unit 70 stores the generated pre-training model.
[0027] In step S80, the additional learning unit 80 performs additional learning on the pre-learning model based on a plurality of additional learning data.
[0028] 4 and 5 are graphs illustrating an example of the effect of additional learning. In FIG. 4, the vertical axis indicates the number of existing data judged as "OK" by the pre-trained model. The horizontal axis indicates the number of existing data (NG) corresponding to an NG label indicating the presence of a defect (number of incorrect answers) judged as "OK" by the pre-trained model. In FIG. 5, the vertical axis indicates the number of existing data judged as "NG" by the pre-trained model. The horizontal axis indicates the number of existing data (OK) judged as "NG" (number of incorrect answers) by the pre-trained model. Each piece of data in the graphs shown in FIGS. 4 and 5 is plotted based on a confusion matrix of the number of data points for judgment values when the threshold for determining the presence or absence of a defect is changed in increments of 0.001. This confusion matrix shows the number of data points in the class (TP: true positive) with the correct judgment value OK for training data labeled OK, the number of data points in the class (TN: true negative) with the correct judgment value NG for training data labeled NG, the number of data points in the class (FN: false negative) with the incorrect judgment value NG for training data labeled OK, and the number of data points in the class (FP: false positive) with the incorrect judgment value OK for training data labeled NG. Figure 4 shows the results based on the number of data points in the class (TP + FP) and the class (FP). Figure 5 shows the results based on the number of data points in the class (TN + FN) and the class (FN). In Figures 4 and 5, a portion of the classification results using the pre-training model generated in step S60 is enlarged and shown as L1, and a portion of the classification results using the pre-training model additionally trained in step S80 is enlarged and shown as L2. Furthermore, a portion of the classification results using the comparative example training model is enlarged and shown as L3. In the comparative example, existing training data is clustered, at least one piece of data is extracted from each cluster to extract sub-data, the sub-data are trained in order, the sub-data with the highest accuracy is selected from among them, and a training model trained with the last selected sub-data is used. Note that although the sub-data in the comparative example is extracted from each cluster, unlike this embodiment, it is not extracted according to the size of the cluster.
[0029] 4 and 5, if the number of data points in a class has all correct judgment values, a straight line rising vertically from the origin 0 is drawn, but in reality, the number of data points in a class with incorrect judgment values is included, so a curve that rises to the right from the middle of the straight line extending from the origin 0 appears. The higher this curve is located in the upper left of the graph, the more accurate the learning model is.
[0030] 4 and 5, the classification result L1 of the pre-training model generated in this embodiment and the classification result L2 of the pre-training model additionally trained in this embodiment show approximately the same curve. In contrast, the classification result L3 of the comparative example shows a curve with fewer correct answers that is lower than the classification results L1 and L2 of this embodiment. In other words, the evaluation of existing data shows that the classification accuracy before and after the additional training in this embodiment is approximately the same, while the classification accuracy of the comparative example is slightly lower.
[0031] FIG. 6 is a graph illustrating another example of the effect of additional learning. In FIG. 6, the vertical axis indicates the number of new data (all OK) on a logarithmic scale. The horizontal axis indicates the confidence level (confidence level of correct answer) for a judgment (classification) of OK. The graph in FIG. 6(a) shows the confidence level based on the pre-training model generated in step S60 described above. The graph in FIG. 6(b) shows the confidence level based on the pre-training model additionally trained in step S80 described above. The graph in FIG. 6(c) shows the confidence level based on the learning model of the comparative example described above. In FIG. 6, if all the confidence levels were correct, a straight line would be drawn rising vertically from a confidence level of "1." However, since the confidence levels actually include confidence levels less than 1, the distribution has a wider base from a peak of confidence level "1" toward confidence level "0." In FIG. 6, the more the distribution of confidence levels is shifted to the right, the more accurate the learning model is.
[0032] The distributions of the confidence levels shown in Figures 6(a) and 6(c) are almost the same. In contrast, the distribution of the confidence levels shown in Figure 6(b) is shifted to the right compared to the other distributions. That is, in the evaluation of new data, the classification accuracy after additional learning in this embodiment is high, while the classification accuracy before additional learning in this embodiment and in the comparative example is slightly lower.
[0033] As described above, according to the first embodiment, the cluster data storage unit 10 stores a plurality of existing learning data, each of which has existing data as input data and defect classifications corresponding to the existing data as output data, and cluster data representing clusters to which each of the plurality of existing learning data belongs. The data extraction unit 20 extracts a plurality of first data (first existing learning data) from the plurality of existing learning data according to the size of each cluster based on the cluster data. The new learning data acquisition unit 30 acquires a plurality of new learning data, each of which has new data as input data and defect classifications corresponding to the new data as output data. The additional learning data storage unit 40 stores a plurality of additional learning data based on the plurality of first data and the plurality of new learning data.
[0034] In this way, by creating additional training data including multiple existing training data according to the size of each cluster and multiple new training data, it is possible to improve the classification accuracy of new data while maintaining the classification accuracy of the existing data.Additionally, by adding new defects during additional training while maintaining the classification accuracy of the learning model for the existing data, it is possible to improve the classification accuracy of the learning model for newly generated new data.
[0035] Furthermore, according to the first embodiment, the pre-training data storage unit 50 stores, as pre-training data, a plurality of second data (second existing training data) different from the plurality of first data among a plurality of existing training data. The pre-training unit 60 generates a pre-training model by training the training model based on the plurality of pre-training data. The additional training unit 80 additionally trains the pre-training model based on the plurality of additional training data. Therefore, by additionally training the pre-training model trained with the second data remaining after the extraction of the first data using the first data and new training data, the classification accuracy of new data can be improved without degrading the classification accuracy of existing data.
[0036] Furthermore, for example, compared to the comparative example described above, the training cost can be reduced. Supplementally, the comparative example described above samples the training data to create multiple sub-training data sets, and selects a model that meets the conditions from among models trained using each sub-training data set and their evaluation results. Although the method of the comparative example reduces the size of the sub-training data sets for additional training, it increases the number of times training is performed using the sub-data sets, requiring multiple additional training sessions, and the cost of additional training is high.
[0037] In contrast to this, according to the first embodiment, after clustering, the size ratio of each cluster is maintained and the first data is extracted, and high classification accuracy can be achieved with one additional learning.
[0038] As another comparative example, consider a case in which training data is clustered to extract data while preserving the data trends before extraction, and additional training data is extracted at a rate equal to the size of the clusters after clustering. In this other comparative example, new data is added to existing data before clustering, so there is a possibility that the features of the new data contained in the extracted additional training data will not be preserved. For this reason, in this other comparative example, it is estimated that the training model after additional training cannot be expected to improve the classification accuracy for new data.
[0039] In contrast, according to the first embodiment, when new training data is incorporated into additional training data, it is added to existing training data according to the size of each cluster, so that it is possible to maintain the classification accuracy of the existing data while preserving the features of the new data. In other words, according to the first embodiment, when new data is generated, the existing training data is clustered, and additional training data is created based on the first data that maintains the distribution information of the existing training data and the newly acquired new training data, so that it is possible to preserve the features of the new data.
[0040] <Modification of the first embodiment> Next, a modified example of the first embodiment will be described. This modified example can be similarly applied to the following embodiments.
[0041] In the first embodiment, the operation of the data extracting unit 20 to extract multiple first data items in step S20 is not specified in detail. However, it may be specified as follows. For example, the data extracting unit 20 may randomly select and extract multiple first existing learning data items. Alternatively, the data extracting unit 20 may select and extract multiple first existing learning data items according to the distance between each of the multiple existing learning data items. Alternatively, the data extracting unit 20 may select and extract multiple first existing learning data items according to the distribution of each of the multiple existing learning data items. Alternatively, the data extracting unit 20 may select and extract multiple first existing learning data items according to the label ratio of each of the existing learning data items in a cluster. Even with such a modification, the same effects as those of the first embodiment can be obtained.
[0042] Second Embodiment Next, an additional learning device according to a second embodiment will be described. The second embodiment is a modification of the first embodiment, and is configured to increase the accuracy of the labels of the first data.
[0043] 7 is a block diagram showing an example of an additional learning device according to the second embodiment, and components similar to those described above are given the same reference numerals and detailed descriptions thereof will be omitted. Here, differences will be mainly described. Duplicate descriptions will also be omitted for each of the following embodiments.
[0044] 7, the additional learning device 1 further includes a labeling unit 90 between the data extraction unit 20 and the additional learning data storage unit 40, as compared to the configuration shown in FIG.
[0045] The labeling unit 90 labels the plurality of first data extracted by the data extracting unit 20 with labels of higher accuracy.
[0046] Accordingly, the additional learning data storage unit 40 stores a plurality of additional learning data based on the plurality of labeled first data and the plurality of new learning data.
[0047] The other configurations are the same as those in the first embodiment.
[0048] Next, the operation of the additional learning device configured as above will be described with reference to the flowchart of FIG.
[0049] Now, steps S10 to S20 are executed in the same manner as described above, and a plurality of first data and a plurality of second data are extracted from a plurality of existing training data.
[0050] After step S20, in step S22, the labeling unit 90 labels the extracted first data with labels of higher accuracy.
[0051] After step S22, step S30 is executed in the same manner as described above, and a plurality of new learning data are obtained.
[0052] After step S30, in step S40, the additional training data storage unit 40 stores a plurality of additional training data based on the plurality of labeled first data and the plurality of new training data.
[0053] Thereafter, steps S50 to S80 are executed in the same manner as described above.
[0054] As described above, according to the second embodiment, the labeling unit 90 labels the extracted multiple first data with labels of higher accuracy. The additional training data storage unit 40 stores multiple additional training data based on the labeled multiple first data and multiple new training data. Therefore, in addition to the effects of the first embodiment, the configuration of performing higher-accuracy labeling on the first data before adding it to the additional training data can be expected to create a learning model that is more robust to existing data.
[0055] <Modification of the second embodiment> Next, a modified example of the second embodiment will be described. This modified example can be similarly applied to the following embodiments.
[0056] In the second embodiment, the labeling unit 90 labels multiple first data with labels of higher accuracy, but this is not limiting. For example, a further labeling unit may label multiple new training data with labels of higher accuracy. In this case, by applying higher accuracy labeling to new training data before adding it to the additional training data, it is expected that a learning model that is more robust to new data can be created.
[0057] <Third embodiment> Next, an additional learning device according to a third embodiment will be described.
[0058] The third embodiment is a modification of the first embodiment, and has a configuration in which the size of new training data is reduced.
[0059] 9 is a block diagram showing an example of an additional learning device according to the third embodiment. Compared to the configuration shown in FIG. 1, this additional learning device 1 further includes a new learning data cluster calculation unit 100 and a new learning data extraction unit 110 between the new learning data acquisition unit 30 and the additional learning data storage unit 40.
[0060] Here, the new learning data cluster calculation unit 100 clusters the multiple pieces of new learning data acquired by the new learning data acquisition unit 30, and calculates cluster data indicating the cluster to which each piece of new learning data belongs. The new learning data cluster calculation unit 100 is an example of a cluster calculation unit.
[0061] The new training data extraction unit 110 extracts a plurality of new training data for additional training from the plurality of new training data based on the cluster data while preserving the feature quantities of the plurality of new training data.
[0062] Accordingly, the additional learning data storage unit 40 uses the extracted multiple pieces of new data for additional learning as multiple pieces of new learning data, and stores the multiple pieces of additional learning data.
[0063] The other configurations are the same as those in the first embodiment.
[0064] Next, the operation of the additional learning device configured as above will be described with reference to the flowchart of FIG.
[0065] Now, steps S10 to S30 are executed in the same manner as described above, and a plurality of new learning data are acquired.
[0066] In step S32, the new training data cluster calculation unit 100 clusters the plurality of new training data acquired in step S30, and calculates cluster data indicating the cluster to which each of the plurality of new training data belongs.
[0067] After step S32, in step S34, the new training data extraction unit 110 extracts multiple pieces of new training data for additional training (new training data) from the multiple pieces of new training data based on the cluster data while retaining the feature quantities of the multiple pieces of new training data.
[0068] After step S34, in step S40, the additional learning data storage unit 40 uses the multiple new learning data for additional learning extracted in step S34 as multiple new learning data, and stores the multiple additional learning data. That is, the additional learning data storage unit 40 stores multiple additional learning data based on the multiple first data and the multiple new learning data (new data for additional learning).
[0069] Thereafter, steps S50 to S80 are executed in the same manner as described above.
[0070] As described above, according to the third embodiment, the new training data cluster calculation unit 100 clusters multiple new training data and calculates cluster data representing the cluster to which each of the multiple new training data belongs. The new training data extraction unit 110 extracts multiple new training data for additional training from the multiple new training data based on the cluster data while preserving the feature quantities of the multiple new training data. The additional training data storage unit 40 uses the multiple new training data for additional training as multiple new training data and stores the multiple additional training data. Therefore, in addition to the effects of the first embodiment, labor savings in additional training can be expected by reducing the size of the dataset by extracting new training data before adding it.
[0071] <Modification of the third embodiment> Next, a modified example of the third embodiment will be described. In the third embodiment, compared to the configuration shown in FIG. 1, a new training data cluster calculation unit 100 and a new training data extraction unit 110 are further provided, but this is not limited to this. That is, compared to the configuration shown in FIG. 7, this modified example may further include a new training data cluster calculation unit 100 and a new training data extraction unit 110. In this case, the effects of the second embodiment can be obtained in addition to the effects of the third embodiment. Similarly, the modified example of the third embodiment may be applied to the modified example of the second embodiment.
[0072] <Fourth embodiment> 11 is a block diagram illustrating the hardware configuration of an additional learning device according to the fourth embodiment. The fourth embodiment is a specific example of the first to third embodiments, in which the additional learning device 1 is realized by a computer.
[0073] The additional learning device 1 includes, as hardware components, a CPU (Central Processing Unit) 2, a RAM (Random Access Memory) 3, a program memory 4, an auxiliary storage device 5, and an input / output interface 6. The CPU 2 communicates with the RAM 3, the program memory 4, the auxiliary storage device 5, and the input / output interface 6 via a bus. In other words, the additional learning device 1 of this embodiment is realized by a computer with such a hardware configuration.
[0074] The CPU 2 is an example of a general-purpose processor. The RAM 3 is used by the CPU 2 as a working memory. The RAM 3 includes a volatile memory such as a Synchronous Dynamic Random Access Memory (SDRAM). The program memory 4 stores a program for implementing each unit according to each embodiment. This program may be, for example, a program for causing a computer to implement the functions of each unit shown in the first to third embodiments. The program memory 4 may be, for example, a read-only memory (ROM), a part of the auxiliary storage device 5, or a combination thereof. The auxiliary storage device 5 stores data non-temporarily. The auxiliary storage device 5 includes a non-volatile memory such as a hard disk drive (HDD) or a solid state drive (SSD).
[0075] The input / output interface 6 is an interface for connecting to other devices, and is used to connect to, for example, a keyboard, a mouse, and a display.
[0076] The program stored in the program memory 4 includes computer-executable instructions. When executed by a CPU 2, which is a processing circuit, the program (computer-executable instructions) causes the CPU 2 to perform a predetermined process. For example, when executed by the CPU 2, the program causes the CPU 2 to perform a series of processes described with respect to each unit in FIG. 1, FIG. 7, or FIG. 9. For example, when executed by the CPU 2, the computer-executable instructions included in the program cause the CPU 2 to perform an additional learning method. The additional learning method may include steps corresponding to the functions of each unit described above. The additional learning method may also include the steps shown in FIG. 2, FIG. 8, or FIG. 10, as appropriate.
[0077] The program may be provided to the additional learning device 1, which is a computer, in a state where it is stored in a computer-readable storage medium. In this case, for example, the additional learning device 1 further includes a drive (not shown) that reads data from the storage medium and acquires the program from the storage medium. As the storage medium, for example, a magnetic disk, an optical disk (CD-ROM, CD-R, DVD-ROM, DVD-R, etc.), a magneto-optical disk (MO, etc.), a semiconductor memory, etc. can be used as appropriate. The storage medium may also be called a non-transitory computer-readable storage medium. Alternatively, the program may be stored in a server on a communication network, and the additional learning device 1 may download the program from the server using the input / output interface 6.
[0078] The processing circuit that executes the program is not limited to a general-purpose hardware processor such as CPU 2, but may also be a dedicated hardware processor such as an ASIC (Application Specific Integrated Circuit). The term processing circuit (processing unit) includes at least one general-purpose hardware processor, at least one dedicated hardware processor, or a combination of at least one general-purpose hardware processor and at least one dedicated hardware processor. In the example shown in Figure 11, CPU 2, RAM 3, and program memory 4 correspond to the processing circuit.
[0079] According to at least one of the embodiments described above, it is possible to improve the classification accuracy of new data while maintaining the classification accuracy of existing data.
[0080] Although several embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These embodiments can be embodied in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope of the invention and its equivalents as defined in the claims, as well as in the scope and spirit of the invention. [Explanation of symbols]
[0081] 1...additional learning device, 2...CPU, 3...RAM, 4...program memory, 5...auxiliary storage device, 6...input / output interface, 10...cluster data storage unit, 20...data extraction unit, 30...new learning data acquisition unit, 40...additional learning data storage unit, 50...pre-learning data storage unit, 60...pre-learning unit, 70...pre-learning model storage unit, 80...additional learning unit, 90...labeling unit, 100...new learning data cluster calculation unit, 110...new learning data extraction unit.
Claims
1. a cluster data storage unit that stores a plurality of existing learning data, the existing data being input data and the defect classification corresponding to the existing data being output data, and cluster data representing a cluster to which each of the plurality of existing learning data belongs; a data extraction unit that extracts a plurality of first existing learning data from the plurality of existing learning data in accordance with the size of each cluster based on the cluster data; a new learning data acquisition unit that acquires a plurality of new learning data sets using new data as input data and outputting defect classifications corresponding to the new data; an additional learning data storage unit that stores a plurality of additional learning data based on the plurality of first existing learning data and the plurality of new learning data; Additional learning device with.
2. a pre-learning data storage unit configured to store, as pre-learning data, a plurality of second existing learning data different from the plurality of first existing learning data among the plurality of existing learning data; a pre-learning unit that generates a pre-learned model by training a learning model based on the plurality of pre-learning data; an additional learning unit that performs additional learning on the pre-learning model based on the plurality of additional learning data; The additional learning device according to claim 1 , further comprising:
3. a labeling unit that labels the plurality of first existing learning data with labels of higher accuracy; Furthermore, the additional learning data storage unit stores the plurality of additional learning data based on the plurality of labeled first existing learning data and the plurality of new learning data; The additional learning device according to claim 1 .
4. a cluster calculation unit that clusters the acquired plurality of new learning data and calculates cluster data representing a cluster to which each of the plurality of new learning data belongs; a new training data extraction unit that extracts a plurality of new training data for additional training from the plurality of new training data while retaining feature quantities of the plurality of new training data based on the cluster data; Furthermore, the additional learning data storage unit uses the extracted plurality of new data for additional learning as the plurality of new learning data, and stores the plurality of additional learning data. The additional learning device according to claim 1 .
5. The additional learning device according to claim 1 , wherein the data extraction unit randomly selects and extracts the plurality of first existing learning data.
6. The additional learning device according to claim 1 , wherein the data extraction unit selects and extracts the first plurality of existing learning data according to distances between the plurality of existing learning data.
7. The additional learning device according to claim 1 , wherein the data extraction unit selects and extracts the plurality of first existing learning data in accordance with a distribution of each of the plurality of existing learning data.
8. The additional learning device according to claim 1 , wherein the data extraction unit selects and extracts the plurality of first existing learning data according to a label ratio of each of the existing learning data in the cluster.
9. An additional learning method executed by an additional learning device, comprising: storing a plurality of existing learning data in which existing data is used as input data and defect classifications according to the existing data are used as output data, and cluster data representing clusters to which each of the plurality of existing learning data belongs; extracting a plurality of first existing learning data from the plurality of existing learning data in accordance with the size of each cluster based on the cluster data; Obtaining a plurality of new learning data sets using new data as input data and defect classifications corresponding to the new data as output data; storing a plurality of pieces of additional learning data based on the plurality of first existing learning data and the plurality of new learning data; Additional learning methods with.
10. Computer, a means for storing a plurality of existing learning data, the existing data being input data and the defect classification corresponding to the existing data being output data, and cluster data representing a cluster to which each of the plurality of existing learning data belongs; a means for extracting a plurality of first existing learning data from the plurality of existing learning data in accordance with the size of each cluster based on the cluster data; a means for acquiring a plurality of new learning data sets, the new data sets being input data and the defect classifications corresponding to the new data sets being output data; a means for storing a plurality of additional learning data based on the plurality of first existing learning data and the plurality of new learning data; A program to function as a
Citation Information
Patent Citations
Machine learning device
JP2017224184A
Image determination device, image determination method, and image determination program
JP2020107102A
Defect detection classification system and defect determination training system
JP2021139769A
System and method for efficiently managing large datasets for training an ai model
US20210224683A1