A federated learning method, device, equipment and readable storage medium

By utilizing CSCF to obtain terminal information in federated learning and selecting appropriate terminals for model training, the problem of underutilization of the terminal role in existing technologies is solved, thereby improving the effectiveness and training efficiency of federated learning.

CN115551070BActive Publication Date: 2026-01-20CHINA MOBILE COMM LTD RES INST +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202110652654.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-06-11
Publication Date
2026-01-20
Estimated Expiration
2041-06-11

AI Technical Summary

Technical Problem

Existing federated learning technologies do not fully consider the role of the terminal, resulting in poor training effects.

Method used

By obtaining the service execution information and service status information of the terminal through CSCF, the target terminal is identified, and an instruction message is sent to it for model training. The training results are obtained, and the terminal's feature information and network status information are combined for matching to select a suitable terminal to participate in federated learning.

Benefits of technology

This improves the learning effectiveness of federated learning, ensures a smooth training process, and enhances the accuracy and convergence speed of model training.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115551070B_ABST
    Figure CN115551070B_ABST
Patent Text Reader

Abstract

The application discloses a federated learning method, device and equipment and a readable storage medium, relates to the technical field of communication, and aims to improve the federated learning effect. The method comprises the following steps: determining a target terminal for performing federated learning according to service execution information and service state information required by a federated learning task and service execution information and service state information of a terminal used for federated learning; sending a first indication message to the target terminal, wherein the first indication message is used for instructing the target terminal to train a target federated learning model; and obtaining a training result of the target terminal on the target federated learning model. The embodiment of the application can improve the federated learning effect.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, and in particular to a federated learning method, apparatus, device, and readable storage medium. Background Technology

[0002] Federated learning is an emerging foundational technology for artificial intelligence. Its goal is to enable efficient machine learning among multiple participants or computing nodes while ensuring information security during big data exchange, protecting the privacy of terminal and personal data, and guaranteeing legal compliance.

[0003] Currently, federated learning is primarily being conducted by internet companies and emerging technology companies. With some companies advocating and developing federated learning for mobile applications, it has been applied in various scenarios. However, federated learning is still in its early stages and faces many challenges, such as communication overhead and latency. Operators, on the other hand, have a natural advantage in solving these problems.

[0004] In federated learning, all participants need to collaboratively train a model, and the role of the terminal is crucial. However, existing federated learning technologies do not consider the role of the terminal, resulting in poor training outcomes. Summary of the Invention

[0005] This application provides a federated learning method, apparatus, device, and readable storage medium to improve the effectiveness of federated learning.

[0006] In a first aspect, embodiments of this application provide a federated learning method applied to a federated learning business application server, comprising:

[0007] Based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information obtained from the terminal used for federated learning, the target terminal for performing federated learning is determined.

[0008] Send a first instruction message to the target terminal, wherein the first instruction message is used to instruct the target terminal to train the acquired target federated learning model;

[0009] Obtain the training results of the target terminal on the target federated learning model.

[0010] This includes obtaining the business execution information and business status information used by the terminal for federated learning, including:

[0011] Subscription messages are sent to the terminal via CSCF (Call Session Control Function);

[0012] The terminal obtains service execution information and service status information for federated learning sent by the terminal through the CSCF. The service execution information includes feature information and data information, and the service status information includes time information and network status information.

[0013] The business execution information required for the federated learning task includes feature information and data information required to execute the federated learning task, and the business status information required for the federated learning task includes time point and duration information required to execute the federated learning task.

[0014] The step of determining the target terminal for performing federated learning based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information obtained from the terminal for federated learning, includes:

[0015] The business execution information required for the federated learning task is matched with the business execution information used by the terminal for federated learning to obtain the first matching result;

[0016] The business status information required for the federated learning task is matched with the business status information of the terminal used for federated learning to obtain a second matching result;

[0017] Terminals that successfully complete both the first and second matching results are identified as target terminals for performing federated learning.

[0018] Secondly, embodiments of this application also provide a federated learning method applied to a terminal, including:

[0019] Send the terminal's business execution information and business status information for federated learning to the federated learning business application server;

[0020] The target federated learning model is trained according to the first instruction message sent by the federated learning business application server.

[0021] The training results of the target federated learning model are sent to the federated learning application server.

[0022] The method further includes, after training the acquired target federated learning model:

[0023] The system obtains its own business status information, and when the business status information changes, it sends the changed business status information to the federated learning business application server.

[0024] Obtain the business status update information required for the federated learning task returned by the federated learning business application server;

[0025] The target federated learning model is trained based on the business status update information.

[0026] The step of training the target federated learning model based on the business status update information includes:

[0027] The business status update information required for the federated learning task is matched with the business status information of the terminal used for federated learning. If the match is successful, the target federated learning model continues to be trained.

[0028] The step of sending the terminal's business execution information and business status information for federated learning to the federated learning business application server includes:

[0029] The CSCF sends a first notification message to the federated learning application server. The message header field of the first notification message carries a subscription event, and the subscription status header field of the first notification message indicates that the subscription was successful.

[0030] The CSCF sends a second notification message to the federated learning application server. The message header field of the second notification message carries the subscription event, the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the terminal's business execution information and business status information for federated learning.

[0031] Before training the acquired target federated learning model, the method further includes:

[0032] The CSCF receives a publish message sent by the federated learning application server. The event header field of the publish message indicates the federated task to be published, and the content message body of the publish message carries the download address of the target federated learning model and the start time of the federated learning task.

