Data processing method, client, device and computer-readable storage medium

By downloading public data with labels from the cloud and automatically annotating the federated learning model, the federated learning model's low training efficiency and poor classification performance are solved, and more efficient model training and more stable performance are achieved.

CN112529027BActive Publication Date: 2024-12-31CHINA TELECOM CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN201910883990.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-09-19
Publication Date
2024-12-31
Estimated Expiration
2039-09-19

AI Technical Summary

Technical Problem

The existing federated learning technology adopts supervised learning methods locally on the client to train federated learning models, resulting in low training efficiency and users need to perform manual annotation, which is prone to malicious mislabeling, affecting model performance.

Method used

Download public data with tags from the cloud, use public data and tags to annotate locally stored private data, extract feature vectors, clustering and nearest neighbor algorithms through convolutional layer to generate pseudo-labels, train federated learning models, and improve the model's Training efficiency and classification performance.

Benefits of technology

Automatic labeling of federated learning models is realized, training efficiency and classification performance are improved, inefficient and malicious mislabeling of users' manual labeling are avoided, and the stability of the model is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112529027B_ABST
    Figure CN112529027B_ABST
Patent Text Reader

Abstract

The present disclosure provides a data processing method, client, device and computer-readable storage medium, which relate to the field of artificial intelligence technology. The data processing method includes: downloading a federated learning model and public data annotated with labels from the cloud; using the public data and the labels of the public data to annotate the private data stored locally; using the private data annotated with labels to train the federated learning model to obtain the parameters of the federated learning model; and uploading the parameters to the cloud. The present disclosure can automatically annotate the private data stored locally, thereby improving the training efficiency and classification performance of the federated learning model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of artificial intelligence technology, and in particular to a data processing method, a client, a device, and a computer-readable storage medium. Background Art

[0002] Google proposed a federated learning framework for client-side training, and improved the classification performance of the federated learning model by increasing the number of client devices involved in training and the number of communication rounds.

[0003] Figure 1 Figure 2 shows a flow chart of the federated learning algorithm. Figure 1 As shown, the federated learning algorithm includes: step A, the client downloads the federated learning model from the cloud; step B, the client trains the federated learning model using locally stored private data, and returns the parameters of the trained federated learning model to the cloud; step C, the cloud averages the parameters returned by the mobile terminal to obtain a new shared federated learning model.

[0004] For the federated learning framework, the local data of multiple clients is used to train the federated learning model in a cooperative mode. There is no need for the client to upload the private data stored locally to the cloud, which can greatly reduce the security issues caused by the leakage of sensitive information. Summary of the invention

[0005] The inventors found that the existing federated learning technology has two problems. On the one hand, the federated learning framework uses supervised learning methods to train the federated learning model locally on the client, so the client users need to spend time manually labeling private data, resulting in low training efficiency of the federated learning model. On the other hand, the malicious mislabeling of private data by the client users will lead to poor classification performance of the federated learning model.

[0006] The technical problem solved by the present disclosure is how to improve the training efficiency and classification performance of the federated learning model.

[0007] According to one aspect of an embodiment of the present disclosure, a data processing method is provided, including: downloading a federated learning model and labeled public data from the cloud; using the public data and the labels of the public data to label the locally stored private data; using the labeled private data to train the federated learning model to obtain parameters of the federated learning model; and uploading the parameters to the cloud.

[0008] In some embodiments, using public data and labels of public data to label locally stored private data includes: using a convolutional layer of a federated learning model to extract feature vectors of private data; clustering the feature vectors of private data, and labeling pseudo-labels for the private data based on the clustering results; training the federated learning model using the private data annotated with the pseudo-labels to obtain convolutional layer parameters of the federated learning model; using the trained federated learning model to re-extract feature vectors of private data and extract feature vectors of public data; labeling the private data based on the distance between the feature vector of the re-extracted private data and the feature vector of the public data.

[0009] In some embodiments, using labeled private data to train a federated learning model to obtain parameters of the federated learning model includes: using labeled private data to train a classifier of the federated learning model to obtain classifier parameters of the federated learning model; and using convolutional layer parameters and classifier parameters as parameters of the federated learning model.

[0010] In some embodiments, when clustering the feature vectors of private data, the number of clustering categories is the same as the number of categories of the labels of the public data.

