Data heterogeneous parameter determination method and device, equipment, medium and program product

By receiving the local model of participants in federated learning and determining heterogeneous parameters based on shared model information, the data security problem is solved, and the secure processing of non-independent and homogeneous data is realized, which improves data privacy protection.

CN119272316APending Publication Date: 2025-01-07CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310826491.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-06
Publication Date
2025-01-07

AI Technical Summary

Technical Problem

Existing federated learning technology is difficult to ensure the data security of data holders. Especially in the case of non-independent and homogeneous data distribution, attackers can infer the original data of the data holders through reverse query, affecting data security.

Method used

By receiving local models sent by each participant, heterogeneous parameters are determined based on their relevant information, and using shared model information instead of the statistical characteristics of the original data, it is characterized whether the data meets the independent and same distribution requirements, thereby reducing the risk of data leakage.

Benefits of technology

It effectively improves the local data privacy and security of participants, avoids attackers from calculating local data through reverse queries, and improves data security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119272316A_ABST
    Figure CN119272316A_ABST
Patent Text Reader

Abstract

The invention relates to a data heterogeneous parameter determination method and device, equipment, a medium and a program product. The method comprises the following steps: receiving a first local model sent by each participant; the first local model is obtained by training an initial global model sent by a coordinator by the participant based on local data; according to the related information of each first local model, heterogeneous parameters corresponding to each participant are determined; the related information comprises model information shared by the participants and the coordinator, and the heterogeneous parameters are used for representing whether local data of the participants meet independent identical distribution requirements or not. By adopting the method, the security of the local data of the participant can be ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method, device, equipment, medium and program product for determining data heterogeneous parameters. Background Art

[0002] Federated learning, as a type of machine learning, can generally distribute model training on multiple data holders (also called local devices). Each local device can use its own local data to train the model, and then aggregate the training results into a global model to achieve the purpose of federated learning.

[0003] In related technologies, data holders of federated learning often have different data distributions and data volumes, that is, the federated learning process will face the situation where data is not independent and identically distributed. In this case, the server performing federated learning generally obtains the statistical characteristics of the original data of each data holder before model training, and then determines the heterogeneous parameters of each data holder based on these statistical characteristics, so as to select data holders with the same data distribution according to the heterogeneous parameters as much as possible, and then conducts model training through the data of these data holders to ensure the accuracy of the global model obtained.

[0004] However, the above technologies are difficult to guarantee the data security of data holders. Summary of the invention

[0005] The embodiments of the present application provide a method, apparatus, device, medium and program product for determining data heterogeneous parameters, which can ensure the data security of the participants.

[0006] In a first aspect, the present application provides a method for determining data heterogeneity parameters, the method comprising:

[0007] Receiving a first local model sent by each participant; the first local model is obtained by training the initial global model sent by the coordinator based on the local data of the participant;

[0008] According to the relevant information of each first local model, the heterogeneous parameters corresponding to each participant are determined; the above-mentioned relevant information includes model information shared by the participant and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0009] In one embodiment, determining the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model includes:

[0010] According to the relevant information of each first local model and the preset proxy model, the heterogeneous parameters corresponding to each participant are determined; the type of the above proxy model is the same as the type of the initial global model.

[0011] In one embodiment, the method further comprises:

[0012] The proxy model is determined according to a preset training data set; each training data in the above training data set meets the independent and identically distributed requirements.

[0013] In one embodiment, the determining of the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model and the preset proxy model includes:

[0014] Determine the difference between the proxy model and each first local model according to the relevant information of each first local model;

[0015] Determine the relative weight offset value corresponding to each participant according to each difference;

[0016] The heterogeneous parameters corresponding to each participant are determined according to the relative weight offset values.

[0017] In one embodiment, the heterogeneous parameter indicates the degree of non-independent and identically distributed.

[0018] In one embodiment, before receiving the first local model sent by each participant, the method further includes:

[0019] An initial global model is sent to each participant; the initial global model is used for each participant to train the initial global model based on local data to obtain their respective first local models.

[0020] In one embodiment, the method further comprises:

[0021] The initial global model is updated according to each first local model to determine an updated first global model;

[0022] A target global model is obtained according to the first global model and a preset convergence condition.

[0023] In one embodiment, the step of obtaining the target global model according to the first global model and a preset convergence condition includes:

[0024] If the first global model does not meet the convergence condition, the training operation is repeatedly performed until the first global model meets the convergence condition, thereby obtaining a target global model;

[0025] The training operation includes: determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant; sending the first global model to each target participant; receiving the second local model sent by each target participant; determining the heterogeneous parameters corresponding to each target participant according to the relevant information of each second local model, updating the first global model according to each second local model, and determining the updated second global model; using the second global model as the new first global model;

[0026] The second local model is obtained by the participant training the first global model sent by the coordinator based on local data.

[0027] In one embodiment, the step of determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant includes:

[0028] Sort each heterogeneous parameter to obtain a sorting result;

[0029] The target participants are determined from among the participants according to the ranking results.

[0030] In one embodiment, the step of determining each target participant from each participant according to the ranking result includes:

[0031] Determine a maximum threshold value from each heterogeneous parameter according to the sorting result;

[0032] The participants corresponding to the heterogeneous parameters that are smaller than the maximum threshold are determined as target participants.

[0033] In one embodiment, the step of determining each target participant from each participant according to the ranking result includes:

[0034] Determine the preset number of screenings based on the total amount of training data required for global model training;

[0035] According to the sorting results, in ascending order, a preset number of target heterogeneous parameters for screening are determined from the heterogeneous parameters;

[0036] The participants corresponding to each target heterogeneous parameter are determined as target participants.

[0037] In one embodiment, the method further comprises:

[0038] Check whether the total amount of local data meets the total amount of training data required for the target global model training; the above-mentioned total amount of local data is the sum of the local data corresponding to each target participant;

[0039] If not satisfied, a new participant is obtained and used as the target participant.

[0040] In one of the embodiments, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0041] In one of the embodiments, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0042] In a second aspect, the present application provides a method for determining data heterogeneity parameters, the method comprising:

[0043] A first local model is sent to the coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0044] In one embodiment, the heterogeneous parameter represents a non-independent and identically distributed degree parameter.

[0045] In one of the embodiments, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0046] In one of the embodiments, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0047] In a third aspect, the present application provides a data heterogeneity parameter determination device, the device comprising:

[0048] A receiving module, used to receive a first local model sent by each participant; the first local model is obtained by training the initial global model sent by the coordinator based on the local data of the participant;

[0049] The parameter determination module is used to determine the heterogeneous parameters corresponding to each participant based on the relevant information of each first local model; the above-mentioned relevant information includes the model information shared by the participant and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0050] In a fourth aspect, the present application provides a data heterogeneity parameter determination device, the device comprising:

[0051] A sending module is used to send a first local model to a coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0052] In a fifth aspect, the present application provides a coordinator communication device, comprising: a receiver, a processor, and a memory, wherein the memory stores a computer program;

[0053] The receiver is used to receive a first local model sent by each participant; the first local model is obtained by training the initial global model sent by the coordinator based on the local data of the participant;

[0054] The processor executes a computer program to determine the heterogeneous parameters corresponding to each participant based on the relevant information of each first local model; the relevant information includes model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0055] In a sixth aspect, the present application provides a participant communication device, including: a transmitter;

[0056] A transmitter is used to send a first local model to a coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0057] In a seventh aspect, the present application provides a data heterogeneous parameter determination system, including a coordinator communication device and a participant communication device, wherein the coordinator communication device and the participant communication device are communicatively connected;

[0058] The above-mentioned coordinator communication device is used to execute the steps of the above-mentioned method of the first aspect;

[0059] The above-mentioned participant communication equipment is used to execute the steps of the method of the second aspect.

[0060] In an eighth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the method of the first aspect and / or the steps of the method of the second aspect.

[0061] In a ninth aspect, the present application provides a chip comprising a programmable logic circuit and / or program instructions, which can execute the steps of the method of the first aspect and / or the steps of the method of the second aspect when the chip is running.

[0062] In a tenth aspect, the present application provides a computer program product, comprising a computer program, characterized in that when the computer program is executed by a processor, the steps of the method of the first aspect and / or the steps of the method of the second aspect are implemented.

[0063] In the above-mentioned data heterogeneous parameter determination method, device, equipment, medium and program product, the coordinator receives the first local model sent by each participant, and determines the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model, wherein each first local model is obtained by each participant through training based on the initial global model sent by the coordinator, and the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements. In this method, since the coordinator determines the heterogeneous parameters of each participant through the model information that the participant needs to share with the coordinator, the relevant information is public information and is not the local data of the participant and its statistical characteristics, so it can reduce the probability of attackers inferring the local data of the participant through reverse query and other methods, thereby effectively improving the security of the local privacy data of the participant. BRIEF DESCRIPTION OF THE DRAWINGS

