A first node, a third node, a fifth node and methods implemented thereby for handling an ongoing distributed machine learning or federated learning process
Patent Information
- Application Number
- JP2024544626
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-01-27
- Filing Date
- 2023-01-23
- Publication Date
- 2025-03-05
Smart Images

Figure 2025505952000001_ABST
Abstract
Description
[Technical field]
[0001] The present disclosure generally relates to a first node and methods implemented thereby for handling an ongoing distributed machine learning or federated learning process. The present disclosure also generally relates to a third node and methods implemented thereby for handling an ongoing distributed machine learning or federated learning process. The present disclosure further generally relates to a fifth node and methods implemented thereby for handling an ongoing distributed machine learning or federated learning process. [Background technology]
[0002] A computer system in a communication network or system may comprise one or more network nodes. A node may comprise one or more processors, memory, receiving ports, and sending ports that may perform different functions and actions with computer program code. A node may be, for example, a server. A node may perform their functions entirely on the cloud.
[0003] A communication system may cover a geographical area that may be divided into cell areas, each cell area being served by a certain type of node, a network node in a radio access network (RAN), a radio network node or a transmission point (TP), e.g., a base station (BS), e.g., an access node such as a radio base station (RBS), which may be referred to as, e.g., a gNB, an evolved Node B ("eNB"), "eNodeB", "Node B", "B-node", or a base transceiver station (BTS) depending on the technology and terminology used. The base stations may be of different classes, e.g., wide area base station, medium range base station, local area base station and home base station, based on the transmission power and thereby also on the cell size. A cell may be understood to be a geographical area where radio coverage may be provided by base stations at a base station site. One base station on a base station site may serve one or several cells. Furthermore, each base station may support one or several communication technologies. A communication network may also comprise network nodes that may serve receiving nodes, such as user terminals, by means of serving beams.
[0004] The standards body, the 3rd Generation Partnership Project (3GPP), is currently in the process of specifying a new air interface, called Next Generation Radio or New Radio (NR) or 5G-Universal Terrestrial Radio Access (UTRA), as well as the fifth-generation (5G) packet core network, sometimes called the 5G Core Network (5GC), abbreviated as 5GC.
[0005] Distributed Machine Learning and Federated Learning Distributed Machine Learning In distributed machine learning (DML), the training process can be performed using distributed resources, which can significantly accelerate the training speed and reduce the training time [1]. DML can reduce congestion in wireless networks by sending a limited amount of data to a central server for training tasks, while protecting confidential information and preserving data privacy of devices in the wireless network.
[0006] A parameter server (PS) framework may be understood as an underlying architecture for centrally assisted DML. FIG. 1 is a schematic diagram illustrating a description of the parameter server architecture. As shown in FIG. 1, there may be two types of nodes in the PS framework: servers and clients or workers. There may be one or more servers. In the non-limiting example of FIG. 1, there are four server nodes. The client nodes may be partitioned into groups. In the non-limiting example of FIG. 1, there are 12 client nodes partitioned into three groups. The server may be understood to maintain all or part of all parameters and aggregate weights from each client group [1]. The client nodes may perform the initial steps of the learning algorithm based on their access to training data and may use synchronized global gradients from the server nodes to perform backpropagation and weight refreshment. For example, the client may receive weights w of different features of the ML model from the server node and send back the respective weight refreshment as Δw. The server may then update the weights as w′=w−ηΔw. Clients may only share parameters with the server and never communicate with each other. The PS architecture has been widely applied to decentralize ML tasks on wired platforms.
[0007] Existing research on DML has largely focused on Federated Learning (FL), DML's popular architecture for decentralized generation of general ML models, its related techniques and protocols, and some application scenarios [2].
[0008] Federated Learning Federated learning (FL) can be understood as a distributed machine learning technique, as introduced in [3]. FL can be understood as enabling collaborative training of machine learning models among different parties under privacy restrictions. The main idea of FL can be understood as building machine learning models based on a dataset that can be distributed across multiple devices while preventing data leakage [4]. In a federated learning system, multiple parties can train a machine learning model collaboratively without exchanging their raw data. The output of the system can be a machine learning model for each party, which can be the same or different [3].
[0009] To train a machine learning model, there are three main components in a federated learning system: a party, e.g., a client; a manager, e.g., a server; and a communication-computation framework [3]. The parties can be understood as data owners and FL beneficiaries. The manager can be a powerful central server or one of the bodies that can govern the FL process under different settings. Computation can occur on the parties and the manager, and communication can take place between the parties and the manager. Usually, the purpose of computation can be for model training, and the purpose of communication can be for exchanging model parameters.
[0010] A basic and widely used framework in federated learning is the federated average (FedAvg) [5] (H. McMahan, E. Moore, D. Ramage, S. Hampson et al. "Communication-efficient learning of deep networks from decentralized data." arXiv preprint arXiv:1602.05629, 2016.) [3], as shown in the schematic diagram in Figure 2. At each iteration, the process for FL may be as follows. First, the server may send the current global model to the selected parties, as shown by number 1 in the figure. Then, the selected parties may update the global model with their local data, as shown by number 2 in the figure. Then, the updated model may be sent back to the server, as shown by number 3 in the figure. Finally, the server may average all the received local models to obtain a new global model, as shown by number 4 in the figure.
[0011] FedAvg may be understood to repeat the above process until a specified number of iterations is reached or the result of the loss function is lower than a threshold. The server's global model may be understood to be the final output [3][4].
[0012] Federated Learning Among Multiple NWDAF Instances In TR23.700-91v.17.0.0, section 6.24, a solution based on federated learning (FL) is given for key problem #2: multiple network data analysis function (NWDAF) instances and key problem #19: trained data model sharing among multiple NWDAF instances. As shown in the schematic diagram of Figure 3, which corresponds to Figure 6.24.1.1-1 of TR23.700-91v.17.0.0 and shows a hierarchical NWDAF deployment in a PLMN, multiple NWDAFs may be deployed in a large Public Land Mobile Network (PLMN). Therefore, it may be difficult for an NWDAF to centralize all the raw data that may be distributed in different areas. However, it may be desirable or reasonable for an NWDAF distributed in an area to share its models or data analysis with other NWDAFs.
[0013] Federated learning, also called federated machine learning, may be a possible solution to handle issues such as data privacy and security, model training efficiency, etc., which may be understood to be necessary for model sharing only, but not for raw data transfer centralized to a single NWDAF. For example, in the case of a multi-level NWDAF architecture, the NWDAF may be co-located with a 5GC network function (NF), such as a user plane function (UPF) or a session management function (SMF), and raw data may not be exposed due to privacy concerns and performance reasons. In such a case, federated learning may be understood to be a good way to enable a server NWDAF to cooperate with multiple localized NWDAFs to complete machine learning.
[0014] The main idea of federated learning can be understood to be to build a machine learning model based on a dataset that can be distributed in different network functions. For example, a client NWDAF deployed in a domain or network function can locally train a local ML model with its own data and share it to a server NWDAF. For local ML models from different client NWDAFs, the server NWDAF can aggregate them into a global or optimal ML model or ML model parameters and send them back to the client NWDAF for inference.
[0015] This solution, i.e., Solution #24 given in TR23.700-91v.17.0.0, section 6.24, attempts to relate the idea of federated learning to NWDAF-based architecture, which aims to investigate the following aspects: a) registration and discovery of multiple NWDAF instances supporting federated learning, and b) how ML models or ML model parameters should be shared during a federated learning training procedure among multiple NWDAF instances.
[0016] FIG. 4 is a signaling diagram corresponding to FIG. 6.24.1.2-1 of TR 23.700-91 v.17.0.0, showing a general procedure for federated learning among multiple NWDAF instances. In steps 1-3, the client NWDAFs may individually register their respective NF profiles, e.g., client NWDAF type, see TS 23.502, v17.3.0
[11] clause 5.2.7.2.2, the address of the client NWDAF, support of federated learning capability information, and analysis ID(s) with the Network Repository Function (NRF). In steps 4-6, the server NWDAF may discover one or more client NWDAF instances that can be used for federated learning via the NRF to obtain the Internet Protocol (IP) addresses of the client NWDAF instances by invoking the Nnrf_NFDiscovery_Request service operation with the analysis ID and support of federated learning capability information.
[0017] In FIG. 4, it is assumed that the analysis ID is pre-configured for a certain type of federated learning. Thus, the NRF may know that the server NWDAF is requesting to perform federated learning based on the pre-configuration. The NRF may also respond to the central NWDAF with the IP addresses of multiple NWDAF instances that may support the analysis ID. The analysis ID(s) that support federated learning may be configured by the operator. In step 7a, each client NWDAF may communicate licensing conditions for its data and training infrastructure to participate in the federated learning task. These conditions may be based on policies set up based on how sensitive the data may be, how much compute may be expected to be required to perform local training, who may get use of the trained model, etc. In step 7b, based on the response from the NRF, the server NWDAF may select which NWDAF clients may participate based on its desired licensing model. In step 7c, the server NWDAF may send a request including some parameters, such as an initial ML model, a data type list, and a maximum response time window, to the selected client NWDAFs that may participate in the federated learning according to steps 7a and 7b, to help the local model training for federated learning. In step 8, each client NWDAF may collect its local data by using the current mechanism in section 6.2, TS23.288, v.17.3.0 [8]. In step 9, during the federated learning training procedure, each client NWDAF may further train the retrieved ML model from the server NWDAF based on its own data and report the results of the ML model training, such as gradients, to the server NWDAF. The server NWDAF may interact with the client NWDAF to distribute and update the ML model. How the ML model and the local ML model training results should be transferred depends on the conclusion of KI#19 in TR23.700-91, v.17.0.0.In step 10, the server NWDAF may aggregate all the local ML model training results retrieved in step 9, such as gradients, to update the global ML model. In step 11, the server NWDAF may send the aggregated ML model information, the updated ML model to each client NWDAF for the next round of model training. In step 12, each client NWDAF may update its own ML model based on the aggregated model information, the updated ML model distributed by the server NWDAF in step 11. Steps 8-12 may be repeated until a training termination condition is reached, for example, a maximum number of iterations, or the result of the loss function is lower than a threshold. After the training procedure is terminated, the globally optimal ML model or ML model parameters may be distributed to the client NWDAF for inference.
[0018] Aggregation of analytics from multiple NWDAFs In TS 23.288 v.17.3.0, section 6.1A, analytics aggregation from multiple NWDAFs is described. In a multiple NWDAF deployment scenario, an NWDAF instance may be specialized to provide analytics for one or more analytics IDs. Each of the NWDAF instances may serve a certain area of interest or tracking area identification (TAI)(s). Multiple NWDAFs may collectively serve a particular analytics ID. An NWDAF may have the capability to support aggregation of analytics, for example, per analytics ID, received from other NWDAFs, possibly with analytics generated by itself. Procedures for analytics aggregation from multiple NWDAFs may be as specified in TS 23.288 v.17.3.0, section 6.1A.3, reproduced below under the subheading "Procedures for Analytics Aggregation."
[0019] Analytics Aggregation Analytics aggregation from multiple NWDAFs may be used to address cases where an NWDAF service consumer may request analytics ID(s), which may require multiple NWDAFs that may collectively serve the request. An aggregator NWDAF or aggregation point may be understood as an NWDAF instance with the additional capability of aggregating output analytics provided by other NWDAFs. This may be understood to be in addition to the normal NWDAF behavior, such as collecting data from other data sources so that it can generate its own output analytics. An aggregator NWDAF may be understood to be capable of splitting the areas of interest received from a consumer into sub-areas of interest based on the serving area of each NWDAF that will be requested for data analytics, and then sending out data analytics requests including the sub-areas of interest as analytics filters to the corresponding NWDAFs. An aggregator NWDAF may maintain information about discovered NWDAFs, their supported analytics IDs, and NWDAF serving areas. An aggregator NWDAF may have "analysis aggregation capabilities" registered in its NF profile in the NRF. The aggregator NWDAF may support the request and exchange of "analysis metadata information" between NWDAFs when required for aggregation of output analytics. "Analysis metadata information" may be understood as additional information related to the requested analysis ID(s) as specified in TS 23.288 v.17.3.0, clause 6.1.3. The aggregator NWDAF may also support the type of analysis, e.g., dataset statistical properties, output strategy, and data time window parameters, per analysis ID, as specified in TS 23.288 v.17.3.0, clause 6.1.3.
[0020] The NRF may store the NF profile of the NWDAF instance, including the "analysis aggregation capabilities" for the aggregator NWDAF and the "analysis metadata provisioning capabilities" when supported by that NWDAF. The NRF may return the NWDAF(s) that match the attributes provided in the Nnrf_NFDiscovery_Request, as specified in clause 5.2.7.3 of TS 23.502, v.17.3.0
[11] .
[0021] An NWDAF service consumer may request to receive or subscribe to receive analytics for one or more analytics IDs in a given area of interest, as specified in TS 23.288 v.17.3.0, clause 6.1. An NWDAF service consumer may use a discovery mechanism from the NRF, as specified in TS 23.501, v.17.3.0
[10] , clause 6.3.13, to identify NWDAFs with some capabilities, e.g., analytics aggregations that cover an area of interest and provide data / analysis for a particular TAI(s).
[0022] An NWDAF service consumer may be able to distinguish and select a preferred NWDAF when multiple NWDAFs may be returned based on its internal selection criteria, possibly taking into account registered capabilities and information in the NRF.
[0023] Procedure for analytical aggregation with provision for areas of interest The procedure for analysis aggregation shown in the signaling diagram of FIG. 5, which corresponds to FIG. 6.1A.3-1 of TS 23.288, v.17.3.0, may be used to address the case where an NWDAF service consumer may request analysis ID(s) for an area of interest, which may require multiple NWDAFs that can collectively serve the request. In steps 1a-b, an NWDAF service consumer may discover an NWDAF via an NRF. The NWDAF may send a Nnrf_NFDiscovery_Request_request, message to the NRF requesting NWDAF instances that can collectively cover the area of interest indicated in the request, e.g., analysis IDs 1, TAI-1, TAI-2, TAI-n. The NRF may return multiple NWDAF candidates that match the requested capabilities, area of interest, and supported analysis ID(s) in a Nnrf_NFDiscovery_Request_response message with the candidate NWDAFs. The NWDAF service consumer may select an NWDAF with analytics aggregation capabilities, e.g., NWDAF1, e.g., an aggregator NWDAF, based on its internal selection criteria, possibly taking into account registered NWDAF capabilities and information in the NRF. In step 2, the NWDAF service consumer may invoke a Nnwdaf_AnalyticsInfo_Request or Nnwdaf_AnalyticsSubscription_Subscribe service operation from the selected aggregator NWDAF, e.g., NWDAF1. In the request, the NWDAF service consumer may provide the requested analytics ID(s), e.g., Analytics ID1, along with the required areas of interest, e.g., TAI-1, TAI-2, TAI-n, if known to the NWDAF service consumer.In step 3, upon receiving the request in step 2, the aggregator NWDAF, e.g., NWDAF1, may determine other NWDAF instances that may collectively cover the area of interest indicated in the request, e.g., TAI-1, TAI-2, TAI-n, based on, e.g., settings or queries to the NRF and taking into account requests from NWDAF service consumers, e.g., analytics filter information. In the discovery request sent to the NRF, the aggregator NWDAF may indicate, e.g., as a query parameter, "analytics metadata provisioning capability," thus requesting the NRF to reply with those NWDAF instance(s) that may also support the "analytics metadata provisioning capability" functionality, if available, as indicated during the specific NWDAF instance registration procedure. In steps 4-5, the aggregator NWDAF, e.g., NWDAF1, may invoke a Nnwdaf_AnalyticsInfo_Request or Nnwdaf_AnalyticsSubscription_Subscribe service operation from each of the discovered / determined NWDAFs, e.g., NWDAF2 and NWDAF3, in step 3. The request may optionally indicate to the determined NWDAFs, e.g., NWDAF2 and / or NWDAF3, an "Analytics Metadata Request" parameter when analytics metadata may be supported by these NWDAFs. The request or subscription to the determined NWDAFs, e.g., NWDAF2 and / or NWDAF3, may also include dataset statistics properties, output strategy, and data time window. This may indicate to the determined NWDAFs that analytics ID output, when requested, may need to be generated based on such parameters. In steps 6-7a-b, the determined NWDAF, for example, NWDAF2 and / or NWDAF3, may reply or notify with the requested output analytics by sending either a Nnwdaf_AnalyticsInfo_Request response or a Nnwdaf_AnalyticsSubscription_Notify message.If an "analysis metadata request" was included in the request received by such NWDAF, in steps 4-5, the NWDAF may further return "analysis metadata information" used to generate an analysis output as specified in clause 6.1.3 of TS 23.288 v.17.3.0. In step 8, the aggregator NWDAF, e.g., NWDAF1, may aggregate the received analysis information, i.e., the aggregator NWDAF may generate a single output analysis based on the multiple analysis outputs and, optionally, the "analysis metadata information" received from the determined NWDAFs, e.g., NWDAF2 and NWDAF3. The aggregator NWDAF, e.g., NWDAF1, may also take into account its own analysis for TAI-n for the analysis aggregation. In steps 9a-b, the aggregator NWDAF, for example, NWDAF1, may send a response or notify the NWDAF service consumer by sending either a Nnwdaf_AnalyticsInfo_Request response or a Nnwdaf_AnalyticsSubscription_Notify message.
[0024] Once trained, and after some period of time, machine learning models trained using existing methods for distributed machine learning or federated learning in communication systems may lose accuracy or may need to be discarded and replaced with new models, which may involve the waste of computational and time resources. Summary of the Invention
[0025] As part of the development of the embodiments herein, one or more problems with existing technology are first identified and described.
[0026] In the course of operation of the federated network, changes may occur dynamically. For example, due to dynamic changes, a current client NWDAF for an ongoing distributed machine learning or federated learning process may not be able to provide sufficient computational resources after a period of use or may not be able to access further training data sets, which may lead to a decrease in training speed and performance degradation of the trained model or analysis. Meanwhile, a straggler, i.e., a less capable or weaker client NWDAF, may cause the learning / training process to terminate prematurely. In these cases, the NWDAF may not be able to provide a stable and high-quality service to the NWDAF service consumer.
[0027] In order to adapt the FL ML model to dynamic network changes, a new FL ML training process may need to be started from the beginning so that a new model that may be capable of predicting the network features of interest can be accurately predicted given the changed situation.
[0028] In accordance with the above, the objective of the embodiments herein is to improve the handling of distributed machine learning or federated learning processes. In particular, the embodiments herein are attracted to the dynamic addition of new client NWDAF(s) to the DML / FL multi-round learning / training process in 5GC when they may be required. Solutions in TR23.700-91, v.17.0.0 for FL among multiple NWDAF instances, e.g., solution #24, did not consider the dynamic addition of new NWDAF(s) during the DML / FL process. There is also no procedure in TS23.288, v.17.3.0 for the dynamic addition of new client NWDAF(s) to the DML / FL during the multi-round learning / training process in 5GC.
[0029] According to a first aspect of an embodiment of the present specification, the object is achieved by a computer-implemented method, performed by a first node, for handling an ongoing distributed machine learning or federated learning process in which the first node acts as an aggregator of data or analysis from a first group of second nodes. The first node operates in a communication system. The first node obtains one or more first instructions. The one or more first instructions are for one or more third nodes operating in the communication system. The one or more first instructions include respective information for the one or more third nodes. The respective information indicates that the one or more third nodes are eligible to be selected to participate in the ongoing distributed machine learning or federated learning process. The one or more first instructions are obtained during the ongoing distributed machine learning or federated learning process. The first node also provides an output of the ongoing distributed machine learning or federated learning process to a fourth node operating in the communication system. The output is based on the obtained one or more first instructions.
[0030] According to a second aspect of the embodiment of the present specification, the object is achieved by a computer-implemented method performed by a third node. The method is for handling an ongoing distributed machine learning or federated learning process. The third node operates in a communication system. The third node provides a first instruction regarding the third node to one of the first node and the fifth node operating in the communication system. The first node acts as an aggregator of data or analysis from a first group of second nodes in the ongoing distributed machine learning or federated learning process. The first instruction includes respective information regarding the third node. The respective information indicates that the third node is eligible to be selected to participate in the ongoing distributed machine learning or federated learning process. The first instruction is provided during the ongoing distributed machine learning or federated learning process.
[0031] According to a third aspect of the embodiment of the present specification, the object is achieved by a computer-implemented method performed by a fifth node. The method is for handling an ongoing distributed machine learning or federated learning process. The fifth node operates in a communication system. The fifth node obtains one or more first instructions from one or more third nodes operating in the communication system. The one or more first instructions include respective information indicating that the one or more third nodes are eligible to be selected to participate in the ongoing distributed machine learning or federated learning process. The one or more first instructions are obtained during the ongoing distributed machine learning or federated learning process. The fifth node also provides the one or more first instructions to a first node operating in the communication system. The first node acts as an aggregator of data or analysis from a first group of second nodes for the ongoing distributed machine learning or federated learning process. The one or more first instructions are provided during the ongoing distributed machine learning or federated learning process.
[0032] According to a fourth aspect of the embodiment herein, the object is achieved by a first node for handling a distributed machine learning or federated learning process configured to be in progress, the first node being configured to act as an aggregator of data or analysis from a first group of second nodes. The first node is configured to operate in a communication system. The first node is further configured to obtain one or more first instructions regarding one or more third nodes configured to operate in the communication system. The one or more first instructions are configured to include respective information regarding the one or more third nodes. The respective information is configured to indicate that the one or more third nodes are eligible to be selected to participate in the distributed machine learning or federated learning process configured to be in progress. The one or more first instructions are configured to be obtained during the distributed machine learning or federated learning process configured to be in progress. The first node is further configured to provide an output of the distributed machine learning or federated learning process configured to be in progress to a fourth node configured to operate in the communication system. The output is configured to be based on the one or more first instructions configured to be obtained.
[0033] According to a fifth aspect of the embodiment of the present specification, the object is achieved by a third node for handling a distributed machine learning or federated learning process configured to be in progress. The third node is configured to operate in a communication system. The third node is further configured to provide a first instruction regarding the third node to one of the first node and the fifth node configured to operate in the communication system. The first node is configured to act as an aggregator of data or analysis from a first group of second nodes in the distributed machine learning or federated learning process configured to be in progress. The first instruction is configured to include respective information regarding the third node. The respective information is configured to indicate that the third node is eligible to be selected to participate in the distributed machine learning or federated learning process configured to be in progress. The first instruction is configured to be provided during the distributed machine learning or federated learning process configured to be in progress.
[0034] According to a sixth aspect of the embodiment of the present specification, the object is achieved by a fifth node for handling a distributed machine learning or federated learning process configured to be in progress. The fifth node is configured to operate in a communication system. The fifth node is further configured to obtain one or more first instructions from one or more third nodes configured to operate in the communication system. The one or more first instructions may be configured to include respective information configured to indicate that the one or more third nodes are eligible to be selected to participate in the distributed machine learning or federated learning process configured to be in progress. The one or more first instructions are configured to be obtained during the distributed machine learning or federated learning process configured to be in progress. The fifth node is further configured to provide the one or more first instructions to the first node configured to operate in the communication system. The first node is configured to act as an aggregator of data or analysis from a first group of second nodes for the distributed machine learning or federated learning process configured to be in progress. The one or more first instructions are configured to be provided during the distributed machine learning or federated learning process configured to be in progress.
[0035] By the first node obtaining the one or more first instructions, the first node may be enabled to dynamically consider whether to select one or more third nodes to continue the ongoing distributed machine learning or federated learning process. This may then enable the first node to speed up the training of the ongoing distributed machine learning or federated learning process and / or increase the accuracy of the resulting machine learning model and / or avoid that the learning / training may terminate due to stragglers. The first node may then be enabled to provide the output of the ongoing distributed machine learning or federated learning process to a fourth node, e.g., a consumer of the service provided by the first node.
[0036] By providing the output of the ongoing distributed machine learning or federated learning process in this action to the fourth node, the first node may enable the fourth node to obtain a machine learning model or model-based analysis in a rapid manner and / or with increased accuracy.
[0037] By the third node providing a first instruction regarding the third node during an ongoing distributed machine learning or federated learning process, the first node may be enabled to consider whether the third node may be dynamically selected to be used to continue the ongoing distributed machine learning or federated learning process, which enables the advantages described above.
[0038] By the fifth node obtaining one or more first instructions from one or more third nodes operating in the communication system during an ongoing distributed machine learning or federated learning process and then providing the one or more first instructions to the first node, the first node may be enabled to consider whether one or more third nodes may be dynamically selected to be used to continue the ongoing distributed machine learning or federated learning process, which enables the advantages described above.
[0039] Example embodiments of the present specification will be described in more detail according to the following description and with reference to the accompanying drawings. [Brief description of the drawings]
[0040] [Figure 1] FIG. 1 is a schematic diagram illustrating a non-limiting example of a parameter server architecture, according to existing methods. [Diagram 2] FIG. 1 is a schematic diagram showing a non-limiting example of federated average (FedAvg) according to existing methods. [Diagram 3] FIG. 1 is a schematic diagram illustrating an embodiment of a hierarchical NWDAF deployment in a PLMN according to an existing method described in FIG. 6.24.1.1-1 of TR23.700-91 v.17.0.0. [Figure 4] FIG. 1 is a signaling diagram showing a general procedure for federated learning among multiple NWDAF instances according to the existing method described in FIG. 6.24.1.2-1 of TR23.700-91 v.17.0.0. [Diagram 5] FIG. 1 is a signaling diagram illustrating an embodiment of a procedure for analytics aggregation according to existing methods. [Figure 6] 1 is a schematic diagram illustrating a non-limiting example of a communication system according to embodiments herein. [Figure 7] 1 is a flowchart illustrating an embodiment of a method in a first node according to embodiments herein. [Figure 8] 11 is a flowchart illustrating an embodiment of a method in a third node according to embodiments herein. [Figure 9] 11 is a flowchart illustrating an embodiment of a method in a fifth node according to embodiments herein. [Figure 10] FIG. 2 is a schematic diagram illustrating a non-limiting example of signaling between nodes in a communication system according to embodiments herein. [Figure 11] 1A-1C are schematic block diagrams illustrating two non-limiting examples, a) and b), of a first node according to embodiments herein. [Figure 12] 1A-1C are schematic block diagrams illustrating two non-limiting examples, a) and b), of a third node according to embodiments herein. [Figure 13] 1A-1C are schematic block diagrams illustrating two non-limiting examples, a) and b), of a fifth node according to embodiments herein. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0041] Certain aspects of the present disclosure and embodiments thereof address one or more of the problems identified with existing methods and provide solutions to the problems described.
[0042] The embodiments herein may relate to dynamic addition of client NWDAF(s) during a distributed / federated learning process in a 5G core network. As a summarized overview, the embodiments herein may be understood to provide a procedure for dynamic addition of new client NWDAF(s) during a multi-round DML / FL learning / training process in 5GC. Two different cases are considered that may enable the server NWDAF to obtain information of new client NWDAF(s). That is, directly from new client NWDAF(s) or via a DML / FL control function (DLCF), e.g., NRF, Data Collection and Coordination Function (DCCF), etc., procedures are given separately for dynamic addition of new client NWDAF(s) to the DML / FL in those two cases.
[0043] Next, the embodiments will be described more fully below with reference to the attached drawings in which examples are shown. In this section, the embodiments of the present specification are shown by exemplary embodiments. Please note that these embodiments are not mutually exclusive. Elements from one embodiment or example may be implicitly assumed to be present in another embodiment or example, and it will be clear to those skilled in the art how those elements can be used in other exemplary embodiments. In order to simplify the description, not all possible combinations are described.
[0044] FIG. 6 illustrates two non-limiting examples, in panels "a" and "b," respectively, of a communication system 100 in which embodiments herein may be implemented. In some example implementations, such as that shown in the non-limiting example of FIG. 6a, the communication system 100 may be a computer network. In other example implementations, such as that shown in the non-limiting example of FIG. 6b, the communication system 100 may be implemented in a telecommunications system, which may also be referred to as a communication network, a cellular radio system, a cellular network, or a wireless communication system. In some examples, the communication system may comprise a network node that may serve a receiving node, such as a wireless device, using a serving beam.
[0045] In some examples, the communication system may be a network such as, for example, a 5G system, or a newer system supporting similar functionality. The communication system may be a Long-Term Evolution (LTE) network, such as, for example, LTE Frequency Division Duplex (FDD), LTE Time Division Duplex (TDD), LTE Half Duplex Frequency Division Duplex (HD-FDD), or LTE operating in unlicensed bands, Wideband Code Division Multiple Access (WCDMA), UTRA TDD, Global System for Mobile Communications (GSM) network, Enhanced Data Rates for GSM / GSM Evolution (EDGE) Radio Access Network (GERAN) network, Ultra Mobile Broadband (UMB), EDGE network, a network with any combination of radio access technologies (RATs), such as, for example, Multi-Standard Radio (MSR) base stations, multi-RAT base stations, ..., any 3rd Generation Partnership Project (3GPP) cellular network, Wireless Local Area Network (WLAN) or WiFi network, Worldwide Interoperability for Microwave Access (WiMAX), IPv6 over Low-Power Wireless Personal Area Network (6LoWPAN), or any other cellular network. The communication system may also support other technologies, such as IEEE 802.15.4-based low-power short-range networks such as Bluetooth Low Energy (BLE), Zigbee, Z-wave, Bluetooth Low Energy (BLE), or any cellular network or system. The communication system may support, for example, a Low Power Wide Area Network (LPWAN). LPWAN technologies may include Long Range Physical Layer Protocol (LoRa), Haystack, SigFox, LTE-M, and Narrowband IoT (NB-IoT).
[0046] The communication system 100 may comprise a plurality of nodes and / or operate in communication with other nodes, of which a first node 111, a first group of second nodes 112, one or more third nodes, which may include at least one third node 113, a fourth node 114, and a fifth node 115 are shown in FIG. 6. It can be understood that the communication system 100 may comprise more nodes than those represented on FIG. 6. In the non-limiting example of FIG. 6, the first group of second nodes 112 includes four second nodes, and the one or more third nodes also includes four third nodes. From among the first group of second nodes 112 and the one or more third nodes 113, one or more selected nodes 120 may be selected as described later in the embodiments herein with respect to FIG. 3. The one or more selected nodes 120 are shown as filled in black.
[0047] Any of the first node 111, the first group of second nodes 112, the one or more third nodes 113, the fourth node 114, and the fifth node 115 may be understood as a first computer system, a first group of second computer systems, one or more third computer systems, a fourth computer system, and a fifth computer system, respectively. In some examples, any of the first node 111, the first group of second nodes 112, the one or more third nodes 113, the fourth node 114, and the fifth node 115 may be implemented as standalone servers, for example, in a host computer in the cloud 125, as shown in the non-limiting example illustrated in panel b) of FIG. Any of the first node 111, the first group of second nodes 112, the one or more third nodes 113, the fourth node 114, and the fifth node 115 may in some examples be distributed nodes or distributed servers with some of their respective functionality implemented locally, e.g., by a client manager, and some of their functionality implemented in the cloud 120, e.g., by a server manager. In still other examples, any of the first node 111, the first group of second nodes 112, the one or more third nodes 113, the fourth node 114, and the fifth node 115 may also be implemented as processing resources in a server farm.
[0048] Any of the first node 111, the first group of second nodes 112, the one or more third nodes 113, the fourth node 114, and the fifth node 115 may be independent and separate nodes. Any of the first node 111, the first group of second nodes 112, the one or more third nodes 113, the fourth node 114, and the fifth node 115 may be co-localized or may be the same node.
[0049] In some example embodiments herein, the first node 111 may be understood as a node that may have the ability to aggregate data or analytics from other nodes, such as, for example, from the first group of second nodes 112, from any of the one or more third nodes 113, or from one or more selected nodes 120. The first node 111 may further have the ability to analyze the aggregated data or analytics, such as by performing DML / FL process operations on the aggregated data or analytics. A non-limiting example of the first node 111 in which the communication system 100 may be a 5G network may be a server NWDAF.
[0050] Any of the second nodes in the first group of second nodes 112 may be nodes capable of collecting data from the communication system 100 and training a local model in the DML / FL process. In some particular examples where the communication system 100 may be a 5G network, any of the second nodes in the first group of second nodes 112 may be a first group of client NWDAFs.
[0051] Any of the one or more third nodes 113 may be a node with the same functional description as any of the second nodes in the first group of second nodes 112. In some particular examples, the one or more third nodes 113 may be other client NWDAFs.
[0052] The fourth node 114 may be a node that has the capability to consume services provided by an analysis function in the communication system 100. In some particular examples where the communication system 100 may be a 5G network, the fourth node 114 may be an NWDAF service consumer.
[0053] The fifth node 115 may be a node capable of storing data grouped into different sets of subscription related information, such as, for example, subscription data, policy data, structured data for publication, and application data. The fifth node 115 may further be capable of providing data to another node, such as, for example, either the first node 111 or one or more third nodes 113, based on a request or subscription. In some particular examples where the communication system 100 may be a 5G network, the fifth node 115 may be a DLCF, such as, for example, an NRF or a Data Collection and Coordination Function (DCCF).
[0054] The communication system 100 may comprise a plurality of devices, such as a first plurality of devices 131 and a second plurality of devices 132, each represented in FIG. 6 as a single device. The first plurality of devices 131 may be in a first area of interest and the second plurality of devices 132 may be in a second area of interest. Any of the devices 131, 132 may also be known as, for example, a user equipment (UE), a wireless device, a mobile terminal, a wireless terminal and / or a mobile station, a mobile phone, a cellular telephone, or a laptop computer with wireless capabilities, an Internet of Things (IoT) device, a sensor, or a customer premises equipment (CPE), just to name a few further examples. Any of the devices 131, 132 in this context may be a portable, pocketable, handheld, computer-equipped, or vehicle-mounted mobile device capable of communicating voice and / or data with another entity, such as, for example, a server, a laptop computer, a personal digital assistant (PDA), or a tablet, a machine-to-machine (M2M) device, an Internet of Things (IoT) device, a device equipped with a radio interface, such as, for example, a sensor or camera, a printer or file storage device, a modem, a laptop embedded equipment (LEE), a laptop mounted equipment (LME), a USB dongle, a CPE, or any other wireless network unit capable of communicating over a wireless link in the communication system 100. Any of the devices 131, 132 may be wireless, i.e., any of the devices 131, 132 may be enabled to communicate wirelessly in the communication system 100 and, in some particular examples, may be capable of supporting beamforming transmissions. The communication may be performed, for example, between two devices, between a device and a wireless network node, and / or between a device and a server. Communications may be performed, for example, via a RAN and possibly one or more core networks, each comprised within communications system 100.
[0055] The communication system 100 may comprise one or more radio network nodes, of which a first plurality of radio network nodes 141 and a second plurality of radio network nodes 142 are shown in FIG. 6b. Any of the radio network nodes in the first plurality of radio network nodes 141 or in the second plurality of radio network nodes 142 may generally be a base station or a transmission point (TP), or any other network unit capable of serving wireless devices or machine-type nodes in the communication system 100. Any of the radio network nodes in the first plurality of radio network nodes 141 or in the second plurality of radio network nodes 142 may be, for example, a radio network node in a 5G gNB, a 4G eNB, or an alternative 5G radio access technology, for example, fixed or WiFi. Any of the radio network nodes in the first plurality of radio network nodes 141 or in the second plurality of radio network nodes 142 may be, for example, a wide area base station, a medium range base station, a local area base station, and a home base station, based on the transmission power, and thereby also on the coverage size. Any of the radio network nodes in the first plurality of radio network nodes 141 or in the second plurality of radio network nodes 142 may be stationary relay nodes or mobile relay nodes. Any of the radio network nodes in the first plurality of radio network nodes 141 or in the second plurality of radio network nodes 142 may support one or several communication technologies, the names of which may depend on the technology and terminology used. Any of the radio network nodes in the first plurality of radio network nodes 141 or in the second plurality of radio network nodes 142 may be directly connected to one or more networks and / or one or more core networks.
[0056] The communications system 100 covers a geographical area that may be divided into cell areas, each of which may be served by a radio network node, where one radio network node may serve one or several cells.
[0057] The first node 111 may communicate with any of the second nodes in the first group of second nodes 112 over a respective first link 151, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6. The first node 111 may communicate with the fifth node 115 over a respective second link 152, e.g., a wireless link or a wired link. The fifth node 115 may communicate with any of the one or more third nodes 113 over a respective third link 153, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6. The first node 111 may communicate with any of the one or more third nodes 113, directly or indirectly, over a respective fourth link 154, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6. The first node 111 may communicate with the fourth node 114 over a respective fifth link 155, e.g., a wireless link or a wired link. Any of the second nodes in the first group of second nodes 112 may communicate with any of the devices in the first plurality of devices 131, directly or indirectly, over a respective sixth link 156, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6. Any of the one or more third nodes 113 may communicate with any of the devices in the second plurality of devices 132, directly or indirectly, over a respective seventh link 157, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6. Any of the second nodes in the first group of second nodes 112 may communicate with any of the radio network nodes in the first plurality of radio network nodes 141, directly or indirectly, over a respective eighth link 158, e.g., a wireless link or a wired link. For simplicity, only one such link is shown in FIG.Any of the one or more third nodes 113 may communicate, directly or indirectly, with any of the radio network nodes in the second plurality of radio network nodes 142 over a respective ninth link 159, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6. Any of the radio network nodes in the first plurality of radio network nodes 141 may communicate, directly or indirectly, with any of the devices in the first plurality of device nodes 131 over a respective tenth link 160, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6. Any of the radio network nodes in the second plurality of radio network nodes 142 may communicate, directly or indirectly, with any of the devices in the second plurality of devices 312 over a respective eleventh link 161, e.g., a wireless link or a wired link. To simplify the diagram, only one such link is shown in FIG. 6.
[0058] The above-mentioned links may be direct links, or may extend through one or more computer systems or one or more core networks in the communication system 100, or may extend through an optional intermediate network, which may be one of a public network, a private network, or a hosted network, or a combination of two or more thereof, and which may be a backbone network or the Internet, if any, which is not shown in FIG.
[0059] In general, the use of "first," "second," "third," "fourth," "fifth," "sixth," "seventh," "eighth," "ninth," "tenth," and / or "eleventh" herein may be understood to be in any manner to indicate different elements or entities and may not confer a cumulative or chronological nature to the nouns that these adjectives modify.
[0060] Although terminology from Long Term Evolution (LTE) / 5G has been used in this disclosure to illustrate the embodiments herein, this should not be considered as limiting the scope of the embodiments herein to only the above-mentioned systems. Other wireless systems supporting similar or equivalent functions may also benefit from utilizing the ideas covered within this disclosure. In future communication networks, for example, in sixth generation (6G), the terms used herein may need to be reinterpreted in light of possible terminology changes in future technologies.
[0061] An embodiment of a computer-implemented method performed by the first node 111 will now be described with reference to the flowchart shown in Figure 7. The method may be understood as being for handling an ongoing distributed machine learning or federated learning process in which the first node 111 acts as an aggregator of data or analysis from a first group of second nodes 112. The first node 111 operates in a communication system 100.
[0062] In some embodiments where the communications system 100 may be a fifth generation (5G) network, the first node 111 may be a server NWDAF, the first group of second nodes 112 may be client NWDAFs, one or more third nodes 113 may be other client NWDAFs, the fourth node 114 may be an NWDAF service consumer, and the fifth node 115 may be a DLCF.
[0063] Several embodiments are included herein. The method may include the following actions: In some embodiments, all actions may be performed. In some embodiments, two or more actions may be performed. It is noted that the examples herein are not mutually exclusive. One or more embodiments may be combined, where applicable. To simplify the description, not all possible combinations are described. Components from one embodiment may be implicitly assumed to be present in another embodiment, and it will be clear to one skilled in the art how those components may be used in other exemplary embodiments. A non-limiting example of a method performed by the first node 111 is shown in FIG. 7.
[0064] In FIG. 7, optional actions are represented by dashed lines.
[0065] Action 701 In this action 701, the first node 111 may optionally register first information with the fifth node 115. The first information may indicate an ongoing distributed machine learning or federated learning process. The first information may indicate at least one of the following options: According to a first option, the first information may indicate an identifier of the ongoing distributed machine learning or federated learning process, such as, for example, an analysis ID and / or a DML / FL correlation ID. According to a second option, the first information may indicate second information about the first group of second nodes 112, which is used for the ongoing distributed machine learning or federated learning process, such as, for example, information of the client NWDAF(s).
[0066] By registering the first information with the fifth node 115 in this action 701, other nodes, such as one or more third nodes 113, may be made aware of the ongoing distributed machine learning or federated learning process and may thereby be enabled to inform the first node 111 or the fifth node 115 that the first node 111 or the fifth node 115 is eligible, e.g., willing, and / or able, to join the ongoing distributed machine learning or federated learning process or to provide other information that may be relevant to the ongoing distributed machine learning or federated learning process. This may be particularly useful in situations where the one or more third nodes 113 may not know about the first node 111. By the first node 111 having registered the first information with a known repository, such as the fifth node 115, the one or more third nodes 113 may dynamically access the first information via the fifth node 115.
[0067] Action 702 In this action 702, the first node 111 may send a previous instruction to the fifth node 115. The previous instruction may request one or more first instructions. The one or more first instructions include respective information on one or more third nodes 113. The respective information may indicate that the one or more third nodes 113 may be eligible to be selected to participate in the ongoing distributed machine learning or federated learning process. In other words, the first node 111 may ask the fifth node 115 to provide information on nodes that may be eligible to join the ongoing distributed machine learning or federated learning process.
[0068] In some examples, the first node 111 may perform this action 702 using a request-response mechanism by sending out the previous indication as a discovery request. As a further specific example where the first node 111 may be a server NWDAF and the fifth node 115 may be a DLCF, the first node 111 may send out a discovery request to a DLCF, e.g., an NRF. This may enable the fifth node 115 to respond to the first node 111 with information regarding one or more third nodes 113, e.g., new client NWDAF(s).
[0069] In other examples, the first node 111 may perform this action 702 using a subscribe-notify mechanism by sending out the previous instruction as a subscription so that the fifth node 115 may push information about one or more third nodes 113. As a further specific example where the first node 111 may be a server NWDAF and the fifth node 115 may be a DLCF, the first node 111 may subscribe to the fifth node 115, e.g., a DCCF. This may enable the fifth node 115 to push information about one or more third nodes 113, e.g., new client NWDAF(s), to the first node 111.
[0070] This sending in action 702 may be performed, for example, via the second link 152 .
[0071] This action 702 may be performed during an ongoing distributed machine learning or federated learning process, i.e., any time after the first node 111 has started an ongoing distributed machine learning or federated learning process with the first group of second nodes 112. For example, during provisioning of initial FL parameters to the first group of second nodes 112, during data collection by the first group of second nodes 112, during local model information reporting by the first group of second nodes 112, during model aggregation of local model information reported by the first group of second nodes 112, during distribution of aggregated model information, or during an iteration of these processes.
[0072] By sending the previous instruction in this action 702, the first node 111 may be enabled to dynamically become aware of the availability of one or more third nodes 113 to join the ongoing distributed machine learning or federated learning process, and thereby enabled to consider selecting any of the one or more third nodes 113 to join the ongoing distributed machine learning or federated learning process. It may be understood that adding any of the one or more third nodes 113 during the ongoing distributed machine learning or federated learning process may enable to speed up the training of the ongoing distributed machine learning or federated learning process and / or increase the accuracy of the resulting machine learning model, and / or avoid that the learning / training may be terminated due to stragglers. This may be understood as being because the one or more third nodes 113 may be able to collect data from additional areas of interest than the first group of second nodes 112, thereby increasing the pool of data, or by providing data regarding areas of interest to which the first group of second nodes 112 may not have access, thereby allowing for the weighting of factors not previously considered to be considered, and because the one or more third nodes 113 may be able to provide extra computational resources, thereby allowing for avoidance of learning / training being terminated by stragglers.
[0073] Action 703 In this action 703, the first node 111 obtains one or more first instructions regarding one or more third nodes 113 operating in the communication system 100. The one or more first instructions include respective information regarding the one or more third nodes 113. That is, each of the first instructions may include information regarding one of the one or more third nodes 113.
[0074] The respective information indicates that the one or more third nodes 113 are eligible to be selected to participate in the ongoing distributed machine learning or federated learning process. The one or more first instructions are obtained during the ongoing distributed machine learning or federated learning process.
[0075] The respective information included in the one or more first instructions may, for example, indicate one or more of the following options with regard to performing one or more training tasks of an ongoing distributed machine learning or federated learning process: According to a first option, the respective information may indicate a respective willingness to join the ongoing distributed machine learning or federated learning process, which may, for example, be identified using a DML / FL correlation ID, and / or an analysis ID. According to a second option, the respective information may indicate a respective first capability to complete one or more training tasks of the ongoing distributed machine learning or federated learning process, for example, available computational resources, achievable speed / required time to complete the task, etc. According to a third option, the respective information may indicate one or more respective characteristics of data available to the respective third node 113, for example, an area of interest, stored previous analysis and / or training data and results, etc. According to a fourth option, the respective information may indicate a respective supported machine learning framework, for example, DML / FL, etc. According to a fifth option, the respective information may indicate a respective time availability to participate in the ongoing distributed machine learning or federated learning process, i.e., available time to participate in the next round of training, for example, available duration, etc. Some of the one or more third nodes 113 may be available to only participate in the remaining partial rounds of training.
[0076] In a particular example, the one or more first instructions may be a single intent message that may include the following parameters: DML / FL correlation ID, analysis ID, capabilities, available data, supported ML frameworks, and / or available time to participate in training, etc.
[0077] Each may be understood to mean an associate of one of the one or more third nodes 113.
[0078] The obtaining, e.g. receiving, in this action 703 may be performed according to one of the following options: According to a first option, the obtaining in this action 703 may be performed directly, e.g. from one or more third nodes 113, respectively, via the respective fourth links 154. According to a second option, the obtaining in this action 703 may be performed via a fifth node 115 operating in the communication system 100, with which one or more third nodes 113 may have previously registered.
[0079] In an embodiment in which the first node 111 may be performing action 701, the obtaining in this action 703 of the one or more first instructions may be based on the registered first information. That is, before the first node 111 may, for example, obtain, e.g., receive, the one or more first instructions, the first node 111 may have made the fifth node 115 aware of the ongoing distributed machine learning or federated learning process, which may enable one or more third nodes 113 to be aware of the ongoing distributed machine learning or federated learning process.
[0080] In an embodiment where the first node 111 may be performing action 702, obtaining in this action 703 the one or more first instructions may be based on a previous instruction sent out. That is, the first node 111 may obtain, e.g., receive, the one or more first instructions as a response to a request to the fifth node 115 or as a notification to a subscription with the fifth node 115.
[0081] In this action 703, by the first node 111 obtaining one or more first instructions, the first node 111 may then be enabled to dynamically consider whether to select one or more third nodes 113 to continue the ongoing distributed machine learning or federated learning process. This may enable the first node 111 to speed up the training of the ongoing distributed machine learning or federated learning process, and / or increase the accuracy of the resulting machine learning model, and / or avoid that the learning / training may be terminated due to stragglers, as described above. The first node 111 may then be enabled to provide the output of the ongoing distributed machine learning or federated learning process to the fourth node 114, i.e., a consumer of the service provided by the first node 111.
[0082] Action 704 In this action 704, the first node 111 may select from a first group of second nodes 112, e.g., 1 to N, and one or more third nodes 113, e.g., N+1 to N+X, based on the respective one or more first instructions received, i.e., from N+X, select one or more selected nodes 120 to continue the ongoing distributed machine learning or federated learning process.
[0083] The first node 111 may perform a selection of one or more selected nodes 120 based on a comprehensive consideration of all the above information.
[0084] This selecting in action 704 may be performed, for example, before starting the next round of learning / training of an ongoing distributed machine learning or federated learning process.
[0085] The ongoing distributed machine learning or federated learning process may then continue using one or more selected nodes 120.
[0086] The output of the ongoing distributed machine learning or federated learning process may then be based on the ongoing distributed machine learning or federated learning process continued using one or more selected nodes 120.
[0087] That the output of the ongoing distributed machine learning or federated learning process may be based on the obtained one or more first instructions may thus include that the first node 111 may perform the selecting of this action 704 based on the one or more first instructions. The first node 111 may then continue or terminate the ongoing distributed machine learning or federated learning process using the one or more selected nodes 120, as described later, and the obtained output may thereby be based on the one or more first instructions.
[0088] The first group of second nodes 112 may be used as a first group of clients, and one or more selected nodes 120 may be selected to be used as a second group of clients to continue the ongoing distributed machine learning or federated learning process.
[0089] This action 704 may be performed during an ongoing distributed machine learning or federated learning process.
[0090] By selecting one or more selected nodes 120 from the first group of second nodes 112 and the one or more third nodes 113, the first node 111 may thereby be enabled to speed up training of an ongoing distributed machine learning or federated learning process and / or increase the accuracy of the resulting machine learning model and / or avoid that learning / training may be terminated due to stragglers, for reasons previously described.
[0091] Action 705 In this action 705, the first node 111 may determine at least one of the following based on, i.e. taking into account or using, the obtained respective information about the one or more selected nodes 120: According to a first option, the first node 111 may determine the time required to complete a service to a consumer of an ongoing distributed machine learning or federated learning process using one or more selected nodes 120; According to a first option, the first node 111 may determine a level of accuracy for serving a consumer using one or more selected nodes 120; According to a second option, the first node 111 may determine a level of accuracy for serving a consumer using one or more selected nodes 120; According to a third option, the first node 111 may determine a level of accuracy for serving a consumer using one or more selected nodes 120; According to a fourth ...
[0092] Determining may be understood as calculating, estimating, deriving, or obtaining from another node.
[0093] This action 705 may be performed during an ongoing distributed machine learning or federated learning process.
[0094] In this action 705, by determining the time or level of accuracy for providing the service required by the consumer using the current one or more selected nodes 120, e.g., the client NWDAF(s), the first node 111 may be enabled to determine whether the requirements from the consumer, e.g., the NWDAF service consumer, can be met by the current one or more selected nodes 120, e.g., the selected client NWDAF(s), and whether to continue the ongoing distributed machine learning or federated learning process using the current one or more selected nodes 120, e.g., the selected client NWDAF(s), or whether to terminate the ongoing distributed machine learning or federated learning process.
[0095] Action 706 In this action 706, the first node 111 may determine, based on the respective one or more first instructions obtained, whether the ongoing distributed machine learning or federated learning process should continue with any of the one or more selected nodes 120. The determining may be based on the respective one or more first instructions obtained may be understood to mean that the willingness, ability, availability, etc. of the one or more third nodes 113 may be taken into account when determining whether the ongoing distributed machine learning or federated learning process should continue with any of the one or more selected nodes 120.
[0096] This determining in action 706 may be further based on the time and / or level of accuracy for providing the service.
[0097] It may include that the first node 111 may perform the determining of this action 706, whereby an output of the ongoing distributed machine learning or federated learning process may be based on the obtained one or more first instructions. The first node 111 may then continue or terminate the ongoing distributed machine learning or federated learning process using the one or more selected nodes 120, as described later, whereby the obtained output may be based on the one or more first instructions and / or a level of accuracy for providing the service.
[0098] If the first node 111 decides to continue the ongoing distributed machine learning or federated learning process, the first node 11 may repeat any of actions 702-706 until the service required by the consumer can be satisfied or the training process can be otherwise terminated.
[0099] This action 706 may be performed during an ongoing distributed machine learning or federated learning process.
[0100] In this action 706, by determining whether the ongoing distributed machine learning or federated learning process should continue with any of the one or more selected nodes 120, the first node 111 may be enabled to know whether to terminate the procedure to avoid unnecessary resource usage and time consumption.
[0101] Action 707 In this action 707, the first node 111 may send respective second instructions to the one or more selected nodes 120. The respective second instructions may instruct the one or more selected nodes 120 that they have been selected to continue the ongoing distributed machine learning or federated learning.
[0102] This sending in action 707 may be performed, for example, via the respective fourth link 154 .
[0103] This action 707 may be performed during an ongoing distributed machine learning or federated learning process.
[0104] In this action 707, by sending respective second instructions to one or more selected nodes 120, the first node 111 may enable one or more third nodes 113 to know that they may initiate data collection and local training of corresponding machine learning models for an ongoing distributed machine learning or federated learning process.
[0105] Action 708 In this action 708, the first node 111 may use the third information provided by one or more selected nodes 120 to update the machine learning model resulting from the ongoing distributed machine learning or federated learning process.
[0106] The first node 111 may then send the updated machine learning model or one or more parameters, e.g., weights, associated with the updated machine learning model to one or more selected nodes 120. In other words, the first node 111 may distribute the updated, aggregated machine learning model.
[0107] The first node 111 may similarly update first information directing the ongoing distributed machine learning or federated learning process and provide the updated first information to the fifth node 115.
[0108] In this action 708, by updating the machine learning model, the first node 111 may be enabled to speed up the training of an ongoing distributed machine learning or federated learning process, as described above, and / or increase the accuracy of the resulting machine learning model.
[0109] Action 709 In this action 709, the first node 111 provides to a fourth node 114 operating in the communication system 100 the output of the ongoing distributed machine learning or federated learning process based on the obtained one or more first instructions.
[0110] This providing, eg, sending, in action 709 may be performed, for example, via fifth link 154.
[0111] The provided output may be based on the updated machine learning model in action 708. That is, the provided output may be the output of running the updated machine learning model.
[0112] In some embodiments in which action 704 may be performed, the output of an ongoing distributed machine learning or federated learning process may be based on the ongoing distributed machine learning or federated learning process continued using one or more selected nodes 120.
[0113] In some of the embodiments in which the first node 111 may be performing action 705, the provided output may be based on the results with respect to the determined time and / or level of accuracy. That is, an ongoing distributed machine learning or federated learning process that may be occurring in the machine learning model from which the output may be provided may be continued, updated, or terminated in consideration of the determined time and / or level of accuracy.
[0114] In some of the embodiments in which the first node 111 may be performing action 706, the output may be based on the outcome of the decision performed in action 706. That is, the output may be an output of an updated machine learning model, if the first node 111 may have determined to continue the process, or an output that the currently ongoing distributed machine learning or federated learning process should be continued, terminated, if the first node 111 may have so determined.
[0115] In other words, there may be two types of termination, which may correspond to two types of output: desired output and undesired output. In a desired termination, it may be understood that the training is finished, in which case the output may be the final result of the process, for example, a trained model and / or analysis. In an undesired termination, based on the time and / or accuracy determined in action 705 and the decision made in action 706, the output may be, for example, a termination instruction with or without intermediate results. Both may be possible.
[0116] In this action 709, by providing the output of the ongoing distributed machine learning or federated learning process to the fourth node 114, the first node 111 may enable the fourth node 114 to obtain the machine learning model or its parameters in a rapid manner and / or with increased accuracy, since the first node 111 may be able to dynamically add or reselect a group of clients from which to aggregate data and / or analysis to perform training. This may be applied in an embodiment where the training phase with the first node 111 may be over. The training may be terminated when a specified number of iterations, or a loss function result lower than a threshold, may have been reached. If this is not the case, by providing the output, the first node 111 may enable the fourth node 114 to avoid wasting time waiting for a service that cannot meet some requirements it may be requesting. The fourth node 114 may then be enabled to select a new first node 111 and / or additional one or more third nodes 113 in a timely manner to provide the required service.
[0117] An embodiment of a computer-implemented method performed by the third node 113 will now be described with reference to the flow chart shown in Figure 8. The method may be understood to be for handling an ongoing distributed machine learning or federated learning process. The third node 113 operates in the communication system 100.
[0118] The method may include the following actions. Several embodiments are included herein. In some embodiments, the method may include all the actions. In other embodiments, the method may include one or more actions. One or more embodiments may be combined, where applicable. To simplify the description, not all possible combinations are described. It should be noted that the examples herein are not mutually exclusive. Components from one example may be implicitly assumed to be present in another example, and it will be clear to one skilled in the art how those components may be used in other examples. In FIG. 8, optional actions are indicated with dashed lines.
[0119] Some of the detailed descriptions below correspond to the same remarks provided above with respect to the actions described for the first node 111 and therefore will not be repeated here for ease of explanation. For example, in some embodiments where the communication system 100 may be a 5G network, the first node 111 may be a server NWDAF, the first group of second nodes 112 may be client NWDAFs, and one or more third nodes 113 may be other client NWDAFs, i.e., the third node 113 may be another client NWDAF, the fourth node 114 may be an NWDAF service consumer, and the fifth node 115 may be a DLCF.
[0120] Action 801 In this action 801, the third node 113 may send another instruction to the fifth node 115. The another instruction may request a first piece of information, i.e., the first piece of information instructing an ongoing distributed machine learning or federated learning process.
[0121] This sending in action 801 may be performed, for example, via the respective third link 153 .
[0122] This action 801 may be performed in instances where the third node 113 may not have or have not obtained information about the first node 111, for example according to pre-configured information from Operations, Administration and Maintenance (OAM) or from its previous processing of the same or other tasks related to the first node 111.
[0123] The one or more actions may include at least one of managing the group of devices 130, configuring the group of devices 130, and monitoring the group of devices 130 for events.
[0124] This action 801 may be performed during an ongoing distributed machine learning or federated learning process.
[0125] Another instruction may be a query to the fifth node 115 to discover the first node 111. Another instruction may include an identifier of an ongoing distributed machine learning or federated learning process, for example, a DML / FL correlation ID, and / or an analysis ID.
[0126] Action 802 In this action 802, the third node 113 may obtain first information from at least one of the fifth node 115 and a memory storage, such as the first memory storage. The first information may indicate an ongoing distributed machine learning or federated learning process. The first information may indicate an identifier of the ongoing distributed machine learning or federated learning process.
[0127] The obtaining, eg, retrieving or receiving, in this action 802 may be performed, for example, via a respective third link 153 .
[0128] Obtaining the first information in this action 802 may be based on, for example in response to, another instruction sent.
[0129] This action 802 may be performed during an ongoing distributed machine learning or federated learning process.
[0130] Action 803 In this action 803, the third node 113 provides a first instruction regarding the third node 113 to one of the first node 111 and the fifth node 115 operating in the communication system 100. As previously described, the first node 111 serves as an aggregator of data or analysis from the first group of second nodes 112 in an ongoing distributed machine learning or federated learning process. The first instruction includes respective information regarding the third node 113. The respective information indicates that the third node 113 is eligible to be selected to participate in the ongoing distributed machine learning or federated learning process.
[0131] The first instructions are provided during an ongoing distributed machine learning or federated learning process, i.e. dynamically.
[0132] The respective information may indicate one or more of the following options, for example, with respect to performing one or more training tasks of an ongoing distributed machine learning or federated learning process: According to a first option, the respective information may indicate a respective willingness to join an ongoing distributed machine learning or federated learning process, which may be identified, for example, with a DML / FL correlation ID, and / or an analysis ID. According to a second option, the respective information may indicate a respective first capability to complete one or more training tasks of an ongoing distributed machine learning or federated learning process, for example, available computational resources, achievable speed / required time to complete a task, etc. According to a third option, the respective information may indicate one or more respective characteristics of data available to the third node 113, for example, an area of interest, stored previous analysis and / or training data and results, etc. According to a fourth option, the respective information may indicate a respective supported machine learning framework, for example, DML / FL, etc. According to a fifth option, the respective information may indicate a respective time availability to participate in an ongoing distributed machine learning or federated learning process, i.e., available time to participate in a next round of training, for example, available duration, etc. The third node 113 may be available to only participate in the remaining partial rounds of training.
[0133] The providing, e.g., sending, in this action 803 may be performed in one of by sending the first instruction directly to the first node 111 and by sending the first instruction to the fifth node 115 with which the third node 113 may have previously registered. The third node 113 may send the first instruction directly to the first node 111 if the third node 113 may already have or have acquired information about the first node 111 according to pre-configured information from the OAM or from its previous processing of the same or other task related to the first node 111 or through discovery from the fifth node 115.
[0134] In some embodiments, providing in this action 803 of the first instruction may include registering the respective information with the fifth node 115.
[0135] The providing of the first instruction in this action 803 may be based on the obtained first information. That is, the third node 113 may provide the first instruction after learning about the ongoing distributed machine learning or federated learning process. The first information may indicate an identifier of the ongoing distributed machine learning or federated learning process.
[0136] Action 804 After providing the first instructions, the third node 113 may be selected from the first group of second nodes 112 and one or more third nodes 113, including the third node 113, based on the provided first instructions, i.e., taking into account the provided first instructions, to be included in the one or more selected nodes 120 to continue the ongoing distributed machine learning or federated learning process.
[0137] The first group of second nodes 112 may be used as a first group of clients, and the third node 113 may be selected to be used as part of a second group of clients to continue the ongoing distributed machine learning or federated learning process.
[0138] In some of such embodiments, in this action 804, the third node 113 may receive a respective second instruction from the first node 111. The respective second instruction may indicate that the third node 113 has been selected to continue the ongoing distributed machine learning or federated learning.
[0139] This receiving in action 804 may be performed, for example, via the respective fourth link 154.
[0140] In some embodiments, the providing in action 803 of the first instruction may include registering the respective information with the fifth node 115, and the receiving in this action 804 of the respective second instruction may be based on the registered respective information. That is, the third node 113 may have been selected based on the respective information registered with the fifth node 115 that the first node 111 may have obtained.
[0141] The ongoing distributed machine learning or federated learning process may then be continued using the one or more selected nodes 120, and the output of the ongoing distributed machine learning or federated learning process may be based on, i.e., the result of, the ongoing distributed machine learning or federated learning process continued using the one or more selected nodes 120.
[0142] This action 804 may be performed during an ongoing distributed machine learning or federated learning process.
[0143] An embodiment of a computer-implemented method performed by the fifth node 115 will now be described with reference to the flow chart shown in Figure 9. The method may be understood to be for handling an ongoing distributed machine learning or federated learning process. The fifth node 115 operates in the communication system 100.
[0144] The method includes the following actions: In some embodiments, the method may include all the actions. In other embodiments, the method may include two or more actions. Several embodiments are included herein. One or more embodiments may be combined, where applicable. To simplify the description, not all possible combinations are described. It should be noted that the examples herein are not mutually exclusive. Components from one example may be implicitly assumed to be present in another example, and it will be clear to one of ordinary skill in the art how those components may be used in other examples.
[0145] Some of the detailed descriptions below correspond to the same remarks provided above with respect to the actions described for the first node 111 and thus are not repeated here for ease of explanation. For example, in some embodiments where the communications system 100 may be a 5G network, the first node 111 may be a server NWDAF, the first group of second nodes 112 may be client NWDAFs, one or more third nodes 113 may be other client NWDAFs, and the fifth node 115 may be a DLCF.
[0146] Action 901 In this action 901, the fifth node 115 may obtain, from the first node 111 and a memory storage, e.g., the first memory storage or the second memory storage, first information indicative of the ongoing distributed machine learning or federated learning process. The first information may indicate at least one of: a) an identifier of the ongoing distributed machine learning or federated learning process; and b) second information regarding the first group of second nodes 112 used for the ongoing distributed machine learning or federated learning process.
[0147] The obtaining, eg, retrieving or receiving, in this action 901 may be performed, for example, via the second link 152 .
[0148] This action 901 may be performed during an ongoing distributed machine learning or federated learning process.
[0149] Action 902 In this action 902, the fifth node 115 may obtain further instructions from one or more third nodes 113. The further instructions may request the first information.
[0150] This action 902 may be performed during an ongoing distributed machine learning or federated learning process.
[0151] Action 903 In this action 903, the fifth node 115 may provide the first information to one or more third nodes 113 based on the further instruction obtained.
[0152] This providing, e.g., sending, in action 903 may be performed, for example, via a respective third link 153.
[0153] This action 903 may be performed during an ongoing distributed machine learning or federated learning process.
[0154] Action 904 In this action 904, the fifth node 115 may receive a previous instruction from the first node 111. The previous instruction may request one or more first instructions.
[0155] This receiving in action 903 may be performed, for example, via the second link 152.
[0156] This action 904 may be performed during an ongoing distributed machine learning or federated learning process.
[0157] Action 905 The fifth node 115 obtains one or more first instructions from one or more third nodes 113 operating in the communication system 100. The one or more first instructions include respective information indicating that the one or more third nodes 113 are eligible to be selected to participate in an ongoing distributed machine learning or federated learning process. The one or more first instructions are obtained during an ongoing distributed machine learning or federated learning process.
[0158] The obtaining, e.g., receiving, in this action 905 may be performed, for example, via the respective third link 153.
[0159] The obtaining of the one or more first instructions in this action 905 may be based on the registered first information, i.e., obtaining the one or more first instructions may be based on an ongoing distributed machine learning or federated learning process being identified with an identifier and registered with the fifth node 115.
[0160] In some embodiments, obtaining in this action 905 the one or more first instructions may include registering the respective information from one or more third nodes 113.
[0161] Action 906 The fifth node 115 provides one or more first instructions to a first node 111 operating in the communication system 100. The first node 111 acts as an aggregator of data or analysis from the first group of second nodes 112 for an ongoing distributed machine learning or federated learning process, as described above. The one or more first instructions are provided during the ongoing distributed machine learning or federated learning process.
[0162] The respective information may indicate one or more of the following options, for example, with respect to performing one or more training tasks of an ongoing distributed machine learning or federated learning process: According to a first option, the respective information may indicate a respective willingness to join an ongoing distributed machine learning or federated learning process, which may be identified, for example, using a DML / FL correlation ID, and / or an analysis ID. According to a second option, the respective information may indicate a respective first capability to complete one or more training tasks of an ongoing distributed machine learning or federated learning process, for example, available computational resources, achievable speed / required time to complete a task, etc. According to a third option, the respective information may indicate one or more respective characteristics of data available to the respective third node 113, for example, an area of interest, stored previous analysis and / or training data and results, etc. According to a fourth option, the respective information may indicate a respective supported machine learning framework, for example, DML / FL, etc. According to a fifth option, the respective information may indicate a respective time availability to participate in an ongoing distributed machine learning or federated learning process, i.e., available time to participate in the next round of training, for example, available duration, etc. Some of the one or more third nodes 113 may be available to only participate in the remaining partial rounds of training.
[0163] In some embodiments, obtaining in action 905 one or more first instructions may include registering the respective information from one or more third nodes 113. Providing in this action 906 one or more first instructions may be based on the registered respective first information. That is, the fifth node 115 may provide by itself only one or more first instructions of one or more third nodes 113 that may be most suitable for continuing the ongoing distributed machine learning or federated learning process, which may match, for example, any requirements that the first node 111 may have indicated in a previous instruction, or characteristics indicated in the first information, taking into account the registered respective information.
[0164] Next, two non-limiting examples of methods in the communication system 100 according to embodiments herein are described in the following figures.
[0165] FIG. 10 is a signaling diagram illustrating two non-limiting examples of a method implemented in a communication system 100 according to an embodiment herein. In the non-limiting examples illustrated in FIG. 10, a first node 111 is a server NWDAF, a first group of second nodes 112 includes client NWDAFs, one or more third nodes 113 are new client NWDAFs, and a fifth node 115 is a DLCF, e.g., NRF, DCCF, etc. FIG. 10 illustrates a procedure for dynamic addition of new client NWDAF(s) to the DML / FL process described with respect to FIG. 7-FIG. 9 in 5GC. The first group of second nodes 112, in FIG. 10 client NWDAFs 1-N, have been selected by the first node 111 to participate in the current round of DML / FL. One or more third nodes 113, in FIG. 10 client NWDAFs N+1-N+X, which are new client NWDAFs, are willing and / or capable of joining the next round of the training process. There may be two possible cases for the first node 111 to obtain information of the new client NWDAF(s): directly from the new client NWDAF(s) or via the fifth node 115, which is a DLCF. In a first group of embodiments, referred to as case #1 in FIG. 10, one or more third nodes 113 may directly inform the first node 111. In case #1, one or more third nodes 113, which may be willing and / or capable of joining the DML / FL process, may know information about the first node 111 and directly inform the first node 111. The corresponding procedure for dynamic addition of the new client NWDAF(s) to the DML / FL may be as follows in such a case: In step 0, the first node 111 may register with the fifth node 115 for a DML / FL procedure according to actions 701 and 901 with the following parameters: DML / FL correlation ID, analysis ID and client NWDAF information(s).In step 1, according to option 1a, if information about the first node 111 is known, one or more third nodes 113, i.e., new client NWDAF(s), may inform the first node 111 regarding their willingness to join the DML / FL process during the DML / FL training process according to action 803. The willingness message may include the following parameters: DML / FL correlation ID, analysis ID, capabilities, available data, supported ML frameworks, and available time to participate in the training, etc. The one or more third nodes 113 may already have or may obtain information about the first node 111 according to pre-configured information from the OAM or from its previous processing of the same or other tasks related to the first node 111. Alternatively, the one or more third nodes 113 may send a query to the fifth node 115 to discover the first node 111 according to action 801. The query may include the following parameters: DML / FL correlation ID and analysis ID. In step 2, before starting the next round of learning / training, the first node 111 may select one or more selected nodes 120 from the NWDAFs 1-N+X according to action 704 based on the following updated information of the client NWDAF(s): a) indication of willingness to join the DML / FL training process; b) capability to complete the training task, e.g., available computational resources, achievable speed / required time to complete the task, etc.; c) available data, e.g., area of interest, stored previous analysis and / or training data and results, etc.; d) supported ML frameworks, e.g., DML / FL, etc.; and e) available time to participate in the next round of training, e.g., available duration, etc. Some of the one or more selected nodes 120 may be available only to participate in the remaining partial round of training.The first node 111 may perform the selection of the client NWDAF(s) based on a comprehensive consideration of all the above information. In step 3, the first node 111 may estimate the time and accuracy level for providing the required service to the consumer with the current one or more selected nodes 120 according to action 705, and may determine whether to continue with the DML / FL according to action 706. If model provision is required by the fourth node 114, the time to complete training may be estimated. If analysis results, e.g., statistics or predictions, are required, the time to complete training and inference may be estimated. Next, in step 4a, if the first node 111 decides to continue, as determined in step 3, the first node 111 may send a response to one or more selected nodes 120 according to action 707, and may update the model aggregation and perform distribution of the aggregated model according to action 708, for example, the first node 111 may forward the model information metadata, weights, etc. to one or more selected nodes 120 and inform the fifth node 115 about the updated DML / FL procedure information. In step 4b, if the first node 111 decides not to continue, as determined in step 3, the first node 111 may terminate the training process. If the first node 111 decides not to terminate the process, steps 1-4, 4a may be repeated until the service required by the consumer can be satisfied or the training process can be terminated in step 4b.
[0166] In a second group of embodiments, referred to as case #2 in FIG. 10, the first node 111 may obtain information about one or more third nodes 113 via the fifth node 115. In case #2, one or more third nodes 113, i.e., new client NWDAF(s), which may be willing and / or capable of joining the DML / FL process, do not know information about the first node 111. The first node 111 may obtain information about one or more third nodes 113 dynamically via the fifth node 115. The corresponding procedure for dynamic addition of new client NWDAF(s) to the DML / FL may be as follows: Step 0 for case #2 is the same as step 0 for case #1. In step 1b, one or more third nodes 113 may register their respective profiles with the fifth node 115, e.g., NRF and / or DCCF, etc., according to action 801 and action 803, along with their willingness to join the DML / FL process during the DML / FL training process. The willingness message may include the following parameters: DML / FL correlation ID, analysis ID, capabilities, available data, supported ML frameworks, and available time to participate in the training, etc. The first node 111 may obtain information about one or more third nodes 113 from the fifth node 115 in step 1c or 1d. In step 1c, obtaining may be performed via a request-response. The first node 111 may send a discovery request to the first node 111, e.g., NRF, according to action 702. The fifth node 115 may then respond to the first node 111 with information about one or more third nodes 113 according to action 906. In step 1d, obtaining may alternatively be performed via subscribe-notify: The first node 111 may subscribe to the fifth node 115, for example, the DCCF.The fifth node 115 may then push information about one or more third nodes 113 to the first node 111. The one or more third nodes 113 may register their profiles with the fifth node 115, e.g., NRF and / or DCCF, etc., dynamically during the DML / FL process. The first node 111 may discover information about one or more third nodes 113 from the fifth node 115, as described in step 1c. Or, the fifth node 115 may push information about one or more third nodes 113 to the first node 111, as described dynamically in step 1d. Steps 2-4 for case #2 may be understood to be the same as steps 2-4 for case #1.
[0167] Figure 11 shows in panels a) and b), respectively, two different examples of configurations that the first node 111 may have to perform the method actions described above with respect to Figures 7 and / or 10. In some embodiments, the first node 111 may have the following configurations shown in Figure 11a. The first node 111 may be understood to be for handling a distributed machine learning or federated learning process that is configured to be ongoing, where the first node 111 is configured to act as an aggregator of data or analysis from a first group 112 of second nodes. The first node 111 is configured to operate in a communication system 100.
[0168] Several embodiments are included herein. Components from one embodiment may be implicitly assumed to be present in another embodiment, and it will be clear to one skilled in the art how those components may be used in other exemplary embodiments. In FIG. 11, optional boxes are indicated by dashed lines. Some detailed descriptions below correspond to the same references provided above with respect to the actions described for the first node 111, and thus will not be repeated here. For example, the communication system 100 may be configured to be a 5G network, a) the first node 111 may be configured to be a server NWDAF, b) a first group of second nodes 112 may be configured to be client NWDAFs, c) one or more third nodes 113 may be configured to be other client NWDAFs, d) a fourth node 114 may be configured to be an NWDAF service consumer, and e) a fifth node 115 may be configured to be a DLCF.
[0169] The first node 111 is configured to obtain, e.g., by an obtaining unit 1101 in the first node 111 configured to do so, one or more first instructions regarding one or more third nodes 113 configured to operate in the communication system 100. The one or more first instructions are configured to include respective information regarding the one or more third nodes 113. The respective information is configured to indicate that the one or more third nodes 113 are eligible to be selected to participate in a distributed machine learning or federated learning process configured to be in progress. The one or more first instructions are configured to be obtained during the distributed machine learning or federated learning process configured to be in progress.
[0170] The first node 111 is also configured to provide, to a fourth node 114 configured to operate in the communication system 100, an output of the distributed machine learning or federated learning process that is configured to be in progress based on the one or more first instructions that are configured to be obtained, for example by a providing unit 1102 in the first node 111 configured to do so.
[0171] In some embodiments, the first node 111 may also be configured to select, based on the respective one or more first instructions configured to be received, one or more selected nodes 120 from the first group of second nodes 112 and the one or more third nodes 113 to continue the distributed machine learning or federated learning process that is configured to be ongoing, e.g., by a selection unit 1103 in the first node 111 configured to do so. The distributed machine learning or federated learning process that is configured to be ongoing may be configured to be continued using the one or more selected nodes 120. The output may be configured to be based on the distributed machine learning or federated learning process that is configured to be ongoing that has been continued using the one or more selected nodes 120.
[0172] In some embodiments, the output may be configured to be based on the one or more first instructions configured to be obtained may be configured to include that the first node 111 may also be configured to select, based on the respective one or more first instructions configured to be received, one or more selected nodes 120 from the first group of second nodes 112 and the one or more third nodes 113 to continue the distributed machine learning or federated learning process configured to be ongoing, e.g., by a selection unit 1103 in the first node 111 configured to do so. The distributed machine learning or federated learning process configured to be ongoing may be configured to be continued using the one or more selected nodes 120. The output may be configured to be based on the distributed machine learning or federated learning process configured to be ongoing continued using the one or more selected nodes 120.
[0173] In some embodiments, the first node 111 may also be configured to send respective second instructions to the one or more selected nodes 120, e.g., by a sending unit 1104 in the first node 111 configured to do so. The respective second instructions may be configured to instruct the one or more selected nodes 120 that they have been selected to continue the distributed machine learning or federated learning that is configured to be in progress.
[0174] In some embodiments, the output may be configured to be based on the one or more first instructions configured to be obtained may be configured to include that the first node 111 may also be configured to send respective second instructions to the one or more selected nodes 120, e.g., by a sending unit 1104 in the first node 111 configured to do so. The respective second instructions may be configured to instruct the one or more selected nodes 120 that they have been selected to continue the distributed machine learning or federated learning configured to be ongoing.
[0175] In some embodiments, the first node 111 may also be configured to determine, based on the respective one or more first instructions configured to be obtained, whether the distributed machine learning or federated learning process configured to be in progress should be continued with any of the one or more selected nodes 120, e.g., by a decision unit 1105 in the first node 111 configured to do so. An output may be configured to be based on a result of the decision.
[0176] In some embodiments, the output may be configured to be based on the one or more first instructions configured to be obtained may be configured to include that the first node 111 may also be configured to determine, based on the respective one or more first instructions configured to be obtained, whether the distributed machine learning or federated learning process configured to be in progress should be continued with any of the one or more selected nodes 120, e.g., by a decision unit 1105 in the first node 111 configured to do so. The output may be configured to be based on a result of the decision.
[0177] In some embodiments, the first group of second nodes 112 may be configured to be used as a first group of clients, and one or more selected nodes 120 may be configured to be selected to be used as a second group of clients to continue the distributed machine learning or federated learning process that is configured to be in progress.
[0178] In some embodiments, the first node 111 may also be configured to update the machine learning model configured to result from the distributed machine learning or federated learning process configured to be ongoing using the third information configured to be provided by the one or more selected nodes 120, e.g., by an update unit 1106 in the first node 111 configured to do so. The output configured to be provided may be configured to be based on the machine learning model configured to be updated.
[0179] In some embodiments, the respective information configured to be included in the one or more first instructions may be configured to indicate one or more of: a) a respective willingness to join a distributed machine learning or federated learning process configured to be in progress; b) a respective first ability to complete one or more training tasks of a distributed machine learning or federated learning process configured to be in progress; c) one or more respective characteristics of data available to the respective third node 113; d) a respective supported machine learning framework; and e) a respective time availability to participate in a distributed machine learning or federated learning process configured to be in progress.
[0180] In some embodiments, the first node 111 may also be configured to determine, based on the respective information about the one or more selected nodes 120 configured to be obtained, at least one of: a) a time required to complete servicing to the consumer of the distributed machine learning or federated learning process configured to be in progress using the one or more selected nodes 120; and b) a level of accuracy for servicing to the consumer using the one or more selected nodes 120, e.g., by a determining unit 1105 in the first node 111 configured to do so. The output configured to be provided may be configured to be based on the result regarding the time and / or the level of accuracy configured to be determined.
[0181] In some embodiments, the obtaining may be configured to be performed one of: a) directly from one or more third nodes 113, respectively; and b) via a fifth node 115 configured to operate in the communication system 100, with which one or more third nodes 113 may be configured to have previously registered.
[0182] In some embodiments, the first node 111 may also be configured to register with the fifth node 115 first information configured to indicate the distributed machine learning or federated learning process configured to be in progress, for example by a registration unit 1107 in the first node 111 configured to do so. The first information may be configured to indicate at least one of: a) an identifier of the distributed machine learning or federated learning process configured to be in progress; and b) second information regarding the first group 112 of second nodes configured to be used for the distributed machine learning or federated learning process configured to be in progress. Obtaining the one or more first instructions may be configured to be based on the first information configured to be registered.
[0183] In some embodiments, the first node 111 may also be configured to send a previous instruction to the fifth node 115, for example by a sending unit 1104 in the first node 111 configured to do so. The previous instruction may be configured to request the one or more first instructions. Obtaining the one or more first instructions may be configured to be based on the previous instruction configured to be sent.
[0184] The embodiments herein may be implemented through one or more processors, such as the processor 1108 in the first node 111 shown in FIG. 11, with computer program code for carrying out the functions and actions of the embodiments herein. The above-mentioned program code may also be provided as a computer program product, for example in the form of a data carrier which, when loaded into the first node 111, carries the computer program code for carrying out the embodiments herein. One such carrier may be in the form of a CD ROM disk. However, such a carrier may be realised on other data carriers, such as a memory stick. The computer program code may further be provided as pure program code on a server and downloaded to the first node 111.
[0185] The first node 111 may further comprise a memory 1109 comprising one or more memory units. The memory 1109 is configured to be used to store acquired information, store data, settings, scheduling, applications, etc., for implementing the methods herein when running in the first node 111.
[0186] In some embodiments, the first node 111 may receive information from, for example, the first group of second nodes 112, one or more third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, and / or another node or device through the receiving port 1110. In some examples, the receiving port 1110 may be connected to, for example, one or more antennas in the first node 111. In other embodiments, the first node 111 may receive information from another structure in the communication system 100 through the receiving port 1110. Since the receiving port 1110 may be in communication with the processor 1108, the receiving port 1110 may then forward the received information to the processor 1108. The receiving port 1110 may also be configured to receive other information.
[0187] The processor 1108 in the first node 111 may be further configured to transmit or send information to, for example, the first group of second nodes 112, one or more third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, another node or device and / or another structure in the communication system 100 through an outgoing port 1111, which may be in communication with the processor 1108 and the memory 1109.
[0188] Those skilled in the art will also appreciate that any of the above-described units 1101-1107 may refer to a combination of analog and digital circuitry and / or one or more processors configured with software and / or firmware stored in memory, for example, that, when executed by one or more processors, such as processor 1108, performs as described above. One or more of these processors, as well as other digital hardware, may be included in a single application specific integrated circuit (ASIC), or several processors and various digital hardware may be distributed among several separate components, whether individually packaged or assembled into a system on a chip (SoC).
[0189] Any of the above described units 1101-1107 may be a processor 1108 of the first node 111, or an application running on such a processor.
[0190] Thus, the methods according to the embodiments described herein for the first node 111 may be implemented by a computer program 1112 product comprising instructions, i.e., software code portions, that when executed on the at least one processor 1108 cause the at least one processor 1108 to perform the actions described herein to be performed by the first node 111. The computer program 1112 product may be stored in a computer readable storage medium 1113. The computer readable storage medium 1113 storing the computer program 1112 may comprise instructions that when executed on the at least one processor 1108 cause the at least one processor 1108 to perform the actions described herein to be performed by the first node 111. In some embodiments, the computer readable storage medium 1113 may be a non-transitory computer readable storage medium, such as a CD ROM disk, a memory stick, or may be stored in a cloud space. In other embodiments, the computer program 1112 product may be stored on a carrier containing the computer program, the carrier being an electronic signal, an optical signal, a radio signal, or one of the computer readable storage media 1113 as described above.
[0191] The first node 111 may comprise an interface unit for facilitating communication between the first node 111 and other nodes or devices, e.g., the first group of second nodes 112, one or more third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, another node or device and / or another structure in the communication system 100. In some particular examples, the interface may include, for example, a transceiver configured to transmit and receive radio signals over an air interface according to a suitable standard.
[0192] In other embodiments, the first node 111 may comprise the following configuration shown in Fig. 11b: The first node 111 may comprise a processing circuit 1108, one or more processors, such as, for example, processor 1108, and a memory 1109 in the first node 111. The first node 111 may also comprise a radio circuit 1114, which may comprise, for example, a receiving port 1110 and a sending port 1111. The processing circuit 1108 may be configured or operable to perform method actions according to Figs. 7 and / or 10 in a manner similar to that described with respect to Fig. 11a. The radio circuitry 1114 may be configured to set up and maintain wireless connections with at least the first group of second nodes 112, one or more third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, other nodes or devices and / or other structures in the communications system 100.
[0193] Accordingly, embodiments herein also relate to a first node 111 operable to handle a distributed machine learning or federated learning process configured to be ongoing, where the first node 111 is configured to act as an aggregator of data or analytics from a first group of second nodes 112, where the first node 111 is operable to operate in a communication system 100. The first node 111 may comprise a processing circuit 1108 and a memory 1109, where the memory 1109 includes instructions executable by the processing circuit 1108, whereby the first node 111 is further operable to perform actions described herein with respect to the first node 111, e.g., in FIG. 7 and / or FIG. 10.
[0194] Figure 12 shows in panels a) and b), respectively, two different examples of configurations that the third node 113 may have to perform the method actions described above with respect to Figures 8 and / or 10. In some embodiments, the third node 113 may have the following configurations shown in Figure 12a. The third node 113 may be understood to be for handling a distributed machine learning or federated learning process that is configured to be ongoing. The third node 113 is configured to operate in the communication system 100.
[0195] Several embodiments are included herein. Components from one embodiment may be implicitly assumed to be present in another embodiment, and it will be clear to one skilled in the art how those components may be used in other exemplary embodiments. In FIG. 12, optional boxes are indicated by dashed lines. Some detailed descriptions below correspond to the same references provided above with respect to the actions described for the third node 113, and thus will not be repeated here. For example, the communication system 100 may be configured to be a 5G network, a) the first node 111 may be configured to be a server NWDAF, b) the first group of second nodes 112 may be configured to be client NWDAFs, c) one or more third nodes 113 may be configured to be other client NWDAFs, e.g., the third node 113 may be configured to be another client NWDAF, and d) the fifth node 115 may be configured to be a DLCF.
[0196] The third node 113 may be configured to provide a first instruction regarding the third node 113 to one of the first node 111 and the fifth node 115 configured to operate in the communication system 100, for example by a providing unit 1201 in the third node 113 configured to do so. The first node 111 is configured to act as an aggregator of data or analysis from the first group 112 of second nodes in a distributed machine learning or federated learning process configured to be ongoing. The first instruction is configured to include respective information regarding the third node 113. The respective information is configured to indicate that the third node 113 is eligible to be selected to participate in the distributed machine learning or federated learning process configured to be ongoing. The first instruction is configured to be provided during the distributed machine learning or federated learning process configured to be ongoing.
[0197] In some embodiments, the third node 113 may be selected from the first group of second nodes 112 and one or more third nodes 113 configured to include the third node 113 based on a first instruction configured to be provided to be included in the one or more selected nodes 120 to continue the distributed machine learning or federated learning process configured to be ongoing. In some of such embodiments, the third node 113 may also be configured to receive a respective second instruction from the first node 111, for example, by a receiving unit 1202 in the third node 113 configured to do so. The respective second instruction may be configured to indicate that the third node 113 has been selected to continue the ongoing distributed machine learning or federated learning.
[0198] In some embodiments, the distributed machine learning or federated learning process that was set to be ongoing may be continued using one or more selected nodes 120, and an output of the distributed machine learning or federated learning process that was set to be ongoing may be configured to be based on the distributed machine learning or federated learning process that was set to be ongoing that was continued using the one or more selected nodes 120.
[0199] In some embodiments, a first group of second nodes 112 may be configured to be used as a first group of clients, and a third node 113 may be configured to be selected to be used as part of a second group of clients to continue a distributed machine learning or federated learning process that is configured to be in progress.
[0200] In some embodiments, the respective information may be configured to indicate one or more of: a) a respective willingness to join a distributed machine learning or federated learning process that is configured to be in progress; b) a respective first capability to complete one or more training tasks of a distributed machine learning or federated learning process that is configured to be in progress; c) one or more respective characteristics of data available to the third node 113; d) a respective supported machine learning framework; and e) a respective time availability to participate in a distributed machine learning or federated learning process that is configured to be in progress.
[0201] In some embodiments, providing the first instruction may be configured to include registering the respective information with the fifth node 115, and receiving the respective second instruction may be configured to be based on the respective information configured to be registered.
[0202] In some embodiments, the providing may be configured to be performed in one of: a) by sending the first instruction directly to the first node 111; and b) by sending the first instruction to the fifth node 115, which may be configured to have the third node 113 previously registered.
[0203] In some embodiments, the third node 113 may be further configured to obtain, from at least one of the fifth node 115 and a memory storage, e.g., the first memory storage, first information configured to indicate the distributed machine learning or federated learning process configured to be ongoing, e.g., by an obtaining unit 1203 in the third node 113 configured to do so. The first information may be configured to indicate an identifier of the distributed machine learning or federated learning process configured to be ongoing, and providing the first instruction may be configured to be based on the first information configured to be obtained.
[0204] In some embodiments, the third node 113 may be configured to send another instruction to the fifth node 115, for example by a sending unit 1203 in the third node 113 configured to do so. The another instruction may be further configured to request the first information. Obtaining the first information may be configured to be based on the another instruction configured to be sent.
[0205] The embodiments herein may be implemented through one or more processors, such as the processor 1205 in the third node 113 shown in FIG. 12, with computer program code for carrying out the functions and actions of the embodiments herein. The above-mentioned program code may also be provided as a computer program product, for example in the form of a data carrier which, when loaded into the third node 113, carries the computer program code for carrying out the embodiments herein. One such carrier may be in the form of a CD ROM disk. However, such a carrier may be realised on other data carriers, such as a memory stick. The computer program code may further be provided as pure program code on a server and downloaded to the third node 113.
[0206] The third node 113 may further comprise a memory 1206 comprising one or more memory units. The memory 1206 is configured to be used to store acquired information, store data, settings, scheduling, applications, etc., to implement the methods herein when running in the third node 113.
[0207] In some embodiments, the third node 113 may receive information through the receiving port 1207, for example, from the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, and / or another node or device. In some examples, the receiving port 1207 may be connected to one or more antennas in the third node 113, for example. In other embodiments, the third node 113 may receive information from another structure in the communication system 100 through the receiving port 1207. Since the receiving port 1207 may be in communication with the processor 1205, the receiving port 1207 may then forward the received information to the processor 1205. The receiving port 1207 may also be configured to receive other information.
[0208] The processor 1205 in the third node 113 may be further configured to transmit or send information to, for example, the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, another node or device and / or another structure in the communication system 100 through an outgoing port 1208, which may be in communication with the processor 1205 and the memory 1206.
[0209] Those skilled in the art will also appreciate that any of the above-described units 1201-1204 may refer to a combination of analog and digital circuitry and / or one or more processors configured with software and / or firmware stored in memory, for example, that performs as described above when executed by one or more processors, such as processor 1205. One or more of these processors, as well as other digital hardware, may be included in a single application specific integrated circuit (ASIC), or several processors and various digital hardware may be distributed among several separate components, whether individually packaged or assembled into a system on a chip (SoC).
[0210] Any of the above described units 1201-1204 may be a processor 1205 of the third node 113, or an application running on such a processor.
[0211] Thus, the methods according to the embodiments described herein for the third node 113 may be implemented by a computer program 1209 product comprising instructions, i.e., software code portions, that when executed on the at least one processor 1205 cause the at least one processor 1205 to perform the actions described herein to be performed by the third node 113. The computer program 1209 product may be stored in a computer readable storage medium 1210. The computer readable storage medium 1210 storing the computer program 1209 may comprise instructions that when executed on the at least one processor 1205 cause the at least one processor 1205 to perform the actions described herein to be performed by the third node 113. In some embodiments, the computer readable storage medium 1210 may be a non-transitory computer readable storage medium, such as a CD ROM disk, a memory stick, or may be stored in cloud space. In other embodiments, the computer program 1209 product may be stored on a carrier containing the computer program, the carrier being an electronic signal, an optical signal, a radio signal, or one of the computer readable storage media 1210 as described above.
[0212] The third node 113 may comprise an interface unit for facilitating communication between the third node 113 and other nodes or devices, e.g., the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, another node or device and / or another structure in the communication system 100. In some particular examples, the interface may include, for example, a transceiver configured to transmit and receive radio signals over an air interface according to a suitable standard.
[0213] In other embodiments, the third node 113 may comprise the following configuration shown in Fig. 12b: The third node 113 may comprise a processing circuit 1205, e.g., one or more processors such as processor 1205, and a memory 1206 in the third node 113. The third node 113 may also comprise a radio circuit 1211, which may comprise, e.g., a receiving port 1207 and a sending port 1208. The processing circuit 1205 may be configured or operable to perform method actions according to Fig. 8 and / or Fig. 10 in a manner similar to that described with respect to Fig. 12a. The radio circuitry 1211 may be configured to set up and maintain wireless connections with at least the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, other nodes or devices and / or other structures in the communication system 100.
[0214] Accordingly, embodiments herein also relate to a third node 113 operable to handle a distributed machine learning or federated learning process set to be ongoing, where the third node 113 is operable to operate in the communication system 100. The third node 113 may comprise a processing circuit 1205 and a memory 1206, where the memory 1206 includes instructions executable by the processing circuit 1205, whereby the third node 113 is further operable to perform the actions described herein with respect to the third node 113, e.g., in FIG. 8 and / or FIG. 10.
[0215] Figure 13 shows in panels a) and b), respectively, two different examples of configurations that the fifth node 115 may have to perform the method actions described above with respect to Figures 9 and / or 10. In some embodiments, the fifth node 115 may have the following configurations shown in Figure 13a. The fifth node 115 may be understood to be for handling a distributed machine learning or federated learning process that is configured to be ongoing. The fifth node 115 is configured to operate in the communication system 100.
[0216] Several embodiments are included herein. Components from one embodiment may be implicitly assumed to be present in another embodiment, and it will be clear to one skilled in the art how those components may be used in other exemplary embodiments. In FIG. 13, optional boxes are indicated by dashed lines. Some detailed descriptions below correspond to the same references provided above with respect to the actions described for the fifth node 115, and therefore will not be repeated here. For example, the communication system 100 may be configured to be a 5G network, a) the first node 111 may be configured to be a server NWDAF, b) the first group of second nodes 112 may be configured to be client NWDAFs, c) one or more third nodes 113 may be configured to be other client NWDAFs, and d) the fifth node 115 may be configured to be a DLCF.
[0217] The fifth node 115 is configured to obtain, e.g., by an obtaining unit 1301 in the fifth node 115 configured to do so, one or more first instructions from one or more third nodes 113 configured to operate in the communication system 100. The one or more first instructions are configured to include respective information configured to indicate that the one or more third nodes 113 are eligible to be selected to participate in a distributed machine learning or federated learning process configured to be in progress. The one or more first instructions are configured to be obtained during the distributed machine learning or federated learning process configured to be in progress.
[0218] The fifth node 115 is also configured to provide the one or more first instructions to the first node 111 configured to operate in the communication system 100, for example by a providing unit 1302 in the fifth node 115 configured to do so. The first node 111 is configured to act as an aggregator of data or analysis from the first group of second nodes 112 for a distributed machine learning or federated learning process configured to be ongoing. The one or more first instructions are configured to be provided during the distributed machine learning or federated learning process configured to be ongoing.
[0219] In some embodiments, the respective information may be configured to indicate one or more of: a) a respective willingness to join a distributed machine learning or federated learning process that is configured to be in progress; b) a respective first capability to complete one or more training tasks of a distributed machine learning or federated learning process that is configured to be in progress; c) one or more respective characteristics of data available to the respective third node 113; d) a respective supported machine learning framework; and e) a respective time availability to participate in a distributed machine learning or federated learning process that is configured to be in progress.
[0220] In some embodiments, obtaining the one or more first instructions may be configured to include registering respective information from one or more third nodes 113, and providing the one or more first instructions may be configured to be based on the respective information configured to be registered.
[0221] The fifth node 115 may also be configured to obtain, from the first node 111 and a memory storage, e.g., one of the first memory storage or the second memory storage, first information configured to indicate the distributed machine learning or federated learning process configured to be in progress, e.g., by an obtaining unit 1301 in the fifth node 115 configured to do so. The first information may be configured to indicate at least one of a) an identifier of the distributed machine learning or federated learning process configured to be in progress, and b) second information regarding the first group 112 of the second nodes configured to be used for the distributed machine learning or federated learning process configured to be in progress. Obtaining the one or more first instructions may be configured to be based on the first information configured to be registered.
[0222] The fifth node 115 may also be configured to obtain further instructions from the one or more third nodes 113, for example by an obtaining unit 1301 in the fifth node 115 configured to do so. The further instructions may be configured to request the first information.
[0223] The fifth node 115 is also configured to provide the first information to one or more third nodes 113 based on further instructions configured to be obtained, for example by a providing unit 1302 in the fifth node 115 configured to do so.
[0224] The fifth node 115 is configured to receive a previous instruction from the first node 111, for example by a receiving unit 1303 in the fifth node 115 configured to do so. The previous instruction may be configured to request one or more first instructions. Providing the one or more first instructions may be configured to be based on the previous instruction configured to be received.
[0225] The embodiments herein may be implemented through one or more processors, such as the processor 1304 in the fifth node 115 shown in FIG. 13, with computer program code for carrying out the functions and actions of the embodiments herein. The above-mentioned program code may also be provided as a computer program product, for example in the form of a data carrier which, when loaded into the fifth node 115, carries the computer program code for carrying out the embodiments herein. One such carrier may be in the form of a CD ROM disk. However, such a carrier may be realised on other data carriers, such as a memory stick. The computer program code may further be provided as pure program code on a server and downloaded to the fifth node 115.
[0226] The fifth node 115 may further comprise a memory 1305 comprising one or more memory units. The memory 1305 is configured to be used to store acquired information, store data, settings, scheduling, applications, etc., for implementing the methods herein when running in the fifth node 115.
[0227] In some embodiments, the fifth node 115 may receive information through the receiving port 1306, for example, from the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, and / or another node or device. In some examples, the receiving port 1306 may be connected to one or more antennas in the fifth node 115, for example. In other embodiments, the fifth node 115 may receive information from another structure in the communication system 100 through the receiving port 1306. Since the receiving port 1306 may be in communication with the processor 1304, the receiving port 1306 may then forward the received information to the processor 1304. The receiving port 1306 may also be configured to receive other information.
[0228] The processor 1304 in the fifth node 115 may be further configured to transmit or send information to, for example, the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, another node or device and / or another structure in the communication system 100 through an outgoing port 1307, which may be in communication with the processor 1304 and the memory 1305.
[0229] Those skilled in the art will also appreciate that the above-described units 1301-1303 may refer to combinations of analog and digital circuitry and / or one or more processors configured with software and / or firmware stored in memory, for example, that, when executed by one or more processors, such as processor 1304, performs as described above. One or more of these processors, as well as other digital hardware, may be included in a single application specific integrated circuit (ASIC), or several processors and various digital hardware may be distributed among several separate components, whether individually packaged or assembled into a system on a chip (SoC).
[0230] The above described units 1301-1303 may be a processor 1304 of the fifth node 115, or an application running on such a processor.
[0231] Thus, the methods according to the embodiments described herein for the fifth node 115 may be implemented by a computer program 1308 product comprising instructions, i.e., software code portions, that when executed on at least one processor 1304 cause the at least one processor 1304 to perform the actions described herein to be performed by the fifth node 115. The computer program 1308 product may be stored in a computer readable storage medium 1309. The computer readable storage medium 1309 storing the computer program 1308 may comprise instructions that when executed on at least one processor 1304 cause the at least one processor 1304 to perform the actions described herein to be performed by the fifth node 115. In some embodiments, the computer readable storage medium 1309 may be a non-transitory computer readable storage medium, such as a CD ROM disk, a memory stick, or may be stored in cloud space. In other embodiments, the computer program 1308 product may be stored on a carrier containing the computer program, the carrier being an electronic signal, an optical signal, a radio signal, or one of the computer readable storage media 1309 as described above.
[0232] The fifth node 115 may comprise an interface unit for facilitating communication between the fifth node 115 and other nodes or devices, e.g., the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, another node or device and / or another structure in the communication system 100. In some particular examples, the interface may include, for example, a transceiver configured to transmit and receive radio signals over an air interface according to a suitable standard.
[0233] In other embodiments, the fifth node 115 may comprise the following configuration shown in Figure 13b: The fifth node 115 may comprise a processing circuit 1304, one or more processors, such as, for example, processor 1304, and a memory 1305 in the fifth node 115. The fifth node 115 may also comprise a radio circuit 1310, which may comprise, for example, a receiving port 1306 and a sending port 1307. The processing circuit 1304 may be configured or operable to perform method actions according to Figures 9 and / or 10 in a manner similar to that described with respect to Figure 13a. The radio circuitry 1310 may be configured to set up and maintain wireless connections with at least the first node 111, the first group of second nodes 112, one or more other third nodes 113, the fourth node 114, the fifth node 115, the first plurality of radio network nodes 141, the second plurality of radio network nodes 142, the first plurality of devices 131, the second plurality of devices 132, other nodes or devices and / or other structures in the communication system 100.
[0234] Accordingly, embodiments herein also relate to a fifth node 115 operable to handle a distributed machine learning or federated learning process set to be ongoing, where the fifth node 115 is operable to operate in the communication system 100. The fifth node 115 may comprise a processing circuit 1304 and a memory 1305, where the memory 1305 includes instructions executable by the processing circuit 1304, whereby the fifth node 115 is further operable to perform the actions described herein with respect to the fifth node 115, e.g., in FIG. 9 and / or FIG. 10.
[0235] When the word "comprise" or "comprising" is used, the word is to be interpreted as being open-ended, i.e., meaning "consist at least of."
[0236] The embodiments of the present specification are not limited to the preferred embodiments described above. Various alternatives, modifications and equivalents may be used. Therefore, the above embodiments should not be taken as limiting the scope of the present invention.
[0237] Generally, all terms used herein should be interpreted according to the ordinary meaning of those terms in the relevant technical field, unless a different meaning is expressly given and / or implied from the context in which the term is used. All references to a / an / the element, apparatus, component, means, step, etc. should be openly interpreted as referring to at least one instance of that element, apparatus, component, means, step, etc., unless expressly stated otherwise. The steps of any method disclosed herein need not be performed in the exact order disclosed, unless a step is expressly described as following or preceding another step, and / or it is implicit that a step must follow or precede another step. Any feature of any of the embodiments disclosed herein may be applied to any other embodiment, wherever appropriate. Similarly, any advantage of any of the embodiments may be applied to any other embodiment, and vice versa. Other objects, features, and advantages of the enclosed embodiments will become apparent from the following description.
[0238] As used herein, the phrase "at least one of:" followed by a list of alternatives separated by commas, the last alternative being preceded by the term "and", may be understood to mean that only one of the list of alternatives may apply, two or more of the list of alternatives may apply, or all of the list of alternatives may apply. This phrase may be understood to be equivalent to the phrase "at least one of:" followed by a list of alternatives separated by commas, the last alternative being preceded by the term "or".
[0239] Both the term processor and the term circuitry may be understood herein as hardware components.
[0240] As used herein, the phrase "in some embodiments" is used to indicate that features of the described embodiments may be combined with any other embodiment or example disclosed herein.
[0241] As used herein, the phrase "in some examples" is used to indicate that the features of the described examples may be combined with any other embodiment or example disclosed herein.
[0242] References [1] J. Liu, J. Huang, Y. Zhou, X. Li, S. Ji, H. Xiong, and D. Dou, "From distributed machine learning to federated learning: A survey." arXiv preprint arXiv:2104.14362v2, May 10, 2021. [2] S. Hu, X. Chen, W. Ni, E. Hossain, and X. Wang, Distributed Machine Learning for Wireless Communication Networks: Techniques, Architectures, and Applications.IEEE Communications Surveys & Tutorials, Vol.23, No.3, Third Quarter 2021。 [3] Q.Li、Z.Wen、Z.Wu、S.Hu、N.Wang、Y.Li、X.Lu、およびB.He「A survey of federated learning systems: Vision, hype and reality for data privacy and protection.」arXiv preprint arXiv:1907.09693v6. [4] Q. Yang, Y. Liu, T. Chen, and Y. Tong, Federated Machine Learning: Concept and Applications. [5] H. McMahan, E. Moore, D. Ramage, and S. Hampson, 2016. ArXiv preprint arXiv:1602.05629. [8] TS23.288 v.17.3.0. [9] TR23.700-91 v.17.0.0.
[10] TS23.501 v.17.3.0.
[11] TS23.502 v.17.3.0.
Claims
1. 1. A computer-implemented method performed by a first node (111) for handling an ongoing distributed machine learning or federated learning process in which the first node (111) acts as an aggregator of data or analysis from a first group of second nodes (112), the first node (111) operating in a communication system (100), the method comprising: - obtaining (703) one or more first instructions regarding one or more third nodes (113) operating in said communication system (100), said one or more first instructions including respective information regarding said one or more third nodes (113), said respective information indicating that said one or more third nodes (113) are eligible to be selected to participate in said ongoing distributed machine learning or federated learning process, said one or more first instructions being obtained during said ongoing distributed machine learning or federated learning process; providing (709) to a fourth node (114) operating in said communication system (100) an output of said ongoing distributed machine learning or federated learning process based on said obtained one or more first instructions; 4. A computer-implemented method comprising:
2. The output is based on the obtained one or more first instructions, selecting (704) one or more selected nodes (120) from the first group of second nodes (112) and the one or more third nodes (113) for continuing the ongoing distributed machine learning or federated learning process based on the received respective one or more first instructions, wherein the ongoing distributed machine learning or federated learning process is continued using the one or more selected nodes (120), and the output is based on the ongoing distributed machine learning or federated learning process continued using the one or more selected nodes (120); sending (707) respective second instructions to said one or more selected nodes (120), said respective second instructions instructing said one or more selected nodes (120) that they have been selected to continue said ongoing distributed machine learning or federated learning process; The computer-implemented method of claim 1 , comprising:
3. The output is based on the obtained one or more first instructions, determining (706) whether the ongoing distributed machine learning or federated learning process should continue with any of the one or more selected nodes (120) based on the obtained respective one or more first instructions; and wherein the output is based on an outcome of the determination.
4. 4. The computer-implemented method of claim 2 or 3, wherein the first group of second nodes (112) is used as a first group of clients and the one or more selected nodes (120) are selected to be used as a second group of clients to continue the ongoing distributed machine learning or federated learning process.
5. - updating (708) a machine learning model resulting from the ongoing distributed or federated learning process using third information provided by the one or more selected nodes (120); and wherein the provided output is based on the updated machine learning model.
6. The respective information included in the one or more first instructions: a. each willingness to participate in said ongoing distributed machine learning or federated learning process; b. a respective first ability to complete one or more training tasks of said ongoing distributed machine learning or federated learning process; c. one or more respective characteristics of the data available to each third node (113); and d. Each supported machine learning framework; and e. their respective time availability to participate in said ongoing distributed machine learning or federated learning process; The computer-implemented method of claim 1 , further comprising:
7. - based on the obtained respective information for said one or more selected nodes (120), the time required to complete servicing to consumers of said ongoing distributed machine learning or federated learning process using said one or more selected nodes (120); a level of granularity for providing said service to said consumer using said one or more selected nodes (120); determining (705) at least one of Further comprising: The computer-implemented method of claim 1 , wherein the provided output is based on the determined time and / or level of accuracy results.
8. The obtaining (703) may include: a. directly from said one or more third nodes (113), respectively; and b. via a fifth node (115) operating in said communication system (100) with which said one or more third nodes (113) have previously registered; The computer-implemented method of claim 1 , wherein the computer-implemented method is performed in one of the following steps:
9. registering (701) first information indicative of said ongoing distributed machine learning or federated learning process with said fifth node (115); and wherein the first information further comprises: an identifier for said ongoing distributed machine learning or federated learning process; and second information regarding said first group of second nodes (112) used for said ongoing distributed machine learning or federated learning process; Indicate at least one of The computer-implemented method of claim 8 , wherein the obtaining (703) of the one or more first instructions is based on the registered first information.
10. sending (702) a previous instruction to said fifth node (115), said previous instruction requesting said one or more first instructions, said obtaining (703) said one or more first instructions being based on said sent previous instruction; The computer-implemented method of claim 1 , further comprising:
11. The communication system (100) is a fifth generation (5G) network; a. the first node (111) is a server Network Data Analysis Function (NWDAF); b. said first group of second nodes (112) are client NWDAFs; c. the one or more third nodes (113) are other client NWDAFs; d. the fourth node (114) is a NWDAF service consumer; e) The computer-implemented method of any one of claims 8 to 10, wherein the fifth node (115) is a distributed machine learning or federated learning control function (DLCF).
12. A computer-implemented method performed by a third node (113) for handling an ongoing distributed machine learning or federated learning process, the third node (113) operating in a communication system (100), the method comprising: providing (803) a first instruction regarding the third node (113) to one of a first node (111) and a fifth node (115) operating in the communication system (100), the first node (111) acting as an aggregator of data or analysis from a first group of second nodes (112) in the ongoing distributed machine learning or federated learning process, the first instruction including respective information regarding the third node (113), the respective information indicating that the third node (113) is eligible to be selected to participate in the ongoing distributed machine learning or federated learning process; Including, 20. The computer-implemented method of claim 19, wherein the first instructions are provided during an ongoing distributed machine learning or federated learning process.
13. the third node (113) is selected from the first group of second nodes (112) and one or more third nodes (113) including the third node (113) based on the provided first instructions to be included among one or more selected nodes (120) for continuing the ongoing distributed machine learning or federated learning process, the method comprising: receiving (804) a respective second indication from said first node (111), said respective second indication indicating that said third node (113) has been selected to continue said ongoing distributed machine learning or federated learning; The computer-implemented method of claim 12 further comprising:
14. 14. The computer-implemented method of claim 13, wherein the ongoing distributed machine learning or federated learning process is continued using the one or more selected nodes (120), and an output of the ongoing distributed machine learning or federated learning process is based on the ongoing distributed machine learning or federated learning process continued using the one or more selected nodes (120).
15. 15. The computer-implemented method of claim 12, wherein the first group of second nodes (112) are used as a first group of clients and the third node (113) is selected to be used as part of a second group of clients to continue the ongoing distributed machine learning or federated learning process.
16. Each of the above information is a. each willingness to participate in said ongoing distributed machine learning or federated learning process; b. a respective first ability to complete one or more training tasks of said ongoing distributed machine learning or federated learning process; c. one or more respective characteristics of the data available to said third node (113); d. Each supported machine learning framework; and e. their respective time availability to participate in said ongoing distributed machine learning or federated learning process; The computer-implemented method of claim 12 , further comprising:
17. 15. The computer-implemented method of claim 14, wherein providing the first instruction (803) includes registering the respective information with the fifth node (115), and receiving the respective second instruction (804) is based on the registered respective information.
18. The providing (803) comprises: a. by sending said first instruction directly to said first node (111); and b. by sending said first indication to said fifth node (115) with which said third node (113) previously registered.
18. The computer-implemented method of claim 12, wherein the computer-implemented method is performed in one of the following:
19. obtaining (802) first information indicative of the ongoing distributed machine learning or federated learning process from at least one of the fifth node (115) and a memory storage, the first information indicating an identifier of the ongoing distributed machine learning or federated learning process, and the providing (803) of the first instructions being based on the obtained first information; 20. The computer-implemented method of claim 18, further comprising:
20. sending (801) another instruction to said fifth node (115), said another instruction requesting said first information, said obtaining (802) said first information being based on said sent another instruction; 20. The computer-implemented method of claim 19, further comprising:
21. The communication system (100) is a fifth generation (5G) network; a. the first node (111) is a server Network Data Analysis Function (NWDAF); b. said first group of second nodes (112) are client NWDAFs; c. the third node (113) is another client NWDAF; d. The computer-implemented method of any one of claims 12 to 20, wherein the fifth node (115) is a distributed machine learning or federated learning control function (DLCF).
22. A computer-implemented method performed by a fifth node (115) for handling an ongoing distributed machine learning or federated learning process, said fifth node (115) operating in a communication system (100), said method comprising: - obtaining (905) one or more first instructions from one or more third nodes (113) operating in said communication system (100), said one or more first instructions including respective information indicating that said one or more third nodes (113) are eligible to be selected to participate in said ongoing distributed machine learning or federated learning process, said one or more first instructions being obtained during said ongoing distributed machine learning or federated learning process; providing (906) the one or more first instructions to a first node (111) operating in the communication system (100), the first node (111) acting as an aggregator of data or analysis from a first group of second nodes (112) for the ongoing distributed machine learning or federated learning process, the one or more first instructions being provided during the ongoing distributed machine learning or federated learning process; 4. A computer-implemented method comprising:
23. Each of the above information is a. each willingness to participate in said ongoing distributed machine learning or federated learning process; b. a respective first ability to complete one or more training tasks of said ongoing distributed machine learning or federated learning process; c. one or more respective characteristics of the data available to each third node (113); and d. Each supported machine learning framework; and e. their respective time availability to participate in said ongoing distributed machine learning or federated learning process; 23. The computer-implemented method of claim 22, further comprising:
24. 24. The computer-implemented method of claim 22 or 23, wherein obtaining (905) the one or more first instructions comprises registering the respective information from the one or more third nodes (113), and wherein providing (906) the one or more first instructions is based on the registered respective information.
25. obtaining (901) first information indicative of the ongoing distributed machine learning or federated learning process from one of said first node (111) and a memory storage; and wherein the first information further comprises: an identifier for said ongoing distributed machine learning or federated learning process; and second information regarding said first group of second nodes (112) used for said ongoing distributed machine learning or federated learning process; Indicate at least one of 25. The computer-implemented method of claim 22, wherein the obtaining (905) of the one or more first instructions is based on the registered first information.
26. - obtaining (902) another indication from said one or more third nodes (113), said another indication requesting said first information; and providing (903) said first information to said one or more third nodes (113) based on said obtained further indication; 26. The computer-implemented method of claim 25, further comprising:
27. receiving (904) a previous instruction from said first node (111), said previous instruction requesting said one or more first instructions, said providing (906) said one or more first instructions being based on said received previous instruction; 27. The computer-implemented method of any one of claims 22 to 26, further comprising:
28. The communication system (100) is a fifth generation (5G) network; a. the first node (111) is a server Network Data Analysis Function (NWDAF); b. said first group of second nodes (112) are client NWDAFs; c. the one or more third nodes (113) are other client NWDAFs; d. The computer-implemented method of any one of claims 22 to 28, wherein the fifth node (115) is a distributed machine learning or federated learning control function (DLCF).
29. A first node (111) for handling a distributed machine learning or federated learning process configured to be ongoing, said first node (111) configured to act as an aggregator of data or analytics from a first group of second nodes (112), said first node (111) further configured to operate in a communication system (100), said first node (111) comprising: - obtaining one or more first instructions relating to one or more third nodes (113) configured to operate in said communication system (100), said one or more first instructions being configured to include respective information relating to said one or more third nodes (113), said respective information being configured to indicate that said one or more third nodes (113) are eligible to be selected to participate in said distributed machine learning or federated learning process configured to be ongoing, said one or more first instructions being configured to be obtained during said distributed machine learning or federated learning process configured to be ongoing; providing an output of the distributed machine learning or federated learning process configured to be ongoing based on the one or more first instructions configured to be obtained to a fourth node (114) configured to operate in the communication system (100); The first node (111), further configured to:
30. The output is configured to be based on the one or more first instructions configured to be obtained, selecting, based on the respective one or more first instructions configured to be received, from the first group of second nodes (112) and the one or more third nodes (113) one or more selected nodes (120) for continuing the distributed machine learning or federated learning process configured to be ongoing, wherein the distributed machine learning or federated learning process configured to be ongoing is configured to be continued using the one or more selected nodes (120), and the output is configured to be based on the distributed machine learning or federated learning process configured to be ongoing continued using the one or more selected nodes (120); sending respective second instructions to the one or more selected nodes (120), the respective second instructions configured to indicate to the one or more selected nodes (120) that they have been selected to continue the distributed machine learning or federated learning process that is configured to be ongoing; 30. The first node (111) of claim 29, configured to include performing:
31. The output is configured to be based on the one or more first instructions configured to be obtained, determining whether the distributed machine learning or federated learning process configured to be in progress should be continued with any of the one or more selected nodes (120) based on the respective one or more first instructions configured to be obtained. and wherein said output is configured based on an outcome of said determination.
32. 32. The first node (111) of claim 30 or 31, wherein the first group (112) of second nodes is configured to be used as a first group of clients, and the one or more selected nodes (120) are configured to be selected to be used as a second group of clients to continue the distributed machine learning or federated learning process that is configured to be in progress.
33. updating a machine learning model configured to result from the distributed machine learning or federated learning process configured to be ongoing using third information configured to be provided by the one or more selected nodes (120); 33. The first node (111) of any one of claims 30 to 32, further configured to:
34. The respective information configured to be included in the one or more first instructions, a. each willingness to participate in the distributed machine learning or federated learning process that is set to be ongoing; and b. a respective first ability to complete one or more training tasks of said distributed machine learning or federated learning process configured to be in progress; c. one or more respective characteristics of the data available to each third node (113); and d. Each supported machine learning framework; and e. their respective time availability to participate in the distributed machine learning or federated learning process that is set to be ongoing; 34. The first node (111) of any one of claims 29 to 33, configured to indicate one or more of:
35. - based on respective information for said one or more selected nodes (120) that is set to be obtained, the time required to complete servicing to consumers of the distributed machine learning or federated learning process configured to be in progress using the one or more selected nodes (120); a level of granularity for providing said service to said consumer using said one or more selected nodes (120); Determining at least one of It is further configured to 35. The first node (111) of any one of claims 29 to 34, wherein the output configured to be provided is configured to be based on the time and / or level of accuracy result configured to be determined.
36. The obtaining includes: a. directly from said one or more third nodes (113), respectively; and b. via a fifth node (115) configured to operate in said communication system (100) with which said one or more third nodes (113) have previously been configured to register; 36. The first node (111) according to any one of claims 29 to 35, configured to be implemented in one of:
37. registering, in said fifth node (115), first information configured to indicate said distributed machine learning or federated learning process configured to be ongoing; and the first information is further configured to: an identifier of the distributed machine learning or federated learning process that is set to be in progress; and second information on said first group of second nodes (112) configured to be used for said distributed machine learning or federated learning process configured to be ongoing; and configured to indicate at least one of 37. The first node (111) of claim 36, wherein said obtaining said one or more first instructions is configured to be based on said first information configured to be registered.
38. sending a previous instruction to said fifth node (115), said previous instruction being configured to request said one or more first instructions, said obtaining said one or more first instructions being configured to be based on said previous instruction configured to be sent; 38. The first node (111) according to any one of claims 29 to 37, further configured to:
39. The communication system (100) is configured to be a fifth generation (5G) network; a. the first node (111) is configured to be a server Network Data Analysis Function (NWDAF); b. The first group of second nodes (112) is configured to be client NWDAFs; c. The one or more third nodes (113) are configured to be other client NWDAFs; d. the fourth node (114) is configured to be a NWDAF service consumer; e. The first node (111) of any one of claims 36 to 38, wherein the fifth node (115) is configured to be a Distributed Machine Learning or Federated Learning Control Function (DLCF).
40. A third node (113) for handling a distributed machine learning or federated learning process configured to be ongoing, the third node (113) configured to operate in a communication system (100), the third node (113) comprising: providing a first instruction to one of a first node (111) and a fifth node (115) configured to operate in said communication system (100) regarding said third node (113), said first node (111) being configured to act as an aggregator of data or analysis from a first group of second nodes (112) in said distributed machine learning or federated learning process configured to be ongoing, said first instruction being configured to include respective information regarding said third node (113), said respective information being configured to indicate that said third node (113) is eligible to be selected to participate in said distributed machine learning or federated learning process configured to be ongoing. It is further configured to A third node (113) configured to provide the first instructions during the distributed machine learning or federated learning process configured to be in progress.
41. The third node (113) is selected from the first group of second nodes (112) and one or more third nodes (113) configured to include the third node (113) based on the first instruction configured to be provided to be included in one or more selected nodes (120) to continue the distributed machine learning or federated learning process configured to be ongoing, and the third node (113) comprises: receiving a respective second instruction from the first node (111), the respective second instruction being configured to indicate that the third node (113) has been selected to continue the ongoing distributed machine learning or federated learning. The third node (113) of claim 40, further configured to:
42. 42. The third node (113) of claim 41, wherein the distributed machine learning or federated learning process set to be ongoing is configured to be continued using the one or more selected nodes (120), and an output of the distributed machine learning or federated learning process set to be ongoing is based on the distributed machine learning or federated learning process set to be ongoing continued using the one or more selected nodes (120).
43. 43. The third node (113) of any one of claims 40 to 42, wherein the first group (112) of second nodes is configured to be used as a first group of clients and the third node (113) is configured to be selected to be used as part of a second group of clients to continue the distributed machine learning or federated learning process configured to be in progress.
44. Each of the above information is a. each willingness to participate in the distributed machine learning or federated learning process that is set to be ongoing; and b. a respective first ability to complete one or more training tasks of said distributed machine learning or federated learning process configured to be in progress; c. one or more respective characteristics of the data available to said third node (113); d. Each supported machine learning framework; and e. their respective time availability to participate in the distributed machine learning or federated learning process that is set to be ongoing; 44. A third node (113) according to any one of claims 40 to 43, configured to indicate one or more of:
45. A third node (113) according to claim 44 and claim 41 or 42, wherein providing the first instruction is configured to include registering the respective information with the fifth node (115), and receiving the respective second instruction is configured to be based on the respective information configured to be registered.
46. The providing comprises: a. by sending said first instruction directly to said first node (111); and b. by sending said first indication to said fifth node (115) with which said third node (113) has been previously configured to register; 46. The third node (113) according to any one of claims 41 to 45, configured to be implemented in one of:
47. obtaining, from at least one of the fifth node (115) and a memory storage, first information configured to indicate the distributed machine learning or federated learning process configured to be ongoing, the first information configured to indicate an identifier of the distributed machine learning or federated learning process configured to be ongoing, and the providing of the first indication configured to be based on the first information configured to be obtained.
47. The third node (113) of claim 46, further configured to:
48. sending further instructions to said fifth node (115), said further instructions being further configured to request said first information, and said obtaining said first information being configured to be based on said further instructions configured to be sent.
48. The third node (113) of claim 47, further configured to:
49. The communication system (100) is configured to be a fifth generation (5G) network; a. the first node (111) is configured to be a server Network Data Analysis Function (NWDAF); b. The first group of second nodes (112) is configured to be client NWDAFs; c. The third node (113) is configured to be another client NWDAF; d. The third node (113) of any one of claims 40 to 48, wherein the fifth node (115) is configured to be a Distributed Machine Learning or Federated Learning Control Function (DLCF).
50. A fifth node (115) for handling a distributed machine learning or federated learning process configured to be ongoing, the fifth node (115) configured to operate in a communication system (100), the fifth node (115) comprising: obtaining one or more first instructions from one or more third nodes (113) configured to operate in said communication system (100), said one or more first instructions being configured to include respective information configured to indicate that said one or more third nodes (113) are eligible to be selected to participate in said distributed machine learning or federated learning process configured to be ongoing, said one or more first instructions being configured to be obtained during said distributed machine learning or federated learning process configured to be ongoing; providing said one or more first instructions to a first node (111) configured to operate in said communication system (100), said first node (111) being configured to act as an aggregator of data or analysis from a first group of second nodes (112) for said distributed machine learning or federated learning process configured to be ongoing, said one or more first instructions being configured to be provided during said distributed machine learning or federated learning process configured to be ongoing; a fifth node (115) further configured to:
51. Each of the above information is a. each willingness to participate in the distributed machine learning or federated learning process that is configured to be ongoing; and b. a respective first ability to complete one or more training tasks of said distributed machine learning or federated learning process configured to be in progress; c. one or more respective characteristics of the data available to each third node (113); and d. Each supported machine learning framework; and e. their respective time availability to participate in the distributed machine learning or federated learning process that is set to be ongoing; 51. The fifth node (115) of claim 50, configured to indicate one or more of:
52. A fifth node (115) according to claim 50 or 51, wherein obtaining the one or more first instructions is configured to include registering the respective information from the one or more third nodes (113), and wherein providing the one or more first instructions is configured to be based on the respective information configured to be registered.
53. obtaining, from one of the first node (111) and a memory storage, first information configured to indicate the distributed machine learning or federated learning process configured to be ongoing; and the first information is further configured to: an identifier of the distributed machine learning or federated learning process that is set to be in progress; and second information on said first group of second nodes (112) configured to be used for said distributed machine learning or federated learning process configured to be ongoing; and configured to indicate at least one of 53. The fifth node (115) of any one of claims 50 to 52, wherein said obtaining said one or more first instructions is configured to be based on said first information configured to be registered.
54. - obtaining further instructions from said one or more third nodes (113), said further instructions being configured to request said first information; and providing said first information to said one or more third nodes (113) based on said further instructions set to be obtained; 54. The fifth node (115) of claim 53, further configured to:
55. receiving a previous instruction from said first node (111), said previous instruction being configured to request said one or more first instructions, and said providing said one or more first instructions being configured to be based on said previous instruction being configured to be received.
55. The fifth node (115) of any one of claims 50 to 54, further configured to:
56. The communication system (100) is configured to be a fifth generation (5G) network; a. the first node (111) is configured to be a server Network Data Analysis Function (NWDAF); b. The first group of second nodes (112) is configured to be client NWDAFs; c. The one or more third nodes (113) are configured to be other client NWDAFs; d. The fifth node (115) of any one of claims 50 to 55, wherein the fifth node (115) is configured to be a Distributed Machine Learning or Federated Learning Control Function (DLCF).
Citation Information
Patent Citations
Training machine learning models on a large-scale distributed system using job servers
JP2020518065A
Federation learning method and device for improving matching efficiency, electronic device, and medium
JP2021193568A
Distributed machine learning in an information centric network
US20200027022A1
Methods, apparatus and machine-readable media relating to machine-learning in a communication network
WO2021032497A1
Information processing device and information processing method, computer program, and distributed training system
WO2021220616A1