[0011] In some embodiments, labeling pseudo labels for private data based on clustering results includes: if a feature vector of any first private data and a feature vector of any second private data belong to the same clustering category, labeling the first private data and the second private data with the same pseudo label; if the feature vector of the first private data and the feature vector of the second private data belong to different clustering categories, labeling the first private data and the second private data with different pseudo labels.

[0012] In some embodiments, labeling private data based on the distance between the re-extracted feature vector of private data and the feature vector of public data includes: determining a feature vector of public data that is closest to a feature vector of any third private data; using a label of the public data corresponding to a feature vector of public data as the label of the third private data; or, determining multiple feature vectors of public data that are closest to a feature vector of any third private data; and selecting the label with the largest number of occurrences from the labels of the public data corresponding to the multiple feature vectors of public data as the label of the third private data.

[0013] According to another aspect of an embodiment of the present disclosure, a client is provided, including: a data download module, configured to download a federated learning model and labeled public data from the cloud; a data labeling module, configured to use public data and labels of public data to label locally stored private data; a parameter acquisition module, configured to train the federated learning model using labeled private data to obtain parameters of the federated learning model; and a data upload module, configured to upload the parameters to the cloud.

[0014] In some embodiments, the data labeling module is configured to: extract feature vectors of private data using the convolutional layer of the federated learning model; cluster the feature vectors of the private data and label the private data with pseudo labels based on the clustering results; train the federated learning model using the private data annotated with pseudo labels to obtain the convolutional layer parameters of the federated learning model; re-extract the feature vectors of the private data using the trained federated learning model, and extract the feature vectors of the public data; label the private data based on the distance between the feature vectors of the re-extracted private data and the feature vectors of the public data.

[0015] In some embodiments, the parameter acquisition module is configured to: train a classifier of the federated learning model using labeled private data to obtain classifier parameters of the federated learning model; and use convolutional layer parameters and classifier parameters as parameters of the federated learning model.

[0016] In some embodiments, the data labeling module is configured such that, when clustering feature vectors of private data, the number of clustering categories is the same as the number of categories of labels of public data.

[0017] In some embodiments, the data labeling module is configured as follows: if the feature vector of any first private data and the feature vector of any second private data belong to the same clustering category, the same pseudo label is labeled for the first private data and the second private data; if the feature vector of the first private data and the feature vector of the second private data belong to different clustering categories, different pseudo labels are labeled for the first private data and the second private data.

[0018] In some embodiments, the data labeling module is configured to: determine a feature vector of public data that is closest to a feature vector of any third private data; use a label of the public data corresponding to a feature vector of public data as the label of the third private data; or, determine multiple feature vectors of public data that are closest to a feature vector of any third private data; and select the label with the largest number of occurrences from the labels of the public data corresponding to the feature vectors of multiple public data as the label of the third private data.

[0019] According to another aspect of an embodiment of the present disclosure, there is provided a data processing device, including: a memory; and a processor coupled to the memory, wherein the processor is configured to execute the aforementioned data processing method based on instructions stored in the memory.

[0020] According to another aspect of the embodiments of the present disclosure, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and when the instructions are executed by a processor, the aforementioned data processing method is implemented.

[0021] The present disclosure can automatically annotate private data stored locally, thereby improving the training efficiency and classification performance of the federated learning model.

[0022] Other features and advantages of the present disclosure will become apparent from the following detailed description of exemplary embodiments of the present disclosure with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0024] Figure 1 A flowchart of the federated learning algorithm is shown.

[0025] Figure 2 A flowchart diagram of some embodiments of the data processing method of the present disclosure is shown.

[0026] Figure 3 A schematic flow chart of a duplicate data processing method is shown.

[0027] Figure 4 A flowchart diagram of some embodiments of labeling private data stored locally is shown.

[0028] Figure 5 A flowchart of some embodiments of obtaining parameters of a federated learning model is shown.

[0029] Figure 6 A schematic diagram of the structure of a client according to some embodiments of the present disclosure is shown.

[0030] Figure 7 A schematic structural diagram of a data processing device according to some embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0031] The following will be combined with the drawings in the embodiments of the present disclosure to clearly and completely describe the technical solutions in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all of the embodiments. The following description of at least one exemplary embodiment is actually only illustrative and is by no means intended to limit the present disclosure and its application or use. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present disclosure.

