{'fraction_non_alphanumeric': 0.037933367830275046, 'fraction_numerical': 0.014448911356127851, 'mean_word_length': 4.643306379155436, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Survey on Deep Learning with Noisy Labels: How to train your model when you cannot trust on the annotations?

Noisy Labels are commonly present in data sets automatically collected from the internet, mislabeled by non-specialist annotators, or even specialists in a challenging task, such as in the medical field. Although deep learning models have shown significant improvements in different domains, an open issue is their ability to memorize noisy labels during training, reducing their generalization potential. As deep learning models depend on correctly labeled data sets and label correctness is difficult to guarantee, it is crucial to consider the presence of noisy labels for deep learning training. Several approaches have been proposed in the literature to improve the training of deep learning models in the presence of noisy labels. This paper presents a survey on the main techniques in literature, in which we classify the algorithm in the following groups: robust losses, sample weighting, sample selection, meta-learning, and combined approaches. We also present the commonly used experimental setup, data sets, and results of the state-of-the-art models.

Abstract-Noisy Labels are commonly present in data sets automatically collected from the internet, mislabeled by nonspecialist annotators, or even specialists in a challenging task, such as in the medical field. Although deep learning models have shown significant improvements in different domains, an open issue is their ability to memorize noisy labels during training, reducing their generalization potential. As deep learning models depend on correctly labeled data sets and label correctness is difficult to guarantee, it is crucial to consider the presence of noisy labels for deep learning training. Several approaches have been proposed in the literature to improve the training of deep learning models in the presence of noisy labels. This paper presents a survey on the main techniques in literature, in which we classify the algorithm in the following groups: robust losses, sample weighting, sample selection, meta-learning, and combined approaches. We also present the commonly used experimental setup, data sets, and results of the state-of-the-art models.

I. INTRODUCTION
Deep Neural Networks (DNNs) have shown great performance to deal with different computer vision tasks, such as image classification [1], segmentation [2] and object detection [3], to different areas of applications [4]- [6]. One of the factors that improve the performance of deep learning models is the use of large-scale datasets, such as ImageNet [7]. Unfortunately, the labeling process of large-scale datasets is expensive and time-consuming, and researchers sometimes resort to cheaper alternatives, such as online queries [8] and crowdsourcing [9], which can produce datasets with incorrect or noisy labels. Incorrect labels may also be present in small datasets, where the labeling task is difficult or have divergent opinions between annotators, such as medical images [10], [11].
As stated in [12], noisy labels may occur naturally when human annotators are involved. Frenay et al. [13] summarize the main sources of noisy labels into four types: 1) insufficient information to provide reliable labeling, such as poor quality images; 2) mistake made by experts; 3) variability in the labeling by several experts; and 4) data encoding or communication problems (e.g., accidental click). Figure 1 illustrates the labeling strategies and sources of noisy labels.
Most of the solutions using DNN assume that either the labels were annotated by experts or were curated and therefore, would have been perfectly annotated. However, that is not a realistic assumption, mainly when dealing with data collected in an unsupervised way (eg., web queries). As a consequence, a DNN trained with noisy labels might decrease the accuracy and require larger training sets [14].
Noisy labels are also related to semi-supervised learning. As observed by Wang et al. [15], when missing labels are incorrectly labeled in a semi-supervised approach, the challenge of semi-supervised learning approximates to noisy labels. The same can be said about pseudo-labeling techniques, where samples can be mislabeled. However, the noisy label problem is even more challenging than previous problems because we do not have information about which samples have clean labels.
Zhang et al. [14] have shown that Convolutional Neural Networks (CNNs) can easily fit any ratio of noisy labels, leading to poor generalization performance. However, it was shown that easy patterns, corresponding to easy samples with clean labels, are learned first, while difficult patterns, which are closer to noisy labels, are learned later. Based on this observation, many proposed methods are based on the smallloss trick, which consists of selecting the samples with small loss to be used as clean samples [16]- [18].
Most of the works proposed to deal with noisy labels try to answer the following questions: How to identify the noisy samples?, or more generally: How to effectively train on noisy labeled datasets? [19]. To address this problem, different strategies have been proposed: robust losses [20], [21], label cleansing [22], [23], weighting [24], meta-learning [25], ensemble learning [26], and others [9], [27], [28]. This survey describes the main approaches proposed in the literature related to training deep neural networks in the presence of noisy labels.

