# Meta-Data-Guided Robust Deep Neural Network Classification with Noisy Label
## 3 The Proposed CoNet-MS Framework and Its Main Modules
### Cross Dual-Branch Classifier Network Architecture  
In this paper, we aim to reduce the accumulation of errors in the classifier by filtering the noisy labeled samples by exchanging the high-confidence samples between two networks. To achieve this, we designed the crossed dual-branch network architecture. During training, in each batch of data, samples with high confidence are filtered out based on the small-loss principle, and the high-confidence samples are fed into another branch of its classifier. Note that both classifiers in dual branches have the same neural network structure, but the upper-branch classifier is parameterized by \(\theta\), and the lower-branch classifier is parameterized by \(\varphi\). Specifically, we first create two neural networks with different initial parameters. During each batch, classifiers make predictions for all samples \(\{x_{i},y_{i}\}\), and the loss values are computed. Subsequently, we select \(P(t)\), the percentage of small-loss instances, out of the batch as high-confidence data, where \(t\) denotes the \(t\)-th training epoch. \(\{x_{\theta,i},y_{\theta,i}\}\) denotes the high-confidence dataset from the upper-branch classifier, \(\{x_{\varphi},y_{\varphi}\}\) is the high-confidence dataset of the lower-branch classifier. These samples are fed into another classifier; that is, \(\{x_{\theta},y_{\theta}\}\) are input into the lower-branch classifier, and \(\{x_{\varphi},y_{\varphi}\}\) are input into the upper-branch classifier. The above operation requires the classifier to be robust enough to accurately filter out clean data. To ensure that the high-confidence samples selected in each batch are less noisy, we use the method of dynamically adjusting the memory rate \(P(t)\). Since the network tends to fit simple clean data at the beginning of training, as the loss values can more accurately distinguish between clean and noisy samples, \(P(t)\) is designed to be a larger rate at the beginning of training. As the number of training times increases, \(P(t)\) should correspondingly decrease to avoid model overfitting to noisy labels. The empirical selection \(P(t)\) is given in Section 4.4. The inferred pseudo-clean dataset by upper and lower branches \(\{x_{\varphi},y_{\theta}\}\) and \(\{x_{\varphi},y_{\varphi}\}\) are formulated as Equations (4) and (5), where \(|\{x_{i},y_{i}\}|\) means the number of samples in the obtained dataset. \[\{x_{\theta},y_{\theta}\}=\arg min_{\{x_{i},y_{i}\}:|\{x_{i},y_{i}\}|\geq P(t) \cdot n}L(f_{\theta}(x_{i}),y_{i}) \tag{4}\]  
\[\{x_{\varphi},y_{\varphi}\}=\arg min_{\{x_{i},y_{i}\}:|\{x_{i},y_{i}\}|\geq P(t )\cdot n}L(f_{\varphi}(x_{i}),y_{i}) \tag{5}\]  
Next, we input these samples into another branch; that is, \(\{x_{\theta},y_{\theta}\}\) are input into the lower-branch classifier, and \(\{x_{\varphi},y_{\varphi}\}\) are input into the upper-branch classifier. Then, the classifiers' parameters are updated. Meta-Guided Module: Reweighting Losses Between the Pseudo-Label and the Observed Label in Upper Branch  
Due to the presence of noise in the dataset, [PERSON] et al. proposed a method to generate training targets by using a convex combination of model predictions and training labels to generate pseudo-labels, thus avoiding the need to directly model the noise distribution [34]. Based on this idea, Ref. [11] implicitly filtered samples and corrected the mislabeling by predicting from a model trained on a clean dataset, assigning pseudo-labels to the training data and dynamically adjusting the weights of the samples and pseudo-labels. In our study, shown as Equation (6), pseudo-labels are defined as the maximum probability class predicted by the model, where \(C\) is the number of dataset classes. \[y_{i}^{pseudo}=\arg min_{c=1,\ldots,C}f_{\theta}(x_{i}) \tag{6}\]The loss function of the optimization parameter \(\theta\) is designed as Equation (7).