[0032] First combine Figure 2 Some embodiments of the data processing method of the present disclosure are described.

[0033] Figure 2 Schematic diagrams showing some embodiments of the data processing method of the present disclosure. Figure 2 As shown, the data processing method in this embodiment includes steps S201 to S204.

[0034] In step S201, the federated learning model and labeled public data are downloaded from the cloud.

[0035] The federated learning model can use Google's open source TensorFlow Federated framework, and use the application programming interface provided by the framework to automatically annotate the client's local private data and implement client-side training. The federated learning model can also use the DL4J framework written in Java or a self-written federated learning framework. In comparison, the TensorFlow Federated framework has higher operating efficiency and can save development time.

[0036] The public data with labels sent from the cloud comes from a small amount of representative data collected by the developers of the federated learning framework. The labels of public data can be provided by the data provider or by the developer himself. The data types of public data can include pictures, voice, text, etc. Taking pictures as an example, the cloud has 100 pictures of different categories, that is, the public data in the cloud is limited, and it is impossible to train a good federated learning model based on the public data in the cloud alone. Clients such as mobile terminals have a large number of pictures, but these pictures are private data and have no labels.

[0037] In step S202, the private data stored locally is labeled using the public data and the label of the public data.

[0038] The data source for training the federated learning model comes from the private data stored locally on the user client. These private data are initially unlabeled, so the locally stored private data needs to be labeled. For example, when labeling, the private data can be classified according to the classification method of public data to obtain categories m1 to m100. The specific classification method can be achieved by extracting feature vectors and calculating vector distances, which will not be described in detail here. Then, find private data similar to various types of public data. For example, in the m1th category of data, the m1th category of private data is labeled according to the label of the public data.

[0039] In step S203, the federated learning model is trained using the labeled private data to obtain parameters of the federated learning model.

[0040] From the perspective of clients with a large amount of private data, users' private data can be used to improve the client's experience in predicting user behavior habits, optimizing system scheduling, etc. From the perspective of the cloud with a small amount of public data, users' private data can be used to perform distributed training on the federated learning model while ensuring user privacy, thereby obtaining a federated learning model with better performance. In addition, by combining labeled public data with labeled private data, a personalized federated learning model can be trained for the user while ensuring user privacy, thereby improving the user's personalized experience.

[0041] In step S204, the parameters are uploaded to the cloud.

[0042] After the cloud sends the federated learning model and labeled public data to the client through the network, the client can combine the clustering algorithm and the nearest neighbor algorithm to label the private data for the training of the federated learning model. Then, the trained parameters (i.e., the weights of the federated learning model) can be uploaded to the cloud and the parameters can be weighted averaged. In order to further improve the performance of the federated learning model, this data processing method can be repeated. Multiple clients continuously use data clustering and the nearest neighbor algorithm to label private data, repeatedly train the federated learning model and upload the weights of the federated learning model so that the cloud can summarize the weights of the federated learning model until the federated learning model converges. Figure 3 A schematic flow chart of a duplicate data processing method is shown.

[0043] In this embodiment, the client automatically annotates the private data stored locally, thereby using the private data that is not labeled initially to train the federated learning model. Since the user does not need to participate in manual annotation, the efficiency of annotating private data and the utilization rate of the client's local data are improved, thereby improving the training efficiency of the federated learning model. At the same time, since the situation where the user performs malicious and incorrect annotation is avoided, the accuracy of the annotated training data is improved, thereby improving the classification performance of the federated learning model and the stability of the federated learning framework.

[0044] This embodiment can be applied to the field of terminal network planning, terminal artificial intelligence applications, and cloud distributed training models, and is suitable for situations where cloud data is limited but terminal data is large. Those skilled in the art should understand that this embodiment can be applied not only to the interaction between the cloud and the client, but also to the interaction between multiple servers in the cloud.

[0045] Combine the following Figure 4 Describes how to use public data and public data labels to annotate private data stored locally.

[0046] Figure 4 FIG. 1 is a flow chart showing some embodiments of marking private data stored locally. Figure 4 As shown, this embodiment includes steps S4021 to S4025.

[0047] In step S4021, the convolutional layer of the federated learning model is used to extract the feature vector of the private data.

