Federated learning methods, apparatuses, and storage media

By optimizing the bandwidth control of edge nodes, the transmission latency problem caused by differences in communication capabilities in federated learning is solved, thereby improving data transmission efficiency and model training convergence.

CN116362353BActive Publication Date: 2026-05-29CHINA MOBILE COMM LTD RES INST +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA MOBILE COMM LTD RES INST
Filing Date
2021-12-27
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

During federated learning, the communication capabilities of each smart terminal are different, leading to transmission latency and overall performance degradation, which affects data transmission efficiency and convergence efficiency.

Method used

By leveraging edge applications and edge computing platforms at edge nodes, the uplink and downlink bandwidth of terminals can be dynamically adjusted. Based on the duration constraints and data volume requirements of federated learning tasks, the required bandwidth can be determined and requested for allocation, thereby optimizing data transmission.

Benefits of technology

This improves the communication quality and data transmission efficiency in the federated learning process, ensuring the smooth progress and convergence of model training.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116362353B_ABST
    Figure CN116362353B_ABST
Patent Text Reader

Abstract

The application discloses a federated learning method and device and a storage medium. The method comprises the following steps: an edge node receives a federated learning task sent by a federated learning platform, and sends the federated learning task to a terminal; and model information sent by the terminal through an edge network is received.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of wireless communication, and more particularly to a federated learning method, apparatus, and storage medium. Background Technology

[0002] In traditional cloud-centric machine learning methods, data collected from mobile devices, such as text, audio, and video, needs to be uploaded to the cloud for training in cloud data centers. To ensure the privacy and security of data owners, federated learning emerged. Federated learning (FL) is an emerging foundational artificial intelligence technology that aims to conduct machine learning among multiple participants or computing nodes while ensuring data security and protecting individual privacy. Currently, federated learning technology has already seen some applications and implementations.

[0003] Federated learning allows smart terminals to train models using local data. After training, the smart terminal does not need to send sensitive data involving device privacy to the cloud; it only needs to upload the updated model. The central server of the federated learning then aggregates the collected model data. However, the federated learning process involves a large amount of data transmission, with multiple interactions between the central cloud server and the smart terminals at the network edge. Since the communication capabilities of each smart terminal vary, transmission latency is inevitable, affecting the overall performance and convergence efficiency of the federated learning. Improving communication quality and optimizing data transmission are key to the efficient implementation of edge federated learning. Summary of the Invention

[0004] In view of this, the main objective of the present invention is to provide a federated learning method, apparatus and storage medium.

[0005] To achieve the above objectives, the technical solution of the present invention is implemented as follows:

[0006] This invention provides a federated learning method applied to edge nodes; the method includes:

[0007] Receive federated learning tasks sent by the federated learning platform and send the federated learning tasks to the terminal;

[0008] Receive model information sent by the terminal through the edge network.

[0009] In the above scheme, the edge nodes include: edge applications and edge computing platforms; the federated learning task includes: a time limit for task execution;

[0010] The method further includes:

[0011] The edge application determines the first bandwidth based on the duration limit of the task and the amount of data to be transmitted required to execute the task;

[0012] Obtain the second bandwidth based on the difference between the first bandwidth and the second bandwidth; wherein the first bandwidth represents the bandwidth required to perform the federated learning task; and the second bandwidth represents the bandwidth actually possessed by the terminal.

[0013] Once the difference is determined to meet a preset condition, a bandwidth customization request is sent to the edge computing platform; the bandwidth customization request is used to request the bandwidth capacity required for the terminal to perform the federated learning task.

[0014] The edge computing platform adjusts the uplink and downlink bandwidth of the terminal according to the bandwidth customization request;

[0015] The bandwidth customization request includes at least one of the following:

[0016] The terminal's identity information, the terminal's Internet Protocol (IP) address information, the bandwidth parameters required to execute the federated learning task, and the information of the federated learning task.

[0017] The method in the above scheme further includes:

[0018] The edge application determines that the federated learning task has ended and sends a bandwidth recovery request to the edge computing platform; the bandwidth recovery request is used to restore the terminal's bandwidth to its original state.

[0019] The edge computing platform executes the bandwidth recovery request and sends recovery feedback.

[0020] In the above scheme, receiving the model information sent by the terminal through the edge network includes:

[0021] Receive fourth model information sent by at least one terminal; the fourth model information includes: parameters of the model obtained by the terminal after training;

[0022] The method further includes:

[0023] The fifth model information is obtained by aggregating and updating based on at least one fourth model information; the fifth model information includes: the parameters of the aggregated and updated model.

[0024] The fifth model information is sent to at least one terminal; after being received by each terminal, the fifth model information is used to update and train the local model of the terminal to obtain the sixth model information.

[0025] The system receives the sixth model information from at least one terminal again, and performs aggregation and update based on the at least one sixth model information to obtain new model information. The new model information is then sent to at least one terminal, which updates and trains the model again. This process is repeated until the first model information that meets the convergence requirements is obtained. The first model information is used to send to the terminal and / or the federated learning platform.

[0026] The method in the above scheme further includes:

[0027] Corresponding to the federated learning task being related to multiple edge applications, second model information is received; the second model information includes: the parameters of the model obtained by the federated learning platform after aggregating and updating the first model information of multiple edge applications;

[0028] The second model information is updated and trained to obtain the third model information, which is then sent to the federated learning platform. The third model information is received by the federated learning platform and then aggregated and updated again to obtain new model information, which is then sent to each edge application. This process of updating and training is repeated until the target model information that meets the convergence requirements is obtained.

[0029] This invention provides a federated learning method applied to a terminal; the method includes:

[0030] Receive federated learning tasks sent by edge applications;

[0031] The federated learning task is executed to obtain fourth model information after model training; the fourth model information includes: parameters of the model obtained by the terminal after training;

[0032] The fourth model information is sent to the edge application.

[0033] In the above scheme, the federated learning task includes at least one of the following: the model to be trained, the data features and labels required for training, and training time information;

[0034] The execution of the federated learning task includes:

[0035] Collect the required data based on the data features and labels required for training in the federated learning task;

[0036] According to the training time information of the federated learning task, model training is performed based on the collected data and labels, and the model to be trained, to obtain the fourth model information after training.

[0037] In the above scheme, the fourth model information is used to be received by the edge application and aggregated and updated according to the fourth model information;

[0038] The method further includes:

[0039] The edge application receives fifth model information; the fifth model information includes parameters of a model obtained by the edge application through aggregation and updating based on the fourth model information received from at least one terminal.

[0040] The terminal's local model is updated and trained based on the fifth model information to obtain the sixth model information. The sixth model information is received by the edge application and then aggregated and updated again to obtain new model information, which is then sent to each terminal. This process of updating and training is repeated until the first model information that meets the convergence requirements is obtained.

[0041] This invention provides a federated learning method applied to a federated learning platform, the method comprising:

[0042] A federated learning task is determined and sent to an edge application; the federated learning task is then distributed to the terminal by the edge application.

[0043] Receive first model information sent by at least one edge application, and determine target model information based on the first model information; the first model information includes: model parameters obtained by training of the edge application and the terminal associated with the edge application.

[0044] In the above scheme, determining the target model information based on the first model information includes:

[0045] The second model information is obtained by aggregating and updating based on at least one first model information; the second model information includes the parameters of the aggregated and updated model.

[0046] The second model information is sent to each of the at least one edge application; the second model information is received by the edge application and updated and trained according to the second model information to obtain the third model information;

[0047] The system receives third model information from at least one edge application again, and performs aggregation and update based on the at least one third model information to obtain new model information, which is then sent to at least one edge application for further updating and training. This process is repeated until the target model information that meets the convergence requirements is obtained.

[0048] This invention provides a federated learning device applied to edge nodes, the device comprising:

[0049] The first sub-communication module is used to receive federated learning tasks sent by the federated learning platform and send the federated learning tasks to the terminal.

