Task processing method and apparatus, related device, storage medium, and computer program product

By selecting and managing base stations, a federated learning process in the wireless access network scenario was realized, solving the problem of the lack of federated learning solutions in the wireless access network and improving the efficiency and security of federated learning.

CN122431807APending Publication Date: 2026-07-21CHINA MOBILE COMM LTD RES INST +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CHINA MOBILE COMM LTD RES INST
Filing Date
2025-01-20
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

In wireless access network scenarios, there is currently no federated learning solution, making it impossible to implement a federated learning process between base stations and user equipment.

Method used

The base station acts as a server, selecting a terminal for each iteration based on whether the terminal exits the federated learning task, and jointly executing the federated learning task with the selected terminal. It determines and manages the terminal executing the task by receiving and sending information.

Benefits of technology

This paper implements a federated learning process between network devices and related terminals in wireless access network scenarios, rationally selects terminals and jointly executes tasks with them, thereby improving the efficiency and security of federated learning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122431807A_ABST
    Figure CN122431807A_ABST
Patent Text Reader

Abstract

The application discloses a task processing method and device, related equipment, a storage medium and a computer program product. The method comprises the following steps: a network device receives first information sent by a candidate terminal, wherein the first information represents that the candidate terminal can execute a first task, and the first task is used for training a first model; the terminal executing the first task is determined by using the first information; the first task is executed by using the terminal; wherein, in the execution process of the first task, the terminal participating in the next iteration is determined by using second information, and the next iteration is performed by using the determined terminal, and the second information represents one or more terminals in the terminal that quit executing the first task.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of wireless communication technology, and in particular to a task processing method, apparatus, related equipment, storage medium, and computer program product. Background Technology

[0002] In a federated learning architecture, the model training process includes stages such as: the server distributing the global model, the client training its local model, uploading gradients or parameters, and aggregating the global model. During this process, since each client only interacts with the server for model parameters or gradients without sending local data, the risk of leakage of client-side privacy data is effectively reduced. Furthermore, federated learning allows clients to train their local models in parallel, fully utilizing the distributed computing resources within the architecture.

[0003] However, there is currently no federated learning solution in the context of wireless access networks. Summary of the Invention

[0004] To address the related technical problems, embodiments of this application provide a task processing method, apparatus, related equipment, storage medium, and computer program product.

[0005] The technical solution of this application embodiment is implemented as follows:

[0006] This application provides a task processing method applied to a network device, including:

[0007] Receive first information sent by a candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model;

[0008] Using the first information, determine the terminal that performs the first task;

[0009] Using the terminal, the first task is executed; wherein, during the execution of the first task, the terminals participating in the next iteration are determined using second information, and the determined terminals are used to perform the next iteration, the second information indicating one or more terminals that have exited the execution of the first task.

[0010] In the above scheme, the first information includes one or more of the following:

[0011] The first parameter, wherein the first parameter characterizes the type of the first task;

[0012] The second parameter characterizes the computing power of the candidate terminal;

[0013] The third parameter represents the battery level of the candidate terminal;

[0014] The fourth parameter characterizes the data distribution of the local dataset of the candidate terminal.

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

[0016] Receive third information sent by one or more terminals, and use the received third information to generate the second information, wherein the third information is used to request to exit the execution of the first task;

[0017] or,

[0018] The second piece of information is generated proactively.

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

[0020] Send fourth information to the candidate terminal, the fourth information being used to determine whether the candidate terminal is capable of performing the first task, the fourth information including one or more of the following:

[0021] The first parameter, wherein the first parameter characterizes the type of the first task;

[0022] The fifth parameter represents the size of the first model;

[0023] The sixth parameter represents the number of iterations associated with the first task;

[0024] The seventh parameter represents the size of the local dataset required to perform the first task;

[0025] The eighth parameter represents the computing power required to perform the first task;

[0026] The ninth parameter represents the incentive for performing the first task.

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

[0028] The system receives a fifth message sent by the first terminal, the fifth message being used to request the execution of the first task, and the fifth message including one or more of the following:

[0029] The first parameter, wherein the first parameter characterizes the type of the first task;

[0030] The sixth parameter represents the number of iterations associated with the first task;

[0031] The tenth parameter, which characterizes the type of the first model;

[0032] The eleventh parameter, wherein the eleventh parameter characterizes the performance requirements of the first model;

[0033] The twelfth parameter includes the initial parameters of the first model;

[0034] Using the fifth piece of information, determine whether to execute the first task;

[0035] If it is determined that the first task will be performed, a fourth message is sent to the candidate terminal, the fourth message being used to determine whether the candidate terminal is capable of performing the first task.

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

[0037] A sixth message is sent to the first terminal, the sixth message indicating whether the network device has performed the first task.

[0038] In the above scheme, the fifth information includes the eleventh parameter, and the step of using the terminal to execute the first task includes:

[0039] During the execution of the first task, the performance of the trained first model is verified based on the eleventh parameter to obtain the seventh information, which represents the verification result of the trained first model.

[0040] In the above scheme, the step of verifying the performance of the trained first model based on the eleventh parameter to obtain the seventh information includes:

[0041] Send an eighth message to the first terminal, the eighth message being used to request verification of the performance of the trained first model;

[0042] Receive the seventh message sent by the first terminal.

[0043] In the above scheme, the step of verifying the performance of the trained first model based on the eleventh parameter to obtain the seventh information includes:

[0044] Based on the first dataset associated with the first task and the eleventh parameter, the performance of the trained first model is verified to obtain the seventh information.

[0045] This application also provides a task processing method applied to a candidate terminal, including:

[0046] Send first information to the network device, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model, the first information being used to determine the terminal performing the first task; wherein, during the execution of the first task, the terminal participating in the next iteration is determined based on second information, the second information indicating that one or more terminals among the terminals have exited the execution of the first task.

[0047] In the above scheme, the first information includes one or more of the following:

[0048] The first parameter, wherein the first parameter characterizes the type of the first task;

[0049] The second parameter characterizes the computing power of the candidate terminal;

[0050] The third parameter represents the battery level of the candidate terminal;

[0051] The fourth parameter characterizes the data distribution of the local dataset of the candidate terminal.

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

[0053] The network device sends fourth information, which is used to determine whether the candidate terminal can perform the first task. The fourth information includes one or more of the following:

[0054] The first parameter, wherein the first parameter characterizes the type of the first task;

[0055] The fifth parameter represents the size of the first model;

[0056] The sixth parameter represents the number of iterations associated with the first task;

[0057] The seventh parameter represents the size of the local dataset required to perform the first task;

[0058] The eighth parameter represents the computing power required to perform the first task;

[0059] The ninth parameter represents the incentive for performing the first task.