[0033] Thirdly, embodiments of this application also provide a federated learning device, applied to a federated learning business application server, comprising:

[0034] The first determining module is used to determine the target terminal for performing federated learning based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information obtained from the terminal for federated learning.

[0035] The first sending module is used to send a first instruction message to the target terminal, wherein the first instruction message is used to instruct the target terminal to train the acquired target federated learning model.

[0036] The second acquisition module is used to acquire the training results of the target terminal on the target federated learning model.

[0037] Optionally, a subscription message is sent to the terminal via CSCF; the service execution information and service status information sent by the terminal via CSCF for federated learning are obtained, wherein the service execution information includes feature information and data information, and the service status information includes time information and network status information.

[0038] Optionally, the business execution information required for the federated learning task includes feature information and data information required to execute the federated learning task, and the business status information required for the federated learning task includes time point and duration information required to execute the federated learning task;

[0039] The first determining module includes:

[0040] The first matching submodule is used to match the business execution information required for the federated learning task with the business execution information used by the terminal for federated learning, and obtain the first matching result;

[0041] The second matching submodule is used to match the business status information required for the federated learning task with the business status information used by the terminal for federated learning, and obtain the second matching result.

[0042] The first determination submodule is used to determine the terminal that has successfully achieved both the first and second matching results as the target terminal for performing federated learning.

[0043] Fourthly, embodiments of this application also provide a federated learning device, applied to a terminal, comprising:

[0044] The first sending module is used to send the terminal's business execution information and business status information for federated learning to the federated learning business application server;

[0045] The first processing module is used to train the acquired target federated learning model according to the first instruction message sent by the federated learning business application server.

[0046] The second sending module is used to send the training results of the target federated learning model to the federated learning application server.

[0047] Optionally, the device further includes:

[0048] The third sending module is used to obtain its own business status information, and when the business status information changes, it sends the changed business status information to the federated learning business application server.

[0049] The first acquisition module is used to acquire the business status update information required for the federated learning task returned by the federated learning business application server;

[0050] The second processing module is used to train the target federated learning model based on the business status update information.

[0051] Optionally, the second processing module is used to match the business state update information required for the federated learning task with the business state information of the terminal used for federated learning, and when the matching is successful, to continue training the target federated learning model.

[0052] Optionally, the first sending module is configured to send a first notification message to the federated learning service application server via the CSCF, wherein the message header field of the first notification message carries a subscription event and the subscription status header field of the first notification message indicates that the subscription was successful; and to send a second notification message to the federated learning service application server via the CSCF, wherein the message header field of the second notification message carries the subscription event and the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the service execution information and service status information of the terminal for federated learning.

[0053] Optionally, the device further includes:

[0054] The first receiving module is used to receive a publishing message sent by the federated learning service application server via CSCF. The event header field of the publishing message indicates the federated task to be published, and the content message body of the publishing message carries the download address of the target federated learning model and the start time of the federated learning task.

[0055] Fifthly, embodiments of this application also provide a federated learning apparatus for use in a federated learning business application server, comprising: a processor and a transceiver;

[0056] The processor is used to determine the target terminal for performing federated learning based on the business execution information and business status information required by the federated learning task, and the business execution information and business status information obtained by the terminal for federated learning.

[0057] The transceiver is configured to send a first instruction message to the target terminal, the first instruction message being used to instruct the target terminal to train the acquired target federated learning model; and to obtain the training result of the target terminal on the target federated learning model.

[0058] Optionally, the processor is further configured to send a subscription message to the terminal via the CSCF; and to obtain service execution information and service status information for federated learning sent by the terminal via the CSCF, wherein the service execution information includes feature information and data information, and the service status information includes time information and network status information.

[0059] Optionally, the business execution information required for the federated learning task includes feature information and data information required to execute the federated learning task, and the business status information required for the federated learning task includes time point and duration information required to execute the federated learning task;

[0060] The processor is also used for:

[0061] The business execution information required for the federated learning task is matched with the business execution information used by the terminal for federated learning to obtain the first matching result;

[0062] The business status information required for the federated learning task is matched with the business status information of the terminal used for federated learning to obtain a second matching result;

[0063] Terminals that successfully complete both the first and second matching results are identified as target terminals for performing federated learning.

[0064] Sixthly, embodiments of this application also provide a federated learning apparatus for use in a federated learning business application server, comprising: a processor and a transceiver;

[0065] The transceiver is used to send the terminal's business execution information and business status information for federated learning to the federated learning business application server;

[0066] The processor is configured to train the acquired target federated learning model according to the first instruction message sent by the federated learning business application server.

[0067] The transceiver is also used to send the training results of the target federated learning model to the federated learning application server.

[0068] Optionally, the transceiver is further configured to: acquire its own business status information, and when its own business status information changes, send the changed business status information to the federated learning business application server; acquire the business status update information required for the federated learning task returned by the federated learning business application server;

[0069] The processor is also used to train the target federated learning model based on the business status update information.

[0070] Optionally, the processor is further configured to match the business state update information required for the federated learning task with the business state information of the terminal used for federated learning, and if the matching is successful, continue to train the target federated learning model.

[0071] Optionally, the transceiver is also used for:

[0072] The CSCF sends a first notification message to the federated learning application server. The message header field of the first notification message carries a subscription event, and the subscription status header field of the first notification message indicates that the subscription was successful.

[0073] The CSCF sends a second notification message to the federated learning application server. The message header field of the second notification message carries the subscription event, the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the terminal's business execution information and business status information for federated learning.