[0050] Receive model information sent by the terminal through the edge network.

[0051] In the above scheme, the edge nodes include: edge applications and edge computing platforms; the federated learning task includes: a time limit for task execution;

[0052] The edge application includes: a first sub-processing module and a first sub-communication module;

[0053] The first sub-processing module is used to determine the first bandwidth based on the duration limit of the task and the amount of data to be transmitted required to execute the task;

[0054] Obtain the second bandwidth based on the difference between the first bandwidth and the second bandwidth; wherein the first bandwidth represents the bandwidth required to perform the federated learning task; and the second bandwidth represents the bandwidth actually possessed by the terminal.

[0055] The first sub-communication module is used to determine that the difference meets a preset condition and send the bandwidth customization request to the edge computing platform; the bandwidth customization request is used to request the allocation of bandwidth capacity required for the terminal to perform federated learning tasks.

[0056] The edge computing platform includes: a second sub-processing module and a second sub-communication module;

[0057] The second sub-communication module is used to receive bandwidth customization requests;

[0058] The second sub-processing module is used to adjust the uplink and downlink bandwidth of the terminal according to the bandwidth customization request;

[0059] The bandwidth customization request includes at least one of the following:

[0060] The terminal's identity information, the terminal's IP address information, the bandwidth parameters required to execute the federated learning task, and the information of the federated learning task.

[0061] In the above scheme, the first sub-communication module of the edge application is used to determine the end of the federated learning task and send a bandwidth recovery request to the edge computing platform; the bandwidth recovery request is used to restore the terminal's bandwidth to its original state.

[0062] The second sub-processing module of the edge computing platform is used to execute the bandwidth recovery request and send recovery feedback.

[0063] In the above scheme, the first sub-communication module is used to receive fourth model information sent by at least one terminal; the fourth model information includes: parameters of the model obtained by the terminal after training;

[0064] The first sub-processing module is used to perform aggregation and updating based on at least one fourth model information to obtain fifth model information; the fifth model information includes: parameters of the aggregated and updated model;

[0065] The first sub-communication module is further configured to send the fifth model information to at least one terminal; after receiving the fifth model information, each terminal updates and trains its local model to obtain the sixth model information;

[0066] The first sub-communication module is further configured to receive the sixth model information sent by at least one terminal again. The first sub-processing module is further configured to perform aggregation and update based on at least one sixth model information to obtain new model information, and send the obtained new model information to at least one terminal for the terminal to update and train again. This process of updating and training is repeated until the first model information that meets the convergence requirements is obtained. The first model information is used to send to the terminal and / or the federated learning platform.

[0067] In the above scheme, corresponding to the federated learning task being related to multiple edge applications, the first sub-communication module is also used to receive second model information; the second model information includes: the parameters of the model obtained by the federated learning platform after aggregating and updating the first model information of multiple edge applications;

[0068] The first sub-processing module is used to update and train according to the second model information to obtain the third model information and send it to the federated learning platform. The third model information is received by the federated learning platform and then aggregated and updated again to obtain new model information and sent to each edge application. This process of updating and training is repeated until the target model information that meets the convergence requirements is obtained.

[0069] This invention provides a federated learning device for use in a terminal, the device comprising:

[0070] The second communication module is used to receive federated learning tasks sent by edge applications;

[0071] The second processing module is used to execute the federated learning task and obtain the fourth model information after model training; the fourth model information includes: the parameters of the model obtained by the terminal after training;

[0072] The second communication module is also used to send the fourth model information to the edge application.

[0073] In the above scheme, the federated learning task includes at least one of the following: the model to be trained, the data features and labels required for training, and training time information;

[0074] The second processing module is used to collect the required data based on the data features and labels required for training in the federated learning task;

[0075] According to the training time information of the federated learning task, model training is performed based on the collected data and labels, and the model to be trained, to obtain the fourth model information after training.

[0076] In the above scheme, the fourth model information is used to be received by the edge application and aggregated and updated according to the fourth model information;

[0077] The second communication module is further configured to receive fifth model information sent by the edge application; the fifth model information includes: parameters of a model obtained by the edge application through aggregation and updating based on the fourth model information received from at least one terminal;

[0078] The second processing module is used to update and train the local model of the terminal according to the fifth model information to obtain the sixth model information; the sixth model information is received by the edge application and then aggregated and updated again to obtain new model information and sent to each terminal, and so on, updating and training repeatedly until the first model information that meets the convergence requirements is obtained.

[0079] This invention provides a federated learning device for use on a federated learning platform. The device includes:

[0080] The third processing module is used to determine the federated learning task;

[0081] The third communication module is used to send the federated learning task to the edge application; the federated learning task is distributed to the terminal by the edge application;

[0082] The third communication module is further configured to receive first model information sent by at least one edge application, and determine target model information based on the first model information; the first model information includes: model parameters obtained by training of the edge application and the terminal associated with the edge application.

[0083] In the above scheme, the third processing module is used to perform aggregation and update based on at least one first model information to obtain second model information; the second model information includes: parameters of the aggregated and updated model;

[0084] The third communication module is further configured to send the second model information to each of the at least one edge application; the second model information is received by the edge application and updated and trained according to the second model information to obtain the third model information;

[0085] The third communication module is also used to receive third model information sent by at least one edge application again. The third communication module is also used to perform aggregation update based on at least one third model information to obtain new model information and send it to at least one edge application, which then updates and trains it again. This process is repeated until the target model information that meets the convergence requirements is obtained.

[0086] This invention provides a federated learning apparatus, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, it implements the steps of the method on the federated learning platform side; or...

[0087] When the processor executes the program, it implements any one of the steps of the method on the edge node side; or...

[0088] When the processor executes the program, it implements any of the steps of the method on the terminal side.

[0089] This invention also provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of any of the methods described in the federated learning platform; or,

[0090] When the computer program is executed by the processor, it implements any of the steps of the method described above on the edge node side; or...

[0091] When the computer program is executed by the processor, it implements the steps of any one of the methods described on the terminal side.

[0092] This invention provides a federated learning method, apparatus, and storage medium. The method includes: a federated learning platform determining a federated learning task; sending the federated learning task to an edge application; the federated learning task being distributed by the edge application to a terminal; an edge node receiving the federated learning task sent by the federated learning platform and sending the federated learning task to the terminal; receiving model information sent by the terminal through an edge network; correspondingly, the terminal receiving the federated learning task sent by the edge application; executing the federated learning task to obtain fourth model information after model training; the fourth model information including parameters of the model obtained by the terminal after training; and sending the fourth model information to the edge application. Thus, the transmission capability of the edge network is utilized to improve the communication quality during the federated learning process, realize the data transmission required for the federated learning task, and improve the efficiency of federated learning. Attached Figure Description

[0093] Figure 1 A flowchart illustrating a federated learning method provided in an embodiment of the present invention;

[0094] Figure 2A flowchart illustrating another federated learning method provided in an embodiment of the present invention;

[0095] Figure 3 A flowchart illustrating another federated learning method provided in an embodiment of the present invention;

[0096] Figure 4 A schematic diagram of the structure of a federated learning system provided for an application embodiment of the present invention;

[0097] Figure 5 A flowchart illustrating a federated learning method provided for an application embodiment of the present invention;

[0098] Figure 6 A flowchart illustrating another federated learning method provided for an application embodiment of the present invention;

[0099] Figure 7 This is a schematic diagram of the structure of a federated learning device provided in an embodiment of the present invention;

[0100] Figure 8 A schematic diagram of another federated learning device provided in an embodiment of the present invention;

[0101] Figure 9 This is a schematic diagram of another federated learning device provided in an embodiment of the present invention;

[0102] Figure 10 This is a schematic diagram of another federated learning device provided in an embodiment of the present invention. Detailed Implementation

[0103] The present invention will be further described in detail below with reference to the embodiments.