A. Definition
In this document, we refer to noisy samples as the ones whose labels are different from their true class. For these samples, we denote their labels as noisy labels, which means their labels are wrong. Therefore, when referring to noisy samples in the scope of this paper, it means that the noise is present only in the labels and not in the input data.

B. Problem statement
Lets consider a classification problem with a training set D = {(x 1 , y 1 ), ..., (x n , y n )}, where x i ∈ X is the i th image and y i ∈ Y is a one-hot vector representing the label over c classes. In a noisy label scenario, the labels might be wrong and we denote y ∈ Y as the observed labels, which may contain noise (i.e., incorrect labels). We denote the true label of x i as y * i . We denote the distribution of different labels for sample x by p(c|x), and C c=1 p(c|x) = 1. A supervised classification learns a function f : X → Y that maps the input space to the label space. Training the classifier has as objective to find the optimal parameters θ that minimize an empirical risk defined by a loss function. Given a loss function, L, and a classifier, f (.), the empirical risk is defined as follows: where E denotes the Monte-Carlo expectation using the training set D.

C. Types of noise
We denote the overall noise rate by η ∈ [0, 1] and η jc represents the probability of a class j be flipped to class c, as p(y i = c|y * i = j). The main types of noise studied in literature are described as follow: 1) Symmetric Noise: Symmetric noise is also called random noise or uniform noise, and it represents a noise process when a label has equal probability to flip to another class. Among the symmetric noise definition, there are two variations: symminc and symm-exc [27]. In symm-inc, the true label is included into the label flipping options, which means that in η jc = η C−1 , ∀j ∈ Y , while in the symm-exc the true label is not included, which means η jc = η C−1 , j = c. The symmetric noise, or random noise, is unlikely to represent a realistic scenario for noisy labels, but it is the main baseline for noisy labels experiments. Figure 2 (a) shows the transition matrix for symmetric noise, with η = 0.4.
2) Asymmetric Noise: : The asymmetric noise, as described in [29], is closer to a real-world label noise based on flipping labels between similar classes. For example, using CIFAR10 dataset [30], the asymmetric noise maps TRUCK→ AUTO-MOBILE, BIRD → PLANE, DEER → HORSE, as mapped by [31]. For MNIST, [29] maps 2 → 7, 3 → 8, 7 → 1 and 5 → 6. For asymmetric noise, η jc is class conditional. Figure    The open-set noise is when a sample has a true class that is not contained in the known classes of the training data. For example, if an image from CIFAR is contained in MNIST training with an incorrect label of 7, it will be trained as a class 7, but it would be an open-set sample. This type of noise is commonly found when obtaining images from automatic web search engines (e.g., Google Images).

III. LITERATURE REVIEW
Learning in the presence of noisy labels is a problem studied during the last decades [32], and several strategies have been proposed to make models more robust to noise [13]. In this work, we are grouping the main approaches in the area in the following groups: noise transition matrix, robust losses, sample weighting, sample selection, meta-learning, and combined approaches. Each category is described below:

A. Noise Transition Matrix
Most of the first approaches proposed to deal with noisy labels were based on estimating a noise transition matrix to learn how labels switch between classes, as illustrated in Figure 2. The cross-entropy loss with transition matrix is defined as follows: where (3) Several methods have been proposed to estimate the transition matrix. Patrini et al. [29] estimate this matrix using a pretrained model. Hendricks et al. [33] use a clean validation set to calculate the transition matrix, while Sukhbaatar et al. [34] propose the use of the difference between the transition matrices calculated from clean and noisy data.
Reed et al. [35] uses a transition matrix combined with a regularized loss that uses a combination of the noisy labels and labels predicted by the model. Goldberger et al. [36] use the expectation-maximization (EM) algorithm to find the optimal parameters of both network and the noise. The use of transition matrices has been further explored in different ways [37]- [39].

