WO2023080509A1 - Method and device for learning noisy labels through efficient transition matrix estimation - Google Patents

Method and device for learning noisy labels through efficient transition matrix estimation Download PDF

Info

Publication number
WO2023080509A1
WO2023080509A1 PCT/KR2022/016182 KR2022016182W WO2023080509A1 WO 2023080509 A1 WO2023080509 A1 WO 2023080509A1 KR 2022016182 W KR2022016182 W KR 2022016182W WO 2023080509 A1 WO2023080509 A1 WO 2023080509A1
Authority
WO
WIPO (PCT)
Prior art keywords
classifier
clean
noise
input data
data
Prior art date
Application number
PCT/KR2022/016182
Other languages
French (fr)
Korean (ko)
Inventor
계성민
안상일
이준영
장부루
최광희
Original Assignee
주식회사 하이퍼커넥트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020220062899A external-priority patent/KR20230065137A/en
Application filed by 주식회사 하이퍼커넥트 filed Critical 주식회사 하이퍼커넥트
Publication of WO2023080509A1 publication Critical patent/WO2023080509A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Definitions

  • the present disclosure relates to a method and apparatus for learning noise labels through efficient conversion matrix estimation.
  • the classifier determines which class the input data belongs to, and classifies the input data into the most similar class among the preset classes even if the input data does not belong to any of the preset classes.
  • the classifier performs learning based on the result of classifying the input data and the label of the input data.
  • the labeling of the input data is incorrect, that is, when a noise label is learned, the performance of the classification model decreases. can do. Since training a classification model with only clean labels has limitations such as quantitative limitations, various studies on how to learn noise labels have been conducted.
  • An object of the present disclosure is to provide a method and apparatus for learning noise labels through efficient conversion matrix estimation.
  • the problems to be solved by the present disclosure are not limited to the above-mentioned problems, and other problems and advantages of the present disclosure that are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present disclosure. It will be. In addition, it will be appreciated that the problems and advantages to be solved by the present disclosure can be realized by the means and combinations indicated in the claims.
  • a method for learning a noise label includes a transition matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data. ) estimating; Clean based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix. calculating classifier loss; calculating a noise classifier loss based on the output data of the noise classifier for the second input data and the second label; and allowing the clean classifier and the noise classifier to learn a noise label based on the clean classifier loss and the noise classifier loss.
  • a computer-readable recording medium includes a recording medium on which a program for executing the method described above is recorded on a computer.
  • An apparatus for learning a noise label includes a memory in which at least one program is stored; and a processor operating by executing the at least one program, wherein the processor estimates a conversion matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data. and based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix.
  • a label transition matrix can be efficiently estimated, and a classifier can be effectively trained using not only clean labels but also noise labels through the estimated transition matrix.
  • the conversion matrix is estimated adaptively, so that the classifier does not blindly trust samples that may contain already corrected labels, avoiding problems related to miscorrection.
  • the noise label can be continuously corrected in real time while learning the noise label at every iteration.
  • 1 is a diagram for explaining an example of classifying input data into at least one class.
  • FIG. 2 is a flowchart illustrating an example of a method of learning a noise label according to an embodiment.
  • FIG. 3 is a schematic diagram illustrating a processor forming a clean batch and a noise batch according to an embodiment.
  • FIG. 4 is a schematic diagram illustrating a process of estimating a conversion matrix by a processor according to an embodiment.
  • FIG. 5 is a schematic diagram illustrating a process of calculating a clean classifier loss by a processor according to an embodiment.
  • FIG. 6 is a schematic diagram illustrating a process of calculating a noise classifier loss by a processor according to an embodiment.
  • FIG. 7 is a schematic diagram illustrating a process of optimizing parameters of a clean classifier and a noise classifier by a processor according to an embodiment.
  • FIG. 8 is a schematic diagram illustrating a two-head architecture according to one embodiment.
  • FIG. 10 is a block diagram illustrating an apparatus for learning a noise label according to an exemplary embodiment.
  • FIG. 11 is a diagram for explaining an example in which a final model is utilized according to an embodiment.
  • a method for learning a noise label according to the first aspect includes estimating a transition matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data. doing; Clean based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix. calculating classifier loss; calculating a noise classifier loss based on the output data of the noise classifier for the second input data and the second label; and training the clean classifier and the noise classifier based on the clean classifier loss and the noise classifier loss.
  • Some embodiments of the present disclosure may be represented as functional block structures and various processing steps. Some or all of these functional blocks may be implemented as a varying number of hardware and/or software components that perform specific functions.
  • functional blocks of the present disclosure may be implemented by one or more microprocessors or circuit configurations for a predetermined function.
  • the functional blocks of this disclosure may be implemented in various programming or scripting languages.
  • Functional blocks may be implemented as an algorithm running on one or more processors.
  • the present disclosure may employ prior art for electronic environment setting, signal processing, and/or data processing. Terms such as “mechanism”, “element”, “means” and “component” may be used broadly and are not limited to mechanical and physical components.
  • 1 is a diagram for explaining an example of classifying input data into at least one class.
  • FIG. 1 shows an example of input data 110, a classifier (classification model) 120, and a classification result 130.
  • FIG. 1 shows that the input data 110 is classified into a total of three classes, the number of classes is not limited to the example of FIG. 1 .
  • the type of input data 110 is not limited.
  • the input data 110 may correspond to various types of data such as images, texts, and voices.
  • the classifier 120 may calculate a probability that the input data 110 is classified into a specific class. For example, the classifier 120 may calculate a probability that input data is classified for each class using a softmax function and cross entropy.
  • the classifier 120 classifies the input image into a first class or a second class. Even if the input data 110 is an animal image, the classifier 120 classifies the input image into a class determined to be more similar among the first class and the second class.
  • the classifier 120 may be learned by learning data.
  • the classifier 120 may be trained in a direction in which an error between a result output from the classifier 120 and an actual correct answer is reduced.
  • supervised learning achieves many achievements by using a vast amount of annotated data, such as image classification, object detection and face recognition. It can solve various classification tasks. It has been theoretically and empirically proven that the performance of supervised learning-based classification models improves as the size of the annotated data increases. However, it is impossible to avoid noise labels since not all data can be finely annotated.
  • the recently proposed method further improves the performance of the classifier by utilizing a small, inexpensively acquired clean data set.
  • the loss correction method reduces the influence of noise labels by modifying the loss function, and the re-weighting method penalizes samples that are likely to be noisy labels. ) do.
  • recent label correction methods can achieve remarkable performance based on model-agnostic meta-learning (MAML). This method directly reduces the noise level by re-labeling the noise labels, raising the theoretical upper limit of prediction performance.
  • MAML model-agnostic meta-learning
  • the MAML-based label correction method has two problems. One is that MAML-based label calibration methods blindly trust previously miscalibrated labels. Miscalibrated labels are often retained during training, which causes the model to learn miscalibrated labels as ground-truth labels. The other is that MAML-based label correction methods are inherently slow to learn, resulting in excessive computational overhead. This inefficiency is due to the fact that the MAML-based label correction method involves performing a virtual update with a noisy data set, finding optimal parameters using a clean data set, and updating real parameters with the found parameters, resulting in a single iteration ( It comes from having multiple training steps per iteration.
  • FasTEN learns noise labels by efficiently estimating the transition matrix, while continuously correcting them in real time.
  • noise label learning through efficient conversion matrix estimation based on a method called FasTEN proposed in the present disclosure will be described in detail with reference to FIGS. 2 to 8 .
  • FIG. 2 is a flowchart illustrating an example of a method of learning a noise label according to an embodiment.
  • the operations shown in FIG. 2 may be executed by a noise label learning apparatus to be described later. Specifically, the method of learning the noise label shown in FIG. 2 may be executed by the processor shown in FIG. 10 .
  • the processor forms a clean batch composed of one or more first input data included in the clean data set and one or more first labels corresponding to the one or more first input data included in the clean data set, and one or more second input data included in the noise data set
  • a noise array composed of data and one or more second labels corresponding thereto may be formed.
  • the clean data set includes a plurality of first input data and a plurality of first labels respectively corresponding to the plurality of first input data.
  • the clean data set includes a plurality of first input data and first labels matched thereto.
  • all of the plurality of first labels included in the clean data set are accurately labeled for each of the plurality of first input data.
  • the noise data set includes a plurality of second input data and a plurality of second labels respectively corresponding to the plurality of second input data.
  • the noise data set includes a plurality of second input data and second labels matched thereto.
  • at least some of the plurality of second labels included in the noise data set are incorrectly labeled for each of the plurality of second input data.
  • some of the plurality of second labels are incorrectly labeled for each of the plurality of second input data.
  • a clean batch and a noise batch may be configured by randomly selecting from the clean data set and the noise data set, respectively.
  • the size of the clean batch and the size of the noise batch may be set to be the same, but are not limited thereto.
  • the processor may estimate a transition matrix based on the output data of the noise classifier for the first input data and the first label.
  • a noise classifier refers to a classifier that is learned using a noisy data set.
  • a noise classifier may include a linear classifier and a feature extractor.
  • a noise classifier is used to estimate a transition matrix, and the estimated transition matrix is used to learn noise labels.
  • the processor may calculate a clean classifier loss based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, the second label, and the conversion matrix. .
  • the clean classifier is trained using not only the clean data set but also the noise data set.
  • the clean classifier loss is a value used to train the clean classifier and, in an embodiment, may be calculated based on a loss based on clean data and a loss based on noise data.
  • a clean classifier like a noise classifier, may include a linear classifier and a feature extractor.
  • the processor may calculate a noise classifier loss based on the second label and output data of the noise classifier for the second input data.
  • the noise classifier is a classifier that is learned using a noisy data set, and the noise classifier loss is used to train the noise classifier.
  • the noise classifier loss may be calculated based on the output data of the noise classifier for the second input data and the second label.
  • the processor may cause the clean classifier and the noise classifier to learn a noise label based on the clean classifier loss and the noise classifier loss.
  • a clean classifier and a noise classifier may be trained based on the clean classifier loss and the noise classifier loss calculated in the previous step.
  • a clean classifier and a noise classifier may constitute a two-head architecture sharing a feature extractor, and through the two-head architecture, efficient learning through a single backpropagation may be realized.
  • FIG. 3 is a schematic diagram illustrating a processor forming a clean batch and a noise batch according to an embodiment.
  • a batch 320 used for one iteration may be formed from a data set 310 .
  • the data set 310 can be divided into multiple batches, and one batch 320 can be used for one iteration.
  • the data set 310 is a set of data used for learning a classifier (classification model).
  • the data set 310 may include a plurality of input data and a plurality of labels corresponding thereto.
  • batch 320 may also consist of one or more input data and one or more labels corresponding thereto.
  • the data set 310 may be a clean data set or a noise data set. That is, a clean batch may be formed from a clean data set, and a noise batch may be formed from a noise data set.
  • the processor may form batches to have the same number of samples per class.
  • the processor may construct a clean batch by randomly selecting K samples from each of the N classes in the clean data set (where N and K are natural numbers greater than or equal to 1). Each sample consists of input data and clean labels corresponding to the input data. For example, a clean batch may be constructed according to Equation 1 below.
  • Equation 1 denotes a clean batch, denotes an input, Is refers to the clean label of
  • the processor may configure the noise batch by randomly selecting M samples from the noise data set.
  • Each sample consists of input data and a noise label corresponding to the input data.
  • the noise arrangement may be configured according to Equation 2 below.
  • Equation 2 above denotes the noise placement, denotes an input, Is refers to the noise label of In one embodiment, M may be equal to KN.
  • FIG. 4 is a schematic diagram illustrating a process of estimating a conversion matrix by a processor according to an embodiment.
  • the input included in the clean batch 410 (corresponding to the first input data) is input to the noise classifier 420 .
  • As output data through the noise classifier 420 is output.
  • Via calculator 430 and the inputs included in the clean batch 410 label corresponding to conversion matrix estimated as output based on (corresponding to the first label) is output.
  • denotes the conversion matrix means that the conversion matrix is estimated.
  • Each component of is a clean label Ga Noise Label It can be defined as the probability of being contaminated by For example, if there are 4 classes in the data set: 'cat', 'dog', 'bird', and 'airplane', the class of any input data that would be inappropriate to be labeled as 'cat' is 'cat'. The probability of being classified as a 'cat' and labeled 'cat' will be greater when the class of the input data is actually 'dog' than when it is 'bird' or 'airplane'.
  • the probability that the class of the input data that is inappropriate to be labeled as 'airplane' is classified as 'airplane' and labeled as 'airplane' is the probability that the class of the input data is actually 'bird' if it is 'cat' or 'airplane'. It will be bigger than the case of 'dog'.
  • the conversion matrix is a matrix representing the probability of being misclassified between classes.
  • a small amount of clean data set can be utilized to estimate the conversion matrix.
  • building a clean data set costs more than building a noisy data set.
  • the learning speed can be increased by using a two-head architecture so that the conversion matrix can be learned with a single backpropagation.
  • noise classifier 420 may be used to estimate the transition matrix.
  • the noise classifier 420 of the present disclosure refers to a classifier that is trained with a noise batch constructed from a noise data set. Because noise classifier 420 is trained on noise data, having noise classifier 420 classify clean data will classify it incorrectly. For example, a classifier trained to classify an image of a cat as having a class of 'dog' will classify the class as 'dog' even when another cat image is input. Based on these characteristics of the noise classifier 420 and the clean data, a conversion matrix can be estimated using "how the noise classifier 420 misclassifies".
  • the conversion matrix is class-independent and instance-independent, i.e. can be designed to be
  • the feature extractor and a linear classifier By parameterizing can be expressed as, where denotes a noise classifier trained only with noise labels.
  • a noise classifier may include a linear classifier and a feature extractor. noise classifier If gives a perfect prediction for noisy data, as shown in Equation 4 below, included in the clean batch and Conversion probability using can be estimated.
  • Equation 4 above denotes a clean batch, denotes an input, Is refers to the clean label of In Equation 4 above, Is a feature extractor included in the noise classifier, Means a linear classifier included in the noise classifier, denotes a noise classifier.
  • the conversion matrix estimated through the process described above may then be used to calculate the clean classifier loss.
  • the noise classifier 420 and the calculator 430 are shown as separate functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the noise classifier 420 ) and the operator 430 may be configured as one piece of hardware.
  • FIG. 5 is a schematic diagram illustrating a process of calculating a clean classifier loss by a processor according to an embodiment.
  • the input included in the clean batch 510 is input to the clean classifier 530.
  • As output data through the clean classifier 530 is output.
  • the input (corresponding to the second input data) is input to the clean classifier 530.
  • As output data through the clean classifier 530 is output Via calculator 540 , the input included in the clean batch 510 label corresponding to , the input included in the noise batch 520. label corresponding to (corresponding to the second label) and the transition matrix Calculated clean classifier loss as output based on is output
  • Calculating the clean classifier loss is for training the clean classifier 530, for example the clean classifier loss Can be calculated according to Equation 5 below.
  • Equation 5 above denotes a clean batch, denotes the input included in the clean batch, Is refers to the clean label of In Equation 5 above, denotes the noise placement, denotes the input included in the noise batch, Is refers to the noise label of In Equation 5 above, Means the cross-entropy loss function, is a feature extractor included in the clean classifier, Means a linear classifier included in the clean classifier, denotes a clean classifier.
  • Output data of the clean classifier 530 for and label corresponding to A clean data based loss is calculated based on Output data of the clean classifier 530 for , the transition matrix and label corresponding to A noise data based loss is calculated based on , and a clean classifier loss based on the calculated clean data based loss and the noise data based loss. This is calculated
  • transition matrix is estimated correctly, then the clean classifier can be statistically consistent. This approach avoids the miscorrection problem because the clean classifier does not blindly trust the corrected label.
  • the clean classifier 530 of the present disclosure may be learned by utilizing not only clean data (clean batch) but also noise data (noise batch).
  • noise data includes labels with noise, since the amount of data is larger than that of clean data, it is efficient to use this to train the clean classifier 530. It should be noted that such noisy data can be exploited if the conversion matrix is estimated correctly.
  • the clean classifier loss calculated in this way can then be used to optimize the parameters of the clean classifier.
  • the clean classifier 530 and the calculator 540 are shown as separate functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the clean classifier 530 ) and the operator 540 may be configured as one piece of hardware.
  • FIG. 6 is a schematic diagram illustrating a process of calculating a noise classifier loss by a processor according to an embodiment.
  • the input included in the noise batch 610 is input to the noise classifier 620.
  • As output data through the noise classifier 620 is output Via calculator 630 and the inputs included in the noise batch 610.
  • label corresponding to Noise classifier loss computed as output based on is output.
  • the noise classifier 620 is trained through noise data. Because of this, if the noise classifier 620 classifies clean data, it may be classified incorrectly.
  • Computing the noise classifier loss is for training the noise classifier 620, e.g., the noise classifier loss. Can be calculated through Equation 7 below.
  • Equation 6 above denotes the noise placement, denotes an input, Is refers to the noise label of In Equation 6 above, Means the cross entropy loss function, Is a feature extractor included in the noise classifier, Means a linear classifier included in the noise classifier, denotes a noise classifier.
  • the noise label distribution may be continuously shifted while the noise label is dynamically corrected by the label correction step to reduce the noise level.
  • the noise classifier 620 and the calculator 630 are shown as separate functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the noise classifier 620 ) and the operator 630 may be configured as one piece of hardware.
  • FIG. 7 is a schematic diagram illustrating a process of optimizing parameters of a clean classifier and a noise classifier by a processor according to an embodiment.
  • the clean classifier loss calculated in the above process Over-noise classifier loss Parameters of the clean classifier 720 and the noise classifier 730 are optimized based on .
  • the clean classifier 720 can learn not only clean data but also noise data, and the noise classifier loss
  • the noise classifier 730 for estimating the conversion matrix may be trained through a process of optimizing parameters of the noise classifier 730 based on .
  • a calculator 710, a clean classifier 720, and a noise classifier 730 are shown as individual functional blocks for convenience of description and functional division of the operation of a processor and the flow of data according to an embodiment of the present disclosure.
  • the calculator 710, the clean classifier 720, and the noise classifier 730 may be composed of a single piece of hardware.
  • FIG. 8 is a schematic diagram illustrating a two-head architecture according to one embodiment.
  • the clean classifier 810 includes a first linear classifier and a feature extractor
  • the noise classifier 820 includes a second linear classifier and a feature extractor. At this time, the clean classifier 810 and the noise classifier 820 share the same feature extractor.
  • the clean classifier is a linear classifier and feature extractor can include noise classifier is a linear classifier and feature extractor can include
  • the clean classifier 810 and the noise classifier 820 may constitute a two-head architecture.
  • the present disclosure adopts a two-head architecture composed of two classifiers sharing a feature extractor, i.e., a clean classifier 810 and a noise classifier 820.
  • the feature extractor of the clean classifier 810 and the feature extractor of the noise classifier 820 is the same (i.e. ).
  • the clean classifier 810 and the noise classifier 820 may share the same feature extractor.
  • parameters of the feature extractor, the linear classifier of the clean classifier 810 and the linear classifier of the noise classifier 820 may be optimized through single back-propagation through the two-head architecture. there is.
  • the clean classifier 810 and the noise classifier 820 may share weights by sharing the same feature extractor.
  • the architecture of this embodiment does not share a linear classifier, since it is impractical to model both clean data distribution and noise data distribution with a single linear classifier.
  • a clean classifier and a noise classifier are respectively and ( (equivalent to) is defined as the final objective function Can be generated as shown in Equation 7 below.
  • Equation 7 above Is a hyper parameter and is a loss balancing factor.
  • hyperparameter is the classifier is introduced into the objective function to prevent overfitting, and experiments are conducted to find the optimal value.
  • the prior art requires a plurality of learning steps, which lowers the learning efficiency.
  • the aforementioned MAML has been widely used for sample re-weighting, label correction, and label conversion matrix estimation.
  • this approach first, a virtual update is performed with a noisy data set, optimal parameters are found using a clean data set, and real parameters are updated with the found parameters.
  • This hypothetical update process requires backpropagation three times per iteration, which at least triples the computational cost.
  • the processor may correct the noise labels included in the noise batch.
  • the processor may calibrate the noise label in each iteration, so that the noise classifier that learns the noise data may also be updated in each iteration. Since the noise classifier is updated at every iteration, the conversion matrix used to learn the clean classifier can also be estimated differently at every iteration. That is, in the present disclosure, one of the problems of the prior art, that the model learns an erroneously calibrated label as a ground truth label, can be solved.
  • the processor determines the input included in the batch of noise, represented by a probability vector.
  • Output data of clean classifier for The label may be corrected based on a comparison result between values of elements included in and a threshold value.
  • a clean classifier for an input included in a noise batch formed from a noise data set as output data which is represented by a probability vector.
  • the largest of the elements in this probability vector is the threshold , the label corresponding to that element is corrected to a more probable label. Since this approach only relies on the most recent predictions of the model being trained, the decision to calibrate labels can change each time.
  • calibrated labels can be expressed as in Equation 8 below.
  • Equation 8 denotes the output data of the clean classifier, denotes a floor function, is the noise placement refers to the original label of
  • the probability vector used for label correction decision is the output data of the clean classifier for the input data included in the noise batch. , which is the clean classifier loss It is data that has already been calculated in the process of calculating . That is, according to the present disclosure, more efficient label correction is possible by using an already calculated value again.
  • the first linear classifier, the second linear classifier, and the feature extractor are shown as individual functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the clean classifier
  • the first linear classifier and feature extractor included in 810, the second linear classifier and feature extractor included in noise classifier 820, the clean classifier 810, and the noise classifier 820 included in the noise classifier 820 may be configured as one piece of hardware. .
  • the noise label learning method through efficient conversion matrix estimation according to an embodiment of the present disclosure described with reference to FIGS. 2 to 8 can be summarized as the algorithm shown in FIG. 9 .
  • FIG. 10 is a block diagram illustrating an apparatus for learning a noise label according to an exemplary embodiment.
  • the noise label learning apparatus 1000 performs the noise label learning method described above with reference to FIGS. 1 to 8 . Therefore, even if omitted below, those skilled in the art can easily understand that the above description of the method for learning a noise label with reference to FIGS. 1 to 8 can be equally applied to the noise label learning apparatus 1000. there is.
  • a noise label learning apparatus 1000 may include a processor 1010 and a memory 1020.
  • the memory 1020 is operably connected to the processor 1010 and stores at least one program for the processor 1010 to operate. In addition, the memory 1020 stores all data related to the contents described above with reference to FIGS. 1 to 8 , such as learning data, input data, and class information.
  • the memory 1020 may temporarily or permanently store data processed by the processor 1010 .
  • the memory 1020 may include magnetic storage media or flash storage media, but is not limited thereto.
  • the memory 1020 may include built-in memory and/or external memory, and may include volatile memory such as DRAM, SRAM, or SDRAM, one time programmable ROM (OTPROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, and NAND.
  • volatile memory such as flash memory or NOR flash memory, flash drives such as SSD, compact flash (CF) card, SD card, Micro-SD card, Mini-SD card, Xd card, or memory stick;
  • flash drives such as SSD, compact flash (CF) card, SD card, Micro-SD card, Mini-SD card, Xd card, or memory stick;
  • CF compact flash
  • SD card Secure Digital
  • Micro-SD card Micro-SD card
  • Mini-SD card Mini-SD card
  • Xd card or memory stick
  • it may include a storage device such as a HDD.
  • the processor 1010 performs the method of classifying the input data described above with reference to FIGS. 1 to 8 according to a program stored in the memory 1020 .
  • the processor 1010 forms a clean batch composed of one or more first input data included in the clean data set and one or more first labels corresponding to the one or more first input data included in the clean data set, and one or more second input data included in the noise data set and the corresponding one or more first labels. It is possible to form a noise batch consisting of one or more second labels.
  • the first input data is an input included in the clean batch.
  • the first label is clean label
  • the second input data is an input included in the noise batch
  • the second label is noise label of respond to
  • the clean batch includes (N * K) samples selected from the clean data set, N is the number of classes included in the clean data set, K is the number of samples selected from each of the classes, N and K may be a natural number greater than or equal to 1.
  • the noise batch is composed of (N * K) samples selected from the noise data set, and N and K may be natural numbers greater than or equal to 1.
  • the processor 1010 may estimate a conversion matrix based on the output data of the noise classifier for the first input data and the first label.
  • the output data of the noise classifier for the first input data is respond to
  • the processor 1010 may calculate a clean classifier loss based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, the second label, and the conversion matrix.
  • the output data of the clean classifier for the first input data is
  • the output data of the clean classifier for the second input data is respond to
  • the processor 1010 calculates the clean classifier loss based on the output data and the first label of the clean classifier for the first input data, and calculates the clean classifier loss for the second input data. Calculating a noise data-based loss based on the output data of , a conversion matrix, and a second label, and calculating a clean classifier loss based on the clean data-based loss and the noise-data-based loss.
  • the processor 1010 may calculate a noise classifier loss based on the output data of the noise classifier for the second input data and the second label.
  • the output data of the noise classifier for the second input data is respond to
  • the processor 1010 may calculate a noise classifier loss based on the output of the noise classifier for the second input data and the second label.
  • the processor 1010 may cause the clean classifier and the noise classifier to learn noise labels based on the clean classifier loss and the noise classifier loss.
  • the clean classifier may include a first linear classifier
  • the noise classifier may include a second linear classifier
  • the clean classifier and the noise classifier may share the same feature extractor.
  • the processor 1010 may optimize the parameters of the feature extractor, the parameters of the first linear classifier, and the parameters of the second linear classifier through single backpropagation.
  • the processor 1010 may correct a second label corresponding to the second input data. Specifically, correcting the second label by the processor 1010 generates a probability vector based on the output data of the clean classifier for the second input data, and determines the value of one or more elements included in the probability vector and the threshold value. and correcting the second label based on the comparison result.
  • the processor 1010 may refer to a data processing device embedded in hardware having a physically structured circuit to perform functions expressed by codes or instructions included in a program.
  • a microprocessor a central processing unit (CPU), a processor core, a multiprocessor, an application-specific ASIC Integrated circuit
  • a processing device such as a field programmable gate array (FPGA) may be included, but is not limited thereto.
  • FIG. 11 is a diagram for explaining an example in which a final model is utilized according to an embodiment.
  • FIG. 11 shows a network configuration diagram including a server 1110 and a plurality of terminals 1121 to 1124 according to an embodiment.
  • the server 1110 may be a mediation device that connects the plurality of terminals 1121 to 1124.
  • the server 1110 may provide a mediation service to transmit/receive data between a plurality of terminals 1121 to 1124 .
  • the server 1110 and the plurality of terminals 1121 to 1124 may be connected to each other through a communication network.
  • the server 1110 may transmit data to or receive data from a plurality of terminals 1121 to 1124 through a communication network.
  • the communication network may be implemented as one of a wired communication network, a wireless communication network, and a complex communication network.
  • the communication network may include mobile communication networks such as 3G, Long Term Evolution (LTE), LTE-A, and 5G.
  • the communication network may include a wired or wireless communication network such as Wi-Fi, Universal Mobile Telecommunications System (UMTS)/General Packet Radio Service (GPRS), or Ethernet.
  • UMTS Universal Mobile Telecommunications System
  • GPRS General Packet Radio Service
  • Communication networks include Magnetic Secure Transmission (MST), Radio Frequency IDentification (RFID), Near Field Communication (NFC), ZigBee, Z-Wave, Bluetooth, and Bluetooth Low Energy (BLE).
  • MST Magnetic Secure Transmission
  • RFID Radio Frequency IDentification
  • NFC Near Field Communication
  • ZigBee Z-Wave
  • Bluetooth Bluetooth Low Energy
  • the communication network may include a local area network such as infrared communication (IR, InfraRed communication).
  • the communication network may include a local area network (LAN), a metropolitan area network (MAN), or a wide area network (WAN).
  • LAN local area network
  • MAN metropolitan area network
  • WAN wide area network
  • Each of the plurality of terminals 1121 to 1124 may be implemented as one of a desktop computer, a laptop computer, a smart phone, a smart tablet, a smart watch, a mobile terminal, a digital camera, a wearable device, or a portable electronic device. Also, the plurality of terminals 1121 to 1124 may execute programs or applications.
  • the plurality of terminals 1121 to 1124 may execute an application capable of receiving mediation services.
  • the mediation service means that users of the plurality of terminals 1121 to 1124 perform video calls and/or voice calls with each other.
  • the server 1110 may perform various classification tasks. For example, the server 1110 may classify users into predetermined classes based on information provided from users of the plurality of terminals 1121 to 1124 . In particular, when the server 1110 receives individual face images from people subscribed to the mediation service (ie, users of the plurality of terminals 1121 to 1124), the server 1110 converts the face images for various purposes. It can be classified into a certain class.
  • the predetermined class may be a class set based on a person's gender or a class set based on a person's age.
  • the classification model of the present disclosure may be used by server 1110 to filter abusing elements. Specifically, when the server 1110 receives an image from a user subscribed to a mediation service (ie, a plurality of terminals 1121 to 1124), the server 1110 may classify the received image into a predetermined class. At this time, a predetermined class may be set based on the abusing element. For example, in response to determining that the received image includes an abusing element, the server 1110 may classify and label the received image as an 'abusing class'.
  • a mediation service ie, a plurality of terminals 1121 to 1124
  • an abusive element may refer to an element that needs to be prevented from being displayed, such as a harmful element, an element against public order and morals, a sadistic element, a sexual element, an element inappropriate for minors, and the like.
  • the server 1110 may stop data transmission/reception regarding an image classified as containing the abusing element according to the inclusion of the abusing element, or may block service use of a terminal that has transmitted the image.
  • the server 1110 may request an additional authentication procedure to transmit/receive data about an image classified as containing an abusing element.
  • the final model generated according to the method described above with reference to FIGS. 1 to 8 is stored in the server 1110, and the server 1110 can accurately classify the image into a predetermined class.
  • a classification model capable of accurately classifying the input data into a predetermined class regardless of the distribution of the input data can be created.
  • the above-described method can be written as a program that can be executed on a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium.
  • the structure of data used in the above-described method can be recorded on a computer-readable recording medium through various means.
  • the computer-readable recording medium includes storage media such as magnetic storage media (eg, ROM, RAM, USB, floppy disk, hard disk, etc.) and optical reading media (eg, CD-ROM, DVD, etc.) do.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Image Analysis (AREA)

Abstract

A method for learning noisy labels according to a first mode comprises the steps of: estimating a transition matrix on the basis of output data of a noise classifier for first input data and a first label corresponding to the first input data; calculating the loss of a clean classifier on the basis of output data of the clean classifier for the first input data, output data of the clean classifier for second input data, the first label, a second label corresponding to the second input data, and the transition matrix; calculating the loss of the noise classifier on the basis of output data of the noise classifier for the second input data, and the second label; and training the clean classifier and the noise classifier on the basis of the loss of the clean classifier and the loss of the noise classifier.

Description

효율적인 전환 매트릭스 추정을 통한 노이즈 레이블을 학습하는 방법 및 장치Method and apparatus for learning noise labels through efficient conversion matrix estimation
본 개시는 효율적인 전환 매트릭스 추정을 통한 노이즈 레이블을 학습하는 방법 및 장치에 관한 것이다.The present disclosure relates to a method and apparatus for learning noise labels through efficient conversion matrix estimation.
근래에, 딥 러닝(deep learning) 기술과 결합하여 입력 데이터를 소정의 클래스(class)로 분류하는 기술이 발전하고 있다. 분류기(또는, 분류 모델)은 입력 데이터가 어느 클래스에 속하는지를 결정하고, 만약 입력 데이터가 기 설정된 클래스들 중 어느 것에 속하지 않더라도, 기 설정된 클래스들 중 가장 유사한 클래스로 입력 데이터를 분류한다.Recently, a technique of classifying input data into a predetermined class by combining with a deep learning technique has been developed. The classifier (or classification model) determines which class the input data belongs to, and classifies the input data into the most similar class among the preset classes even if the input data does not belong to any of the preset classes.
한편, 분류기는 입력 데이터를 분류한 결과와 입력 데이터에 대한 레이블(label)에 기초하여 학습을 수행하는데, 입력 데이터에 대한 레이블링이 잘못된 경우, 즉 노이즈 레이블을 학습하는 경우, 분류 모델의 성능이 감소할 수 있다. 클린 레이블만으로 분류 모델을 학습시키는 것은 양적(quantitative) 한계와 같은 제한이 있기 때문에, 노이즈 레이블을 학습하는 방법에 대한 다양한 연구가 이루어지고 있다.On the other hand, the classifier performs learning based on the result of classifying the input data and the label of the input data. When the labeling of the input data is incorrect, that is, when a noise label is learned, the performance of the classification model decreases. can do. Since training a classification model with only clean labels has limitations such as quantitative limitations, various studies on how to learn noise labels have been conducted.
본 개시의 목적은 효율적인 전환 매트릭스 추정을 통한 노이즈 레이블 학습 방법 및 장치를 제공하는 데 있다. 본 개시가 해결하고자 하는 과제는 이상에서 언급한 과제에 한정되지 않으며, 언급되지 않은 본 개시의 다른 과제 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 개시의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 개시가 해결하고자 하는 과제 및 장점들은 특허 청구범위에 나타난 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.An object of the present disclosure is to provide a method and apparatus for learning noise labels through efficient conversion matrix estimation. The problems to be solved by the present disclosure are not limited to the above-mentioned problems, and other problems and advantages of the present disclosure that are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present disclosure. It will be. In addition, it will be appreciated that the problems and advantages to be solved by the present disclosure can be realized by the means and combinations indicated in the claims.
본 개시의 제 1 측면에 따른 노이즈 레이블을 학습하는 방법은, 제 1 입력 데이터에 대한 노이즈 분류기(classifier)의 출력 데이터 및 상기 제 1 입력 데이터에 대응하는 제 1 레이블에 기초하여 전환 매트릭스(transition matrix)를 추정하는 단계; 상기 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터, 상기 제 1 레이블, 상기 제 2 입력 데이터에 대응하는 제 2 레이블 및 상기 전환 매트릭스에 기초하여 클린 분류기 손실을 계산하는 단계; 상기 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 상기 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산하는 단계; 및 상기 클린 분류기 손실 및 상기 노이즈 분류기 손실에 기초하여 상기 클린 분류기 및 상기 노이즈 분류기가 노이즈 레이블을 학습하도록 하는 단계;를 포함한다.A method for learning a noise label according to a first aspect of the present disclosure includes a transition matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data. ) estimating; Clean based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix. calculating classifier loss; calculating a noise classifier loss based on the output data of the noise classifier for the second input data and the second label; and allowing the clean classifier and the noise classifier to learn a noise label based on the clean classifier loss and the noise classifier loss.
본 개시의 제 2 측면에 따른 컴퓨터로 읽을 수 있는 기록매체는, 상술한 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체를 포함한다. A computer-readable recording medium according to a second aspect of the present disclosure includes a recording medium on which a program for executing the method described above is recorded on a computer.
본 개시의 제 3 측면에 따른 노이즈 레이블을 학습하는 장치는, 적어도 하나의 프로그램이 저장된 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 동작하는 프로세서;를 포함하되, 상기 프로세서는 제 1 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 상기 제 1 입력 데이터에 대응하는 제 1 레이블에 기초하여 전환 매트릭스를 추정하며, 상기 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터, 상기 제 1 레이블, 상기 제 2 입력 데이터에 대응하는 제 2 레이블 및 상기 전환 매트릭스에 기초하여 클린 분류기 손실을 계산하고, 상기 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 상기 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산하며, 상기 클린 분류기 손실 및 상기 노이즈 분류기 손실에 기초하여 상기 클린 분류기 및 상기 노이즈 분류기가 노이즈 레이블을 학습하도록 한다. An apparatus for learning a noise label according to a third aspect of the present disclosure includes a memory in which at least one program is stored; and a processor operating by executing the at least one program, wherein the processor estimates a conversion matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data. and based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix. to calculate a clean classifier loss, calculate a noise classifier loss based on the output data of the noise classifier for the second input data and the second label, and calculate the clean classifier loss based on the clean classifier loss and the noise classifier loss and cause the noise classifier to learn noise labels.
효율적으로 레이블 전환 매트릭스(transition matrix)를 추정하고, 추정된 전환 매트릭스를 통해 클린 레이블뿐만 아니라 노이즈 레이블 또한 이용하여 분류기를 효과적으로 학습시킬 수 있다. 전환 매트릭스가 적응형으로(adaptively) 추정되고, 이에 따라, 분류기가 이미 보정된 레이블을 포함할 수 있는 샘플을 맹목적으로 신뢰하지 않아, 오보정(miscorrection)과 관련된 문제를 방지할 수 있다. 또한, 투-헤드 아키텍처를 도입함으로써, 단일 역전파를 통해 레이블 전환 매트릭스를 효율적으로 추정하고 빠른 속도로 분류기를 학습시킬 수 있다. 또한, 매 이터레이션마다 노이즈 레이블을 학습시키면서 계속해서 실시간으로 노이즈 레이블을 보정할 수 있다. A label transition matrix can be efficiently estimated, and a classifier can be effectively trained using not only clean labels but also noise labels through the estimated transition matrix. The conversion matrix is estimated adaptively, so that the classifier does not blindly trust samples that may contain already corrected labels, avoiding problems related to miscorrection. In addition, by introducing the two-head architecture, it is possible to efficiently estimate the label switching matrix through a single backpropagation and to train the classifier at high speed. In addition, the noise label can be continuously corrected in real time while learning the noise label at every iteration.
도 1은 입력 데이터를 적어도 하나의 클래스로 분류하는 일 예를 설명하기 위한 도면이다.1 is a diagram for explaining an example of classifying input data into at least one class.
도 2는 일 실시예에 따른 노이즈 레이블을 학습하는 방법의 일 예시를 도시한 흐름도이다.2 is a flowchart illustrating an example of a method of learning a noise label according to an embodiment.
도 3은 일 실시예에 따른 프로세서가 클린 배치 및 노이즈 배치를 형성하는 것을 도시하는 개략도이다. 3 is a schematic diagram illustrating a processor forming a clean batch and a noise batch according to an embodiment.
도 4는 일 실시예에 따른 프로세서가 전환 매트릭스를 추정하는 과정을 도시하는 개략도이다. 4 is a schematic diagram illustrating a process of estimating a conversion matrix by a processor according to an embodiment.
도 5는 일 실시예에 따른 프로세서가 클린 분류기 손실을 계산하는 과정을 도시하는 개략도이다. 5 is a schematic diagram illustrating a process of calculating a clean classifier loss by a processor according to an embodiment.
도 6은 일 실시예에 따른 프로세서가 노이즈 분류기 손실을 계산하는 과정을 도시하는 개략도이다.6 is a schematic diagram illustrating a process of calculating a noise classifier loss by a processor according to an embodiment.
도 7은 일 실시예에 따른 프로세서가 클린 분류기 및 노이즈 분류기의 파라미터를 최적화하는 과정을 도시하는 개략도이다. 7 is a schematic diagram illustrating a process of optimizing parameters of a clean classifier and a noise classifier by a processor according to an embodiment.
도 8은 일 실시예에 따른 투-헤드 아키텍처(two-head architecture)를 도시하는 개략도이다. 8 is a schematic diagram illustrating a two-head architecture according to one embodiment.
도 9는 본 개시의 효율적인 전환 매트릭스 추정을 통한 노이즈 레이블 학습 방법을 요약하는 알고리즘을 나타낸다.9 shows an algorithm summarizing the noise label learning method through efficient conversion matrix estimation of the present disclosure.
도 10은 일 실시예에 따른 노이즈 레이블을 학습하는 장치를 도시한 블록도이다. 10 is a block diagram illustrating an apparatus for learning a noise label according to an exemplary embodiment.
도 11은 일 실시예에 따른 최종 모델이 활용되는 일 예를 설명하기 위한 도면이다.11 is a diagram for explaining an example in which a final model is utilized according to an embodiment.
제 1 측면에 따른 노이즈 레이블을 학습하는 방법은, 제 1 입력 데이터에 대한 노이즈 분류기(classifier)의 출력 데이터 및 상기 제 1 입력 데이터에 대응하는 제 1 레이블에 기초하여 전환 매트릭스(transition matrix)를 추정하는 단계; 상기 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터, 상기 제 1 레이블, 상기 제 2 입력 데이터에 대응하는 제 2 레이블 및 상기 전환 매트릭스에 기초하여 클린 분류기 손실을 계산하는 단계; 상기 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 상기 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산하는 단계; 및 상기 클린 분류기 손실 및 상기 노이즈 분류기 손실에 기초하여 상기 클린 분류기 및 상기 노이즈 분류기를 학습시키는 단계;를 포함한다.A method for learning a noise label according to the first aspect includes estimating a transition matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data. doing; Clean based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix. calculating classifier loss; calculating a noise classifier loss based on the output data of the noise classifier for the second input data and the second label; and training the clean classifier and the noise classifier based on the clean classifier loss and the noise classifier loss.
본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 아래에서 제시되는 실시예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 개시의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시예들은 본 개시가 완전하도록 하며, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 개시를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Advantages and features of the present disclosure, and methods of achieving them, will become clear with reference to the detailed description of embodiments taken in conjunction with the accompanying drawings. However, it should be understood that the present disclosure is not limited to the embodiments presented below, but may be implemented in various different forms, and includes all conversions, equivalents, and substitutes included in the spirit and technical scope of the present disclosure. do. The embodiments presented below are provided to make this disclosure complete, and to fully inform those skilled in the art of the scope of the invention to which this disclosure belongs. In describing the present disclosure, if it is determined that a detailed description of related known technologies may obscure the gist of the present disclosure, the detailed description will be omitted.
실시예들에서 사용되는 용어는 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 명세서의 전반에 걸친 내용을 토대로 정의되어야 한다.The terms used in the embodiments have been selected from general terms that are currently widely used as much as possible, but they may vary depending on the intention of a person skilled in the art or a precedent, the emergence of new technologies, and the like. In addition, in a specific case, there are also terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the corresponding description. Therefore, terms used in the specification should be defined based on the meaning of the term and the overall content of the specification, not simply the name of the term.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 개시를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. Terms used in this application are only used to describe specific embodiments, and are not intended to limit the present disclosure. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, the terms "include" or "have" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other features It should be understood that the presence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded.
또한, 명세서에서 사용되는 "제 1" 또는 "제 2" 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다.Also, terms including ordinal numbers such as “first” or “second” used in the specification may be used to describe various components, but the components should not be limited by the terms. The terms may be used for the purpose of distinguishing one component from another.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. "매커니즘", "요소", "수단" 및 "구성"등과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다.Some embodiments of the present disclosure may be represented as functional block structures and various processing steps. Some or all of these functional blocks may be implemented as a varying number of hardware and/or software components that perform specific functions. For example, functional blocks of the present disclosure may be implemented by one or more microprocessors or circuit configurations for a predetermined function. Also, for example, the functional blocks of this disclosure may be implemented in various programming or scripting languages. Functional blocks may be implemented as an algorithm running on one or more processors. In addition, the present disclosure may employ prior art for electronic environment setting, signal processing, and/or data processing. Terms such as "mechanism", "element", "means" and "component" may be used broadly and are not limited to mechanical and physical components.
본 출원은 한국 특허출원 제10-2021-0150892호에 연속된 출원이다. 따라서, 본 명세서에서 기술될 내용은 한국 특허출원 제10-2021-0150892호의 내용에 기반한다. 따라서, 한국 특허출원 제10-2021-0150892호에 기재된 내용은 본 명세서에 의하여 기술될 발명을 이해하는데 참고가 될 수 있으며, 이하에서 생략되었다고 하더라도, 한국 특허출원 제10-2021-0150892호에 기재된 내용은 본 명세서에 의하여 기술될 발명에 채용될 수 있다.This application is a continuation of Korean Patent Application No. 10-2021-0150892. Therefore, the contents to be described in this specification are based on the contents of Korean Patent Application No. 10-2021-0150892. Therefore, the contents described in Korean Patent Application No. 10-2021-0150892 can be a reference for understanding the invention to be described by this specification, and even if omitted below, the contents described in Korean Patent Application No. 10-2021-0150892 The content can be employed in the invention to be described by this specification.
이하에서는 도면을 참조하여 본 개시의 실시예들을 상세히 설명한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings.
도 1은 입력 데이터를 적어도 하나의 클래스로 분류하는 일 예를 설명하기 위한 도면이다.1 is a diagram for explaining an example of classifying input data into at least one class.
도 1에는 입력 데이터(110), 분류기(분류 모델)(120) 및 분류 결과(130)의 일 예가 도시되어 있다. 도 1에는 입력 데이터(110)가 총 3개의 클래스(class)들로 분류되는 것으로 도시되어 있으나, 클래스의 수는 도 1의 예시로 한정되지 않는다.1 shows an example of input data 110, a classifier (classification model) 120, and a classification result 130. Although FIG. 1 shows that the input data 110 is classified into a total of three classes, the number of classes is not limited to the example of FIG. 1 .
입력 데이터(110)의 종류에는 제한이 없다. 예를 들어, 입력 데이터(110)는 이미지, 텍스트, 음성 등 다양한 종류의 데이터에 해당될 수 있다.The type of input data 110 is not limited. For example, the input data 110 may correspond to various types of data such as images, texts, and voices.
분류기(120)는 입력 데이터(110)가 특정 클래스로 분류될 확률을 연산할 수 있다. 예를 들어, 분류기(120)은 소프트맥스 함수(Softmax function) 및 크로스 엔트로피(cross entropy)를 이용하여 입력 데이터가 분류될 확률을 각각의 클래스에 대하여 연산할 수 있다.The classifier 120 may calculate a probability that the input data 110 is classified into a specific class. For example, the classifier 120 may calculate a probability that input data is classified for each class using a softmax function and cross entropy.
예를 들어, 입력 데이터(110)가 이미지이고, 제1 클래스가 남자, 제2 클래스가 여자라고 가정하면, 분류기(120)는 입력된 이미지를 제1 클래스 또는 제2 클래스로 분류한다. 만약, 입력 데이터(110)가 동물 이미지인 경우에도, 분류기(120)는 입력된 이미지를 제 1 클래스와 제 2 클래스 중 더 유사한 것으로 판단된 클래스로 분류한다.For example, assuming that the input data 110 is an image, the first class is male, and the second class is female, the classifier 120 classifies the input image into a first class or a second class. Even if the input data 110 is an animal image, the classifier 120 classifies the input image into a class determined to be more similar among the first class and the second class.
한편, 분류기(120)는 학습 데이터에 의하여 학습될 수 있다. 분류기(120)는, 분류기(120)로부터 출력된 결과와 실제의 정답 사이의 오차가 감소되는 방향으로 학습될 수 있다. Meanwhile, the classifier 120 may be learned by learning data. The classifier 120 may be trained in a direction in which an error between a result output from the classifier 120 and an actual correct answer is reduced.
종래에, 지도 학습(supervised learning)은 방대한 양의 어노테이션된(annotated) 데이터를 이용함으로써, 많은 성과를 달성하여 이미지 분류(image classification), 객체 검출(object detection) 및 안면 인식(face recognition)과 같은 다양한 분류 작업을 해결할 수 있다. 어노테이션된 데이터의 크기가 커지면 지도 학습 기반 분류 모델의 성능이 개선된다는 것은 이론적 및 경험적으로 증명되어왔다. 하지만, 모든 데이터가 세밀하게 어노테이션될 수 없으므로 노이즈 레이블을 회피하는 것은 불가능하다. Conventionally, supervised learning achieves many achievements by using a vast amount of annotated data, such as image classification, object detection and face recognition. It can solve various classification tasks. It has been theoretically and empirically proven that the performance of supervised learning-based classification models improves as the size of the annotated data increases. However, it is impossible to avoid noise labels since not all data can be finely annotated.
노이즈 레이블에 강건한(robust) 분류기(classifier)를 설계하는 많은 방법이 제안되어왔다. 모든 주어진 레이블이 잠재적으로 오염된 것으로 가정하는 전통적인 방법과 달리, 최근에 제안된 방법은 비용을 많이 들이지 않고 획득된 작은 클린 데이터 셋을 활용하여 분류기의 성능을 더 개선시킨다. 클린 데이터 셋에 기초하여, 손실 보정(loss correction) 방법은 손실 함수를 수정함으로써 노이즈 레이블의 영향을 감소시키고, 재가중(re-weighting) 방법은 노이즈 레이블이 될 가능성이 있는 샘플에 페널티 적용(penalize)을 한다. 특히, 최근 레이블 보정 방법은 MAML(model-agnostic meta-learning)에 기초하여 두드러진 성능을 달성할 수 있다. 이러한 방법은 노이즈 레이블을 다시 레이블링하여 노이즈 레벨을 직접 감소시켜, 예측 성능의 이론적인 상한선을 높인다. Many methods have been proposed to design classifiers that are robust to noise labels. Unlike traditional methods that assume that every given label is potentially contaminated, the recently proposed method further improves the performance of the classifier by utilizing a small, inexpensively acquired clean data set. Based on a clean data set, the loss correction method reduces the influence of noise labels by modifying the loss function, and the re-weighting method penalizes samples that are likely to be noisy labels. ) do. In particular, recent label correction methods can achieve remarkable performance based on model-agnostic meta-learning (MAML). This method directly reduces the noise level by re-labeling the noise labels, raising the theoretical upper limit of prediction performance.
하지만, MAML 기반 레이블 보정 방법은 두가지 문제가 있다. 하나는 MAML 기반 레이블 보정 방법이 앞서 잘못 보정된 레이블을 맹목적으로 신뢰한다는 것이다. 잘못 보정된 레이블은 학습 동안 유지되는 경우가 많으며, 이는 모델이 잘못 보정된 레이블을 그라운드 트루스(ground-truth) 레이블로 학습하게 한다. 다른 하나는 MAML 기반 레이블 보정 방법은 본질적으로 학습 속도가 느려, 과도한 계산 오버헤드(overhead)가 발생한다는 것이다. 이러한 비효율성은, MAML 기반 레이블 보정 방법이 노이즈 데이터 셋으로 가상 업데이트를 수행하고, 클린 데이터 셋을 이용하여 최적의 파라미터를 찾으며, 찾은 파라미터로 실제 파라미터를 업데이트하는 단계를 포함함으로써, 단일 이터레이션(iteration)당 복수의 학습 단계를 가지는 것으로부터 비롯된다. However, the MAML-based label correction method has two problems. One is that MAML-based label calibration methods blindly trust previously miscalibrated labels. Miscalibrated labels are often retained during training, which causes the model to learn miscalibrated labels as ground-truth labels. The other is that MAML-based label correction methods are inherently slow to learn, resulting in excessive computational overhead. This inefficiency is due to the fact that the MAML-based label correction method involves performing a virtual update with a noisy data set, finding optimal parameters using a clean data set, and updating real parameters with the found parameters, resulting in a single iteration ( It comes from having multiple training steps per iteration.
이러한 문제를 완화하기 위해 본 개시는 FasTEN(Fast Transition Matrix Estimation for Learning with Noisy Labels)이라는 강건하고 효율적인 방법을 제시한다. FasTEN은 효율적으로 전환 매트릭스(transition matrix)를 추정하여 노이즈 레이블을 학습하고, 동시에 계속해서 실시간으로 이를 보정한다. To alleviate this problem, the present disclosure presents a robust and efficient method called Fast Transition Matrix Estimation for Learning with Noisy Labels (FasTEN). FasTEN learns noise labels by efficiently estimating the transition matrix, while continuously correcting them in real time.
이하에서, 본 개시에서 제시하는 FasTEN이라는 방법을 기반으로 한 효율적인 전환 매트릭스 추정을 통한 노이즈 레이블 학습에 대하여 도 2 내지 도 8을 참조하여 상세히 설명한다. Hereinafter, noise label learning through efficient conversion matrix estimation based on a method called FasTEN proposed in the present disclosure will be described in detail with reference to FIGS. 2 to 8 .
도 2는 일 실시예에 따른 노이즈 레이블을 학습하는 방법의 일 예시를 도시한 흐름도이다. 2 is a flowchart illustrating an example of a method of learning a noise label according to an embodiment.
도 2에 도시된 동작들은 후술할 노이즈 레이블 학습 장치에 의하여 실행될 수 있다. 구체적으로, 도 2에 도시된 노이즈 레이블을 학습하는 방법은 도 10에 도시된 프로세서에 의하여 실행될 수 있다.The operations shown in FIG. 2 may be executed by a noise label learning apparatus to be described later. Specifically, the method of learning the noise label shown in FIG. 2 may be executed by the processor shown in FIG. 10 .
단계 210 이전에, 프로세서는 클린 데이터 셋에 포함된 하나 이상의 제 1 입력 데이터와 이에 대응하는 하나 이상의 제 1 레이블로 구성된 클린 배치를 형성하고, 노이즈(noise) 데이터 셋에 포함된 하나 이상의 제 2 입력 데이터와 이에 대응하는 하나 이상의 제 2 레이블로 구성된 노이즈 배치를 형성할 수 있다. Before step 210, the processor forms a clean batch composed of one or more first input data included in the clean data set and one or more first labels corresponding to the one or more first input data included in the clean data set, and one or more second input data included in the noise data set A noise array composed of data and one or more second labels corresponding thereto may be formed.
클린 데이터 셋은 복수의 제 1 입력 데이터와 복수의 제 1 입력 데이터 각각에 대응하는 복수의 제 1 레이블을 포함한다. 다시 말해, 클린 데이터 셋에는 제 1 입력 데이터 및 이에 매칭된 제 1 레이블이 복수 개 포함된다. 여기에서, 클린 데이터 셋에 포함된 복수의 제 1 레이블은 복수의 제 1 입력 데이터 각각에 대하여 전부 정확하게 레이블링되어있다. The clean data set includes a plurality of first input data and a plurality of first labels respectively corresponding to the plurality of first input data. In other words, the clean data set includes a plurality of first input data and first labels matched thereto. Here, all of the plurality of first labels included in the clean data set are accurately labeled for each of the plurality of first input data.
노이즈 데이터 셋은 복수의 제 2 입력 데이터와 복수의 제 2 입력 데이터 각각에 대응하는 복수의 제 2 레이블을 포함한다. 다시 말해, 노이즈 데이터 셋에는 제 2 입력 데이터 및 이에 매칭된 제 2 레이블이 복수 개 포함된다. 여기에서, 노이즈 데이터 셋에 포함된 복수의 제 2 레이블은 복수의 제 2 입력 데이터 각각에 대하여 적어도 일부는 부정확하게 레이블링되어있다. 다시 말해, 복수의 제 2 레이블 중 일부는 복수의 제 2 입력 데이터 각각에 대하여 부정확하게 레이블링되어있다. The noise data set includes a plurality of second input data and a plurality of second labels respectively corresponding to the plurality of second input data. In other words, the noise data set includes a plurality of second input data and second labels matched thereto. Here, at least some of the plurality of second labels included in the noise data set are incorrectly labeled for each of the plurality of second input data. In other words, some of the plurality of second labels are incorrectly labeled for each of the plurality of second input data.
클린 배치 및 노이즈 배치는 각각 클린 데이터 셋 및 노이즈 데이터 셋에서 무작위로 선택되어 구성될 수 있다. 예를 들어, 클린 배치의 크기와 노이즈 배치의 크기는 동일하게 설정될 수 있으나, 이에 한정되지 않는다. A clean batch and a noise batch may be configured by randomly selecting from the clean data set and the noise data set, respectively. For example, the size of the clean batch and the size of the noise batch may be set to be the same, but are not limited thereto.
프로세서가 클린 배치 및 노이즈 배치를 형성하는 구체적인 예시는 도 3을 참조하여 후술한다.A specific example of how the processor forms a clean batch and a noise batch will be described later with reference to FIG. 3 .
단계 210에서, 프로세서는 제 1 입력 데이터에 대한 노이즈 분류기(classifier)의 출력 데이터 및 제 1 레이블에 기초하여 전환 매트릭스(transition matrix)를 추정할 수 있다. In operation 210, the processor may estimate a transition matrix based on the output data of the noise classifier for the first input data and the first label.
노이즈 분류기는 노이즈 데이터 셋을 이용하여 학습되는 분류기를 지칭한다. 노이즈 분류기는 선형 분류기와 특징 추출기를 포함할 수 있다. 노이즈 분류기는 전환 매트릭스를 추정하는 데 사용되며, 추정된 전환 매트릭스는 노이즈 레이블을 학습하는 데 사용된다. A noise classifier refers to a classifier that is learned using a noisy data set. A noise classifier may include a linear classifier and a feature extractor. A noise classifier is used to estimate a transition matrix, and the estimated transition matrix is used to learn noise labels.
프로세서가 전환 매트릭스를 추정하는 구체적인 예시는 도 4를 참조하여 후술한다.A specific example of the processor estimating the conversion matrix will be described later with reference to FIG. 4 .
단계 220에서, 프로세서는 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 2 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 1 레이블, 제 2 레이블 및 전환 매트릭스에 기초하여 클린 분류기 손실을 계산할 수 있다.In step 220, the processor may calculate a clean classifier loss based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, the second label, and the conversion matrix. .
클린 분류기는, 후술할 바와 같이, 클린 데이터 셋뿐만 아니라 노이즈 데이터 셋 또한 이용하여 학습된다. 클린 분류기 손실은 클린 분류기를 학습시키는 데 사용되는 값으로서, 일 실시예에서, 클린 데이터 기반 손실과 노이즈 데이터 기반 손실에 기초하여 계산될 수 있다. 클린 분류기는, 노이즈 분류기와 마찬가지로, 선형 분류기와 특징 추출기를 포함할 수 있다.As will be described later, the clean classifier is trained using not only the clean data set but also the noise data set. The clean classifier loss is a value used to train the clean classifier and, in an embodiment, may be calculated based on a loss based on clean data and a loss based on noise data. A clean classifier, like a noise classifier, may include a linear classifier and a feature extractor.
프로세서가 클린 분류기 손실을 계산하는 구체적인 예시는 도 5를 참조하여 후술한다.A specific example of how the processor calculates the clean classifier loss will be described later with reference to FIG. 5 .
단계 230에서, 프로세서는 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산할 수 있다.In operation 230, the processor may calculate a noise classifier loss based on the second label and output data of the noise classifier for the second input data.
전술한 바와 같이, 노이즈 분류기는 노이즈 데이터 셋을 이용하여 학습되는 분류기이고, 노이즈 분류기를 학습시키는 데 노이즈 분류기 손실이 사용된다. 구체적으로는, 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 제 2 레이블에 기초하여 노이즈 분류기 손실이 계산될 수 있다. As described above, the noise classifier is a classifier that is learned using a noisy data set, and the noise classifier loss is used to train the noise classifier. Specifically, the noise classifier loss may be calculated based on the output data of the noise classifier for the second input data and the second label.
프로세서가 노이즈 분류기 손실을 계산하는 구체적인 예시는 도 6을 참조하여 후술한다.A specific example of how the processor calculates the noise classifier loss will be described later with reference to FIG. 6 .
단계 240에서, 프로세서는 클린 분류기 손실 및 상기 노이즈 분류기 손실에 기초하여 상기 클린 분류기 및 상기 노이즈 분류기가 노이즈 레이블을 학습하도록 할 수 있다. In step 240, the processor may cause the clean classifier and the noise classifier to learn a noise label based on the clean classifier loss and the noise classifier loss.
앞의 단계에서 계산된 클린 분류기 손실 및 노이즈 분류기 손실에 기초하여 클린 분류기 및 노이즈 분류기를 학습시킬 수 있다. 본 개시에서, 클린 분류기 및 노이즈 분류기는 특징 추출기를 공유하는 투-헤드 아키텍처를 구성할 수 있고, 투-헤드 아키텍처를 통해, 단일 역전파를 통한 효율적인 학습이 실현될 수 있다. A clean classifier and a noise classifier may be trained based on the clean classifier loss and the noise classifier loss calculated in the previous step. In the present disclosure, a clean classifier and a noise classifier may constitute a two-head architecture sharing a feature extractor, and through the two-head architecture, efficient learning through a single backpropagation may be realized.
프로세서가 클린 분류기 및 노이즈 분류기가 노이즈 레이블을 학습하도록 하는 구체적인 예시는 도 7 및 도 8을 참조하여 후술한다.A specific example of allowing the processor to learn the noise label for the clean classifier and the noise classifier will be described later with reference to FIGS. 7 and 8 .
도 3은 일 실시예에 따른 프로세서가 클린 배치 및 노이즈 배치를 형성하는 것을 도시하는 개략도이다. 3 is a schematic diagram illustrating a processor forming a clean batch and a noise batch according to an embodiment.
도 3을 참조하면, 데이터 셋(310)으로부터 하나의 이터레이션을 위해 사용되는 배치(320)가 형성될 수 있다. 다시 말해, 데이터 셋(310)은 복수의 배치들로 분할될 수 있고 그 중 하나인 배치(320)가 하나의 이터레이션을 위해 사용될 수 있다. 데이터 셋(310)은 분류기(분류 모델)의 학습을 위해 사용되는 데이터의 집합이다. 데이터 셋(310)은 복수의 입력 데이터와 이에 대응하는 복수의 레이블로 구성될 수 있다. 따라서, 배치(320) 또한 하나 이상의 입력 데이터와 이에 대응하는 하나 이상의 레이블로 구성될 수 있다. Referring to FIG. 3 , a batch 320 used for one iteration may be formed from a data set 310 . In other words, the data set 310 can be divided into multiple batches, and one batch 320 can be used for one iteration. The data set 310 is a set of data used for learning a classifier (classification model). The data set 310 may include a plurality of input data and a plurality of labels corresponding thereto. Accordingly, batch 320 may also consist of one or more input data and one or more labels corresponding thereto.
데이터 셋(310)은 클린 데이터 셋일 수도 있고, 노이즈 데이터 셋일 수도 있다. 즉, 클린 데이터 셋으로부터 클린 배치가 형성될 수 있고, 노이즈 데이터 셋으로부터 노이즈 배치가 형성될 수 있다. The data set 310 may be a clean data set or a noise data set. That is, a clean batch may be formed from a clean data set, and a noise batch may be formed from a noise data set.
일 실시예에서, 레이블 전환 매트릭스의 효율적인 추정을 위해, 프로세서는 클래스마다 동일한 수의 샘플을 갖도록 배치를 형성할 수 있다. 일 실시예에서, 프로세서는 클린 데이터 셋에서 N개의 클래스 각각으로부터 무작위로 K개의 샘플을 선택하여 클린 배치를 구성할 수 있다(N 및 K는 1 이상의 자연수임). 각 샘플은 입력 데이터와 입력 데이터에 대응하는 클린 레이블로 구성된다. 예를 들어, 클린 배치는 아래의 수학식 1에 따라 구성될 수 있다. In one embodiment, for efficient estimation of the label conversion matrix, the processor may form batches to have the same number of samples per class. In one embodiment, the processor may construct a clean batch by randomly selecting K samples from each of the N classes in the clean data set (where N and K are natural numbers greater than or equal to 1). Each sample consists of input data and clean labels corresponding to the input data. For example, a clean batch may be constructed according to Equation 1 below.
Figure PCTKR2022016182-appb-img-000001
Figure PCTKR2022016182-appb-img-000001
위 수학식 1에서,
Figure PCTKR2022016182-appb-img-000002
는 클린 배치를 지칭하고,
Figure PCTKR2022016182-appb-img-000003
는 입력을 지칭하며,
Figure PCTKR2022016182-appb-img-000004
Figure PCTKR2022016182-appb-img-000005
의 클린 레이블을 지칭한다.
In Equation 1 above,
Figure PCTKR2022016182-appb-img-000002
denotes a clean batch,
Figure PCTKR2022016182-appb-img-000003
denotes an input,
Figure PCTKR2022016182-appb-img-000004
Is
Figure PCTKR2022016182-appb-img-000005
refers to the clean label of
일 실시예에서, 프로세서는 노이즈 데이터 셋에서 무작위로 M개의 샘플을 선택하여 노이즈 배치를 구성할 수 있다. 각 샘플은 입력 데이터와 입력 데이터에 대응하는 노이즈 레이블로 구성된다. 예를 들어, 노이즈 배치는 아래의 수학식 2에 따라 구성될 수 있다.In one embodiment, the processor may configure the noise batch by randomly selecting M samples from the noise data set. Each sample consists of input data and a noise label corresponding to the input data. For example, the noise arrangement may be configured according to Equation 2 below.
Figure PCTKR2022016182-appb-img-000006
Figure PCTKR2022016182-appb-img-000006
위 수학식 2에서,
Figure PCTKR2022016182-appb-img-000007
는 노이즈 배치를 지칭하고,
Figure PCTKR2022016182-appb-img-000008
는 입력을 지칭하며,
Figure PCTKR2022016182-appb-img-000009
Figure PCTKR2022016182-appb-img-000010
의 노이즈 레이블을 지칭한다. 일 실시예에서, M은 KN과 동일할 수 있다.
In Equation 2 above,
Figure PCTKR2022016182-appb-img-000007
denotes the noise placement,
Figure PCTKR2022016182-appb-img-000008
denotes an input,
Figure PCTKR2022016182-appb-img-000009
Is
Figure PCTKR2022016182-appb-img-000010
refers to the noise label of In one embodiment, M may be equal to KN.
도 4는 일 실시예에 따른 프로세서가 전환 매트릭스를 추정하는 과정을 도시하는 개략도이다. 4 is a schematic diagram illustrating a process of estimating a conversion matrix by a processor according to an embodiment.
도 4를 참조하면, 클린 배치(410)에 포함된 입력
Figure PCTKR2022016182-appb-img-000011
(제 1 입력 데이터에 대응함)는 노이즈 분류기(420)에 입력된다. 노이즈 분류기(420)를 통해 출력 데이터로서
Figure PCTKR2022016182-appb-img-000012
가 출력된다. 연산기(430)를 통해
Figure PCTKR2022016182-appb-img-000013
와 클린 배치(410)에 포함된 입력
Figure PCTKR2022016182-appb-img-000014
에 대응하는 레이블
Figure PCTKR2022016182-appb-img-000015
(제 1 레이블에 대응함)에 기초하여 출력으로서 추정된 전환 매트릭스
Figure PCTKR2022016182-appb-img-000016
가 출력된다. 본 명세서에서,
Figure PCTKR2022016182-appb-img-000017
는 전환 매트릭스를 의미하며,
Figure PCTKR2022016182-appb-img-000018
는 전환 매트릭스가 추정된 것임을 의미한다.
Referring to FIG. 4 , the input included in the clean batch 410
Figure PCTKR2022016182-appb-img-000011
(corresponding to the first input data) is input to the noise classifier 420 . As output data through the noise classifier 420
Figure PCTKR2022016182-appb-img-000012
is output. Via calculator 430
Figure PCTKR2022016182-appb-img-000013
and the inputs included in the clean batch 410
Figure PCTKR2022016182-appb-img-000014
label corresponding to
Figure PCTKR2022016182-appb-img-000015
conversion matrix estimated as output based on (corresponding to the first label)
Figure PCTKR2022016182-appb-img-000016
is output. In this specification,
Figure PCTKR2022016182-appb-img-000017
denotes the conversion matrix,
Figure PCTKR2022016182-appb-img-000018
means that the conversion matrix is estimated.
레이블 전환 매트릭스
Figure PCTKR2022016182-appb-img-000019
의 각 구성요소
Figure PCTKR2022016182-appb-img-000020
는 클린 레이블
Figure PCTKR2022016182-appb-img-000021
가 노이즈 레이블
Figure PCTKR2022016182-appb-img-000022
로 오염될 확률로 정의될 수 있다. 예를 들어, 데이터 셋에 '고양이', '개', '새' 및 '비행기'와 같이 4개의 클래스가 존재하는 경우, '고양이'로 레이블링되는 것이 부적절한 어떤 입력 데이터의 클래스가 '고양이'인 것으로 분류되어 '고양이'로 레이블링될 확률은, 실제로 그 입력 데이터의 클래스가 '개'인 경우가, '새' 또는 '비행기'일 경우보다 클 것이다. 마찬가지로, '비행기'로 레이블링되는 것이 부적절한 입력 데이터의 클래스가 '비행기'인 것으로 분류되어 '비행기'로 레이블링될 확률은, 실제로 그 입력 데이터의 클래스가 '새'인 경우가, '고양이' 또는 '개'일 경우보다 클 것이다. 이와 같이, 전환 매트릭스는 클래스 사이에서 잘못 분류될 확률을 나타내는 매트릭스이다.
label transition matrix
Figure PCTKR2022016182-appb-img-000019
Each component of
Figure PCTKR2022016182-appb-img-000020
is a clean label
Figure PCTKR2022016182-appb-img-000021
Ga Noise Label
Figure PCTKR2022016182-appb-img-000022
It can be defined as the probability of being contaminated by For example, if there are 4 classes in the data set: 'cat', 'dog', 'bird', and 'airplane', the class of any input data that would be inappropriate to be labeled as 'cat' is 'cat'. The probability of being classified as a 'cat' and labeled 'cat' will be greater when the class of the input data is actually 'dog' than when it is 'bird' or 'airplane'. Similarly, the probability that the class of the input data that is inappropriate to be labeled as 'airplane' is classified as 'airplane' and labeled as 'airplane' is the probability that the class of the input data is actually 'bird' if it is 'cat' or 'airplane'. It will be bigger than the case of 'dog'. As such, the conversion matrix is a matrix representing the probability of being misclassified between classes.
본 개시에서, 전환 매트릭스를 추정하기 위해 적은 양의 클린 데이터 셋을 활용할 수 있다. 일반적으로, 클린 데이터 셋을 구축하는 것이 노이즈 데이터 셋을 구축하는 것보다 많은 비용이 소요된다. 한편, 본 개시에 따르면, 적은 양의 클린 데이터 셋을 활용하더라도, 정확한 전환 매트릭스의 추정이 가능하다. 따라서, 본 개시에 따르면, 종래 기술보다 적은 비용으로 정확한 전환 매트릭스의 추정이 가능하다.In this disclosure, a small amount of clean data set can be utilized to estimate the conversion matrix. In general, building a clean data set costs more than building a noisy data set. Meanwhile, according to the present disclosure, it is possible to accurately estimate a conversion matrix even when a small amount of clean data set is used. Accordingly, according to the present disclosure, accurate conversion matrix estimation is possible at a lower cost than in the prior art.
본 개시에서, 전환 매트릭스를 학습하여, 노이즈 레이블을 실시간으로(on-the-fly) 보정하면서 노이즈 레이블을 학습하는 강건하고 효율적인 방법이 제안된다. 이는 전환 매트릭스 추정으로 레이블 보정을 개선하는 새로운 시도일 수 있다. 또한, 후술할 바와 같이, 본 개시에서 제안되는 방법에 의하면, 단일 역전파로 전환 매트릭스를 학습시킬 수 있도록 투-헤드 아키텍처를 사용함으로써 학습 속도를 높일 수 있다. In this disclosure, a robust and efficient method for learning a noise label while correcting the noise label on-the-fly by learning a transition matrix is proposed. This may be a novel approach to improving label calibration with conversion matrix estimation. In addition, as will be described later, according to the method proposed in the present disclosure, the learning speed can be increased by using a two-head architecture so that the conversion matrix can be learned with a single backpropagation.
즉, 본 개시에서, 광범위한 실험을 통해 검증된, 학습 속도 및 예측 성능 모두의 측면에서 효율적인 방법이 제안된다.That is, in this disclosure, an efficient method in terms of both learning rate and prediction performance, verified through extensive experiments, is proposed.
본 개시에서, 전환 매트릭스를 추정하기 위해 노이즈 분류기(420)가 사용될 수 있다. 후술할 바와 같이, 본 개시의 노이즈 분류기(420)는 노이즈 데이터 셋으로부터 구성된 노이즈 배치로 학습되는 분류기를 지칭한다. 노이즈 분류기(420)는 노이즈 데이터를 통해 학습되기 때문에, 노이즈 분류기(420)로 하여금 클린 데이터를 분류하게 하면 올바르지 않게 분류할 것이다. 예를 들어, 고양이의 이미지에 대하여 클래스가 '개'인 것으로 분류하도록 학습된 분류기는, 다른 고양이의 이미지를 입력하더라도 클래스를 '개'로 분류할 것이다. 이러한 노이즈 분류기(420)의 특징 및 클린 데이터에 기초하여, 노이즈 분류기(420)가 "어떻게 잘못 분류하는지"를 이용하여 전환 매트릭스가 추정될 수 있다. In this disclosure, noise classifier 420 may be used to estimate the transition matrix. As will be described later, the noise classifier 420 of the present disclosure refers to a classifier that is trained with a noise batch constructed from a noise data set. Because noise classifier 420 is trained on noise data, having noise classifier 420 classify clean data will classify it incorrectly. For example, a classifier trained to classify an image of a cat as having a class of 'dog' will classify the class as 'dog' even when another cat image is input. Based on these characteristics of the noise classifier 420 and the clean data, a conversion matrix can be estimated using "how the noise classifier 420 misclassifies".
올바르게 추정된 레이블 전환 매트릭스는 노이즈 레이블에 통계적으로 일관적인(consistent), 즉 노이즈 레이블에 강건한 분류기를 획득하는 데 유용하다는 것이 이론적으로 증명되었다. It is theoretically proven that a correctly estimated label transition matrix is useful for obtaining classifiers that are statistically consistent with noise labels, i.e. robust to noise labels.
본 개시에서 클린 데이터 셋으로 사후 값을 직접 추정하는, 단순하지만 정확한 방법이 선택될 수 있다. 배치에 포함된
Figure PCTKR2022016182-appb-img-000023
에 대해
Figure PCTKR2022016182-appb-img-000024
Figure PCTKR2022016182-appb-img-000025
가 조건부 독립임을 가정한다.
In this disclosure, a simple but accurate method of directly estimating the a posteriori value with a clean data set can be chosen. included in the batch
Figure PCTKR2022016182-appb-img-000023
About
Figure PCTKR2022016182-appb-img-000024
and
Figure PCTKR2022016182-appb-img-000025
Assume that is conditionally independent.
Figure PCTKR2022016182-appb-img-000026
Figure PCTKR2022016182-appb-img-000026
Figure PCTKR2022016182-appb-img-000027
Figure PCTKR2022016182-appb-img-000027
본 개시에서, 전환 매트릭스는 클래스-독립 및 인스턴스-독립, 즉
Figure PCTKR2022016182-appb-img-000028
이도록 설계될 수 있다. 본 개시에서, 특징 추출기
Figure PCTKR2022016182-appb-img-000029
및 선형 분류기
Figure PCTKR2022016182-appb-img-000030
를 파라미터화함으로써,
Figure PCTKR2022016182-appb-img-000031
과 같이 나타낼 수 있으며, 여기에서
Figure PCTKR2022016182-appb-img-000032
는 노이즈 레이블로만 학습된 노이즈 분류기를 의미한다. 본 개시에서, 노이즈 분류기는 선형 분류기 및 특징 추출기를 포함할 수 있다. 노이즈 분류기
Figure PCTKR2022016182-appb-img-000033
가 노이즈 데이터에 대한 완벽한 예측을 제공하는 경우, 아래의 수학식 4와 같이, 클린 배치에 포함되는
Figure PCTKR2022016182-appb-img-000034
Figure PCTKR2022016182-appb-img-000035
를 이용하여 전환 확률
Figure PCTKR2022016182-appb-img-000036
을 추정할 수 있다.
In this disclosure, the conversion matrix is class-independent and instance-independent, i.e.
Figure PCTKR2022016182-appb-img-000028
can be designed to be In the present disclosure, the feature extractor
Figure PCTKR2022016182-appb-img-000029
and a linear classifier
Figure PCTKR2022016182-appb-img-000030
By parameterizing
Figure PCTKR2022016182-appb-img-000031
can be expressed as, where
Figure PCTKR2022016182-appb-img-000032
denotes a noise classifier trained only with noise labels. In this disclosure, a noise classifier may include a linear classifier and a feature extractor. noise classifier
Figure PCTKR2022016182-appb-img-000033
If gives a perfect prediction for noisy data, as shown in Equation 4 below, included in the clean batch
Figure PCTKR2022016182-appb-img-000034
and
Figure PCTKR2022016182-appb-img-000035
Conversion probability using
Figure PCTKR2022016182-appb-img-000036
can be estimated.
Figure PCTKR2022016182-appb-img-000037
Figure PCTKR2022016182-appb-img-000037
위 수학식 4에서,
Figure PCTKR2022016182-appb-img-000038
는 클린 배치를 지칭하고,
Figure PCTKR2022016182-appb-img-000039
는 입력을 지칭하며,
Figure PCTKR2022016182-appb-img-000040
Figure PCTKR2022016182-appb-img-000041
의 클린 레이블을 지칭한다. 위 수학식 4에서,
Figure PCTKR2022016182-appb-img-000042
는 노이즈 분류기에 포함된 특징 추출기,
Figure PCTKR2022016182-appb-img-000043
는 노이즈 분류기에 포함된 선형 분류기를 의미하여,
Figure PCTKR2022016182-appb-img-000044
는 노이즈 분류기를 의미한다.
In Equation 4 above,
Figure PCTKR2022016182-appb-img-000038
denotes a clean batch,
Figure PCTKR2022016182-appb-img-000039
denotes an input,
Figure PCTKR2022016182-appb-img-000040
Is
Figure PCTKR2022016182-appb-img-000041
refers to the clean label of In Equation 4 above,
Figure PCTKR2022016182-appb-img-000042
Is a feature extractor included in the noise classifier,
Figure PCTKR2022016182-appb-img-000043
Means a linear classifier included in the noise classifier,
Figure PCTKR2022016182-appb-img-000044
denotes a noise classifier.
전술한 바와 같은 과정을 통해 추정된 전환 매트릭스는 이후 클린 분류기 손실을 계산하는 데 사용될 수 있다. The conversion matrix estimated through the process described above may then be used to calculate the clean classifier loss.
도 4에서, 본 개시의 실시예에 따른 프로세서의 동작과 데이터의 흐름에 대한 설명의 편의 및 기능적 구분을 위해 노이즈 분류기(420)와 연산기(430)가 개별적인 기능 블록으로 도시되었지만, 노이즈 분류기(420)와 연산기(430)는 하나의 하드웨어로 구성될 수 있다.In FIG. 4 , the noise classifier 420 and the calculator 430 are shown as separate functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the noise classifier 420 ) and the operator 430 may be configured as one piece of hardware.
도 5는 일 실시예에 따른 프로세서가 클린 분류기 손실을 계산하는 과정을 도시하는 개략도이다. 5 is a schematic diagram illustrating a process of calculating a clean classifier loss by a processor according to an embodiment.
도 5를 참조하면, 클린 배치(510)에 포함된 입력
Figure PCTKR2022016182-appb-img-000045
는 클린 분류기(530)에 입력된다. 클린 분류기(530)를 통해 출력 데이터로서
Figure PCTKR2022016182-appb-img-000046
가 출력된다. 또한, 노이즈 배치(520)에 포함된 입력
Figure PCTKR2022016182-appb-img-000047
(제 2 입력 데이터에 대응함)은 클린 분류기(530)에 입력된다. 클린 분류기(530)를 통해 출력 데이터로서
Figure PCTKR2022016182-appb-img-000048
이 출력된다. 연산기(540)를 통해
Figure PCTKR2022016182-appb-img-000049
,
Figure PCTKR2022016182-appb-img-000050
, 클린 배치(510)에 포함된 입력
Figure PCTKR2022016182-appb-img-000051
에 대응하는 레이블
Figure PCTKR2022016182-appb-img-000052
, 노이즈 배치(520)에 포함된 입력
Figure PCTKR2022016182-appb-img-000053
에 대응하는 레이블
Figure PCTKR2022016182-appb-img-000054
(제 2 레이블에 대응함) 및 전환 매트릭스
Figure PCTKR2022016182-appb-img-000055
에 기초하여 출력으로서 계산된 클린 분류기 손실
Figure PCTKR2022016182-appb-img-000056
이 출력된다.
Referring to FIG. 5 , the input included in the clean batch 510
Figure PCTKR2022016182-appb-img-000045
is input to the clean classifier 530. As output data through the clean classifier 530
Figure PCTKR2022016182-appb-img-000046
is output. Also included in the noise batch 520 is the input
Figure PCTKR2022016182-appb-img-000047
(corresponding to the second input data) is input to the clean classifier 530. As output data through the clean classifier 530
Figure PCTKR2022016182-appb-img-000048
is output Via calculator 540
Figure PCTKR2022016182-appb-img-000049
,
Figure PCTKR2022016182-appb-img-000050
, the input included in the clean batch 510
Figure PCTKR2022016182-appb-img-000051
label corresponding to
Figure PCTKR2022016182-appb-img-000052
, the input included in the noise batch 520.
Figure PCTKR2022016182-appb-img-000053
label corresponding to
Figure PCTKR2022016182-appb-img-000054
(corresponding to the second label) and the transition matrix
Figure PCTKR2022016182-appb-img-000055
Calculated clean classifier loss as output based on
Figure PCTKR2022016182-appb-img-000056
is output
클린 분류기 손실을 계산하는 것은 클린 분류기(530)를 학습시키기 위한 것이며, 예를 들어 클린 분류기 손실
Figure PCTKR2022016182-appb-img-000057
은 아래의 수학식 5에 따라 계산될 수 있다.
Calculating the clean classifier loss is for training the clean classifier 530, for example the clean classifier loss
Figure PCTKR2022016182-appb-img-000057
Can be calculated according to Equation 5 below.
Figure PCTKR2022016182-appb-img-000058
Figure PCTKR2022016182-appb-img-000058
위 수학식 5에서,
Figure PCTKR2022016182-appb-img-000059
는 클린 배치를 지칭하고,
Figure PCTKR2022016182-appb-img-000060
는 클린 배치에 포함된 입력을 지칭하며,
Figure PCTKR2022016182-appb-img-000061
Figure PCTKR2022016182-appb-img-000062
의 클린 레이블을 지칭한다. 위 수학식 5에서,
Figure PCTKR2022016182-appb-img-000063
는 노이즈 배치를 지칭하고,
Figure PCTKR2022016182-appb-img-000064
는 노이즈 배치에 포함된 입력을 지칭하며,
Figure PCTKR2022016182-appb-img-000065
Figure PCTKR2022016182-appb-img-000066
의 노이즈 레이블을 지칭한다. 위 수학식 5에서,
Figure PCTKR2022016182-appb-img-000067
는 크로스 엔트로피(cross-entropy) 손실 함수를 의미하고,
Figure PCTKR2022016182-appb-img-000068
는 클린 분류기에 포함된 특징 추출기,
Figure PCTKR2022016182-appb-img-000069
는 클린 분류기에 포함된 선형 분류기를 의미하여,
Figure PCTKR2022016182-appb-img-000070
는 클린 분류기를 의미한다.
In Equation 5 above,
Figure PCTKR2022016182-appb-img-000059
denotes a clean batch,
Figure PCTKR2022016182-appb-img-000060
denotes the input included in the clean batch,
Figure PCTKR2022016182-appb-img-000061
Is
Figure PCTKR2022016182-appb-img-000062
refers to the clean label of In Equation 5 above,
Figure PCTKR2022016182-appb-img-000063
denotes the noise placement,
Figure PCTKR2022016182-appb-img-000064
denotes the input included in the noise batch,
Figure PCTKR2022016182-appb-img-000065
Is
Figure PCTKR2022016182-appb-img-000066
refers to the noise label of In Equation 5 above,
Figure PCTKR2022016182-appb-img-000067
Means the cross-entropy loss function,
Figure PCTKR2022016182-appb-img-000068
is a feature extractor included in the clean classifier,
Figure PCTKR2022016182-appb-img-000069
Means a linear classifier included in the clean classifier,
Figure PCTKR2022016182-appb-img-000070
denotes a clean classifier.
즉, 연산기(540)를 통해
Figure PCTKR2022016182-appb-img-000071
에 대한 클린 분류기(530)의 출력 데이터
Figure PCTKR2022016182-appb-img-000072
Figure PCTKR2022016182-appb-img-000073
에 대응하는 레이블
Figure PCTKR2022016182-appb-img-000074
에 기초하여 클린 데이터 기반 손실이 계산되고,
Figure PCTKR2022016182-appb-img-000075
에 대한 클린 분류기(530)의 출력 데이터
Figure PCTKR2022016182-appb-img-000076
, 전환 매트릭스
Figure PCTKR2022016182-appb-img-000077
Figure PCTKR2022016182-appb-img-000078
에 대응하는 레이블
Figure PCTKR2022016182-appb-img-000079
에 기초하여 노이즈 데이터 기반 손실이 계산되며, 계산된 클린 데이터 기반 손실 및 노이즈 데이터 기반 손실에 기초하여 클린 분류기 손실
Figure PCTKR2022016182-appb-img-000080
이 계산된다.
That is, through the calculator 540
Figure PCTKR2022016182-appb-img-000071
Output data of the clean classifier 530 for
Figure PCTKR2022016182-appb-img-000072
and
Figure PCTKR2022016182-appb-img-000073
label corresponding to
Figure PCTKR2022016182-appb-img-000074
A clean data based loss is calculated based on
Figure PCTKR2022016182-appb-img-000075
Output data of the clean classifier 530 for
Figure PCTKR2022016182-appb-img-000076
, the transition matrix
Figure PCTKR2022016182-appb-img-000077
and
Figure PCTKR2022016182-appb-img-000078
label corresponding to
Figure PCTKR2022016182-appb-img-000079
A noise data based loss is calculated based on , and a clean classifier loss based on the calculated clean data based loss and the noise data based loss.
Figure PCTKR2022016182-appb-img-000080
this is calculated
전환 매트릭스
Figure PCTKR2022016182-appb-img-000081
가 올바르게 추정되는 경우, 클린 분류기
Figure PCTKR2022016182-appb-img-000082
는 통계적으로 일관적이게 될 수 있다. 이러한 접근법은 클린 분류기가 보정된 레이블에 대해 맹목적으로 믿지 않게 하므로 오보정(miscorrection) 문제를 방지할 수 있다.
transition matrix
Figure PCTKR2022016182-appb-img-000081
is estimated correctly, then the clean classifier
Figure PCTKR2022016182-appb-img-000082
can be statistically consistent. This approach avoids the miscorrection problem because the clean classifier does not blindly trust the corrected label.
이와 같이, 본 개시의 클린 분류기(530)는 클린 데이터(클린 배치)뿐만 아니라 노이즈 데이터(노이즈 배치)도 활용하여 학습될 수 있다. 노이즈 데이터는 비록 노이즈가 존재하는 레이블을 포함하지만, 클린 데이터에 비해 데이터의 양이 많기 때문에, 이를 활용하여 클린 분류기(530)를 학습시키는 것이 효율적이다. 전환 매트릭스가 올바르게 추정되는 경우, 이러한 노이즈 데이터를 활용할 수 있다는 것을 주목하여야 한다. As such, the clean classifier 530 of the present disclosure may be learned by utilizing not only clean data (clean batch) but also noise data (noise batch). Although noise data includes labels with noise, since the amount of data is larger than that of clean data, it is efficient to use this to train the clean classifier 530. It should be noted that such noisy data can be exploited if the conversion matrix is estimated correctly.
이와 같은 방식으로 계산된 클린 분류기 손실은 이후 클린 분류기의 파라미터를 최적화하는 데 사용될 수 있다. The clean classifier loss calculated in this way can then be used to optimize the parameters of the clean classifier.
도 5에서, 본 개시의 실시예에 따른 프로세서의 동작과 데이터의 흐름에 대한 설명의 편의 및 기능적 구분을 위해 클린 분류기(530)와 연산기(540)가 개별적인 기능 블록으로 도시되었지만, 클린 분류기(530)와 연산기(540)는 하나의 하드웨어로 구성될 수 있다.In FIG. 5 , the clean classifier 530 and the calculator 540 are shown as separate functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the clean classifier 530 ) and the operator 540 may be configured as one piece of hardware.
도 6은 일 실시예에 따른 프로세서가 노이즈 분류기 손실을 계산하는 과정을 도시하는 개략도이다.6 is a schematic diagram illustrating a process of calculating a noise classifier loss by a processor according to an embodiment.
도 6을 참조하면, 노이즈 배치(610)에 포함된 입력
Figure PCTKR2022016182-appb-img-000083
은 노이즈 분류기(620)에 입력된다. 노이즈 분류기(620)를 통해 출력 데이터로서
Figure PCTKR2022016182-appb-img-000084
이 출력된다. 연산기(630)를 통해
Figure PCTKR2022016182-appb-img-000085
및 노이즈 배치(610)에 포함된 입력
Figure PCTKR2022016182-appb-img-000086
에 대응하는 레이블
Figure PCTKR2022016182-appb-img-000087
에 기초하여 출력으로서 계산된 노이즈 분류기 손실
Figure PCTKR2022016182-appb-img-000088
가 출력된다.
Referring to FIG. 6 , the input included in the noise batch 610
Figure PCTKR2022016182-appb-img-000083
is input to the noise classifier 620. As output data through the noise classifier 620
Figure PCTKR2022016182-appb-img-000084
is output Via calculator 630
Figure PCTKR2022016182-appb-img-000085
and the inputs included in the noise batch 610.
Figure PCTKR2022016182-appb-img-000086
label corresponding to
Figure PCTKR2022016182-appb-img-000087
Noise classifier loss computed as output based on
Figure PCTKR2022016182-appb-img-000088
is output.
전술한 바와 같이, 노이즈 분류기(620)는 노이즈 데이터를 통해 학습된다. 이로 인해, 노이즈 분류기(620)로 하여금 클린 데이터를 분류하게 하면 올바르지 않게 분류할 수 있다. 노이즈 분류기 손실을 계산하는 것은 노이즈 분류기(620)를 학습시키기 위한 것이며, 예를 들어 노이즈 분류기 손실
Figure PCTKR2022016182-appb-img-000089
은 아래의 수학식 7을 통해 계산될 수 있다.
As described above, the noise classifier 620 is trained through noise data. Because of this, if the noise classifier 620 classifies clean data, it may be classified incorrectly. Computing the noise classifier loss is for training the noise classifier 620, e.g., the noise classifier loss.
Figure PCTKR2022016182-appb-img-000089
Can be calculated through Equation 7 below.
Figure PCTKR2022016182-appb-img-000090
Figure PCTKR2022016182-appb-img-000090
위 수학식 6에서,
Figure PCTKR2022016182-appb-img-000091
는 노이즈 배치를 지칭하고,
Figure PCTKR2022016182-appb-img-000092
는 입력을 지칭하며,
Figure PCTKR2022016182-appb-img-000093
Figure PCTKR2022016182-appb-img-000094
의 노이즈 레이블을 지칭한다. 위 수학식 6에서,
Figure PCTKR2022016182-appb-img-000095
는 크로스 엔트로피 손실 함수를 의미하고,
Figure PCTKR2022016182-appb-img-000096
는 노이즈 분류기에 포함된 특징 추출기,
Figure PCTKR2022016182-appb-img-000097
는 노이즈 분류기에 포함된 선형 분류기를 의미하여,
Figure PCTKR2022016182-appb-img-000098
는 노이즈 분류기를 의미한다.
In Equation 6 above,
Figure PCTKR2022016182-appb-img-000091
denotes the noise placement,
Figure PCTKR2022016182-appb-img-000092
denotes an input,
Figure PCTKR2022016182-appb-img-000093
Is
Figure PCTKR2022016182-appb-img-000094
refers to the noise label of In Equation 6 above,
Figure PCTKR2022016182-appb-img-000095
Means the cross entropy loss function,
Figure PCTKR2022016182-appb-img-000096
Is a feature extractor included in the noise classifier,
Figure PCTKR2022016182-appb-img-000097
Means a linear classifier included in the noise classifier,
Figure PCTKR2022016182-appb-img-000098
denotes a noise classifier.
본 개시에서, 계속해서 변화하는 노이즈 레이블 분포를 실시간으로 적응형으로(adaptively) 모델링할 수 있다는 점에서, 매 이터레이션마다 노이즈 분류기
Figure PCTKR2022016182-appb-img-000099
를 업데이트하는 것이 중요할 수 있다. 일 실시예에서, 레이블 보정 단계에 의해 노이즈 레이블이 동적으로 보정되어 노이즈 레벨을 감소시키면서, 노이즈 레이블 분포가 지속적으로 시프트될 수 있다.
In the present disclosure, in that the constantly changing noise label distribution can be adaptively modeled in real time, a noise classifier for each iteration
Figure PCTKR2022016182-appb-img-000099
It may be important to update In one embodiment, the noise label distribution may be continuously shifted while the noise label is dynamically corrected by the label correction step to reduce the noise level.
도 6에서, 본 개시의 실시예에 따른 프로세서의 동작과 데이터의 흐름에 대한 설명의 편의 및 기능적 구분을 위해 노이즈 분류기(620)와 연산기(630)가 개별적인 기능 블록으로 도시되었지만, 노이즈 분류기(620)와 연산기(630)는 하나의 하드웨어로 구성될 수 있다.In FIG. 6 , the noise classifier 620 and the calculator 630 are shown as separate functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the noise classifier 620 ) and the operator 630 may be configured as one piece of hardware.
도 7은 일 실시예에 따른 프로세서가 클린 분류기 및 노이즈 분류기의 파라미터를 최적화하는 과정을 도시하는 개략도이다. 7 is a schematic diagram illustrating a process of optimizing parameters of a clean classifier and a noise classifier by a processor according to an embodiment.
도 7을 참조하면, 연산기(710)를 통해, 전술한 과정에서 계산된 클린 분류기 손실
Figure PCTKR2022016182-appb-img-000100
과 노이즈 분류기 손실
Figure PCTKR2022016182-appb-img-000101
에 기초하여 클린 분류기(720) 및 노이즈 분류기(730)의 파라미터가 최적화된다.
Referring to FIG. 7 , through the calculator 710, the clean classifier loss calculated in the above process
Figure PCTKR2022016182-appb-img-000100
Over-noise classifier loss
Figure PCTKR2022016182-appb-img-000101
Parameters of the clean classifier 720 and the noise classifier 730 are optimized based on .
클린 분류기 손실
Figure PCTKR2022016182-appb-img-000102
에 기초하여 클린 분류기(720)의 파라미터를 최적화하는 과정을 통해 클린 분류기(720)가 클린 데이터뿐만 아니라 노이즈 데이터 또한 학습하도록 할 수 있고, 노이즈 분류기 손실
Figure PCTKR2022016182-appb-img-000103
에 기초하여 노이즈 분류기(730)의 파라미터를 최적화하는 과정을 통해 전환 매트릭스 추정을 위한 노이즈 분류기(730)를 학습시킬 수 있다.
Clean Classifier Loss
Figure PCTKR2022016182-appb-img-000102
Through the process of optimizing the parameters of the clean classifier 720 based on , the clean classifier 720 can learn not only clean data but also noise data, and the noise classifier loss
Figure PCTKR2022016182-appb-img-000103
The noise classifier 730 for estimating the conversion matrix may be trained through a process of optimizing parameters of the noise classifier 730 based on .
도 7에서, 본 개시의 실시예에 따른 프로세서의 동작과 데이터의 흐름에 대한 설명의 편의 및 기능적 구분을 위해 연산기(710), 클린 분류기(720) 및 노이즈 분류기(730)가 개별적인 기능 블록으로 도시되었지만, 연산기(710), 클린 분류기(720) 및 노이즈 분류기(730)는 하나의 하드웨어로 구성될 수 있다.In FIG. 7 , a calculator 710, a clean classifier 720, and a noise classifier 730 are shown as individual functional blocks for convenience of description and functional division of the operation of a processor and the flow of data according to an embodiment of the present disclosure. However, the calculator 710, the clean classifier 720, and the noise classifier 730 may be composed of a single piece of hardware.
도 8은 일 실시예에 따른 투-헤드 아키텍처를 도시하는 개략도이다. 8 is a schematic diagram illustrating a two-head architecture according to one embodiment.
도 8을 참조하면, 클린 분류기(810)는 제 1 선형 분류기 및 특징 추출기를 포함하고, 노이즈 분류기(820)는 제 2 선형 분류기 및 특징 추출기를 포함한다. 이때, 클린 분류기(810) 및 노이즈 분류기(820)는 동일한 특징 추출기를 공유한다. Referring to FIG. 8 , the clean classifier 810 includes a first linear classifier and a feature extractor, and the noise classifier 820 includes a second linear classifier and a feature extractor. At this time, the clean classifier 810 and the noise classifier 820 share the same feature extractor.
전술한 바와 같이, 클린 분류기
Figure PCTKR2022016182-appb-img-000104
는 선형 분류기
Figure PCTKR2022016182-appb-img-000105
및 특징 추출기
Figure PCTKR2022016182-appb-img-000106
를 포함할 수 있다. 노이즈 분류기
Figure PCTKR2022016182-appb-img-000107
는 선형 분류기
Figure PCTKR2022016182-appb-img-000108
및 특징 추출기
Figure PCTKR2022016182-appb-img-000109
를 포함할 수 있다.
As mentioned above, the clean classifier
Figure PCTKR2022016182-appb-img-000104
is a linear classifier
Figure PCTKR2022016182-appb-img-000105
and feature extractor
Figure PCTKR2022016182-appb-img-000106
can include noise classifier
Figure PCTKR2022016182-appb-img-000107
is a linear classifier
Figure PCTKR2022016182-appb-img-000108
and feature extractor
Figure PCTKR2022016182-appb-img-000109
can include
본 개시에서, 클린 분류기(810)와 노이즈 분류기(820)는 투-헤드 아키텍처(two-head architecture)를 구성할 수 있다. 전환 매트릭스를 효율적으로 추정하기 위해, 본 개시에서는 특징 추출기를 공유하는 두 개의 분류기 즉, 클린 분류기(810) 및 노이즈 분류기(820)로 구성된 투-헤드 아키텍처를 채택한다. 투-헤드 아키텍처에서, 클린 분류기(810)의 특징 추출기
Figure PCTKR2022016182-appb-img-000110
와 노이즈 분류기(820)의 특징 추출기
Figure PCTKR2022016182-appb-img-000111
는 동일하다(즉,
Figure PCTKR2022016182-appb-img-000112
). 다시 말해, 클린 분류기(810) 및 노이즈 분류기(820)는 동일한 특징 추출기를 공유할 수 있다.
In the present disclosure, the clean classifier 810 and the noise classifier 820 may constitute a two-head architecture. To estimate the conversion matrix efficiently, the present disclosure adopts a two-head architecture composed of two classifiers sharing a feature extractor, i.e., a clean classifier 810 and a noise classifier 820. In the two-head architecture, the feature extractor of the clean classifier 810
Figure PCTKR2022016182-appb-img-000110
and the feature extractor of the noise classifier 820
Figure PCTKR2022016182-appb-img-000111
is the same (i.e.
Figure PCTKR2022016182-appb-img-000112
). In other words, the clean classifier 810 and the noise classifier 820 may share the same feature extractor.
본 개시에서, 투-헤드 아키텍처를 통해 효율적인 학습이 실현될 수 있다. 일 실시예에서, 투-헤드 아키텍처를 통해, 단일 역전파(single back-propagation)를 통해, 특징 추출기, 클린 분류기(810)의 선형 분류기 및 노이즈 분류기(820)의 선형 분류기의 파라미터를 최적화할 수 있다. 클린 분류기(810) 및 노이즈 분류기(820)는 동일한 특징 추출기를 공유함으로써, 가중치(weight)를 공유할 수 있다.In this disclosure, efficient learning can be realized through a two-head architecture. In one embodiment, parameters of the feature extractor, the linear classifier of the clean classifier 810 and the linear classifier of the noise classifier 820 may be optimized through single back-propagation through the two-head architecture. there is. The clean classifier 810 and the noise classifier 820 may share weights by sharing the same feature extractor.
공유 특징 추출기(shared feature extractor)와 달리, 본 실시예의 아키텍처는 선형 분류기를 공유하지 않으며, 이는 단일 선형 분류기로 클린 데이터 분포 및 노이즈 데이터 분포를 모두 모델링하는 것은 비실용적이기 때문이다. Unlike a shared feature extractor, the architecture of this embodiment does not share a linear classifier, since it is impractical to model both clean data distribution and noise data distribution with a single linear classifier.
본 개시에서, 클린 분류기 및 노이즈 분류기를 각각
Figure PCTKR2022016182-appb-img-000113
Figure PCTKR2022016182-appb-img-000114
(
Figure PCTKR2022016182-appb-img-000115
와 동일함)로 정의하여 최종적인 목적 함수(objective function)
Figure PCTKR2022016182-appb-img-000116
을 다음 수학식 7과 같이 생성할 수 있다.
In the present disclosure, a clean classifier and a noise classifier are respectively
Figure PCTKR2022016182-appb-img-000113
and
Figure PCTKR2022016182-appb-img-000114
(
Figure PCTKR2022016182-appb-img-000115
(equivalent to) is defined as the final objective function
Figure PCTKR2022016182-appb-img-000116
Can be generated as shown in Equation 7 below.
Figure PCTKR2022016182-appb-img-000117
Figure PCTKR2022016182-appb-img-000117
위 수학식 7에서
Figure PCTKR2022016182-appb-img-000118
는 하이퍼 파라미터(hyper parameter)로서, 손실 균형 팩터(loss balancing factor)이다. 하이퍼 파라미터
Figure PCTKR2022016182-appb-img-000119
는 분류기가
Figure PCTKR2022016182-appb-img-000120
에 과적합되는 것을 방지하기 위해 목적 함수에 도입되며, 최적의 값을 찾도록 실험이 진행된다.
In Equation 7 above
Figure PCTKR2022016182-appb-img-000118
Is a hyper parameter and is a loss balancing factor. hyperparameter
Figure PCTKR2022016182-appb-img-000119
is the classifier
Figure PCTKR2022016182-appb-img-000120
is introduced into the objective function to prevent overfitting, and experiments are conducted to find the optimal value.
종래의 기술은 복수의 학습 단계를 필요로 하며, 이는 학습 효율을 저하시킨다. 특히 전술한 MAML은 샘플 재가중, 레이블 보정 및 레이블 전환 매트릭스 추정에 널리 사용되어왔다. 이러한 접근법은, 먼저 노이즈 데이터 셋으로 가상 업데이트를 수행하고, 클린 데이터 셋을 이용하여 최적의 파라미터를 찾으며, 찾은 파라미터로 실제 파라미터를 업데이트한다. 이러한 가상 업데이트 프로세스는 매 이터레이션마다 세번의 역전파를 필요로 하여, 이 때문에 계산 비용이 적어도 세배 가중된다. The prior art requires a plurality of learning steps, which lowers the learning efficiency. In particular, the aforementioned MAML has been widely used for sample re-weighting, label correction, and label conversion matrix estimation. In this approach, first, a virtual update is performed with a noisy data set, optimal parameters are found using a clean data set, and real parameters are updated with the found parameters. This hypothetical update process requires backpropagation three times per iteration, which at least triples the computational cost.
반면에, 모든 레이블이 클린하다고 가정하는 기존의 학습 방식과 비교하여, 본 개시에서는 단지 N개의 추가적인 파라미터를 갖는 단일 선형 분류기
Figure PCTKR2022016182-appb-img-000121
가 추가될 뿐이다. 또한, 본 개시는 단일 역전파만이 필요하고, 여기서 추가적인 선형 분류기는 계산 부담의 측면에서 무시할 수 있다. 따라서 본 개시에 의하면, 종래의 기술 이상의 성능을 보여주면서 학습 속도를 크게 향상시킬 수 있다.
On the other hand, compared to conventional learning methods that assume all labels are clean, in this disclosure, a single linear classifier with only N additional parameters
Figure PCTKR2022016182-appb-img-000121
is only added. Also, the present disclosure requires only a single backpropagation, where the additional linear classifier is negligible in terms of computational burden. Therefore, according to the present disclosure, it is possible to greatly improve the learning speed while showing performance higher than that of the prior art.
일 실시예에서, 프로세서는 노이즈 배치에 포함된 노이즈 레이블을 보정할 수 있다. 본 개시에서, 프로세서는 매 이터레이션마다 노이즈 레이블을 보정할 수 있고, 이로 인해 노이즈 데이터를 학습하는 노이즈 분류기 또한 매 이터레이션마다 업데이트될 수 있다. 노이즈 분류기가 매 이터레이션마다 업데이트되므로, 클린 분류기의 학습에 사용되는 전환 매트릭스 또한 매 이터레이션마다 다르게 추정될 수 있다. 즉, 본 개시에서는, 종래의 기술의 문제점 중 하나인, 모델이 잘못 보정된 레이블을 그라운드 트루스 레이블로 학습하게 된다는 것이 해결될 수 있다. In one embodiment, the processor may correct the noise labels included in the noise batch. In the present disclosure, the processor may calibrate the noise label in each iteration, so that the noise classifier that learns the noise data may also be updated in each iteration. Since the noise classifier is updated at every iteration, the conversion matrix used to learn the clean classifier can also be estimated differently at every iteration. That is, in the present disclosure, one of the problems of the prior art, that the model learns an erroneously calibrated label as a ground truth label, can be solved.
일 실시예에서, 프로세서는, 확률 벡터로 나타내지는, 노이즈 배치에 포함된 입력
Figure PCTKR2022016182-appb-img-000122
에 대한 클린 분류기의 출력 데이터
Figure PCTKR2022016182-appb-img-000123
에 포함된 원소들의 값과 임계값의 비교 결과에 기초하여 레이블을 보정할 수 있다.
In one embodiment, the processor determines the input included in the batch of noise, represented by a probability vector.
Figure PCTKR2022016182-appb-img-000122
Output data of clean classifier for
Figure PCTKR2022016182-appb-img-000123
The label may be corrected based on a comparison result between values of elements included in and a threshold value.
구체적으로, 본 개시에서, 노이즈 데이터 셋으로부터 형성된 노이즈 배치에 포함된 입력에 대해 클린 분류기는 출력 데이터로서
Figure PCTKR2022016182-appb-img-000124
를 출력하고, 이는 확률 벡터로 나타내진다. 이 확률 벡터에 포함된 원소들 중 최대값
Figure PCTKR2022016182-appb-img-000125
가 임계값
Figure PCTKR2022016182-appb-img-000126
보다 큰 경우, 그 원소에 대응하는 레이블을 더 가능성이 있는 레이블로 보정한다. 이러한 방식은 학습 중인 모델의 가장 최근 예측에만 의존하므로, 레이블 보정 결정 여부는 매번 변경될 수 있다. 공식으로, 보정된 레이블
Figure PCTKR2022016182-appb-img-000127
는 다음 수학식 8와 같이 나타낼 수 있다.
Specifically, in the present disclosure, a clean classifier for an input included in a noise batch formed from a noise data set as output data
Figure PCTKR2022016182-appb-img-000124
, which is represented by a probability vector. The largest of the elements in this probability vector
Figure PCTKR2022016182-appb-img-000125
is the threshold
Figure PCTKR2022016182-appb-img-000126
, the label corresponding to that element is corrected to a more probable label. Since this approach only relies on the most recent predictions of the model being trained, the decision to calibrate labels can change each time. As a formula, calibrated labels
Figure PCTKR2022016182-appb-img-000127
can be expressed as in Equation 8 below.
Figure PCTKR2022016182-appb-img-000128
Figure PCTKR2022016182-appb-img-000128
위 수학식 8에서,
Figure PCTKR2022016182-appb-img-000129
은 클린 분류기의 출력 데이터를 지칭하고,
Figure PCTKR2022016182-appb-img-000130
는 플로어(floor) 함수를 의미하며,
Figure PCTKR2022016182-appb-img-000131
는 노이즈 배치
Figure PCTKR2022016182-appb-img-000132
의 원래의 레이블을 지칭한다.
In Equation 8 above,
Figure PCTKR2022016182-appb-img-000129
denotes the output data of the clean classifier,
Figure PCTKR2022016182-appb-img-000130
denotes a floor function,
Figure PCTKR2022016182-appb-img-000131
is the noise placement
Figure PCTKR2022016182-appb-img-000132
refers to the original label of
주목해야할 것은, 본 개시에서, 레이블 보정 결정에 사용되는 확률 벡터는 노이즈 배치에 포함된 입력 데이터에 대한 클린 분류기의 출력 데이터
Figure PCTKR2022016182-appb-img-000133
이고, 이는 클린 분류기 손실
Figure PCTKR2022016182-appb-img-000134
을 계산하는 과정에서 이미 산출된 데이터라는 것이다. 즉, 본 개시는 이미 산출된 값을 다시 사용함으로써 더 효율적인 레이블 보정이 가능하다.
It should be noted that, in this disclosure, the probability vector used for label correction decision is the output data of the clean classifier for the input data included in the noise batch.
Figure PCTKR2022016182-appb-img-000133
, which is the clean classifier loss
Figure PCTKR2022016182-appb-img-000134
It is data that has already been calculated in the process of calculating . That is, according to the present disclosure, more efficient label correction is possible by using an already calculated value again.
도 8에서, 본 개시의 실시예에 따른 프로세서의 동작과 데이터의 흐름에 대한 설명의 편의 및 기능적 구분을 위해 제 1 선형 분류기, 제 2 선형 분류기 및 특징 추출기가 개별적인 기능 블록으로 도시되었지만, 클린 분류기(810)에 포함된 제 1 선형 분류기와 특징 추출기, 노이즈 분류기(820)에 포함된 제 2 선형 분류기와 특징 추출기 및 클린 분류기(810)와 노이즈 분류기(820)는 하나의 하드웨어로 구성될 수 있다.In FIG. 8 , the first linear classifier, the second linear classifier, and the feature extractor are shown as individual functional blocks for convenience of description and functional division of the operation of the processor and the flow of data according to an embodiment of the present disclosure, but the clean classifier The first linear classifier and feature extractor included in 810, the second linear classifier and feature extractor included in noise classifier 820, the clean classifier 810, and the noise classifier 820 included in the noise classifier 820 may be configured as one piece of hardware. .
도 9는 본 개시의 효율적인 전환 매트릭스 추정을 통한 노이즈 레이블 학습 방법을 요약하는 알고리즘을 나타낸다.9 shows an algorithm summarizing the noise label learning method through efficient conversion matrix estimation of the present disclosure.
도 2 내지 도 8을 참조하여 설명한 본 개시의 실시예에 따른 효율적인 전환 매트릭스 추정을 통한 노이즈 레이블 학습 방법은 도 9에 나타난 알고리즘으로 요약될 수 있다.The noise label learning method through efficient conversion matrix estimation according to an embodiment of the present disclosure described with reference to FIGS. 2 to 8 can be summarized as the algorithm shown in FIG. 9 .
도 10은 일 실시예에 따른 노이즈 레이블을 학습하는 장치를 도시한 블록도이다. 10 is a block diagram illustrating an apparatus for learning a noise label according to an exemplary embodiment.
노이즈 레이블을 학습하는 장치(1000)는 도 1 내지 도 8을 참조하여 상술한 노이즈 레이블을 학습하는 방법을 수행한다. 따라서, 이하에서 생략되었다고 하더라도, 도 1 내지 도 8을 참조하여 노이즈 레이블을 학습하는 방법에 대하여 상술한 내용은 노이즈 레이블을 학습 장치(1000)에도 동일하게 적용될 수 있음은 통상의 기술자라면 쉽게 이해할 수 있다. The noise label learning apparatus 1000 performs the noise label learning method described above with reference to FIGS. 1 to 8 . Therefore, even if omitted below, those skilled in the art can easily understand that the above description of the method for learning a noise label with reference to FIGS. 1 to 8 can be equally applied to the noise label learning apparatus 1000. there is.
도 10을 참조하면, 노이즈 레이블 학습 장치(1000)는 프로세서(1010) 및 메모리(1020)를 포함할 수 있다. Referring to FIG. 10 , a noise label learning apparatus 1000 may include a processor 1010 and a memory 1020.
메모리(1020)는, 프로세서(1010)와 동작 가능하게 연결되고, 프로세서(1010)가 동작하기 위한 적어도 하나의 프로그램을 저장한다. 또한, 메모리(1020)는 학습 데이터, 입력 데이터, 클래스에 대한 정보 등 도 1 내지 도 8을 참조하여 상술한 내용과 관련된 모든 데이터를 저장한다.The memory 1020 is operably connected to the processor 1010 and stores at least one program for the processor 1010 to operate. In addition, the memory 1020 stores all data related to the contents described above with reference to FIGS. 1 to 8 , such as learning data, input data, and class information.
예를 들어, 메모리(1020)는 프로세서(1010)가 처리하는 데이터를 일시적 또는 영구적으로 저장할 수 있다. 메모리(1020)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 이에 한정되는 것은 아니다. 메모리(1020)는 내장 메모리 및/또는 외장 메모리를 포함할 수 있으며, DRAM, SRAM, 또는 SDRAM 등과 같은 휘발성 메모리, OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, NAND 플래시 메모리, 또는 NOR 플래시 메모리 등과 같은 비휘발성 메모리, SSD, CF(compact flash) 카드, SD 카드, Micro-SD 카드, Mini-SD 카드, Xd 카드, 또는 메모리 스틱(memory stick) 등과 같은 플래시 드라이브, 또는 HDD와 같은 저장 장치를 포함할 수 있다.For example, the memory 1020 may temporarily or permanently store data processed by the processor 1010 . The memory 1020 may include magnetic storage media or flash storage media, but is not limited thereto. The memory 1020 may include built-in memory and/or external memory, and may include volatile memory such as DRAM, SRAM, or SDRAM, one time programmable ROM (OTPROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, and NAND. Non-volatile memory such as flash memory or NOR flash memory, flash drives such as SSD, compact flash (CF) card, SD card, Micro-SD card, Mini-SD card, Xd card, or memory stick; Alternatively, it may include a storage device such as a HDD.
프로세서(1010)는 메모리(1020)에 저장된 프로그램에 따라 도 1 내지 도 8을 참조하여 상술한 입력 데이터를 분류하는 방법을 수행한다.The processor 1010 performs the method of classifying the input data described above with reference to FIGS. 1 to 8 according to a program stored in the memory 1020 .
프로세서(1010)는 클린 데이터 셋에 포함된 하나 이상의 제 1 입력 데이터와 이에 대응하는 하나 이상의 제 1 레이블로 구성된 클린 배치를 형성하고, 노이즈 데이터 셋에 포함된 하나 이상의 제 2 입력 데이터와 이에 대응하는 하나 이상의 제 2 레이블로 구성된 노이즈 배치를 형성할 수 있다. 여기에서, 제 1 입력 데이터는 클린 배치에 포함된 입력
Figure PCTKR2022016182-appb-img-000135
, 제 1 레이블은
Figure PCTKR2022016182-appb-img-000136
의 클린 레이블
Figure PCTKR2022016182-appb-img-000137
, 제 2 입력 데이터는 노이즈 배치에 포함된 입력
Figure PCTKR2022016182-appb-img-000138
, 제 2 레이블은
Figure PCTKR2022016182-appb-img-000139
의 노이즈 레이블
Figure PCTKR2022016182-appb-img-000140
에 대응한다.
The processor 1010 forms a clean batch composed of one or more first input data included in the clean data set and one or more first labels corresponding to the one or more first input data included in the clean data set, and one or more second input data included in the noise data set and the corresponding one or more first labels. It is possible to form a noise batch consisting of one or more second labels. Here, the first input data is an input included in the clean batch.
Figure PCTKR2022016182-appb-img-000135
, the first label is
Figure PCTKR2022016182-appb-img-000136
clean label
Figure PCTKR2022016182-appb-img-000137
, the second input data is an input included in the noise batch
Figure PCTKR2022016182-appb-img-000138
, the second label is
Figure PCTKR2022016182-appb-img-000139
noise label of
Figure PCTKR2022016182-appb-img-000140
respond to
구체적으로, 클린 배치는 클린 데이터 셋으로부터 선택된 (N * K)개의 샘플들을 포함하고, N은 클린 데이터 셋에 포함된 클래스들의 수이며, K는 클래스들 각각으로부터 선택되는 샘플들의 수이고, N 및 K는 1 이상의 자연수일 수 있다. 또한, 노이즈 배치는 노이즈 데이터 셋에서 선택된 (N * K)개의 샘플들로 구성되고, N 및 K는 1 이상의 자연수일 수 있다. Specifically, the clean batch includes (N * K) samples selected from the clean data set, N is the number of classes included in the clean data set, K is the number of samples selected from each of the classes, N and K may be a natural number greater than or equal to 1. Also, the noise batch is composed of (N * K) samples selected from the noise data set, and N and K may be natural numbers greater than or equal to 1.
또한, 프로세서(1010)는 제 1 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 제 1 레이블에 기초하여 전환 매트릭스를 추정할 수 있다. 여기에서, 제 1 입력 데이터에 대한 노이즈 분류기의 출력 데이터는
Figure PCTKR2022016182-appb-img-000141
에 대응한다.
Also, the processor 1010 may estimate a conversion matrix based on the output data of the noise classifier for the first input data and the first label. Here, the output data of the noise classifier for the first input data is
Figure PCTKR2022016182-appb-img-000141
respond to
또한, 프로세서(1010)는 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 2 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 1 레이블, 제 2 레이블 및 전환 매트릭스에 기초하여 클린 분류기 손실을 계산할 수 있다. 여기에서, 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터는
Figure PCTKR2022016182-appb-img-000142
, 제 2 입력 데이터에 대한 클린 분류기의 출력 데이터는
Figure PCTKR2022016182-appb-img-000143
에 대응한다.
Also, the processor 1010 may calculate a clean classifier loss based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, the second label, and the conversion matrix. there is. Here, the output data of the clean classifier for the first input data is
Figure PCTKR2022016182-appb-img-000142
, the output data of the clean classifier for the second input data is
Figure PCTKR2022016182-appb-img-000143
respond to
구체적으로, 프로세서(1010)가 클린 분류기 손실을 계산하는 것은, 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터 및 제 1 레이블에 기초하여 클린 데이터 기반 손실을 계산하고, 제 2 입력 데이터에 대한 클린 분류기의 출력 데이터, 전환 매트릭스 및 제 2 레이블에 기초하여 노이즈 데이터 기반 손실을 계산하며, 클린 데이터 기반 손실 및 노이즈 데이터 기반 손실에 기초하여 클린 분류기 손실을 계산하는 것을 포함할 수 있다. Specifically, the processor 1010 calculates the clean classifier loss based on the output data and the first label of the clean classifier for the first input data, and calculates the clean classifier loss for the second input data. Calculating a noise data-based loss based on the output data of , a conversion matrix, and a second label, and calculating a clean classifier loss based on the clean data-based loss and the noise-data-based loss.
또한, 프로세서(1010)는 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산할 수 있다. 여기에서, 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터는
Figure PCTKR2022016182-appb-img-000144
에 대응한다.
Also, the processor 1010 may calculate a noise classifier loss based on the output data of the noise classifier for the second input data and the second label. Here, the output data of the noise classifier for the second input data is
Figure PCTKR2022016182-appb-img-000144
respond to
구체적으로, 프로세서(1010)는 제 2 입력 데이터에 대한 노이즈 분류기의 출력 및 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산할 수 있다. Specifically, the processor 1010 may calculate a noise classifier loss based on the output of the noise classifier for the second input data and the second label.
또한, 프로세서(1010)는 클린 분류기 손실 및 노이즈 분류기 손실에 기초하여 클린 분류기 및 노이즈 분류기가 노이즈 레이블을 학습하도록 할 수 있다. Further, the processor 1010 may cause the clean classifier and the noise classifier to learn noise labels based on the clean classifier loss and the noise classifier loss.
구체적으로, 클린 분류기는 제 1 선형 분류기를 포함하고, 노이즈 분류기는 제 2 선형 분류기를 포함하며, 클린 분류기 및 노이즈 분류기는 동일한 특징 추출기를 공유할 수 있다. 또한, 프로세서(1010)는 단일 역전파를 통해 특징 추출기의 파라미터, 제 1 선형 분류기의 파라미터 및 제 2 선형 분류기의 파라미터를 최적화할 수 있다. Specifically, the clean classifier may include a first linear classifier, the noise classifier may include a second linear classifier, and the clean classifier and the noise classifier may share the same feature extractor. Also, the processor 1010 may optimize the parameters of the feature extractor, the parameters of the first linear classifier, and the parameters of the second linear classifier through single backpropagation.
또한, 프로세서(1010)는 제 2 입력 데이터에 대응하는 제 2 레이블을 보정할 수 있다. 구체적으로, 프로세서(1010)가 제 2 레이블을 보정하는 것은, 제 2 입력 데이터에 대한 클린 분류기의 출력 데이터에 기초하여 확률 벡터를 생성하고, 확률 벡터에 포함된 하나 이상의 원소의 값과 임계값의 비교 결과에 기초하여 제 2 레이블을 보정하는 것을 포함할 수 있다. Also, the processor 1010 may correct a second label corresponding to the second input data. Specifically, correcting the second label by the processor 1010 generates a probability vector based on the output data of the clean classifier for the second input data, and determines the value of one or more elements included in the probability vector and the threshold value. and correcting the second label based on the comparison result.
예를 들어, 프로세서(1010)는 프로그램 내에 포함된 코드 또는 명령어로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 여기에서, 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치가 포함될 수 있으나, 이에 한정되는 것은 아니다.For example, the processor 1010 may refer to a data processing device embedded in hardware having a physically structured circuit to perform functions expressed by codes or instructions included in a program. Here, as an example of the data processing unit built into the hardware, a microprocessor, a central processing unit (CPU), a processor core, a multiprocessor, an application-specific ASIC Integrated circuit), a processing device such as a field programmable gate array (FPGA) may be included, but is not limited thereto.
도 11은 일 실시예에 따른 최종 모델이 활용되는 일 예를 설명하기 위한 도면이다.11 is a diagram for explaining an example in which a final model is utilized according to an embodiment.
도 11에는 일 실시예에 따른 서버(1110) 및 복수의 단말기들(1121 내지 1124)을 포함하는 네트워크 구성도가 도시되어 있다.11 shows a network configuration diagram including a server 1110 and a plurality of terminals 1121 to 1124 according to an embodiment.
서버(1110)는 복수의 단말기들(1121 내지 1124) 사이를 연결하는 중개 장치(mediation device)일 수 있다. 서버(1110)는 복수의 단말기들(1121 내지 1124) 사이에서 데이터를 송수신할 수 있도록 중개 서비스를 제공할 수 있다. 서버(1110) 및 복수의 단말기들(1121 내지 1124)은 통신망에 의하여 서로 연결될 수 있다. 서버(1110)는 통신망을 통해 복수의 단말기들(1121 내지 1124)에 데이터를 전송하거나 데이터를 수신할 수 있다.The server 1110 may be a mediation device that connects the plurality of terminals 1121 to 1124. The server 1110 may provide a mediation service to transmit/receive data between a plurality of terminals 1121 to 1124 . The server 1110 and the plurality of terminals 1121 to 1124 may be connected to each other through a communication network. The server 1110 may transmit data to or receive data from a plurality of terminals 1121 to 1124 through a communication network.
여기에서, 통신망은 유선 통신망, 무선 통신망 및 복합 통신망 중 하나로써 구현될 수 있다. 예를 들어, 통신망은 3G, LTE(Long Term Evolution), LTE-A 및 5G 등과 같은 이동 통신망을 포함할 수 있다. 또한, 통신망은 와이파이(Wi-Fi), UMTS(Universal Mobile Telecommunications System)/GPRS(General Packet Radio Service), 또는 이더넷(Ethernet) 등과 같은 유선 또는 무선 통신망을 포함할 수 있다. Here, the communication network may be implemented as one of a wired communication network, a wireless communication network, and a complex communication network. For example, the communication network may include mobile communication networks such as 3G, Long Term Evolution (LTE), LTE-A, and 5G. In addition, the communication network may include a wired or wireless communication network such as Wi-Fi, Universal Mobile Telecommunications System (UMTS)/General Packet Radio Service (GPRS), or Ethernet.
통신망은 마그네틱 보안 전송(MST, Magnetic Secure Transmission), RFID(Radio Frequency IDentification), NFC(Near Field Communication), 지그비(ZigBee), Z-Wave, 블루투스(Bluetooth), 저전력 블루투스(BLE, Bluetooth Low Energy), 또는 적외선 통신(IR, InfraRed communication) 등과 같은 근거리 통신망을 포함할 수 있다. 통신망은 근거리 네트워크(LAN, Local Area Network), 도시권 네트워크(MAN, Metropolitan Area Network), 또는 광역 네트워크(WAN, Wide Area Network) 등을 포함할 수 있다.Communication networks include Magnetic Secure Transmission (MST), Radio Frequency IDentification (RFID), Near Field Communication (NFC), ZigBee, Z-Wave, Bluetooth, and Bluetooth Low Energy (BLE). , or may include a local area network such as infrared communication (IR, InfraRed communication). The communication network may include a local area network (LAN), a metropolitan area network (MAN), or a wide area network (WAN).
복수의 단말기들(1121 내지 1124)은 각각 데스크탑 컴퓨터, 랩탑 컴퓨터, 스마트폰, 스마트 태블릿, 스마트 워치, 이동 단말, 디지털 카메라, 웨어러블 디바이스(wearable device), 또는 휴대용 전자기기 중 하나로 구현될 수 있다. 또한, 복수의 단말기들(1121 내지 1124)은 프로그램 또는 애플리케이션을 실행할 수 있다. Each of the plurality of terminals 1121 to 1124 may be implemented as one of a desktop computer, a laptop computer, a smart phone, a smart tablet, a smart watch, a mobile terminal, a digital camera, a wearable device, or a portable electronic device. Also, the plurality of terminals 1121 to 1124 may execute programs or applications.
예를 들어, 복수의 단말기들(1121 내지 1124)는 중개 서비스를 제공받을 수 있는 어플리케이션을 실행할 수 있다. 여기에서, 중개 서비스는 복수의 단말기들(1121 내지 1124)의 사용자들이 상호 간에 화상 통화 및/또는 음성 통화를 수행하는 것을 의미한다.For example, the plurality of terminals 1121 to 1124 may execute an application capable of receiving mediation services. Here, the mediation service means that users of the plurality of terminals 1121 to 1124 perform video calls and/or voice calls with each other.
중개 서비스를 제공하기 위하여, 서버(1110)는 다양한 분류 작업을 수행할 수 있다. 예를 들어, 서버(1110)는 복수의 단말기들(1121 내지 1124)의 사용자로부터 제공된 정보에 기초하여, 사용자들을 소정의 클래스로 분류할 수 있다. 특히, 서버(1110)가 중개 서비스에 가입된 사람들(즉, 복수의 단말기들(1121 내지 1124)의 사용자)로부터 각자의 얼굴 이미지를 수신한 경우, 서버(1110)는 다양한 목적을 위하여 얼굴 이미지를 소정의 클래스로 분류할 수 있다. 예를 들어, 소정의 클래스는 사람의 성별을 기준으로 설정된 클래스 일 수도 있고, 사람의 나이를 기준으로 설정된 클래스 일 수도 있다.In order to provide mediation services, the server 1110 may perform various classification tasks. For example, the server 1110 may classify users into predetermined classes based on information provided from users of the plurality of terminals 1121 to 1124 . In particular, when the server 1110 receives individual face images from people subscribed to the mediation service (ie, users of the plurality of terminals 1121 to 1124), the server 1110 converts the face images for various purposes. It can be classified into a certain class. For example, the predetermined class may be a class set based on a person's gender or a class set based on a person's age.
다른 예시로서, 본 개시의 분류 모델은 서버(1110)가 어뷰징(abusing) 요소를 필터링하는 데 사용될 수 있다. 구체적으로, 서버(1110)는 중개 서비스에 가입된 사용자(즉, 복수의 단말기들(1121 내지 1124))로부터 이미지를 수신한 경우, 서버(1110)는 수신된 이미지를 소정의 클래스로 분류할 수 있는데, 이 때, 소정의 클래스는 어뷰징 요소를 기준으로 설정될 수 있다. 예를 들어, 수신된 이미지에 어뷰징 요소가 포함된다고 결정된 것에 응답하여, 서버(1110)는 수신된 이미지를 '어뷰징 클래스'로 분류하고 레이블링할 수 있다. 본 개시에서, 어뷰징 요소는, 유해한 요소, 공서양속에 반하는 요소, 가학적 요소, 성적 요소, 미성년자에게 적절하지 않은 요소 등과 같이, 표시되는 것을 방지할 필요가 있는 요소를 지칭할 수 있다. 일 실시예에서, 서버(1110)는, 어뷰징 요소를 포함함에 따라 어뷰징 요소가 포함된 것으로 분류된 이미지에 관한 데이터 송수신을 중단시키거나, 해당 이미지를 전송한 단말기의 서비스 이용을 차단할수 있다. 다른 실시예에서, 서버(1110)는 어뷰징 요소가 포함된 것으로 분류된 이미지에 관한 데이터 송수신을 위해 추가적인 인증 절차를 요청할 수 있다. 이 때, 도 1 내지 도 8을 참조하여 상술한 방법에 따라 생성된 최종 모델이 서버(1110)에 저장되고, 서버(1110)는 이미지를 소정의 클래스로 정확하게 분류할 수 있다.As another example, the classification model of the present disclosure may be used by server 1110 to filter abusing elements. Specifically, when the server 1110 receives an image from a user subscribed to a mediation service (ie, a plurality of terminals 1121 to 1124), the server 1110 may classify the received image into a predetermined class. At this time, a predetermined class may be set based on the abusing element. For example, in response to determining that the received image includes an abusing element, the server 1110 may classify and label the received image as an 'abusing class'. In the present disclosure, an abusive element may refer to an element that needs to be prevented from being displayed, such as a harmful element, an element against public order and morals, a sadistic element, a sexual element, an element inappropriate for minors, and the like. In one embodiment, the server 1110 may stop data transmission/reception regarding an image classified as containing the abusing element according to the inclusion of the abusing element, or may block service use of a terminal that has transmitted the image. In another embodiment, the server 1110 may request an additional authentication procedure to transmit/receive data about an image classified as containing an abusing element. At this time, the final model generated according to the method described above with reference to FIGS. 1 to 8 is stored in the server 1110, and the server 1110 can accurately classify the image into a predetermined class.
상술한 바에 따르면, 입력 데이터의 분포를 불문하고, 입력 데이터를 소정의 클래스로 정확하게 분류할 수 있는 분류 모델이 생성될 수 있다.According to the foregoing, a classification model capable of accurately classifying the input data into a predetermined class regardless of the distribution of the input data can be created.
한편, 상술한 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 방법에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 램, USB, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.On the other hand, the above-described method can be written as a program that can be executed on a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. In addition, the structure of data used in the above-described method can be recorded on a computer-readable recording medium through various means. The computer-readable recording medium includes storage media such as magnetic storage media (eg, ROM, RAM, USB, floppy disk, hard disk, etc.) and optical reading media (eg, CD-ROM, DVD, etc.) do.
본 실시예와 관련된 기술 분야에서 통상의 지식을 가진 자는 상기된 기재의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 방법들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 하며, 권리 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점을 포함하는 것으로 해석되어야 할 것이다.Those skilled in the art related to the present embodiment will be able to understand that it may be implemented in a modified form within a range that does not deviate from the essential characteristics of the above description. Therefore, the disclosed methods should be considered from an explanatory point of view rather than a limiting point of view, and the scope of rights is shown in the claims rather than the foregoing description, and should be construed to include all differences within the equivalent range.

Claims (19)

  1. 제 1 입력 데이터에 대한 노이즈 분류기(classifier)의 출력 데이터 및 상기 제 1 입력 데이터에 대응하는 제 1 레이블에 기초하여 전환 매트릭스(transition matrix)를 추정하는 단계;estimating a transition matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data;
    상기 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터, 상기 제 1 레이블, 상기 제 2 입력 데이터에 대응하는 제 2 레이블 및 상기 전환 매트릭스에 기초하여 클린 분류기 손실을 계산하는 단계;Clean based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix. calculating classifier loss;
    상기 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 상기 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산하는 단계; 및 calculating a noise classifier loss based on the output data of the noise classifier for the second input data and the second label; and
    상기 클린 분류기 손실 및 상기 노이즈 분류기 손실에 기초하여 상기 클린 분류기 및 상기 노이즈 분류기가 노이즈 레이블을 학습하도록 하는 단계; causing the clean classifier and the noise classifier to learn a noise label based on the clean classifier loss and the noise classifier loss;
    를 포함하는, 방법.Including, method.
  2. 제 1 항에 있어서, According to claim 1,
    상기 제 1 입력 데이터와 상기 제 1 레이블은 클린 데이터 셋에 포함되고,The first input data and the first label are included in a clean data set;
    상기 제 2 입력 데이터와 상기 제 2 레이블은 노이즈 데이터 셋에 포함되며,The second input data and the second label are included in a noise data set;
    상기 클린 데이터 셋은 복수의 제 1 입력 데이터와 상기 복수의 제 1 입력 데이터 각각에 대응하는 복수의 제 1 레이블을 포함하되, 상기 복수의 제 1 레이블은 상기 복수의 제 1 입력 데이터 각각에 대하여 전부 정확하게 레이블링되어있고,The clean data set includes a plurality of first input data and a plurality of first labels corresponding to each of the plurality of first input data, wherein the plurality of first labels are all for each of the plurality of first input data are correctly labeled,
    상기 노이즈 데이터 셋은 복수의 제 2 입력 데이터와 상기 복수의 제 2 입력 데이터 각각에 대응하는 복수의 제 2 레이블을 포함하되, 상기 복수의 제 2 레이블은 상기 복수의 제 2 입력 데이터 각각에 대하여 일부 부정확하게 레이블링되어있는,The noise data set includes a plurality of second input data and a plurality of second labels corresponding to each of the plurality of second input data, wherein the plurality of second labels are part of each of the plurality of second input data incorrectly labeled,
    방법.method.
  3. 제 1 항에 있어서, According to claim 1,
    상기 클린 분류기는 제 1 선형(linear) 분류기를 포함하고, The clean classifier includes a first linear classifier,
    상기 노이즈 분류기는 제 2 선형 분류기를 포함하고,The noise classifier includes a second linear classifier,
    상기 클린 분류기 및 상기 노이즈 분류기는 동일한 특징 추출기(feature extractor)를 공유하는,The clean classifier and the noise classifier share the same feature extractor,
    방법.method.
  4. 제 3 항에 있어서,According to claim 3,
    상기 학습하도록 하는 단계는, The learning step is
    단일 역전파(single back-propagation)를 통해, 상기 특징 추출기의 파라미터, 상기 제 1 선형 분류기의 파라미터 및 상기 제 2 선형 분류기의 파라미터를 최적화하는 단계를 포함하는, Optimizing parameters of the feature extractor, parameters of the first linear classifier, and parameters of the second linear classifier through single back-propagation,
    방법.method.
  5. 제 1 항에 있어서,According to claim 1,
    상기 클린 분류기 손실을 계산하는 단계는,Calculating the clean classifier loss,
    상기 제 1 입력 데이터에 대한 상기 클린 분류기의 출력 데이터 및 상기 제 1 레이블에 기초하여 클린 데이터 기반 손실을 계산하는 단계;calculating a clean data-based loss based on output data of the clean classifier for the first input data and the first label;
    상기 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터, 상기 전환 매트릭스 및 상기 제 2 레이블에 기초하여 노이즈 데이터 기반 손실을 계산하는 단계; 및calculating a loss based on noise data based on output data of the clean classifier for the second input data, the conversion matrix, and the second label; and
    상기 클린 데이터 기반 손실 및 상기 노이즈 데이터 기반 손실에 기초하여 상기 클린 분류기 손실을 계산하는 단계;calculating the clean classifier loss based on the clean data based loss and the noisy data based loss;
    를 포함하는 방법.How to include.
  6. 제 1 항에 있어서, According to claim 1,
    상기 제 2 입력 데이터에 대응하는 상기 제 2 레이블을 보정(correct)하는 단계;correcting the second label corresponding to the second input data;
    를 더 포함하는 방법.How to include more.
  7. 제 6 항에 있어서,According to claim 6,
    상기 제 2 레이블을 보정하는 단계는, The step of correcting the second label,
    상기 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터에 포함된 하나 이상의 원소의 값과 임계값의 비교 결과에 기초하여 상기 제 2 레이블을 보정하는 단계;correcting the second label based on a comparison result between values of at least one element included in output data of the clean classifier and a threshold value with respect to the second input data;
    를 포함하는 방법.How to include.
  8. 제 1 항에 있어서,According to claim 1,
    상기 방법은,The method,
    클린 데이터 셋에 포함된 하나 이상의 제 1 입력 데이터와 이에 대응하는 하나 이상의 제 1 레이블로 구성된 클린 배치를 형성하는 단계;를 더 포함하고,Forming a clean batch composed of one or more first input data included in the clean data set and one or more first labels corresponding to the one or more first input data;
    상기 클린 배치는, 상기 클린 데이터 셋에서 선택된 (N * K)개의 샘플을 포함하며,The clean batch includes (N * K) samples selected from the clean data set,
    상기 N은 상기 클린 데이터 셋에 포함된 클래스들의 수이고,N is the number of classes included in the clean data set,
    상기 K는 상기 클래스들 각각으로부터 선택되는 샘플들의 수이며,K is the number of samples selected from each of the classes,
    상기 N 및 상기 K는 1 이상의 자연수인,Wherein N and K are natural numbers of 1 or more,
    방법. method.
  9. 제 8 항에 있어서,According to claim 8,
    상기 방법은,The method,
    노이즈 데이터 셋에 포함된 하나 이상의 제 2 입력 데이터와 이에 대응하는 하나 이상의 제 2 레이블로 구성된 노이즈 배치를 형성하는 단계;를 더 포함하고,Forming a noise array composed of one or more second input data included in the noise data set and one or more second labels corresponding to the one or more second input data;
    상기 노이즈 배치는, 상기 노이즈 데이터 셋에서 선택된 M개의 샘플을 포함하며,The noise batch includes M samples selected from the noise data set,
    상기 M은 (N * K)와 동일한 수인,The M is the same number as (N * K),
    방법.method.
  10. 제 1 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium recording a program for executing the method of claim 1 on a computer.
  11. 적어도 하나의 프로그램이 저장된 메모리; 및a memory in which at least one program is stored; and
    상기 적어도 하나의 프로그램을 실행함으로써 동작하는 프로세서;를 포함하되,A processor operating by executing the at least one program; including,
    상기 프로세서는, the processor,
    제 1 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 상기 제 1 입력 데이터에 대응하는 제 1 레이블에 기초하여 전환 매트릭스를 추정하며,Estimating a conversion matrix based on output data of a noise classifier for first input data and a first label corresponding to the first input data;
    상기 제 1 입력 데이터에 대한 클린 분류기의 출력 데이터, 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터, 상기 제 1 레이블, 상기 제 2 입력 데이터에 대응하는 제 2 레이블 및 상기 전환 매트릭스에 기초하여 클린 분류기 손실을 계산하고,Clean based on output data of the clean classifier for the first input data, output data of the clean classifier for the second input data, the first label, a second label corresponding to the second input data, and the conversion matrix. compute the classifier loss,
    상기 제 2 입력 데이터에 대한 노이즈 분류기의 출력 데이터 및 상기 제 2 레이블에 기초하여 노이즈 분류기 손실을 계산하며,Calculate a noise classifier loss based on output data of the noise classifier for the second input data and the second label;
    상기 클린 분류기 손실 및 상기 노이즈 분류기 손실에 기초하여 상기 클린 분류기 및 상기 노이즈 분류기가 노이즈 레이블을 학습하도록 하는,cause the clean classifier and the noise classifier to learn a noise label based on the clean classifier loss and the noise classifier loss;
    장치.Device.
  12. 제 11 항에 있어서,According to claim 11,
    상기 제 1 입력 데이터와 상기 제 1 레이블은 클린 데이터 셋에 포함되고,The first input data and the first label are included in a clean data set;
    상기 제 2 입력 데이터와 상기 제 2 레이블은 노이즈 데이터 셋에 포함되며,The second input data and the second label are included in a noise data set;
    상기 클린 데이터 셋은 복수의 제 1 입력 데이터와 상기 복수의 제 1 입력 데이터 각각에 대응하는 복수의 제 1 레이블을 포함하되, 상기 복수의 제 1 레이블은 상기 복수의 제 1 입력 데이터 각각에 대하여 전부 정확하게 레이블링되어있고,The clean data set includes a plurality of first input data and a plurality of first labels corresponding to each of the plurality of first input data, wherein the plurality of first labels are all for each of the plurality of first input data are correctly labeled,
    상기 노이즈 데이터 셋은 복수의 제 2 입력 데이터와 상기 복수의 제 2 입력 데이터 각각에 대응하는 복수의 제 2 레이블을 포함하되, 상기 복수의 제 2 레이블은 상기 복수의 제 2 입력 데이터 각각에 대하여 일부 부정확하게 레이블링되어있는,The noise data set includes a plurality of second input data and a plurality of second labels corresponding to each of the plurality of second input data, wherein the plurality of second labels are part of each of the plurality of second input data incorrectly labeled,
    장치.Device.
  13. 제 11 항에 있어서,According to claim 11,
    상기 클린 분류기는 제 1 선형 분류기를 포함하고,The clean classifier includes a first linear classifier,
    상기 노이즈 분류기는 제 2 선형 분류기를 포함하고,The noise classifier includes a second linear classifier,
    상기 클린 분류기 및 상기 노이즈 분류기는 동일한 특징 추출기를 공유하는,The clean classifier and the noise classifier share the same feature extractor,
    장치. Device.
  14. 제 13 항에 있어서,According to claim 13,
    상기 프로세서가 상기 클린 분류기 및 상기 노이즈 분류기가 노이즈 레이블을 학습하도록 하는 것은, The processor causes the clean classifier and the noise classifier to learn noise labels,
    단일 역전파를 통해, 상기 특징 추출기의 파라미터, 상기 제 1 선형 분류기의 파라미터 및 상기 제 2 선형 분류기의 파라미터를 최적화하는 것을 포함하는,Optimizing parameters of the feature extractor, parameters of the first linear classifier, and parameters of the second linear classifier through single backpropagation,
    장치. Device.
  15. 제 11 항에 있어서,According to claim 11,
    상기 프로세서가 상기 클린 분류기 손실을 계산하는 것은, The processor calculating the clean classifier loss comprises:
    상기 제 1 입력 데이터에 대한 상기 클린 분류기의 출력 데이터 및 상기 제 1 레이블에 기초하여 클린 데이터 기반 손실을 계산하고, Calculate a clean data-based loss based on output data of the clean classifier for the first input data and the first label;
    상기 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터, 상기 전환 매트릭스 및 상기 제 2 레이블에 기초하여 노이즈 데이터 기반 손실을 계산하며,Calculate a loss based on noise data based on output data of the clean classifier for the second input data, the conversion matrix, and the second label;
    상기 클린 데이터 기반 손실 및 상기 노이즈 데이터 기반 손실에 기초하여 상기 클린 분류기 손실을 계산하는 것을 포함하는,Calculating the clean classifier loss based on the clean data-based loss and the noisy data-based loss.
    장치.Device.
  16. 제 11 항에 있어서,According to claim 11,
    상기 프로세서는,the processor,
    상기 제 2 입력 데이터에 대응하는 상기 제 2 레이블을 보정하는,correcting the second label corresponding to the second input data;
    장치. Device.
  17. 제 16 항에 있어서,17. The method of claim 16,
    상기 프로세서가 상기 제 2 레이블을 보정하는 것은, Correcting the second label by the processor,
    상기 제 2 입력 데이터에 대한 상기 클린 분류기의 출력 데이터에 포함된 하나 이상의 원소의 값과 임계값의 비교 결과에 기초하여 상기 제 2 레이블을 보정하는 것을 포함하는,Correcting the second label based on a comparison result of a threshold value and a value of one or more elements included in output data of the clean classifier for the second input data,
    장치. Device.
  18. 제 11 항에 있어서,According to claim 11,
    상기 프로세서는,the processor,
    클린 데이터 셋에 포함된 하나 이상의 제 1 입력 데이터와 이에 대응하는 하나 이상의 제 1 레이블로 구성된 클린 배치를 형성하고,Forming a clean batch composed of one or more first input data included in the clean data set and one or more first labels corresponding thereto;
    상기 클린 배치는, 상기 클린 데이터 셋에서 선택된 (N * K)개의 샘플을 포함하며,The clean batch includes (N * K) samples selected from the clean data set,
    상기 N은 상기 클린 데이터 셋에 포함된 클래스들의 수이고,N is the number of classes included in the clean data set,
    상기 K는 상기 클래스들 각각으로부터 선택되는 샘플들의 수이며,K is the number of samples selected from each of the classes,
    상기 N 및 상기 K는 1 이상의 자연수인,Wherein N and K are natural numbers of 1 or more,
    장치.Device.
  19. 제 18 항에 있어서,According to claim 18,
    상기 프로세서는,the processor,
    노이즈 데이터 셋에 포함된 하나 이상의 제 2 입력 데이터와 이에 대응하는 하나 이상의 제 2 레이블로 구성된 노이즈 배치를 형성하고,Forming a noise array composed of one or more second input data included in the noise data set and one or more second labels corresponding thereto;
    상기 노이즈 배치는, 상기 노이즈 데이터 셋에서 선택된 M개의 샘플을 포함하며, The noise batch includes M samples selected from the noise data set,
    상기 M은 (N * K)와 동일한 수인,The M is the same number as (N * K),
    장치.Device.
PCT/KR2022/016182 2021-11-04 2022-10-21 Method and device for learning noisy labels through efficient transition matrix estimation WO2023080509A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2021-0150892 2021-11-04
KR20210150892 2021-11-04
KR1020220062899A KR20230065137A (en) 2021-11-04 2022-05-23 A method and an apparatus for learning with noisy labels by efficient transition matrix estimation
KR10-2022-0062899 2022-05-23

Publications (1)

Publication Number Publication Date
WO2023080509A1 true WO2023080509A1 (en) 2023-05-11

Family

ID=86241372

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/016182 WO2023080509A1 (en) 2021-11-04 2022-10-21 Method and device for learning noisy labels through efficient transition matrix estimation

Country Status (1)

Country Link
WO (1) WO2023080509A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117523212A (en) * 2023-11-09 2024-02-06 广州航海学院 Tag noise identification method, system and equipment for vehicle style image data

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
HAN JIANGFAN; LUO PING; WANG XIAOGANG: "Deep Self-Learning From Noisy Labels", 2019 IEEE/CVF INTERNATIONAL CONFERENCE ON COMPUTER VISION (ICCV), IEEE, 27 October 2019 (2019-10-27), pages 5137 - 5146, XP033723138, DOI: 10.1109/ICCV.2019.00524 *
HU MENGYING; HAN HU; SHAN SHIGUANG; CHEN XILIN: "Weakly Supervised Image Classification Through Noise Regularization", 2019 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), IEEE, 15 June 2019 (2019-06-15), pages 11509 - 11517, XP033687242, DOI: 10.1109/CVPR.2019.01178 *
MANDAL DEVRAJ; BHARADWAJ SHRISHA; BISWAS SOMA: "A Novel Self-Supervised Re-labeling Approach for Training with Noisy Labels", 2020 IEEE WINTER CONFERENCE ON APPLICATIONS OF COMPUTER VISION (WACV), IEEE, 1 March 2020 (2020-03-01), pages 1370 - 1379, XP033770991, DOI: 10.1109/WACV45572.2020.9093342 *
WANG YISEN; MA XINGJUN; CHEN ZAIYI; LUO YUAN; YI JINFENG; BAILEY JAMES: "Symmetric Cross Entropy for Robust Learning With Noisy Labels", 2019 IEEE/CVF INTERNATIONAL CONFERENCE ON COMPUTER VISION (ICCV), IEEE, 27 October 2019 (2019-10-27), pages 322 - 330, XP033723795, DOI: 10.1109/ICCV.2019.00041 *
YAO JIANGCHAO, WU HAO, ZHANG YA, TSANG IVOR W., SUN JUN: "Safeguarded Dynamic Label Regression for Noisy Supervision", PROCEEDINGS OF THE AAAI CONFERENCE ON ARTIFICIAL INTELLIGENCE, vol. 33, no. 01, 17 July 2019 (2019-07-17), pages 9103 - 9110, XP093064595, ISSN: 2159-5399, DOI: 10.1609/aaai.v33i01.33019103 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117523212A (en) * 2023-11-09 2024-02-06 广州航海学院 Tag noise identification method, system and equipment for vehicle style image data
CN117523212B (en) * 2023-11-09 2024-04-26 广州航海学院 Tag noise identification method, system and equipment for vehicle style image data