[0104] Figure 1 This is a flowchart illustrating a federated learning method provided in an embodiment of the present invention; as shown below. Figure 2 As shown, the method can be applied to edge nodes; the method includes:

[0105] Step 101: Receive the federated learning task sent by the federated learning platform and send the federated learning task to the terminal;

[0106] Step 102: Receive the model information sent by the terminal through the edge network.

[0107] The edge nodes (which can also be understood as edge clouds) include: edge applications and edge computing platforms.

[0108] The edge application connects to the federated learning platform via the network and can receive federated learning tasks and management information issued by the federated learning platform, that is, it can communicate with the federated learning platform.

[0109] Edge applications also communicate with terminals through edge networks and base stations, sending federated learning tasks to terminals through edge networks and aggregating and iterating the model parameters returned by each terminal.

[0110] Edge applications connect to edge computing platforms deployed on edge networks to access edge network capabilities, thereby improving the quality of terminal communication.

[0111] In practical applications, when a terminal participating in federated learning has a large amount of data transmission during the federated learning process, the edge application can calculate the difference between the uplink and downlink bandwidth that each terminal should have and the actual uplink and downlink bandwidth based on the time constraints and data transmission volume of the federated learning task. To ensure the smooth progress of the federated learning task, the edge application requests a bandwidth customization request for the terminal from the edge computing platform based on the difference.

[0112] Based on this, in some embodiments, the federated learning task includes: a time limit for executing the task;

[0113] The method further includes:

[0114] The edge application determines the first bandwidth based on the duration limit of the task and the amount of data to be transmitted required to execute the task;

[0115] Obtain the second bandwidth based on the difference between the first bandwidth and the second bandwidth; wherein the first bandwidth represents the bandwidth required to perform the federated learning task; and the second bandwidth represents the bandwidth actually possessed by the terminal.

[0116] Once the difference is determined to meet a preset condition, a bandwidth customization request is sent to the edge computing platform; the bandwidth customization request is used to request the bandwidth capacity required for the terminal to perform the federated learning task.

[0117] The edge computing platform adjusts the uplink and downlink bandwidth of the terminal according to the bandwidth customization request;

[0118] The bandwidth customization request includes at least one of the following:

[0119] The terminal's identity information, the terminal's IP address information, the bandwidth parameters required to execute the federated learning task, and the information of the federated learning task.

[0120] The amount of data transmitted required to execute the task can be determined by the federated learning platform based on the amount of data transmitted during the execution of similar federated learning tasks in the past; or it can be determined by the edge application based on actual conditions after the terminal transmits data to the edge application once. Here, the transmitted data includes at least: corresponding model information, such as fourth model information, fifth model information, etc., specifically including the model parameters.

[0121] The difference meeting a preset condition includes: the difference exceeding a preset difference threshold. This difference threshold can be set based on an algorithm, actual needs, or a specific application scenario, and its value is not limited. For example, a large difference between the first bandwidth and the second bandwidth (e.g., a difference threshold greater than the threshold value) indicates insufficient actual bandwidth of the terminal, affecting data transmission efficiency. This can be addressed by adjusting the bandwidth to improve data transmission efficiency.

[0122] Specifically, for the data streams required by the terminal to perform the federated learning task, a bandwidth customization request for the data streams of the terminal's federated learning task is sent to the edge computing platform to obtain parameters of the uplink and downlink bandwidths required to perform the federated learning task.