[0064] Figure 1 A diagram showing an application environment of a method for determining data heterogeneity parameters in an embodiment;

[0065] Figure 2 A schematic diagram of a flow chart of a method for determining data heterogeneity parameters in one embodiment;

[0066] Figure 3 A schematic flow chart of a step of determining data heterogeneity parameters in another embodiment;

[0067] Figure 4 It is a flowchart of a method for determining data heterogeneity parameters in another embodiment;

[0068] Figure 5 It is a flowchart of a method for determining data heterogeneity parameters in another embodiment;

[0069] Figure 6 It is a flowchart of a method for determining data heterogeneity parameters in another embodiment;

[0070] Figure 7 A system architecture diagram for model training by participants and coordinators in another embodiment;

[0071] Figure 8 A detailed flowchart of model training by a participant and a coordinator in another embodiment;

[0072] Fig. 9 It is a structural block diagram of a device for determining data heterogeneity parameters in one embodiment;

[0073] Fig.10 It is a diagram showing the internal structure of a communication device of a coordinating party in one embodiment;

[0074] Fig.11 FIG. 1 is a diagram showing the internal structure of a communication device of a participant in one embodiment. DETAILED DESCRIPTION

[0075] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0076] Figure 1 A schematic diagram of an application scenario for determining heterogeneous data parameters provided in an embodiment of the present application. Figure 1 As shown, the scenario includes a coordinator communication device 102 and multiple participant communication devices 104. The coordinator communication device 102 and the participant communication devices 104 transmit data through the network. The participant communication devices 104 may be data holders holding local data. The coordinator communication device 102 may be a device that coordinates the participant communication devices 104 and provides corresponding computing functions, such as an aggregation server. The coordinator communication device 102 and the participant communication devices 104 may be servers, which may be implemented by independent servers or server clusters consisting of multiple servers.

[0077] In traditional technologies, data holders of federated learning often have different data distributions and data volumes, that is, the federated learning process will face the situation of non-independent and identically distributed data, which will cause gradient deviations in the local models of the participants and affect the convergence efficiency and accuracy of the global model training. Generally, the server for federated learning will obtain the statistical characteristics of the original data of each data holder before model training, and then determine the heterogeneous parameters of each data holder based on these statistical characteristics, so as to select data holders with the same data distribution according to the heterogeneous parameters as much as possible, that is, select data holders that are beneficial to the global model, reduce the impact of statistical heterogeneity on the convergence efficiency and accuracy of the global model, and then train the model through the data of these data holders, so as to ensure the accuracy of the obtained global model. It can be seen that in traditional technologies, the heterogeneous parameters of each data holder are determined by the statistical characteristics of the original data, and the attacker can infer the original data of the data holder through reverse query and other methods, making it difficult to ensure the data security of the data holder. In addition, the coordinator only measures or calculates the heterogeneous parameters of the participants once before they start local training. The measurement or calculation results are not accurate enough, which will reduce the accuracy of the screening results of the participants based on the heterogeneous parameters, and further affect the convergence efficiency and accuracy of the global model training.

[0078] Based on the above-mentioned traditional technology, an embodiment of the present application provides a method for determining data heterogeneous parameters, which determines the heterogeneous parameters of each participant through the model parameters that each participant needs to share with the coordinating party. This can avoid directly using the statistical characteristics of the original data to determine the heterogeneous parameters of each participant, thereby ensuring the data security of each participant.

[0079] It should be noted that the beneficial effects brought about by the embodiments of the present application or the technical problems solved are not limited to this one, but may also include other implicit or related problems. For details, please refer to the description of the following embodiments.

[0080] The technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.

[0081] The following embodiments first use the coordinating party communication device as the execution subject to illustrate the technical solutions of the embodiments of the present application.

[0082] In one embodiment, Figure 2 As shown, a method for determining data heterogeneity parameters is provided, and the method is applied to Figure 1 Taking the coordinator communication device in the example as an example, the method may include the following steps:

[0083] S202, receiving a first local model sent by each participant; the first local model is obtained by training the initial global model sent by the coordinator based on the local data of the participant.

[0084] In this step, the coordinator communication device (hereinafter referred to as the coordinator) can be an aggregation server. Before the training task of the global model that requires federated learning, the coordinator can receive the training task for training the global model initiated by the task initiator, or receive the algorithm description information related to the training task provided by the algorithm provider. After that, the initial global model can be constructed based on the algorithm description information and the initial global model can be trained.

[0085] The task initiator and algorithm provider here can both be third-party servers. The task initiator is mainly used to initiate training tasks, and the algorithm provider is mainly used to provide algorithm description information required for model training. The algorithm description information here can include the algorithm type required for model training, the relevant algorithm parameters under the specific algorithm type, etc. The algorithm type here refers to different types of algorithms, such as linear regression algorithm, deep learning algorithm, machine learning algorithm, neural network algorithm, etc.

[0086] After the coordinator has constructed the initial global model, as an optional embodiment, the initial global model can be sent to each participant; the above-mentioned initial global model is used for each participant to train the initial global model based on local data to obtain their respective first local models, so that each participant can be informed of the start of the model training task and execute the model training task in a timely manner. In other words, the coordinator can send the constructed initial global model to each participant, where the participant can be the participant communication device mentioned above (hereinafter referred to as the participant), and can also be called a data holder. Each participant has its own corresponding local data, and the local data can be a data set consisting of one or more data. For example, it can be user information or user data, or it can also be other data, where the user information can include user preference information, user resource information, etc. The local data held by each participant can be all the same, partially the same, or completely different, or it can also be other situations.

[0087] Here, the coordinator sends the initial global model to each participant, which may be to send the initial global model as a whole to each participant, or to send all parameters of the initial global model to each participant, or other situations may also be possible. The initial global models received by each participant are the same. After receiving them, each participant may use local data to train the received initial global model to obtain a model trained by their own local data, which may be recorded as the first local model. Here, the first local model is of the same type as the initial global model. For example, the local data here may be user data, and the initial global model may be a data analysis model for analyzing user data, or a recognition model for identifying user data. Then the trained first local model is also a data analysis model or a recognition model accordingly.

[0088] After each participant uses its own local data to train the initial global model to obtain the first local model, the types of the first local models trained by each participant are generally the same, but the parameters of the model can be the same or different; then each participant can send its own first local model to the coordinator, and the coordinator can receive the first local model sent by each participant. Generally, one participant can train a local model using one local data, so the coordinator can receive multiple first local models sent by multiple participants.

[0089] It should be noted that, when each participant sends the first local model to the coordinator, the participant may send the entire model to the coordinator, or send all parameters of the first local model to the coordinator, or other situations may be used.

[0090] In addition, the above-mentioned initial global model and each first local model may be a machine learning model, a deep learning model, a neural network model, etc.

[0091] S204, determining the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model; the above-mentioned relevant information includes the model information shared by the participant and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0092] In this step, the relevant information of the first local model of each participant may include the model information that each participant needs to share with the coordinator, or may also include the information of each participant itself, such as location information, number information, etc. The relevant information and the model information included therein are public information, wherein the model information may include, for example, the model type, the training round of the model, the loss function of the model, the identification of the model, etc. The model information here cannot directly reflect the original local data of the participant or the statistical characteristics of the local data, so it can reduce the possibility of an attacker reversely deducing the local data and protect the security of the local data of the participant.

[0093] After the coordinator receives the first local models sent by each participant, it can directly obtain the relevant information of the first local model from each first local model, or each participant can send the relevant information to the coordinator together with the first local model. In short, the coordinator can obtain each first local model and its related information.

[0094] After obtaining the relevant information of each first local model, the coordinator can determine the heterogeneous parameters of each participant based on the relevant information of each first local model. The heterogeneous parameters indicate whether the local data of each participant meets the independent and identically distributed requirements, and of course, can also indicate the degree of heterogeneity of the local data of each participant. The English expression of independent and identically distributed is Independent Identically Distribution, referred to as IID, which means that in a random process, the values ​​at any time are random variables. If these random variables obey the same distribution and are independent of each other, then these random variables are independent and identically distributed, which can indicate that each local data obeys the same data distribution and is independent of each other. Whether the local data meets the independent and identically distributed requirements here refers to whether the local data and other local data obey the same data distribution and are independent of each other. If the local data and other local data obey the same data distribution and are independent of each other, it means that the local data meets the independent and identically distributed requirements, otherwise it means that the local data does not meet the independent and identically distributed requirements. Here, whether the local data obey the same data distribution and are independent of each other can be determined by the size relationship between their heterogeneous parameters. For example, if the heterogeneous parameter of a local data is very large compared with other heterogeneous parameters, it means that the local data does not meet the independent and identically distributed requirements.