Similar Documents

Publication Publication Date Title
WO2017213398A1 (en) Learning model for salient facial region detection
WO2020111574A1 (en) System and method for incremental learning
WO2018117704A1 (en) Electronic apparatus and operation method thereof
WO2020017706A1 (en) Electronic device and method for controlling the same
WO2023080509A1 (en) Method and device for learning noisy labels through efficient transition matrix estimation
WO2020242090A1 (en) Apparatus for deep representation learning and method thereof
WO2020111647A1 (en) Multi-task based lifelong learning
EP3915063A1 (en) Multi-model structures for classification and intent determination
WO2019177373A1 (en) Electronic device for controlling predefined function based on response time of external electronic device on user input, and method thereof
EP3539056A1 (en) Electronic apparatus and operation method thereof
WO2022005090A1 (en) Method and apparatus for providing diagnosis result
WO2018097439A1 (en) Electronic device for performing translation by sharing context of utterance and operation method therefor
WO2017047876A1 (en) Reliability evaluation method and system on basis of user activity analysis on social media
WO2023101402A1 (en) Method for calculating production amount of production line, using artificial intelligence
WO2020071618A1 (en) Method and system for entropy-based neural network partial learning
WO2020080734A1 (en) Face recognition method and face recognition device
WO2020045794A1 (en) Electronic device and control method thereof
WO2019107674A1 (en) Computing apparatus and information input method of the computing apparatus
WO2021221490A1 (en) System and method for robust image-query understanding based on contextual features
WO2014148784A1 (en) Linguistic model database for linguistic recognition, linguistic recognition device and linguistic recognition method, and linguistic recognition system
WO2023014007A1 (en) Device and method for extracting compound information
WO2023033281A1 (en) Method for predicting affinity between drug and target substance
WO2019198900A1 (en) Electronic apparatus and control method thereof
WO2021015403A1 (en) Electronic apparatus and controlling method thereof
KR20070064999A (en) Method and system for providing finding lover service by using face recognition technology

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: 22890244

Country of ref document: EP

Kind code of ref document: A1