[0074] Optionally, the transceiver is also used for:

[0075] The CSCF receives a publish message sent by the federated learning application server. The event header field of the publish message indicates the federated task to be published, and the content message body of the publish message carries the download address of the target federated learning model and the start time of the federated learning task.

[0076] In a seventh aspect, embodiments of this application also provide a communication device, including: a transceiver, a memory, a processor, and a program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps in the federated learning method described above.

[0077] Eighthly, embodiments of this application also provide a readable storage medium on which a program is stored, which, when executed by a processor, implements the steps in the federated learning method as described above.

[0078] In this embodiment, based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information of the terminal used for federated learning, the target terminal for performing federated learning is determined. The target terminal then learns the target federated learning model, and the training results from the target terminal are received. In this process, the terminal's business execution information and business status information used for federated learning are considered as factors in the federated learning process. Therefore, using the solution of this embodiment, the participants in the federated learning task can be selected based on the information of each terminal, successfully completing each federated learning task and improving the learning effect of federated learning. Attached Figure Description

[0079] Figure 1 This is an architecture diagram of the system for carrying out federated learning operations in the embodiments of this application;

[0080] Figure 2 This is one of the flowcharts of the federated learning method provided in the embodiments of this application;

[0081] Figure 3This is the second flowchart of the federated learning method provided in the embodiments of this application;

[0082] Figure 4 This is a flowchart of the registration process for federated learning services provided in an embodiment of this application;

[0083] Figure 5 This is a schematic diagram illustrating the service preparation state of the subscription terminal provided in the embodiments of this application;

[0084] Figure 6 This is a schematic diagram of the federated learning process provided in the embodiments of this application;

[0085] Figure 7 This is one of the structural diagrams of the federated learning device provided in the embodiments of this application;

[0086] Figure 8 This is the second structural diagram of the federated learning device provided in the embodiments of this application;

[0087] Figure 9 This is the third structural diagram of the federated learning device provided in the embodiments of this application;

[0088] Figure 10 This is the fourth structural diagram of the federated learning device provided in the embodiments of this application. Detailed Implementation

[0089] In the embodiments of this application, the term "and / or" describes the relationship between associated objects, indicating that three relationships can exist. For example, A and / or B can represent three cases: A alone, A and B simultaneously, and B alone. The character " / " generally indicates that the preceding and following associated objects have an "or" relationship.

[0090] In the embodiments of this application, the term "multiple" refers to two or more, and other quantifiers are similar.

[0091] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of the embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.

[0092] See Figure 1 , Figure 1 This is an architecture diagram of a system for conducting federated learning operations in this embodiment of the application. The system may include: an enterprise demand-side platform 101, a federated learning service AS (Application Server) 102, and a terminal 103.

[0093] The Federated Learning Service (AS), as a collaborator in the Federated Learning process, primarily manages the service, processes business requirements and models submitted by clients, handles client registration and management interactions, provides clients with the necessary data for Federated Learning, and receives feedback data from clients. Clients participate in Federated Learning tasks. By activating the Federated Learning service, clients optimize machine learning prediction models without disclosing personal privacy data. Client platforms can be either the operator's own business platform or a third-party platform providing application services to clients. Client platforms interface with the Federated Learning Service (AS), submitting Federated Learning requirements or models to the AS, which then reviews and processes the models.

[0094] exist Figure 1 In the network shown, the terminal completes the registration for the Federated Learning Service and other signaling interactions through the IMS (IP Multimedia Subsystem) network. After subscribing to the Federated Learning Service, the terminal completes its registration with the Federated Learning Service AS during the IMS network registration process upon startup. After registration, all signaling interactions between the terminal and the Federated Learning Service AS are forwarded and connected via the IMS network.

[0095] See Figure 2 , Figure 2 This is a flowchart of the federated learning method provided in the embodiments of this application, applied to a federated learning business application server, such as... Figure 2 As shown, it includes the following steps:

[0096] Step 201: Based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information obtained from the terminal used for federated learning, determine the target terminal for performing federated learning.

[0097] After completing the federated learning service registration for the terminal, in this step, the federated learning service application server sends a subscription message to the terminal via CSCF. This subscription message indicates the service readiness status of the subscribed terminal, specifically the service execution information and service status information for federated learning. Then, the service execution information and service status information for federated learning sent by the terminal via CSCF are retrieved.

[0098] In this embodiment of the application, the service execution information includes feature information and data information, and the service status information includes time information and network status information.

[0099] The feature information refers to information that the terminal can provide for participating in federated learning, such as the terminal's location information, mobile phone number, etc.; the data information can include business data, etc. The time information can be determined based on the terminal's usage, for example, the terminal's idle time can be selected as the time information for federated learning. The network status information can be, for example, network usage status, network connection information, etc.

[0100] The message header field of the subscription message carries a subscription event, which is used to indicate the service readiness status of the terminal.

[0101] During the process of acquiring the business execution information and business status information of the terminal used for federated learning, the federated learning business application server receives a first notification message sent by the terminal through the CSCF. The message header field of the first notification message carries the subscription event, and the subscription status header field of the first notification message indicates that the subscription is successful. The federated learning business application server acquires a second notification message sent by the terminal through the CSCF. The message header field of the second notification message carries the subscription event, and the subscription status header field of the second notification message indicates that the subscription process is in progress. The content message body of the second notification message includes the business execution information and business status information of the terminal used for federated learning.