[0095] Generally, each local data obeys the same data distribution and is independent of each other, that is, the distribution of each local data is relatively similar. In this way, when the global model is trained with each local data, no gradient deviation will be generated or the gradient deviation generated will be very small, thereby ensuring the convergence speed and accuracy of the global model. Therefore, it is very necessary to determine whether each local data meets the independent and identically distributed requirements. In this embodiment, the heterogeneous parameters of each participant are calculated to determine whether each local data meets the independent and identically distributed requirements.

[0096] When the above-mentioned coordinator determines the heterogeneous parameters of each participant through the relevant parameters of each first local model, the heterogeneous parameters of each participant can be directly calculated through the relevant parameters of each first local model, or the heterogeneous parameters of each participant can be calculated by combining the relevant parameters of each first local model with reference parameters that satisfy independent and identical distribution, or other methods can be used, which are not specifically limited here.

[0097] For the above-mentioned direct calculation of the heterogeneous parameters of each participant through the relevant parameters of each first local model, the relevant parameters of one of the first local models can be used as a reference parameter to calculate the difference between the relevant parameters of other first local models and the reference parameter, and then the relevant parameters of other first local models can be used as reference parameters in turn to calculate the difference between the relevant parameters of other first local models and the reference parameter, so that the relevant parameters of each first local model can obtain multiple differences, that is, each participant can obtain multiple differences, and then the multiple differences of each participant are processed by weighted average and other methods to obtain a target difference, and the target difference of each participant can be used as the heterogeneous parameter of the participant. Or it can be other direct calculation methods, only one of which is given as an example here.

[0098] Regarding the above-mentioned method of calculating the heterogeneous parameters of each participant by combining the relevant parameters of each first local model with the reference parameters that satisfy independent and identical distribution, the heterogeneous parameters of each participant can be obtained by the difference between each relevant parameter and the reference parameter, or other calculation methods can be used. Only one method is given here as an example.

[0099] In short, no matter what method is used, the heterogeneous parameters of each participant can be calculated.

[0100] In the above data heterogeneous parameter determination method, the coordinator receives the first local model sent by each participant, and determines the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model, wherein each first local model is obtained by each participant through training based on the initial global model sent by the coordinator, and the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements. In this method, since the coordinator determines the heterogeneous parameters of each participant through the model information that the participant needs to share with the coordinator, the relevant information is public information and is not the local data of the participant and its statistical characteristics, so it can reduce the probability of attackers inferring the local data of the participant through reverse query and other methods, thereby effectively improving the security of the local privacy data of the participant.

[0101] The above embodiment mentioned that the heterogeneous parameters of each participant can be calculated by combining the relevant information of each first local model with reference parameters that satisfy independent and identical distribution. A possible implementation method of this situation is described below.

[0102] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, the above S204 may include the following steps:

[0103] Step A: determining the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model and a preset proxy model; the type of the above proxy model is the same as the type of the initial global model.

[0104] In this step, the proxy model may be a model whose data satisfies independent and identical distribution. The type of the proxy model is the same as the type of the initial global model and the type of each first local model, for example, they are all image recognition models.

[0105] In this step, before using the proxy model, a proxy model may be obtained first. The proxy model may be a model obtained by training with training data. As an optional embodiment, the proxy model may be determined based on a preset training data set; each training data in the above training data set meets the independent and identically distributed requirements.

[0106] The preset training data set includes multiple training data, and the multiple training data all meet the independent and identically distributed requirements, that is, the multiple training data obey the same data distribution and are independent of each other. The training data set here can be a public data set, for example, it can be a data set constructed by pre-collecting or obtaining relevant data disclosed or authorized by users, or it can be a currently common data set that meets the data identical distribution requirements.

[0107] After obtaining the training data set that meets the data identical distribution requirement, the training data set can be used to train the initial proxy model to obtain a trained proxy model. There is no specific limitation on the input and output of the proxy model. In short, the type of the proxy model can be the same as that of the initial global model.

[0108] After obtaining the proxy model as described above, since the proxy model is trained using a training data set that meets the independent and identically distributed requirements, the proxy model can be used as a benchmark for calculating the heterogeneous parameters of each participant. After that, the differences between the relevant parameters of each first local model and the parameters of the proxy model can be compared, and the heterogeneous parameters corresponding to each participant can be obtained through the differences.

[0109] In this embodiment, the heterogeneous parameters corresponding to each participant are determined based on the relevant information of each first local model and the preset proxy model, wherein the type of the proxy model is the same as the type of the initial global model, and the proxy model can be used as a benchmark or intermediate parameter to calculate each heterogeneous parameter, so that the heterogeneous parameters corresponding to each participant can be obtained relatively quickly and accurately, and the accuracy and efficiency of the determined heterogeneous parameters can be improved. Furthermore, the proxy model is trained using a training data set that meets the independent and identically distributed requirements, so the proxy model can be used as a benchmark for calculating the heterogeneous parameters of each participant, thereby further improving the accuracy of determining the heterogeneous parameters.

[0110] The above embodiment mentioned that the heterogeneous parameters of each participant can be calculated through the relevant information of each first local model and the proxy model. A possible implementation method of this situation is described below.

[0111] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, Figure 3 As shown, the above step A may include the following steps:

[0112] S302: Determine the difference between the proxy model and each first local model according to the relevant information of each first local model.

[0113] In this step, after obtaining the relevant information of each first local model, the relevant information of the proxy model can also be obtained. Here, the relevant information of the two types of models can also be model information, such as model parameters of each model. Then, the difference between the relevant information of each first local model and the proxy model can be calculated to obtain the difference corresponding to each first local model, that is, to obtain the difference corresponding to each participant.

[0114] It should be noted that, taking the difference corresponding to a local model or a participant as an example, the difference corresponding to the first local model may be the sum of the differences between the various model parameters of the first local model and the corresponding model parameters of the proxy model, or may be a part of the difference or a difference between the various model parameters of the first local model and the corresponding model parameters of the proxy model, or may be other situations, which are not specifically limited here.

[0115] S304: Determine the relative weight offset value corresponding to each participant according to each difference.

[0116] In this step, after obtaining the difference value corresponding to each participant, the modulus of each difference value can be calculated, and the modulus value of the proxy model can also be calculated. Here, the modulus value of the proxy model can be the modulus value of the sum of each model parameter of the proxy model or the modulus value of any one or more model parameters; then the modulus value of each difference value can be divided by the modulus value of the proxy model to obtain the quotient value corresponding to each participant, and the quotient value can be recorded as a relative weight offset value, which represents the difference between the first local model and the proxy model.

[0117] The above specific method of calculating the relative weight offset value of each participant can be calculated using the following formula (1):

[0118]

[0119] Among them, w a Represents the proxy model; represents the local model of participant k in the tth round of model training (generally, model training will be conducted in multiple rounds, and the first round is the first local model or the relevant parameters of the first local model here), ||·|| represents the modulo processing, Represents the relative weight offset value corresponding to participant k during the tth round of model training.

[0120] S306: Determine the heterogeneous parameters corresponding to each participant according to each relative weight offset value.

[0121] In this step, after obtaining the relative weight offset value corresponding to each participant, the relative weight offset value of each participant can be directly used as the corresponding heterogeneous parameter, or the relative weight offset value of each participant can be combined with the corresponding model parameters to obtain the heterogeneous parameters of each participant, or other methods can be used. In short, the heterogeneous parameters of each participant can be obtained through the relative weight offset values.

[0122] In addition, since the proxy model is trained based on a training data set that satisfies independent and identical distribution, the larger the relative weight offset value between the participant's local model (that is, the local model of each round during the training process) and the proxy model, the higher the heterogeneity of the participant's local data, that is, the greater the influence of the participant's data on the training of the global model. Generally, it is necessary to screen out the participant's local data to ensure the accuracy of the global model training.

[0123] In this embodiment, the difference between the proxy model and each first local model is determined according to the relevant information of each first local model, and each relative weight offset value is determined according to each difference, and then the heterogeneous parameters of each participant are determined according to each relative weight offset value. This method of determining each relative weight offset value and then determining the heterogeneous parameters of each participant by the difference between the proxy model and each first local model is simple, intuitive and relatively detailed, so that the efficiency and accuracy of determining each heterogeneous parameter can be improved; at the same time, the relative weight offset value representing the difference between the first local model and the proxy model is used to determine the heterogeneous parameters, so that the heterogeneous parameters determined in this way are more accurate, thereby providing a more accurate data basis for the subsequent screening of local data.

[0124] Regarding the heterogeneous parameters of each participant mentioned in the above embodiment, it is mentioned that it can indicate the degree of heterogeneity of the local data of each participant, and can also indicate whether the data of each participant meets the independent and identically distributed requirements. More specifically, in another embodiment, the heterogeneous parameter can indicate the degree of non-independent and identically distributed.