[0060] This application embodiment also provides a task processing device, disposed in a network device, including:

[0061] The first receiving unit is configured to receive first information sent by the candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model.

[0062] A determining unit is configured to use the first information to determine the terminal that performs the first task;

[0063] An execution unit is configured to execute the first task using the terminal; wherein, during the execution of the first task, the terminal participating in the next iteration is determined using second information, and the determined terminal is used to perform the next iteration, the second information indicating one or more terminals that have exited the execution of the first task.

[0064] This application embodiment also provides a task processing device, disposed in a candidate terminal, including:

[0065] A sending unit is configured to send first information to a network device, the first information indicating that the candidate terminal is capable of performing a first task, the first task being used to train a first model, and the first information being used to determine the terminal performing the first task; wherein, during the execution of the first task, the terminal participating in the next iteration is determined based on second information, the second information indicating that one or more terminals among the terminals have exited the execution of the first task.

[0066] This application also provides a network device, including: a first processor and a first communication interface; wherein,

[0067] The first communication interface is used to receive first information sent by the candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model;

[0068] The first processor is configured to use the first information to determine the terminal executing the first task; and to use the terminal to execute the first task; wherein, during the execution of the first task, the processor uses second information to determine the terminal participating in the next iteration, and uses the determined terminal to perform the next iteration, the second information indicating one or more terminals that have exited the execution of the first task.

[0069] This application embodiment also provides a candidate terminal, including: a second processor and a second communication interface; wherein,

[0070] The second communication interface is used to send first information to the network device. The first information indicates that the candidate terminal can perform a first task. The first task is used to train a first model. The first information is used to determine the terminal that performs the first task. During the execution of the first task, the terminal participating in the next iteration is determined based on second information. The second information indicates that one or more terminals among the terminals have exited the execution of the first task.

[0071] This application also provides a network device, including: a first processor and a first memory for storing a computer program capable of running on the processor.

[0072] Wherein, when the first processor is used to run the computer program, it executes the steps of any of the methods described above on the network device side.

[0073] This application also provides a candidate terminal, including: a second processor and a second memory for storing a computer program capable of running on the processor.

[0074] Wherein, when the second processor is running the computer program, it executes the steps of any of the above-mentioned methods on the candidate terminal side.

[0075] This application also provides a storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of any of the methods described above on the network device side, or implements the steps of any of the methods described above on the candidate terminal side.

[0076] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the methods described above on the network device side, or implements the steps of any of the methods described above on the candidate terminal side.

[0077] The task processing method, apparatus, related devices, storage medium, and computer program products provided in this application embodiment include: a network device receiving first information sent by a candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model; using the first information, determining a terminal to perform the first task; and using the terminal to perform the first task; wherein, during the execution of the first task, using second information to determine a terminal to participate in the next iteration, and using the determined terminal to perform the next iteration, the second information indicating that one or more terminals among the terminals have exited the execution of the first task. The technical solution provided in this application allows the network device, acting as a server, to reasonably select terminals for each iteration based on information about terminals that cannot continue to participate in the federated learning task, and to jointly execute the federated learning task with the selected terminals. This achieves a federated learning process between the network device and related terminals in a wireless access network scenario. Attached Figure Description

[0078] Figure 1 This is a schematic diagram of the structure of federated learning in related technologies;

[0079] Figure 2 This is a flowchart illustrating the first task processing method according to an embodiment of this application;

[0080] Figure 3This is a flowchart illustrating the second task processing method according to an embodiment of this application;

[0081] Figure 4 This application provides a flowchart illustrating a method for performing federated learning tasks.

[0082] Figure 5 This is a schematic diagram of the structure of a first type of task processing device according to an embodiment of this application;

[0083] Figure 6 This is a schematic diagram of the structure of a second type of task processing device according to an embodiment of this application;

[0084] Figure 7 This is a schematic diagram of the network device according to an embodiment of this application;

[0085] Figure 8 This is a schematic diagram of the structure of a candidate terminal in an embodiment of this application;

[0086] Figure 9 This is a schematic diagram of the task processing system structure according to an embodiment of this application. Detailed Implementation

[0087] The present application will now be described in further detail with reference to the accompanying drawings and embodiments.

[0088] Related federated learning schemes include processes such as data collection, model training, and model inference; among them, such as Figure 1 As shown, the model training process includes the following steps:

[0089] Step 1: Server distributes global model: The server distributes the global model to the selected clients participating in this round of federated learning (such as client 1, client 2, and client N, where N is an integer greater than or equal to 3). The first global model distributed can be randomly generated by the server, and the subsequent global models distributed are obtained by aggregating the local models uploaded by the clients.

[0090] Step 2: The client trains the local model: Each client receives the global model and trains the global model based on the local dataset.

[0091] Step 3: Uploading gradients or parameters and aggregating the global model: After the client completes local model training, it sends the local model parameters or gradients to the server, so that the server can aggregate the received model parameters or gradients (such as by weighted averaging) and update the global model based on the aggregated model parameters or gradients.

[0092] During the above process, steps 1 to 3 will be repeated until the global model converges or the performance of the global model meets the requirements.

[0093] However, in the context of wireless access networks, there is currently no federated learning scheme between base stations (such as gNBs) and UEs.

[0094] Based on this, in various embodiments of this application, the base station acts as a server, selects a terminal for each iteration based on the terminal's exit from the federated learning task, and works with the selected terminal to execute the federated learning task.

[0095] This application provides a task processing method, such as... Figure 2 As shown, applied to network devices, the method includes:

[0096] Step 201: Receive first information sent by the candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model;

[0097] Step 202: Using the first information, determine the terminal that performs the first task;

[0098] Step 203: Execute the first task using the terminal; wherein, during the execution of the first task, the terminal participating in the next iteration is determined using second information, and the determined terminal is used to perform the next iteration, the second information indicating one or more terminals that have exited the execution of the first task.

[0099] In practical applications, the network device can be understood as a base station (such as a gNB) in a wireless access network, possessing at least artificial intelligence (AI) capabilities associated with federated learning, such as generating an initial global model or generating a validation dataset. AI capabilities can be implemented by connecting the network device to a new network element, or by integrating AI functionality into the network device; this application embodiment does not limit this. Furthermore, the terminal can be called a user equipment (UE), or a user, etc. Correspondingly, the candidate terminal can be called a candidate UE, or a candidate user, etc. This application embodiment does not limit this, as long as its functionality is achieved.

[0100] In practical applications, before step 201, the network device can obtain the capabilities of all terminals in the network regarding federated learning (such as whether they support federated learning or whether they can act as clients) through capability query. Using the obtained capabilities, it determines multiple candidate terminals (also called alternative terminals) among all terminals that have federated learning capabilities, and initiates the execution of the first task to the determined candidate terminals. The candidate terminals can be understood as terminals pre-selected by the network device. That is, the network device can actively trigger the execution of the first task, which can be called a federated learning task. This application embodiment does not limit this.