[0102] Specifically, the Federated Learning Application Server sends a subscription message to the terminal via the CSCF. The message header of this subscription message carries a subscription event, which indicates the terminal's service readiness status. For example, the subscription event could be represented as "Event: FL-PREPARE". Afterward, the Federated Learning Application Server receives a notification message from the terminal via the CSCF. The message header of this notification message carries the subscription event, and its subscription-state header indicates successful subscription. For example, if the subscription-state header is "active", it indicates successful subscription.

[0103] After the terminal obtains the business execution information and business status information used for federated learning, it sends these information to the federated learning application server. At this time, the federated learning application server receives a second notification message from the terminal via the CSCF. The message header field of this notification message carries the subscription event, and the subscription-state header field of the second notification message indicates that a subscription process is in progress. The content of the second notification message includes the business execution information and business status information used for federated learning. For example, if the subscription-state header field of the second notification message is "pending," it indicates that a subscription process is in progress.

[0104] In practical applications, the terminal can be multiple terminals, and the target federated learning model can be a federated learning model specified by the enterprise demander or a federated learning business application server determined according to the characteristics of the enterprise demander. The business execution information required for the federated learning task includes the feature information and data information required to execute the federated learning task, and the business status information required for the federated learning task includes the time point and duration information required to execute the federated learning task.

[0105] In this step, the business execution information required for the federated learning task is matched with the business execution information used by the terminal for federated learning to obtain a first matching result; the business status information required for the federated learning task is matched with the business status information used by the terminal for federated learning to obtain a second matching result; the terminal that successfully obtains both the first and second matching results is identified as the target terminal for performing federated learning. There is no strict order between obtaining the first and second matching results.

[0106] Step 202: Send a first instruction message to the target terminal. The first instruction message is used to instruct the target terminal to train the acquired target federated learning model.

[0107] In practical applications, the federated learning application server can send a publish message (PUBLISH) to the target terminal via CSCF. The event header field of the publish message indicates that the publish message is used to instruct federated task learning, and the content message body of the publish message carries the download address of the target federated learning model and the federated learning task start time. For example, the event header field is: "Event:FL_JOB_START".

[0108] Step 203: Obtain the training results of the target terminal on the target federated learning model.

[0109] When the terminal has finished learning the target federated learning model, it sends the training results to the federated learning business application server, which then feeds them back to the enterprise demand platform.

[0110] Based on the above embodiments, to conserve resources, the federated learning application server can also send a second instruction message, such as a publish message, to the terminal via CSCF. The event header field of the publish message indicates the end of the federated task learning. For example, the Event header field should be: "Event:FL_JOB_FINISH".

[0111] In this embodiment, based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information of the terminal used for federated learning, the target terminal for performing federated learning is determined. The target terminal then learns the target federated learning model, and the training results from the target terminal are received. In this process, the terminal's business execution information and business status information used for federated learning are considered as factors in the federated learning process. Therefore, using the solution of this embodiment, the participants in the federated learning task can be selected based on the information of each terminal, successfully completing each federated learning task and improving the learning effect of federated learning.

[0112] Before executing the above embodiments, in order to ensure the smooth progress of model learning, the federated learning service application server can also receive a registration request sent by CSCF and complete the registration of the terminal according to the registration request, wherein the terminal has subscribed to the federated learning service.

[0113] See Figure 3 , Figure 3 This is a flowchart of the federated learning method provided in the embodiments of this application, applied to a terminal, such as... Figure 3 As shown, it includes the following steps:

[0114] Step 301: Send the terminal's business execution information and business status information for federated learning to the federated learning business application server.

[0115] After registering for the federated learning service, the terminal receives a subscription message from the federated learning service application server via CSCF. The message header field of the subscription message carries a subscription event, which is used to indicate the service readiness status of the terminal.

[0116] In this step, the terminal sends a first notification message (NOTIFY) to the federated learning application server via the CSCF. The message header field of the first notification message carries the subscription event, and the subscription status header field indicates successful subscription. For example, if the subscription status header field of the first notification message is "active," it indicates successful subscription. Then, the terminal sends a second notification message to the federated learning application server via the CSCF. The message header field of the second notification message carries the subscription event, and the subscription status header field of the second notification message indicates that the subscription process is in progress. The content of the notification message includes the terminal's business execution information and business status information for federated learning. For example, if the subscription status header field of the second notification message is "pending," it indicates that the subscription process is in progress.

[0117] Step 302: Train the acquired target federated learning model according to the first instruction message sent by the federated learning business application server.

[0118] To improve training efficiency, prior to this step, the terminal can receive a publishing message sent by the federated learning service application server via CSCF. The event header field of the publishing message indicates that the publishing message is used to instruct federated task learning, and the content message body of the publishing message carries the download address of the target federated learning model and the federated learning task start time.

[0119] Step 303: Send the training results of the target federated learning model to the federated learning application server.

[0120] In this step, the terminal obtains the target federated learning model according to the download address of the target federated learning model, then starts learning the target federated learning model according to the federated learning task start time, obtains the training results, and sends the training results to the federated learning business application server.

[0121] In this embodiment, based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information of the terminal used for federated learning, the target terminal for performing federated learning is determined. The target terminal then learns the target federated learning model, and the training results from the target terminal are received. In this process, the terminal's business execution information and business status information used for federated learning are considered as factors in the federated learning process. Therefore, using the solution of this embodiment, the participants in the federated learning task can be selected based on the information of each terminal, successfully completing each federated learning task and improving the learning effect of federated learning.