[0123] The bandwidth customization request includes: terminal identity information (such as the terminal's communication card number (mobile phone number)), Internet Protocol (IP) address information, parameters of the uplink and downlink bandwidth required to execute the federated learning task, and information of the federated learning task (such as the identifier of the federated learning task to indicate which federated learning task the bandwidth customization request is for).

[0124] In practical applications, after the federated learning task is completed, the edge application can also request the removal of bandwidth customization from the edge computing platform.

[0125] Based on this, in some embodiments, the method further includes:

[0126] The edge application determines that the federated learning task has ended and sends a bandwidth recovery request to the edge computing platform; the bandwidth recovery request is used to restore the terminal's bandwidth to its original state.

[0127] The edge computing platform executes the bandwidth recovery request and sends recovery feedback.

[0128] In practical applications, edge applications participate in federated learning. They communicate with terminals through edge networks, send federated learning tasks to terminals, and aggregate and iterate the model parameters returned by each terminal.

[0129] Based on this, in some embodiments, receiving the model information sent by the terminal through the edge network includes:

[0130] The edge application receives fourth model information sent by at least one terminal; the fourth model information includes: parameters of the model obtained by the terminal after training;

[0131] The method further includes:

[0132] The fifth model information is obtained by aggregating and updating based on at least one fourth model information; the fifth model information includes: the parameters of the aggregated and updated model.

[0133] The fifth model information is sent to at least one terminal; after being received by each terminal, the fifth model information is used to update and train the local model of the terminal to obtain the sixth model information.

[0134] The system receives the sixth model information from at least one terminal again, and performs aggregation and update based on the at least one sixth model information to obtain new model information. The new model information is then sent to at least one terminal, which updates and trains the model again. This process is repeated until the first model information that meets the convergence requirements is obtained. The first model information is used to send to the terminal and / or the federated learning platform.

[0135] Specifically, the edge application aggregates and updates the model parameters (such as the fourth model information) received from each terminal, and sends the aggregated and updated model parameters (such as the fifth model information) to the terminal. After receiving the parameters, the terminal updates its local model again and starts a new round of local model training. Then, it sends the new model parameters (such as the sixth model information) to the edge application. This process is repeated multiple times until the model on the edge application side converges. The edge application then sends the converged model information (i.e., the first model information) to the federated learning platform.

[0136] In practical applications, if the federated learning tasks issued by the federated learning platform are applied to the entire network, that is, involving multiple edge applications, a two-layer learning task can be selected, so that the federated learning platform and the edge applications can aggregate model parameters and iterate the model.

[0137] Based on this, in some embodiments, the method further includes:

[0138] Corresponding to the federated learning task being related to multiple edge applications, second model information is received; the second model information includes: the parameters of the model obtained by the federated learning platform after aggregating and updating the first model information of multiple edge applications;

[0139] The second model information is updated and trained to obtain the third model information, which is then sent to the federated learning platform. The third model information is received by the federated learning platform and then aggregated and updated again to obtain new model information, which is then sent to each edge application. This process of updating and training is repeated until the target model information that meets the convergence requirements is obtained.

[0140] Specifically, the federated learning platform receives the information of the federated learning model that has completed training (such as the first model information). Based on the requirements of the federated learning task, it determines that the training is carried out simultaneously on multiple edge nodes. Then, it aggregates the models of multiple edge applications and sends the aggregated and updated model (such as the second model information) to the edge applications. After receiving it, the edge applications carry out a new round of training. This process is repeated multiple times until the federated learning platform completes model convergence, thus obtaining the target model information.

[0141] After the model converges, the federated learning platform can send a notification to the edge application that the federated learning task has ended, and the edge application can send the notification to the terminal that the federated learning task has ended.

[0142] Figure 2 This is a flowchart illustrating a federated learning method provided in an embodiment of the present invention; as shown below. Figure 2 As shown, the method can be applied to terminals such as mobile phones, smartphones, laptops, digital radio receivers, personal digital assistants (PDAs), tablet computers (PADs), portable multimedia players (PMPs), wearable devices (such as smart bracelets, smartwatches, etc.), navigation devices, and other smart devices; the method includes:

[0143] Step 201: Receive the federated learning task sent by the edge application;

[0144] Step 202: Execute the federated learning task to obtain the fourth model information after model training; the fourth model information includes: the parameters of the model obtained by the terminal after training;

[0145] Step 203: Send the fourth model information to the edge application.

[0146] The terminal is a participant in the federated learning task. After the terminal is powered on and registered, the operator network will guide the relevant data of the federated learning task to the edge application in the edge cloud according to its federated learning service contract information and location. The terminal will communicate with the edge application through the edge network, receive the federated learning task and model information, and participate in the federated learning.

[0147] In some embodiments, the federated learning task includes: a model to be trained, data features and labels required for training, training time information (such as training start time), etc.

[0148] The execution of the federated learning task includes:

[0149] Collect the required data based on the data features and labels required for training in the federated learning task;

[0150] According to the training time information of the federated learning task, model training is performed based on the collected data and labels, and the model to be trained, to obtain the fourth model information after training.

[0151] In practical applications, edge applications participate in federated learning and communicate with the terminal through the edge network; edge applications and the terminal can aggregate model parameters determined by the terminal and iterate the model.

[0152] Based on this, in some embodiments, the fourth model information is used to be received by the edge application and aggregated and updated according to the fourth model information;

[0153] The method further includes:

[0154] The terminal receives fifth model information sent by the edge application; the fifth model information includes: parameters of the model obtained by the edge application through aggregation and updating based on the fourth model information received from at least one terminal;

[0155] The terminal's local model is updated and trained based on the fifth model information to obtain the sixth model information. The sixth model information is received by the edge application and then aggregated and updated again to obtain new model information, which is then sent to each terminal. This process of updating and training is repeated until the first model information that meets the convergence requirements is obtained.

[0156] Specifically, the edge application aggregates and updates the model parameters (such as the fourth model information) received from each terminal, and sends the aggregated and updated model parameters (such as the fifth model information) to the terminal. After receiving the updated model, the terminal updates its local model again and starts a new round of local model training. Then, it sends the new model parameters (such as the sixth model information) to the edge application. This process is repeated multiple times until the model on the edge application side converges. The edge application then sends the converged model information (i.e., the first model information) to the federated learning platform.

[0157] Figure 3 This is a flowchart illustrating a federated learning method provided in an embodiment of the present invention; as shown below. Figure 3 As shown, the method can be applied to federated learning platforms; the method includes:

[0158] Step 301: Determine the federated learning task and send the federated learning task to the edge application; the federated learning task is distributed to the terminal by the edge application.

[0159] Step 302: Receive first model information sent by at least one edge application, and determine target model information based on the first model information.

[0160] The first model information includes: model parameters obtained by training the edge application and the terminal associated with the edge application.

[0161] The federated learning platform can be used to publish federated learning tasks and / or models, manage federated learning tasks, and participate in the federated learning process.

[0162] The federated learning platform can also be responsible for managing business contract information and business registration for terminals.

[0163] The federated learning platform is deployed in the central cloud and connects to edge applications deployed on each edge side via the network, distributing and managing federated learning tasks to each edge application.

[0164] In some embodiments, determining the target model information based on the first model information includes:

[0165] The second model information is obtained by aggregating and updating based on at least one first model information; the second model information includes the parameters of the aggregated and updated model.

[0166] The second model information is sent to each of the at least one edge application; the second model information is received by the edge application and updated and trained according to the second model information to obtain the third model information;

[0167] The system receives third model information from at least one edge application again, and performs aggregation and update based on the at least one third model information to obtain new model information, which is then sent to at least one edge application for further updating and training. This process is repeated until the target model information that meets the convergence requirements is obtained.

[0168] The convergence requirement can be a condition set for the model when generating the federated learning task, and is not limited here.

[0169] Specifically, the federated learning platform can divide federated learning tasks into two-layer learning tasks of "central cloud-edge node-terminal" and single-layer learning tasks of "edge node-terminal".

[0170] When applying the model to the entire network, a two-layer learning task can be used; when applying the model to a local region, a single-layer learning task can be used.

[0171] For example, if a federated learning task identified and published by the federated learning platform involves multiple edge nodes, it can be understood as being applied to the entire network, and a two-layer learning task can be selected; while if a federated learning task identified and published only involves one edge node, it can be understood as being applied to a local area, and a single-layer learning task can be selected.

[0172] For example, a language training task involves provinces A, B, and C, with each province corresponding to an edge node, meaning it involves multiple edge nodes. This can be understood as being applied to the entire network, and a two-layer learning task can be selected.

[0173] If the language training task only involves Province A, that is, only one edge node, it can be understood as being applied to a local area, and a single-layer learning task can be selected.

[0174] For a two-layer learning task, it is necessary to receive the model information after training by each edge application, i.e., the first model information; and to aggregate and update the model information of multiple edge applications, and then send the aggregated and updated model information back to each edge application. After receiving it, each edge application starts a new round of training, and iterates multiple times until the federated learning platform completes model convergence; that is, to execute the above-mentioned iterative process based on the first model information, the second model information, the third model information, etc., until model convergence is completed.

[0175] Once completed, the federated learning platform can also send a notification to edge applications that the federated learning task has ended, and the edge applications can then send the notification to the terminal.

[0176] Figure 4 This is a schematic diagram of the structure of a federated learning system provided in an embodiment of the present invention; as shown below. Figure 4 As shown, the federated learning system includes: a federated learning platform, edge nodes (i.e., edge cloud), terminals, and carrier networks.

[0177] The functions of each part of the federated learning system are explained below.

[0178] The federated learning platform is used to publish federated learning tasks and models, manage federated learning tasks, and participate in the federated learning process. It is also used to manage business contract information and register services for terminals. In application, the federated learning platform can be deployed in a central cloud and connected to edge applications deployed at various edge nodes via a network to distribute and manage federated learning tasks to these edge applications. The federated learning platform can divide federated learning tasks into two-layer learning tasks ("central-edge node-terminal") and single-layer learning tasks ("edge node-terminal"). Two-layer learning tasks can be used when the model is applied to the entire network, while single-layer learning tasks can be used when the model is applied to a local area.

[0179] The edge node includes an edge computing platform and a federated learning edge application (hereinafter referred to as the edge application). The edge application is deployed at the edge and connects to the federated learning platform via a network, receiving federated learning tasks and management information issued by the federated learning platform. Simultaneously, the edge application communicates with terminals through the edge network and base stations, issuing federated learning tasks to the terminals and aggregating and iterating the model parameters returned by each terminal.

[0180] The edge application also connects to an edge computing platform deployed on the edge network to access the data transmission capabilities of the edge network. When a terminal participating in federated learning experiences significant data transmission, the edge application determines a first uplink / downlink bandwidth (the first uplink / downlink bandwidth is the uplink / downlink bandwidth the terminal should have, i.e., the uplink / downlink bandwidth required to complete the data transmission within the time limit) and a second uplink / downlink bandwidth (the second uplink / downlink bandwidth is the actual uplink / downlink bandwidth the terminal possesses, representing the terminal's actual bandwidth capability and related to its subscribed network services) based on the time constraints and data volume of the federated learning task. It then calculates the difference between the first and second uplink / downlink bandwidths. To ensure the smooth execution of the federated learning task, the edge application, based on the difference, sends a bandwidth customization request to the edge computing platform for the data stream required for the terminal to perform the federated learning task. This bandwidth customization request carries parameters such as the terminal's identifier (e.g., communication number, mobile phone number), IP address information, federated learning task information, and the required uplink / downlink bandwidth. After the learning task concludes, the edge application can send a request message to the edge computing platform to delete the bandwidth customization.

[0181] The terminal, as a participant in the federated learning task, after powering on and completing registration, uses its federated learning service contract information and location to have the relevant data of the federated learning service routed by the operator network to the edge application in its edge cloud. It then communicates with the edge application through the edge network, receives federated learning task and model information, and participates in federated learning.

[0182] The operator network portion mainly involves core network elements and edge cloud (specifically, the edge computing platform of the edge cloud, used to provide edge network). After the terminal powers on and completes service registration, the core network, based on the service subscription information, routes the data for the terminal's federated learning task to the edge network where the terminal resides. Here, the data stream required for executing the federated learning task is routed to the edge network where the terminal is located, allowing it to handle the data flow transmission. This leverages the characteristics and capabilities of the edge network to integrate distributed computing resources, improve terminal communication quality, and optimize the efficiency of federated learning. The edge computing platform in the edge network connects with edge applications, registers and authenticates them, and provides corresponding network capabilities and services. Upon receiving a bandwidth customization request from an edge application for the terminal's federated learning task data stream, the platform adjusts the uplink and downlink wireless bandwidth resources available for the terminal's federated learning task based on the edge network's wireless bandwidth capacity usage, ensuring smooth data transmission and successful federated learning.

[0183] Figure 5 A flowchart illustrating a federated learning method provided as an application embodiment of the present invention; as shown below. Figure 5 The diagram illustrates a two-layer federated learning task execution process, the method comprising:

[0184] Step 500, Pre-operation;

[0185] The pre-operation includes:

[0186] The terminal registers;

[0187] Data routing for core network elements to perform network learning tasks.

[0188] The terminal registration process includes: completing power-on registration after powering on and registering with the federated learning platform for federated learning services; thereby enabling the terminal to execute federated learning tasks.

[0189] The data routing for the network learning task performed by the core network element includes: Based on the terminal's registration and subscription information and location information, the core network element determines the edge network where the terminal is located, and sends a data routing notification for the federated learning task to the edge network and the edge computing platform. Subsequently, the edge network and the edge computing platform route the data involved in the terminal's federated learning task to the edge application deployed on that edge network. In this way, when the terminal executes the federated learning task, it can utilize the data transmission capabilities of the edge network, improving the execution efficiency of the federated learning task.

[0190] Step 501: The federated learning platform publishes federated learning (FL) tasks to edge applications;

[0191] The federated learning task may include information such as the model to be trained, the data features and labels required for training, and the training start time.

[0192] Specifically, after the federated learning platform identifies or receives a new federated learning task, it distributes the task to edge applications deployed on various edge networks, or distributes it to edge applications on some edge networks as needed (e.g., only terminals on some edge networks need to be trained).

[0193] Step 502: The edge application receives the federated learning task and sends the federated learning task to the terminal connected to it; after receiving the federated learning task, the terminal executes the federated learning task and sends the calculated model parameter information to the edge application.

[0194] The terminal performs a federated learning task, including: collecting the required data according to the federated learning task, and conducting local model training based on information such as the training start time to obtain model parameter information.

[0195] Step 503: Adjust the uplink and downlink bandwidth of the terminal.

[0196] Specifically, the federated learning task also includes: task execution time limit information;

[0197] The control of uplink and downlink bandwidth of the terminal includes: the edge application calculating the difference between the uplink and downlink bandwidth that the terminal should have and the actual uplink and downlink bandwidth based on the data transmission bandwidth of each terminal and the time limit information of the federated learning task; to ensure the smooth execution of the federated learning task, the edge application sending a terminal federated learning task data stream bandwidth customization request to the edge computing platform based on the difference, the bandwidth customization request being used to request the allocation of bandwidth capacity required for the terminal to execute the federated learning task, the bandwidth customization request carrying parameters such as the terminal's communication number (mobile phone number), IP address information, information of the federated learning task, and the uplink and downlink bandwidth to be guaranteed; the edge computing platform adjusting the uplink and downlink wireless bandwidth resources available for the terminal's federated learning task based on the edge network's wireless bandwidth capacity usage, and returning a bandwidth customization request response.

[0198] The difference between the expected uplink and downlink bandwidth of the computing terminal and its actual uplink and downlink bandwidth includes:

[0199] The edge application determines the uplink and downlink bandwidth (equivalent to the first bandwidth mentioned above) that the terminal should have based on the duration limit of the task and the amount of data to be transmitted.

[0200] Obtain the difference between the actual uplink and downlink bandwidth of the terminal (equivalent to the second bandwidth mentioned above), based on the difference between the first bandwidth and the second bandwidth;

[0201] Wherein, the first bandwidth represents the bandwidth required to perform the federated learning task; the second bandwidth represents the bandwidth actually possessed by the terminal.

[0202] Here, by leveraging the computing power of the edge network, the uplink and downlink bandwidth of the terminal is adjusted based on the needs of the federated learning task, thereby improving the communication quality during the execution of the federated learning task.

[0203] Step 504: The terminal updates the model in conjunction with edge applications;

[0204] Specifically, step 504 includes: the edge application aggregates and updates the model parameters received from each terminal, and sends the updated model to the terminal. After receiving the updated model, the terminal updates its local model and starts a new round of local model training, and sends the new model parameters to the edge application. This process is iterated multiple times until the model on the edge application side converges. The edge application then sends the converged model information to the federated learning platform.

[0205] Step 505: Edge applications combine with the federated learning platform to update the model;

[0206] Specifically, step 505 includes: the federated learning platform receives the federated learning model information that has completed training (i.e. the converged model information obtained in step 504 above), and according to the requirements of the federated learning task, if it is carried out simultaneously in multiple edge networks, the models of multiple edge applications are aggregated, and the aggregated and updated model is sent to the edge applications. After receiving it, the edge applications carry out a new round of training, and the process is repeated multiple times until the federated learning platform completes model convergence.

[0207] Step 506: After the model converges, the federated learning platform can send a notification to the edge application that the federated learning task has ended, and the edge application can send a notification to the terminal that the federated learning task has ended.

[0208] Step 507: After the federated learning task is completed, the edge application sends a request message to the edge computing platform to delete the terminal bandwidth customization and restore the original settings of the terminal.

[0209] In the diagram, LOOP represents the iterative loop process, and OPT represents the optional operation.

[0210] Figure 6 A flowchart illustrating a federated learning method provided as an application embodiment of the present invention; as shown below. Figure 6The diagram illustrates the execution process of a single-layer federated learning task. The difference between a single-layer and a two-layer federated learning task is that the federated learning platform does not participate in the training process of a single-layer task; it only distributes and manages the task. A single-layer task can be used when the model is applied to a local region. Detailed steps can be found in the execution flow of a two-layer federated learning task. Specifically, the method includes:

[0211] Step 600, Pre-operation;

[0212] The pre-operation includes:

[0213] The terminal registers;

[0214] Data routing for core network elements to perform network learning tasks.

[0215] The terminal registration process includes: completing power-on registration after powering on and registering with the federated learning platform for federated learning services; thereby enabling the terminal to execute federated learning tasks.

[0216] The data routing for the network learning task performed by the core network element includes: Based on the terminal's registration and subscription information and location information, the core network element determines the edge network where the terminal is located, and sends a data routing notification for the federated learning task to the edge network and the edge computing platform. Subsequently, the edge network and the edge computing platform route the data involved in the terminal's federated learning task to the edge application deployed on that edge network. In this way, when the terminal executes the federated learning task, it can utilize the data transmission capabilities of the edge network, improving the execution efficiency of the federated learning task.

[0217] Step 601: The federated learning platform publishes federated learning (FL) tasks to edge applications;

[0218] The federated learning task may include information such as the model to be trained, the data features and labels required for training, and the training start time.

[0219] Specifically, after the federated learning platform identifies or receives a new federated learning task, it distributes the task to edge applications deployed on various edge networks, or distributes it to edge applications on some edge networks as needed (e.g., only terminals on some edge networks need to be trained).

[0220] Step 602: The edge application receives the federated learning task and sends the federated learning task to the terminal connected to it; after receiving the federated learning task, the terminal executes the federated learning task and sends the calculated model parameter information to the edge application.

[0221] The terminal performs a federated learning task, including: collecting the required data according to the federated learning task, and conducting local model training based on information such as the training start time to obtain model parameter information.

[0222] Step 603: Adjust the uplink and downlink bandwidth of the terminal.

[0223] Specifically, the federated learning task also includes: task execution time limit information;

[0224] The control of uplink and downlink bandwidth of the terminal includes: the edge application can calculate the difference between the uplink and downlink bandwidth that the terminal should have and the actual uplink and downlink bandwidth based on the data transmission bandwidth of each terminal and the time limit information of the federated learning task; to ensure the smooth progress of the federated learning task, the edge application sends a terminal federated learning task data stream bandwidth customization request to the edge computing platform based on the difference, the request carrying parameters such as the terminal communication number (mobile phone number), IP address information, information of the federated learning task, and the uplink and downlink bandwidth to be guaranteed; the edge computing platform adjusts the uplink and downlink wireless bandwidth resources available for the terminal's federated learning task based on the wireless bandwidth capacity usage of the edge network, and returns a bandwidth customization request response.

[0225] Here, by leveraging the computing power of the edge network, the uplink and downlink bandwidth of the terminal is adjusted based on the needs of the federated learning task, thereby improving the communication quality during the execution of the federated learning task.

[0226] Step 604: The terminal updates the model in conjunction with edge applications;

[0227] Specifically, step 604 includes: the edge application aggregating and updating the model parameters received from each terminal, and sending the updated model to the terminal; after receiving the updated model, the terminal updates its local model and begins a new round of local model training, sending the new model parameters to the edge application; this process is iterated multiple times until the model on the edge application side converges. The edge application then sends the converged model information to the federated learning platform.

[0228] Step 605: The edge application sends the final model to the terminal and informs the terminal and the federated learning platform that the federated learning task has ended.

[0229] Unlike Figure 5 The method shown, Figure 6 The method shown only involves one edge node. Therefore, after the edge application of this edge node is trained, there is no need to combine it with the federated learning platform for aggregation and update. It is only necessary to inform that the federated learning task is over.

[0230] Step 606: After the federated learning task is completed, the edge application sends a request message to the edge computing platform to delete the terminal bandwidth customization and restore the original settings of the terminal.

[0231] In the diagram, LOOP represents the iterative loop process, and OPT represents the optional operation.

[0232] Considering that the execution of federated learning tasks involves a large amount of data transmission, improving communication quality and optimizing data transmission are key to the efficient implementation of federated learning tasks. Furthermore, the flexible integration and allocation of distributed computing resources are also issues that federated learning tasks need to address. Related solutions have not considered fully utilizing the characteristics and advantages of edge networks to solve these problems in federated learning. Therefore, the method provided in this invention proposes a federated learning method based on edge networks. This method conducts federated learning tasks based on the "cloud-edge node-terminal" model, integrates distributed computing resources, and fully utilizes the computing and data transmission capabilities of edge networks to improve the communication quality of terminals during the federated learning process and optimize data transmission, thereby optimizing federated learning based on edge computing networks.

[0233] Figure 7 This is a schematic diagram of the structure of a federated learning device provided in an embodiment of the present invention; as shown below. Figure 7 As shown, the device, applied to an edge node, includes:

[0234] The first sub-communication module is used to receive federated learning tasks sent by the federated learning platform and send the federated learning tasks to the terminal.

[0235] Receive model information sent by the terminal through the edge network.

[0236] In some embodiments, the edge node includes: an edge application, an edge computing platform; the federated learning task includes: a time limit for executing the task;

[0237] The edge application includes: a first sub-processing module and a first sub-communication module;

[0238] The first sub-processing module is used to determine the first bandwidth based on the duration limit of the task and the amount of data to be transmitted required to execute the task;

[0239] Obtain the second bandwidth based on the difference between the first bandwidth and the second bandwidth; wherein the first bandwidth represents the bandwidth required to perform the federated learning task; and the second bandwidth represents the actual bandwidth possessed by the terminal.

[0240] The first sub-communication module is used to determine that the difference meets a preset condition and send the bandwidth customization request to the edge computing platform; the bandwidth customization request is used to request the allocation of bandwidth capacity required for the terminal to perform federated learning tasks.

[0241] The edge computing platform includes: a second sub-processing module and a second sub-communication module;

[0242] The second sub-communication module is used to receive bandwidth customization requests;

[0243] The second sub-processing module is used to adjust the uplink and downlink bandwidth of the terminal according to the bandwidth customization request;

[0244] The bandwidth customization request includes at least one of the following:

[0245] The terminal's identity information, the terminal's IP address information, the bandwidth parameters required to execute the federated learning task, and the information of the federated learning task.

[0246] In some embodiments, the first sub-communication module of the edge application is used to determine the end of the federated learning task and send a bandwidth recovery request to the edge computing platform; the bandwidth recovery request is used to restore the terminal's bandwidth to its original state.

[0247] The second sub-processing module of the edge computing platform is used to execute the bandwidth recovery request and send recovery feedback.

[0248] In some embodiments, the first sub-communication module is configured to receive fourth model information sent by at least one terminal; the fourth model information includes: parameters of a model obtained by the terminal after training;

[0249] The first sub-processing module is used to perform aggregation and updating based on at least one fourth model information to obtain fifth model information; the fifth model information includes: parameters of the aggregated and updated model;

[0250] The first sub-communication module is further configured to send the fifth model information to at least one terminal; after receiving the fifth model information, each terminal updates and trains its local model to obtain the sixth model information;

[0251] The first sub-communication module is further configured to receive the sixth model information sent by at least one terminal again. The first sub-processing module is further configured to perform aggregation and update based on at least one sixth model information to obtain new model information, and send the obtained new model information to at least one terminal for the terminal to update and train again. This process of updating and training is repeated until the first model information that meets the convergence requirements is obtained. The first model information is used to send to the terminal and / or the federated learning platform.

[0252] In some embodiments, corresponding to the federated learning task being associated with multiple edge applications, the first sub-communication module is further configured to receive second model information; the second model information includes: parameters of the model obtained by the federated learning platform after aggregating and updating the first model information of multiple edge applications;

[0253] The first sub-processing module is used to update and train according to the second model information to obtain the third model information and send it to the federated learning platform. The third model information is received by the federated learning platform and then aggregated and updated again to obtain new model information and sent to each edge application. This process of updating and training is repeated until the target model information that meets the convergence requirements is obtained.

[0254] It should be noted that the federated learning apparatus provided in the above embodiments is only illustrated by the division of the above program modules when implementing the corresponding federated learning method. In practical applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the edge node can be divided into different program modules to complete all or part of the processing described above. In addition, the apparatus and the corresponding method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.

[0255] Figure 8 This is a schematic diagram of the structure of a federated learning device provided in an embodiment of the present invention; as shown below. Figure 8 As shown, the device, applied to a terminal, includes:

[0256] The second communication module is used to receive federated learning tasks sent by edge applications;

[0257] The second processing module is used to execute the federated learning task and obtain the fourth model information after model training; the fourth model information includes: the parameters of the model obtained by the terminal after training;

[0258] The second communication module is also used to send the fourth model information to the edge application.

[0259] In some embodiments, the federated learning task includes at least one of the following: a model to be trained, data features and labels required for training, and training time information;

[0260] The second processing module is used to collect the required data based on the data features and labels required for training in the federated learning task;

[0261] According to the training time information of the federated learning task, model training is performed based on the collected data and labels, and the model to be trained, to obtain the fourth model information after training.

[0262] In some embodiments, the fourth model information is used to be received by the edge application and aggregated and updated according to the fourth model information;

[0263] The second communication module is further configured to receive fifth model information sent by the edge application; the fifth model information includes: parameters of a model obtained by the edge application through aggregation and updating based on the fourth model information received from at least one terminal;

[0264] The second processing module is used to update and train the local model of the terminal according to the fifth model information to obtain the sixth model information; the sixth model information is received by the edge application and then aggregated and updated again to obtain new model information and sent to each terminal, and so on, updating and training repeatedly until the first model information that meets the convergence requirements is obtained.

[0265] It should be noted that the federated learning device provided in the above embodiments is only illustrated by the division of the above program modules when implementing the corresponding federated learning method. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the terminal can be divided into different program modules to complete all or part of the processing described above. In addition, the device and the corresponding method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0266] Figure 9 This is a schematic diagram of the structure of a federated learning device provided in an embodiment of the present invention; as shown below. Figure 9 As shown, the device, applied to a federated learning platform, includes:

[0267] The third processing module is used to determine the federated learning task;

[0268] The third communication module is used to send the federated learning task to the edge application; the federated learning task is distributed to the terminal by the edge application;

[0269] The third communication module is further configured to receive first model information sent by at least one edge application, and determine target model information based on the first model information; the first model information includes: model parameters obtained by training of the edge application and the terminal associated with the edge application.

[0270] In some embodiments, the third processing module is configured to perform aggregation and updating based on at least one first model information to obtain second model information; the second model information includes: parameters of the aggregated and updated model;

[0271] The third communication module is further configured to send the second model information to each of the at least one edge application; the second model information is received by the edge application and updated and trained according to the second model information to obtain the third model information;

[0272] The third communication module is also used to receive third model information sent by at least one edge application again. The third communication module is also used to perform aggregation update based on at least one third model information to obtain new model information and send it to at least one edge application, which then updates and trains it again. This process is repeated until the target model information that meets the convergence requirements is obtained.

[0273] It should be noted that the federated learning apparatus provided in the above embodiments is only illustrated by the division of the above program modules when implementing the corresponding federated learning methods. In practical applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the federated learning platform can be divided into different program modules to complete all or part of the processing described above. In addition, the apparatus and the corresponding method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.

[0274] Figure 10 A schematic diagram of a federated learning device provided as an embodiment of the present invention is shown below. Figure 10 As shown, the federated learning device 100 includes: a processor 1001 and a memory 1002 for storing computer programs capable of running on the processor;

[0275] The federated learning device is applied to an edge node. When the processor 1001 runs the computer program, it performs the following actions: receiving federated learning tasks sent by the federated learning platform and sending the federated learning tasks to the terminal; receiving model information sent by the terminal through the edge network. Specifically, the federated learning device can also perform actions such as... Figure 1 The method shown is the same as Figure 1 The federated learning method embodiments shown belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0276] The federated learning device is applied to a terminal. When the processor 1001 runs the computer program, it performs the following actions: receiving a federated learning task sent by an edge application; executing the federated learning task to obtain fourth model information after model training; the fourth model information includes parameters of the model obtained by the terminal after training; and sending the fourth model information to the edge application. Specifically, the federated learning device can also perform actions such as... Figure 2 The method shown is the same as Figure 2The federated learning method embodiments shown belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0277] The federated learning device is applied to a federated learning platform. When the processor 1001 runs the computer program, it performs the following actions: determining a federated learning task and sending the federated learning task to an edge application; the federated learning task being distributed by the edge application to a terminal; receiving first model information sent by at least one edge application and determining target model information based on the first model information; the first model information includes: model parameters obtained by training between the edge application and the terminal associated with the edge application. Specifically, the federated learning device can also perform actions such as... Figure 3 The method shown is the same as Figure 3 The federated learning method embodiments shown belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0278] In practical applications, the federated learning device 100 may further include at least one network interface 1003. The various components in the federated learning device 100 are coupled together via a bus system 1004. It is understood that the bus system 1004 is used to implement communication between these components. In addition to a data bus, the bus system 1004 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 10 All buses are labeled as bus system 1004. The number of processors 1001 can be at least one. Network interface 1003 is used for wired or wireless communication between the federated learning device 100 and other devices.