B. Robust Losses
Loss correction approaches usually add a regularization or modify the network probabilities to penalize less the low confident predictions, which may be related to noisy samples. One of the advantages of these approaches is that they can be used with any model. Most of the methods treat the noisy and clean samples the same way, but penalise less the low confident prediction samples, compared to the standard crossentropy [3].
Manwani et al. [40] show that 0-1 losses are more noisetolerant than commonly used convex losses. [41] compare categorical cross-entropy (CCE) with mean absolute value of error (MAE) losses, and show that MAE is more noise tolerant because MAE treats all data points equally. However, training with MAE usually leads to underfit, and it may not be beneficial using it depending on the noise type. Zhang and Sabuncu [31] propose a generalized cross-entropy loss by combining the benefits of mean absolute error and crossentropy losses. Wang et al. [20] propose an improved version of MAE (IMAE), which uses hyperparameters to adjust the weighting variance of MAE. Wang et al. [21] propose the symmetric cross-entropy, based on the fact that CCE is not symmetric. By adding symmetry to the loss, they show that it helps to deal with noisy labels. Ziyin et al. [42] propose the use of a loss function that encourages the model to abstain from learning samples with noisy labels. This idea is similar to reweighting or sample selection, where the noisy samples can be observed as having zero weight or removed. Similarly, [43] also proposes a loss function that permits abstention during training. Although some approaches benefit from removing noisy samples, using them through relabelling or giving a lower weight has shown to improve results.
Ma et al. [44] propose a robust loss function called Active Passive Loss (APL) that combines two robust loss functions that mutually boost each other. Ma et al. identify that existing robust loss functions can deal with noisy labels, but suffer from the problem of underfitting. Their proposal addresses this problem by combining losses that cause overfit, such as CCE, with one that causes underfit, as MAE.
Liu et al. [45] propose a peer loss function inspired in a peer prediction mechanism. They show that peer loss functions on the noisy data lead to the optimal or a near-optimal classifier as if performing training over the clean training data.

C. Sample Weighting
Wang et al. [46] propose a weighting scheme to reduce the contribution of the noisy samples. Similarly, [47] uses a method based on Curriculum Learning, which defines a weight to each sample based on an unsupervised estimation of data complexity.
Xue et al. [48] use a probabilistic Local Outlier Factor algorithm (pLOF), which is used as an outlier detector, to estimate a probability value of a sample be an outlier (i.e., noisy sample). [46] also uses the pLOF, but combined with a Siamese Network training. Using siamese networks encourages the model to learn similar features between clean samples of the same class and different ones among clean and noisy samples.
Harutyunyan et al. [49] show that the memorization of label noise can be reduced by reducing the mutual information between weights. In their proposal, they update the weights based on the gradients of final layers, without accessing the labels.
Lee et al. propose the CleanNet [50], which uses a predefined subset of reference images. The visual features of the reference subset are extracted using autoencoder and each new sample for training is compared with the features from the reference set. Based on the distance, a weight is set for each sample and the weighted cross-entropy is calculated.

D. Sample Selection
Jiang et al. [16] proposes MentorNet, which uses a curriculum scheme by learning first the samples, which are probably correct. MentorNet learns a data-driven curriculum dynamically with a second network, called StudentNet.
Co-teaching is proposed by Han et al. [51] and trains two deep models simultaneously, and each network selects the batch of data for each other, based on the samples with a small loss. Later, they propose Co-teaching+ [17], that uses the samples with a small loss, but that disagree on the predictions, to select the data to each other. Wei et al. [52] uses the same idea of CoTeaching, but it uses the joint agreements instead of disagreement and calculates a joint loss with Co-Regularization.
Nguyen et al. propose an algorithm called SELF [53]. SELF uses a filtering mechanism based on a model ensemble learning the remove the noisy samples from the supervised training. However, they still use the removed samples to leverage the learning using an unsupervised loss. The ensemble mechanism is based on the model's predictions in different epochs, using an exponential moving average of model snapshots. Different from most of the state of the art methods, SELF requires a small clean validation set to perform well.