[0048] The federated learning model is similar to a traditional deep learning neural network, including a deep convolutional layer for extracting feature vectors and a multi-layer perceptron classifier for classification. By inputting private data into the convolutional layer of the federated learning model for processing, a multi-dimensional feature vector of the private data can be obtained.

[0049] In step S4022, the feature vectors of the private data are clustered, and pseudo labels are annotated for the private data according to the clustering results.

[0050] When clustering the feature vectors of private data, the number of clustering categories is the same as the number of categories of public data labels. For example, if there are 100 categories of public data labels, the K-MEANS algorithm can be used to cluster the feature vectors of private data into 100 categories, and the K value is set to 100. If the feature vector of any first private data and the feature vector of any second private data belong to the same cluster category, the same pseudo label is marked for the first private data and the second private data. If the feature vector of the first private data and the feature vector of the second private data belong to different cluster categories, different pseudo labels are marked for the first private data and the second private data.

[0051] In step S4023, the federated learning model is trained using private data annotated with pseudo labels to obtain convolutional layer parameters of the federated learning model.

[0052] Those skilled in the art should understand that, through the loop iteration of step S4021 to step S4023, a convolution layer with a better extraction effect on data features can be obtained.

[0053] In step S4024, the trained federated learning model is used to re-extract the feature vector of the private data and extract the feature vector of the public data.

[0054] In step S4025, the private data is labeled according to the distance between the re-extracted feature vector of the private data and the feature vector of the public data.

[0055] The nearest neighbor algorithm can be used to label private data, as shown below.

[0056] For example, first determine a feature vector of public data that is closest to any feature vector of the third private data. Then, use the label of the public data corresponding to the feature vector of the public data as the label of the third private data. For another example, first determine multiple feature vectors of public data that are closest to any feature vector of the third private data. Then, from the labels of the public data corresponding to the feature vectors of the multiple public data, select the label with the largest number of occurrences as the label of the third private data.

[0057] This embodiment enables the client to automatically label the private data stored locally, so as to use the private data that is not labeled initially to train the federated learning model, thereby improving the utilization rate of user data and reducing the potential risk of malicious attacks on the federated learning model. Those skilled in the art should understand that this embodiment can be applied to the scenario of using unlabeled data to train a neural network model.

[0058] Combine the following Figure 5 Describe how to use labeled private data to train a federated learning model and obtain the parameters of the federated learning model.

[0059] Figure 5 FIG. 1 is a flow chart showing some embodiments of obtaining parameters of a federated learning model. Figure 5 As shown, this embodiment includes steps S5031 to S5032.

[0060] In step S5031, the classifier of the federated learning model is trained using the labeled private data to obtain the classifier parameters of the federated learning model.

[0061] By fixing the convolutional layer parameters of the federated learning model and using the labeled private data to perform transfer learning on the classifier of the federated learning model, the classifier parameters of the federated learning model with better classification effect can be obtained.

[0062] In step S5032, the convolution layer parameters and the classifier parameters are used as parameters of the federated learning model.

[0063] After the convolutional layer parameters of the federated learning model are changed, the convolutional layer of the federated learning model can be used to re-extract the feature vector of the private data and re-label the labels. Then, the re-labeled labels are used to iteratively train the classifier of the federated learning model. After multiple iterations, the final convolutional layer parameters and classifier parameters are used as the complete parameters of the federated learning model. The complete parameters of the federated learning model obtained by the iterative method can enable the federated learning model to have better classification performance.

[0064] Combine the following Figure 6 Some embodiments of the disclosed client are described.

[0065] Figure 6 FIG. 1 is a schematic diagram showing the structure of a client in some embodiments of the present disclosure. Figure 6 As shown, the client in this embodiment includes:

[0066] A data download module 602 is configured to download the federated learning model and public data with labels from the cloud;

[0067] The data annotation module 604 is configured to annotate the private data stored locally using the public data and the labels of the public data;

[0068] The parameter acquisition module 606 is configured to train the federated learning model using the private data annotated with the label to obtain the parameters of the federated learning model;

[0069] The data upload module 608 is configured to upload the parameters to the cloud.