[0279] The memory 1002 in this embodiment of the invention is used to store various types of data to support the operation of the federated learning device 100.

[0280] The methods disclosed in the above embodiments of the present invention can be applied to or implemented by processor 1001. Processor 1001 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 1001 or by instructions in the form of software. The processor 1001 may be a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Processor 1001 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of the present invention can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in memory 1002. Processor 1001 reads the information in memory 1002 and completes the steps of the aforementioned method in conjunction with its hardware.

[0281] In an exemplary embodiment, the federated learning device 100 may be implemented by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors, or other electronic components to perform the aforementioned method.

[0282] This invention also provides a computer-readable storage medium having a computer program stored thereon;

[0283] The computer-readable storage medium is applied to the edge node. When the computer program is run by the processor, it performs the following actions: receiving federated learning tasks sent by the federated learning platform and sending the federated learning tasks to the terminal; receiving model information sent by the terminal through the edge network. Specifically, the computer program can also perform actions such as... Figure 1 The method shown is the same as Figure 1 The federated learning method embodiments shown belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0284] The computer-readable storage medium is applied to the terminal. When the computer program is executed by the processor, it performs the following: receiving a federated learning task sent by an edge application; executing the federated learning task to obtain fourth model information after model training; the fourth model information includes parameters of the model trained by the terminal; and sending the fourth model information to the edge application. Specifically, the computer program can also perform the following: Figure 2 The method shown is the same as Figure 2 The federated learning method embodiments shown belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0285] The computer-readable storage medium is used in a federated learning platform. When the computer program is executed by a processor, it performs the following: determining a federated learning task and sending the federated learning task to an edge application; the federated learning task being distributed by the edge application to a terminal; receiving first model information sent by at least one edge application and determining target model information based on the first model information; the first model information includes: model parameters obtained by training between the edge application and the terminal associated with the edge application. Specifically, the computer program can also perform the following: Figure 3 The method shown is the same as Figure 3 The federated learning method embodiments shown belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0286] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.