[0101] Based on this, in one embodiment, the method may further include:

[0102] Send fourth information to the candidate terminal, the fourth information being used to determine whether the candidate terminal is capable of performing the first task, the fourth information including one or more of the following (or at least one of them):

[0103] The first parameter, wherein the first parameter characterizes the type of the first task;

[0104] The fifth parameter represents the size of the first model;

[0105] The sixth parameter represents the number of iterations associated with the first task;

[0106] The seventh parameter represents the size of the local dataset required to perform the first task;

[0107] The eighth parameter represents the computing power required to perform the first task;

[0108] The ninth parameter represents the incentive for performing the first task.

[0109] The fourth information can be understood as notifying multiple candidate terminals of the information of the first task, so that each candidate terminal can determine whether it can execute the first task.

[0110] In addition, the first parameter can be called the federated learning task indicator, which reflects the application scenario of the first model trained for the first task, such as image classification, beam failure prediction, etc.; the fifth parameter can be called the model parameter size, which reflects the size of the first model, such as the number of layers in the neural network and the number of neurons in each layer; the sixth parameter can be called the model iteration count, which reflects the number of iterations of the first model between the network device and the terminal; the seventh parameter can be called the local dataset size requirement of the terminal, which reflects the required number of samples in the local dataset of the candidate terminals participating in the first task; the eighth parameter can be called the terminal computing power requirement, which reflects the computing power (e.g., floating-point operations per second (FLOPS)) requirement of the candidate terminals participating in the first task; and the ninth parameter can be called the task incentive, which reflects the incentive method for the candidate terminals participating in the first task, such as better network service quality assurance, etc.

[0111] It should be noted that the fifth parameter can also reflect the complexity of the first model to a certain extent. For example, the larger the fifth parameter is, the higher the complexity of the first model, and correspondingly, the higher the computational power requirement represented by the eighth parameter.

[0112] In practical applications, the network device can send the fourth information to multiple candidate terminals via broadcast or multicast. Of course, the network device can also send the fourth information to each candidate terminal sequentially via unicast. This application embodiment does not limit the method of sending the fourth information, as long as its function is achieved.

[0113] In practical applications, after sending the fourth information, multiple candidate terminals can determine whether they are capable of executing the first task based on the fourth information. For example, for each candidate terminal, if the fourth information includes the first parameter, the candidate terminal can determine whether its needs are met based on the type represented by the first parameter (e.g., if the first task is application-level image recognition, but the candidate terminal is not running an image recognition application, it is considered not to meet its needs). If the fourth information includes the fifth parameter, the candidate terminal can determine whether its local resources (e.g., storage and computing resources) can support storing and training the first model based on the size represented by the fifth parameter. If the fourth information includes the sixth parameter, the candidate terminal can determine whether its local resources can support training the model for that number of iterations based on the number of iterations represented by the sixth parameter. If the fourth information includes the seventh parameter, the candidate terminal can determine whether its local dataset meets the requirements based on the dataset size represented by the seventh parameter. If the fourth information includes the eighth parameter, the candidate terminal can determine whether its locally available computing power meets the requirements based on the computing power represented by the eighth parameter. If the fourth information includes the ninth parameter, the candidate terminal can determine whether the incentive is acceptable based on the incentive represented by the ninth parameter.

[0114] In practical applications, if all parameter requirements associated with the fourth information are met, the candidate terminal determines that it is capable of performing the task. Then, one or more candidate terminals that are capable of performing the first task can send the first information to the network device.

[0115] In one embodiment, the first information may include one or more of the following (or at least one of them):

[0116] The first parameter, wherein the first parameter characterizes the type of the first task;

[0117] The second parameter characterizes the computing power of the candidate terminal;

[0118] The third parameter represents the battery level of the candidate terminal;

[0119] The fourth parameter characterizes the data distribution of the local dataset of the candidate terminal.

[0120] The first information can reflect one or more candidate terminals capable of performing the first task, and can also provide auxiliary information for the network device.

[0121] Here, the second parameter can be called available computing power, which reflects the available computing power of the candidate terminal; the third parameter can be called remaining power, which reflects the available power of the candidate terminal; and the fourth parameter can be called sample data distribution, which reflects the relationship between the local datasets of the candidate terminals, such as whether they are independent and identically distributed or not independent and identically distributed.

[0122] In practical applications, the execution of the first task can also be triggered by the terminal, that is, the terminal requests the network device to execute the first task.

[0123] Based on this, in one embodiment, the method may further include:

[0124] The system receives a fifth message sent by the first terminal, the fifth message being used to request the execution of the first task, the fifth message including one or more of the following (or at least one):

[0125] The first parameter, wherein the first parameter characterizes the type of the first task;

[0126] The sixth parameter represents the number of iterations associated with the first task;

[0127] The tenth parameter, which characterizes the type of the first model;

[0128] The eleventh parameter, wherein the eleventh parameter characterizes the performance requirements of the first model;

[0129] The twelfth parameter includes the initial parameters of the first model;

[0130] Using the fifth piece of information, determine whether to execute the first task;

[0131] If it is determined that the first task will be performed, a fourth message is sent to the candidate terminal, the fourth message being used to determine whether the candidate terminal is capable of performing the first task.

[0132] In practical applications, the first terminal can be understood as a terminal with the first task requirement (which can be expressed as initial UE); the fifth information can be called a federated learning task request, which is used to request resources (such as computing power, storage or AI models) from the network device to execute the first task.

[0133] Additionally, the tenth parameter can be called model preference, which reflects the model type preferred by the first terminal (such as convolutional neural network, recurrent neural network, etc.); the eleventh parameter can be called model performance requirement, which reflects the performance that the first model needs to meet in the first task (such as accuracy or F1 score, etc.); the twelfth parameter can be called initial model parameter, which can be randomly generated by the first terminal or determined according to preset rules, and this application embodiment does not limit this.

[0134] In practical applications, the network device uses the parameters contained in the fifth information to comprehensively determine whether to accept the application from the first terminal to execute the first task. For example, if the fifth information includes the first parameter, the network device determines whether it can support the first task based on the type represented by the first parameter. For instance, if an initial model for that type is pre-configured, it determines that it can support the first task. If the fifth information includes the sixth parameter, the network device determines whether the locally available resources can support model training for that number of iterations based on the number of iterations represented by the sixth parameter. If the fifth information includes the tenth parameter, the network device determines whether it can support the first model of that type based on the type represented by the tenth parameter. If it cannot support the first model of that type, it determines that it cannot support the first task, or it selects a first model type that the network device can support for the first terminal.