[0122] Based on the above embodiments, the terminal can also receive a publishing message sent by the federated learning service application server through CSCF. The event header field of the publishing message indicates the end of the federated task learning, and the federated task learning is ended according to the publishing message.

[0123] Based on the above embodiments, the terminal may also send a registration request to the CSCF, so that the CSCF can initiate the registration of the terminal's federated learning service with the federated learning service application server according to the registration request.

[0124] In the above embodiments, the terminal can also acquire its own business status information, and when its own business status information changes, send the changed business status information to the federated learning business application server. Furthermore, it can acquire the business status update information required for the federated learning task returned by the federated learning business application server, and perform training of the target federated learning model based on the business status update information. Afterwards, the terminal matches the business status update information required for the federated learning task with the business status information used for federated learning, and if a match is successful, continues training the target federated learning model. In this way, a terminal that is more suitable for the federated learning model can be selected for training based on changes in the terminal's business status information, thereby improving the accuracy of the obtained model training results.

[0125] See Figure 4 , Figure 4 This is a schematic diagram of the registration process for federated learning services according to an embodiment of this application. The specific steps are as follows:

[0126] Step 401: The terminal initiates a network attach request. After completing EPC (Evolved Packet Core; 4G core network) / 5GC (5G core network) authentication, it initiates IMS network registration, and CSCF completes the authentication of the terminal.

[0127] Step 402: CSCF analyzes the triggering rules of iFC (initial Filter Criteria) and initiates third-party registration with each application server.

[0128] Step 403: When the terminal subscribes to the Federated Learning service, the CSCF network element initiates third-party registration with the Federated Learning service application server and sends a registration message.

[0129] Step 404: After receiving the registration message (REGISTER), the Federated Learning Business Application Server initiates a UDR (Unified Data Repository) request to the HSS (HomeSubscriber Server). The HSS then returns the relevant subscription information to the Federated Learning Business Application Server via UDA (Unified Data Architecture).

[0130] Step 405: The Federated Learning Service Application Server completes the Federated Learning Service registration for the terminal and returns a registration completion message (200 OK) to the CSCF network element.

[0131] In this embodiment of the application, the triggering rule configured in the CSCF network element of the IMS network is the iFC triggering rule, which enables the CSCF network element to trigger the Federated Learning Service Application Server to complete the registration when it is registering.

[0132] See Figure 5 , Figure 5 This is a schematic diagram illustrating the process of the service preparation state of the federated learning service application server subscription terminal according to an embodiment of this application. The specific steps are as follows:

[0133] Step 501: After the terminal completes the registration process, the Federated Learning Service (AS) initiates a SUBSCRIBE message to subscribe to the terminal's service readiness status. The subscription event "Event" carried in the SUBSCRIBE message header indicates that this message is a message from the Federated Learning Service (AS) subscribing to the terminal's service readiness status, for example: "Event:FL-PREPARE".

[0134] Step 502: After receiving the SUBSCRIBE message, the CSCF forwards the SUBSCRIBE message to the terminal.

[0135] Step 503: After receiving the SUBSCRIBE message, the terminal replies with a 200 OK response to the Federated Learning Service AS via CSCF.

[0136] Step 504: The terminal replies with a NOTIFY message to the Federated Learning Service AS via CSCF, indicating successful subscription.

[0137] The Event header field in the NOTIFY message should be consistent with the Event header field in the SUBSCRIBE message, i.e., “Event:FL-PREPARE”;

[0138] The Subscription-State header field in the NOTIFY message should be "active" to indicate a successful subscription.

[0139] The NOTIFY message is sent to the Federated Learning Service (AS) via the CSCF.

[0140] Step 505: After successfully receiving the NOTIFY message, the Federated Learning Service (AS) returns a 200 OK response to the terminal via the CSCF.

[0141] Step 506: After obtaining the user's consent and acquiring information about the user's idle time slots and the information used for federated learning services, the terminal obtains the time information and feature information used for federated learning services, and sends a NOTIFY message to the federated learning service AS via the CSCF, wherein:

[0142] The Event header field in the NOTIFY message should be consistent with the Event header field in the SUBSCRIBE message, i.e., “Event:FL-PREPARE”;

[0143] The Subscription-State header field in the NOTIFY message should be "pending", indicating that the subscription process is in progress;

[0144] The message body of Content contains time information for performing federated learning and characteristic information for federated learning operations.

[0145] Step 507: After successfully receiving the NOTIFY message, the Federated Learning Service (AS) returns a 200 OK response to the terminal via the CSCF.

[0146] During the above process, the terminal can periodically obtain time information for federated learning and feature information for federated learning services, and send NOTIFY messages to the federated learning service AS again when there are updates.

[0147] The Federated Learning Service (AS) can obtain the time information and characteristic information of the terminal used for federated learning through the subscription process. This information provides a basis for the AS to issue federated learning tasks in a targeted manner.

[0148] See Figure 6 , Figure 6 This is a schematic diagram illustrating the process of performing federated learning according to an embodiment of this application. The specific steps are as follows:

[0149] Step 601: The enterprise demand-side platform (including the operator's own business platform) submits a federated learning requirement and sends the federated learning model to the federated learning service AS.

[0150] Step 602: The Federated Learning Service (AS) completes task processing on the model and generates a Federated Learning model that can be distributed to terminals.

[0151] Step 603: The Federated Learning Service (AS) matches the feature values ​​required for this Federated Learning task and the time required to complete the task with the information provided by the terminal to find suitable terminals to participate in this Federated Learning task.

[0152] Step 604: The Federated Learning Service (AS) sends a PUBLISH publish message to the terminal via the CSCF, notifying the terminal of a new federated learning task and providing the address for downloading the federated learning model, wherein:

[0153] The "Event" header field in the PUBLISH message should indicate that this is a message from the Federated Learning Service (AS) issuing a Federated Learning task; that is, the Event header field should be: "Event:FL_JOB_START". The Content message body contains the address for downloading the Federated Learning model and the start time of the Federated Learning task.

[0154] Step 605: After successfully receiving the PUBLISH message, the terminal returns a 200 OK response to the Federated Learning Service AS via CSCF.

[0155] Step 606: The terminal initiates a download model request based on the address for downloading the federated learning model in the PUBLISH message body, and downloads the federated learning model data.

[0156] Step 607: After the terminal completes the model download, it executes local model training according to the federated learning task start time indicated by the PUBLISH message.

[0157] Step 608: After model training, the terminal sends the encrypted training results to the Federated Learning Service (AS).

[0158] Step 609: Federated Learning Service (AS) calculates and distributes the aggregated results.

[0159] The process involves several steps: After downloading the model, the terminal performs local model training; upon completion, it uses encryption to mask the gradient information and uploads the masked result to the federated learning application server; the federated learning application server aggregates the learning results from the terminal and sends the aggregated results back to the terminal; upon receiving the aggregated results, the terminal updates its model parameters. This process of downloading, training, uploading, aggregating, downloading again, and updating model parameters can be executed multiple times.

[0160] Step 610: After completing the training task, the Federated Learning Service (AS) sends a PUBLISH message to the terminal via the CSCF to notify the terminal that the Federated Learning task has ended. The "Event" header field in the message should be: "Event:FL_JOB_FINISH".

[0161] Step 611: After the terminal successfully receives the PUBLISH message, it returns a 200 OK response to the Federated Learning Service AS via CSCF and ends the current learning task.

[0162] Step 612: The Federated Learning Service (AS) sends the final aggregation results to the enterprise demand side platform according to business needs.

[0163] As can be seen from the above description, this application proposes a scheme for terminals to participate in federated learning services. This scheme enables the federated learning service AS to select the participants in the federated learning task and the time for conducting federated learning based on the relevant information data of the terminals and the network and usage of each terminal. Without affecting the normal use of the terminal by the user, this scheme can ensure the smooth operation of the federated service, as well as the model training process, model accuracy, and model training convergence speed during the process, and successfully complete each federated learning task.

[0164] This application also provides a federated learning device applied to a federated learning business application server. For example... Figure 7 As shown, the Federated Learning Device 700 includes:

[0165] The first determining module 701 is used to determine the target terminal for performing federated learning based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information of the terminal used for federated learning. The first sending module 702 is used to send a first instruction message to the target terminal, wherein the first instruction message is used to instruct the target terminal to train the acquired target federated learning model. The second obtaining module 703 is used to obtain the training result of the target terminal on the target federated learning model.

[0166] Optionally, a subscription message is sent to the terminal via CSCF; the service execution information and service status information sent by the terminal via CSCF for federated learning are obtained, wherein the service execution information includes feature information and data information, and the service status information includes time information and network status information.

[0167] Optionally, the business execution information required for the federated learning task includes feature information and data information required to execute the federated learning task, and the business status information required for the federated learning task includes time point and duration information required to execute the federated learning task;

[0168] The first determining module includes:

[0169] The first matching submodule is used to match the business execution information required for the federated learning task with the business execution information used by the terminal for federated learning, and obtain the first matching result;

[0170] The second matching submodule is used to match the business status information required for the federated learning task with the business status information used by the terminal for federated learning, and obtain the second matching result.

[0171] The first determination submodule is used to determine the terminal that has successfully achieved both the first and second matching results as the target terminal for performing federated learning.

[0172] The apparatus provided in this application embodiment can execute the above method embodiment, and its implementation principle and technical effect are similar, so it will not be described again here.

[0173] This application also provides a federated learning device for use on a terminal. For example... Figure 8 As shown, the Federated Learning Device 800 includes:

[0174] The first sending module 801 is used to send the terminal's business execution information and business status information for federated learning to the federated learning business application server; the first processing module 802 is used to train the acquired target federated learning model according to the first instruction message sent by the federated learning business application server; the second sending module 803 is used to send the training result of the target federated learning model to the federated learning application server.

[0175] Optionally, the device further includes:

[0176] The third sending module is used to obtain its own business status information, and when the business status information changes, it sends the changed business status information to the federated learning business application server.

[0177] The first acquisition module is used to acquire the business status update information required for the federated learning task returned by the federated learning business application server;

[0178] The second processing module is used to train the target federated learning model based on the business status update information.

[0179] Optionally, the second processing module is used to match the business state update information required for the federated learning task with the business state information of the terminal used for federated learning, and when the matching is successful, to continue training the target federated learning model.

[0180] Optionally, the first sending module is configured to send a first notification message to the federated learning service application server via the CSCF, wherein the message header field of the first notification message carries a subscription event and the subscription status header field of the first notification message indicates that the subscription was successful; and to send a second notification message to the federated learning service application server via the CSCF, wherein the message header field of the second notification message carries the subscription event and the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the service execution information and service status information of the terminal for federated learning.

[0181] Optionally, the device further includes:

[0182] The first receiving module is used to receive a publishing message sent by the federated learning service application server via CSCF. The event header field of the publishing message indicates the federated task to be published, and the content message body of the publishing message carries the download address of the target federated learning model and the start time of the federated learning task.

[0183] The apparatus provided in this application embodiment can execute the above method embodiment, and its implementation principle and technical effect are similar, so it will not be described again here.

[0184] This application also provides a federated learning device applied to a federated learning business application server. For example... Figure 9 As shown, the federated learning device 900 includes: a processor 901 and a transceiver 902;

[0185] The processor 901 is used to determine the target terminal for performing federated learning based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information of the terminal used for federated learning.

[0186] The transceiver 902 is used to send a first instruction message to the target terminal, the first instruction message being used to instruct the target terminal to train the acquired target federated learning model; and to obtain the training result of the target terminal on the target federated learning model.

[0187] Optionally, the processor 901 is further configured to send a subscription message to the terminal via the CSCF; and to obtain service execution information and service status information for federated learning sent by the terminal via the CSCF, wherein the service execution information includes feature information and data information, and the service status information includes time information and network status information.

[0188] Optionally, the business execution information required for the federated learning task includes feature information and data information required to execute the federated learning task, and the business status information required for the federated learning task includes time point and duration information required to execute the federated learning task;

[0189] The processor 901 is also used for:

[0190] The business execution information required for the federated learning task is matched with the business execution information used by the terminal for federated learning to obtain the first matching result;

[0191] The business status information required for the federated learning task is matched with the business status information of the terminal used for federated learning to obtain a second matching result;

[0192] Terminals that successfully complete both the first and second matching results are identified as target terminals for performing federated learning.

[0193] The apparatus provided in this application embodiment can execute the above method embodiment, and its implementation principle and technical effect are similar, so it will not be described again here.

[0194] This application also provides a federated learning device for use on a terminal. For example... Figure 10 As shown, the federated learning device 1000 includes: a processor 1001 and a transceiver 1002;

[0195] The transceiver 1002 is used to send the terminal's business execution information and business status information for federated learning to the federated learning business application server.

[0196] The processor 1001 is used to train the acquired target federated learning model according to the first instruction message sent by the federated learning business application server.

[0197] The transceiver 1002 is also used to send the training results of the target federated learning model to the federated learning application server.

[0198] Optionally, the transceiver 1002 is further configured to: acquire its own business status information, and when its own business status information changes, send the changed business status information to the federated learning business application server; acquire the business status update information required for the federated learning task returned by the federated learning business application server;

[0199] The processor 1002 is also used to train the target federated learning model based on the business status update information.

[0200] Optionally, the processor 1001 is further configured to match the business state update information required for the federated learning task with the business state information of the terminal used for federated learning, and continue to train the target federated learning model when the matching is successful.

[0201] Optionally, the transceiver 1002 is further configured to:

[0202] The CSCF sends a first notification message to the federated learning application server. The message header field of the first notification message carries a subscription event, and the subscription status header field of the first notification message indicates that the subscription was successful.

[0203] The CSCF sends a second notification message to the federated learning application server. The message header field of the second notification message carries the subscription event, the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the terminal's business execution information and business status information for federated learning.

[0204] Optionally, the transceiver 1002 is further configured to:

[0205] The CSCF receives a publish message sent by the federated learning application server. The event header field of the publish message indicates the federated task to be published, and the content message body of the publish message carries the download address of the target federated learning model and the start time of the federated learning task.

[0206] The apparatus provided in this application embodiment can execute the above method embodiment, and its implementation principle and technical effect are similar, so it will not be described again here.

[0207] It should be noted that the division of units in the embodiments of this application is illustrative and only represents one logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated units described above can be implemented in hardware or as software functional units.

[0208] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a processor-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, 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.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0209] This application also provides a communication device, including: a transceiver, a memory, a processor, and a program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps in the federated learning method described above.