[0070] In this embodiment, the client automatically annotates the private data stored locally, thereby using the private data that is not labeled initially to train the federated learning model. Since the user does not need to participate in manual annotation, the efficiency of annotating private data and the utilization rate of the client's local data are improved, thereby improving the training efficiency of the federated learning model. At the same time, since the situation where the user performs malicious and incorrect annotation is avoided, the accuracy of the annotated training data is improved, thereby improving the classification performance of the federated learning model and the stability of the federated learning framework.

[0071] This embodiment can be applied to the field of terminal network planning, terminal artificial intelligence applications, and cloud distributed training models, and is suitable for situations where cloud data is limited but terminal data is large. Those skilled in the art should understand that this embodiment can be applied not only to the interaction between the cloud and the client, but also to the interaction between multiple servers in the cloud.

[0072] In some embodiments, the data labeling module 604 is configured to: extract feature vectors of private data using the convolutional layer of the federated learning model; cluster the feature vectors of the private data and label the private data with pseudo labels based on the clustering results; train the federated learning model using the private data annotated with pseudo labels to obtain the convolutional layer parameters of the federated learning model; re-extract the feature vectors of the private data using the trained federated learning model, and extract the feature vectors of the public data; label the private data based on the distance between the feature vectors of the re-extracted private data and the feature vectors of the public data.

[0073] In some embodiments, the parameter acquisition module 606 is configured to: train the classifier of the federated learning model using the labeled private data to obtain the classifier parameters of the federated learning model; and use the convolution layer parameters and the classifier parameters as the parameters of the federated learning model.

[0074] In some embodiments, the data labeling module 604 is configured such that, when clustering the feature vectors of the private data, the number of clustering categories is the same as the number of categories of the labels of the public data.

[0075] In some embodiments, the data labeling module 604 is configured as follows: if the feature vector of any first private data and the feature vector of any second private data belong to the same clustering category, the same pseudo label is labeled for the first private data and the second private data; if the feature vector of the first private data and the feature vector of the second private data belong to different clustering categories, different pseudo labels are labeled for the first private data and the second private data.

[0076] In some embodiments, the data labeling module 604 is configured to: determine a feature vector of public data that is closest to a feature vector of any third private data; use a label of the public data corresponding to a feature vector of public data as the label of the third private data; or, determine multiple feature vectors of public data that are closest to a feature vector of any third private data; and select the label with the largest number of occurrences from the labels of the public data corresponding to the feature vectors of multiple public data as the label of the third private data.

[0077] The above embodiment enables the client to automatically label the private data stored locally, so as to train the federated learning model using the private data that is not labeled initially, thereby improving the utilization rate of user data and reducing the potential risk of malicious attacks on the federated learning model. Those skilled in the art should understand that this embodiment can be applied to the scenario of using unlabeled data to train a neural network model.

[0078] Combine the following Figure 7 Some embodiments of the data processing apparatus of the present disclosure are described.

[0079] Figure 7 FIG. 1 is a schematic diagram showing the structure of a data processing device according to some embodiments of the present disclosure. Figure 7 As shown, the data processing device 70 of this embodiment includes: a memory 710 and a processor 720 coupled to the memory 710 , and the processor 720 is configured to execute the data processing method in any of the aforementioned embodiments based on instructions stored in the memory 710 .

[0080] The memory 710 may include, for example, a system memory, a fixed non-volatile storage medium, etc. The system memory may store, for example, an operating system, an application program, a boot loader, and other programs.

[0081] The data processing device 70 may also include an input / output interface 730, a network interface 740, a storage interface 750, etc. These interfaces 730, 740, 750, the memory 710, and the processor 720 may be connected, for example, via a bus 760. The input / output interface 730 provides a connection interface for input / output devices such as a display, a mouse, a keyboard, and a touch screen. The network interface 740 provides a connection interface for various networked devices. The storage interface 750 provides a connection interface for external storage devices such as an SD card and a USB flash drive.

[0082] The present disclosure also includes a computer-readable storage medium on which computer instructions are stored. When the instructions are executed by a processor, the data processing method in any of the aforementioned embodiments is implemented.

[0083] The present disclosure is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present disclosure. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0084] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0085] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0086] The above description is only a preferred embodiment of the present disclosure and is not intended to limit the present disclosure. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present disclosure should be included in the protection scope of the present disclosure.

Claims