[0135] Here, after completing the judgment, the network device can notify the first device so that the first device can know whether the application for the first task has been accepted.

[0136] Based on this, in one embodiment, the method may further include:

[0137] A sixth message is sent to the first terminal, the sixth message indicating whether the network device has performed the first task.

[0138] In practical applications, if it is determined that the first task will not be executed, the network device may send a sixth message to the first terminal to indicate that the network device has rejected the application initiated by the first terminal; if it is determined that the first task will be executed, the network device may send a sixth message to the first terminal to indicate that the network device has accepted the application of the first terminal. At the same time, the network device may record (or save) the eleventh and twelfth parameters for use in the subsequent execution of the first task.

[0139] Here, if it is determined that the first task will be executed, the network device may also send the fourth information to multiple candidate terminals with federated learning capabilities, so that each candidate terminal can determine whether it can execute the first task; wherein, if the first terminal has federated learning capabilities, the multiple candidate terminals may include the first terminal; if the first terminal does not have federated learning capabilities, the multiple candidate terminals do not include the first terminal.

[0140] In practical applications, after receiving the first information, the network device can select one or more terminals (which can be represented as client UEs) from the candidate terminals capable of performing the first task based on preset rules or related implementations. The selected terminals may or may not include the first terminal, and this application embodiment does not limit this. Wherein, if the network device can simultaneously perform the first task as a client, it can select one or more terminals; if the network device only performs the first task as a server, it can select multiple terminals.

[0141] Then, the network device can jointly execute the first task with the terminal. Specifically, for the first iteration, the network device can send a ninth message to the terminal. The ninth message may include an initial first model, training-related parameters, and resource-related parameters (also known as uplink transmission resource indications). The training-related parameters may include one or more of an optimizer (such as stochastic gradient descent (SGD) algorithm, adaptive moment estimation (Adam) algorithm, etc.), a sixth parameter, an eleventh parameter, and a twelfth parameter. The resource-related parameters are used to indicate the uplink transmission resources of the parameters or gradients of the first model. After receiving the ninth message, the terminal trains the first model using the local dataset and the ninth message to obtain the thirteenth parameters (also known as local model parameters) corresponding to the trained first model. Then, the terminal reports the thirteenth parameters to the network device, enabling the network device to aggregate the reported thirteenth parameters and update the parameters of the first model using the aggregated thirteenth parameters to obtain the updated first model. Thus, the first iteration of the first task is realized. The thirteenth parameters may include the weights or gradients of the first model.

[0142] For example, if the thirteenth parameter includes the weights of the first model, the network device can directly perform weighted summation on the reported weights of the first model to obtain the updated weights of the first model; if the thirteenth parameter includes the gradient of the first model, the network device can perform aggregation on the reported gradients of the first model to obtain the aggregated gradient, and then obtain the updated gradient of the first model based on the first model and the aggregated gradient.

[0143] In practical applications, after completing the first iteration, the network device can verify whether the performance of the updated first model meets the performance requirements, thereby determining whether to end the iteration process.

[0144] Specifically, in one embodiment, the fifth information includes the eleventh parameter, and the step of using the terminal to perform the first task includes:

[0145] During the execution of the first task, the performance of the trained first model is verified based on the eleventh parameter to obtain the seventh information, which represents the verification result of the trained first model.

[0146] In practical applications, when the network device triggers the execution of the first task, the network device can verify the performance of the first model.

[0147] Specifically, in one embodiment, the verification of the performance of the trained first model based on the eleventh parameter to obtain the seventh information includes:

[0148] Based on the first dataset associated with the first task and the eleventh parameter, the performance of the trained first model is verified to obtain the seventh information.

[0149] The first dataset can be called the validation set, which contains validation data associated with the first task.

[0150] In practical applications, by inputting the first dataset into the updated first model, the network device can determine the performance level of the updated first model (e.g., the accuracy of the first model on the first dataset). If the performance level of the updated first model meets the performance requirements represented by the eleventh parameter, it means that the verification result represented by the seventh information is successful. In this case, the network device can send tenth information to the terminal. The tenth information is used to indicate the end of the execution of the first task. The tenth information may contain the parameters of the updated first model. If the performance level of the updated first model does not meet the performance requirements represented by the eleventh parameter, it means that the verification result represented by the seventh information is unsuccessful.

[0151] In practical applications, when the first terminal triggers the execution of the first task, the network device can determine the verification method for the first model based on whether the first dataset exists locally. If the first dataset exists locally, the network device can use the first dataset to determine whether the performance of the updated first model meets the performance requirements represented by the eleventh parameter.

[0152] Here, if the first dataset does not exist locally, the network device can verify the first model through the first terminal.

[0153] Specifically, in one embodiment, the verification of the performance of the trained first model based on the eleventh parameter to obtain the seventh information includes:

[0154] Send an eighth message to the first terminal, the eighth message being used to request verification of the performance of the trained first model;

[0155] Receive the seventh message sent by the first terminal.

[0156] The eighth piece of information can be referred to as a federated learning task performance verification request. The eighth piece of information may include the updated parameters of the first model, and optionally, it may also include the first parameter, so that the first terminal can verify the performance of the first model based on the second dataset associated with the first task locally and the eleventh parameter.

[0157] In practical applications, if the verification result of the seventh information representation is successful, the network device can know to end the execution of the first task; if the verification result of the seventh information representation is unsuccessful, the network device can know that the next iteration is required.

[0158] Here, in the next iteration, some terminals may be unable to continue participating in the execution of the first task. Therefore, the network device can determine the terminals participating in the next iteration based on the exit status of the first task; wherein, the terminals may actively exit the execution of the first task.

[0159] Based on this, in one embodiment, the method may further include:

[0160] The system receives third information sent by one or more terminals and uses the received third information to generate the second information, wherein the third information is used to request to exit the execution of the first task.

[0161] The one or more terminals can be understood as terminals that meet preset conditions (such as battery level below a preset threshold); in addition, the third information can be understood as a terminal exit request, which may specifically include the first parameter and / or exit reason.

[0162] Here, if all terminals among the one or more terminals are allowed to exit the first task, the network device can use the received third information to obtain the second information; if all or some terminals among the one or more terminals are refused to exit the first task, the network device can use the received third information and the refusal status to obtain the second information.

[0163] In practical applications, the network device can also generate the second information in relation to the second information; that is, the network device can actively generate the second information and send the eleventh information to one or more terminals associated with the second information. The eleventh information is used to indicate exiting the execution of the first task, and the eleventh information may include the first parameter and / or the exit reason.

