WO2022195762A1 - 学習装置、学習方法、及び、記録媒体 - Google Patents
学習装置、学習方法、及び、記録媒体 Download PDFInfo
- Publication number
- WO2022195762A1 WO2022195762A1 PCT/JP2021/010827 JP2021010827W WO2022195762A1 WO 2022195762 A1 WO2022195762 A1 WO 2022195762A1 JP 2021010827 W JP2021010827 W JP 2021010827W WO 2022195762 A1 WO2022195762 A1 WO 2022195762A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- inference
- loss
- correct answer
- model
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 17
- 238000004364 calculation method Methods 0.000 claims abstract description 35
- 230000000295 complement effect Effects 0.000 claims description 42
- 238000013434 data augmentation Methods 0.000 claims description 24
- 238000010801 machine learning Methods 0.000 description 11
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000015654 memory Effects 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 241000124008 Mammalia Species 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 241000499489 Castor canadensis Species 0.000 description 1
- 241000283153 Cetacea Species 0.000 description 1
- 241001481833 Coryphaena hippurus Species 0.000 description 1
- 241001233242 Lontra Species 0.000 description 1
- 235000011779 Menyanthes trifoliata Nutrition 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Definitions
- This disclosure relates to a learning method for a machine learning model.
- recognition technology based on machine learning has shown extremely high performance, mainly in the field of image recognition.
- the high accuracy of such recognition technology based on machine learning is supported by a large amount of data with correct answers. That is, high accuracy is achieved by preparing a large amount of data with correct answers and performing learning.
- Patent Literature 1 discloses a method of generating artificial training data from normal training data to increase the amount of training data.
- Patent Literature 2 discloses a method of performing semi-supervised learning using supervised data and unsupervised data.
- One purpose of this disclosure is to reduce data collection costs and generate highly accurate machine learning models.
- a learning device includes: a first inference means for performing a first data augmentation on data with correct answers and performing a first inference from the obtained data; a first loss calculation means for calculating a first loss from the result of the first inference and the correct answer given to the data with correct answer; a second inference means for performing a second data augmentation on data without correct answers and performing a second inference from the obtained data; a third inference means for performing a third data extension on the non-correct answer data and performing a third inference from the obtained data; pseudo-complementary label generation means for generating a pseudo-complementary label from the result of the third inference; a second loss calculation means for calculating a second loss based on the result of the second inference and the pseudo complementary label; updating means for updating parameters of the first reasoning means, the second reasoning means and the third reasoning means based on the first loss and the second loss.
- a learning method comprises: Performing a first data augmentation on the data with the correct answer, performing a first inference from the obtained data using a first model, Calculate a first loss from the result of the first inference and the correct answer given to the data with correct answer; Perform a second data augmentation on the data without correct answer, perform a second inference from the obtained data using a second model, Performing a third data augmentation on the data without correct answer, performing a third inference from the obtained data using a third model, generating a pseudo-complementary label from the result of the third inference; calculating a second loss based on the result of the second inference and the pseudo-complementary label; Parameters of the first model, the second model and the third model are updated based on the first loss and the second loss.
- the recording medium comprises Performing a first data augmentation on the data with the correct answer, performing a first inference from the obtained data using a first model, Calculate a first loss from the result of the first inference and the correct answer given to the data with correct answer; Perform a second data augmentation on the data without correct answer, perform a second inference from the obtained data using a second model, Performing a third data augmentation on the data without correct answer, performing a third inference from the obtained data using a third model, generating a pseudo-complementary label from the result of the third inference; calculating a second loss based on the result of the second inference and the pseudo-complementary label;
- a program is recorded which causes a computer to execute a process of updating parameters of the first model, the second model and the third model based on the first loss and the second loss.
- FIG. 2 is a block diagram showing the hardware configuration of the learning device of the first embodiment;
- FIG. 2 is a block diagram showing the functional configuration of the learning device of the first embodiment;
- FIG. 4 is a flowchart of learning processing by the learning device of the first embodiment;
- An example dataset for a multi-class classification problem is shown.
- 1 shows the configuration of an inference device according to a first embodiment;
- FIG. 11 is a block diagram showing the functional configuration of a learning device according to a second embodiment;
- FIG. 9 is a flowchart of learning processing by the learning device of the second embodiment;
- FIG. 1 is a block diagram showing the hardware configuration of the learning device 100 of the first embodiment.
- the learning device 100 includes an interface (I/F) 11 , a processor 12 , a memory 13 , a recording medium 14 and a database (DB) 15 .
- the interface 11 performs data input/output with an external device. Specifically, data with correct answers and data without correct answers used for learning are input through the interface 11 .
- the processor 12 is a computer such as a CPU (Central Processing Unit), and controls the entire study device 100 by executing a program prepared in advance.
- the processor 12 may be a GPU (Graphics Processing Unit) or an FPGA (Field-Programmable Gate Array).
- the processor 12 executes learning processing, which will be described later.
- the memory 13 is composed of ROM (Read Only Memory), RAM (Random Access Memory), and the like. Memory 13 is also used as a working memory during execution of various processes by processor 12 .
- the recording medium 14 is a non-volatile, non-temporary recording medium such as a disk-shaped recording medium or semiconductor memory, and is configured to be detachable from the learning device 100 .
- the recording medium 14 records various programs executed by the processor 12 .
- DB15 memorize
- FIG. 2 is a block diagram showing the functional configuration of the learning device 100 of the first embodiment.
- the learning device 100 includes data extension units 21a to 21c, inference units 22a to 22c, a loss calculation unit with correct answer 23, a complementary label loss calculation unit without correct answer 24, a pseudo complementary label generation unit 25, and a gradient calculation unit 26. , an updating unit 27, and parameter holding units 28a and 28b.
- Data with correct answers include input data and correct labels corresponding to the input data.
- the input data is an image used for learning
- the correct label is information indicating the class of the object included in the image.
- the input data is input to the data expansion unit 21a, and the correct label is input to the loss calculation unit with correct answers 23.
- the data extension unit 21a performs random conversion on the input data, and outputs the converted input data to the inference unit 22a.
- the inference unit 22a makes inferences on input data using a machine learning model. For example, when learning an image recognition model, the inference unit 22 a infers the class of the target object included in the input data and outputs it to the correct answer loss calculation unit 23 .
- the loss calculation unit with correct answer 23 calculates the loss with correct answer from the inference result input from the inference unit 22a and the correct label included in the data with correct answer. Note that the loss calculation unit with correct answer 23 can use a general loss function for multilevel classification, such as cross-entropy loss.
- the loss with correct answer calculator 23 outputs the calculated loss with correct answer to the gradient calculator 26 .
- Data without correct answer is data that includes only input data and does not include correct labels.
- Data collected in an environment in which the machine learning model is actually operated can be used as the non-correct answer data.
- images captured by a camera installed in the environment to be monitored can be used as non-correct answer data.
- the non-correct answer data is input to the data extension units 21b and 21c.
- the data expansion unit 21b performs random conversion on the input non-correct answer data, and outputs the converted data to the inference unit 22b.
- the data expansion unit 21c performs random conversion on the input non-correct answer data, and outputs the converted data to the inference unit 22c.
- the three data extension units 21a to 21c, including the data extension unit 21a independently perform random transformations on the input data, but the types of transformations may be the same or different.
- the conversion by the data extension unit 21b is stronger than the conversion by the data extension units 21a and 21c.
- a strong conversion is a conversion that greatly changes the input data. For example, when the input data is an image, it is a conversion that greatly changes the content of the image.
- the inference unit 22b uses a machine learning model to infer the input data converted by the data extension unit 21b, and outputs the inference result to the non-correct complementary label loss calculation unit 24.
- the inference unit 22 c also uses a machine learning model to infer the input data converted by the data extension unit 21 c and outputs the inference result to the pseudo complementary label generation unit 25 .
- the pseudo-complementary label generation unit 25 generates a pseudo-complementary label based on the inference result of the inference unit 22c.
- a “complementary label” is a label given to input data and indicates that the input data does not belong to a specific class (category). For example, a complementary label c indicates that the input data does not belong to class c.
- a "pseudo complementary label” is a complementary label generated from an inference result of a model during learning or after learning.
- the inference units 22a to 22c classify into multiple classes (hereinafter referred to as N classes) using an image recognition model.
- the inference units 22a to 22c output probabilities that the input data (image) corresponds to each of N classes. That is, the inference units 22a to 22c output N probability values as inference results.
- the pseudo-complementary label generation unit 25 sets the class having the maximum probability value among the N probability values output by the inference unit 22c (hereinafter also referred to as “maximum class”) as class c. Then, the pseudo-complementary label generation unit 25 determines, as a pseudo-complementary label, a class c' randomly selected from classes other than the maximum class c among the N classes.
- the inference unit 22c performs 10-class classification.
- the correct pseudo-complementary label is assigned to the data correctly inferred by the inference unit 22c with a probability of 100%.
- a correct pseudo-complementary label is given to the data that the inference unit 22c makes an erroneous inference with a probability of 88.9%.
- the accuracy of the pseudo-complementary label is 92.2%. Therefore, by using pseudo-complementary labels, highly accurate pseudo-labels can be assigned to non-correct data.
- the pseudo complementary label generating unit 25 outputs the generated pseudo complementary label to the non-correct complementary label loss calculating unit 24 .
- the no-correct complementary label loss calculation unit 24 uses the pseudo-complementary labels given to the no-correct data and the inference result input from the inference unit 22b to calculate the complementary label loss.
- the complementary label loss for example, a forward correction loss, a downwardly bounded backward correction loss, or the like can be used.
- the no-correct complementary label loss calculator 24 outputs the calculated complementary label loss to the gradient calculator 26 .
- the gradient calculation unit 26 calculates gradients of the input loss with correct answer and complementary label loss, and outputs them to the updating unit 27 .
- the gradient calculation unit 26 calculates the gradient of the sum of the correct answer loss and the complementary label loss or the weighted sum, and outputs it to the updating unit 27 .
- the update unit 27 uses the input gradient to update the parameters of the inference units 22a and 22b (hereinafter referred to as "parameter P1") and outputs them to the parameter holding unit 28a.
- the parameter holding unit 28a sets updated parameters P1 for the inference units 22a and 22b.
- the same parameter P1 is set for the inference unit 22a that makes inferences about data with correct answers and the inference unit 22b that makes inferences about data without correct answers.
- the update unit 27 also uses the input gradient to update the parameter of the inference unit 22c (hereinafter referred to as "parameter P2") and outputs it to the parameter holding unit 28b.
- the parameter holding unit 28a sets the updated parameter P2 in the inference unit 22c.
- the parameter P2 held by the parameter holding unit 28b may be the same as the parameter P1 held by the parameter holding unit 28a, and the exponential moving average may be taken as
- the data extension unit 21a and the inference unit 22a are an example of the first inference means
- the correct loss calculation unit 23 is an example of the first loss calculation means
- the data extension unit 21b and the inference unit 22b are examples of second inference means
- the data extension unit 21c and inference unit 22c are examples of third inference means.
- the pseudo complementary label generator 25 is an example of a pseudo complementary label generator
- the no-correct complementary label loss calculator 24 is an example of a second loss calculator.
- the gradient calculator 26, updater 27, and parameter holders 28a and 28b are examples of update means.
- FIG. 3 is a flowchart of learning processing by the learning device 100 of the first embodiment. This processing is realized by executing a program prepared in advance by the processor 12 shown in FIG. 1 and operating as each element shown in FIG. Note that this process is repeatedly executed each time data with correct answers and data without correct answers are input.
- the input data included in the data with correct answer is input to the data expansion unit 21a, and the correct label included in the data with correct answer is input to the loss calculation unit 23 with correct answer.
- non-correct answer data is input to the data expansion units 21b and 21c.
- the data extension unit 21a converts the input data of the data with correct answer and outputs it to the inference unit 22a (step S11).
- the inference unit 22a makes an inference from the converted input data, and outputs the inference result to the correct answer loss calculation unit 23 (step S12).
- the loss calculation unit with correct answer 23 calculates a loss from the inference result and the correct answer label, and outputs it to the gradient calculation unit 26 (step S13).
- the data expansion unit 21c converts the non-correct answer data and outputs it to the inference unit 22c (step S14).
- the inference unit 22c infers from the converted input data, and outputs the inference result to the pseudo-complementary label generation unit 25 (step S15).
- the pseudo complementary label generation unit 25 generates a pseudo complementary label from the inference result, and outputs it to the no-correct complementary label loss calculation unit 24 (step S16).
- the data expansion unit 21b converts the non-correct answer data and outputs it to the inference unit 22b (step S17).
- the inference unit 22b performs inference from the converted input data, and outputs the inference result to the non-correct complementary label loss calculation unit 24 (step S18).
- the non-correct complementary label loss calculation unit 24 calculates a complementary label loss from the inference result input from the inference unit 22b and the pseudo complementary label input from the pseudo complementary label generation unit 25, and outputs the result to the gradient calculation unit 26. (Step S19).
- the gradient calculation unit 26 calculates gradients of the input loss with correct answer and complementary label loss, and outputs them to the updating unit 27 (step S20).
- the update unit 27 updates the parameter P1 of the inference units 22a and 22b based on the input gradient and outputs it to the parameter storage unit 28a, and updates the parameter P2 of the inference unit 22c and outputs it to the parameter storage unit 28b. (step S21).
- the parameter holding unit 28a sets the parameter P1 to the inference units 22a and 22b
- the parameter holding unit 28b sets the parameter P2 to the inference unit 22c (step S22).
- the parameters of the inference units 22a to 22c are updated.
- the non-correct answer data is prepared separately from the correct answer data, but the input data of the correct answer data may be used as the non-correct answer data. This makes it possible to easily increase the amount of non-correct answer data.
- data with weak answers may be used as data with correct answers. That is, data with correct answer is a concept including weak correct answer data.
- a normal "correct answer” correctly specifies a single correct answer class to which the data belongs, whereas a "weak correct answer” is a correct answer containing ambiguity, noise, and the like.
- the aforementioned "complementary label” can be regarded as an example of a weak correct answer. That is, the complementary label c indicates that the data is not of the class c, and when the number of classes is three or more, the complementary label always includes ambiguity and can be considered as a weak correct answer.
- an expert data set can be used as another example of a weak correct answer.
- An "expert data set” is a training data set that can be used when learning a multi-class classification model, and is composed of a plurality of partial data sets. Specifically, the expert data set is configured to meet the following conditions.
- Each of the plurality of partial data sets is assigned at least a portion of all categories to be recognized as a scope of responsibility.
- All categories to be recognized are assigned to one of a plurality of partial data sets.
- Each data contained in a partial dataset shall have either one of the categories belonging to the scope of responsibility assigned to the partial dataset, or the category to be recognized does not belong to the scope of responsibility of the partial dataset. A correct label indicating is given.
- FIG. 4 shows an example of a normal dataset and an expert dataset for a multiclass classification problem.
- FIG. 4(A) shows a normal data set used for learning.
- an object recognition model that performs multi-class classification of 100 classes based on image data is learned.
- As a normal training data set one of 100 classes, ie, 100 categories, is assigned as a correct label to each prepared image data.
- FIG. 4(B) shows an example of an expert data set. It should be noted that multi-class classification of a total of 100 classes is also performed with this expert data set as in the example of FIG. 4(A).
- For the expert dataset prepare multiple partial datasets. In the example of FIG. 4B, a plurality of partial data sets such as "aquatic mammal” and “human” are prepared. A responsibility range is set for each partial data set. In the “Aquatic Mammals” subdataset, five aquatic mammals, "Beaver”, “Dolphin”, “Otter”, “Seal” and “Whale” are assigned as areas of responsibility.
- the scope of responsibility is determined so that all classes (categories) to be recognized are assigned to one of the plurality of partial data sets. That is, 100 classes are assigned to multiple partial data sets so that there is no class that is not assigned to any partial data set. In other words, the scope of responsibility is determined so that all recognition targets of 100 classes are covered by a plurality of partial data sets.
- the expert data set enables learning of multi-class classification of 100 classes in the same way as the normal data set shown in FIG. 4(A). Such an expert data set can also be used as data with correct answers in the above embodiments.
- FIG. 5 shows the configuration of the inference device of the first embodiment.
- the inference device 200 includes an inference unit 201 .
- the inference unit 201 uses the machine learning model learned by the learning process described above. That is, the inference unit 201 is set with the parameter P1 obtained by the above learning process.
- input data to be inferred is input to the inference unit 201 .
- This input data is data such as a photographed image acquired in an environment in which the inference apparatus 200 is actually operated, and is data to be subjected to actual image recognition or the like.
- the inference unit 201 infers from input data and outputs an inference result. For example, in the case of image recognition that performs multi-class classification, the inference unit 201 outputs the probability value of each class as an inference result based on the input image.
- FIG. 6 is a block diagram showing the functional configuration of the learning device of the second embodiment.
- the learning device 70 includes a first inference means 71, a first loss calculation means 72, a second inference means 73, a third inference means 74, a pseudo complementary label generation means 75, and a second loss A calculating means 76 and an updating means 77 are provided.
- FIG. 7 is a flowchart of learning processing by the learning device 70 of the second embodiment.
- the first inference means 71 performs the first data extension on the data with correct answers, and performs the first inference from the obtained data (step S41).
- the first loss calculation means 72 calculates the first loss from the result of the first inference and the correct answers given to the data with correct answers (step S42).
- the second inference means 73 performs a second data extension on the non-correct answer data, and performs a second inference from the obtained data (step S43).
- the third inference means 74 performs a third data extension on the non-correct answer data, and performs a third inference from the obtained data (step S44).
- the pseudo-complementary label generating means 75 generates a pseudo-complementary label from the result of the third inference (step S45).
- the second loss calculator 76 calculates a second loss based on the result of the second inference and the pseudo complementary label (step S46).
- the update means 77 updates the parameters of the first inference means, the second inference means and the third inference means based on the first loss and the second loss (step S47).
- the learning device of the second embodiment it is possible to generate a highly accurate machine learning model using data without correct answers.
- (Appendix 1) a first inference means for performing a first data augmentation on data with correct answers and performing a first inference from the obtained data; a first loss calculation means for calculating a first loss from the result of the first inference and the correct answer given to the data with correct answer; a second inference means for performing a second data augmentation on data without correct answers and performing a second inference from the obtained data; a third inference means for performing a third data extension on the non-correct answer data and performing a third inference from the obtained data; pseudo-complementary label generation means for generating a pseudo-complementary label from the result of the third inference; a second loss calculation means for calculating a second loss based on the result of the second inference and the pseudo complementary label; updating means for updating parameters of the first reasoning means, the second reasoning means and the third reasoning means based on the first loss and the second loss; A learning device with
- Appendix 2 The learning device according to appendix 1, wherein the second data extension is different from the first data extension and the third data extension.
- the data with correct answer includes input data and a correct answer for the input data, 6.
- the learning device according to any one of Appendices 1 to 5, wherein the data without correct answers include the input data of the data with correct answers.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Image Analysis (AREA)
Abstract
第1の推論手段は、正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1の推論を行う。第1の損失計算手段は、第1の推論の結果と、正解付きデータに付与された正解とから第1の損失を計算する。第2の推論手段は、正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2の推論を行う。第3の推論手段は、正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3の推論を行う。疑似補ラベル生成手段は、第3の推論の結果から疑似補ラベルを生成する。第2の損失計算手段は、第2の推論の結果と、疑似補ラベルとに基づいて第2の損失を計算する。更新手段は、第1の損失及び第2の損失に基づいて、第1~第3の推論手段のパラメータを更新する。
Description
本開示は、機械学習モデルの学習方法に関する。
近年、機械学習に基づく認識技術は、画像認識の分野を中心に極めて高い性能を示している。このような機械学習に基づく認識技術の高い精度は、大量の正解付きデータにより支えられている。即ち、大量の正解付きデータを用意して学習を行うことにより、高い精度が実現されている。
しかし、大量の正解付きデータを用意するにはコストと時間を要する。この観点から、特許文献1は、通常の実教師データから人工教師データを生成して教師データの量を増やす手法を開示している。また、特許文献2は、教師ありデータと、教師なしデータとを用いて半教師あり学習を行う手法を開示している。
通常、正解のないデータであれば、運用時に低コストで蓄積することができるため、正解なしデータを有効に活用することにより、データ収集を低コスト化することが期待できる。
本開示の1つの目的は、データ収集コストを抑えて、高精度な機械学習モデルを生成することにある。
本開示の一つの観点では、学習装置は、
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1の推論を行う第1の推論手段と、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算する第1の損失計算手段と、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2の推論を行う第2の推論手段と、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3の推論を行う第3の推論手段と、
前記第3の推論の結果から疑似補ラベルを生成する疑似補ラベル生成手段と、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算する第2の損失計算手段と、
前記第1の損失及び前記第2の損失に基づいて、前記第1の推論手段、前記第2の推論手段及び前記第3の推論手段のパラメータを更新する更新手段と、を備える。
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1の推論を行う第1の推論手段と、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算する第1の損失計算手段と、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2の推論を行う第2の推論手段と、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3の推論を行う第3の推論手段と、
前記第3の推論の結果から疑似補ラベルを生成する疑似補ラベル生成手段と、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算する第2の損失計算手段と、
前記第1の損失及び前記第2の損失に基づいて、前記第1の推論手段、前記第2の推論手段及び前記第3の推論手段のパラメータを更新する更新手段と、を備える。
本開示の他の観点では、学習方法は、
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する。
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する。
本開示のさらに他の観点では、記録媒体は、
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する処理をコンピュータに実行させるプログラムを記録する。
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する処理をコンピュータに実行させるプログラムを記録する。
本開示によれば、データ収集コストを抑えて、高精度な機械学習モデルを生成することが可能となる。
以下、図面を参照して、本開示の好適な実施形態について説明する。
<第1実施形態>
[学習装置]
まず、第1実施形態の学習装置について説明する。
(ハードウェア構成)
図1は、第1実施形態の学習装置100のハードウェア構成を示すブロック図である。図示のように、学習装置100は、インタフェース(I/F)11と、プロセッサ12と、メモリ13と、記録媒体14と、データベース(DB)15と、を備える。
<第1実施形態>
[学習装置]
まず、第1実施形態の学習装置について説明する。
(ハードウェア構成)
図1は、第1実施形態の学習装置100のハードウェア構成を示すブロック図である。図示のように、学習装置100は、インタフェース(I/F)11と、プロセッサ12と、メモリ13と、記録媒体14と、データベース(DB)15と、を備える。
インタフェース11は、外部装置との間でデータの入出力を行う。具体的に、学習に使用される正解付きデータ及び正解なしデータは、インタフェース11を通じて入力される。
プロセッサ12は、CPU(Central Processing Unit)などのコンピュータであり、予め用意されたプログラムを実行することにより学習装置100の全体を制御する。なお、プロセッサ12は、GPU(Graphics Processing Unit)またはFPGA(Field-Programmable Gate Array)であってもよい。プロセッサ12は、後述する学習処理を実行する。
メモリ13は、ROM(Read Only Memory)、RAM(Random Access Memory)などにより構成される。メモリ13は、プロセッサ12による各種の処理の実行中に作業メモリとしても使用される。
記録媒体14は、ディスク状記録媒体、半導体メモリなどの不揮発性で非一時的な記録媒体であり、学習装置100に対して着脱可能に構成される。記録媒体14は、プロセッサ12が実行する各種のプログラムを記録している。学習装置100が各種の処理を実行する際には、記録媒体14に記録されているプログラムがメモリ13にロードされ、プロセッサ12により実行される。DB15は、必要に応じて、学習のための正解付きデータ、正解なしデータを記憶する。
(機能構成)
図2は、第1実施形態の学習装置100の機能構成を示すブロック図である。学習装置100は、データ拡張部21a~21cと、推論部22a~22cと、正解付き損失計算部23と、正解なし補ラベル損失計算部24と、疑似補ラベル生成部25と、勾配計算部26と、更新部27と、パラメータ保持部28a、28bと、を備える。
図2は、第1実施形態の学習装置100の機能構成を示すブロック図である。学習装置100は、データ拡張部21a~21cと、推論部22a~22cと、正解付き損失計算部23と、正解なし補ラベル損失計算部24と、疑似補ラベル生成部25と、勾配計算部26と、更新部27と、パラメータ保持部28a、28bと、を備える。
正解付きデータは、入力データと、その入力データに対応する正解ラベルとを含む。例えば画像認識モデルを学習する場合、入力データは学習に使用される画像であり、正解ラベルはその画像に含まれる対象物のクラスを示す情報である。正解付きデータのうち、入力データはデータ拡張部21aに入力され、正解ラベルは正解付き損失計算部23へ入力される。
データ拡張部21aは、入力データに対してランダムな変換を行い、変換後の入力データを推論部22aに出力する。推論部22aは、機械学習モデルを用いて、入力データに対する推論を行う。例えば画像認識モデルを学習する場合、推論部22aは、入力データに含まれる対象物のクラスを推論し、正解付き損失計算部23へ出力する。
正解付き損失計算部23は、推論部22aから入力される推論結果と、正解付きデータに含まれる正解ラベルとから正解付き損失を計算する。なお、正解付き損失計算部23は、例えばクロスエントロピー損失など、一般的な多値分類向け損失関数を用いることができる。正解付き損失計算部23は、計算した正解付き損失を勾配計算部26へ出力する。
正解なしデータは、入力データのみを含み、正解ラベルを含まないデータである。正解なしデータとしては、機械学習モデルを実際に運用する環境において収集されたデータなどを用いることができる。例えば、映像監視用の画像認識モデルを学習する場合、正解なしデータとして、監視対象となる環境に設置されたカメラによる撮影画像などを使用することができる。正解なしデータは、データ拡張部21b、21cへ入力される。
データ拡張部21bは、入力された正解なしデータに対してランダムな変換行い、変換後のデータを推論部22bへ出力する。同様に、データ拡張部21cは、入力された正解なしデータに対してランダムな変換を行い、変換後のデータを推論部22cへ出力する。なお、データ拡張部21aを含む3つのデータ拡張部21a~21cは、それぞれ入力データに対して独立にランダムな変換を作用させるが、その変換の種類は同一であってもよく、異なってもよい。なお、好適な例では、データ拡張部21bによる変換は、データ拡張部21a、21cによる変換よりも強い変換とする。強い変換とは、入力データに対する変化が大きい変換を言い、例えば入力データが画像である場合、画像の内容をより大きく変えるような変換である。
推論部22bは、機械学習モデルを用いて、データ拡張部21bによる変換後の入力データに対する推論を行い、推論結果を正解なし補ラベル損失計算部24へ出力する。また、推論部22cは、機械学習モデルを用いて、データ拡張部21cによる変換後の入力データに対する推論を行い、推論結果を疑似補ラベル生成部25へ出力する。
疑似補ラベル生成部25は、推論部22cによる推論結果に基づいて疑似補ラベルを生成する。「補ラベル」とは、入力データに対して付与されるラベルであり、その入力データが特定のクラス(カテゴリー)に属さないことを示す。例えば、補ラベルcは、その入力データがクラスcに属さないことを示す。また、「疑似補ラベル」とは、学習途中又は学習済みのモデルの推論結果から生成した補ラベルをいう。
以下、疑似補ラベルの生成方法について詳しく説明する。いま、推論部22a~22cが画像認識モデルを用いて多クラス(以下、Nクラスとする)の分類を行うとする。この場合、推論部22a~22cは、1つの入力データ(画像)に対して、その入力データがN個のクラスそれぞれに該当する確率を出力する。即ち、推論部22a~22cは、推論結果としてN個の確率値を出力する。疑似補ラベル生成部25は、推論部22cが出力したN個の確率値のうち、最大の確率値を有するクラス(以下、「最大クラス」とも呼ぶ。)をクラスcとする。そして、疑似補ラベル生成部25は、N個のクラスのうち、最大クラスc以外のクラスからランダムに選択したクラスc’を疑似補ラベルと決定する。
このように疑似補ラベルを生成すると、推論部22cの推論の精度が十分に高くなくても、疑似補ラベルの精度は高くなる。例えば、推論部22cが10クラス分類を行う場合を考える。この場合、推論部22cが正しく推論するデータに対しては、100%の確率で正しい疑似補ラベルが付与される。推論部22cが間違って推論するデータに対しても、88.9%の確率で正しい疑似補ラベルが付与される。また、推論部22cの推論の精度が30%であったとしても、疑似補ラベルの精度は92.2%となる。よって、疑似補ラベルを用いることにより、正解なしデータに対して、精度の高い疑似ラベルを付与することができる。疑似補ラベル生成部25は、生成した疑似補ラベルを正解なし補ラベル損失計算部24へ出力する。
正解なし補ラベル損失計算部24は、正解なしデータに対して付与された疑似補ラベルと、推論部22bから入力された推論結果とを用いて、補ラベル損失を計算する。補ラベル損失としては、例えば前方補正損失、下方有界な後方補正損失などを用いることができる。正解なし補ラベル損失計算部24は、計算した補ラベル損失を勾配計算部26へ出力する。
勾配計算部26は、入力された正解付き損失及び補ラベル損失の勾配を計算し、更新部27へ出力する。例えば、勾配計算部26は、正解付き損失と補ラベル損失の和又は重み付き和の勾配を算出し、更新部27へ出力する。
更新部27は、入力された勾配を用いて推論部22a、22bのパラメータ(以下、「パラメータP1」と呼ぶ。)を更新し、パラメータ保持部28aへ出力する。パラメータ保持部28aは、推論部22a、22bに対して更新後のパラメータP1を設定する。こうして、正解付きデータについて推論を行う推論部22aと、正解なしデータについて推論を行う推論部22bに、同一のパラメータP1が設定される。
また、更新部27は、入力された勾配を用いて、推論部22cのパラメータ(以下、「パラメータP2」と呼ぶ。)を更新し、パラメータ保持部28bへ出力する。パラメータ保持部28aは、更新後のパラメータP2を推論部22cに設定する。ここで、パラメータ保持部28bが保持するパラメータP2は、パラメータ保持部28aが保持するパラメータP1と同一であってもよく、推論部22a、22bのパラメータP1が更新されるごとに、その指数移動平均を取ったものとしてもよい。
上記の構成において、データ拡張部21a及び推論部22aは第1の推論手段の一例であり、正解付き損失計算部23は第1の損失計算手段の一例である。データ拡張部21b及び推論部22bは第2の推論手段の一例であり、データ拡張部21c及び推論部22cは第3の推論手段の一例である。疑似補ラベル生成部25は疑似補ラベル生成手段の一例であり、正解なし補ラベル損失計算部24は第2の損失計算手段の一例である。勾配計算部26、更新部27、パラメータ保持部28a、28bは、更新手段の一例である。
(学習処理)
図3は、第1実施形態の学習装置100による学習処理のフローチャートである。この処理は、図1に示すプロセッサ12が予め用意されたプログラムを実行し、図2に示す各要素として動作することにより実現される。なお、この処理は、正解付きデータ及び正解なしデータが入力される毎に繰り返し実行される。
図3は、第1実施形態の学習装置100による学習処理のフローチャートである。この処理は、図1に示すプロセッサ12が予め用意されたプログラムを実行し、図2に示す各要素として動作することにより実現される。なお、この処理は、正解付きデータ及び正解なしデータが入力される毎に繰り返し実行される。
まず、正解付きデータに含まれる入力データがデータ拡張部21aに入力され、正解付きデータに含まれる正解ラベルが正解付き損失計算部23へ入力される。また、正解なしデータがデータ拡張部21b、21cに入力される。
データ拡張部21aは、正解付きデータの入力データを変換し、推論部22aへ出力する(ステップS11)。推論部22aは、変換後の入力データから推論を行い、推論結果を正解付き損失計算部23へ出力する(ステップS12)。正解付き損失計算部23は、推論結果と、正解ラベルとから損失を計算し、勾配計算部26へ出力する(ステップS13)。
また、ステップS11~S13と並行して、データ拡張部21cは、正解なしデータを変換し、推論部22cへ出力する(ステップS14)。推論部22cは、変換後の入力データから推論を行い、推論結果を疑似補ラベル生成部25へ出力する(ステップS15)。疑似補ラベル生成部25は、推論結果から疑似補ラベルを生成し、正解なし補ラベル損失計算部24へ出力する(ステップS16)。
また、データ拡張部21bは、正解なしデータを変換し、推論部22bへ出力する(ステップS17)。推論部22bは、変換後の入力データから推論を行い、推論結果を正解なし補ラベル損失計算部24へ出力する(ステップS18)。正解なし補ラベル損失計算部24は、推論部22bから入力された推論結果と、疑似補ラベル生成部25から入力された疑似補ラベルとから補ラベル損失を計算し、勾配計算部26へ出力する(ステップS19)。
勾配計算部26は、入力された正解付き損失及び補ラベル損失の勾配を計算し、更新部27へ出力する(ステップS20)。更新部27は、入力された勾配に基づいて、推論部22a、22bのパラメータP1を更新してパラメータ保持部28aへ出力するとともに、推論部22cのパラメータP2を更新してパラメータ保持部28bへ出力する(ステップS21)。そして、パラメータ保持部28aはパラメータP1を推論部22a、22bに設定し、パラメータ保持部28bはパラメータP2を推論部22cに設定する(ステップS22)。こうして、推論部22a~22cのパラメータが更新される。
(変形例)
(1)上記の実施形態では、正解なしデータを正解付きデータと別個に用意しているが、正解付きデータの入力データを正解なしデータとして使用してもよい。これにより、正解なしデータを容易に増量することができる。
(1)上記の実施形態では、正解なしデータを正解付きデータと別個に用意しているが、正解付きデータの入力データを正解なしデータとして使用してもよい。これにより、正解なしデータを容易に増量することができる。
(2)上記の実施形態において、正解付きデータとして、弱正解付きデータを使用してもよい。即ち、正解付きデータは、弱正解データも含む概念とする。通常の「正解」はそのデータが属する正解クラスを正しくただ一つ指定するのに対し、「弱正解」はあいまいさやノイズなどを含む正解である。この意味で、前述の「補ラベル」は弱正解の一例と捉えることができる。即ち、補ラベルcは、そのデータがクラスc以外であることを示しており、クラス数が3つ以上ある場合、補ラベルは必ずあいまいさを含むため、弱正解と考えることができる。
また、弱正解の他の例として、エキスパートデータセットを用いることができる。「エキスパートデータセット」とは、多クラス分類のモデルを学習する際に使用できる学習用データセットであり、複数の部分データセットにより構成されるものである。具体的に、エキスパートデータセットは、以下の条件を具備するように構成される。
(A)複数の部分データセットの各々には、認識対象とする全てのカテゴリーの少なくとも一部が責任範囲として割り当てられている。
(B)認識対象とする全てのカテゴリーが、複数の部分データセットのいずれかに割り当てられている。
(C)部分データセットに含まれる各データには、当該部分データセットに割り当てられた責任範囲に属するカテゴリーのいずれか、又は、当該認識対象のカテゴリーが当該部分データセットの責任範囲に属さないことを示す正解ラベルが付与されている。
(A)複数の部分データセットの各々には、認識対象とする全てのカテゴリーの少なくとも一部が責任範囲として割り当てられている。
(B)認識対象とする全てのカテゴリーが、複数の部分データセットのいずれかに割り当てられている。
(C)部分データセットに含まれる各データには、当該部分データセットに割り当てられた責任範囲に属するカテゴリーのいずれか、又は、当該認識対象のカテゴリーが当該部分データセットの責任範囲に属さないことを示す正解ラベルが付与されている。
図4は、多クラス分類問題の場合の通常のデータセットと、エキスパートデータセットの例を示す。図4(A)は、学習に使用される通常のデータセットを示す。いま、画像データに基づいて100クラスの多クラス分類を行う物体認識モデルを学習するものとする。通常の学習用データセットとしては、用意された画像データの各々について、100クラス、即ち、100カテゴリーのうちの1つが正解ラベルとして割り当てられる。
図4(B)は、エキスパートデータセットの例を示す。なお、このエキスパートデータセットでも、図4(A)の例と同様に全体で100クラスの多クラス分類を行うものとする。エキスパートデータセットでは、複数の部分データセットを用意する。図4(B)の例では、「水生哺乳類」、「人」などの複数の部分データセットが用意される。そして、各部分データセットには、それぞれ責任範囲が設定される。「水生哺乳類」の部分データセットには、5種類の水生哺乳類、「ビーバー」、「イルカ」、「カワウソ」、「アザラシ」、「クジラ」が責任範囲として割り当てられる。「人」の部分データセットには、5種類の人、「赤ん坊」、「男の子」、「女の子」、「男性」、「女性」が責任範囲として割り当てられる。ここで、責任範囲は、認識対象とする全てのクラス(カテゴリー)が、複数の部分データセットのいずれかに割り当てられるように決定されている。即ち、いずれの部分データセットにも割り当てられていないクラスが存在しないように、100個のクラスが複数の部分データセットに割り当てられている。言い換えると、複数の部分データセットにより、100個のクラスの認識対象全てが網羅されるように責任範囲が決定されている。これにより、エキスパートデータセットによっても、図4(A)に示す通常のデータセットと同様に、100クラスの多クラス分類の学習が可能となる。このようなエキスパートデータセットも、上記の実施形態における正解付きデータとして使用することができる。
[推論装置]
図5は、第1実施形態の推論装置の構成を示す。推論装置200は、推論部201を備える。推論部201には、上記の学習処理により学習された機械学習モデルを使用する。即ち、推論部201には、上記の学習処理により得られたパラメータP1が設定される。
図5は、第1実施形態の推論装置の構成を示す。推論装置200は、推論部201を備える。推論部201には、上記の学習処理により学習された機械学習モデルを使用する。即ち、推論部201には、上記の学習処理により得られたパラメータP1が設定される。
推論時には、推論部201に、推論の対象となる入力データが入力される。この入力データは、推論装置200が実際に運用される環境において取得された撮影画像などのデータであり、実際の画像認識などの対象となるデータである。推論部201は、入力データから推論を行い、推論結果を出力する。例えば多クラス分類を行う画像認識の場合、推論部201は、入力画像に基づいて各クラスの確率値を推論結果として出力する。
<第2実施形態>
図6は、第2実施形態の学習装置の機能構成を示すブロック図である。学習装置70は、第1の推論手段71と、第1の損失計算手段72と、第2の推論手段73と、第3の推論手段74と、疑似補ラベル生成手段75と、第2の損失計算手段76と、更新手段77と、を備える。
図7は、第2実施形態の学習装置70による学習処理のフローチャートである。第1の推論手段71は、正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1の推論を行う(ステップS41)。第1の損失計算手段72は、第1の推論の結果と、正解付きデータに付与された正解とから第1の損失を計算する(ステップS42)。第2の推論手段73は、正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2の推論を行う(ステップS43)。第3の推論手段74は、正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3の推論を行う(ステップS44)。疑似補ラベル生成手段75は、第3の推論の結果から疑似補ラベルを生成する(ステップS45)。第2の損失計算手段76は、第2の推論の結果と、疑似補ラベルとに基づいて第2の損失を計算する(ステップS46)。更新手段77は、第1の損失及び第2の損失に基づいて、第1の推論手段、第2の推論手段及び第3の推論手段のパラメータを更新する(ステップS47)。
第2実施形態の学習装置によれば、正解なしデータを用いて高精度な機械学習モデルを生成することが可能となる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1の推論を行う第1の推論手段と、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算する第1の損失計算手段と、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2の推論を行う第2の推論手段と、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3の推論を行う第3の推論手段と、
前記第3の推論の結果から疑似補ラベルを生成する疑似補ラベル生成手段と、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算する第2の損失計算手段と、
前記第1の損失及び前記第2の損失に基づいて、前記第1の推論手段、前記第2の推論手段及び前記第3の推論手段のパラメータを更新する更新手段と、
を備える学習装置。
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1の推論を行う第1の推論手段と、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算する第1の損失計算手段と、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2の推論を行う第2の推論手段と、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3の推論を行う第3の推論手段と、
前記第3の推論の結果から疑似補ラベルを生成する疑似補ラベル生成手段と、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算する第2の損失計算手段と、
前記第1の損失及び前記第2の損失に基づいて、前記第1の推論手段、前記第2の推論手段及び前記第3の推論手段のパラメータを更新する更新手段と、
を備える学習装置。
(付記2)
前記第2のデータ拡張は、前記第1のデータ拡張及び前記第3のデータ拡張とは異なる付記1に記載の学習装置。
前記第2のデータ拡張は、前記第1のデータ拡張及び前記第3のデータ拡張とは異なる付記1に記載の学習装置。
(付記3)
前記更新手段は、前記第1の推論手段及び前記第2の推論手段に対して同一のパラメータを設定する付記1又は2に記載の学習装置。
前記更新手段は、前記第1の推論手段及び前記第2の推論手段に対して同一のパラメータを設定する付記1又は2に記載の学習装置。
(付記4)
前記更新手段は、前記第1の推論手段及び前記第2の推論手段に設定したパラメータに基づいて別のパラメータを生成し、前記第3の推論手段に設定する付記3に記載の学習装置。
前記更新手段は、前記第1の推論手段及び前記第2の推論手段に設定したパラメータに基づいて別のパラメータを生成し、前記第3の推論手段に設定する付記3に記載の学習装置。
(付記5)
前記正解付きデータは、弱正解付きデータを含む付記1乃至4のいずれか一項に記載の学習装置。
前記正解付きデータは、弱正解付きデータを含む付記1乃至4のいずれか一項に記載の学習装置。
(付記6)
前記正解付きデータは、入力データと、当該入力データに対する正解とを含み、
前記正解なしデータは、前記正解付きデータの入力データを含む付記1乃至5のいずれか一項に記載の学習装置。
前記正解付きデータは、入力データと、当該入力データに対する正解とを含み、
前記正解なしデータは、前記正解付きデータの入力データを含む付記1乃至5のいずれか一項に記載の学習装置。
(付記7)
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する学習方法。
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する学習方法。
(付記8)
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する処理をコンピュータに実行させるプログラムを記録した記録媒体。
正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する処理をコンピュータに実行させるプログラムを記録した記録媒体。
以上、実施形態及び実施例を参照して本開示を説明したが、本開示は上記実施形態及び実施例に限定されるものではない。本開示の構成や詳細には、本開示のスコープ内で当業者が理解し得る様々な変更をすることができる。
21a~21c データ拡張部
22a~22c 推論部
23 正解付き損失計算部
24 正解なし補ラベル損失計算部
25 疑似補ラベル生成部
26 勾配計算部
27 更新部
28a、28b パラメータ保持部
100 学習装置
200 推論装置
22a~22c 推論部
23 正解付き損失計算部
24 正解なし補ラベル損失計算部
25 疑似補ラベル生成部
26 勾配計算部
27 更新部
28a、28b パラメータ保持部
100 学習装置
200 推論装置
Claims (8)
- 正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1の推論を行う第1の推論手段と、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算する第1の損失計算手段と、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2の推論を行う第2の推論手段と、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3の推論を行う第3の推論手段と、
前記第3の推論の結果から疑似補ラベルを生成する疑似補ラベル生成手段と、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算する第2の損失計算手段と、
前記第1の損失及び前記第2の損失に基づいて、前記第1の推論手段、前記第2の推論手段及び前記第3の推論手段のパラメータを更新する更新手段と、
を備える学習装置。 - 前記第2のデータ拡張は、前記第1のデータ拡張及び前記第3のデータ拡張とは異なる請求項1に記載の学習装置。
- 前記更新手段は、前記第1の推論手段及び前記第2の推論手段に対して同一のパラメータを設定する請求項1又は2に記載の学習装置。
- 前記更新手段は、前記第1の推論手段及び前記第2の推論手段に設定したパラメータに基づいて別のパラメータを生成し、前記第3の推論手段に設定する請求項3に記載の学習装置。
- 前記正解付きデータは、弱正解付きデータを含む請求項1乃至4のいずれか一項に記載の学習装置。
- 前記正解付きデータは、入力データと、当該入力データに対する正解とを含み、
前記正解なしデータは、前記正解付きデータの入力データを含む請求項1乃至5のいずれか一項に記載の学習装置。 - 正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する学習方法。 - 正解付きデータに対して第1のデータ拡張を行い、得られたデータから第1のモデルを用いて第1の推論を行い、
前記第1の推論の結果と、前記正解付きデータに付与された正解とから第1の損失を計算し、
正解なしデータに対して第2のデータ拡張を行い、得られたデータから第2のモデルを用いて第2の推論を行い、
前記正解なしデータに対して第3のデータ拡張を行い、得られたデータから第3のモデルを用いて第3の推論を行い、
前記第3の推論の結果から疑似補ラベルを生成し、
前記第2の推論の結果と、前記疑似補ラベルとに基づいて第2の損失を計算し、
前記第1の損失及び前記第2の損失に基づいて、前記第1のモデル、前記第2のモデル及び前記第3のモデルのパラメータを更新する処理をコンピュータに実行させるプログラムを記録した記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023506588A JP7517589B2 (ja) | 2021-03-17 | 2021-03-17 | 学習装置、学習方法、及び、プログラム |
PCT/JP2021/010827 WO2022195762A1 (ja) | 2021-03-17 | 2021-03-17 | 学習装置、学習方法、及び、記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/010827 WO2022195762A1 (ja) | 2021-03-17 | 2021-03-17 | 学習装置、学習方法、及び、記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022195762A1 true WO2022195762A1 (ja) | 2022-09-22 |
Family
ID=83322002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/010827 WO2022195762A1 (ja) | 2021-03-17 | 2021-03-17 | 学習装置、学習方法、及び、記録媒体 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7517589B2 (ja) |
WO (1) | WO2022195762A1 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020070876A1 (ja) * | 2018-10-05 | 2020-04-09 | 日本電気株式会社 | 教師データ拡張装置、教師データ拡張方法およびプログラム |
-
2021
- 2021-03-17 JP JP2023506588A patent/JP7517589B2/ja active Active
- 2021-03-17 WO PCT/JP2021/010827 patent/WO2022195762A1/ja active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020070876A1 (ja) * | 2018-10-05 | 2020-04-09 | 日本電気株式会社 | 教師データ拡張装置、教師データ拡張方法およびプログラム |
Non-Patent Citations (5)
Title |
---|
"Pattern Recognition : 5th Asian Conference, ACPR 2019, Auckland, New Zealand, November 26–29, 2019, Revised Selected Papers, Part II", vol. 11205, 1 January 2018, SPRINGER INTERNATIONAL PUBLISHING, Cham, ISBN: 978-3-030-41298-2, ISSN: 0302-9743, article YU XIYU, LIU TONGLIANG, GONG MINGMING, TAO DACHENG: "Learning with Biased Complementary Labels : 15th European Conference, Munich, Germany, September 8-14, 2018, Proceedings, Part I", pages: 69 - 85, XP055971589, DOI: 10.1007/978-3-030-01246-5_5 * |
FUKUDA, TAKASHI: "Effect on non-native English speech recognition by data expansion processing", IPSJ SIG TECHNICAL REPORT. SPOKEN LANGUAGE PROCESSING (SLP), vol. 2018-SLP-124, no. 2, 3 October 2018 (2018-10-03), JP , pages 1 - 6, XP009540617, ISSN: 0919-6072 * |
ISHIDA TAKASHI, NIU GANG, MENON ADITYA KRISHNA, SUGIYAMA MASASHI: "Complementary-Label Learning for Arbitrary Losses and Models", PROCEEDINGS OF THE 36TH INTERNATIONAL CONFERENCE ON MACHINE LEARNING., vol. 97, 9 June 2019 (2019-06-09), XP055971587 * |
ISHIDA, TAKASHI ET AL.: "Learning from Complementary Labels", ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS., vol. 30, 24 January 2018 (2018-01-24), XP055971588, Retrieved from the Internet <URL:https://proceedings.neurips.cc/paper/2017/file/ldba5eed8838571elc80af145184e515-Paper.pdf> [retrieved on 20210520] * |
YAMAGUCHI, SHINYA: "Data expansion by simultaneous learning of multiple data sets of generative adversarial networks. The 11th forum on data engineering and information management", THE 17TH ANNUAL CONFERENCE OF THE DATABASE SOCIETY OF JAPAN, 4 March 2019 (2019-03-04), pages 1 - 114 * |
Also Published As
Publication number | Publication date |
---|---|
JP7517589B2 (ja) | 2024-07-17 |
JPWO2022195762A1 (ja) | 2022-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | A fault diagnosis method for wind turbines gearbox based on adaptive loss weighted meta-ResNet under noisy labels | |
US11200483B2 (en) | Machine learning method and apparatus based on weakly supervised learning | |
US20210358624A1 (en) | A computer implemented determination method and system | |
US11568212B2 (en) | Techniques for understanding how trained neural networks operate | |
CN110046707B (zh) | 一种神经网络模型的评估优化方法和系统 | |
Pfeiffer et al. | Reward-modulated Hebbian learning of decision making | |
Vieira et al. | Deep neural networks | |
CN115908947A (zh) | 一种基于反绎学习的多模态牙周图像识别方法和系统 | |
CN115240843A (zh) | 基于结构因果模型的公平性预测系统 | |
Ke et al. | Sparse attentive backtracking: Long-range credit assignment in recurrent networks | |
EP3975071A1 (en) | Identifying and quantifying confounding bias based on expert knowledge | |
WO2022195762A1 (ja) | 学習装置、学習方法、及び、記録媒体 | |
CN117521063A (zh) | 基于残差神经网络并结合迁移学习的恶意软件检测方法及装置 | |
CN113192627A (zh) | 一种基于病人与疾病二部图的再入院预测方法及系统 | |
JP2019185121A (ja) | 学習装置、学習方法及びプログラム | |
US20210103807A1 (en) | Computer implemented method and system for running inference queries with a generative model | |
CN117079017A (zh) | 可信的小样本图像识别分类方法 | |
GB2589828A (en) | Causal reasoning and counterfactual probabilistic programming framework using approximate inference | |
JP7563495B2 (ja) | 学習装置、学習方法、及び、プログラム | |
CN113780394B (zh) | 一种强分类器模型的训练方法、装置及设备 | |
WO2022195763A1 (ja) | 学習装置、学習方法、及び、記録媒体 | |
WO2022077345A1 (en) | Method and apparatus for neural network based on energy-based latent variable models | |
Shankarampeta et al. | Few-Shot Class Incremental Learning with Generative Feature Replay. | |
WO2021220341A1 (ja) | 学習装置、学習方法、学習装置用記録媒体、及び、推論装置、推論方法、推論装置用記録媒体 | |
Seras et al. | A Novel Explainable Out-of-Distribution Detection Approach for Spiking Neural Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21931514 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2023506588 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21931514 Country of ref document: EP Kind code of ref document: A1 |