[0210] This application also provides a readable storage medium storing a program. When executed by a processor, this program implements the various processes of the above-described federated learning method embodiments and achieves the same technical effects. To avoid repetition, it will not be described again here. The readable storage medium can be any available medium or data storage device accessible to the processor, including but not limited to magnetic storage (e.g., floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO), etc.), optical storage (e.g., CDs, DVDs, BDs, HVDs, etc.), and semiconductor storage (e.g., ROMs, EPROMs, EEPROMs, non-volatile memory (NAND flash), solid-state drives (SSDs)).

[0211] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0212] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0213] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.

Claims

1. A federated learning method, applied to a federated learning business application server, characterized in that, include: Based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information obtained from the terminal used for federated learning, the target terminal for performing federated learning is determined. Send a first instruction message to the target terminal, wherein the first instruction message is used to instruct the target terminal to train the acquired target federated learning model; Obtain the training results of the target terminal on the target federated learning model; Obtain the business execution information and business status information used by the terminal for federated learning, including: A subscription message is sent to the terminal via the Call Session Control Function (CSCF); the message header field of the subscription message carries a subscription event, which is used to indicate the service readiness status of subscribing to the terminal. The terminal obtains service execution information and service status information for federated learning sent by the terminal through the CSCF. The service execution information includes feature information and data information, and the service status information includes time information and network status information.