[0164] In practical applications, after determining the terminals participating in the next iteration, the network device can use the determined terminals to perform the next iteration. Specifically, for the next iteration, the network device can send the updated parameters of the first model from the previous iteration to the terminal, enabling the terminal to continue training the first model using the updated parameters and the local dataset, obtaining the thirteenth parameter corresponding to the trained first model. Correspondingly, the network device can receive the thirteenth parameter reported by the terminal and perform aggregation processing to update the first model, until the performance of the first model meets the performance requirements represented by the eleventh parameter, or the number of iterations of the first task meets the number of iterations represented by the sixth parameter, at which point the network device can determine to end the iteration process.

[0165] It should be noted that, for the next iteration, if the first terminal acts as a client (i.e., the terminal includes the first terminal) and the network device does not have the first dataset locally, the network device can send an eighth message to the first terminal, enabling the first terminal to verify the performance of the first model updated in the previous iteration. The eighth message may include the parameters of the first model updated in the previous iteration. If the first model updated in the previous iteration fails the verification, the first terminal can continue to train the first model using the parameters of the first model updated in the previous iteration and the local dataset.

[0166] In practical applications, during the end of the iteration process, the network device can obtain the parameters of the first trained model; then, it sends a twelfth message to the terminal, which indicates that the execution of the first task has ended. The twelfth message may contain the parameters of the first trained model. The twelfth message can be sent via broadcast, multicast, or unicast, and this application embodiment does not limit this.

[0167] In addition, if the terminal does not include the first terminal, the network device may also send the twelfth information to the first terminal.

[0168] Accordingly, embodiments of this application also provide a task processing method, applied to candidate terminals, such as... Figure 3 As shown, it includes:

[0169] Step 301: Send first information to the network device, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model, and the first information being used to determine the terminal performing the first task; wherein, during the execution of the first task, the terminal participating in the next iteration is determined based on second information, the second information indicating that one or more terminals among the terminals have exited the execution of the first task.

[0170] In practical applications, before step 301, the candidate terminal can determine whether it is able to perform the first task by using the fourth information provided by the network device.

[0171] Based on this, in one embodiment, the method may further include:

[0172] Step 300: Receive fourth information sent by the network device, the fourth information being used to determine whether the candidate terminal can perform the first task, the fourth information including one or more of the following:

[0173] The first parameter, wherein the first parameter characterizes the type of the first task;

[0174] The fifth parameter represents the size of the first model;

[0175] The sixth parameter represents the number of iterations associated with the first task;

[0176] The seventh parameter represents the size of the local dataset required to perform the first task;

[0177] The eighth parameter represents the computing power required to perform the first task;

[0178] The ninth parameter represents the incentive for performing the first task.

[0179] The task processing method provided in this application involves a network device receiving first information sent by a candidate terminal, the first information indicating that the candidate terminal can perform a first task, which is used to train a first model; using the first information, determining a terminal to perform the first task; and using the terminal to perform the first task; wherein, during the execution of the first task, using second information to determine a terminal to participate in the next iteration, and using the determined terminal to perform the next iteration, the second information indicating that one or more terminals have exited the execution of the first task. The technical solution provided in this application allows the network device, acting as a server, to reasonably select terminals for each iteration based on information about terminals that cannot continue to participate in the federated learning task, and to jointly execute the federated learning task with the selected terminals. This achieves a federated learning process between the network device and relevant terminals in a wireless access network scenario.

[0180] The following section provides a more detailed description of this application with reference to application examples.

[0181] In the application example of this application, a wireless access network federated learning scheme is proposed, which can support gNB as a server to perform federated learning with UEs participating in the federated learning task; wherein, the node initiating the federated learning task includes gNB or UE.

[0182] Here, in a scenario where the federated learning task is initiated by the gNB (i.e., the network device mentioned above), such as Figure 4 As shown, the federated learning process includes the following steps:

[0183] Step 401: gNB broadcasts the first message (the fourth message) to UE 1, UE 2, UE 3 and UE 4 (i.e. the candidate terminals mentioned above). The first message contains the federated learning task instruction (the first parameter mentioned above), the model parameter size (the fifth parameter mentioned above), the UE local dataset size requirement (the seventh parameter mentioned above), and the UE computing power requirement (the eighth parameter mentioned above).

[0184] Step 402: After receiving the first message, UE 1, UE 2 and UE 4 determine that the current federated learning task (i.e. the first task mentioned above) meets their own needs, and the size of the local dataset and the available computing power meet the requirements. Therefore, UE 1, UE 2 and UE 4 determine that they can execute the current federated learning task, and UE 1, UE 2 and UE 4 respectively send a second message (i.e. the first information mentioned above) to gNB. The second message includes the federated learning task instruction, available computing power (i.e. the second parameter mentioned above) and remaining battery power (i.e. the third parameter mentioned above).

[0185] Here, UE3 determines that the current federated learning task cannot meet its own needs, or the local dataset size is insufficient, or the available computing power is insufficient. Therefore, UE3 determines that it cannot execute the current federated learning task.

[0186] Step 403: Based on the information contained in the second message, gNB determines that UE 1, UE 2 and UE 4 participate in this round of federated learning task, that is, UE 1, UE 2 and UE 4 are client UEs (i.e. the terminals mentioned above);

[0187] Step 404: gNB sends a third message (i.e. the ninth message mentioned above) to UE 1, UE 2 and UE 4 respectively. The third message contains the initial global model, optimizer, number of rounds of local training and uplink transmission resource indication. The initial global model can be randomly selected by gNB or selected based on preset rules.

[0188] Step 405: UE 1, UE 2 and UE 4 perform local model training based on the third message;

[0189] Step 406: After the local model training is completed, UE 1, UE 2 and UE 4 use the uplink transmission resource indicator to represent the uplink transmission resources and send a fourth message to the gNB. The fourth message contains the local model parameters.

[0190] Step 407: After collecting the local model parameters of UE 1, UE 2 and UE 4, gNB performs model aggregation and updates the global model, and verifies the performance of the current global model based on the validation set;

[0191] Here, if the performance of the current global model does not meet the requirements, the next iteration will be performed.

[0192] Step 408: In the next iteration, UE 1 sends a seventh message (i.e. the third message mentioned above) to gNB due to insufficient power. The seventh message is used to request to withdraw from this federated learning task. The seventh message may contain federated learning task instructions and / or reasons for withdrawal.

[0193] Step 409: After receiving the seventh message, the gNB sends the eighth message to UE 1. The eighth message is used to indicate that UE 1's exit request is accepted. Therefore, in the subsequent process of this round of federated learning task, only UE 2 and UE 4 are client UEs (i.e., the terminals mentioned above that participate in the next iteration).

[0194] Step 410: UE 2 and UE 4 continue local model training and send a fourth message to gNB respectively;