E. Meta Learning
The methods described here use as main approach Meta-Learning models to deal with noisy labels. Although in the end they use meta-learning to reweight or filter samples, we grouped them here because they use a different approach to address the problem.
Ren et al. [24] use a Meta-Learning paradigm to reweight the training samples based on their gradients directions. They perform a meta gradient descent step to minimize the loss on a clean validation set. In [54] it is also used a meta-learning approach with a clean validation set, but they use a multi-layer perceptron to learn a loss-weighting function.
Li et al. [19] propose optimize a meta-objective before conventional training. By generating synthetic noisy labels, they aim to optimize a model that does not overfit to a wide spectrum of artificially generated label noise. By training the model in several generated synthetic noisy, they aim to have a noise-tolerant model able to consistently learn the underlying knowledge from data despite different label noise.

F. Combined Approaches
Mixup [55] is a technique proposed for data augmentation, that uses a linear combination between samples and labels. Their paper shows that their method is noise-tolerant, and recent literature methods started to incorporate Mixup as an important part of their algorithms. Zhang et al. [56] combine the reweighting approach using meta-learning, proposed by [24], with pseudo-label estimation and Mixup. Although they achieve state of the art for high noise regimes, it requires a small clean validation set.
Kim et al. [27] propose the use of the learning method called Negative Learning (NL), where it is used as a complementary label (i.e., a label that is different from the annotation). By using complementary labels, the chances of selecting a true label as a complementary are low, and NL decreases the risk of providing incorrect information. Therefore, training with NL is more robust to noise. However, this approach requires a longer training time, and the chance of providing incorrect information increases as the number of classes in the problem increases. In their approach, they propose three stages: Negative Learning, Positive Learning (standard training), and fine-tuning with relabeled samples.
Han et al. [57] propose to estimate class prototypes using an iterative training divided into two stages. The first stage train the network with the original noisy labels and the modified labels from the second stage. The second stage uses the trained network from the first stage and refines the prototypes, relabelling samples. With the automatic identification of prototypes, it does not need the use of a clean auxiliary set.
The DivideMix approach [58] combines several methods used in literature to deal with the noisy label problem. It first separates the samples in clean and noise based on Arazo's approach [18], using Mixture of Gaussians. At the same time, it uses the co-training strategy, where it trains two networks at the same time to avoid error accumulation. After it splits the data in clean and noisy, it trains the model in a semi-supervised approach, using MixMatch [59]. The whole process is repeated at each epoch.
The main approaches described in this section are summarized in Table I that shows the combined strategies used by the methods of the state-of-the-art. Table II shows the main components of the combined techniques in the state-of-the-art and the difference between them.

IV. EXPERIMENTAL SETUP
Most of the papers in the literature evaluate their methods by generating synthetic noise on commonly used data sets and by using data set with images collected from the internet, which may contain closed-set and open-set noise. The most used data sets used for robust model evaluations in literature are CIFAR-10/CIFAR-100 [30], Clothing1M [60], Webvision [61] and Food101-N [50].
CIFAR-10 has 10 classes with 5000 32×32 pixel training images per class (forming a total of 50000 training images), and a testing set with 10000 32×32 pixel images with 1000 images per class. CIFAR-100 has 50000 training images, but with 100 classes with 5000 32×32 pixel images per class. This data set was curated and it is assumed not to have any noisy label. Therefore, it is a common approach to add synthetic noise and evaluate the robustness of the model in a noisy data set compared to the original clean version.
Clothing1M consists of 1 million training images acquired from online shopping websites, with labels generated by surrounding texts provided by sellers. The images from the data set may vary in size, but a common approach is to resize the images to 256×256 for training. This data set contains real-world error on the labels and it is composed of 14 classes.
The Webvision contains 2.4 million images collected from the internet, with the same classes from ILSVRC12, from ImageNet [7]. The images from the data set are not all with the same size, being a common approach to resize the images to 256×256 for training. Although ImageNet has 1000 classes, most of the papers use only the 50 first classes for training, because they contain most part of the the noise. The evaluation from the models trained using Webvision is usually done using both Webvision and ILSVRC12 validation sets. Food101-N [50] is an image data set containing about 310009 training images of food recipes classified in 101 classes and 25000 images for the testing set. As the image size vary may vary, a common approach to resize the images to 256×256 for training. Its also a real-world data set, with an estimated noise rate of 20%, and it is based on the Food101 data set [62], but it has more images and it is more noisy. Table IV shows the main information about the most used data sets for evaluation of solutions in noisy label environments.