[0125] The non-independent and identically distributed in English here can be expressed as Non-IID (full name: Non-IndependentIdentically Distribution), where the degree of non-independent and identically distributed refers to the degree to which the local data of the participants do not meet the requirements of independent and identically distributed, which is a relative concept to independent and identically distributed. Since in actual situations, it is impossible for all the local data of each participant to completely obey the same data distribution and be independent of each other, the degree of non-independent and identically distributed of each local data is generally used to measure the adverse impact of the local data of each participant on the global model training process.

[0126] Of course, the non-independent and identically distributed degree of each participant can also be reflected by the above-mentioned relative weight offset values. The larger the relative weight offset value of a participant is, the higher the non-independent and identically distributed degree of the local data of the participant is, and the greater the adverse impact on the global model training process is, and the more it needs to be screened out. After determining the non-independent and identically distributed degree of each participant, some of the participants and their local data can be screened out based on this in the future.

[0127] In this embodiment, the heterogeneous parameters of each participant can represent the degree of non-independent and identically distributed of each participant, so that the heterogeneous parameters of each participant can be determined simply and intuitively, which facilitates the subsequent rapid screening of some participants and their local data.

[0128] The above embodiments mentioned that in the first round of global model training, each participant can train the initial global model based on their own local data and calculate the heterogeneous parameters of each participant. After the coordinator obtains the first local model of each participant, the subsequent steps of training the global model can also be executed. The following embodiments illustrate the process of continuing to train this global model.

[0129] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, Figure 4 As shown, the above method may further include the following steps:

[0130] S402: Update the initial global model according to each first local model to determine an updated first global model.

[0131] In this step, in the first round of global model training, after the coordinator obtains the first local models sent by each participant, the initial global model can also be updated based on the model parameters of each first local model. The update here can be, for example, averaging the model parameters of each first local model to obtain the average model parameters, and then using the average model parameters to update the initial global model to obtain an updated global model; or it can be selecting a part of the model parameters with better performance from the model parameters of each first local model to update the initial global model to obtain an updated global model; or it can be other updating methods, which are not specifically limited here. In addition, the average during the update here can be a weighted average or a direct average. The above-mentioned updated global model obtained can be recorded as the first global model.

[0132] S404: Acquire a target global model according to the first global model and a preset convergence condition.

[0133] Among them, the convergence conditions preset here can be convergence conditions related to loss or convergence conditions related to training rounds. For the convergence conditions related to loss, for example, the loss reaches a threshold or the loss no longer changes. For the convergence conditions related to training rounds, it can be that the number of training rounds reaches a preset number or the number of iterations reaches a preset number, etc.

[0134] In this step, after obtaining the updated first global model in the first round of global model training, it can be determined whether the training of the first global model meets the convergence conditions. If the convergence conditions are met, the first global model is used as the final trained global model and recorded as the target global model.

[0135] If the convergence condition is not met, the first global model needs to be trained further, and the final trained target global model is obtained through subsequent training. In general, multiple rounds of training are required in the model training process, so in the first round of training, the heterogeneous parameters of each participant can be calculated based on the relevant parameters of each first local model, so as to screen out the participants who will participate in the next round of model training, and improve the accuracy of global model training through the screening mechanism.

[0136] In this embodiment, the initial global model is updated by each first local model and then the target global model is obtained in combination with the convergence condition. This can ensure that the model training process is more complete and the convergence condition of the model can be clarified, which facilitates the end of the model training process and improves the stability of the model training process.

[0137] The following describes the process of iteratively executing the global model starting from the second round.

[0138] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, the above S404 may include the following steps:

[0139] Step B: If the first global model does not meet the convergence condition, the training operation is repeated until the first global model meets the convergence condition to obtain the target global model.

[0140] Among them, the above-mentioned training operations include: determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant; sending the first global model to each target participant; receiving the second local model sent by each target participant; determining the heterogeneous parameters corresponding to each target participant according to the relevant information of each second local model, updating the first global model according to each second local model, and determining the updated second global model; using the second global model as the new first global model.

[0141] The second local model is obtained by the participant training the first global model sent by the coordinator based on local data.

[0142] In this step, when the first global model updated in the first round of model training does not meet the convergence condition, the second round of model training can be continued. Specifically, the target participants participating in the second round of training can be screened out from the participants based on the heterogeneous parameters of each participant calculated in the first round. The target participants here can be participants with less adverse effects of heterogeneous parameters on the model training process. After screening out the target participants participating in the second round of training, the first global model updated in the first round can be distributed to the target participants, and each target participant can continue to train the received first global model using local data to obtain a trained model, which is recorded as the second local model. Then each participant can send its own second local model to the coordinator, and the coordinator can determine the heterogeneous parameters of each target participant based on the relevant information of the second local model sent by each target participant. The specific method of calculating the heterogeneous parameters can refer to the calculation method in the above embodiment; at the same time, the coordinator can also update the first local model of the first round of training based on the received second local models. The update method is as mentioned above to obtain an updated global model, which is recorded as the second global model.

[0143] Afterwards, the coordinator can use the second global model as the new first global model to determine whether the new first global model meets the convergence conditions. If it does not meet the convergence conditions, the third round of model training can be continued. The model training process of the third round is the same as the model training process of the second round, where the target participant in the second round of training is the participant in the next round of training. Then, the process of selecting the target participant to train the local model and then updating the global model can be continued. This process is repeated until the first global model obtained in a certain round of model training meets the convergence conditions. The loop is terminated and the first global model that meets the convergence conditions at this time can be used as the target global model.

[0144] In this embodiment, when the first global model in the first round of training does not meet the convergence conditions, the model training process can be repeated until the first global model meets the convergence conditions to obtain the target global model. In each training round of the repeated model training process, the heterogeneous parameters of the participants will be calculated and the participants for the next round will be screened based on the heterogeneous parameters. This will help the coordinator to more accurately screen out unaligned local data or heterogeneous data, and ultimately improve the convergence efficiency and accuracy of global model training.

[0145] The following describes a possible implementation method for screening participants based on heterogeneous parameters in each round of global model training.

[0146] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, Figure 5 As shown, the above step B of "determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant" may include the following steps:

[0147] S502, sorting the heterogeneous parameters to obtain a sorting result.

[0148] In this step, taking the heterogeneous parameters of each participant calculated in the first round of training as an example, the heterogeneous parameters can be sorted, for example, from large to small or from small to large, to obtain a sorting result. In addition, when the heterogeneous parameters are the above-mentioned relative weight offset values, the sorting of the heterogeneous parameters here can also be sorting of the relative weight offset values ​​to obtain a sorting result.

[0149] S504: Determine target participants from among the participants according to the ranking result.

[0150] In this step, after obtaining the sorting results, the target participants to be screened from the participants can be determined based on the actual application scenario. For example, some heterogeneous parameters with larger heterogeneous parameters can be directly screened out from the sorting results, and some heterogeneous parameters with smaller heterogeneous parameters can be retained. The participants corresponding to the retained heterogeneous parameters are the target participants. Alternatively, since the global model training process generally has requirements for the amount of data involved in the training, which cannot be too small, after obtaining the sorting results, some smaller heterogeneous parameters can be selected from the sorting results in combination with the requirements of the global model for the total amount of training data, and then the participants corresponding to these smaller heterogeneous parameters can be obtained to obtain the target participants.

[0151] It should be noted that the target participants selected here are the participants who will participate in the next round of model training, and the screened participants will not participate in the next round of model training. For each round of global model training, screening can be performed in the manner of this embodiment to select participants suitable for participating in the next round of models, thereby improving the convergence efficiency and accuracy of global model training.

[0152] In this embodiment, by sorting the heterogeneous parameters and determining the target participants from the participants according to the sorting results, the participants suitable for participating in the next round of the model can be screened out more quickly and accurately, thereby improving the training efficiency of the global model, and also improving the convergence efficiency and accuracy of the global model training.

[0153] The following describes a possible implementation method of selecting the participants who will participate in the next round of model training from the sorting results of the heterogeneous parameters of each participant through a maximum threshold.

[0154] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, the above S504 may include the following steps:

[0155] A maximum threshold is determined from each heterogeneous parameter according to the sorting result; and a participant corresponding to each heterogeneous parameter smaller than the maximum threshold is determined as a target participant.

[0156] In this step, after obtaining the ranking results of each heterogeneous parameter, a maximum threshold can be set according to the ranking results. The maximum threshold may be different based on different heterogeneous parameter ranking results. For example, the maximum threshold determined during each round of training of the global model may be different.

[0157] When determining the maximum threshold, for example, the distribution of heterogeneous parameters can be obtained from the sorting results, and a threshold value related to the larger heterogeneous parameter can be set near the larger heterogeneous parameter to obtain the maximum threshold value; or, in combination with the amount of data required to participate in the next round of model training, a related threshold value can be set based on the heterogeneous parameter near the amount of data to be selected, which is the maximum threshold value. For example, if a group of sorting results is 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, and 7 data need to be selected, the maximum threshold value can be set between 7 and 8. For example, the maximum threshold value can be set to any number between 7 and 8, such as 7.5, and then all data less than 7.5 are retained, and other data greater than or equal to 7.5 are screened out.