[0195] Step 411: After collecting the local model parameters of UE 2 and UE 4, gNB performs model aggregation and updates the global model, and determines that the performance of the current global model meets the requirements based on the validation set;

[0196] Step 412: gNB sends a fifth message (i.e. the tenth message mentioned above) to UE 2 and UE 4 respectively. The fifth message contains the parameters of the global model and the federated learning task end indication. The federated learning task end indication is used to indicate the end of this federated learning task.

[0197] Considering scenarios where either the gNB or the UE initiates a federated learning task, this application example proposes a radio access network federated learning scheme to support the process of the gNB acting as a server and completing federated learning with relevant UEs.

[0198] To implement the method of the embodiments of this application, the embodiments of this application also provide a task processing device, which is installed on a network device, such as... Figure 5 As shown, the device includes:

[0199] The first receiving unit 501 is used to receive first information sent by the candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model.

[0200] The determining unit 502 is used to determine the terminal that performs the first task using the first information;

[0201] The execution unit 503 is used to execute the first task using the terminal; wherein, during the execution of the first task, the terminal participating in the next iteration is determined using second information, and the determined terminal is used to perform the next iteration, and the second information indicates one or more terminals that have exited the execution of the first task.

[0202] In one embodiment, the execution unit 503 is further configured to:

[0203] Receive third information sent by one or more terminals, and use the received third information to generate the second information, wherein the third information is used to request to exit the execution of the first task;

[0204] or,

[0205] The second piece of information is generated proactively.

[0206] In one embodiment, the execution unit 503 is further configured to send fourth information to the candidate terminal, the fourth information being used to determine whether the candidate terminal can execute the first task, the fourth information including one or more of the following:

[0207] The first parameter, wherein the first parameter characterizes the type of the first task;

[0208] The fifth parameter represents the size of the first model;

[0209] The sixth parameter represents the number of iterations associated with the first task;

[0210] The seventh parameter represents the size of the local dataset required to perform the first task;

[0211] The eighth parameter represents the computing power required to perform the first task;

[0212] The ninth parameter represents the incentive for performing the first task.

[0213] In one embodiment, the first receiving unit 501 is further configured to receive fifth information sent by the first terminal, the fifth information being used to request the execution of the first task, the fifth information including one or more of the following:

[0214] The first parameter, wherein the first parameter characterizes the type of the first task;

[0215] The sixth parameter represents the number of iterations associated with the first task;

[0216] The tenth parameter, which characterizes the type of the first model;

[0217] The eleventh parameter, wherein the eleventh parameter characterizes the performance requirements of the first model;

[0218] The twelfth parameter includes the initial parameters of the first model;

[0219] The execution unit 503 is further configured to use the fifth information to determine whether to execute the first task; if it is determined that the first task should be executed, send fourth information to the candidate terminal, the fourth information being used to determine whether the candidate terminal is capable of executing the first task.

[0220] In one embodiment, the execution unit 503 is further configured to send sixth information to the first terminal, the sixth information indicating whether the network device performs the first task.

[0221] In one embodiment, the fifth information includes the eleventh parameter, and the execution unit 503 is used to verify the performance of the trained first model based on the eleventh parameter during the execution of the first task to obtain the seventh information, which represents the verification result of the trained first model.

[0222] In one embodiment, the execution unit 503 is configured to send eighth information to the first terminal, the eighth information being used to request verification of the performance of the trained first model;

[0223] The first receiving unit 501 is used to receive the seventh information sent by the first terminal.

[0224] In one embodiment, the execution unit 503 is used to verify the performance of the trained first model based on the first dataset associated with the first task and the eleventh parameter, and obtain the seventh information.

[0225] In practical applications, the first receiving unit 501 can be implemented by the communication interface in the task processing device; the determining unit 502 can be implemented by the processor in the task processing device; and the execution unit 503 can be implemented by the processor in the task processing device in combination with the communication interface.

[0226] To implement the method of the embodiments of this application, the embodiments of this application also provide a task processing device, which is set on a candidate terminal, such as... Figure 6 As shown, the device includes:

[0227] The sending unit 601 is used to send first information to the network device, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model, and the first information being used to determine the terminal performing the first task; wherein, during the execution of the first task, the terminal participating in the next iteration is determined based on second information, the second information indicating that one or more terminals among the terminals have exited the execution of the first task.

[0228] In one embodiment, such as Figure 6 As shown, the device may further include: a second receiving unit 602; wherein,

[0229] The second receiving unit 602 is configured to receive fourth information sent by the network device, the fourth information being used to determine whether the candidate terminal can perform the first task, and the fourth information including one or more of the following:

[0230] The first parameter, wherein the first parameter characterizes the type of the first task;

[0231] The fifth parameter represents the size of the first model;

[0232] The sixth parameter represents the number of iterations associated with the first task;

[0233] The seventh parameter represents the size of the local dataset required to perform the first task;

[0234] The eighth parameter represents the computing power required to perform the first task;

[0235] The ninth parameter represents the incentive for performing the first task.

[0236] In practical applications, the sending unit 601 and the second receiving unit 602 can be implemented by the communication interface in the task processing device.

[0237] It should be noted that the task processing device provided in the above embodiments is only illustrated by the division of the above program modules. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the task processing device and the task processing 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.

[0238] Based on the hardware implementation of the above program modules, and in order to implement the method of the embodiments of this application, the embodiments of this application also provide a network device, such as... Figure 7 As shown, the network device 700 includes:

[0239] The first communication interface 701 is capable of exchanging information with candidate terminals;

[0240] The first processor 702 is connected to the first communication interface 701 to enable information interaction with the candidate terminal and to execute the methods provided by one or more technical solutions on the network device side when running a computer program.

[0241] The computer program is stored in the first memory 703.

[0242] Specifically, the first communication interface 701 is used to receive first information sent by the candidate terminal, the first information indicating that the candidate terminal can perform a first task, and the first task is used to train a first model.

[0243] The first processor 702 is configured to use the first information to determine the terminal executing the first task; and to use the terminal to execute the first task; wherein, during the execution of the first task, the second information is used to determine the terminal participating in the next iteration, and the determined terminal is used to perform the next iteration, wherein the second information indicates one or more terminals that have exited the execution of the first task.

[0244] In one embodiment, the first processor 702 is further configured to:

[0245] The system receives third information sent by one or more terminals through the first communication interface 701, and uses the received third information to generate the second information, wherein the third information is used to request to exit the execution of the first task.

[0246] or,

[0247] The second piece of information is generated proactively.

[0248] In one embodiment, the first communication interface 701 is further configured to send fourth information to the candidate terminal, the fourth information being used to determine whether the candidate terminal is capable of performing the first task, the fourth information including one or more of the following:

[0249] The first parameter, wherein the first parameter characterizes the type of the first task;

[0250] The fifth parameter represents the size of the first model;

[0251] The sixth parameter represents the number of iterations associated with the first task;

[0252] The seventh parameter represents the size of the local dataset required to perform the first task;

[0253] The eighth parameter represents the computing power required to perform the first task;

[0254] The ninth parameter represents the incentive for performing the first task.

[0255] In one embodiment, the first communication interface 701 is further configured to receive fifth information sent by the first terminal, the fifth information being used to request the execution of the first task, the fifth information including one or more of the following:

[0256] The first parameter, wherein the first parameter characterizes the type of the first task;

[0257] The sixth parameter represents the number of iterations associated with the first task;

[0258] The tenth parameter, which characterizes the type of the first model;

[0259] The eleventh parameter, wherein the eleventh parameter characterizes the performance requirements of the first model;

[0260] The twelfth parameter includes the initial parameters of the first model;

[0261] The first processor 702 is further configured to use the fifth information to determine whether to execute the first task; and if it is determined that the first task should be executed, to send fourth information to the candidate terminal through the communication interface 701, the fourth information being used to determine whether the candidate terminal is capable of executing the first task.

[0262] In one embodiment, the first communication interface 701 is further configured to send a sixth message to the first terminal, the sixth message indicating whether the network device performs the first task.

[0263] In one embodiment, the fifth information includes the eleventh parameter. The first processor 502 is used to verify the performance of the trained first model based on the eleventh parameter during the execution of the first task to obtain seventh information, which represents the verification result of the trained first model.

[0264] In one embodiment, the first communication interface 701 is used to send eighth information to the first terminal, the eighth information being used to request verification of the performance of the trained first model; and to receive seventh information sent by the first terminal.

[0265] In one embodiment, the first processor 702 is used to verify the performance of the trained first model based on the first dataset associated with the first task locally and the eleventh parameter, and obtain the seventh information.

[0266] It should be noted that the specific processing procedures of the first processor 702 and the first communication interface 701 can be understood by referring to the above method.

[0267] Of course, in practical applications, the various components in network device 700 are coupled together through bus system 704. It can be understood that bus system 704 is used to implement communication between these components. In addition to a data bus, bus system 704 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 7 The general designated all buses as Bus System 704.

[0268] The memory 703 in this embodiment is used to store various types of data to support the operation of the network device 700. Examples of such data include any computer program used to operate on the network device 700.

[0269] The methods disclosed in the embodiments of this application can be applied to, or implemented by, the processor 702. The processor 702 may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by the integrated logic circuitry of the hardware in the processor 702 or by instructions in software form. The processor 702 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. The processor 702 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, specifically in memory 703. The processor 702 reads information from memory 703 and, in conjunction with its hardware, completes the steps of the aforementioned method.

[0270] In an exemplary embodiment, the network device 700 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.

[0271] Based on the hardware implementation of the above program modules, and in order to implement the method on the candidate terminal side of the embodiments of this application, the embodiments of this application also provide a candidate terminal, such as... Figure 8 As shown, the candidate terminal 800 includes:

[0272] The second communication interface 801 is capable of exchanging information with network devices;

[0273] The second processor 802 is connected to the second communication interface 801 to enable information interaction with network devices and to execute the methods provided by one or more of the above-mentioned candidate terminal side technical solutions when running computer programs.

[0274] The computer program is stored in the second memory 803.

[0275] Specifically, the second communication interface 801 is used to send first information to the network device, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model, and the first information being used to determine the terminal performing the first task; wherein, during the execution of the first task, the terminal participating in the next iteration is determined based on second information, the second information indicating that one or more terminals among the terminals have exited the execution of the first task.

[0276] In one embodiment, the second communication interface 801 is further configured to receive fourth information sent by the network device, the fourth information being used to determine whether the candidate terminal can perform the first task, the fourth information including one or more of the following:

[0277] The first parameter, wherein the first parameter characterizes the type of the first task;

[0278] The fifth parameter represents the size of the first model;

[0279] The sixth parameter represents the number of iterations associated with the first task;

[0280] The seventh parameter represents the size of the local dataset required to perform the first task;

[0281] The eighth parameter represents the computing power required to perform the first task;

[0282] The ninth parameter represents the incentive for performing the first task.

[0283] It should be noted that the specific processing procedures of the second communication interface 801 and the second processor 802 can be understood by referring to the above method.

[0284] Of course, in practical applications, the various components in candidate terminal 800 are coupled together through bus system 804. It can be understood that bus system 804 is used to implement communication between these components. In addition to a data bus, bus system 804 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 8 The general labeled all buses as Bus System 804.

[0285] The second memory 803 in this embodiment is used to store various types of data to support the operation of the candidate terminal 800. Examples of such data include any computer program used to operate on the candidate terminal 800.

[0286] The methods disclosed in the embodiments of this application can be applied to the second processor 802, or implemented by the second processor 802. The second processor 802 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 or by instructions in the form of software in the second processor 802. The second processor 802 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The second processor 802 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application 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 the second memory 803. The second processor 802 reads the information in the second memory 803 and completes the steps of the aforementioned method in combination with its hardware.

[0287] In an exemplary embodiment, the candidate terminal 800 may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.

[0288] It is understood that the memories (first memory 703, second memory 803) in the embodiments of this application can be volatile memories or non-volatile memories, or both. Non-volatile memories can be read-only memories (ROM), programmable read-only memories (PROM), erasable programmable read-only memories (EPROM), electrically erasable programmable read-only memories (EEPROM), magnetic random access memories (FRAM), flash memories, magnetic surface memories, optical discs, or compact disc read-only memories (CD-ROM); magnetic surface memories can be disk storage or magnetic tape storage. Volatile memories can be random access memories (RAM), which are used as external caches. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memories described in the embodiments of this application are intended to include, but are not limited to, these and any other suitable types of memories.

[0289] To implement the method provided in the embodiments of this application, the embodiments of this application also provide a task processing system, such as... Figure 9 As shown, the system includes: network device 901 and candidate terminal 902.

[0290] It should be noted that the specific processing procedures for network device 901 and candidate terminal 902 have been detailed above and will not be repeated here.

[0291] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium. For example, it may include a memory 503 storing a computer program, which can be executed by the processor 702 of the network device 700 to complete the steps described in the aforementioned network device-side method. Another example is a second memory 803 storing a computer program, which can be executed by the second processor 802 of the candidate terminal 800 to complete the steps described in the aforementioned candidate terminal-side method. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.

[0292] In an exemplary embodiment, this application also provides a computer program product, including a computer program that can be executed by a processor 702 of a network device 700 to complete the steps of the aforementioned network device-side method, or the computer program can be executed by a second processor 802 of a candidate terminal 800 to complete the steps of the aforementioned candidate terminal-side method.