[0287] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.

[0288] In addition, in the various embodiments of the present invention, each functional unit can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.

[0289] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0290] Alternatively, if the integrated units of this invention are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this invention, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.

[0291] It should be noted that terms such as "first" and "second" are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0292] Furthermore, the technical solutions described in the embodiments of this application can be combined arbitrarily without conflict.

[0293] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims

1. A federated learning method, characterized in that, Applied to edge nodes; the method includes: Receive federated learning tasks sent by the federated learning platform and send the federated learning tasks to the terminal; Receive model information sent by the terminal through the edge network; The edge nodes include: edge applications and edge computing platforms; the federated learning task includes: a time limit for task execution; The edge application determines the first bandwidth based on the duration limit of the task and the amount of data to be transmitted required to execute the task; Obtain the second bandwidth based on the difference between the first bandwidth and the second bandwidth; wherein the first bandwidth represents the bandwidth required to perform the federated learning task; and the second bandwidth represents the bandwidth actually possessed by the terminal. Once the difference is determined to meet a preset condition, a bandwidth customization request is sent to the edge computing platform; the bandwidth customization request is used to request the bandwidth capacity required for the terminal to perform the federated learning task. The edge computing platform adjusts the uplink and downlink bandwidth of the terminal according to the bandwidth customization request.