[0158] After determining the maximum threshold of the sorting result, all heterogeneous parameters greater than or equal to the maximum threshold can be screened out, and heterogeneous parameters less than the maximum threshold are retained. The participants corresponding to these retained heterogeneous parameters are the target participants.

[0159] In this embodiment, by determining the maximum threshold from each heterogeneous parameter according to the sorting result, the participants corresponding to each heterogeneous parameter less than the maximum threshold are determined as target participants. In this way, the maximum threshold can be used to screen each heterogeneous parameter in a simple and intuitive manner, and then the screened target participants are obtained, thereby improving the efficiency and accuracy of determining the target participants.

[0160] The following describes a possible implementation method of selecting participants who participate in the next round of model training from the sorting results of the heterogeneous parameters of each participant by presetting the number of screenings.

[0161] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, the above S504 may include the following steps:

[0162] Determine the preset screening quantity according to the total amount of training data required for global model training; determine the preset screening quantity of each target heterogeneous parameter from each heterogeneous parameter in ascending order according to the sorting result; determine the participant corresponding to each target heterogeneous parameter as the target participant.

[0163] In this step, the preset screening quantity can be a value actually set according to the total amount of training data required for the model training process, and the preset screening quantity generally needs to be greater than or equal to the total amount of training data. For example, a certain percentage of the total amount of data involved in each training can be selected as the preset screening quantity, where the percentage can be, for example, 95%, 90%, 80%, etc.; or a number directly selected based on the total amount of training data can be used as the preset screening quantity, such as 500, 1000, etc.

[0164] It should be noted that the preset number of screenings determined in each round of training of the global model may be the same or different.

[0165] After determining the preset number of screenings in the current round of training, the preset number of screenings and smaller target heterogeneous parameters can be selected from the heterogeneous parameters of the sorting results in order from small to large, and then the participants corresponding to the target heterogeneous parameters can be determined as target participants.

[0166] In this embodiment, the preset screening number is determined according to the total amount of training data, and the smaller heterogeneous parameters with the preset screening number are selected from the sorting results, and then the participants corresponding to each target heterogeneous parameter are determined as the target participants. In this way, the preset screening number can be used to screen the heterogeneous parameters in a simple and intuitive manner, and then the screened target participants are obtained, thereby improving the efficiency and accuracy of determining the target participants. At the same time, the preset screening number is determined in combination with the total amount of training data. In this way, the influence of less data selected during model training on the training accuracy of the model can be avoided, thereby ensuring the training accuracy of the global model.

[0167] In the actual global model training process, there may be a situation where the amount of data involved in a certain training round is less than the total amount of training data required for training. At this time, it may be necessary to use the data of new participants to train the model to ensure the training accuracy of the global model, or external data may be added to the model training process. The following example describes a possible implementation method for training the model with the help of data from new participants.

[0168] In another embodiment, another method for determining data heterogeneity parameters is provided. Based on the above embodiment, Figure 6 As shown, the above S504 may include the following steps:

[0169] S602, detecting whether the total amount of local data meets the total amount of training data required for training the target global model; the above-mentioned total amount of local data is the sum of the local data corresponding to each target participant.

[0170] In this step, in each training round of the global model, the number of participants participating in the training in this round can be counted, and each participant has corresponding local data, so that the total amount of local data participating in the global model training can be obtained, which is recorded as the total amount of local data. At the same time, the total amount of training data required for the pre-set global model training can also be obtained, and then it is determined whether the total amount of local data is less than the total amount of training data.

[0171] If the total amount of local data is less than the total amount of training data, it means that the total amount of local data does not meet the total amount of training data required for training the target global model; if the total amount of local data is greater than or equal to the total amount of training data, it means that the total amount of local data meets the total amount of training data required for training the target global model.

[0172] The total amount of training data here can be the total amount of training data required in each training round of the global model. Of course, in some cases, it can also be the total amount of training data required for each training round of the global model training.

[0173] S604: If not satisfied, a new participant is obtained and the new participant is used as the target participant.

[0174] In this step, if the total amount of local data does not meet the total amount of training data required for the target global model training, it means that the total amount of local data involved in the training is small, which may affect the accuracy of the final trained model. At this time, new participants and their corresponding local data can be obtained, and the new participants can be used as target participants to participate in the current round of training of the global model.

[0175] After the above-mentioned new participant participates in the training process of the global model, the new participant will also use local data to train a local model and send it to the coordinator, so that the coordinator can promptly obtain relevant information about the local model of the newly joined participant, and of course, can also obtain some data distribution characteristics, etc., so as to timely understand the local data of the new participant.

[0176] The new participants obtained here are generally not the participants screened out above. The number of the new participants obtained can be set according to actual conditions and is not specifically limited here.

[0177] In this embodiment, the total amount of local data is detected to see whether it meets the total amount of training data required for the target global model training, and new participants are obtained to join the global model training process if it does not meet the requirements. This can avoid the problem of the small amount of data participating in the global model training affecting the model performance, thereby ensuring the performance of the final trained global model.

[0178] In another embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0179] The image data, voice data, and text data here can be any type of image data, voice data, and text data; the user data can be data made public by the user, and can also be represented in a variety of forms such as images, voices, and texts.

[0180] The local data can be used to train the local model and then the global model. Taking the training of the initial global model in the first round as an example, as an optional embodiment, the initial global model includes at least one of the following: image recognition model, speech recognition model, text recognition model, and intelligent recommendation model.

[0181] For the local model (including the first local model and the second local model mentioned above), it can also be at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0182] The target global model and the first global model and the second global model mentioned above may also be at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0183] The function of an image recognition model may be to identify an object in an image or to identify the category of an object. The function of a speech recognition model may be to identify the content of a speech signal. The function of a text recognition model may be to identify the text content in a picture. For example, an intelligent recommendation model may be a risk control model in the banking or insurance field, or a model for recommending relevant information to users.

[0184] The following embodiments illustrate the technical solutions of the embodiments of the present application by taking a certain participating party's communication device as the execution subject.

[0185] In another embodiment, another method for determining data heterogeneity parameters is provided, and the method is applied to Figure 1 Taking the communication device of the participant in as an example, the method may include the following steps:

[0186] A first local model is sent to the coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0187] In this step, after the coordinator receives the training task for training the global model initiated by the task initiator and the algorithm description information related to the training task provided by the algorithm provider, it can send the constructed initial global model to each participant; after receiving the initial global model, each participant can use their own local data to train the received initial global model to obtain a model trained by their own local data, which can be recorded as the first local model. Here, the first local model is of the same type as the initial global model.

[0188] Afterwards, each participant can send its own first local model to the coordinator, and the coordinator can receive the first local models sent by each participant. For the operations performed by the coordinator after receiving each first local model, please refer to the specific explanation of the embodiment on the coordinator side, which will not be repeated here. At the same time, for the explanation of each information involved in the operation performed by the coordinator based on each first local model, please refer to the specific explanation of the embodiment on the coordinator side, which will not be repeated here.

[0189] The above is the first round of global model training process in which the participants can send the global model trained with local data to the coordinator. In the subsequent rounds of training, each participant can send a new local model to the coordinator after training. For the subsequent rounds of training process, please refer to the specific explanation of the implementation example on the coordinator side, which will not be repeated here.

[0190] In this embodiment, the participant can send a first local model to the coordinator, and the first local model is obtained by training the initial global model sent by the coordinator based on the local data of the participant; the first local model is used for the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, and the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements. In this method, since the coordinator determines the heterogeneous parameters of each participant through the model information that the participant needs to share with the coordinator, the relevant information is public information and is not the local data of the participant and its statistical characteristics. Therefore, this can reduce the probability of attackers inferring the local data of the participant through reverse query and other methods, thereby effectively improving the security of the local privacy data of the participant.

[0191] In another embodiment, the above heterogeneous parameter represents a non-independent and identically distributed degree parameter.

[0192] For the explanation of this embodiment, please refer to the specific explanation of the embodiment on the coordinator side mentioned above, which will not be repeated here.

[0193] In another embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0194] For the explanation of this embodiment, please refer to the specific explanation of the embodiment on the coordinator side mentioned above, which will not be repeated here.

[0195] In another embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0196] For the explanation of this embodiment, please refer to the specific explanation of the embodiment on the coordinator side mentioned above, which will not be repeated here.

[0197] In another embodiment, Figure 7 Provide a system architecture diagram for participants and coordinators to conduct model training, such as Figure 7 As shown in the figure, the system architecture diagram includes task initiators, algorithm providers, coordinators and participants, among which: 1. The task initiator mainly initiates the federated learning training task; 2. The algorithm provider mainly provides the algorithm; 3. The coordinator constructs a training data set to train the proxy model; 4. The global model is sent to the participants; 5. The participants use local data to train the global model; 6. The participants upload the trained local model to the coordinator; 7. The coordinator aggregates the local models to update the global model; 8. The coordinator calculates the relative weight offset value of each participant, screens the participants and sends the updated global model to continue training.