2. The method according to claim 1, characterized in that, The business execution information required for the federated learning task includes the feature information and data information required to execute the federated learning task, and the business status information required for the federated learning task includes the time point and duration information required to execute the federated learning task. The step of determining the target terminal for performing federated learning based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information obtained from the terminal for federated learning, includes: The business execution information required for the federated learning task is matched with the business execution information used by the terminal for federated learning to obtain the first matching result; The business status information required for the federated learning task is matched with the business status information of the terminal used for federated learning to obtain a second matching result; Terminals that successfully complete both the first and second matching results are identified as target terminals for performing federated learning.

3. A federated learning method applied to a terminal, characterized in that, include: Send the terminal's business execution information and business status information for federated learning to the federated learning business application server; The target federated learning model is trained according to the first instruction message sent by the federated learning business application server. The training results of the target federated learning model are sent to the federated learning application server; The step of sending the terminal's business execution information and business status information for federated learning to the federated learning business application server includes: The call session control function (CSCF) sends a first notification message to the federated learning business application server. The message header field of the first notification message carries a subscription event, and the subscription status header field of the first notification message indicates that the subscription was successful. The CSCF sends a second notification message to the federated learning application server. The message header field of the second notification message carries the subscription event, the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the terminal's business execution information and business status information for federated learning.

4. The method according to claim 3, characterized in that, After training the acquired target federated learning model, the method further includes: The system obtains its own business status information and sends the changed business status information to the federated learning business application server when its own business status information changes. Obtain the business status update information required for the federated learning task returned by the federated learning business application server; The target federated learning model is trained based on the business status update information.

5. The method according to claim 4, characterized in that, The step of training the target federated learning model based on the business status update information includes: The business status update information required for the federated learning task is matched with the business status information of the terminal used for federated learning. If the match is successful, the target federated learning model continues to be trained.

6. The method according to claim 3, characterized in that, Before training the acquired target federated learning model, the method further includes: The CSCF receives a publish message sent by the federated learning application server. The event header field of the publish message indicates the federated task to be published, and the content message body of the publish message carries the download address of the target federated learning model and the start time of the federated learning task.

7. A federated learning device, applied to a federated learning business application server, characterized in that, include: The first determining module is used to determine the target terminal for performing federated learning based on the business execution information and business status information required for the federated learning task, and the business execution information and business status information obtained from the terminal for federated learning. The first sending module is used to send a first instruction message to the target terminal, wherein the first instruction message is used to instruct the target terminal to train the acquired target federated learning model. The second acquisition module is used to acquire the training results of the target terminal on the target federated learning model; Send a subscription message to the terminal via the Call Session Control Function (CSCF); The message header field of the subscription message carries a subscription event, which is used to indicate the service preparation status of the terminal subscribing to the service; the service execution information and service status information of the terminal for federated learning sent by the terminal through the CSCF are obtained, the service execution information includes feature information and data information, and the service status information includes time information and network status information.

8. A federated learning device, applied to a terminal, characterized in that, include: The first sending module is used to send the terminal's business execution information and business status information for federated learning to the federated learning business application server; The first processing module is used to train the acquired target federated learning model according to the first instruction message sent by the federated learning business application server. The second sending module is used to send the training results of the target federated learning model to the federated learning application server. The first sending module is used to send a first notification message to the federated learning business application server through the call session control function CSCF. The message header field of the first notification message carries a subscription event, and the subscription status header field of the first notification message indicates that the subscription was successful. The CSCF sends a second notification message to the federated learning application server. The message header field of the second notification message carries the subscription event, the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the terminal's business execution information and business status information for federated learning.

9. A federated learning device, applied to a federated learning business application server, characterized in that, include: Processor and transceiver; The processor is used to determine the target terminal for performing federated learning based on the business execution information and business status information required by the federated learning task, and the business execution information and business status information obtained by the terminal for federated learning. The transceiver is used to send a first instruction message to the target terminal, the first instruction message being used to instruct the target terminal to train the acquired target federated learning model; and to acquire the training result of the target terminal on the target federated learning model; The processor is also configured to send a subscription message to the terminal via the Call Session Control Function (CSCF); The message header field of the subscription message carries a subscription event, which is used to indicate the service preparation status of the terminal subscribing to the service; the service execution information and service status information of the terminal for federated learning sent by the terminal through the CSCF are obtained, the service execution information includes feature information and data information, and the service status information includes time information and network status information.

10. A federated learning device, applied to a terminal, characterized in that, include: Processor and transceiver; The transceiver is used to send the terminal's business execution information and business status information for federated learning to the federated learning business application server; The processor is configured to train the acquired target federated learning model according to the first instruction message sent by the federated learning business application server. The transceiver is also used to send the training results of the target federated learning model to the federated learning application server; The transceiver is also used for: The call session control function (CSCF) sends a first notification message to the federated learning business application server. The message header field of the first notification message carries a subscription event, and the subscription status header field of the first notification message indicates that the subscription was successful. The CSCF sends a second notification message to the federated learning application server. The message header field of the second notification message carries the subscription event, the subscription status header field of the second notification message indicates that the subscription process is in progress, and the content message body of the second notification message includes the terminal's business execution information and business status information for federated learning.

11. A communication device, comprising: A transceiver, a memory, a processor, and a program stored in the memory and executable on the processor; characterized in that, The processor is configured to read a program from memory to implement the steps in the federated learning method as described in any one of claims 1 to 2; or to implement the steps in the federated learning method as described in any one of claims 3 to 6.

12. A readable storage medium for storing a program, characterized in that, When the program is executed by the processor, it implements the steps of the federated learning method as described in any one of claims 1 to 2; or implements the steps of the federated learning method as described in any one of claims 3 to 6.