[0293] 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.

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

[0295] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application.

Claims

1. A task processing method characterized by, Applied to network devices, including: Receive first information sent by a candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model; Using the first information, determine the terminal that performs the first task; Using the terminal, the first task is executed; wherein, during the execution of the first task, the terminals participating in the next iteration are determined using second information, and the determined terminals are used to perform the next iteration, the second information indicating one or more terminals that have exited the execution of the first task.

2. The method according to claim 1, characterized in that, The first information includes one or more of the following: The first parameter, wherein the first parameter characterizes the type of the first task; The second parameter characterizes the computing power of the candidate terminal; The third parameter represents the battery level of the candidate terminal; The fourth parameter characterizes the data distribution of the local dataset of the candidate terminal.

3. The method according to claim 1, characterized in that, The method further includes: Receive third information sent by one or more terminals, and use the received third information to generate the second information, wherein the third information is used to request to exit the execution of the first task; or, The second piece of information is generated proactively.

4. The method according to claim 1, characterized in that, The method further includes: Send fourth information to the candidate terminal, the fourth information being used to determine whether the candidate terminal is capable of performing the first task, the fourth information including one or more of the following: The first parameter, wherein the first parameter characterizes the type of the first task; The fifth parameter represents the size of the first model; The sixth parameter represents the number of iterations associated with the first task; The seventh parameter represents the size of the local dataset required to perform the first task; The eighth parameter represents the computing power required to perform the first task; The ninth parameter represents the incentive for performing the first task.

5. The method according to claim 1, characterized in that, The method further includes: The system receives a fifth message sent by the first terminal, the fifth message being used to request the execution of the first task, and the fifth message including one or more of the following: The first parameter, wherein the first parameter characterizes the type of the first task; The sixth parameter represents the number of iterations associated with the first task; The tenth parameter, which characterizes the type of the first model; The eleventh parameter, wherein the eleventh parameter characterizes the performance requirements of the first model; The twelfth parameter includes the initial parameters of the first model; Using the fifth piece of information, determine whether to execute the first task; If it is determined that the first task will be performed, a fourth message is sent to the candidate terminal, the fourth message being used to determine whether the candidate terminal is capable of performing the first task.

6. The method according to claim 5, characterized in that, The method further includes: A sixth message is sent to the first terminal, the sixth message indicating whether the network device has performed the first task.

7. The method according to claim 5, characterized in that, The fifth piece of information includes the eleventh parameter, and the step of using the terminal to execute the first task includes: During the execution of the first task, the performance of the trained first model is verified based on the eleventh parameter to obtain the seventh information, which represents the verification result of the trained first model.

8. The method according to claim 7, characterized in that, The performance of the trained first model is verified based on the eleventh parameter to obtain the seventh piece of information, including: Send an eighth message to the first terminal, the eighth message being used to request verification of the performance of the trained first model; Receive the seventh message sent by the first terminal.

9. The method according to claim 7, characterized in that, The performance of the trained first model is verified based on the eleventh parameter to obtain the seventh piece of information, including: Based on the first dataset associated with the first task and the eleventh parameter, the performance of the trained first model is verified to obtain the seventh information.

10. A task processing method, characterized in that, Applied to candidate terminals, including: Send first information to the network device, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model, the first information being used to determine the terminal performing the first task; wherein, during the execution of the first task, the terminal participating in the next iteration is determined based on second information, the second information indicating that one or more terminals among the terminals have exited the execution of the first task.

11. The method according to claim 10, characterized in that, The first information includes one or more of the following: The first parameter, wherein the first parameter characterizes the type of the first task; The second parameter characterizes the computing power of the candidate terminal; The third parameter represents the battery level of the candidate terminal; The fourth parameter characterizes the data distribution of the local dataset of the candidate terminal.

12. The method according to claim 10, characterized in that, The method further includes: The network device sends fourth information, which is used to determine whether the candidate terminal can perform the first task. The fourth information includes one or more of the following: The first parameter, wherein the first parameter characterizes the type of the first task; The fifth parameter represents the size of the first model; The sixth parameter represents the number of iterations associated with the first task; The seventh parameter represents the size of the local dataset required to perform the first task; The eighth parameter represents the computing power required to perform the first task; The ninth parameter represents the incentive for performing the first task.

13. A task processing device, characterized in that, Configured on network devices, including: The first receiving unit is configured to receive first information sent by the candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model. A determining unit is configured to use the first information to determine the terminal that performs the first task; An execution unit is configured to execute the first task using the terminal; wherein, during the execution of the first task, the terminal participating in the next iteration is determined using second information, and the determined terminal is used to perform the next iteration, the second information indicating one or more terminals that have exited the execution of the first task.

14. A task processing device, characterized in that, Settings for candidate terminals include: A sending unit is configured to send first information to a network device, the first information indicating that the candidate terminal is capable of performing a first task, the first task being used to train a first model, and the first information being used to determine the terminal performing the first task; wherein, during the execution of the first task, the terminal participating in the next iteration is determined based on second information, the second information indicating that one or more terminals among the terminals have exited the execution of the first task.

15. A network device, characterized in that, include: A first processor and a first communication interface; wherein... The first communication interface is used to receive first information sent by the candidate terminal, the first information indicating that the candidate terminal can perform a first task, the first task being used to train a first model; The first processor is configured to use the first information to determine the terminal executing the first task; and to use the terminal to execute the first task; wherein, during the execution of the first task, the processor uses second information to determine the terminal participating in the next iteration, and uses the determined terminal to perform the next iteration, the second information indicating one or more terminals that have exited the execution of the first task.

16. A candidate terminal, characterized in that, include: A second processor and a second communication interface; wherein... The second communication interface is used to send first information to the network device. The first information indicates that the candidate terminal can perform a first task. The first task is used to train a first model. The first information is used to determine the terminal that performs the first task. During the execution of the first task, the terminal participating in the next iteration is determined based on second information. The second information indicates that one or more terminals among the terminals have exited the execution of the first task.

17. A network device, characterized in that, include: A first processor and a first memory for storing computer programs capable of running on the processor. Wherein, when the first processor is used to run the computer program, it performs the steps of the method according to any one of claims 1 to 9.

18. A candidate terminal, characterized in that, include: A second processor and a second memory for storing computer programs that can run on the processor. Wherein, when the second processor is used to run the computer program, it performs the steps of the method according to any one of claims 10 to 12.

19. A 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 9, or the steps of the method according to any one of claims 10 to 12.

20. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method according to any one of claims 1 to 9, or implements the steps of the method according to any one of claims 10 to 12.