[0198] In another embodiment, Figure 8 Provide a detailed flow chart for participants and coordinators to conduct model training. Figure 8 As shown, the method comprises the following steps:

[0199] S1, the task initiator initiates the federated learning training task;

[0200] S2, the algorithm provider provides the algorithm description information required for federated learning;

[0201] S3, the coordinator constructs a training data set to train the proxy model and initialize the global model;

[0202] S4, the coordinator sends the global model to the participants;

[0203] S5, the participants use local data to train the global model and upload the trained local model to the coordinator;

[0204] S6, the coordinator aggregates the local models to update the global model, completing the update of the global model;

[0205] S7, the coordinator calculates the relative weight offset values ​​between each local model and the proxy model, sorts the relative weight offset values, and selects the target participant according to the sorting result;

[0206] S8, determining whether the global model converges, if converged, executing S9, otherwise, repeatedly executing S4-S8 until the global model converges;

[0207] S9, end the training of the global model.

[0208] It should be understood that, although the various steps in the above flowchart are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear description in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a part of the steps in the above flowchart may include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0209] In one embodiment, Fig. 9 As shown, a data heterogeneous parameter determination device is provided, comprising: a receiving module and a determining module, wherein:

[0210] A receiving module, used to receive a first local model sent by each participant; the first local model is obtained by training the initial global model sent by the coordinator based on the local data of the participant;

[0211] The parameter determination module is used to determine the heterogeneous parameters corresponding to each participant based on the relevant information of each first local model; the above-mentioned relevant information includes the model information shared by the participant and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0212] Optionally, the above heterogeneous parameter represents the degree of non-independent and identically distributed.

[0213] In another embodiment, another data heterogeneity parameter determination device is provided. Based on the above embodiment, the parameter determination module may include:

[0214] The parameter determination unit determines the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model and a preset proxy model; the type of the above proxy model is the same as the type of the initial global model.

[0215] Optionally, the above-mentioned device may further include a training module, which is used to determine the proxy model according to a preset training data set; each training data in the above-mentioned training data set meets the independent and identically distributed requirements.

[0216] In another embodiment, another data heterogeneity parameter determination device is provided. Based on the above embodiment, the parameter determination unit may include:

[0217] a difference determination subunit, configured to determine a difference between the proxy model and each first local model according to relevant information of each first local model;

[0218] A weight calculation subunit, used to determine the relative weight offset value corresponding to each participant according to each difference;

[0219] The parameter determination subunit is used to determine the heterogeneous parameters corresponding to each participant according to each relative weight offset value.

[0220] In another embodiment, another data heterogeneous parameter determination device is provided. Based on the above embodiment, before the receiving module receives the first local model sent by each participant, the device may further include:

[0221] The global model sending module is used to send an initial global model to each participant; the initial global model is used for each participant to train the initial global model based on local data to obtain their respective first local models.

[0222] In another embodiment, another data heterogeneity parameter determination device is provided. Based on the above embodiment, the device may further include:

[0223] An updating module, used for updating the initial global model according to each first local model to determine an updated first global model;

[0224] The target model determination module is used to obtain a target global model according to the first global model and a preset convergence condition.

[0225] In another embodiment, another data heterogeneous parameter determination device is provided. Based on the above embodiment, the target model determination module may include:

[0226] A repeated execution unit, configured to repeatedly execute the training operation if the first global model does not meet the convergence condition, until the first global model meets the convergence condition, thereby obtaining a target global model;

[0227] The training operation includes: determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant; sending the first global model to each target participant; receiving the second local model sent by each target participant; determining the heterogeneous parameters corresponding to each target participant according to the relevant information of each second local model, updating the first global model according to each second local model, and determining the updated second global model; using the second global model as the new first global model;

[0228] The second local model is obtained by the participant training the first global model sent by the coordinator based on local data.

[0229] In another embodiment, another data heterogeneity parameter determination device is provided. Based on the above embodiment, the above repetitive execution unit may include:

[0230] A sorting subunit is used to sort the heterogeneous parameters to obtain a sorting result;

[0231] The target participant determination subunit is used to determine each target participant from among the participants according to the sorting result.

[0232] Optionally, the above-mentioned target participant determination subunit is specifically used to determine a maximum threshold from various heterogeneous parameters according to the sorting result; and determine the participants corresponding to various heterogeneous parameters smaller than the maximum threshold as target participants.

[0233] Optionally, the target participant determination subunit is specifically used to determine a preset screening quantity based on the total amount of training data required for global model training; determine a preset screening quantity of target heterogeneous parameters from various heterogeneous parameters in order from small to large based on the sorting result; and determine the participant corresponding to each target heterogeneous parameter as the target participant.

[0234] In another embodiment, another data heterogeneity parameter determination device is provided. Based on the above embodiment, the device may further include:

[0235] A detection module is used to detect whether the total amount of local data meets the total amount of training data required for training the target global model; the above-mentioned total amount of local data is the sum of the local data corresponding to each target participant;

[0236] The acquisition module is used to acquire a new participant if the conditions are not met and use the new participant as the target participant.

[0237] In another embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0238] In another embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0239] In another embodiment, another data heterogeneity parameter determination device is provided, including: a sending module, wherein:

[0240] A sending module is used to send a first local model to a coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0241] In another embodiment, the above heterogeneous parameter represents a non-independent and identically distributed degree parameter.

[0242] In another embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0243] In another embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0244] For the specific definition of the data heterogeneous parameter determination device, please refer to the definition of the data heterogeneous parameter determination method above, which will not be repeated here. Each module in the above-mentioned data heterogeneous parameter determination device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0245] In one embodiment, a coordinator communication device is provided. Fig.10 The schematic diagram of the structure of the coordinating party communication device shown in FIG. The coordinating party communication device 700 may include: at least one processor 701, a memory 702, and at least one network interface 704. The various components in the coordinating party communication device 700 are coupled together through a bus system 705. It can be understood that the bus system 705 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 705 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, the bus system 705 is not shown in FIG. Fig.10 Various buses are labeled as bus system 705. In addition, the embodiment of the present invention also includes a transceiver 706, which can be multiple components, that is, including a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium.

[0246] It can be understood that the memory 702 in the embodiment of the present invention can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM) and direct RAM bus random access memory (DRRAM). The memory 702 of the system and method described in the embodiments of the present invention is intended to include, but is not limited to, these and any other suitable types of memory.

[0247] In some implementations, the memory 702 stores the following elements, executable modules or data structures, or their subsets, or their extensions: operating system 7021. The operating system 7021 includes various system programs, such as a framework layer, a core library layer, a driver layer, etc., which are used to implement various basic services and process hardware-based tasks.

[0248] In an embodiment of the present invention, by calling the program or instructions stored in the memory 702, the receiver is used to receive the first local model sent by each participant; the above-mentioned first local model is obtained by the participant training the initial global model sent by the coordinator based on local data; the processor is used to determine the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model; the above-mentioned relevant information includes the model information shared by the participant and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0249] Part or all of the methods disclosed in the above embodiments of the present invention may also be applied to the processor 701, or implemented by the processor 701, or implemented by the processor 701 in cooperation with other components (such as a transceiver). The processor 701 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method may be completed by an integrated logic circuit of hardware in the processor 701 or by instructions in the form of software. The above processor 701 may be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present invention may be implemented or executed. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. The steps of the method disclosed in conjunction with the embodiments of the present invention may be directly embodied as being executed by a hardware decoding processor, or may be executed by a combination of hardware and software modules in a decoding processor. The software module may be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 702, and the processor 701 reads the information in the memory 702 and completes the steps of the above method in combination with its hardware.

[0250] It is to be understood that the embodiments described in the embodiments of the present invention may be implemented by hardware, software, firmware, middleware, microcode or a combination thereof. For hardware implementation, the processing unit may be implemented in one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSP devices, DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), general purpose processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in the present application or a combination thereof.

[0251] For software implementation, the technology described in the embodiments of the present invention can be implemented by a module (such as a process, function, etc.) that performs the functions described in the embodiments of the present invention. The software code can be stored in a memory and executed by the processor 701. The memory can be implemented in the processor 701 or outside the processor 701.

[0252] In one embodiment, the processor is specifically used to determine the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model and a preset proxy model; the type of the above proxy model is the same as the type of the initial global model.

[0253] In one embodiment, the processor is further used to determine the proxy model according to a preset training data set; each training data in the above training data set meets the independent and identically distributed requirements.

[0254] In one embodiment, the processor is further used to determine the difference between the proxy model and each first local model based on the relevant information of each first local model; determine the relative weight offset value corresponding to each participant based on each difference; and determine the heterogeneous parameters corresponding to each participant based on each relative weight offset value.