V. STATE-OF-THE-ART RESULTS
Most of the state-of-the-art methods use the fact that CNN tends to learn easy patterns first and then fit the hardest ones [63]. Arazo et al. [18] showed in his paper how the values of loss are different among clean and noisy samples. Figure 3 shows the behavior of loss function for clean and noisy, reported in [18]. The strategy of filtering the samples based on loss is called small trick and has been exploited to identify clean and noisy samples. However, the main problem is that hard samples with correct labels can behave like noisy samples, and at the same time, some noisy samples can behave like a clean sample. Therefore, this approach can not be used to filter all samples, but it helps identify most of the noise. Arazo

Approaches
Methods Advantages Disadvantages Transition Matrix [29], [33]- [39] Easy to implement. Difficult and complex to estimate the transition matrix in practice. Robust Losses [20], [21], [31], [40]- [45] It can be easily added to any training model. Requires to be combined with other strategies to be competitive with state-of-the-art. Sample Weighting [46]- [50] Reduces the influence of noisy samples, but still uses information from it.
Hard to define a correct weighting without the need of a clean auxiliary set. Sample Selection [16], [17], [51]- [53] Filter clean samples. Not competitive with state-of-the-art because do not use the noisy samples in an unsupervised way. Meta-Learning [19], [24], [54] Has big potential of generalization among different tasks.
Usually requires a clean validation set.
Use a set of combined methods that adds complexity to the solution.  Figure 4 shows the results of the split for 80% symmetric noise rate for CIFAR-10. DivideMix is currently the state-of-the-art for noisy labels, considering symmetric and asymmetric closed-set noise, without requiring a clean validation set. As described in section III, DivideMix is a combination of methods, which combines Arazo's approach, using GMM to separate clean and noisy samples, Mixup data augmentation and co-training strategy. It also uses standard data augmentation, such as rotation and flipping, as most of the methods described. The main idea of DivideMix is to separate the clean and noisy samples, using GMM, and then treat the problem as a semi-supervised problem, using MixMatch algorithm, that is a variation of the Mixup method proposed for semi-supervised problem. Furthermore, the co-training strategy helps with the noisy training.
As different methods in literature use different model archi-tectures and sometimes different data sets, it is hard to make a fair comparison between most of them. In Table IV we show the state-of-the-art for CIFAR-10, CIFAR-100, Webvision and Clothing1M, using PreActResNet18 (PRN18). We did not include the methods which use an auxiliar clean validation set, such as in [53] and [56], to make a fair comparison, and only the methods that use PRN18 in the original paper.    [58].

VI. CONCLUSION
Several studies have been proposed in the literature to address the noise label problem. Different strategies have been investigated to make the training of deep learning models more robust to noise labels. Combined strategies based on data augmentation, robust loss, sample filtering, and semisupervised approaches are currently state-of-the-art. Although we have seen an increasing interest in noisy label problems, there is still much room for improvement, mainly related to asymmetric noise and open-set noise.
Addressing the noisy label problem also impacts other areas, such as pseudo-labeling, semi-supervised and unsupervised training, where recent proposals use predicted labels to improve the training, and these labels can potentially be incorrect. At the same time, many recent strategies from these fields are also applied to noisy labels.
Recent advances have shown that the loss values of samples, mainly at the beginning of training, can help separate the clean and noisy samples. Moreover, data augmentation strategies, such as Mixup, can prevent the model from easily memorizing the noisy samples. However, it is an open question of how to differentiate hard clean samples from noisy samples. Also, semantic noise and open-set noise must be more investigated in future works.