2. The method according to claim 1, characterized in that, The bandwidth customization request includes at least one of the following: The terminal's identity information, the terminal's Internet Protocol (IP) address information, the bandwidth parameters required to execute the federated learning task, and the information of the federated learning task.

3. The method according to claim 2, characterized in that, The method further includes: The edge application determines that the federated learning task has ended and sends a bandwidth recovery request to the edge computing platform that made the bandwidth customization request; the bandwidth recovery request is used to restore the terminal's bandwidth to its original state. The edge computing platform executes the bandwidth recovery request and sends recovery feedback.

4. The method according to claim 1, characterized in that, The receiving of model information sent by the terminal through the edge network includes: Receive fourth model information sent by at least one terminal; the fourth model information includes: parameters of the model obtained by the terminal after training; The method further includes: The fifth model information is obtained by aggregating and updating based on at least one fourth model information; the fifth model information includes: the parameters of the aggregated and updated model. The fifth model information is sent to at least one terminal; after being received by each terminal, the fifth model information is used to update and train the local model of the terminal to obtain the sixth model information. The system receives the sixth model information from at least one terminal again, and performs aggregation and update based on the at least one sixth model information to obtain new model information. The new model information is then sent to at least one terminal, which updates and trains the model again. This process is repeated until the first model information that meets the convergence requirements is obtained. The first model information is used to send to the terminal and / or the federated learning platform.