[0255] In one embodiment, the heterogeneous parameter indicates the degree of non-independent and identically distributed.

[0256] In one embodiment, the transmitter is used to send an initial global model to each participant; the initial global model is used for each participant to train the initial global model based on local data to obtain their respective first local models.

[0257] In one embodiment, the processor is further configured to update the initial global model according to each first local model to determine an updated first global model; and obtain a target global model according to the first global model and a preset convergence condition.

[0258] In one embodiment, the processor is also used to repeat the training operation if the first global model does not meet the convergence condition until the first global model meets the convergence condition, thereby obtaining the target global model; the above-mentioned training operation includes: determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant; sending the first global model to each target participant; receiving the second local model sent by each target participant; determining the heterogeneous parameters corresponding to each target participant according to the relevant information of each second local model, updating the first global model according to each second local model, and determining the updated second global model; using the second global model as the new first global model; wherein the above-mentioned second local model is obtained by the participant training the first global model sent by the coordinator based on local data.

[0259] In one embodiment, the processor is further used to sort the heterogeneous parameters to obtain a sorting result; and determine the target participants from the participants according to the sorting result.

[0260] In one embodiment, the processor is further configured to determine a maximum threshold from the heterogeneous parameters according to the sorting result; and determine the participants corresponding to the heterogeneous parameters smaller than the maximum threshold as target participants.

[0261] In one embodiment, the processor is also used to determine a preset screening number based on the total amount of training data required for global model training; determine a preset screening number of target heterogeneous parameters from each heterogeneous parameter in order from small to large according to the sorting result; and determine the participant corresponding to each target heterogeneous parameter as the target participant.

[0262] In one embodiment, the processor is also used to detect whether the total amount of local data meets the total amount of training data required for training the target global model; the above-mentioned total amount of local data is the sum of the local data corresponding to each target participant; if not, a new participant is obtained and the new participant is used as the target participant.

[0263] In one embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0264] In one embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0265] In one embodiment, a communication device is provided. Fig.11 The structure diagram of the participant communication device shown in FIG. The participant communication device 800 may include: at least one processor 801, a memory 802, and at least one network interface 804. The various components in the participant communication device 800 are coupled together via a bus system 805. It is understood that the bus system 805 is used to achieve connection and communication between these components. In addition to the data bus, the bus system 805 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, the bus system 805 is not described in detail. Fig.11 Various buses are labeled as bus system 805. In addition, the embodiment of the present invention also includes a transceiver 806, which can be multiple components, that is, including a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium.

[0266] It can be understood that the memory 802 in the embodiment of the present invention can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM) and direct RAM bus random access memory (DRRAM). The memory 802 of the system and method described in the embodiments of the present invention is intended to include, but is not limited to, these and any other suitable types of memory.

[0267] In some implementations, the memory 802 stores the following elements, executable modules or data structures, or their subsets, or their extensions: operating system 8021. The operating system 8021 includes various system programs, such as a framework layer, a core library layer, a driver layer, etc., which are used to implement various basic services and process hardware-based tasks.

[0268] In an embodiment of the present invention, by calling the program or instruction stored in the memory 802, the transmitter is used to send a first local model to the coordinator; the above-mentioned first local model is obtained by training the initial global model sent by the coordinator based on local data by the participating party; the above-mentioned first local model is used for the coordinator to determine the heterogeneous parameters corresponding to the participating party; the above-mentioned heterogeneous parameters corresponding to the participating party are determined based on the relevant information of the first local model of the participating party, the above-mentioned relevant information includes the model information shared by the participating party and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participating party meets the independent and identically distributed requirements.

[0269] Part or all of the methods disclosed in the above embodiments of the present invention may also be applied to the processor 801, or implemented by the processor 801, or implemented by the processor 801 in cooperation with other components (such as a transceiver). The processor 801 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method may be completed by an integrated logic circuit of hardware in the processor 801 or by instructions in the form of software. The above processor 801 may be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present invention may be implemented or executed. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. The steps of the method disclosed in conjunction with the embodiments of the present invention may be directly embodied as being executed by a hardware decoding processor, or may be executed by a combination of hardware and software modules in a decoding processor. The software module may be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 802, and the processor 801 reads the information in the memory 802 and completes the steps of the above method in combination with its hardware.

[0270] It is to be understood that the embodiments described in the embodiments of the present invention may be implemented by hardware, software, firmware, middleware, microcode or a combination thereof. For hardware implementation, the processing unit may be implemented in one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSP devices, DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), general purpose processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in the present application or a combination thereof.

[0271] For software implementation, the technology described in the embodiments of the present invention can be implemented by a module (such as a process, function, etc.) that performs the functions described in the embodiments of the present invention. The software code can be stored in a memory and executed by the processor 801. The memory can be implemented in the processor 801 or outside the processor 801.

[0272] In one embodiment, the heterogeneous parameter indicates the degree of non-independent and identically distributed.

[0273] In one embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0274] In one embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0275] In one embodiment, the embodiment of the present application also provides a data heterogeneous parameter determination system, including a coordinating party communication device and a participating party communication device, wherein the coordinating party communication device and the participating party communication device are communicatively connected; the above-mentioned coordinating party communication device is used to execute the steps of the above-mentioned coordinating party side method; the above-mentioned participating party communication device is used to execute the steps of the above-mentioned participating party side method.

[0276] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0277] Receive the first local model sent by each participant; the above-mentioned first local model is obtained by the participant training the initial global model sent by the coordinator based on the local data; determine the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model; the above-mentioned relevant information includes the model information shared by the participant and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0278] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0279] According to the relevant information of each first local model and the preset proxy model, the heterogeneous parameters corresponding to each participant are determined; the type of the above proxy model is the same as the type of the initial global model.

[0280] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0281] The proxy model is determined according to a preset training data set; each training data in the above training data set meets the independent and identically distributed requirements.

[0282] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0283] Determine the difference between the proxy model and each first local model based on the relevant information of each first local model; determine the relative weight offset value corresponding to each participant based on each difference; determine the heterogeneous parameter corresponding to each participant based on each relative weight offset value.

[0284] In one embodiment, the heterogeneous parameter indicates the degree of non-independent and identically distributed.

[0285] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0286] An initial global model is sent to each participant; the initial global model is used for each participant to train the initial global model based on local data to obtain their respective first local models.

[0287] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0288] The initial global model is updated according to each first local model to determine an updated first global model; and the target global model is obtained according to the first global model and a preset convergence condition.

[0289] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0290] If the first global model does not meet the convergence conditions, the training operation is repeated until the first global model meets the convergence conditions to obtain the target global model; the above-mentioned training operation includes: determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant; sending the first global model to each target participant; receiving the second local model sent by each target participant; determining the heterogeneous parameters corresponding to each target participant according to the relevant information of each second local model, updating the first global model according to each second local model, and determining the updated second global model; using the second global model as the new first global model; wherein the above-mentioned second local model is obtained by the participant training the first global model sent by the coordinator based on local data.

[0291] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0292] The heterogeneous parameters are sorted to obtain a sorting result; and the target participants are determined from among the participants according to the sorting result.

[0293] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0294] A maximum threshold is determined from each heterogeneous parameter according to the sorting result; and a participant corresponding to each heterogeneous parameter smaller than the maximum threshold is determined as a target participant.

[0295] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0296] Determine the preset screening quantity according to the total amount of training data required for global model training; determine the preset screening quantity of each target heterogeneous parameter from each heterogeneous parameter in ascending order according to the sorting result; determine the participant corresponding to each target heterogeneous parameter as the target participant.

[0297] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0298] Check whether the total amount of local data meets the total amount of training data required for the target global model training; the above total amount of local data is the sum of the local data corresponding to each target participant; if not, obtain a new participant and use the new participant as the target participant.

[0299] In one embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0300] In one embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0301] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0302] A first local model is sent to the coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0303] In one embodiment, the heterogeneous parameter refers to a non-independent and identically distributed degree parameter.

[0304] In one embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0305] In one embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0306] In one embodiment, the present application also provides a chip, which includes a programmable logic circuit and / or program instructions, and when the chip is running, it can execute the steps of the above-mentioned data heterogeneous parameter determination method.

[0307] In one embodiment, a computer program product is provided which includes instructions that, when executed on a computer, cause the computer to perform the following steps:

[0308] Receive the first local model sent by each participant; the above-mentioned first local model is obtained by the participant training the initial global model sent by the coordinator based on the local data; determine the heterogeneous parameters corresponding to each participant according to the relevant information of each first local model; the above-mentioned relevant information includes the model information shared by the participant and the coordinator, and the above-mentioned heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0309] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0310] According to the relevant information of each first local model and the preset proxy model, the heterogeneous parameters corresponding to each participant are determined; the type of the above proxy model is the same as the type of the initial global model.