1. A data processing method, comprising: Downloading a federated learning model and labeled public data from the cloud, wherein the public data includes images, voice or text; The locally stored private data is labeled using the public data and the label of the public data, including: extracting a feature vector of the private data using a convolutional layer of a federated learning model; clustering the feature vector of the private data, and labeling the private data with a pseudo label according to the clustering result; training the federated learning model using the private data annotated with the pseudo label to obtain convolutional layer parameters of the federated learning model; re-extracting the feature vector of the private data using the trained federated learning model, and extracting the feature vector of the public data; labeling the private data according to the distance between the re-extracted feature vector of the private data and the feature vector of the public data; Using the private data annotated with the label to train a federated learning model to obtain parameters of the federated learning model, including: using the private data annotated with the label to train a classifier of the federated learning model to obtain classifier parameters of the federated learning model; using the convolution layer parameters and the classifier parameters as parameters of the federated learning model; The parameters are uploaded to the cloud.

2. The data processing method according to claim 1, wherein: When clustering the feature vectors of the private data, the number of clustering categories is the same as the number of categories of the labels of the public data.

3. The data processing method according to claim 1, wherein: The labeling of the private data with pseudo labels according to the clustering result includes: If a feature vector of any first private data and a feature vector of any second private data belong to the same cluster category, the first private data and the second private data are labeled with the same pseudo label; If the feature vector of the first private data and the feature vector of the second private data belong to different clustering categories, different pseudo labels are annotated for the first private data and the second private data.

4. The data processing method according to claim 1, wherein: The labeling of the private data according to the distance between the re-extracted feature vector of the private data and the feature vector of the public data comprises: Determine a feature vector of public data that is closest to a feature vector of any third private data; Using the label of the public data corresponding to the feature vector of the one public data as the label of the third private data; or, Determine a plurality of feature vectors of public data that are closest to a feature vector of any third private data; From the labels of the public data corresponding to the feature vectors of the plurality of public data, a label with the largest number of occurrences is selected as the label of the third private data.

5. A client, comprising: A data download module, configured to download a federated learning model and public data with labels from the cloud, wherein the public data includes pictures, voice or text; The data labeling module is configured to label the private data stored locally using the public data and the label of the public data, including: extracting the feature vector of the private data using the convolution layer of the federated learning model; clustering the feature vector of the private data and labeling the private data with a pseudo label according to the clustering result; training the federated learning model using the private data annotated with the pseudo label to obtain the convolution layer parameters of the federated learning model; re-extracting the feature vector of the private data using the trained federated learning model, and extracting the feature vector of the public data; labeling the private data according to the distance between the re-extracted feature vector of the private data and the feature vector of the public data; The parameter acquisition module is configured to train the federated learning model using the private data annotated with the label to obtain the parameters of the federated learning model, including: training a classifier of the federated learning model using the private data annotated with the label to obtain the classifier parameters of the federated learning model; using the convolution layer parameters and the classifier parameters as the parameters of the federated learning model; The data uploading module is configured to upload the parameters to the cloud.

6. The client according to claim 5, wherein: The data labeling module is configured such that, when clustering the feature vectors of the private data, the number of clustering categories is the same as the number of categories of the labels of the public data.

7. The client according to claim 5, wherein: The data annotation module is configured as follows: If a feature vector of any first private data and a feature vector of any second private data belong to the same cluster category, the first private data and the second private data are labeled with the same pseudo label; If the feature vector of the first private data and the feature vector of the second private data belong to different clustering categories, different pseudo labels are annotated for the first private data and the second private data.

8. The client according to claim 5, wherein: The data annotation module is configured as follows: Determine a feature vector of public data that is closest to a feature vector of any third private data; Using the label of the public data corresponding to the feature vector of the one public data as the label of the third private data; or, Determine a plurality of feature vectors of public data that are closest to a feature vector of any third private data; From the labels of the public data corresponding to the feature vectors of the plurality of public data, a label with the largest number of occurrences is selected as the label of the third private data.

9. A data processing device, comprising: Memory; as well as A processor coupled to the memory, wherein the processor is configured to execute the data processing method according to any one of claims 1 to 4 based on instructions stored in the memory.

10. A computer-readable storage medium, wherein: The computer-readable storage medium stores computer instructions, and when the instructions are executed by a processor, the data processing method according to any one of claims 1 to 4 is implemented.