5. The method according to claim 4, characterized in that, The method further includes: Corresponding to the federated learning task being related to multiple edge applications, second model information is received; the second model information includes: the parameters of the model obtained by the federated learning platform after aggregating and updating the first model information of multiple edge applications; The second model information is updated and trained to obtain the third model information, which is then sent to the federated learning platform. The third model information is received by the federated learning platform and then aggregated and updated again to obtain new model information, which is then sent to each edge application. This process of updating and training is repeated until the target model information that meets the convergence requirements is obtained.

6. A federated learning method, characterized in that, Applied to a terminal; the method includes: Receive a federated learning task sent by an edge application, wherein the federated learning task includes a duration limit for executing the task, and the duration limit is used by the edge application to determine the first bandwidth required to execute the federated learning task based on the duration limit for executing the task and the amount of data to be transmitted required to execute the task; The first bandwidth represents the bandwidth required to execute the federated learning task. The edge application is used to obtain the second bandwidth actually possessed by the terminal. Based on the difference between the first bandwidth and the second bandwidth, when the difference meets a preset condition, a bandwidth customization request is sent to the edge computing platform in the edge node. The bandwidth customization request is used to request the allocation of the bandwidth capability required to execute the federated learning task for the terminal. The edge computing platform is used to adjust the uplink and downlink bandwidth of the terminal according to the bandwidth customization request; Send the second bandwidth actually possessed by the terminal to the edge application; Receive bandwidth control information sent by the edge computing platform; Adjust its own bandwidth according to the bandwidth control information; The federated learning task is executed to obtain fourth model information after model training; the fourth model information includes: parameters of the model obtained by the terminal after training; The fourth model information is sent to the edge application.

7. The method according to claim 6, characterized in that, The federated learning task includes at least one of the following: the model to be trained, the data features and labels required for training, and training time information; The execution of the federated learning task includes: Collect the required data based on the data features and labels required for training in the federated learning task; According to the training time information of the federated learning task, model training is performed based on the collected data and labels, and the model to be trained, to obtain the fourth model information after training.

8. The method according to claim 6, characterized in that, The fourth model information is used to be received by the edge application and aggregated and updated according to the fourth model information; The method further includes: The edge application receives fifth model information; the fifth model information includes parameters of a model obtained by the edge application through aggregation and updating based on the fourth model information received from at least one terminal. The terminal's local model is updated and trained based on the fifth model information to obtain the sixth model information. The sixth model information is received by the edge application and then aggregated and updated again to obtain new model information, which is then sent to each terminal. This process of updating and training is repeated until the first model information that meets the convergence requirements is obtained.

9. A federated learning method, characterized in that, Applied to a federated learning platform, the method includes: A federated learning task is defined, wherein the federated learning task includes a duration limit for executing the task, the duration limit being used by the edge application to determine a first bandwidth required to execute the federated learning task based on the duration limit for executing the task and the amount of data to be transmitted required to execute the task; The first bandwidth represents the bandwidth required to execute the federated learning task. The edge application is used to obtain the second bandwidth actually available to the terminal. Based on the difference between the first bandwidth and the second bandwidth, when the difference meets a preset condition, a bandwidth customization request is sent to the edge computing platform in the edge node. The bandwidth customization request is used to request the allocation of the bandwidth capability required to execute the federated learning task to the terminal. The edge computing platform is used to adjust the uplink and downlink bandwidth of the terminal according to the bandwidth customization request; send the federated learning task to the edge application; and the federated learning task is distributed to the terminal by the edge application. Receive first model information sent by at least one edge application, and determine target model information based on the first model information; the first model information includes: model parameters obtained by training of the edge application and the terminal associated with the edge application.

10. The method according to claim 9, characterized in that, Determining the target model information based on the first model information includes: The second model information is obtained by aggregating and updating based on at least one first model information; the second model information includes the parameters of the aggregated and updated model. The second model information is sent to each of the at least one edge application; the second model information is received by the edge application and updated and trained according to the second model information to obtain the third model information; The system receives third model information from at least one edge application again, and performs aggregation and update based on the at least one third model information to obtain new model information, which is then sent to at least one edge application for further updating and training. This process is repeated until the target model information that meets the convergence requirements is obtained.

11. A federated learning device, characterized in that, Applied to edge nodes, the device includes: The first sub-communication module is used to receive federated learning tasks sent by the federated learning platform and send the federated learning tasks to the terminal. Receive model information sent by the terminal through the edge network; The edge nodes include: edge applications and edge computing platforms; the federated learning task includes: a time limit for task execution; The edge application determines the first bandwidth based on the duration limit of the task and the amount of data to be transmitted required to execute the task; Obtain the second bandwidth based on the difference between the first bandwidth and the second bandwidth; wherein the first bandwidth represents the bandwidth required to perform the federated learning task; and the second bandwidth represents the actual bandwidth possessed by the terminal. Once the difference is determined to meet a preset condition, a bandwidth customization request is sent to the edge computing platform; the bandwidth customization request is used to request the bandwidth capacity required for the terminal to perform the federated learning task. The edge computing platform adjusts the uplink and downlink bandwidth of the terminal according to the bandwidth customization request.

12. A federated learning device, characterized in that, Applied to a terminal, the device includes: The second communication module is used to receive federated learning tasks sent by the edge application, wherein the federated learning task includes a duration limit for executing the task; the duration limit is used by the edge application to determine the first bandwidth required to execute the federated learning task based on the duration limit for executing the task and the amount of data to be transmitted required to execute the task. The first bandwidth represents the bandwidth required to execute the federated learning task. The edge application is used to obtain the second bandwidth actually possessed by the terminal. Based on the difference between the first bandwidth and the second bandwidth, when the difference meets a preset condition, a bandwidth customization request is sent to the edge computing platform in the edge node. The bandwidth customization request is used to request the allocation of the bandwidth capability required to execute the federated learning task for the terminal. The edge computing platform is used to adjust the uplink and downlink bandwidth of the terminal according to the bandwidth customization request; Send the second bandwidth actually possessed by the terminal to the edge application, and receive bandwidth adjustment information sent by the edge computing platform; The second processing module is used to adjust its own bandwidth according to the bandwidth control information and execute the federated learning task to obtain the fourth model information after model training; the fourth model information includes: the parameters of the model obtained by the terminal after training; The second communication module is also used to send the fourth model information to the edge application.

13. A federated learning device, characterized in that, The device, used in a federated learning platform, includes: The third processing module is used to determine the federated learning task, wherein the federated learning task includes a duration limit for executing the task, and the duration limit is used by the edge application to determine the first bandwidth required to execute the federated learning task based on the duration limit for executing the task and the amount of data to be transmitted required to execute the task. The first bandwidth represents the bandwidth required to execute the federated learning task. The edge application is used to obtain the second bandwidth actually available to the terminal. Based on the difference between the first bandwidth and the second bandwidth, when the difference meets a preset condition, a bandwidth customization request is sent to the edge computing platform in the edge node. The bandwidth customization request is used to request the allocation of the bandwidth capability required to execute the federated learning task to the terminal. The edge computing platform is used to adjust the uplink and downlink bandwidth of the terminal according to the bandwidth customization request; The third communication module is used to send the federated learning task to the edge application; the federated learning task is distributed to the terminal by the edge application; The third communication module is further configured to receive first model information sent by at least one edge application, and determine target model information based on the first model information; the first model information includes: model parameters obtained by training of the edge application and the terminal associated with the edge application.

14. A federated learning device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the method according to any one of claims 1 to 5; or... When the processor executes the program, it implements the steps of the method according to any one of claims 6 to 8; or... When the processor executes the program, it implements the steps of the method of claim 9 or 10.

15. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 5; or... When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 6 to 8; or... When the computer program is executed by a processor, it implements the steps of the method of claim 9 or 10.