[0311] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0312] The proxy model is determined according to a preset training data set; each training data in the above training data set meets the independent and identically distributed requirements.

[0313] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0314] Determine the difference between the proxy model and each first local model based on the relevant information of each first local model; determine the relative weight offset value corresponding to each participant based on each difference; determine the heterogeneous parameter corresponding to each participant based on each relative weight offset value.

[0315] In one embodiment, the heterogeneous parameter indicates the degree of non-independent and identically distributed.

[0316] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0317] An initial global model is sent to each participant; the initial global model is used for each participant to train the initial global model based on local data to obtain their respective first local models.

[0318] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0319] The initial global model is updated according to each first local model to determine an updated first global model; and the target global model is obtained according to the first global model and a preset convergence condition.

[0320] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0321] If the first global model does not meet the convergence conditions, the training operation is repeated until the first global model meets the convergence conditions to obtain the target global model; the above-mentioned training operation includes: determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant; sending the first global model to each target participant; receiving the second local model sent by each target participant; determining the heterogeneous parameters corresponding to each target participant according to the relevant information of each second local model, updating the first global model according to each second local model, and determining the updated second global model; using the second global model as the new first global model; wherein the above-mentioned second local model is obtained by the participant training the first global model sent by the coordinator based on local data.

[0322] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0323] The heterogeneous parameters are sorted to obtain a sorting result; and the target participants are determined from among the participants according to the sorting result.

[0324] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0325] A maximum threshold is determined from each heterogeneous parameter according to the sorting result; and a participant corresponding to each heterogeneous parameter smaller than the maximum threshold is determined as a target participant.

[0326] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0327] Determine the preset screening quantity according to the total amount of training data required for global model training; determine the preset screening quantity of each target heterogeneous parameter from each heterogeneous parameter in ascending order according to the sorting result; determine the participant corresponding to each target heterogeneous parameter as the target participant.

[0328] In one embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0329] Check whether the total amount of local data meets the total amount of training data required for the target global model training; the above total amount of local data is the sum of the local data corresponding to each target participant; if not, obtain a new participant and use the new participant as the target participant.

[0330] In one embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0331] In one embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0332] In one embodiment, a computer program product is provided which includes instructions that, when executed on a computer, cause the computer to perform the following steps:

[0333] A first local model is sent to the coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes the model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

[0334] In one embodiment, the heterogeneous parameter refers to a non-independent and identically distributed degree parameter.

[0335] In one embodiment, the local data includes at least one of the following: image data, voice data, text data, and user data.

[0336] In one embodiment, the initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

[0337] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties.

[0338] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0339] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0340] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the attached claims.

Claims

1. A method for determining data heterogeneity parameters, characterized in that: The method comprises: Receiving a first local model sent by each participant; the first local model is obtained by the participant training the initial global model sent by the coordinator based on local data; According to the relevant information of each of the first local models, the heterogeneous parameters corresponding to each of the participants are determined; the relevant information includes the model information shared by the participants and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participants meet the independent and identically distributed requirements.

2. The method according to claim 1, characterized in that The determining, according to the relevant information of each of the first local models, the heterogeneous parameters corresponding to each of the participants includes: According to the relevant information of each of the first local models and the preset proxy model, the heterogeneous parameters corresponding to each of the participants are determined; the type of the proxy model is the same as the type of the initial global model.

3. The method according to claim 2, characterized in that The method further comprises: The proxy model is determined according to a preset training data set; each training data in the training data set meets the independent and identically distributed requirements.

4. The method according to claim 2 or 3, characterized in that: The determining, according to the relevant information of each of the first local models and the preset proxy model, the heterogeneous parameters corresponding to each of the participants includes: Determine a difference between the proxy model and each of the first local models according to relevant information of each of the first local models; Determine the relative weight offset value corresponding to each of the participants according to each of the differences; The heterogeneous parameters corresponding to each of the participants are determined according to each of the relative weight offset values.

5. The method according to any one of claims 1 to 3, characterized in that: The heterogeneity parameter indicates the degree of non-IID.

6. The method according to any one of claims 1 to 3, characterized in that: Before receiving the first local model sent by each participant, the method further includes: The initial global model is sent to each of the participants; the initial global model is used for each of the participants to train the initial global model based on local data to obtain their respective first local models.

7. The method according to any one of claims 1 to 3, characterized in that: The method further comprises: updating the initial global model according to each of the first local models to determine an updated first global model; A target global model is obtained according to the first global model and a preset convergence condition.

8. The method according to claim 7, characterized in that The step of acquiring a target global model according to the first global model and a preset convergence condition includes: If the first global model does not meet the convergence condition, repeatedly performing the training operation until the first global model meets the convergence condition, thereby obtaining the target global model; The training operation includes: determining each target participant from each of the participants according to the heterogeneous parameters corresponding to each of the participants; sending the first global model to each of the target participants; receiving the second local model sent by each of the target participants; determining the heterogeneous parameters corresponding to each of the target participants according to the relevant information of each of the second local models, updating the first global model according to each of the second local models, and determining the updated second global model; using the second global model as a new first global model; The second local model is obtained by the participant training the first global model sent by the coordinator based on local data.

9. The method according to claim 8, characterized in that Determining each target participant from each participant according to the heterogeneous parameters corresponding to each participant includes: Sorting each of the heterogeneous parameters to obtain a sorting result; The target participants are determined from among the participants according to the ranking result.

10. The method according to claim 9, characterized in that Determining each target participant from each participant according to the ranking result includes: Determining a maximum threshold from each of the heterogeneous parameters according to the sorting result; Participants corresponding to the heterogeneous parameters that are smaller than the maximum threshold are determined as target participants.

11. The method according to claim 9, characterized in that Determining each target participant from each participant according to the ranking result includes: Determining a preset number of screenings based on the total amount of training data required for the global model training; According to the sorting result, in ascending order, determining the preset screening number of target heterogeneous parameters from the heterogeneous parameters; The participants corresponding to each of the target heterogeneous parameters are determined as target participants.

12. The method according to claim 8, characterized in that The method further comprises: Detect whether the total amount of local data meets the total amount of training data required for the target global model training; the total amount of local data is the sum of the local data corresponding to each of the target participants; If not satisfied, a new participant is acquired and used as the target participant.

13. The method according to any one of claims 1 to 3, characterized in that: The local data includes at least one of the following: image data, voice data, text data, and user data.

14. The method according to claim 13, characterized in that The initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

15. A method for determining data heterogeneity parameters, characterized in that: The method comprises: A first local model is sent to the coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

16. The method according to claim 15, characterized in that The heterogeneity parameter represents the degree of non-independent and identically distributed parameter.

17. The method according to claim 15, characterized in that The local data includes at least one of the following: image data, voice data, text data, and user data.

18. The method according to claim 17, characterized in that The initial global model includes at least one of the following: an image recognition model, a speech recognition model, a text recognition model, and an intelligent recommendation model.

19. A data heterogeneity parameter determination device, characterized in that: The device comprises: A receiving module, configured to receive a first local model sent by each participant; the first local model is obtained by the participant training the initial global model sent by the coordinator based on local data; A parameter determination module is used to determine the heterogeneous parameters corresponding to each of the participants based on the relevant information of each of the first local models; the relevant information includes the model information shared by the participants and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participants meets the independent and identically distributed requirements.

20. A data heterogeneity parameter determination device, characterized in that: The device comprises: A sending module is used to send a first local model to a coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

21. A coordinator communication device, comprising: a receiver, a processor and a memory, said memory storing a computer program; The receiver is used to receive the first local model sent by each participant; The first local model is obtained by the participant training the initial global model sent by the coordinator based on local data; The processor executes the computer program to determine the heterogeneous parameters corresponding to each of the participants based on the relevant information of each of the first local models; the relevant information includes model information shared by the participants and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participants meets the independent and identically distributed requirements.

22. A communication device for a participant, comprising: Transmitter; The transmitter is used to send a first local model to the coordinator; the first local model is obtained by training the initial global model sent by the coordinator based on local data by the participant; the first local model is used by the coordinator to determine the heterogeneous parameters corresponding to the participant; the heterogeneous parameters corresponding to the participant are determined based on the relevant information of the first local model of the participant, the relevant information includes model information shared by the participant and the coordinator, and the heterogeneous parameters are used to characterize whether the local data of the participant meets the independent and identically distributed requirements.

23. A data heterogeneity parameter determination system, characterized in that: It includes a coordinator communication device and a participant communication device, wherein the coordinator communication device and the participant communication device are in communication connection; The coordinator communication device is used to perform the steps of any one of the methods of claims 1 to 14; The participant communication device is used to execute the steps of any one of the methods of claims 15 to 18.

24. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 18 are implemented.

25. A chip, characterized in that: The chip comprises a programmable logic circuit and / or program instructions, and the steps of the method according to any one of claims 1 to 18 are implemented when the chip is executed.

26. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 18 are implemented.