Object processing method and device
By obtaining and correcting the true labels of noisy samples and using feature similarity and prediction results to improve sample quality, the problem of the influence of noise samples is solved and the training quality and generalization ability of the machine learning model are improved.
Patent Information
- Application Number
- CN202110276806.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-03-15
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2041-03-15
AI Technical Summary
In the existing technology, when machine learning models are trained using noisy sample sets, the impact of noise samples is difficult to effectively eliminate, resulting in a decline in model performance. In addition, the screening method based on the loss function distribution is prone to misjudging samples, affecting the model's generalization ability.
By obtaining the true label of each sample in the noisy sample set, the noisy samples are identified using the label inference and correction mechanism, and the sample labels are corrected according to the feature similarity and prediction results to improve the sample quality and train the object processing network.
The training quality and generalization ability of machine learning models on noisy sample sets are improved, and the processing performance and accuracy of the models are improved.
Smart Images

Figure CN115147670B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of artificial intelligence technology, and in particular to an object processing method and device. Background Art
[0002] The development of artificial intelligence is inseparable from machine learning models, and the training of machine learning models relies on the quality of sample data. In supervised learning, sample data is annotated with labels. The more accurate the labels, the higher the quality of the sample data. Leveraging expert experience to label high-quality data requires significant labor costs. To reduce costs, data collection platforms (such as Amazon Mechanical Turk) or web crawlers can be used to obtain large amounts of low-cost sample data. However, this sample data often contains a large amount of noisy samples, i.e., samples with incorrect labels.
[0003] In related technologies, some machine learning algorithms, such as deep neural networks (DNNs), possess strong nonlinear feature representation capabilities and can learn clean samples (i.e., samples with correct labels) from a sample dataset. Specifically, based on the machine learning model's loss function distribution, for example, using the small-loss criterion, noise samples (i.e., samples with incorrect labels) can be filtered out from the sample data, thereby increasing the impact of clean samples on model training and reducing or eliminating the impact of noise samples. However, sample screening methods based on loss function distributions must be based on the principle that the loss function distributions of clean and noise samples differ, such as exhibiting a bimodal distribution. In actual screening processes, especially at the beginning of training, the loss values of both clean and noise samples are relatively large, resulting in neither being well fitted to the aforementioned loss function distributions, such as the bimodal distribution. Performing sample screening in this manner can result in a large number of samples being misclassified, such as clean samples being misclassified as noise samples and noise samples being misclassified as clean samples, thus impacting the performance of the machine learning model.
[0004] Therefore, there is an urgent need in the related technology to improve the performance of training machine learning models using noisy sample sets. Summary of the Invention
[0005] The present application provides an object processing method that solves the problem of low detection accuracy in related technologies. The present application also provides corresponding devices, equipment, computer-readable storage media, and computer program products.
[0006] On the one hand, an embodiment of the present application provides an object processing method, which can obtain the true label corresponding to each sample in the noisy sample set and use the true label to correct the label of each sample. Based on the above-mentioned label inference and correction mechanism, the noisy samples in the noisy sample set can be identified and the labels of all samples can be improved, thereby improving the training quality of the object processing network trained using the noisy sample set and enhancing the processing performance of the object processing network. On the other hand, the embodiment of the present application does not impose any restrictions on the noisy sample set, so that the method of training the network using the noisy sample set has a strong generalization ability.
[0007] Specifically, an object to be processed is input into an object processing network, and the object processing network outputs a processing result of the object to be processed; wherein the object processing network is trained using a noisy sample set, the noisy sample set including at least one noisy sample with an incorrect label, and the training includes:
[0008] Obtaining an inferred label of a target sample in the noisy sample set;
[0009] Correcting the label of the target sample according to the inferred label;
[0010] The target samples with corrected labels are used to supervise the training of an initial object processing network to obtain the object processing network.
[0011] Optionally, in one embodiment of the present application, obtaining the inferred label of the target sample in the noisy sample set includes:
[0012] Determining feature information of each sample in the noisy sample set using the object processing network;
[0013] Determine multiple reference samples of the target sample based on the feature information, wherein the feature similarity between the target sample and the reference samples meets a preset condition;
[0014] An inferred label of the target sample is determined according to feature similarities between the target sample and the multiple reference samples.
[0015] In this embodiment, feature similarity is used to determine multiple reference samples for the target sample, and the feature similarity is used to determine the inferred label of the target sample. Specifically, feature similarity can be used to indicate the importance of the reference sample in inferring the true label of the target sample. Therefore, by using feature similarity to determine the reference sample and inferred label of the target sample, a relatively accurate inferred label can be obtained.
[0016] Optionally, in one embodiment of the present application, the feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the reference sample and the class center corresponding to its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
[0017] In this embodiment, the importance of other samples to the true label of the target sample i can be measured based on the intra-class and inter-class relationships of the target sample at the same time, with high accuracy.
[0018] Optionally, in one embodiment of the present application, determining the inferred label of the target sample according to the feature similarities between the target sample and the plurality of reference samples includes:
[0019] Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set;
[0020] The label with the highest probability in the label probability distribution is used as the inferred label of the target sample.
[0021] In this embodiment, the probability distribution of the target sample on all labels can be obtained based on the feature similarity, that is, the softened label of the target sample can be obtained, so that a more accurate inferred label of the target sample can be obtained.
[0022] Optionally, in one embodiment of the present application, the inferred label of the target sample is determined using an object processing branch network, and the object processing branch network is also trained based on the noisy sample set.
[0023] In this embodiment, the noisy sample set can be used to simultaneously train multiple object processing branch networks, and the inferred labels determined by different branch networks can be exchanged. This approach not only overcomes the errors generated by the self-iteration process of the network branches, but also integrates the advantages of different network branches in filtering different noises.
[0024] Optionally, in one embodiment of the present application, the step of correcting the label of the noise sample according to the inferred label includes:
[0025] Determining a prediction result of the target sample using the object processing network;
[0026] The label of the target sample is modified according to the inferred label and the prediction result.
[0027] In this embodiment, the inferred label and the prediction result of the object processing network can be used to jointly correct the label of the target sample to improve the accuracy of the corrected label.
[0028] Optionally, in one embodiment of the present application, the prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
[0029] In this embodiment, the target samples are enhanced to enrich the number of samples and reduce the possibility of overfitting of the object processing network.
[0030] Optionally, in one embodiment of the present application, the step of modifying the label of the target sample according to the inferred label and the prediction result includes:
[0031] A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
[0032] In this embodiment, the weighted sum of the inferred label and the prediction result is used as the revised label, and the confidence of the inferred label is used as the weight of the inferred label, which can further improve the accuracy of the revised label.
[0033] Optionally, in one embodiment of the present application, the step of using the target sample with the corrected label to supervise the training of an initial object processing network to obtain the object processing network includes:
[0034] Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label;
[0035] Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
[0036] In this embodiment, the object processing network can be trained using a variety of selection methods such as clean samples and / or noise samples.
[0037] Optionally, in one embodiment of the present application, the step of training the initial object processing network using clean samples and noisy samples in the noisy sample set to obtain the object processing network includes:
[0038] Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample;
[0039] The initial object processing network is trained using the fused samples to obtain the object processing network.
[0040] In this embodiment, in the process of training the object processing network using clean samples and / or noise samples, the clean samples can be used as a basis, and any other samples can be fused on the clean samples. The object processing network is trained using the fused samples, which can enhance the impact of the clean samples on the network while bringing into play the value of the noise samples.
[0041] In a second aspect, an embodiment of the present application provides a method for generating an object processing network, wherein the object processing network is trained using a noisy sample set, wherein the noisy sample set includes at least one noisy sample with an incorrect label, including:
[0042] Obtaining an inferred label of a target sample in the noisy sample set;
[0043] Correcting the label of the target sample according to the inferred label;
[0044] The target samples with corrected labels are used to supervise the training of an initial object processing network to obtain the object processing network.
[0045] Optionally, in one embodiment of the present application, obtaining the inferred label of the target sample in the noisy sample set includes:
[0046] Determining feature information of each sample in the noisy sample set using the object processing network;
[0047] Determine multiple reference samples of the target sample based on the feature information, wherein the feature similarity between the target sample and the reference samples meets a preset condition;
[0048] An inferred label of the target sample is determined according to feature similarities between the target sample and the multiple reference samples.
[0049] Optionally, in one embodiment of the present application, the feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the reference sample and the class center corresponding to its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
[0050] Optionally, in one embodiment of the present application, determining the inferred label of the target sample according to the feature similarities between the target sample and the plurality of reference samples includes:
[0051] Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set;
[0052] The label with the highest probability in the label probability distribution is used as the inferred label of the target sample.
[0053] Optionally, in one embodiment of the present application, the inferred label of the target sample is determined using an object processing branch network, and the object processing branch network is also trained based on the noisy sample set.
[0054] Optionally, in one embodiment of the present application, the step of correcting the label of the noise sample according to the inferred label includes:
[0055] Determining a prediction result of the target sample using the object processing network;
[0056] The label of the target sample is modified according to the inferred label and the prediction result.
[0057] Optionally, in one embodiment of the present application, the prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
[0058] Optionally, in one embodiment of the present application, the step of modifying the label of the target sample according to the inferred label and the prediction result includes:
[0059] A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
[0060] Optionally, in one embodiment of the present application, the supervised training of an initial object processing network using the target sample with the corrected label to obtain the object processing network includes:
[0061] Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label;
[0062] Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
[0063] Optionally, in one embodiment of the present application, the step of training the initial object processing network using clean samples and noisy samples in the noisy sample set to obtain the object processing network includes:
[0064] Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample;
[0065] The initial object processing network is trained using the fused samples to obtain the object processing network.
[0066] In a third aspect, an embodiment of the present application provides an object processing device, the device comprising:
[0067] An object processing network, configured to output a processing result of an object to be processed; the object processing network is trained using a noisy sample set, wherein the noisy sample set includes at least one noisy sample with an incorrect label;
[0068] A label inference module, configured to obtain an inferred label of a target sample in the noisy sample set;
[0069] The label correction module is used to correct the label of the target sample according to the inferred label; the target sample after the label correction is used to supervise the training of the initial object processing network to obtain the object processing network.
[0070] Optionally, in one embodiment of the present application, the label inference module is specifically configured to:
[0071] Determining feature information of each sample in the noisy sample set using the object processing network;
[0072] Determine multiple reference samples of the target sample based on the feature information, wherein the feature similarity between the target sample and the reference samples meets a preset condition;
[0073] An inferred label of the target sample is determined according to feature similarities between the target sample and the multiple reference samples.
[0074] Optionally, in one embodiment of the present application, the feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the reference sample and the class center corresponding to its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
[0075] Optionally, in one embodiment of the present application, the label inference module is specifically configured to:
[0076] Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set;
[0077] The label with the highest probability in the label probability distribution is used as the inferred label of the target sample.
[0078] Optionally, in one embodiment of the present application, the inferred label of the target sample is determined using an object processing branch network, and the object processing branch network is also trained based on the noisy sample set.
[0079] Optionally, in one embodiment of the present application, the label correction module is specifically configured to:
[0080] Determining a prediction result of the target sample using the object processing network;
[0081] The label of the target sample is modified according to the inferred label and the prediction result.
[0082] Optionally, in one embodiment of the present application, the prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
[0083] Optionally, in one embodiment of the present application, the label correction module is specifically configured to:
[0084] A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
[0085] Optionally, in one embodiment of the present application, the object processing network is specifically configured to:
[0086] Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label;
[0087] Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
[0088] Optionally, in one embodiment of the present application, the object processing network is specifically configured to:
[0089] Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample;
[0090] The initial object processing network is trained using the fused samples to obtain the object processing network.
[0091] In a fourth aspect, an embodiment of the present application provides an apparatus for generating an object processing network, wherein the object processing network is trained using a noisy sample set, wherein the noisy sample set includes at least one noisy sample with an incorrect label, including:
[0092] A label inference module, configured to obtain an inferred label of a target sample in the noisy sample set;
[0093] A label correction module is used to correct the label of the target sample according to the inferred label; the target sample after the corrected label is used to supervise the training of the object processing network until the training termination condition is met.
[0094] Optionally, in one embodiment of the present application, the label inference module is specifically configured to:
[0095] Determining feature information of each sample in the noisy sample set using the object processing network;
[0096] Determine multiple reference samples of the target sample based on the feature information, wherein the feature similarity between the target sample and the reference samples meets a preset condition;
[0097] An inferred label of the target sample is determined according to feature similarities between the target sample and the multiple reference samples.
[0098] Optionally, in one embodiment of the present application, the feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the reference sample and the class center corresponding to its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
[0099] Optionally, in one embodiment of the present application, the label inference module is specifically configured to:
[0100] Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set;
[0101] The label with the highest probability in the label probability distribution is used as the inferred label of the target sample.
[0102] Optionally, in one embodiment of the present application, the inferred label of the target sample is determined using an object processing branch network, and the object processing branch network is also trained based on the noisy sample set.
[0103] Optionally, in one embodiment of the present application, the label correction module is specifically configured to:
[0104] Determining a prediction result of the target sample using the object processing network;
[0105] The label of the target sample is modified according to the inferred label and the prediction result.
[0106] Optionally, in one embodiment of the present application, the prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
[0107] Optionally, in one embodiment of the present application, the label correction module is specifically configured to:
[0108] A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
[0109] Optionally, in one embodiment of the present application, the object processing network is specifically configured to:
[0110] Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label;
[0111] Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
[0112] Optionally, in one embodiment of the present application, the object processing network is specifically configured to:
[0113] Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample;
[0114] The initial object processing network is trained using the fused samples to obtain the object processing network.
[0115] In a fifth aspect, an embodiment of the present application provides an object processing device, comprising: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to implement any possible implementation method of the above aspects when executing the instructions.
[0116] In a sixth aspect, an embodiment of the present application provides a non-volatile computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, implement any possible method of implementing any of the above aspects.
[0117] In a seventh aspect, an embodiment of the present application provides a computer program product, including a computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code is executed in an electronic device, a processor in the electronic device executes a method that may be implemented in any of the above aspects.
[0118] In an eighth aspect, an embodiment of the present application provides a chip comprising at least one processor, which is used to run a computer program or computer instruction stored in a memory to execute any possible method of implementing any of the above aspects.
[0119] Optionally, the chip may further include a memory for storing computer programs or computer instructions.
[0120] Optionally, the chip may further include a communication interface for communicating with other modules outside the chip.
[0121] Optionally, one or more chips may constitute a chip system.
[0122] These and other aspects of the present application will become more readily apparent from the following description of the embodiment(s). BRIEF DESCRIPTION OF THE DRAWINGS
[0123] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate exemplary embodiments, features, and aspects of the application and, together with the description, serve to explain the principles of the application.
[0124] Figure 1 The loss value distribution diagram of clean samples and noise samples in related technologies;
[0125] Figure 2 A schematic diagram of the module structure of an object processing device 100 provided in an embodiment of the present application;
[0126] Figure 3 A flowchart of an object processing method provided in an embodiment of the present application;
[0127] Figure 4 A flowchart of a label inference method provided in an embodiment of the present application;
[0128] Figure 5 A flowchart of a method for inferring labels based on reference samples provided in an embodiment of the present application;
[0129] Figure 6 A schematic diagram of a dual-branch network training provided in an embodiment of the present application;
[0130] Figure 7 A schematic diagram of the structure of a processing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0131] Various exemplary embodiments, features, and aspects of the present application will be described in detail below with reference to the accompanying drawings. The same reference numerals in the accompanying drawings represent elements with the same or similar functions. Although various aspects of the embodiments are shown in the accompanying drawings, the drawings are not necessarily drawn to scale unless otherwise indicated.
[0132] The word “exemplary” is used exclusively herein to mean “serving as an example, example, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
[0133] In addition, numerous specific details are provided in the detailed description below to better illustrate the present application. Those skilled in the art will appreciate that the present application can be practiced without certain specific details. In some instances, methods, means, components, and circuits well known to those skilled in the art are not described in detail in order to highlight the main purpose of the present application.
[0134] In related technologies, most algorithms for training machine learning models using noisy sample sets are based on the small-loss criterion, which mainly include two algorithms: loss adjustment and sample screening. Loss adjustment refers to the process of giving smaller weights to noise samples and larger weights to clean samples in the process of constructing the target loss function for model training, thereby reducing the impact of noise samples on model training. Sample selection refers to the process of using clean samples to update network parameters during training to directly eliminate the influence of noise samples. The small-loss-based criterion relies on the different loss function distributions of clean samples and noise samples, such as Figure 1 Specifically, the Beta mixture model (BMM) or Gaussian mixture model (GMM) can be used to model the loss function distribution of the sample, and a threshold can be set to distinguish between clean samples and noise samples.
[0135] In certain sample sets, such as CIFAR-10 loss, the loss functions for clean and noisy samples clearly follow a bimodal distribution. However, this does not apply to all sample sets. For example, the loss functions for noisy sample sets such as WebVision do not follow a bimodal distribution. Therefore, training methods based on the small-loss criterion have low generalization ability. In some training phases, especially at the beginning, neither clean nor noisy samples can be well fitted, resulting in large loss values for all samples and making it difficult to distinguish clean from noisy samples using the distribution of the loss function. Directly distinguishing between clean and noisy samples using a set threshold can result in a large number of samples being misclassified. This means that clean samples may be misclassified as noisy and vice versa, affecting final model performance.
[0136] Based on technical requirements similar to those above, an embodiment of the present application provides an object processing method. This method can obtain the true label corresponding to each sample in the noisy sample set, and use the true label to correct the label of each sample. Based on the above-mentioned label inference and correction mechanism, the noisy samples in the noisy sample set can be identified and the labels of all samples can be improved, thereby improving the training quality of the object processing network trained using the noisy sample set and enhancing the processing performance of the object processing network. On the other hand, the embodiment of the present application does not impose any restrictions on the noisy sample set, so that the method of training the network using the noisy sample set has a stronger generalization ability.
[0137] The object processing method provided in the embodiment of the present application can be applied to, but not limited to, Figure 2 The application scenario shown in Figure 2 is as follows. Figure 2 As shown, the scene includes an object processing device 100, and the object processing device 100 may include an object processing network 101, a label inference module 103, and a label correction module 105. The object processing device 100 may be arranged in a processing device, which has a central processing unit (CPU) and / or a graphics processing unit (GPU) for processing the input object to be processed, thereby obtaining a processing result. The object to be processed includes data such as images, text, and voice, and correspondingly, the processing method includes image classification, voice recognition, text recognition, and any machine learning model processing business based on supervised learning. It should be noted that the processing device may be a physical device or a cluster of physical devices, such as a terminal, a server, or a server cluster. Of course, the processing device may also be a virtualized cloud device, such as at least one cloud computing device in a cloud computing cluster.
[0138] In a specific implementation, the object processing network 101 can be trained based on a noisy sample set, where the noisy sample set may include at least one noisy sample with an incorrect label, such as Figure 2 In the three sample examples shown, the dog image is labeled "wolf." Therefore, in the noisy sample set, the dog image is a noise sample. The training of the object processing network 101 relies on the label inference module 103 and the label correction module 105. During training, the object processing network 101 can extract feature information for each sample in the noisy sample set and, based on the feature information, determine the object processing results for each sample, such as the probability distribution of each object across all labels. Here, "all labels" refers to all labels involved in the noisy sample set, or a preset label set that includes at least all labels involved in the noisy sample set. The label inference module 103 is used to determine the inferred label for each sample in the noisy sample set based on the feature information and, based on the inferred label, determine whether the corresponding sample is a noise sample or a clean sample. For example, if an image in the noisy sample set originally labeled "wolf" is determined to have an inferred label of "dog," then the image can be determined to be a noise sample, while the other images are clean samples. The original label is the original label of the sample before training, which is not affected by subsequent training. The label correction module 105 can be used to correct the labels of samples based on their inferred labels. In one embodiment, the label correction module 105 corrects the labels of samples based on the inferred labels and the object processing results determined by the object processing network 101. The samples with corrected labels are used to supervise the initial object processing network of the object processing network 101 for training. After multiple iterative adjustments, the object processing network 101 is obtained.
[0139] The trained object processing network 101 can be used directly, for example, Figure 2 The object processing network 101 shown can be directly used to classify images and identify the type of objects in each image.
[0140] The object processing method described in the present application is described in detail below with reference to the accompanying drawings. Although the present application provides the method operation steps as shown in the following embodiments or drawings, more or fewer operation steps may be included in the method based on routine or without creative labor. In the steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided by the embodiments of the present application. When the method is executed in the actual object processing process or by the device, it can be executed in sequence or in parallel according to the method shown in the embodiments or drawings (for example, in an environment of parallel processors or multi-threaded processing).
[0141] The following is combined with Figure 3 The training method of the object processing network 101 is specifically described, such as Figure 3 As shown, the training method may include:
[0142] S301: Obtain an inferred label of a target sample in the noisy sample set.
[0143] In the embodiment of the present application, the feature information of each sample in the noise sample set can be used to determine the inferred label of the target sample. As described above, the object processing network 101 can extract the feature information of each sample, specifically, Figure 4 As shown, the method for determining the inferred label of the target sample may include:
[0144] S401: Determine feature information of each sample in the noisy sample set using the object processing network.
[0145] S403: Determine multiple reference samples of the target sample according to the feature information, and the feature similarity between the target sample and the reference samples meets a preset condition.
[0146] The target sample in the embodiment of the present application may refer to any one sample in the noisy sample set. In the embodiment of the present application, a plurality of reference samples whose feature similarity with the target sample meets a preset condition may be selected from the noisy sample set. The preset condition may include that the similarity between the target sample and the reference sample is greater than a preset threshold, or may include that the similarity between the target sample and the reference sample is the highest among all similarities. In one embodiment of the present application, the feature similarity can be determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the class center corresponding to the reference sample and its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance. In a specific example, the feature similarity can be calculated using the following expression (1):
[0147]
[0148]
[0149] Among them, d(f i ,f j ) represents the first feature distance between the target sample i and the reference sample j. The feature distance is the distance between the feature information of the two samples in the feature space. The smaller the distance, the higher the similarity between the samples. d(f i ,f cp ) represents the class center c corresponding to the reference sample j and its label pThe second characteristic distance between m and ∈ is used to balance the relationship between the first characteristic distance and the second characteristic distance. p represents the samples in the noisy sample set whose original labels are all p (also the label of reference sample j), f n Represents the feature information of the nth sample.
[0150] Based on the above expressions (1) and (2), the feature similarity between the target sample i and other samples j in the noisy sample set D can be expressed using the following expression (3):
[0151]
[0152] In one embodiment of the present application, the feature similarities in the feature similarity set may be sorted, and the K samples with the greatest feature similarity may be used as the reference samples. In another embodiment, samples with feature similarity greater than a preset threshold may be used as the reference samples. Of course, both of the above conditions may be met simultaneously, and this application does not impose any limitation thereto.
[0153] In this embodiment of the present application, the feature similarity S can be used to indicate the importance of the reference sample j to the true label of the target sample i. The first feature distance d(f i ,f j ) is smaller, the greater the influence of reference sample j on the process of inferring the true label of target sample i, that is, the intra-class relationship of target sample i is utilized. On the other hand, if reference sample j is a noise sample, it will produce greater noise interference on the true label of target sample i, and its influence needs to be eliminated. Based on this, when reference sample j is a noise sample, d(f i ,f cp ) is large, which can significantly reduce the feature similarity S, thereby reducing the influence of reference sample j on the inference process. This means that the inter-class relationship of target sample i is utilized. In summary, the importance of other samples to the true label of target sample i can be measured based on the intra-class and inter-class relationships of target sample i, with high accuracy.
[0154] Of course, expression (1) is only one embodiment of determining the feature similarity, and the present application does not limit the method of constructing the feature similarity.
[0155] S405: Determine an inferred label of the target sample according to feature similarities between the target sample and the multiple reference samples.
[0156] In this embodiment of the present application, the feature similarity between the reference sample and the target sample can represent the importance of the reference sample in inferring the true label of the target sample. Based on this, the feature similarity between the target sample and the multiple reference samples can be used to determine the inferred label of the target sample.
[0157] In practical applications, the multiple reference samples each correspond to an original label. For example, the reference sample is an image, and the image's category label is one of cat, dog, boat, and wolf. The feature similarity between the target sample and the reference sample expresses the degree of similarity between the two samples. It is possible that the target sample has a relatively close similarity to multiple reference samples with different labels. To more accurately infer the true label of the target sample, a label probability distribution for the target sample can be determined based on the feature similarity between the target sample and the multiple samples. The label probability distribution includes the probability that the target sample corresponds to each label. In one example, after statistics, all the labels involved in the noisy sample set are {cat, dog, boat, wolf, flower, bear, ...}. Then, the label probability distribution is used to express the probability that the target sample's label is cat, dog, boat, wolf, flower, bear, etc. For example, the label probability distribution can be expressed as {cat = 0.6, dog = 0.1, boat = 0.02, wolf = 0.05, flower = 0.003, bear = 0.08, ...}. The label probability distribution can more accurately express the true label of the target object. Based on this, in one embodiment of the present application, Figure 5 Specifically, it may include:
[0158] S501: Determine the probability distribution of the target sample on all labels according to the feature similarities between the target sample and the multiple reference samples.
[0159] In one embodiment of the present application, first, the multiple reference samples can be divided according to different labels, and the sum of the feature similarities ρ between at least one reference sample corresponding to label n and the target sample i is determined. in :
[0160] ρ in =∑S(f i , f j )II{y j =n}, n=1, 2,..., C. (4)
[0161] Among them, n represents the label n, C represents the total number of label categories, II represents the example function, II{y j =n} means that when the original label of reference sample j is n, y j=1; otherwise 0.
[0162] In this way, we can get a feature similarity sum vector ρ i :
[0163] ρ i ={ρ i1 ,...,ρ in ,...,ρ i C} (5)
[0164] Since the probability value is usually distributed between 0 and 1, the sum vector of feature similarities ρ can be i Perform normalization processing, which may specifically include the following expressions:
[0165]
[0166] in, Represents the sum vector of feature similarity ρ i The normalized result is, It can be used as the probability distribution of target sample i on all labels.
[0167] Furthermore, in one embodiment of the present application, in order to enhance the important information in the sum of the feature similarities corresponding to each tag, ρ i The normalized result of Performing sharpening processing may specifically, in one embodiment, include:
[0168]
[0169] in, Express The result after sharpening processing, T represents the sharpening temperature coefficient, which is used to indicate the intensity of sharpening.
[0170] Of course, in another embodiment of the present application, the result after sharpening can also be As the probability distribution of target sample i on all labels. In a specific example, for Figure 2 The image labeled as wolf, It can be expressed as a probability distribution in the form of {cat = 0.1, boat = 0.06, wolf = 0.6, dog = 0.7, tiger = 0.16, ...}.
[0171] S503: Taking the label with the highest probability in the probability distribution as the inferred label of the target sample.
[0172] After obtaining the probability distribution of target sample i on all labels, the label corresponding to the maximum probability value can be determined from the probability distribution and used as the inferred label of target sample i. Specifically, the inferred label can be expressed as:
[0173]
[0174] Based on this, if the original label of the target sample i is different from the inferred label, it can be determined that the target sample i is a noise sample; otherwise, it is a clean sample. Specifically, in one example, the judgment result can be expressed as:
[0175]
[0176] Among them, the value of the example function II is 1, which means the original label y of the target sample i i is a clean sample, and the value 0 represents the original label y of the target sample i i is a noise sample.
[0177] In a specific example, based on Figure 2 From the probability distribution of the image labeled as wolf, it can be determined that the label with the highest probability value in the probability distribution is dog. Therefore, it can be determined that the inferred label of the image is dog, which is different from the original label wolf. Therefore, it can be determined that the image is a noise sample, and the other images are all clean samples.
[0178] S303: Correct the label of the target sample according to the inferred label.
[0179] In the embodiment of the present application, after determining the inferred label of the target sample, the label of the target sample can be corrected. In a specific embodiment, the corrected result It can include the probability distribution of the target sample on all labels, for example, it can be expressed as:
[0180]
[0181] S305: Supervise the training of an initial object processing network using the target sample with the corrected label to obtain the object processing network.
[0182] In the embodiment of the present application, after the label of the target sample is corrected, the target sample with the corrected label can be used to supervise the initial object processing network of the training object processing network 101 to obtain the object processing network 101. It should be noted that training the object processing network 101 includes a process of iteratively processing S301 and S303 multiple times until the object processing network 101 reaches convergence or reaches a predetermined number of iterations, or other training termination conditions.
[0183] In an embodiment of the present application, the purpose of training the object processing network 101 is to enable the object processing network 101 to process and obtain more accurate results. Therefore, in the process of continuous training, the performance of the object processing network 101 is also continuously enhanced. Based on this, the prediction results of the object processing network 101 can be used to correct the label of the target sample. In other words, the inferred label of the target sample and the prediction result can be used to jointly correct the label of the target sample. In one embodiment of the present application, the weighted sum of the inferred label and the prediction result can be used as the corrected label of the target sample, and the weights of the inferred label and the prediction result are determined according to the probability corresponding to the inferred label. In one example, the corrected result It can be expressed as:
[0184]
[0185] Among them, ω i represents the inferred label of target sample i The corresponding weight, also known as confidence, can be used to infer the label The corresponding probability value is p i It represents the prediction result of the object processing network 101 for the target sample i. The weight corresponding to the prediction result is (1-ω i ).
[0186] In the embodiment of the present application, the label of the target sample i is jointly corrected by using the inferred label of the target sample i and the prediction result of the object processing network 101, which can improve the accuracy of the corrected label.
[0187] In order to reduce the possibility of overfitting of the object processing network 101, data enhancement can be performed on the target sample to obtain multiple samples after data enhancement of the target sample to enrich the number of samples. For images, specific data enhancement methods may include operations such as image rotation, scaling, color adjustment, cropping, and background replacement, which are not limited in this application. Then, the object processing network 101 can be used to obtain the prediction results of the multiple samples respectively, and the prediction result p of the object processing network 101 for the target sample i can be determined based on the prediction results of the multiple samples. i In a specific example, the prediction result can be expressed as:
[0188]
[0189] Among them, x i,m represents the mth enhanced sample of target sample i, M represents the total number of enhanced samples of target sample i, θ represents the parameters of the object processing network 101, P(xi,m ,θ) represents the object processing network 101 for x i,m prediction results.
[0190] In an embodiment of the present application, the object processing network 101 can be trained using the clean samples and / or the noise samples. That is, the object processing network 101 can be trained using the clean samples alone or the noise samples alone. Of course, the object processing network 101 can also be trained using both the clean samples and the noise samples. When training the object processing network 101 using the clean samples and the noise samples, the clean samples and the noise samples can be used as a training set to train the object processing network 101. In another embodiment of the present application, the influence of the clean samples on the object processing network 101 can also be enhanced. Specifically, data augmentation can be performed on the clean samples. This data augmentation method may include, for a target clean sample, selecting a sample from the clean samples and / or the noise samples and fusing it with the target clean sample. For images, the fusion method may include, for example, superimposing image pixel information, superimposing corrected labels, and so on. Using the fused samples to train the object processing network can enhance the influence of the clean samples on the network while leveraging the value of the noise samples.
[0191] In actual application environments, using the same machine learning model to train the same batch of data may produce two machine learning models with different performance, and each machine learning model has its own advantages. Based on this, in one embodiment of the present application, multiple different object processing branch networks can be used to process the same batch of noisy sample sets respectively, and obtain the inferred labels corresponding to each sample in the noisy sample set. Then, each object processing branch network can send the determined inferred labels of each sample to other object processing branch networks.
[0192] The following is combined with Figure 6 The method of the above embodiment is described as follows. Figure 6 As shown, the object processing network 101 and the object processing network 101' are two different network branches, but are trained based on the same noisy sample set. In order to make the two different network branches have their own performance advantages, such as filtering different types of noise samples, different initial network parameters can be set for the object processing network 101 and the object processing network 101', or the order of processing samples in the noisy sample set can be set to be different, so that the object processing network 101 and the object processing network 101' have different performance advantages. Specifically, the object processing network 101 and the object processing network 101' can respectively determine the inferred labels of each sample in accordance with the above-mentioned method of determining the inferred labels of the target sample. Figure 6 As shown, the object processing network 101 can determine the first feature information of the first target sample in the noisy sample set, and the label inference module 103 can determine the inferred label of the first target sample based on the first feature information. On another branch network, the object processing network 101' can determine the second feature information of the second target sample in the noisy sample set, and the label inference module 103 can determine the inferred label of the second target sample based on the second feature information. According to the method of the above embodiment, the object processing network 101 and the object processing network 101' can exchange the inferred labels of the determined target samples. In this way, the label correction module 105 corrects the label of the second target sample, and on the other hand, the label correction module 105' corrects the label of the first target sample. The correction method can refer to the above expressions (11) and (12), which will not be repeated here. In one embodiment of the present application, the prediction results of the object processing network 101 and the object processing network 101' for the first target sample and the second target sample respectively can also be simultaneously integrated into the process of correcting the labels of the first target sample and the second target sample. As shown Figure 6 As shown, the prediction result of the object processing network 101 for the first target sample can be passed to the label correction network 105 and the label correction network 105'. On another network branch, the prediction result of the object processing network 101' for the second target sample can be passed to the label correction network 105' and the label correction network 105. In one example, p in expression (11) i The prediction results of the two networks can be included in:
[0193]
[0194] Among them, x i represents the first / second target sample i, θ represents the parameters of the object processing network 101, θ' represents the parameters of the object processing network 101', P(x i ,θ) represents the object processing network 101 for x i The prediction result, P'(x i ,θ') represents the object processing network 101' for x i prediction results.
[0195] In one embodiment of the present application, data enhancement of the target sample can also be considered. Therefore, the prediction result p i The following expressions can also be included:
[0196]
[0197] Among them, x i,mrepresents the mth sample of the first / second target sample i after data enhancement, M represents the total number of samples after data enhancement for the first / second target sample i, θ represents the parameters of the object processing network 101, θ' represents the parameters of the object processing network 101', P(x i,m ,θ) represents the object processing network 101 for x i,m The prediction result, P'(x i,m ,θ') represents the object processing network 101' for x i,m prediction results.
[0198] It should be noted that Figure 6 Only a case with two network branches is shown. In other embodiments, when there are three or more network branches, during the sample exchange process, the samples of a network branch can be sent to other network branches, and samples can be obtained from other network branches. For example, in a case with three networks, network 1 can send samples to network 2, network 2 can send samples to network 3, and network 3 can send samples to network 1.
[0199] In an embodiment of the present application, when multiple object processing branch networks are trained simultaneously, the object to be processed can be input into each of the multiple object processing branch networks, and each of the multiple object processing branch networks outputs a corresponding processing result. The average of the multiple processing results can then be used as the final processing result for the object to be processed.
[0200] Combined with the above Figures 1 to 6 , describes in detail the object processing method provided by the present application, and will now describe the object processing apparatus 100 and device 700 provided by the present application in conjunction with the accompanying drawings.
[0201] See also Figure 2 The structural diagram of the object processing device 100 in the system architecture diagram shown in FIG. Figure 2 As shown, the device 100 includes:
[0202] An object processing network 101 is configured to output a processing result of an object to be processed; the object processing network is trained using a noisy sample set, wherein the noisy sample set includes at least one noisy sample with an incorrect label;
[0203] The label inference module 103 is used to obtain the inferred label of the target sample in the noisy sample set;
[0204] The label correction module 105 is used to correct the label of the target sample according to the inferred label; the target sample with the corrected label is used to supervise the training of the initial object processing network to obtain the object processing network.
[0205] Optionally, in one embodiment of the present application, the label inference module is specifically configured to:
[0206] Determining feature information of each sample in the noisy sample set using the object processing network;
[0207] Determine multiple reference samples of the target sample based on the feature information, wherein the feature similarity between the target sample and the reference samples meets a preset condition;
[0208] An inferred label of the target sample is determined according to feature similarities between the target sample and the multiple reference samples.
[0209] Optionally, in one embodiment of the present application, the feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the reference sample and the class center corresponding to its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
[0210] Optionally, in one embodiment of the present application, the label inference module is specifically configured to:
[0211] Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set;
[0212] The label with the highest probability in the label probability distribution is used as the inferred label of the target sample.
[0213] Optionally, in one embodiment of the present application, the inferred label of the target sample is determined using an object processing branch network, and the object processing branch network is also trained based on the noisy sample set.
[0214] Optionally, in one embodiment of the present application, the label correction module is specifically configured to:
[0215] Determining a prediction result of the target sample using the object processing network;
[0216] The label of the target sample is modified according to the inferred label and the prediction result.
[0217] Optionally, in one embodiment of the present application, the prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
[0218] Optionally, in one embodiment of the present application, the label correction module is specifically configured to:
[0219] A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
[0220] Optionally, in one embodiment of the present application, the object processing network is specifically configured to:
[0221] Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label;
[0222] Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
[0223] Optionally, in one embodiment of the present application, the object processing network is specifically configured to:
[0224] Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample;
[0225] The initial object processing network is trained using the fused samples to obtain the object processing network.
[0226] The object processing device 100 according to the embodiment of the present application may correspond to executing the method described in the embodiment of the present application, and the above and other operations and / or functions of each module in the object processing device 100 are respectively to implement Figure 3 、 Figure 4 、 Figure 5 For the sake of brevity, the corresponding processes of each method in are not repeated here.
[0227] It should also be noted that the embodiments described above are merely illustrative, wherein the modules described as separate components may or may not be physically separate, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place, or they may be distributed across multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the present embodiment. In addition, in the drawings of the device embodiments provided in this application, the connection relationship between the modules indicates that there is a communication connection between them, which can be specifically implemented as one or more communication buses or signal lines.
[0228] The present application also provides a device 700 for implementing the above Figure 2The functions of the object processing apparatus 100 in the system architecture diagram are shown. Device 700 may be a physical device or a cluster of physical devices, or a virtualized cloud device, such as at least one cloud computing device in a cloud computing cluster. For ease of understanding, this application uses device 700 as an independent physical device to illustrate the structure of device 700.
[0229] Figure 7 A schematic diagram of the structure of a device 700 is provided, such as Figure 7 As shown, device 700 includes bus 701, processor 702, communication interface 703 and memory 704. Processor 702, memory 704 and communication interface 703 communicate via bus 701. Bus 701 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. Buses can be divided into address buses, data buses, control buses, etc. For ease of representation, Figure 7 The bus shown in FIG. 7 is represented by only one thick line, but this does not mean that there is only one bus or one type of bus. The communication interface 703 is used for external communication, for example, to obtain images and point cloud data of the target environment.
[0230] The processor 702 may be a central processing unit (CPU). The memory 704 may include a volatile memory, such as a random access memory (RAM). The memory 704 may also include a non-volatile memory, such as a read-only memory (ROM), a flash memory, a HDD, or an SSD.
[0231] The memory 704 stores executable codes, and the processor 702 executes the executable codes to perform the aforementioned object processing method.
[0232] Specifically, in the implementation Figure 2 In the case of the embodiment shown, and Figure 2 When each module of the object processing device 100 described in the embodiment is implemented by software, Figure 2The software or program code required for the functions of the object processing network 101, label inference module 103, and label correction module 105 is stored in the memory 704. The processor 702 executes the program code corresponding to each module stored in the memory 704, such as the program code corresponding to the object processing network 101, label inference module 103, and label correction module 105, to determine the processing result of the object to be processed.
[0233] An embodiment of the present application further provides a computer-readable storage medium, which includes instructions, and the instructions instruct the device 700 to execute the object processing method applied to the object processing apparatus 100.
[0234] The present application also provides a computer program product. When the computer program product is executed by a computer, the computer performs any of the aforementioned object processing methods. The computer program product may be a software installation package. When any of the aforementioned object processing methods is required, the computer program product may be downloaded and executed on the computer.
[0235] Through the description of the above embodiments, those skilled in the art can clearly understand that the present application can be implemented by means of software plus necessary general hardware, and of course can also be implemented by special hardware including application-specific integrated circuits, special CPUs, special memories, special components, etc. In general, all functions performed by computer programs can be easily implemented with corresponding hardware, and the specific hardware structures used to implement the same function can also be diverse, such as analog circuits, digital circuits or special circuits, etc. However, for the present application, software program implementation is a better implementation method in most cases. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a readable storage medium, such as a computer's floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk or optical disk, etc., and includes a number of instructions to enable a computer device (which can be a personal computer, training equipment, or network equipment, etc.) to execute the methods described in each embodiment of the present application.
[0236] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware, or any combination thereof. When implemented by software, all or part of the embodiments may be implemented in the form of a computer program product.
[0237] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, a computer, a training device or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website, a computer, a training device or a data center. The computer-readable storage medium can be any available medium that a computer can store or a data storage device such as a training device, a data center, etc. that includes one or more available media integrations. The available medium can be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)).
[0238] The computer-readable program instructions or codes described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions to be stored in the computer-readable storage medium in each computing / processing device.
[0239] The computer program instructions for performing the operations of the present application may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, by utilizing the state information of computer-readable program instructions to personalize an electronic circuit, such as a programmable logic circuit, a field-programmable gate array (FPGA), or a programmable logic array (PLA), the electronic circuit can execute the computer-readable program instructions, thereby implementing various aspects of the present application.
[0240] Various aspects of the present application are described herein with reference to flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present application. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0241] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device is generated that implements the functions / actions specified in one or more blocks in the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, where these instructions cause the computer, programmable data processing device, and / or other device to operate in a specific manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks in the flowchart and / or block diagram.
[0242] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more blocks in the flowchart and / or block diagram.
[0243] The flow charts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, systems, methods and computer program products according to multiple embodiments of the present application. In this regard, each box in the flow chart or block diagram can represent a part for a module, program segment or instruction, and the part for the module, program segment or instruction comprises one or more executable instructions for realizing the logical function of the specification. In some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous boxes can actually be performed substantially in parallel, and they can sometimes also be performed in the opposite order, depending on the function involved.
[0244] It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart, can be implemented by hardware that performs the corresponding function or action (such as a circuit or ASIC (Application Specific Integrated Circuit)), or can be implemented by a combination of hardware and software, such as firmware.
[0245] Although the present invention is described herein in conjunction with various embodiments, in the process of implementing the claimed invention, those skilled in the art can understand and implement other variations of the disclosed embodiments by reviewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude multiple situations. A single processor or other unit can implement several functions listed in the claims. Certain measures are recorded in different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0246] The embodiments of the present application have been described above. The above description is illustrative and not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is selected to best explain the principles of the embodiments, their practical applications, or improvements to the technology in the market, or to enable other persons skilled in the art to understand the embodiments disclosed herein.
Claims
1. An object processing method, characterized in that: include: An object to be processed is input into an object processing network, and the object processing network outputs a processing result of the object to be processed; wherein the object to be processed is an image, and the object processing network is trained using a noisy sample set, wherein the noisy sample set includes at least one noisy sample with an incorrect label, and the training includes: Obtaining an inferred label of a target sample in the noisy sample set; Correcting the label of the target sample according to the inferred label; Using the target samples with corrected labels to supervise the training of an initial object processing network to obtain the object processing network; The step of determining the inferred label of the target sample based on the feature similarities between the target sample and a plurality of reference samples includes: Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set; The label with the highest probability in the label probability distribution is used as the inferred label of the target sample; The multiple reference samples are samples in the noisy sample set whose feature similarity with the target sample meets a preset condition, and the feature similarity represents the importance of the reference samples to inferring the true label of the target sample.
2. The method according to claim 1, characterized in that The obtaining of the inferred label of the target sample in the noisy sample set includes: Determining feature information of each sample in the noisy sample set using the object processing network; A plurality of reference samples of the target sample are determined according to the feature information.
3. The method according to claim 2, characterized in that The feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the class centers corresponding to the reference sample and its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
4. The method according to claim 1, wherein The inferred labels of the target samples are determined using an object processing branch network, which is also trained based on the noisy sample set.
5. The method according to any one of claim 1, characterized in that The step of correcting the label of the noise sample according to the inferred label includes: Determining a prediction result of the target sample using the object processing network; The label of the target sample is modified according to the inferred label and the prediction result.
6. The method according to claim 5, characterized in that The prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
7. The method according to claim 5, characterized in that The modifying the label of the target sample according to the inferred label and the prediction result includes: A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
8. The method according to claim 1, characterized in that The supervised training of the initial object processing network using the target sample with the corrected label to obtain the object processing network includes: Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label; Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
9. The method according to claim 8, characterized in that The step of training the initial object processing network using the clean samples and the noisy samples in the noisy sample set to obtain the object processing network includes: Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample; The initial object processing network is trained using the fused samples to obtain the object processing network.
10. A method for generating an object processing network, characterized in that: The object processing network is trained using a noisy sample set, wherein the noisy sample set includes at least one noisy sample with an incorrect label, and the noisy sample is an image, including: Obtaining an inferred label of a target sample in the noisy sample set; Correcting the label of the target sample according to the inferred label; Using the target samples with corrected labels to supervise the training of an initial object processing network to obtain the object processing network; The step of determining the inferred label of the target sample based on the feature similarities between the target sample and a plurality of reference samples includes: Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set; The label with the highest probability in the label probability distribution is used as the inferred label of the target sample; The multiple reference samples are samples in the noisy sample set whose feature similarity with the target sample meets a preset condition, and the feature similarity represents the importance of the reference samples to inferring the true label of the target sample.
11. The method according to claim 10, characterized in that The obtaining of the inferred label of the target sample in the noisy sample set includes: Determining feature information of each sample in the noisy sample set using the object processing network; A plurality of reference samples of the target sample are determined according to the feature information.
12. The method according to claim 11, characterized in that The feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the class centers corresponding to the reference sample and its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
13. The method according to claim 10, characterized in that The inferred labels of the target samples are determined using an object processing branch network, which is also trained based on the noisy sample set.
14. The method according to any one of claims 10, characterized in that The step of correcting the label of the noise sample according to the inferred label includes: Determining a prediction result of the target sample using the object processing network; The label of the target sample is modified according to the inferred label and the prediction result.
15. The method according to claim 14, characterized in that The prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
16. The method according to claim 14, characterized in that The modifying the label of the target sample according to the inferred label and the prediction result includes: A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
17. The method according to claim 10, wherein: The supervised training of the initial object processing network using the target sample with the corrected label to obtain the object processing network includes: Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label; Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
18. The method according to claim 17, characterized in that The step of training the initial object processing network using the clean samples and the noisy samples in the noisy sample set to obtain the object processing network includes: Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample; The initial object processing network is trained using the fused samples to obtain the object processing network.
19. An object processing device, characterized in that: include: An object processing network, configured to output a processing result of an object to be processed; the object to be processed is an image, and the object processing network is trained using a noisy sample set, wherein the noisy sample set includes at least one noisy sample with an incorrect label; A label inference module, configured to obtain an inferred label of a target sample in the noisy sample set; A label correction module, configured to correct the label of the target sample according to the inferred label; The target sample with the corrected label is used to supervise the training of the initial object processing network to obtain the object processing network; The step of determining the inferred label of the target sample based on the feature similarities between the target sample and a plurality of reference samples includes: Determining a label probability distribution of the target sample based on feature similarities between the target sample and the multiple reference samples, the label probability distribution including probabilities of the target sample corresponding to each label, the labels including labels in the noisy sample set; The label with the highest probability in the label probability distribution is used as the inferred label of the target sample; The multiple reference samples are samples in the noisy sample set whose feature similarity with the target sample meets a preset condition, and the feature similarity represents the importance of the reference samples to inferring the true label of the target sample.
20. The device according to claim 19, characterized in that The label inference module is specifically used to: Determining feature information of each sample in the noisy sample set using the object processing network; A plurality of reference samples of the target sample are determined according to the feature information.
21. The device according to claim 20, characterized in that The feature similarity is determined based on a first feature distance between the target sample and the reference sample and a second feature distance between the class centers corresponding to the reference sample and its label, and the feature similarity is negatively correlated with the first feature distance and the second feature distance.
22. The device according to claim 19, characterized in that The inferred labels of the target samples are determined using an object processing branch network, which is also trained based on the noisy sample set.
23. The device according to claim 19, characterized in that The label correction module is specifically used to: Determining a prediction result of the target sample using the object processing network; The label of the target sample is modified according to the inferred label and the prediction result.
24. The device according to claim 23, characterized in that The prediction result includes a prediction result of the target sample or a sample after data enhancement is performed on the target sample.
25. The device according to claim 23, characterized in that The label correction module is specifically used to: A weighted sum of the inferred label and the predicted result is used as the corrected label of the target sample, and the weights of the inferred label and the predicted result are determined according to the probability corresponding to the inferred label.
26. The device according to claim 19, characterized in that The object processing network is specifically used for: Determining whether the target sample is a clean sample or a noise sample according to whether the original label of the target sample is the same as the inferred label; Based on the corrected labels, the initial object processing network is trained using clean samples and / or noisy samples in the noisy sample set to obtain the object processing network.
27. The device according to claim 26, characterized in that The object processing network is specifically used for: Randomly extracting a sample from the clean sample and / or the noise sample and fusing it with the clean sample and its corrected label to obtain a fused sample; The initial object processing network is trained using the fused samples to obtain the object processing network.
28. An object processing device, characterized in that: include: processor; and a memory for storing processor-executable instructions; The processor is configured to implement the method of any one of claims 1-9 or claims 10-18 when executing the instructions.
29. A non-volatile computer-readable storage medium having computer program instructions stored thereon, characterized in that: When the computer program instructions are executed by a processor, the method according to any one of claims 1 to 9 or claims 10 to 18 is implemented.
30. A computer program product, characterized in that The method comprises a computer-readable code, and when the computer-readable code is executed in a processor of an electronic device, the processor in the electronic device executes the method according to any one of claims 1 to 9 or claims 10 to 18.
Citation Information
Patent Citations
Image labeling method
CN108898166A
Medical image noise data identification method based on artificial intelligence and related device
CN111414946A