Communication method and related apparatuses
By selecting a subset of clients for federated learning based on bias estimation and utilizing digital entities for model training, the method addresses data imbalance and class imbalance issues, improving model performance and resource efficiency while preserving privacy.
Patent Information
- Application Number
- PCT/CN2024/133875
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-13
- Filing Date
- 2024-11-22
- Publication Date
- 2026-02-19
AI Technical Summary
Federated learning (FL) systems face challenges due to irregular data distribution among wireless network users, leading to class imbalance and data imbalance issues, which affect model performance and robustness, particularly in heterogeneous scenarios with varying device characteristics and network conditions.
A communication method that selects a subset of clients based on bias estimation, allowing digital entities to train models without sharing raw data, ensuring privacy and balancing data distribution, thereby reducing the impact of data imbalance and maintaining model training efficiency.
The method enhances model performance by reducing bias and data imbalance, preserving privacy, and optimizing resource usage in federated learning systems, making them more adaptive and responsive to client capabilities and constraints.
Smart Images

Figure CN2024133875_19022026_PF_FP_ABST
Abstract
Description
COMMUNICATION METHOD AND RELATED APPARATUSESCROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Provisional Application No. 63 / 682,613, filed on August 13, 2024. The disclosure of the above patent application is incorporated herein by reference in its entirety.TECHNICAL FIELD
[0002] The present disclosure relates to the field of communication technologies, and in particular, to a communication method and related apparatuses.BACKGROUND
[0003] With the recent advancement and usage of edge devices, there is more data availability. Unlike centralized machine learning, where there is a need for accumulating data on the central server, federated learning (FL) leverages the use of data generated from the edge devices for training a collaborative global model by inferencing the knowledge obtained from the randomly selected local models. This enables multiple devices / organizations to jointly train the machine learning model without sharing the raw data. FL produces results similar to that of centralized machine learning (ML) when considering a homogeneous scenario which includes stable network conditions for communication, similar data distribution among the devices, similar computation across the devices, etc. However, in practical applications, this may not be the case. The participating devices may have different data distribution capabilities, different computation capabilities, unstable communication channels and different device types that participate in the training. These aspects may introduce challenges in federated collaboration and may reduce the performance of distributed learning schemes.
[0004] FL is further classified into Horizontal Federated Learning (HFL) and Vertical Federated Learning (VFL) . HFL consists of training models on data having similar features across multiple clients whereas VFL focuses on training models where clients share a same sample ID but have different feature spaces.
[0005] This background information is provided to reveal information believed by the applicant to be of possible relevance to the present disclosure. No admission is necessarily intended, nor should be construed, that any one of the preceding information constitutes prior art against the present disclosure.SUMMARY
[0006] The main issue that the proposed solution in the present disclosure resolves is the bias due to irregular data distribution. Wireless network users may be more prone to this problem due to variances among wireless network users, e.g., location differences, different device characteristics and so on. The initial problem to be resolved to improve robustness against bias is the class imbalance issue. Class imbalance means that every client has different class distribution and are non-uniform. In simple terms, this means that a majority of the data may belong to a certain class while few data samples contain the remaining classes or clients will have some classes missing. Several methods have been proposed in the literature to solve the class imbalance issue, however most of them either uses a subset of the data or a trusted execution environment where clients have to share their data distribution. The solution in the present disclosure preserves privacy. The second challenge to remove bias is to solve the data imbalance issue where each client holds a different amount of data samples. For example, the FedAvg algorithm details the way to handle data imbalance by asking clients to send the number of samples they hold. This helps to weight the model parameters during model aggregation. The solution in the present disclosure may address data imbalance issue. FL performs best with identically distributed (IID) data and the goal of the present disclosure is to select a subset of clients and determine FL parameters such that the selected clients’ data distribution resembles IID as much as possible.
[0007] In a first aspect, according to an embodiment of the present disclosure, a communication method is provided. The method includes: transmitting a first message to each client of a set of participating clients, where the first message includes an initial model collection request to obtain a collection of models; and transmitting a second message to each client of a first subset of clients, where the first subset of clients is selected from the set of participating clients based on a bias estimation performed on the collection of models; and the second message includes information pertaining to an aggregate model.
[0008] By requesting initial models from all the participating clients, the participating clients have an equal opportunity to contribute during the early stages of the FL process. Clients may need to share model parameters without additional client information, to ensure safeguarding privacy. Moreover, the estimation techniques described in the present disclosure may not require additional computations, and therefore the overall efficiency of the FL algorithm is not degraded. Information pertaining to an aggregate model is requested from a subset of the participating clients which is selected based on a bias estimation. Therefore, the selected subset of clients has a more balanced data distribution which helps to reduce the impact of data imbalance on model training.
[0009] In an implementation of the first aspect, at least one client of the set of participating clients is associated with a respective digital entity. By using digital entities, client privacy can be preserved. Further, digital entities can be quickly updated or reconfigured to adapt to changing conditions or requirements in the learning process. When the respective digital entities are updated and can participate in the learning process, the corresponding physical clients may not be required to transmit the entire trained model over-the-air (OTA) , which may reduce the amount of data that needs to be transmitted, thereby conserving radio access network (RAN) resources. In addition, if the respective digital entity can train the model on behalf of the corresponding client, the physical client may be able to save on battery usage and storage.
[0010] In an implementation of the first aspect, the method further includes receiving a third message from at least one client of the set of participating clients, wherein the third message indicates a respective model corresponding to the at least one client. The respective digital entity may train the initial model indicated by the first message or the aggregate model indicated by the second message using the corresponding client’s local data without the need to share raw data directly with the server. The training process may occur within the client’s environment or in a simulated environment controlled by the digital entity.
[0011] In an implementation of the first aspect, receiving the third message includes receiving the third message from a respective digital entity associated with the at least one client.
[0012] In an implementation of the first aspect, the third message includes at least one additional parameter, wherein the at least one additional parameter includes at least one of a synchronization time, a synchronization frequency, a data freshness measure, a timer list, one or more network parameters and fidelity. These parameters can ensure that the FL process is efficient, adaptive to changes, and consider the clients’ capabilities and constraints comprehensively. These parameters can also help to maintain the balance between privacy preservation and the effectiveness of the learning process.
[0013] In an implementation of the first aspect, transmitting the second message includes transmitting the second message to the respective digital entity associated with the at least one client.
[0014] In an implementation of the first aspect, transmitting the second message includes transmitting a request to update and / or train the aggregate model.
[0015] In an implementation of the first aspect, transmitting the first message includes transmitting the first message upon receiving a learning request.
[0016] In an implementation of the first aspect, receiving the learning request includes receiving, by a first node, the learning request.
[0017] In an implementation of the first aspect, receiving the learning request includes receiving, by the first node, the learning request from a first network function.
[0018] In an implementation of the first aspect, receiving the learning request includes: receiving, by a second network function, the learning request from the first network function; and forwarding, by the second network function, the learning request to the first node.
[0019] In an implementation, the learning request may first be directed to a second network function, e.g., a Digital World Data Processing Function (DWDPF) and then forwarded from the second network function to the first node. In this implementation, the second network function may act as the server and may obtain services from the first node.
[0020] In an implementation of the first aspect, transmitting the first message includes: transmitting, by the first node, a broadcast request to a third network function; broadcasting, by the third network function, a learning participation request to a plurality of clients; and receiving, by the first node, a learning participation response from the plurality of clients.
[0021] In an implementation of the first aspect, the learning participation request includes at least one of: timer settings, a refresh frequency, an update indicator, a participation level, a data freshness measure, a training sample size, and a data cycle mode. These parameters can ensure that the FL process is efficient, adaptive to changes, and considers the clients’ capabilities and constraints comprehensively. These parameters can also help to maintain the balance between privacy preservation and the effectiveness of the learning process.
[0022] In an implementation of the first aspect, the learning participation response includes a fairness type, wherein the fairness type indicates one or more of a battery level, a computation load, storage or memory requirements.
[0023] In an implementation of the first aspect, the method further includes: transmitting, by the third network function, a learning authorization request to a second node; and receiving, by the third network function, a learning authorization response from the second node; and transmitting, by the third network function, information related to the set of participating clients, to the first node, wherein the set of participating clients are determined from the plurality of clients based on the learning authorization response.
[0024] In an implementation of the first aspect, the information related to the set of participating clients includes at least one of: client identifier, authorization levels, data storage addresses, and permits for historical or extra data. The information can be used for the first node (e.g., Network for AI (NET4AI) FL server) to understand which clients have been granted permission to participate in the federated learning process.
[0025] In an implementation of the first aspect, receiving the third message includes: transmitting, by the first node, an initial model to the third network function; transmitting, by the third network function, the initial model to at least one of each client of the set of participating clients or the respective digital entity associated with that client; and receiving, by the first node, an initial trained model from at least one client of the set of participating clients or the respective digital entity associated with the at least one client.
[0026] In an implementation of the first aspect, receiving the learning request includes receiving, by the first node, the learning request from an application.
[0027] In an implementation of the first aspect, the method further includes forwarding, by the first node, the learning request to a digital world data processing function, wherein the first node configures the learning request with one or more parameters.
[0028] In an implementation of the first aspect, the method further includes: transmitting, by the DWDPF, a client discovery request to a fourth network function; and receiving, by the DWDPF, a discovery response from the fourth network function.
[0029] In an implementation of the first aspect, the client discovery request includes at least one of: a list of data types, data capability and client characteristics. These parameters can also help maintaining the balance between privacy preservation and the effectiveness of the learning process.
[0030] In an implementation of the first aspect, the client discovery response includes at least one of: a gateway ID, an authorization level, client IDs, and historical bias analysis. These parameters can also help maintaining the balance between privacy preservation and the effectiveness of the learning process.
[0031] In an implementation of the first aspect, the method further includes selecting, by the DWDPF, an initial list of clients from a plurality of clients.
[0032] In an implementation of the first aspect, the initial list of clients is associated with one or more of the following properties: digital users and physical users, an authorization level, gateway IDs, user IDS, synchronization, fidelity levels, cost of inviting the participants, and historical bias analysis.
[0033] By selecting an initial list of clients based on these parameters, the learning can be adapted to various conditions and user privacy can be preserved. This can further produce high-quality models that are less prone to bias and more representative of the data contributed by the clients.
[0034] In an implementation of the first aspect, transmitting the first message further includes: transmitting, by the DWDPF, a learning authorization request to a respective digital entity associated with each client of the initial list of clients; and receiving, by the DWDPF, a learning participation response from the respective digital entity associated with at least one client of the initial list of clients.
[0035] In an implementation of the first aspect, the learning authorization request includes at least one of: a class parameter, data characteristics, a fidelity level, a participation level, and an update frequency. These parameters can also help maintaining the balance between privacy preservation and the effectiveness of the learning process.
[0036] In an implementation of the first aspect, the learning participation response includes at least one of: a wait timer for a synchronization parameter, a next synchronization time stamp, a data size, a data freshness measure, and storage information.
[0037] In an implementation of the first aspect, the method further includes transmitting, by the DWDPF, the learning participation response to the first node.
[0038] In an implementation of the first aspect, the method further includes transmitting, by the DWDPF, information related to the set of participating clients to the first node, wherein the set of participating clients are determined from the initial list of clients based on the learning participation response. The DWDPF’s role in managing model transmissions can ensure that network resources are used efficiently, potentially leading to cost savings for network operators and improved service quality for users.
[0039] In an implementation of the first aspect, receiving the third message includes: transmitting, by a fifth network function, an initial model to the respective digital entity of each client of the set of participating clients; and receiving, by the fifth network function, an initial trained model from the respective digital entity of at least one client of the set of participating clients.
[0040] In an implementation of the first aspect, transmitting the second message includes: transmitting, by the second network function or the DWDPF, information pertaining to the initial trained model to a bias estimator; transmitting, by the bias estimator, bias estimates to an optimizer, wherein the bias estimator determines the bias estimates based on the information pertaining to the initial trained model; selecting, by the optimizer, the first subset of clients for a first round based on the bias estimates; and transmitting, by the optimizer, information pertaining to the first subset of clients to the second network function or the DWDPF.
[0041] By performing bias estimation and selecting a subset of participating clients for a next round based on the bias estimates, a more diverse and representative training dataset can be obtained for the learning, which can lead to improved model performance and generalization and can help reduce the impact of data imbalance on model training. Moreover, the estimation method described herein may not require additional computations, and therefore the overall efficiency of the FL algorithm may not be degraded.
[0042] In an implementation of the first aspect, transmitting the information pertaining to the initial trained model includes transmitting at least one of the initial trained model and information related to the initial trained model. In this way, the privacy of the clients’ data can be protected and the system can adapt to changes in data distribution and client participation, ensuring that the FL process remains robust and effective.
[0043] In an implementation of the first aspect, the information pertaining to the initial trained model includes last layer weights of the initial trained model, wherein the bias estimator uses the last layer weights of the initial trained model to determine the bias estimates. By analyzing the last layer weights, the system can identify and mitigate the biases arising from non-identically distributed (non-IID) data across clients, which can lead to a fairer and more representative model that generalizes better across different data distributions.
[0044] In an implementation of the first aspect, the information pertaining to the initial trained model includes at least one of a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency. By including these parameters in the information related to the initial trained model, the learning system may be made more adaptive and responsive to the specific needs and constraints of each client, and the system can better manage client participation, optimize model updates, and ensure that the model remains relevant and accurate.
[0045] In an implementation of the first aspect, selecting the first subset of clients includes receiving from the DWDPF additional parameters used as input to the optimizer for selecting the first subset of clients.
[0046] In an implementation of the first aspect, selecting the first subset of clients includes receiving, by the optimizer, client characteristics from the first node or the third network function, wherein the client characteristics are used by the optimizer for selecting the first subset of clients.
[0047] In an implementation of the first aspect, the client characteristics include at least one of: a participation level, a fairness type, timer settings, and a tracking area.
[0048] By incorporating these client characteristics into the selection process, the optimizer can make more informed decisions, leading to a more balanced and representative training dataset.
[0049] In an implementation of the first aspect, transmitting the second message includes transmitting, by the fifth network function, the aggregate model to at least one of at least one client of the first subset of clients and the respective digital entity associated with the at least one client of the first subset of clients.
[0050] In an implementation of the first aspect, the method further includes: receiving, by the fifth network function, a respective trained model from at least one client of the first subset of clients; and forwarding, by the fifth network function, the respective trained model to the DWDPF.
[0051] In an implementation of the first aspect, the method further includes: transmitting, by the second network function or the DWDPF, a feedback message to the optimizer; and selecting, by the optimizer, a second subset of clients for a second round based on the feedback message.
[0052] In this way, the system can adapt to changes in client performance and data distribution, ensuring that the learning process remains robust and effective over time. The ability to dynamically select clients based on the feedback can make the learning process more scalable and flexible.
[0053] In an implementation of the first aspect, the feedback message includes at least one of updated user settings, performance feedback, a timer list, network parameters, and test accuracy.
[0054] In a second aspect, according to an embodiment of the present disclosure, a communication method is provided. and the method includes: receiving a first message, wherein the first message includes an initial model collection request to obtain a collection of models; and receiving a second message, wherein the second message includes information pertaining to an aggregate model.
[0055] By requesting initial models from all the participating clients, the participating clients have an equal opportunity to contribute during the early stages of the FL process. Clients may need to share model parameters without additional client information, to ensure safeguarding privacy. Moreover, the estimation method described herein may not require additional computations, and therefore the overall efficiency of the FL algorithm may not be degraded. Information pertaining to an aggregate model is requested from a subset of the participating clients which is selected based on a bias estimation. Therefore, the selected subset of clients has a more balanced data distribution which helps to reduce the impact of data imbalance on model training.
[0056] In an implementation of the second aspect, the method further includes transmitting a third message, wherein the third message indicates a respective model. The respective digital entity may train the initial model indicated by the first message or the aggregate model indicated by the second message using the corresponding client’s local data without the need to share the raw data directly with the server. The training process may occur within the client’s environment or in a simulated environment controlled by the digital entity.
[0057] In an implementation of the second aspect, the third message includes at least one additional parameter, wherein the at least one additional parameter includes at least one of a synchronization time, a synchronization frequency, a data freshness measure, a timer list, one or more network parameters and fidelity. These parameters can ensure that the FL process is efficient, adaptive to changes, and considers the clients’ capabilities and constraints comprehensively. These parameters can also help to maintain the balance between privacy preservation and the effectiveness of the learning process.
[0058] In an implementation of the second aspect, receiving the second message includes receiving a request to update and / or train the aggregate model.
[0059] In an implementation of the second aspect, receiving the first message includes receiving the first message related to a learning request.
[0060] In an implementation of the second aspect, the learning request is transmitted by a first network function to a first node.
[0061] In an implementation of the second aspect, the learning request is transmitted by the first network function to a second network function.
[0062] In an implementation of the second aspect, the method further includes: receiving a learning participation request from a third network function; and transmitting a learning participation response to the first node.
[0063] In an implementation of the second aspect, the learning participation request includes at least one of: timer settings, a refresh frequency, an update indicator, a participation level, a data freshness limit, a training sample size, and a data cycle mode.
[0064] In an implementation of the second aspect, the learning participation response includes a fairness type, where the fairness type indicates one or more of a battery level, a computation load, storage or memory requirements. These parameters can ensure that the FL process is efficient, adaptive to changes, and considers the clients’ capabilities and constraints comprehensively. These parameters can also help maintaining the balance between privacy preservation and the effectiveness of the learning process.
[0065] In an implementation of the second aspect, transmitting the third message includes: receiving, from the third network function, an initial model; and transmitting an initial trained model to the first node.
[0066] In an implementation of the second aspect, the learning request is transmitted by an application to the first node.
[0067] In an implementation of the second aspect, receiving the first message includes: receiving, from a digital world data processing function, a learning authorization request; and transmitting a learning participation response to the DWDPF.
[0068] In an implementation of the second aspect, the learning authorization request includes at least one of: a class parameter, data characteristics, a fidelity level, a participation level, and an update frequency. These parameters can also help maintaining the balance between privacy preservation and the effectiveness of the learning process.
[0069] In an implementation of the second aspect, the learning participation response includes at least one of: a wait timer for a synchronization parameter, a next synchronization time stamp, a data size, a data freshness measure, and storage information.
[0070] In an implementation of the second aspect, transmitting the third message includes: receiving, from a fifth network function, an initial model; and transmitting an initial trained model to the fifth network function.
[0071] In an implementation of the second aspect, receiving the second message includes receiving, from the fifth network function, the aggregate model.
[0072] In an implementation of the second aspect, the method further includes transmitting a respective trained model to the fifth network function.
[0073] In a third aspect, according to an embodiment of the present disclosure, a communication method is provided. The method includes: transmitting information pertaining to an initial trained model; transmitting bias estimates, where the bias estimates are determined based on the information pertaining to the initial trained model; selecting a first subset of clients from a set of participating clients for a first round based on the bias estimates; and transmitting information pertaining to the first subset of clients.
[0074] By performing bias estimation and selecting a subset of participating clients for a next round based on the bias estimates, a more diverse and representative training dataset can be obtained for the learning, which can lead to improved model performance and generalization and further can help reduce the impact of data imbalance on model training. Moreover, the estimation method described herein may not require additional computations, and therefore the overall efficiency of the FL algorithm may not be degraded.
[0075] In an implementation of the third aspect, transmitting the information pertaining to the initial trained model includes transmitting at least one of the initial trained model and information related to the initial trained model. In this way, the privacy of the clients’ data can be protected. The system can further adapt to changes in data distribution and client participation, ensuring that the federated learning process remains robust and effective.
[0076] In an implementation of the third aspect, the information pertaining to the initial trained model includes last layer weights of the initial trained model, where the last layer weights of the initial trained model are used to determine the bias estimates. By analyzing the last layer weights, the system can identify and mitigate the biases arising from non-identically distributed (non-IID) data across clients, which can lead to a fairer and more representative model that generalizes better across different data distributions.
[0077] In an implementation of the third aspect, the information pertaining to the initial trained model includes at least one of a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency. By including these parameters in the information related to the initial trained model, the learning system can be more adaptive and responsive to the specific needs and constraints of each client, and the system can better manage client participation, optimize model updates, and can ensure that the model remains relevant and accurate.
[0078] In an implementation of the third aspect, selecting the first subset of clients includes receiving additional parameters to be used as input for selecting the first subset of clients.
[0079] In an implementation of the third aspect, selecting the first subset of clients includes receiving client characteristics, wherein the client characteristics are used for selecting the first subset of clients.
[0080] In an implementation of the third aspect, the client characteristics include at least one of: a participation level, a fairness type, timer settings, and a tracking area.
[0081] By incorporating these client characteristics into the selection process, the optimizer can make more informed decisions, leading to a more balanced and representative training dataset.
[0082] In an implementation of the third aspect, the method further includes: transmitting a feedback message; and selecting a second subset of clients for a second round based on the feedback message.
[0083] In this way, the system can adapt to changes in client performance and data distribution, ensuring that the learning process remains robust and effective over time. The ability to dynamically select clients based on the feedback can make the learning process more scalable and flexible.
[0084] In an implementation of the third aspect, the feedback message includes at least one of updated user settings, performance feedback, a timer list, network parameters, and test accuracy.
[0085] In a fourth aspect, according to an embodiment of the present disclosure, a server is provided. The apparatus may include various modules configured to execute the communication method according to the first aspect or any implementations of the first aspect.
[0086] In a fifth aspect, according to an implementation of the present disclosure, a client is provided. The apparatus may include various modules configured to execute the communication method according to the second aspect or any implementations of the second aspect.
[0087] In a sixth aspect, according to an implementation of the present disclosure, a network component is provided. The apparatus may include various modules configured to execute the communication method according to the second aspect or any implementations of the second aspect.
[0088] In a seventh aspect, according to an implementation of the present disclosure, a server is provided. The server may include at least one processor, wherein the at least one processor is configured to execute the communication method according to the first aspect or any implementations of the first aspect.
[0089] In an eighth aspect, according to an implementation of the present disclosure, a client is provided. The client may include at least one processor, wherein the at least one processor is configured to execute the communication method according to the second aspect or any implementations of the second aspect.
[0090] In a ninth aspect, according to an implementation of the present disclosure, a network component is provided. The network component may include at least one processor, wherein the at least one processor is configured to execute the communication method according to the third aspect or any implementations of the third aspect.
[0091] In a tenth aspect, according to an implementation of the present disclosure, a communication system is provided. The communication system may include a server according to the fourth aspect or the seventh aspect, a client according to the fifth aspect or the eighth aspect, and a network component according to the sixth aspect or the ninth aspect.
[0092] In an eleventh aspect, according to an implementation of the present disclosure, a computing device cluster is provided. The computing device cluster may include a processing circuitry for performing the communication method according to the first aspect or any implementations of the first aspect, the communication method according to the second aspect or any implementations of the second aspect, or the communication method according to the third aspect or any implementations of the third aspect.
[0093] In a twelfth aspect, according to an implementation of the present disclosure, a computer program product is provided. The computer program product may include computer-executable instructions which, when executed by a processor, cause the processor to execute the communication method according to the first aspect or any implementations of the first aspect, the communication method according to the second aspect or any implementations of the second aspect, or the communication method according to the third aspect or any implementations of the third aspect.
[0094] In a thirteenth aspect, according to an implementation of the present disclosure, a computer program is provided. The computer program may include computer-executable instructions which, when executed by a processor, cause the processor to execute the communication method according to the first aspect or any implementations of the first aspect, the communication method according to the second aspect or any implementations of the second aspect, or the communication method according to the third aspect or any implementations of the third aspect.
[0095] In a fourteenth aspect, according to an implementation of the present disclosure, a non-transitory computer-readable storage medium is provided. The non-transitory computer-readable storage medium may include computer-executable instructions which, when executed by a processor, cause the processor to execute the communication method according to the first aspect or any implementations of the first aspect, the communication method according to the second aspect or any implementations of the second aspect, or the communication method according to the third aspect or any implementations of the third aspect.
[0096] In a fifteenth aspect, according to an implementation of the present disclosure, a chip is provided. The chip may include an input / output (I / O) interface and a processor, wherein the processor is configured to call and run computer-executable instructions stored in a memory, to enable a device, in which the chip is present, to execute the communication method according to the first aspect or any implementations of the first aspect, the communication method according to the second aspect or any implementations of the second aspect, or the communication method according to the third aspect or any implementations of the third aspect.BRIEF DESCRIPTION OF THE DRAWINGS
[0097] Reference will now be made, by way of example, to the accompanying drawings which show example embodiments of the present disclosure, and in which:
[0098] FIG. 1 is a simplified schematic illustration of a communication system according to one or more embodiments of the present disclosure.
[0099] FIG. 2 is a schematic illustration of another example communication system according to one or more embodiments of the present disclosure.
[0100] FIG. 3 illustrates an example of an apparatus in a communication system according to one or more embodiments of the present disclosure.
[0101] FIG. 4 is a schematic illustration an apparatus in a communication system according to one or more embodiments of the present disclosure.
[0102] FIG. 5 is a schematic illustration an apparatus in a communication system according to one or more embodiments of the present disclosure.
[0103] FIG. 6 illustrates a network architecture and its functions, according to an implementation of the present disclosure.
[0104] FIG. 7 is an illustration of the network architecture that employs enhanced 5G NFs, according to an implementation of the present disclosure.
[0105] FIG. 8 illustrates a federated learning (FL) method, according to an implementation of the present disclosure.
[0106] FIG. 9 is a schematic flowchart of a communication method according to one or more embodiments of the present disclosure.
[0107] FIG. 10 is a schematic flowchart of a communication method according to one or more embodiments of the present disclosure.
[0108] FIG. 11 illustrates a digital world (DW) -assisted FL Procedure with only real world (RW) clients, according to an implementation of the present disclosure.
[0109] FIG. 12 illustrates a DW-assisted FL procedure with DW and RW clients, according to an implementation of the present disclosure.
[0110] FIG. 13 illustrates an optimizer for client selection, according to an implementation of the present disclosure.
[0111] FIG. 14 illustrates a multi-objective optimizer, according to an implementation of the present disclosure.
[0112] FIG. 15 illustrates an example feedback mechanism, according to an implementation of the present disclosure.
[0113] FIG. 16 is a schematic structural diagram of a server according to one or more example embodiments of the present disclosure.
[0114] FIG. 17 is a schematic structural diagram of a client according to one or more example embodiments of the present disclosure.
[0115] FIG. 18 is a schematic structural diagram of a network component according to one or more example embodiments of the present disclosure.
[0116] FIG. 19 is a schematic structural diagram of a communication apparatus according to one or more embodiment of the present disclosure.DETAILED DESCRIPTION
[0117] The embodiments of the present disclosure are described below with reference to the accompanying drawings.
[0118] In the following description, reference is made to the accompanying figures, which form part of the present disclosure, and which show, by way of illustration, specific aspects of one or more embodiments or examples of the present disclosure or specific aspects in which one or more embodiments or examples of the present disclosure may be used. It is understood that the embodiments or examples of the present disclosure may be used in other aspects and include structural or logical changes that may not be depicted in the figures. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present disclosure is defined by the appended claims.
[0119] Examples of wireless communication systems and devices are described below.
[0120] FIG. 1 is a simplified schematic illustration of a communication system according to one or more embodiments of the present disclosure. Referring to FIG. 1, as an illustrative example, a simplified schematic illustration of a communication system is provided. The communication system 100 may comprise a radio access network 120. The radio access network (RAN) 120 may be a next generation (e.g. 6th generation (6G) or later) radio access network, or a legacy (e.g. 5th generation (5G) , 4th generation (4G) ) radio access network. In some implementations, 6G radio access refers to a next generation air interface of standards which may comprise both terrestrial networks (TNs) and non-terrestrial networks (NTNs) , and more details will be described below. One or more communication electronic device (ED) 110a, 110b, 110c, 110d, 110e, 110f, 110g, 110h, 110i, 110j (generically referred to as 110) may be interconnected to one another or connected to one or more network nodes 170a, 170b (generically referred to as 170) in the RAN 120. A core network (CN) 130 may be a part of the communication system and may be dependent or independent of the radio access technology used in the communication system 100. The communication system 100 may also comprise a public switched telephone network (PSTN) 140, the internet 150, and other networks 160.
[0121] In general, the communication system 100 enables communication of multiple wireless or wired elements. The communication system 100 may provide content, such as voice, data, video, and / or text, via broadcast, multicast, groupcast, unicast, etc. The communication system 100 may operate by sharing resources, such as carrier spectrum bandwidth, among its constituent elements.
[0122] The communication system 100 may provide a wide range of communication services and applications including enhanced Mobile Broadband (eMBB) services, ultra-reliable low-latency communication (URLLC) services, massive machine type communication (mMTC) services, integrated sensing and communication (ISAC) , immersive communication, massive communication, Hyper reliable and low-latency communication, ubiquitous connectivity, integrated AI and communication, and other services that can be provided by a future generation communication system. The communication system 100 may provide other services and applications such as earth monitoring, remote sensing, passive sensing and positioning, navigation and tracking, autonomous delivery and mobility, etc.
[0123] FIG. 2 is a schematic illustration of another example communication system according to one or more embodiments of the present disclosure. As described earlier, the communication system 100 may include ED 110a, 110b, 110c, 110d (generically referred to as ED 110) , RAN 120a, 120b, and one or more of a CN 130, a PSTN 140, the internet 150, and other networks 160. In addition, the communication system 100 may also include a non-terrestrial network (NTN) 120c. The RANs 120a, 120b may include respective network nodes 170a, 170b such as base stations 170a, 170b, which may be generically referred to as terrestrial network (TN) devices or terrestrial transmit and receive points (T-TRPs) 170a, 170b (generically referred to as 170) . As referred to herein, the terms “TRP” and “base station” may be used interchangeably unless explicitly noted otherwise in a given example or section. For brevity, this disclosure may primarily refer to base station; however, absent an explicit limitation, references to TRP are merely non-limiting instances of interchangeable use. The T-TRPs 170a, 170b may be base stations mounted on a building or tower. In one implementation, the NTN 120c includes a RAN node such as base station 172, which may be generically referred to as an NTN device, a non-terrestrial node, a non-terrestrial network device, a non-terrestrial base station, or a non-terrestrial transmit and receive point (NT-TRP) 172.
[0124] A base station (also referred to TRP as stated above) 170 may be a network element in radio access network responsible for radio transmission and reception in one or more cells to or from the user equipment. Base station 170 may be known by other names in some implementations, such as a base transceiver station (BTS) , a radio base station, a network node, a network device, a device on the network side, a transmit / receive node, a Node B, an evolved NodeB (eNodeB or eNB) , a Home eNodeB, a next Generation NodeB (gNB) , a transmission point (TP) , a site controller, an access point (AP) , a wireless router, a relay station, a terrestrial node, a terrestrial network device, a terrestrial base station, a positioning node, among other possibilities. The base station 170 may be a macro base station (BS) , a pico BS, a relay node, a donor node, or the like, or combinations thereof. When a base station 170 performs (or is configured to perform) a method described herein, it may be interpreted as the base station, one or more modules (or units) in the base station, a circuit or chip, or a combination thereof, may perform the method. For example, the circuit or chip may include a modem chip, also referred to as a baseband chip, a system on chip (SoC) including a modem core, system in package (SIP) ) , and the like, and may be responsible for one or more communication functions in the base station.
[0125] Any base station may be a single element, as shown, or multiple elements, distributed in the corresponding RAN, or otherwise. In some implementations, a plurality of RAN nodes coordinate to assist the ED 110 in implementing radio access, and different RAN nodes separately implement different functions of the base station. For example, the RAN node may be a central unit (CU) , a distributed unit (DU) , a CU-control plane (CP) , a CU-user plane (UP) , or a radio unit (RU) etc. The CU and the DU may be separately deployed, or may be included in a same element (i.e., a baseband unit (BBU) ) . The RU may be included in a radio frequency device or a radio frequency unit (i.e., a remote radio unit (RRU) , an active antenna unit (AAU) , or a remote radio head (RRH) ) .
[0126] The ED 110 is used to connect persons, objects, machines, etc. The ED 110 may be widely used in various scenarios including, for example, cellular communications, device-to-device (D2D) , vehicle to everything (V2X) , peer-to-peer (P2P) , machine-to-machine (M2M) , MTC, internet of things (IoT) , virtual reality (VR) , augmented reality (AR) , mixed reality (MR) , metaverse, digital twin, industrial control, self-driving, remote medical, smart grid, smart furniture, smart office, smart wearable, smart transportation, smart city, drones, robots, remote sensing, passive sensing, positioning, navigation and tracking, autonomous delivery and mobility, etc.
[0127] Each ED 110 represents any suitable end user device for wireless operation and may include such devices (or may be referred to but not limited to) as a user equipment (UE) or a user device or a terminal device, a wireless transmit / receive unit (WTRU) , a mobile station, a fixed or mobile subscriber unit, a cellular telephone, a station (STA) , a MTC device, a personal digital assistant (PDA) , a smartphone, a laptop, a computer, a tablet, a wireless sensor, a consumer electronics device, a smart book, a vehicle, a car, a truck, a bus, a train, or an IoT device, wearable devices (such as a watch, a pair of glasses, head mounted equipment, etc. ) , an industrial device, or an apparatus in (e.g. module, modem, or chip) or comprising the forgoing devices, among other possibilities. Future generation EDs 110 may be referred to using other terms. When an ED 110 performs (or is configured to perform) a method described herein, it may be interpreted as the ED, one or more module (or units) in the ED, a circuit or chip, or a combination thereof, may perform the method. For example, the circuit or chip may include a modem chip, also referred to as a baseband chip, a system on chip (SoC) including a modem core, or system in package (SIP) ) , and the like, and may be responsible for one or more communication functions in the ED.
[0128] An air interface (e.g., 190a, 190b, 190c) generally includes a number of components and associated parameters that collectively specify how a transmission is to be sent and / or received over a wireless communications link between two or more communicating devices such as ED and base station. For example, an air interface may include one or more components defining the waveform (s) , frame structure (s) , multiple access scheme (s) , protocol (s) , coding scheme (s) and / or modulation scheme (s) for conveying information (e.g., data) over a wireless communications link. The air interfaces 190a and 190b may use similar communication technology, such as any suitable radio access technology.
[0129] The RANs 120a and 120b are in communication with the CN 130 to provide the EDs 110a 110b, and 110c with various services such as voice, data, and other services. The RANs 120a and 120b and / or the CN 130 may be in direct or indirect communication with one or more other RANs (not shown) , which may or may not be directly served by CN 130, and may or may not employ the same radio access technology as RAN 120a, RAN 120b or both. The CN 130 may also serve as a gateway access between (i) the RANs 120a and 120b or EDs 110a 110b, and 110c or both, and (ii) other networks (such as the PSTN 140, the Internet 150, and the other networks 160) . In addition, some or all of the EDs 110a 110b, and 110c may include functionality for communicating with different wireless networks over different wireless links using different wireless technologies and / or protocols. Instead of wireless communication (or in addition thereto) , the EDs 110a 110b, and 110c may communicate via wired communication channels to a service provider or switch (not shown) , and to the Internet 150. PSTN 140 may include circuit switched telephone networks for providing plain old telephone service (POTS) . Internet 150 may include a network of computers and subnets (intranets) or both, and incorporate protocols, such as internet protocol (IP) , transmission control protocol (TCP) , user datagram protocol (UDP) . EDs 110a 110b, and 110c may be multimode devices capable of operation according to multiple radio access technologies, and incorporate multiple transceivers necessary to support such.
[0130] In addition, the communication system 100 may comprise a sensing agent (not shown) to manage the sensed data from ED 110 and / or any one of TRPs 170 a-170b, 172. In one implementation, the sensing agent may be part of any one of TRPs 170 a-b, 172. In another implementation, the sensing agent is a separate node that can communicate with the CN 130 and / or the RAN 120 (e.g., any one of TRPs 170 a-b, 172) .
[0131] FIG. 3 illustrates an example of an apparatus 320 in a communication system (e.g., a future generation network architecture illustrated in FIG. 2) according to one or more embodiments of the present disclosure. The apparatus 320 may be a UE, a network node such as the AN, any components in the AN, the CN or any Network Function of the CN (AMF+, SMF+or any other network functions illustrated in FIG. 2) . As shown in FIG. 3, the apparatus 320 may include at least one processor 260. Only one processor 260 is illustrated to avoid congestion in the drawing. The processor 260 may perform (or control the apparatus 320 to perform) operations (or methods) described herein as being performed by the apparatus 320.
[0132] When the apparatus is the AN, components of the AN or the apparatus is the UE, the apparatus 320 may further include a transmitter 252 and a receiver 254 coupled to one or more antennas. One, some, or all of the antennas may alternatively be panels. The transmitter 252 and the receiver 254 may be integrated, e.g. as a transceiver. The transceiver is configured to modulate data or other content for transmission by at least one antenna or a network interface controller (NIC) . The transceiver is also configured to demodulate data or other content received by the at least one antenna. Each transceiver includes any suitable structure for generating signals for wireless or wired transmission and / or processing signals received wirelessly or by wire. Each antenna includes any suitable structure for transmitting and / or receiving wireless or wired signals. In present disclosure, the transceiver (or transmitter 252 and / or receiver 254) may be viewed as an interface circuit.
[0133] The apparatus 320 may include at least one memory 258. The memory 258 stores instructions used to perform operations described herein. The memory 258 may also store data used, generated, or collected by the apparatus 320. For example, the memory 258 could store software instructions or modules configured to implement some or all of the functionality and / or embodiments described herein and that are executed by the one or more processors 260.
[0134] It should be noted that in present application, “information” , when different from “message” , may be carried in one single message, or be carried in more than one separate message.
[0135] FIG. 4 is a schematic illustration an apparatus in a communication system according to one or more embodiments of the present disclosure. FIG. 4 illustrates an example of an apparatus 410. The apparatus 410 may be a communication device or an apparatus implemented in a communication device such as ED 110 or TRPs 170a-170b, 172. For example, the apparatus implemented in a communication device may be an integrated circuit, which in some contexts may be known by other colloquial names, such as chip, modem, modem chip, baseband chip, or baseband processor. In some implementations, one or more integrated circuits can be packaged into a system-on-chip, a system-in-package, or a multi-chip module. The apparatus may comprise one or more integrated circuits or comprise one or more integrated circuits and other discrete components. In some implementations, the apparatus 410 may be a module in ED 110, or apparatus 320. In some implementations, the apparatus 410 may be a module in one of TRPs 170a-170b, 172, or apparatus 320.
[0136] In an example, the apparatus 410 may include one or more processors / processor cores 411, and an interface circuit 412. The apparatus 410 may further include a memory 413. The one or more processors / processor cores 411 are configured to process signals and execute one or more communication protocols. The memory 413 is configured to store at least a part of corresponding computer program instructions and / or data. In an example, the one or more processors (or processor cores) 411 execute the computer program instructions stored in the memory 413 to implement related operations (for example, inputting, outputting, receiving, and transmitting) in the foregoing method embodiments. In some implementations, the memory 413 being configured to store the corresponding computer program instructions and / or data may mean that the memory 413 is configured to store all of the corresponding computer program instructions and / or data for execution by the one or more processors / processor cores 411. In some implementations, the memory 413 being configured to store the corresponding computer program instructions and / or data may mean that the memory 413 is configured to store a part of the corresponding computer program instructions and / or data. For example, the part of the corresponding computer program instructions and / or data include computer program instructions and / or data that need to be currently executed by the one or more processors / processor cores 411. Thus, the memory 413 may store different parts of computer program instructions and / or data for a plurality times for the one or more processors (or processor cores) 411 to perform related operations in the foregoing method embodiments. As a communication interface, the interface circuit 412 is configured to implement communication with another component. For example, the interface circuit 412 may communicate a signal with other apparatus / system such as a radio frequency processing apparatus, or processor system. Optionally, to reduce a load of the processor core, a baseband signal processing circuit 414 may be also disposed to implement processing of at least a part of baseband signals, including signal demodulation, modulation, encoding, decoding, or the like.
[0137] Apparatus 410 may be processor 260 in apparatus 320, in some scenario, or included in processor 260 in apparatus 320 in some scenario. Apparatus 410 may be or include a baseband chip. In some implementations, the apparatus 410 may be independently packaged into a chip. In some implementations, the apparatus 320 includes different types of chips. The apparatus 410 may be packaged into a processor chip (for example, a SoC chip or a SIP chip) with the different types of chips. In some implementations, the apparatus 410 may be packaged into a chip with some or all of circuits of a radio frequency processing system that may further included in the apparatus 320.
[0138] FIG. 5 is a schematic illustration an apparatus in a communication system according to one or more embodiments of the present disclosure. FIG. 5 illustrates example of apparatus 510. Apparatus 510 may include corresponding modules or units configured to implement methods and / or embodiments described herein. In some implementations, the apparatus 510 includes a processing unit 512 and a communication unit 513. Optionally, the apparatus 510 may further include a storage unit 514 configured to store apparatus program code (or instructions) and / or data.
[0139] The apparatus 510 may be an ED side apparatus, for example, an ED or a module in an ED, or a circuit or a chip responsible for a communication function in an ED. In some implementations, apparatus 510 may be implemented as apparatus 320, accordingly, the processing unit 512 is implemented as processor 260, the communication unit 513 is implemented as transmitter 252 and / or receiver 203, and the storage unit 511 is implemented as memory 208.
[0140] The apparatus 510 may be a CN side apparatus or a base station side apparatus, for example, a base station or a module in a base station, or a circuit or a chip responsible for a communication function in a base station. In some implementations, apparatus 510 may be implemented as apparatus 320, accordingly, the processing unit 512 is implemented as processor 260 (the scheduler 253 may also be included) , the communication unit 513 is implemented as transmitter 252 and / or receiver 254, and the storage unit 511 is implemented as memory 258.
[0141] In some implementations, when the apparatus 510 is an ED 110 or a module in an ED 110, a function of the apparatus 510 may be implemented by one or more processors. Specifically, the processor may include a modem chip, or a system on chip SoC chip or a SIP chip that includes a modem core. A function of the communication unit 513 may be implemented by a transceiver circuit.
[0142] In some implementations, when the apparatus 510 is a circuit or a chip that is responsible for a communication function in an ED 110, for example, a modem chip, a system on chip SoC chip or a SIP chip that includes a modem core, a function of the processing unit 512 may be implemented by a circuit system that is in the chip and that includes one or more processors or processor cores. A function of the communication unit 513 may be implemented by an interface circuit or a data transceiver circuit on the foregoing chip.
[0143] It may be understood that division into the units in the foregoing apparatus is merely logical function division. Each function may correspond to one functional unit, or two or more functions may be integrated into one functional unit. In actual implementation, all or some of the units may be integrated into one physical entity, or may be distributed in different physical entities. In addition, the foregoing functional units may be implemented in a form of hardware, may be implemented in a form of software, or may be implemented in a form of a combination of hardware and software. Whether a function is performed in a form of hardware or software depends on particular applications and design constraint conditions of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of this application.
[0144] In an example, a functional unit in any one of the foregoing apparatuses may be configured as one or more integrated circuits for implementing the foregoing methods, for example, one or more application-specific integrated circuits (application-specific integrated circuits, ASICs) , one or more central processing units (central processing units, CPUs) , one or more microprocessors (microcontroller units, MCUs) , one or more digital signal processors (digital signal processors, DSP) , one or more field programmable gate arrays (field programmable gate arrays, FPGAs) , or a combination of at least two of these integrated circuit forms.
[0145] In an example, the storage unit 901 may include a random-access memory, a flash memory, a read-only memory, a programmable read-only memory, an electrically erasable programmable memory, and / or a register.
[0146] A processor, a processor system, an application processor, a baseband processor, a processor circuit, or a processor core may be collectively referred to as a processor. The processor may include one or a combination of a central processing unit (central processing unit, CPU) , a digital signal processor (digital signal processor, DSP) , a microprocessor (microprocessor unit, MPU) , a microcontroller (microcontroller unit, MCU) , a graphics processing unit (graphics processing unit, GPU) , a field programmable gate array (field programmable gate array, FPGA) , an artificial intelligence processor (artificial intelligence processor, AI processor) , or a neural network processing unit (neural network processing unit, NPU) .
[0147] The memory may include one or more of the following storage media: a random access memory (random access memory, RAM) , a static random access memory (static RAM, SRAM) , a dynamic random access memory (dynamic RAM, DRAM) , a phase-change memory (phase-change memory, PCM) , a resistive random access memory (resistive RAM, ReRAM) , a magneto-resistive random access memory (magneto-resistive RAM, MRAM) , a ferroelectric random access memory (ferroelectric RAM, FRAM) , a cache (cache) , a register (register) , a read-only memory (read-only memory, ROM) , a flash memory (flash memory) , an erasable programmable read-only memory (erasable programmable ROM, EPROM) , a hard disk (hard disk) , and the like. In an example, the computer program instructions used to execute the foregoing embodiments may be stored in a non-volatile memory, for example, at least a part of the memory 1060 (for example, one or more of a ROM, a flash memory, an EPROM, or a hard disk) . When the terminal runs, a part or all of corresponding computer program instructions may be loaded to a memory that has a higher transmission speed with the processor, for example, at least a part of the memory 1036 and / or the memory 10312 (for example, one or more of a RAM, an SRAM, a DRAM, a PCM, a RERAM, an MRAM, a FRAM, a cache (cache) , or a register) , so that the processor executes the computer program instructions to perform the steps in the foregoing method embodiments.
[0148] The solution described in the present disclosure may be applicable to a next generation (e.g. sixth generation (6G) or later) network, or a legacy (e.g. 5G, 4G) network.
[0149] FIG. 6 illustrates a network architecture and its functions, according to an implementation of the present disclosure. FIG. 6 shows the functions in the evolutionary solutions, which are either new additions or enhancements of existing 5G functions.
[0150] The “+” represents “enhanced” , for example, the 5G AMF-Mobility function is enhanced, denoted as AMF-Mobility+, the 5G RRC function is enhanced, denoted as RRC+, the 5G Network Repository Function (NRF) is enhanced, denoted as NRF+, the 5G Session Management Function (SMF) is enhanced, denoted as SMF+, the 5G Network Exposure Function (NEF) is enhanced, denoted as NEF+, the 5G Authentication Server Function (AUSF) is enhanced, denoted as AUSF+, other enhanced functions are not described in detail herein.
[0151] The Core Network (CN) may include one or more of following Network Functions (NFs) . -Connection Management Function (CMF) : The CMF may provide functionalities to support control plane (CP) signaling between the electronic devices (EDs) , user equipment (UE) and Network Functions (NFs) in the CN. The CMF may also manage the mobility of ED and UE. -Session Management Function (SMF) : The SMF may provide CP functionalities to create and manage user plane or data plane connection between the ED, UE and NFs, and between the ED, UE and DN. -Data Storage Function (DSF) : The DSF may provide functionalities to store data of one or more of UE data, user data, NF data, application data, and network operation data, and any other types of data. The DSF may be a unified data repository (UDR) function in a 5G system. -Data Management Function (DMF) : The DMF may provide functionalities to manage one or more of DSFs. For example, some NF may send a data record of a data type to the DMF, then the DMF may select a DSF instance to store certain types of data. The DMF may be a Unified Data Management (UDM) function in a 5G system.
[0152] In some embodiments, the DMF may manage UE and ED subscription data. The ED and UE data subscription data may be provided by one or more of following methods: -The OAM (Operation, Administration, and Maintenance) function of the network may provide or configure one or more parameters of user subscription data. -A network entity (NE) , such as ED, DWCF, may provide one or more of parameters of user subscription data
[0153] The DWCF may manage some real-time digital twin (DT) information of the UE and ED, e.g. real-time location, or assigned / expected service location of ED. The DWCF may send the real-time DT information of ED to the DMF and the DMF may store the DT information of ED in a DSF. -Policy Function (PF) : The PF may create policies for different operation of network and provide policies to NFs, EDs, UEs, AN, DN. -Security Function (SF) : The SF may provide one or more of authorization function, authentication function, and data security protection for one or more of ED, UE, NF in the AN, NF in the CN, AN, and NF in the DN. -Location Management Function (LMF) : The LMF may provide one or more of functionalities: detect the UE and ED location, estimate the location of UE and ED, tracking the mobility of UE and ED. -Network Entity Repository (NER) : The NEF may provide functionalities for a network entity (NE) to register its NE profile so that other NEs can discover, select, and use the services of this NE. -Control Plane Gateway (CP GW) : The CP GW may provide an interface for NFs in the DN to access the services provided by NFs of the mobile network. -Data Plane Function (DPF) : The DPF may provide one or more of services: receiving data of NDT and NFs; processing the received data; forwarding the received data, sending processed data. -Data Plane Gateway (DP GW) : The DP GW may provide an interface to send or receive data between the mobile network and other entities in the DN.
[0154] The mobile network may provide NFs to host or support digital world (DW) applications. Some example of DW applications may include digital twin applications, metaverse applications, and other applications.
[0155] The following NFs may support DW applications. -Data Collection and Distribution Function (DCDF) : The DCDF may provide one or more of following functionalities: Data collection from NEs, such as sensor, UE, NF in the mobile network, NF in the DN; data storage management for the collected data stored in one or more of Sensor Data Storage Function (SDSF) ; data distribution to other NFs that request the data. -DW Control Function (DWCF) : may perform one or more of tasks to create and manage DW applications: Manage the operation a DW applications. -DW artificial intelligence and machine learning (AIML) model training function (MTF) : The MTF may use the collected sensor data, or any other types of data such as partially AI or ML model developed by other NE during a federated learning process, to derive AI or ML model to support DW applications. -DW artificial intelligence and machine learning (AIML) model repository function (MRF) : The MRF may provide one or more of following services: store the AIML models derived by the MTF, and distribute AIML models to other NFs and ED. An AIML model may be complete or incomplete. If the AIML model is complete, other NEs can use the complete AIML model to infer the data. If the AIML model is incomplete, other NEs may use the incomplete AIML model to further develop the incomplete AIML independently or jointly to create a complete AIML model. The -Object Context Repository function (OCRF) : The OCRF may provide one or more of services: store object context in real-time, and distribute object contexts to subscribed NFs. -Object context: e.g. UE context, ED context, NF context -DW Data Processing Function (DWDPF) : The DWDPF may provide one or more of services: -Get one or more of AIML models from the MRF; -Get the sensor data from UE, ED and NFs; -use one or more of AI / ML models or other methods to process the collected sensor data to detect the real world (RW) objects; convert the detected RW object into one or more virtual world (VW) objects that can be used by one or more DW applications; -Run application software of DW applications; -Generate actuator data for actuator devices: for example, video data for video game, patient monitoring video in hospitals, robot monitoring in smart factories, vehicle monitoring for intelligent transport system operator, lighting control in smart city or performance. -Send actuator control command and actuator data to actuator devices.
[0156] The DN may host one or more applications, e.g. DW applications. The DW applications may be implemented by using DW Controller (DWC) and DW Application Server (AS) . The DWC may provide control functionalities. The DW AS may host application software of DW applications.
[0157] The functionalities of the above NFs may be implemented by modifying NFs of the 5G network as illustrated in FIG. 6.
[0158] The CN includes a new DWCF and DWDPF, and 5G functions with enhanced services. The Access Network (AN) has a Radio Management function to provide common radio transmission functions. The Tx / Rx Point can integrate communication and sensing functionalities. The Localization Function of the AN can provide location management services provided by the AN. The Sensing Function provides sensing functionalities, such as radio access network (RAN) sensing data collection, user privacy protection. The UE, sensor and actuator devices can connect to the CN and DN via the AN. The CN provides CP and DP connections with the DN. The DN can host DW applications in DW AS and is controlled by external DWC or application function (AF) .
[0159] The DWCF provides services to control the operation of DW services, including digital world for extended reality (D-XR) , D-User, and digital twin of the network (D-Net) , and to support third-party DW services. General functionalities of DWCF include, but are not limited to, interacting with DCCF+ for data collection, interacting with ADRF for storing collected data, object context data, selecting and configuring of DWDPF, interacting with third-party DW services.
[0160] For D-XR services, the DWCF can control D-XR applications running in DWDPF (s) , manage virtual computer (hosted in DWDPF) for UE, e.g., for in-network data processing such as split video rendering, support third-party XR sessions hosted inside and outside the mobile network.
[0161] The DWCF can support DW by providing D-User service. General functionalities supported by D-User may include (1) managing network feature exposed to D-User such as traffic management, path selection, RAN feature (2) tracking and preparing interest in user content such as visited websites, downloaded clips, etc. (3) taking decisions on behalf of the user such as the user’s health control, home appliances control, etc. (4) sharing user data with third-parties while preserving privacy controlled by PPP-CP.
[0162] Functionalities related to digital infrastructure (D-Inf) include supporting network-prediction based operations and orchestrate pre-configuration of the network; deriving the configurations for D-Inf analysis, e.g., predictions for a specific scenario; configuring other network functions to establish the environment for analysis, e.g., subscription requests to DCDF; and providing authentication and access configurations for data sharing across different DW entities.
[0163] The DWDPF provides a hosting platform via DWEP functionality to run DW applications (D-Apps) , such as D-Inf, D-User, D-XR, or combinations of some DW services. Some basic services of DWDPF include R2DAF and D2RAF services. The R2DAF service is to convert the RW data to DW data that is suitable for specific DW applications. The D2RAF service is to convert the DW data to RW control messages and data for actuators.
[0164] For D-XR services, the DWDPF can provide following services: Full XR services hosted in the mobile network that produce XR video and audio streams for user devices by processing multiple video, audio, application data, environmental data streams from UEs, sensors, and application servers. Partial XR services, including R2DAF and D2RAF services, for third-party XR application servers; In-network computing service for UE, e.g. split video and audio rendering services, for user XR devices that does not have enough computing resources.
[0165] The DWDPF allows D-User to control and request special processing for the user and / or D-User traffic data since DWDPF can be controlled by the D-User service provided by the DWCF.
[0166] FIG. 7 is an illustration of the network architecture that employs enhanced 5G NFs, according to an implementation of the present disclosure.
[0167] The 5G access and mobility management function may be enhanced (5G AMF+) to provide functionalities of the CMF.
[0168] The 5G session management function may be enhanced (5G SMF+) can be enhanced to provide functionalities of the SMF.
[0169] The 5G policy control function may be enhanced (5G PCF+) to provide functionalities of the PF.
[0170] The 5G network exposure function may be enhanced (5G NEF+) to provide functionalities of the CP GW.
[0171] The 5G network repository function may be enhanced (5G NRF+) to provide functionalities of the NER.
[0172] The 5G unified data management function may be enhanced (5G UDM+) to provide functionalities of the Data Management Function (DMF) .
[0173] The 5G unified data repository may be enhanced (5G UDR+) to provide functionalities of the SDRF.
[0174] The 5G Authentication Server Function may be enhanced (5G AUSF+) to provide functionalities of the SF.
[0175] The 5G Data Collection Coordination Function may be enhanced (5G DCCF+) to provide functionalities of the DCDF.
[0176] The 5G Location Management Function may be enhanced (5G LMF+) to provide functionalities of the Location Management Function (LMF) .
[0177] The 5G Service Communication Proxy may be enhanced (5G SCP+) to support the DWCF indirect communications with other CP functions.
[0178] Data plane functions: The 5G User Plane Function may be enhanced (5G UPF+) to provide functionalities of the DPF, DWDPF, and DP GW. The 5G Analytics Data Repository Function may be enhanced (5G ADRF+) to provide functionalities of the OCRF, SDSF, MRF. The Network Data Analytics Function (NWDAF) Model Training Logical Function (MTLF) may be enhanced (5G NWDAF-MTLF+) to provide functionalities of the MTF.
[0179] According to an implementation of the present disclosure, the invention may be implemented as a combination of three techniques: 1. Class Estimation: estimates which client holds which class and the size of the data in each class 2. Client Selection: aims at choosing the optimal subset of clients so that all classes are represented with similar amount of data 3. Fixed sample size: addresses data size imbalance issue
[0180] Aspects of the present disclosure relate to the estimation of class distribution without additional client information, to ensure safeguarding privacy. Moreover, the estimation method described herein may not require additional computations, and therefore the overall efficiency of the FL algorithm may not be degraded.
[0181] Aspects of the present disclosure relate to how the network and digital world (DW) entities can assist in improving FL performance.
[0182] This method may be useful when participants (i.e., clients) of an FL method have the following characteristics: 1. Privacy requirement: The clients may have strict privacy requirements that prevent sharing any data except the trained model parameters. 2. Data class difference among clients: The clients may have different classes of data. 3. Data size differences among clients: Some clients may have large data sizes compared to other clients. In this case, the bias and influence of these clients may affect the global model adversely.
[0183] In some implementations, the above scenario may be applicable in a healthcare setting. For example, assume that the users of a healthcare application (app) may use a variety of sensors and may have different health conditions. For example, one of the users may have a back ache, and consequently more data may be collected related to the back ache. Another user may use a heart sensor, and another user may use a blood sugar sensor. The goal of a global model may be to at least detect a variety of issues, however, since the data is private, it may not be possible to obtain all the data to train a generic model. Furthermore, the users may have only certain classes of data.
[0184] Different aspects of the present disclosure may be applicable in or applied to user handsets, networking and cloud computing products. These products may also include the network functions, software and protocols.
[0185] FIG. 8 illustrates a federated learning (FL) method, according to an implementation of the present disclosure. Referring to FIG. 8, there are two parts that are discussed. Firstly, a method is presented to utilize FL methods by leveraging DW functions. Secondly, an FL method is disclosed. The solution provides robustness against non-ideal data distributions among FL clients, fairness in balancing networking and computation load for users, and privacy protection.
[0186] Aspects of the present disclosure relate to FL using network assistance.
[0187] Aspects of the present disclosure relate to an FL method in the network using the DW functions and entities. Aspects of the present disclosure relate to generic network procedures to support any FL scheme with D-Reps / D-Users.
[0188] Aspects of the present disclosure relate to initialization and bias determination methods. In the present disclosure, class determination and bias determination are used interchangeably.
[0189] Aspects of the present disclosure relate to bias removal methods and a feedback mechanism.
[0190] FIG. 9 is a schematic flowchart of a communication method according to one or more embodiments of the present disclosure. The method may be applied to a communication system including a server and at least one client. Referring to FIG. 9, the method may include the following steps.
[0191] At S910, a server transmits a first message to each client of a set of participating clients. The first message includes an initial model collection request to obtain a collection of models.
[0192] At S920, the server transmits a second message to each client of a first subset of clients. The first subset of clients is selected from the set of participating clients based on a bias estimation performed on the collection of models. The second message includes information pertaining to an aggregate model.
[0193] In an embodiment, the server may initiate the process by transmitting a first message to each client of a set of participating clients. The first message includes an initial model collection request. The server collects the initial models from the participating clients. These collected models may serve as the basis for a global model and are used for estimating biases and client contributions. After receiving the initial models, the server selects a first subset of clients from the original set of participating clients based on the bias estimation performed on the collection of models. The bias estimation may involve class estimation and client selection techniques to address data imbalance and class imbalance issues. The server then transmits a second message to the first subset of clients. The second message includes information pertaining to an aggregate model. The aggregate model is transmitted to the first subset of clients to be trained and / or updated in the process (i.e., an FL process) .
[0194] By requesting initial models from all participating clients, the participating clients may have an equal opportunity to contribute during the early stages of the FL process. Clients may need to share model parameters without additional client information, to ensure safeguarding privacy. Moreover, the estimation method described herein may not require additional computations, and therefore the overall efficiency of the FL algorithm may not be degraded. Information pertaining to an aggregate model is requested from a subset of the participating clients which is selected based on a bias estimation. Therefore, the selected subset of clients has a more balanced data distribution which helps to reduce the impact of data imbalance on model training.
[0195] In an implementation, transmitting the second message may include transmitting a request to update and / or train the aggregate model. The server transmits the second message, which may include a request to update and / or train the aggregate model.
[0196] In an implementation, at least one client of the set of participating clients may transmit a third message to the server. The third message indicates a respective model corresponding to the at least one client. The at least one client may train the initial model indicated by the first message or the aggregate model indicated by the second message based on its local data, and may then send information on the trained model to the server by the third message.
[0197] In an implementation, at least one client of the set of participating clients may be associated with a respective digital entity. The term “digital entity” may refer to a virtual representation, a digital representation or a digital twin of a physical client (the physical client may also be referred to a real world (RW) entity) . The digital entity can be used to simulate the behavior of the physical client in the FL process. At least one clients of the set of participating clients may have a corresponding digital entity. The digital entity can help in managing and representing the data of the associated client, especially in scenarios where direct data sharing is restricted due to privacy concerns. The digital entity can also be referred to as a D-client, a D-Reps / D-user, or a D-App. D-Rep is a digital representative of an entity, i.e., a digital twin. D-User is the digital twin of the network user (a person) . The D-app can be the digital representation of any application, e.g., a healthcare application using -User and / or D-Rep or used by D-User and / or D-Rep. By using digital entities, client privacy can be further preserved, and digital entities can be quickly updated or reconfigured to adapt to changing conditions or requirements in the learning process. When the respective digital entities are updated and participate in the learning process, the corresponding physical clients may not be required to transmit the entire trained model over-the-air, which can reduce the amount of data that needs to be transmitted, thereby conserving radio access network (RAN) resources. In addition, if the respective digital entity trains the model on behalf of the corresponding client, the physical client can save battery usage and storage.
[0198] In an implementation, the server may receive the third message from a respective digital entity associated with the at least one client. The third message indicates a respective model corresponding to the at least one client. The respective digital entity may train the initial model indicated by the first message or the aggregate model indicated by the second message using the corresponding client’s local data without the need to share the raw data directly with the server. The training process may happen within the client’s environment or in a simulated environment controlled by the digital entity.
[0199] In an implementation, the third message may include at least one additional parameter. The at least one additional parameter may include at least one of a synchronization time, a synchronization frequency, a data freshness measure, a timer list, one or more network parameters and fidelity. The synchronization time may indicate the time at which the digital entity will synchronize with the corresponding client (i.e., a corresponding RW entity) subsequently, that is, the synchronization time may indicate the time of next synchronization between an RW client and a DW client. The synchronization frequency may indicate how often the digital entity should synchronize with the corresponding client. Data freshness measure indicates a measure of the freshness of the data. The data freshness measure may be an actual value or an expected value. The data freshness measure may be based on a measure of time, e.g., a day old, an hour old etc., and it may indicate an exact date, or it may indicate a more abstract measure such as, but not limited to, high, low, archival and so on. The timer list may include a set of timers that indicate the time of the model collection. The one or more network parameters may include various metrics that may affect the communication and data transfer between the digital entity and the corresponding client. The one or more network parameters may include, but are not limited to, bandwidth, latency, reliability, or channel quality. If a digital entity (e.g., D-Net) of the network is available in the digital world, parameters, estimations, predictions etc. may also be sent to the server. For example, if D-Net has predictions for channel conditions, the predictions may be sent to the optimizer to schedule users with respect to their channel quality. The fidelity may refer to the accuracy or the degree to which the digital entity’s model represents the actual data and behavior of the associated client. High fidelity is desirable for ensuring that the virtual model accurately reflects the client’s data characteristics and contributes effectively to the federated learning process.
[0200] In some implementations, the server may use at least one timer to check if all the models are received. If a model has not been received, the server may re-contact the client using a new timer, and the process is repeated a certain number of times. In an example, there may be two timers. A first timer, which can be referred to as AllModelsCollection timer, checks if all the models have been collected or not. For this purpose, a countdown of several minutes / hours, a number of repetitions (e.g., send a request to the client 10 times for their initial models and then stop) or any other means to measure time can be used. The AllModelsCollection timer starts with the broadcasting of the first initial model collection request. The timer stops when either a response from all the users is received (e.g., all the models have been collected, some users may indicate they cannot / may not be able to participate, some users may request to reschedule their participation) , or when the timer expires. The AllModelCollection timer may be used in coordination with one or more granular timers, i.e., a second timer, may be referred to as a GranularTimer.
[0201] In an implementation, the server may transmit the first message to the respective digital entity associated with the at least one client. In an implementation, the server may transmit the second message to the respective digital entity associated with the at least one client.
[0202] In an implementation, the server may transmit the first message upon receiving a learning request.
[0203] In an implementation, the learning request may be received by a first node (e.g., a Network for AI (NET4AI) FL server) . In an implementation, the learning request may be received by the first node from a first network function (e.g., an application function (AF) ) .
[0204] In an implementation, a second network function may receive the learning request from the first network function. The second network function then forwards the learning request to the first node (e.g., Net4AI FL server) . In some implementations, the second network function may be a digital world data processing function (DWDPF) . In other implementations, the second network function may be any other function in the core network (CN) . The learning request may first be received by the second network function, and then forwarded to the first node. In an example, from the perspective of the requesting entity or the customer, the DWDPF may be the server, however, in operation, the DWDPF may obtain FL capabilities from the Net4AI FL server as a client of the Net4AI FL server as the DWDPF itself may not have the capabilities.
[0205] Aspects of the present disclosure relate to the client invitation process. In an implementation, the first node (e.g., Net4AI FL server) may transmit a broadcast request to a third network function. The third network function may be a network connectivity function (NCF) . The third network function may then broadcast a learning participation request to a plurality of clients. In some implementations, a learning participation response is received at the first node from the plurality of clients, wherein the participation response may indicate either an ACK or a NACK. In other implementations, the learning participation response is received at the first node from at least one client. The third network function may be responsible for managing the communication between the server and the clients. For example, the third network function may be a network connectivity function (NCF) . At least one client of the plurality of clients may receive the learning participation request from a third network function, and transmit a learning participation response to the first node. The learning participation request is used to invite the clients to participate in the FL process. After a client receives the learning participation request, it may respond with their willingness to participate. After receiving the learning participation request, the client may determine whether to participate to the learning and transmit a response. If the client will participate, the client may transmit an acknowledge (ACK) . If the client will not participate, the client may transmit a negative ACK (NACK) or transmit neither ACK nor NACK. The first node then receives the learning participation response from the plurality of clients.
[0206] In an implementation, the learning participation request may include one or more of the following: timer settings, a refresh frequency, an update indicator, a participation level, a data freshness measure, a training sample size, and a data cycle mode. The timer settings (or TimerSettings) may indicate a timer related to the FL process, or a timer related to an initial model to be trained. The timer settings may include any timer related to the FL process, e.g., a timer to indicate the expected time to respond with the trained model, the periodic data arrival, etc. The timer settings can be used to reduce the time for model collection. For example, if the FL process starts with a random client selection, the process may take longer before all the clients are selected. The timer may be used to raise an alarm in such cases. The refresh frequency (RefreshFrequency) indicates the data refresh frequency at the client end.
[0207] The update indicator (or UpdateIndicator) may be used when the data refreshing is not periodical, but sporadic. If the update indicator indicates ON, the client may send a message in the uplink (UL) to the network to indicate the arrival of new data upon obtaining new data. The update indicator may affect the participation activities of the client. For example, assume that client-X was not going to be selected in the FL round-10. However, during round-9, if client-X sends an update indicator, due to the freshness of data at client-X, client-X may be included in the list of participants for round-10.
[0208] The participation level (or ParticipationLevel) indicates the “willingness” of a client to participate in the FL process. A client with a high participation level may be more eager to contribute their data and computational resources to the training rounds. For example, client-X may have a large amount of data, computation power, battery etc., and may be willing to participate in FL rounds. On the other hand, client-Y may have low battery and client-Y may not be willing to participate unless its data is necessary for the FL. Thus, the participation level influences how clients are selected for each training round. It balances the load and benefits across all participants, ensuring that those with high willingness and resources contribute more without overburdening those with limited capabilities. A high participation level may also suggest that the client is less penalized in the client selection algorithm for being frequently called upon to participate. This means that the algorithm may prioritize these clients more often due to their high willingness and resource availability. A low participation level may indicate that involving the client in training the FL model may be costly, either in terms of resource expenditure or other constraints.
[0209] The data freshness measure (or FreshnessLimit) is used to control the freshness of data, such that old or expired data is not used or old or expired data is discarded or omitted from the FL process.
[0210] The training sample size (or TrainingSampleSize) can be used to determine a number of samples from each client that may be used for training the model. The goal is to limit the number of samples used for training the FL model and fix the number of samples used by the participating clients. For example, if client-X has 1 million data samples and client-Y has 100 data samples, client-X’s data may dominate the learning process. Therefore, to remove such bias, the sample size must be fixed.
[0211] The data cycle mode (or DataCycleMode) indicates a cycle mode for remaining data other than data with a fixed size. The data cycle mode refers to how data is managed over multiple training cycles. The data cycle mode is related to fixing the training sample size and indicates how to deal with the remaining data. For example, if the training sample size is 100, client-X in the above example may discard the remaining data, use it in a cyclic fashion, or may choose the oldest or most recent data first. In another example, Client-X has the following data: [1 2 3 4 5] . The fixed training sample size is 3. If the cyclic mode is set and it is Round-1, client-X uses [1 2 3] , after using these data points, they are attached to the end of the unused data, resulting in the new order: [4, 5, 1, 2, 3] . If the oldest data is used first, the next set of data points to be used would be the first three data points in the new order: [1, 2, 3] . If the newest data is used first, the next set of data points to be used would be the last three data points in the new order: [5, 4, 3] .
[0212] In an implementation, the learning participation response may include a fairness type. The fairness type may indicate one or more of a battery level, a computation load, storage or memory requirements. The fairness type may indicate aspects that are critical for the user, including one or more of a battery level, a computation load, storage or memory requirements.
[0213] These parameters can ensure that the FL process is efficient, adaptive to changes, and considers the clients’ capabilities and constraints comprehensively. These parameters can also help to maintain the balance between privacy preservation and the effectiveness of the learning process.
[0214] Aspects of the present disclosure relate to a process for authorizing the clients for participation in the FL process. In an implementation, the third network function (e.g., NCF) may transmit a learning authorization request to a second node (e.g., service communication proxy (SCP) or SCP+) . A learning authorization response may be received by the third network function from the second node. The third network function may then transmit information related to the set of participating clients, to the first node. The set of participating clients are determined from the plurality of clients based on the learning authorization response. The server may transmit the learning authorization request to the second node via the third network function, which handles the communication between different nodes in the network. The third network function (e.g., NCF) receives a learning authorization response from the second node. The learning authorization response may include information about clients which are authorized to participate in the FL process. With the authorization response, the third network function may proceed to transmit information related to the set of participating clients to the first node. The information may be used by the first node (e.g., NET4AI FL server) to understand which clients have been granted permission to participate in the federated learning process.
[0215] In an implementation, the information related to the set of participating clients may include one or more of the following: client identifier, authorization levels, data storage addresses, and permits for historical or extra data. The client identifier (or ClientID) indicates an identifier corresponding to each client participating in the FL process. The client identifier is used by the server and other network functions to identify different clients and manage their contributions effectively. The authorization level (or AuthLevel) indicates an authorization level of a client i.e., indicates the willingness of an authorized client to share information. Different clients may have different levels of access based on their capabilities, data sensitivity, or compliance with privacy regulations. For example, the client may share the types of samples present with the client, or the client may refuse to share any information about its data, e.g., freshness, arrival frequency, size etc. The data storage address may refer to the locations where the client’s data is stored. The permits for historical or extra data may refer to the permissions or authorizations that allow clients to share historical data or additional data beyond their current dataset. Clients may have specific rules governing what data they can share, especially if it involves sensitive or personal information. These parameters that are included in the information related to the set of participating clients can help the server ensure compliance with privacy policies and manage data sharing appropriately.
[0216] Aspects of the present disclosure relate to an initial model collection process following the client invitation process. In an implementation, the first node (e.g., NET4AI FL server) may transmit an initial model to the third network function (e.g., NCF) . The third network function may transmit the initial model to at least one client of the set of participating clients or to its respective digital entity. At the client or its respective digital entity, the model may be trained and / or updated. The first node then receives an initial trained model (i.e., the model which is trained and / or updated at the client’s end) from at least one client of the set of participating clients or its respective digital entity.
[0217] Aspects of the present disclosure relate to a digital world (DW) -assisted FL process. In an implementation, the first node (e.g., NET4AI FL server) , receives the learning request from an application (app) . The first node configures the learning request with one or more parameters and forwards the learning request to the digital world data processing function (DWDPF) .
[0218] In an implementation, the DWDPF transmits a client discovery request to a fourth network function. The fourth network function may include a data management function (DMF) , a digital service box, a digital database or a digital representation. The DWDPF then receives a discovery response from the fourth network function. The client discovery request may include one or more of the following: a list of data types, data capability and client characteristics. The list of data types may be multi-modal data. In this case, video, audio etc. may be listed as type. The list of data types may also indicate classes of data. For example, images of animals, flowers, cars may be indicated. The list of data types may also indicate method of data collection, e.g., crowd sourced data, sensing data and so on. The data capability may include data storage, processing and synchronization capabilities. Synchronization capabilities are essential for the learning. It may need to be determined if the digital entity can be efficient for the learning, e.g., if the data will be synchronized in a timely manner that may result in a similar performance with utilizing real-world users. The client characteristics may be indicated by the learning request from the application, or can be derived by the DWDPF.
[0219] The client discovery response may include one or more of the following: a gateway ID, an authorization level, client IDs, and historical bias analysis. The list of data types can also be referred to as DataTypeList. The gateway ID is a unique identifier for the network gateway that the client is connected to. The authorization levels may indicate if the client is willing to share information or not. The client IDs are unique identifiers for each client participating in the learning process. The historical bias analysis may refer to the evaluation of past data or model performance to identify any biases that may have influenced previous learning outputs.
[0220] In some implementations, the DWDPF may select an initial list of clients from a plurality of clients. The initial list of clients may be associated with one or more of the following properties: digital users and physical users, an authorization level, gateway IDs, user IDS, synchronization, fidelity levels, cost of inviting the participants, and historical bias analysis. The initial list of clients can include a mix of digital users and physical users. The authorization level may indicate if access to test data, processed gradient data etc. were allowed or not by the client. The gateway IDs may be provided to facilitate connectivity with digital entities hosted in different parts of the network. The user IDs may be pseudo IDs provided by a D-User or similar apps to protect the identity of the user. Even if a physical user is selected to participate in FL, the real identity of the user may be masked and the connectivity may always be provided by the SCP+, D-User, D-Rep or similar network function. The cost of inviting participants may vary depending on whether they are digital or physical users. The DWDPF may consider the cost-effectiveness of including certain clients in the initial list. By selecting an initial list of clients based on these parameters, the learning can be adaptable to various conditions and user privacy, and can produce high-quality models that are less prone to bias and more representative of the data contributed by the clients.
[0221] Aspects of the present disclosure relate to a client invitation and authorization process in conjunction with the DW-assisted FL process. In an implementation, the DWDPF transmits a learning authorization request to a respective digital entity associated with each client of the initial list of clients. The DWDPF then receives a learning participation response from the respective digital entity associated with at least one client of the initial list of clients. The learning authorization request includes one or more of the following: a class parameter, data characteristics, a fidelity level, a participation level, and an update frequency. The class parameter (or Class) may indicate a requested class in data of a client. The class parameter includes the list of data classes requested from the respective digital entity associated with at least one client of the initial list of clients. The data characteristics (or DataChr) may represent other characteristics of the data, such as volume, quality, source, or sensitivity. The fidelity level (or FidelityLevel) may indicate a requested twinning detail for the FL process. The fidelity level can indicate the level of detail or accuracy requested from the digital entity’s contribution to the learning process. High fidelity ensures that the virtual representation closely matches the real-world data.
[0222] The learning participation response includes one or more of the following: a wait timer for a synchronization parameter, a next synchronization time stamp, a data size, a data freshness measure, and storage information. The wait timer for a synchronization parameter (or WaitTimerforSynch) may indicate time to receive data from a client. The wait timer may be a timer for synchronization parameter indicates the time (expected or planned) to receive data from the physical user. The wait timer may be periodic or one-time. The next synchronization time stamp (or NextSynch) may indicate time of next synchronization between a client and the respective digital entity. The next synchronization time stamp is an alternative time stamp indicating the time of the next synch. The previous timer and the next synchronization time stamp may help to calculate an expected bias removal starting time. The data size may indicate a data size of at least one of a client or a digital entity. The data freshness measure may indicate a measure of the freshness of data of at least one of a client or a digital entity. The storage information indication to indicate a data storage address and / or a data accessing manner of at least one of a client or a digital entity.
[0223] The DWDPF then forwards the learning participation response to the first node (e.g., NET4AI FL server) . In an implementation, the DWDPF further transmits information related to a set of participating clients to the first node (e.g., NET4AI FL server) . The set of participating clients are determined from the initial list of clients based on the learning participation response.
[0224] Aspects of the present disclosure relate to an initial model collection process in conjunction with the DW-assisted FL process. In an implementation, a fifth network function (e.g., a digital world control function (DWCF) ) , may transmit an initial model to the respective digital entity of each client of the set of participating clients. At the respective digital entity receiving the initial model, the model is trained and / or updated. The fifth network function may then receive an initial trained model (the model which is trained and / or updated respective digital entity) from the respective digital entity of at least one client of the set of participating clients. The respective digital entity of at least one client of the set of participating clients may receive the initial model from the fifth network function, and transmit an initial trained model to the fifth network function. The fifth network function can be a control plane function, such as a DWCF. If the first node does not have access to D-Apps, the DWDPF or the fifth network function may be involved. The collection of initial models can allow the server to adjust the selection of the subset of participating clients based on the initial trained model from at least one client of the set of participating clients or the respective digital entity associated with the at least one client.
[0225] Aspects of the present disclosure relate to bias estimation and client selection processes following the initial model collection process. The second network function or the DWDPF may transmit information pertaining to an initial trained model to a bias estimator. In an implementation, the information pertaining to the initial trained model that is transmitted may include the entire initial trained model and / or information related to the initial trained model. In another implementation, the information pertaining to the initial trained model may include last layer weights of the initial trained model. In yet another implementation, the information pertaining to the initial trained model includes one or more of the following: a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency.
[0226] The bias estimator determines the bias estimates based on the information pertaining to the initial trained model and transmits the bias estimates to an optimizer. In an implementation, the bias estimator uses the last layer weights of the initial trained model to determine the bias estimates. The optimizer selects a first subset of clients for a first round based on the bias estimates it receives from the bias estimator. In addition to the bias estimates, the optimizer receives additional parameters from the DWDPF to be used as input for client selection.
[0227] The optimizer then transmits information pertaining to the first subset of clients to the second network function or the DWDPF.
[0228] In an implementation, the optimizer selects the first subset of clients using client characteristics. The optimizer may receive the client characteristics from the first node (e.g., NET4AI FL server) or the third network function (e.g., NCF) . The client characteristics may include one or more of the following: a participation level, a fairness type, timer settings, and a tracking area (TA) .
[0229] After the client selection process, in an implementation, the fifth network function (e.g., DWCF) , transmits an aggregate model to at least one client of the first subset of clients or its respective digital entity or both, to be trained and / or updated. The use of DWCF can allow the communication system to adapt to varying network conditions and client capabilities, ensuring a robust and flexible federated learning environment.
[0230] In an implementation, the fifth network function may receive a respective trained model from at least one client of the first subset of clients. The fifth network function then forwards the respective trained model to the DWDPF.
[0231] Aspects of the present disclosure relate to a feedback mechanism incorporated in the FL process of the present disclosure. In an implementation, the second network function or the DWDPF may transmit a feedback message to the optimizer. The feedback message may include one or more of the following: updated user settings, performance feedback, a timer list, network parameters, and test accuracy. The optimizer then selects a second subset of clients for a second round based on the feedback message.
[0232] In an implementation, the DWDPF may transmit information related to the set of participating clients to the first node. The set of participating clients are determined from the initial list of clients based on the learning participation response. The DWDPF’s role in managing model transmissions may ensure that network resources are used efficiently, potentially leading to cost savings for network operators and improved service quality for users.
[0233] The following describes implementations of bias estimation and client selection according to one or more embodiments of the present disclosure.
[0234] FIG. 10 is a schematic flowchart of a communication method according to one or more embodiments of the present disclosure. This method can be implemented by one or more network components or network functions. For example, the network components may include a bias estimator function, a DWDPF function, an optimizer function, etc. As illustrated in FIG. 10, the method can include the following steps.
[0235] At S1010, transmit information pertaining to an initial trained model.
[0236] At S1020, transmit bias estimates, where the bias estimates are determined based on the information pertaining to the initial trained model.
[0237] At S1030, select a first subset of clients from a set of participating clients for a first round based on the bias estimates.
[0238] At S1040, transmit information pertaining to the first subset of clients.
[0239] The network function (e.g., a NET4AI FL server, the DWDPF function, or a processing function, or the second network function) transmits information pertaining to an initial trained model to a network function (e.g., the bias estimator) which can be used to perform bias estimation. The network function (e.g., the bias estimator) transmits bias estimates determined based on the information pertaining to an initial trained model. The network function (e.g., the optimizer function) selects a subset of clients from a set of participating clients for a first round based on the bias estimates, and transmits information pertaining to the first subset of clients to a processing function.
[0240] In an implementation, the second network function or the DWDPF may transmit information pertaining to the initial trained model to a bias estimator. The bias estimator may transmit bias estimates to an optimizer. The bias estimator determines the bias estimates based on the information pertaining to the initial trained model; the optimizer may select the first subset of clients for a first round based on the bias estimates. The optimizer may transmit information pertaining to the first subset of clients to the second network function or the DWDPF. In some implementations, the bias estimator may be a service provided by NET4AI or may be an internal service in DW or an App doing the bias estimation.
[0241] By performing bias estimation and selecting a subset of participating clients for a next round based on the bias estimates, a more diverse and representative training dataset can be obtained for the learning, which can lead to improved model performance and generalization and can help reduce the impact of data imbalance on model training. Moreover, the estimation method does not require additional computations, and therefore the overall efficiency of the FL algorithm is not degraded.
[0242] In an implementation, the server or the network function may transmit at least one of the initial trained model and information related to the initial trained model. At least one of the initial trained model and information related to the initial trained model can be transmitted for bias estimation. In this way, the privacy of the clients’ data can be protected and the system can adapt to changes in data distribution and client participation, ensuring that the FL process remains robust and effective.
[0243] In an implementation, the information pertaining to the initial trained model may include last layer weights of the initial trained model, which may be used by the bias estimator to determine the bias estimates. The DWDPF or the second network function may transmit the last layer weights to the bias estimator, and the bias estimator may use the last layer weights of the initial trained model to determine the bias estimates. Before transmitting the weights, the weights may be anonymized to further protect the client’s privacy from applications. By analyzing the last layer weights, the system can identify and mitigate the biases arising from non-identically distributed (non-IID) data across clients, which can lead to a fairer and more representative model that generalizes better across different data distributions.
[0244] In an implementation, the information pertaining to the initial trained model may further include at least one of a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency. The update frequency of the first subset of clients can be determined by the app, DWDPF, optimizer or any other entity. By including these parameters in the information related to the initial trained model, the learning system may be made more adaptive and responsive to the specific needs and constraints of each client, and the system can better manage client participation, optimize model updates, and ensure that the model remains relevant and accurate.
[0245] In an implementation, the optimizer may receive from the DWDPF additional parameters used as input to the optimizer for selecting the first subset of clients. The DWDPF may receive additional parameters e.g., a participation round counter by the user, updates in user preferences, e.g., participation, updates on user characteristics, e.g., battery level, feedback from user, e.g., accuracy, convergence rate, computation load, new data update etc. The DWDPF may transmit the additional parameters to the optimizer as a basis for selecting the subset of clients. By transmitting the additional parameters to the optimizer, the DWDPF can help in selecting a subset of clients that are more likely to contribute effectively to the FL process. This can lead to a more efficient and effective federated learning process that can address real-world data distribution challenges.
[0246] In an implementation, the optimizer may receive client characteristics from the first node or the third network function. The client characteristics are used by the optimizer for selecting the first subset of clients. The client characteristics may include at least one of: a participation level, a fairness type, timer settings, and a tracking area (TA) . The tracking area may refer to a geographical or network location of the client. By incorporating these client characteristics into the selection process, the optimizer can make more informed decisions, leading to a more balanced and representative training dataset.
[0247] In an implementation, the fifth network function may transmit the aggregate model to at least one of at least one client of the first subset of clients and the respective digital entity associated with the at least one client of the first subset of clients. A client of the first subset of clients and / or a respective digital entity associated with the client of the first subset of clients may receive the aggregate model, train the aggregate model using local data, and then transmit the respective trained model to the fifth network function. The fifth network function may receive a respective trained model from at least one client of the first subset of clients, and the fifth network function may forward the respective trained model to the DWDPF. After determining the first subset of clients, the fifth network function may transmit the aggregate model to the client of the first subset or its respective digital entity rather than transmitting the aggregate model to all the participating clients, which can optimize network resources. The fifth network function (e.g., DWCF) may manage the exchange of models between the server and clients or their associated digital entities.
[0248] In an implementation, the second network function or the DWDPF may transmit a feedback message to the optimizer, and the optimizer may select a second subset of clients for a second round based on the feedback message. The feedback message may include at least one of updated user settings, performance feedback, a timer list, network parameters, and test accuracy. The information included in the feedback message can be an input for the client selection algorithm. The timer list may indicate the data update times, frequency etc., to synchronize a D-User’s participation with data updates, which can help to schedule D-User to participate after receiving new data to ensure data freshness and sufficiency. If a digital twin or metaverse of the network is available in the digital world, e.g., D-Net, parameters, estimations, predictions etc. may also be sent to the optimizer. For example, if D-Net has predictions for channel conditions, it may be sent to the optimizer to schedule users with respect to their channel quality. The optimizer can select a second subset of clients for a next round based on the feedback message. In this way, the system can adapt to changes in client performance and data distribution, ensuring that the learning process remains robust and effective over time. The ability to dynamically select clients based on feedback can make the learning process more scalable and flexible.
[0249] FIG. 11 illustrates a DW-Assisted FL Procedure with only RW clients, according to an implementation of the present disclosure.
[0250] NET4AI –the network optimizes the federated learning scheme to make it robust against bias while achieving networking objectives and user service requirements.
[0251] Healthcare scenario with potential user feedback. Consider users with different sensors and data and they contribute to a generic model that could detect multiple conditions.
[0252] This embodiment has three main processes: 1. Determining the client set that will participate in the FL. Options: a. Clients are contacted or responses are collected to a broadcasted message. b. D-Users of clients are contacted and D-Users may request ACK from the clients. Hybrid 2. Collecting initial models from all users to estimate bias. Options: a. Use at least one timer to check if all the models are received. If not, re-contact the clients that did not send the models. Repeat a certain number of times (anew timer) . b. Start the FL process without bias removal. Try to choose clients to minimize time until all models are collected. Once all the models are collected, start FL with bias removal. i. May include timers to indicate a maximum time before bias removal begins. 3. Client subset determination for each FL round. Options: a. Use the proposed multi-objective optimizer to balance bias-removing subset determination and fairness among clients. Option to include other network objectives with appropriate weights. b. Random selection and other methods.
[0253] In this solution, the D-User (e.g., the digital entity mentioned above) is not involved and the physical users are the clients of the FL. However, DW functions still help to utilize the proposed robust FL method. This solution uses new parameters and message flow to provide improvement on the regular FL scheme to introduce bias removal. Physical clients receive a broadcasted FL participation request.
[0254] The list of clients to be broadcasted may be determined and confined with the help of D-Apps, e.g., D-Users, which may analyze the requests on customers and provide a well-tailored message.
[0255] For example, the application may be for health and D-App may have a list of sensors on the user. The D-App may determine if the sensors have relevant data to the app and if the user’s pre-set authorization level is suitable. D-App / D-User may also provide predictions on when the data will be available, for example.
[0256] DW mainly assists to determine the set of users and may provide a simulation environment, algorithm library and data storage resources, especially if it is a D-App.
[0257] The detectable messages are service requests and responses among the DW, anything-as-a-service (XaaS) and customer. D-App and D-User correspond to DW, XaaS include NET4AI, Bias Estimator and Connection function, customer include AF and clients. Detailed steps are as follows.
[0258] 1. An FL request (e.g., the learning request mentioned above) is received by the NET4AI FL server (e.g., the first node mentioned above) , which is a set of functionalities that facilitate providing AI services over the network (NET4AI) . Class indicates a list of classes that the clients’ data should contain. a. The request may be arriving in various ways. For example, i. the request may come from an application function (AF) 1102 (e.g., the first network function mentioned above) directly to the NET4AI entity 1105, or ii. the request may first go to a Digital Application Function 1103, e.g., DW Data Processing Function (DWDPF) 1104 and then forwarded to the NET4 AI FL server 1105. In this case, the DWDPF 1104 may act as the server and obtain services from the NET4AI provider.
[0259] 2. FL server (the provider of the FL algorithm) and NET4AI FL server 1105 (the facilitator of the algorithm usage) evaluate the request, e.g., mission preparation, data retrieval, model determination (if not already provided) , computing and communication requirements, etc.
[0260] 3. Physical user / client invitation process starts by requesting to forward the FL processing request to clients. A Network Connectivity Function (e.g., the third network function mentioned above) 1109 can be used to facilitate broadcasting the request to the identified users, e.g., via ClientListNo, and some or all of the parameters to be broadcasted may be included in the broadcast request, e.g. ‘ParameterListNo’ . Previously prepared templates may also be used. Client list number indicates a list of clients to receive the broadcasted message. Parameter list number indicates the parameters for broadcasting. There can be multiple lists, and the number of the list may be indicated.
[0261] 4. The network connectivity function 1109 broadcasts the message (e.g., the learning participation request mentioned above) . The parameters can be a combination of one or more of the following: a. ‘TimerSettings’ (e.g., the timer settings mentioned above) includes any timer related to the FL process, e.g., to indicate the expected time to respond with the trained model, the periodic data arrival, etc. b. ‘RefreshFrequency’ (e.g., the refresh frequency mentioned above) indicates the refreshing of the data at the client end. c. UpdateIndicator (e.g., the update indicator mentioned above) is used when the data refreshing is not periodical, but sporadic. If this setting is ON, the client may send a message in the uplink (UL) to the network to indicate the arrival of new data, which may affect the participation activities of the client. For example, client-X was not going to be selected in the FL round-11. However, during round-10, client-X sends an update indicator. Then, due to freshness of data, client-1 is included in the list of participants for round-11. d. ParticipationLevel (e.g., the participation level mentioned above) indicates the “willingness” of a client to participate in the FL process. For example, client-X has a lot of data, computation power, battery etc. and it is very willing to participate in FL rounds. On the other hand, client-Y has low battery and client-Y is not willing to participate unless its data is necessary. Although this parameter is used in the proposed algorithm, it can be used in other FL methods as well. e. FreshnessLimit (e.g., the data freshness measure mentioned above) is to limit the freshness of data, such that old / expired data is not used / discarded / omitted from the FL process. f. TrainingSampleSize (e.g., the training sample size mentioned above) is another parameter used in the proposed algorithm, but it can be used by any other FL scheme as well. The goal is to limit the number of samples used for training the FL model and fix it over all the clients as much as possible. For example, if client-X has 1 million data samples and client-Y has 100 data samples, client-X’s data dominates the learning process. The goal is to remove such bias by fixing sample size. g. DataCycleMode (e.g., the data cycle mode mentioned above) is related to fixing the training sample size and tells what to do with the remaining data. For example, if the training sample size is 100, client-X in the above example may discard the remaining data, use it in a cyclic fashion, or may choose the oldest or most recent data first. h. Other parameters: BatchSize indicates the number of training samples to be used in one forward / backward pass. NumEpoch indicates the number of passes of the entire training dataset through an algorithm.
[0262] 5. The clients 1101 respond to the FL request (e.g., via learning participation response mentioned above) . If a client will not participate, a NACK is not required but an ACK is expected if the client is participating. FairnessType (e.g., the fairness type mentioned above) indicates the aspects that are critical for the user e.g., battery level, computation load, storage / memory requirements etc.
[0263] 6. SCP+ (e.g., the second node mentioned above) 1110 may be involved in authorization process for the clients and the FL requester and server. AuthLevel (e.g., the authorization level mentioned above) for the client indicates the authorization level of the client, e.g., if the client is willing to share information or not. For example, the client may share the types of samples it has, or the client refuses to share any information about its data, e.g., freshness, arrival frequency, size etc.
[0264] 7. The authorization message (e.g., the learning authorization request mentioned above) exchange among the FL entities, clients and SCP+ 1110 is completed.
[0265] 8. The authorization response (e.g., the learning authorization response mentioned above) is sent from the SCP+1110 to the communication function. It may include: a. The list of authorized clients. b. Data storage addresses, permits for historical or extra data etc. c. ExtraDataLoc indicates a location of extra data.
[0266] 9. The finalized list and parameters are transmitted to the FL customer for approval and the NET4AI FL server 1105 to facilitate the operations.
[0267] 10. NET4AI FL server 1105 may share the related parameters with the D-Net optimizer 1108, or any other network function which will be used to select the participating clients in each round. In this invention, the subset of clients that will participate in the FL operation is determined by the D-Net optimizer 1108.
[0268] Alternatively, client characteristics may be received from the connection function. In some cases, the connection function may collect the client characteristics from users.
[0269] 11. A final acknowledgement may be obtained by the FL customer before the initial model collection starts. a. BiasRemovalStartTimer indicates the starting time of bias removal. NumClients indicates the number of clients.
[0270] 12. The customer may send an ACK message by approving all the parameters and users, or the ACK message may include some modifications.
[0271] 13. NET4AI server 1105 or the customer or the D-App 1103 provides the initial model to be distributed to all clients 1101 (in case of proposed bias-removal method) , indicated with ‘BlankModel’ (e.g., the first message mentioned above) . a. This message may include further parameters. b. This message may go to the connection function first, and then distributed to the users, or the message may be sent directly to the clients 1101.
[0272] 14. Initial trained FL models (e.g., the initial trained model mentioned above) are collected from the physical clients. a. There can be different schemes to collect all the models and initiate the bias removal as discussed in the beginning section, the following section, and in subsequent embodiments.
[0273] 15. Bias removal, model aggregation and other FL actions take place. Details of this step is provided in the following section, involving the client (s) 1101, AF 1102, DWDPF 1104, NET4AI FL Server 1105, D-User (s) 1106 and bias estimator 1107.
[0274] 16. The user subset (e.g., the first subset of clients or second subset of clients mentioned above) to participate in the next round of FL training is determined. Additional details on this step are further described are provided.
[0275] 17. Steps 13-16 are repeated until convergence or any other pre-set criteria are satisfied. In case of any updates regarding one of the clients, steps 11-12 or 6-12 may be repeated.
[0276] FIG. 12 illustrates a DW-assisted FL procedure with DW and RW clients, according to an implementation of the present disclosure. The procedure is as follows:
[0277] 1. An App 1203 Requests FL and provides some targets, settings etc. The NET4AI server (e.g., the first node mentioned above) 1204 in the network prepares the FL request (e.g., the learning request mentioned above) with certain parameters (e.g., the one or more parameters mentioned above) and sends it to a network function, e.g., DWDPF (e.g., the second network function mentioned above) 1205. The parameters can include one or more of the following: a. BiasRemoval indication: Whether bias removal is applied or not, the specific bias removal method, bias update frequency and so on can be indicated with this parameter. Bias update frequency is used to track potential changes in the data characteristics of a user. For example, if the FL participant is a highly mobile user who provides images and the images change frequently, e.g., sea side vs city, crowded vs isolated, the user will be providing images with different characteristics and its bias information needs to be updated with a proper frequency. This value may be generic or may be updated based on a user. It may be requested from the user as well (an example is described in the following steps) . b. PrivacyLevel: Some bias removal algorithms may require a feedback, test sample, processed gradient information etc. from the users. The proposed bias removal algorithm in this invention assumes that a privacy level is the highest and no additional information is provided by the user other than the trained model parameters. However, the proposed procedures in this embodiment are generic to any FL method with any privacy level. c. UserChar: User characteristics, such as processing capability, battery capability, storage capability, link quality, etc. may be indicated. d. A target accuracy level for the FL may be determined and a test set may be provided.
[0278] 2. DWDPF 1205 evaluates the request and determines data and user-related parameters.
[0279] 3. DWDPF 1205 may send a ClientDiscoveryReq (e.g., the client discovery request mentioned above) to a data management function (DMF) (e.g., the fourth network function mentioned above) 1209 in the network with the parameters derived above. Alternatively, the discovery may be an internal process where the DWDPF 1205 checks an internal Digital Twin / Digital Representative / Digital World / Digital Service Box / etc. database. The parameters for discovery can include one or more of the following: a. DataTypeList (e.g., the data types mentioned above) b. DataCapability (e.g., the data capability mentioned above) : Data storage, processing and synchronization capabilities. Among these, synchronization capabilities are essential for FL. It may need to be determined if the D-User can be efficient for FL, e.g., if the data will be synchronized in a timely manner that may result in a similar performance with utilizing real-world users. c. Characteristics (e.g., the client characteristics mentioned above) : User characteristics may be provided in Step-1 or derived by the DWDPF 1205 in Step-2.
[0280] 4. DWDPF 1205 receives a discovery response (e.g., the client discovery response mentioned above) with Gateway ID (e.g., the gateway ID mentioned above) , Authorization level (e.g., the authorization level mentioned above) , user IDs (e.g., the client IDs mentioned above) , historical bias analysis and so on.
[0281] 5. Based on the responses, DWDPF 1205 selects the initial list. The list has one or more of the following properties: a. The list can include a mix of D-Users and physical users. b. Authorization level indicates if access to test data, processed gradient data etc. were allowed or not. c. Gateway IDs may be provided to facilitate connectivity with DW entities hosted in different parts of the network. d. UserIDs may be pseudo IDs provided by the D-User or similar apps to protect the identity of the user. Even if a physical user is selected to participate in FL, the real identity of the user may be masked and the connectivity may always be provided by the SCP+, D-User, D-Rep or similar network function. e. The list of participants may be prepared by considering synchronization, fidelity levels, cost of inviting the participants and so on. The cost of participating may be different for digital and physical users. f. If the historical bias analysis exists for the users, it may be provided to help determine participants.
[0282] 6. Physical UE invitation process may take place as described in the previous embodiment.
[0283] 7. DWDPF 1205 may request authorization from D-Clients 1206, e.g., D-App, D-User. a. Class parameter includes the list of data classes requested from the D-Client. b. DataChr (e.g., the data characteristic mentioned above) represents other data characteristics. c. FidelityLevel (e.g., the fidelity level mentioned above) is the requested twinning detail for the FL. d. ParticipationLevel (e.g., the participation level mentioned above) indicates the requested activities from the client. For example, the user may be reluctant to participate for a large number of training rounds. Such users may be rarely called. A tradeoff forms if a user holds a rare class and is also reluctant to participate. Another example of participation includes sending feedback. A user may test the aggregated model on its device with its local data and may send a feedback about the quality of the test results, e.g., accuracy, convergence etc. This kind of feedback does not violate privacy but can help the server improve the FL parameters, e.g., client selection objectives. i. ParticipationLevel high may indicate that the penalty in the client selection algorithm’s objective function for frequently calling this user is low, or the constraints regarding the participation of the user are loose. ii. ParticipationLevel low may indicate that requesting the user to train the FL model incurs a high cost, or that the optimization is unable to find a feasible solution with the participation of the user due to strict constraints.
[0284] 8. The Digital Representative may forward all or some of the authorization request parameters, and send additional parameters if needed, to the physical user (e.g., Client (s) 1201) . The user may approve the parameters, may provide values, settings etc. for some parameters or may reject some parameters.
[0285] 9. FL participation ACK (e.g., the learning participation response mentioned above) is received by the entity that will act as the aggregation server, e.g., DWDPF 1205 in this case. a. Wait Timer for Synchronization parameter indicates the time (expected or planned) to receive data from the physical user. This timer may be periodic or one-time. b. NextSynch (e.g., the next synchronization time stamp mentioned above) is an alternative time stamp indicating the time of the next synch. The previous timer and NextSynch may help to calculate an expected bias removal starting time. c. DataSize (e.g., the data size mentioned above) may or may not be provided. The proposed method in this invention does NOT require DataSize, as it is a privacy violation. However, if there is an appropriate authorization level and another method requires this information, there may be an option to provide it. d. Freshness (e.g., the data freshness measure mentioned above) indicates a measure of the freshness of the data. It may be an actual measure or an expected measure. Freshness may be based on a measure of time, e.g., a day old, an hour old etc., and it may indicate an exact date, or it may indicate a more abstract measure such as high, low, archival and so on. e. StorageInfo (e.g., the storage information mentioned above) indicates where the data should be accessed and how it should be accessed, e.g., privacy preserving mechanisms, data-as-a-service parameters, policies and so on. f. Other parameters may be included and DWDPF 1205 may need to obtain permission / approval / authorization from NET4AI 1204 or App for those parameters.
[0286] 10. FLModel () (e.g., the initial model mentioned above) is sent to DW. If NET4AI 1204 does not have access to D-Apps, DWDPF 1205 or a control plane function, such as DWCF (e.g., the fifth network function mentioned above) 1202 may be involved. Similarly, trained models are collected. Initial FLTrainedModel () (e.g., the initial trained model mentioned above) collection may not be immediate due to many factors, such as scheduling of computing resources, data update timer etc.
[0287] 11. DWDPF 1205 or the DWCF 1202 or the NET4AI server 1204 can check 11a for the timers to complete the collection of initial models. Then, determine if there are some clients that are late to submit their trained initial models. a. If the timer to start FL is past, or if the FL needs to start immediately, the FL may start without bias removal, or with a subset of clients who had submitted their trained initial models. b. TrainingReq () : An additional training request may be sent 11b to the clients who did not submit their trained models yet. c. TrainingResp () : The clients may respond 11c with a timer / time indication / schedule to train the model.
[0288] 12. A second check may take place upon receiving the responses from clients. It may trigger repeat of step-11.
[0289] 13. Aggregation and client selection may continue taking place without waiting for the completion of the initial trained models. Client selection may take place randomly or by other methods, e.g., among the clients whose models are received. In this case, Step-14 may take place before Step-13.
[0290] 14. DWDPF 1205 or a processing function may send the last layer weights to a bias estimator 1207. It may be a service provided by NET4AI or may be an internal service in DW or an App doing the bias estimation using the last layer weights. a. Before sending the weights, the weights may be anonymized to further protect the client’s privacy from applications.
[0291] 15. Bias estimates are sent from the bias estimating function 1207 to the network optimizer 1208 as an input parameter for client selection.
[0292] 16. Another input for the client selection algorithm can be the timers related to user data updates and other network parameters. a. TimerList () (e.g., the timer list mentioned above) : indicates the data update times, frequency etc., to synchronize a D-User’s participation with data updates. b. Network parameters: If a digital twin or metaverse of the network is available in the digital world, e.g., D-Net, parameters, estimations, predictions etc. may also be sent to the optimizer. For example, if D-Net has predictions for channel conditions, it may be sent to the optimizer to schedule users with respect to their channel quality. c. Not shown --some parameters may be provided by the App as well, if they are not provided in the beginning to the NET4AI server 1204 (or the FL service-providing function) .
[0293] 17. Optimizer 1208 prepares the client set.
[0294] a. The client set can be for this round only or may include a schedule of a number of rounds. The update frequency of the client set can be determined by the app 1203, DWDPF 1205, optimizer 1208 or any other entity. It may be related to the channel conditions, data synchronization frequency and so on.
[0295] 18. FL model is distributed to selected clients (both physical and digital) . a. DWDPF 1205 may prepare the message and DWCF 1202 may distribute it with the help of other communication functions and connectivity-as-a-service providers.
[0296] 19. Trained models are collected by the DWDPF 1205. a. DWDPF 1205 may receive additional parameters, e.g., a participation round counter by the user, updates in user preferences, e.g., participation, updates on user characteristics, e.g., battery level, feedback from user, e.g., accuracy, convergence rate, computation load, new data update etc. b. DWCF 1202 may facilitate reception of the messages.
[0297] 20. DWDPF 1205 aggregates the models and prepares feedback as in the embodiments described in FIG. 13 and FIG. 14.
[0298] 21. DWDPF 1205 updates the weights, anonymized user round counts, and other information received from the users that are relevant for the optimizer 1208 and bias estimator 1207. a. Bias estimator 1207 and optimizer 1208 may be updated periodically, instead of being updated frequently, or may be based on a trigger, e.g., feedback detecting performance loss, unsuccessful bias removal etc.
[0299] 22. The user subset for the next round begins and relevant steps are repeated until the FL process is completed.
[0300] According to the method of one or more embodiments of the present disclosure, client selection can be optimized to provide both minimal bias and network or user targets. Assuming the D-Users are already updated, the user does not have to transmit the trained model over-the-air. For example, if the users’ battery levels are critical, client selection can be optimized to minimize participation of users with critical battery levels. Digital representatives / twins of users can be used on behalf of them. In this case, real-world user is not participating and thus, saves RAN resources and battery. In addition, DW capabilities can be utilized, and privacy-preserving bias removal can improve the quality of FL.
[0301] Initialization and Class Proportion Estimation
[0302] Aspects of the present disclosure use the last layer weights to identify potential bias of a user by relating the weight corresponding to a class to the number of samples of that class. In a normal FL scheme, model weights are sent from the client to the server for aggregation and hence, there is no additional computation or data. However, in order to ensure bias estimation works well, a specific initialization method may be required to be applied.
[0303] I. Initialization method
[0304] The last layer weights are initialized with an appropriate positive value. Since a gradient is not used, the direction of change cannot be known. Normally, a positive value in EQ X indicates the existence of a class. However, if the weights are initialized as very low negative values, then the amount of increase in the weight values may not be enough to reach a positive point. Similarly, if the initial values are too large positive values, then the absence of a class may not be detected. Therefore, the following initiation method is proposed. If revealing a number of classes in the whole set is not considered a privacy violation, then the method in Equation 1 can be used. If the number of classes needs to stay hidden, then the method in Equation 4 can be used. The main difference is the initial weight calculation.
[0305] Initialization when the number of classes is known
[0306] To remove the data dependency, the ratio is calculated in the following way:
[0307] For a particular client k, train the model once before participating in the FL process. Before starting to train on its data, modify the last layer weight initialization to static value as follows: Equation 1 where initial_weight_value denotes an initialized last layer weight, num_classes denotes the number of classes in the dataset, num_input_features is the number of input features, (num_neurons) i denotes the number of neurons for class i in the neural network, (num_neurons) i+1 denotes the number of neurons for class i+1 in the neural network.
[0308] After training, it satisfies the following relation Equation 2 where E denotes the cost function of the neural network, c denotes the number of classes, ni, k denotes number of samples belonging to the class i of the client k, nj, k denotes number of samples belonging to a class j of the client k, where i≠j, jε C, denotes a new weight corresponding to class i at client k, denotes a new weight corresponding to class j at client k, and B denotes the total number of classes.
[0309] To bring the ratio on a common scale for the clients, the ratio is modified as follows: Equation 3 where βi, k denotes a bias estimate value corresponding to class i at client k, E denotes the cost function of the neural network, c denotes the number of classes, ni denotes the number of samples for class i , nj, k denotes number of samples belonging to a class j of the client k, where i≠j, jε C, denotes a new weight corresponding to class i at client k, denotes a new weight corresponding to class j at client k, all classes belong to the set C= {c1, c2, …, cB} , |C|=B, and k= {1, 2, …, K} .
[0310] Once the class proportions are estimated, the global model will store this class result at a safe location and perform the aggregation to produce a global model.
[0311] Initialization when the number of classes is hidden
[0312] To remove the data dependency, the ratio is calculated in the following way: For a particular client k, train the model once before participating in the FL process. Before starting to train on its data, modify the last layer weight initialization to static value as follows: Equation 4 where initial_weight_value denotes an initialized last layer weight, num_input_features denotes the number of classes in the dataset, num_input_features denotes the number of input features to the last layer of the neural network., (num_neurons) i denotes the number of neurons for class i in the neural network, (num_neurons) i+1 denotes the number of neurons for class i+1 in the neural network.
[0313] After training, it satisfies the following relation, Equation 5 where E denotes the cost function of the neural network, c denotes the number of classes, ni, k denotes number of samples belonging to the class i of the client k, nj, k denotes number of samples belonging to a class j of the client k, where i≠j, jε C, denotes a new weight corresponding to class i at client k, denotes a new weight corresponding to class j at client k, and B denotes the total number of classes.
[0314] To bring the ratio on a common scale for the clients, the ratio is modified as follows: Equation 6 where βi, k denotes a bias estimate value corresponding to class i at client k, E denotes the cost function of the neural network, c denotes the number of classes, ni denotes the number of samples for class i , nj, k denotes number of samples belonging to a class j of the client k, where i≠j, jε C, denotes a new weight corresponding to class i at client k, denotes a new weight corresponding to class j at client k, all classes belong to the set C= {c1, c2, …, cB} , |C|=B, and k= {1, 2, …, K} .
[0315] Once the class proportions are estimated, the global model will store this class result at a safe location and perform the aggregation to produce a global model.
[0316] II. Obtain initial trained models from the clients
[0317] First step of this model is obtaining the initial models from clients. This may be done in several ways: 1. A subset of clients may be selected (randomly or based on one or more criteria such as battery level) to upload the model. If the selected client’s bias is not known, follow the next steps. Otherwise, no further processing needed at this step. In this method, there are no additional messages or change compared to a regular FL scheme. However, due to taking turns, the information on bias of all clients may take longer to be completed. 2. A broadcast message may be sent to all clients for the clients to upload their initial messages. The server may wait for a pre-determined amount of time for all clients to receive the message, complete the initial model training and upload the model. The clients are assumed to accept their role to participate in model generation at this step. A message to acknowledge may be sent in the uplink, as well as other messages to indicate the user’s status, e.g., ACK to participate, to indicate start of training etc. 3. Other schemes may also be possible.
[0318] Assuming that all the clients’ information is collected, the method proceeds to the following step.
[0319] Determine bias
[0320] Assume wi indicates the weight of the last layer belonging class i. Classes belong to the set C= {c1, c2, …, cB} , where |C|=B. For binary classes, i.e., B=2 , the following equation is used in the literature for a particular client k= {1, 2, …, K} : Equation 7 where E denotes the cost function of the neural network, ni, k denotes number of samples belonging to the class i of the client k, nj, k denotes number of samples belonging to a class j of the client k, where i≠j, jε C, denotes a new weight corresponding to class i at client k, and denotes a new weight corresponding to class j at client k.
[0321] In the above equation, ni indicates the number of samples belonging to class i. It is proposed to improve the above equation for multiple classes (i.e., B≥ 2) as follows: Equation 8 where E denotes the cost function of the neural network, ni, k denotes number of samples belonging to the class i of the client k , nj, k denotes number of samples belonging to a class j of the client k , denotes a new weight corresponding to class i at client k, and denotes a new weight corresponding to class j at client k, B denotes the total number of classes, C denotes the total number of classes, all classes belong to the set C= {c1, c2, …, cB} , |C|=B, and k= {1, 2, …, K} .
[0322] The above ratio is normalized with the summation of all the samples of all the classes and the bias estimate is obtained for a class i and client k: Equation 9 where βi, k denotes a ratio corresponding to class i at client k, C denotes the number of classes, ni, k denotes number of samples belonging to the class i of the client k, nj, k denotes number of samples belonging to a class j of the client k, where i≠j, jε C, and K denotes the total number of clients.
[0323] Client Selection and feedback mechanism
[0324] Aspects of the present disclosure select the clients by considering the ratios obtained in the above embodiments. The input for client selection is β, which includes βi, k (bias estimates) of all clients for all classes. In addition, the networking aspects can be included as an input as well, such as, cost, battery saving requirements, channel conditions, user processing capabilities, user storage capabilities, user mobility and so on.
[0325] FIG. 13 illustrates an optimizer 1301 dedicated to client selection, according to an implementation of the present disclosure.
[0326] FIG. 14 illustrates a multi-objective optimizer 1401, according to an implementation of the present disclosure.
[0327] As shown in FIG. 13, the input of the optimizer 1301 is β. As shown in FIG. 14, the input of the optimizer 1401 are α1 (t) β and αr (t) Nr (. ) . α1 (t) is a scaling / weighting factor used to select a subset of clients based on the estimated bias β. αr (t) is a scaling / weighting factor for selecting a subset of clients based on certain network parameters Nr (. ) .
[0328] Optimizer may process the inputs, e.g., to obtain variance, average etc. The optimizer 1301 or 1401 can be of any kind, such as AI-based, greedy or heuristics-based.
[0329] Example optimizer dedicated to client selection with fairness
[0330] The problem of client selection can be formulated as a mixed integer linear or non-linear problem with the goal of minimizing the variance between classes. The proposed optimizer 1301 or 1401 uses a penalty term to make selection fair.
[0331] Feedback mechanism
[0332] FIG. 15 illustrates an example of how the feedback mechanism is useful, according to an implementation of the present disclosure. The FL server can run full-fledged or mini tests during aggregation. These tests may then be explained in a post-hoc fashion. The results of explanation provide feature-level information and can indicate ways to improve bias removal.
[0333] Although this disclosure refers to illustrative embodiments, this is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments, as well as other embodiments of the disclosure, will be apparent to persons skilled in the art upon reference to the description.
[0334] Features disclosed herein in the context of any particular embodiments may also or instead be implemented in other embodiments. Method embodiments, for example, may also or instead be implemented in apparatus, system, and / or computer program product embodiments. In addition, although embodiments are described primarily in the context of methods and apparatus, other implementations are also contemplated, as instructions stored on one or more non-transitory computer-readable media, for example. Such media could store programming or instructions to perform any of the various methods consistent with the present disclosure.
[0335] Next, embodiments of products related to the communication methods will be described.
[0336] FIG. 16 is a schematic structural diagram of a server according to one or more example embodiments of the present disclosure. As shown in FIG. 16, the server 1600 may include: a transmitting unit 1601, configured to transmit a first message to each client of a set of participating clients, where the first message comprises an initial model collection request to obtain a collection of models; and transmit a second message to each client of a first subset of clients, where: the first subset of clients is selected from the set of participating clients based on a bias estimation performed on the collection of models; and the second message includes information pertaining to an aggregate model.
[0337] In an implementation, at least one client of the set of participating clients is associated with a respective digital entity.
[0338] In an implementation, the server further includes a receiving module 1602, configured to receive a third message from at least one client of the set of participating clients, where the third message indicates a respective model corresponding to the at least one client.
[0339] In an implementation, the receiving module 1602 is configured to receive the third message from a respective digital entity associated with the at least one client.
[0340] In an implementation, the third message includes at least one additional parameter, where the at least one additional parameter includes at least one of a synchronization time, a synchronization frequency, a data freshness measure, a timer list, one or more network parameters and fidelity.
[0341] In an implementation, the transmitting module 1601 is configured to transmit the second message to the respective digital entity associated with the at least one client.
[0342] In an implementation, the transmitting module 1601 is configured to transmit a request to update and / or train the aggregate model.
[0343] In an implementation, the transmitting module 1601 is configured to transmit the first message upon receiving a learning request.
[0344] In an implementation, the receiving module 1602 is configured to receive the learning request.
[0345] In an implementation, the receiving module 1602 is configured to receive the learning request from a first network function.
[0346] In an implementation, the receiving module 1602 is configured to receive the learning request from the first network function; and the transmitting module 1601 is configured to forward the learning request to the first node.
[0347] In an implementation, the transmitting module 1601 is configured to: transmit a broadcast request to a third network function; broadcast a learning participation request to a plurality of clients; and the receiving module 1602 is configured to receive a learning participation response from the plurality of clients.
[0348] In an implementation, the learning participation request includes at least one of: timer settings, a refresh frequency, an update indicator, a participation level, a data freshness measure, a training sample size, and a data cycle mode.
[0349] In an implementation, the learning participation response includes a fairness type, where the fairness type indicates one or more of a battery level, a computation load, storage or memory requirements.
[0350] In an implementation, the transmitting module 1601 is configured to transmit a learning authorization request to a second node; the receiving module 1602 is configured to receive a learning authorization response from the second node; and the transmitting module 1601 is configured to transmit information related to the set of participating clients, to the first node, where the set of participating clients are determined from the plurality of clients based on the learning authorization response.
[0351] In an implementation, the information related to the set of participating clients includes at least one of: client identifier, authorization levels, data storage addresses, and permits for historical or extra data.
[0352] In an implementation, the transmitting module 1601 is configured to: transmit an initial model to the third network function; transmit the initial model to at least one of each client of the set of participating clients or the respective digital entity associated with that client; and the receiving module 1602 is configured to receive an initial trained model from at least one client of the set of participating clients or the respective digital entity associated with the at least one client.
[0353] In an implementation, the receiving module 1602 is configured to receive the learning request from an application.
[0354] In an implementation, the transmitting module 1601 is configured to forward the learning request to a digital world data processing function, where the first node configures the learning request with one or more parameters.
[0355] In an implementation, the transmitting module 1601 is configured to transmit a client discovery request to a fourth network function; and the receiving module 1602 is configured to receive a discovery response from the fourth network function.
[0356] In an implementation, the client discovery request includes at least one of: a list of data types, data capability and client characteristics.
[0357] In an implementation, the client discovery response includes at least one of: a gateway ID, an authorization level, client IDs, and historical bias analysis.
[0358] In an implementation, the server 1600 further includes a selecting module 1603, configured to select an initial list of clients from a plurality of clients.
[0359] In an implementation, the initial list of clients is associated with one or more of the following properties: digital users and physical users, an authorization level, gateway IDs, user IDS, synchronization, fidelity levels, cost of inviting the participants, and historical bias analysis.
[0360] In an implementation, the transmitting module 1601 is configured to transmit a learning authorization request to a respective digital entity associated with each client of the initial list of clients; and the receiving module 1602 is configured to receive a learning participation response from the respective digital entity associated with at least one client of the initial list of clients.
[0361] In an implementation, the learning authorization request includes at least one of: a class parameter, data characteristics, a fidelity level, a participation level, and an update frequency.
[0362] In an implementation, the learning participation response includes at least one of: a wait timer for a synchronization parameter, a next synchronization time stamp, a data size, a data freshness measure, and storage information.
[0363] In an implementation, the transmitting module 1601 is configured to transmit the learning participation response to the first node.
[0364] In an implementation, the transmitting module 1601 is configured to transmit information related to the set of participating clients to the first node, where the set of participating clients are determined from the initial list of clients based on the learning participation response.
[0365] In an implementation, the transmitting module 1601 is configured to transmit an initial model to the respective digital entity of each client of the set of participating clients; and the receiving module 1602 is configured to receive an initial trained model from the respective digital entity of at least one client of the set of participating clients.
[0366] In an implementation, the transmitting module 1601 is configured to: transmit information pertaining to the initial trained model to a bias estimator; transmit bias estimates to an optimizer, where the bias estimator determines the bias estimates based on the information pertaining to the initial trained model; the selecting module 1603 is configured to select the first subset of clients for a first round based on the bias estimates; and the transmitting module 1601 is configured to: transmit information pertaining to the first subset of clients to the second network function or the DWDPF.
[0367] In an implementation, the transmitting module 1601 is configured to transmit at least one of the initial trained model and information related to the initial trained model.
[0368] In an implementation, the information pertaining to the initial trained model includes last layer weights of the initial trained model, where the bias estimator uses the last layer weights of the initial trained model to determine the bias estimates.
[0369] In an implementation, the information pertaining to the initial trained model includes at least one of a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency.
[0370] In an implementation, the receiving module 1603 is configured to receive from the DWDPF additional parameters used as input to the optimizer for selecting the first subset of clients.
[0371] In an implementation, the selecting module 1603 is configured to select the first subset of clients includes receiving client characteristics from the first node or the third network function, where the client characteristics are used for selecting the first subset of clients.
[0372] In an implementation, the client characteristics include at least one of: a participation level, a fairness type, timer settings, and a tracking area.
[0373] In an implementation, the transmitting module 1601 is configured to transmit the aggregate model to at least one of at least one client of the first subset of clients and the respective digital entity associated with the at least one client of the first subset of clients.
[0374] In an implementation, the receiving module 1602 is configured to receive a respective trained model from at least one client of the first subset of clients; and the transmitting module 1601 is configured to forward the respective trained model to the DWDPF.
[0375] In an implementation, the transmitting module 1601 is configured to transmit a feedback message to the optimizer; and the selecting module 1603 is configured to select a second subset of clients for a second round based on the feedback message.
[0376] In an implementation, the feedback message includes at least one of updated user settings, performance feedback, a timer list, network parameters, and test accuracy.
[0377] FIG. 17 is a schematic structural diagram of a client according to one or more example embodiments of the present disclosure. As shown in FIG. 17, the client 1700 may include: a receiving module 1701, configured to: receive a first message, where the first message comprises an initial model collection request to obtain a collection of models; and receive a second message, where the second message comprises information pertaining to an aggregate model.
[0378] In an implementation, the client 1700 further includes a transmitting module 1702, configured to transmit a third message, where the third message indicates a respective model.
[0379] In an implementation, the third message includes at least one additional parameter, where the at least one additional parameter includes at least one of a synchronization time, a synchronization frequency, a data freshness measure, a timer list, one or more network parameters and fidelity.
[0380] In an implementation, receiving the second message includes receiving a request to update and / or train the aggregate model.
[0381] In an implementation, the receiving module 1701 is configured to receive the first message includes receiving the first message related to a learning request.
[0382] In an implementation, the learning request is transmitted by a first network function to a first node.
[0383] In an implementation, the learning request is transmitted by the first network function to a second network function.
[0384] In an implementation, the receiving module 1701 is configured to receive a learning participation request from a third network function; and the transmitting module 1702 is configured to transmit a learning participation response to the first node.
[0385] In an implementation, the learning participation request includes at least one of: timer settings, a refresh frequency, an update indicator, a participation level, a data freshness limit, a training sample size, and a data cycle mode.
[0386] In an implementation, the learning participation response includes a fairness type, where the fairness type indicates one or more of a battery level, a computation load, storage or memory requirements.
[0387] In an implementation, the receiving module 1701 is configured to receive, from the third network function, an initial model; and the transmitting module 1702 is configured to transmit an initial trained model to the first node.
[0388] In an implementation, the learning request is transmitted by an application to the first node.
[0389] In an implementation, receiving the first message includes: the receiving module 1701 is configured to receive, from a digital world data processing function, a learning authorization request; and the transmitting module 1702 is configured to transmit a learning participation response to the DWDPF.
[0390] In an implementation, the learning authorization request includes at least one of: a class parameter, data characteristics, a fidelity level, a participation level, and an update frequency.
[0391] In an implementation, the learning participation response includes at least one of: a wait timer for a synchronization parameter, a next synchronization time stamp, a data size, a data freshness measure, and storage information.
[0392] In an implementation, transmitting the third message includes: the receiving module 1701 is configured to receive, from a fifth network function, an initial model; and the transmitting module 1702 is configured to transmit an initial trained model to the fifth network function.
[0393] In an implementation, the receiving module 1701 is configured to receive the second message includes receiving, from the fifth network function, the aggregate model.
[0394] In an implementation, the transmitting module 1702 is configured to transmit a respective trained model to the fifth network function.
[0395] FIG. 18 is a schematic structural diagram of a network component according to one or more example embodiments of the present disclosure. As shown in FIG. 18, the network component 1800 may include: a transmitting module 1801, configured to: transmit information pertaining to an initial trained model; and transmit bias estimates, where the bias estimates are determined based on the information pertaining to the initial trained model; a selecting module 1802, configured to select a first subset of clients from a set of participating clients for a first round based on the bias estimates; the transmitting module 1801 is further configured to transmit information pertaining to the first subset of clients.
[0396] In an implementation, the transmitting module 1801 is configured to transmit at least one of the initial trained model and information related to the initial trained model.
[0397] In an implementation, the information pertaining to the initial trained model includes last layer weights of the initial trained model, where the last layer weights of the initial trained model are used to determine the bias estimates.
[0398] In an implementation, the information pertaining to the initial trained model includes at least one of a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency.
[0399] In an implementation, the selecting module 1802 is configured to select the first subset of clients includes receiving additional parameters to be used as input for selecting the first subset of clients.
[0400] In an implementation, the selecting module 1802 is configured to select the first subset of clients includes receiving client characteristics, where the client characteristics are used for selecting the first subset of clients.
[0401] In an implementation, the client characteristics include at least one of: a participation level, a fairness type, timer settings, and a tracking area.
[0402] In an implementation, the transmitting module 1801 is configured to transmit a feedback message; and the selecting module 1802 is configured to select a second subset of clients for a second round based on the feedback message.
[0403] In an implementation, the feedback message includes at least one of updated user settings, performance feedback, a timer list, network parameters, and test accuracy.
[0404] An embodiment of the present disclosure provides a communication apparatus including processing circuitry for executing the communication method for machine learning described above.
[0405] It should be noted that the apparatus in the present disclosure may also be implemented as a device, or one or more component included in a device, such as, a processor or a chip. The device may be user equipment, a terminal, a network device, a network function, a network node, or another network element, which is not limited in the present disclosure.
[0406] An embodiment of the present disclosure provides a chip, including an input / output (I / O) interface and a processor, where the processor is configured to call and run a computer program stored in a memory, to enable a device installing with the chip to perform any of the above communication methods.
[0407] FIG. 19 is a schematic structural diagram of a communication apparatus according to one or more implementations of the present disclosure. As shown in FIG. 19, the communication apparatus 1900 includes a processor 1901, an interface 1902 for communicating with other devices, a memory 1903 is coupled to the processor 1901. The memory 1903 may be stored with computer execution instructions, and the processor 1901 executes computer execution instructions stored in the memory 1903 to enable the apparatus to execute any of the above communication methods. In some implementations, the memory 1903 may be included or may not be included in the apparatus.
[0408] In some aspects of the present disclosure, there is provided a communication apparatus which includes a processor and a memory. The memory is storing instructions that cause the processor to perform any of the above communication methods.
[0409] It should be noted that the memory in the systems and the methods described in this specification includes but is not limited to these memories and a memory of any other appropriate type.
[0410] An embodiment of the present disclosure provides a communication system, including: the server, the client and the network component executing any of the above communication methods.
[0411] An embodiment of the present disclosure provides a non-transitory computer-readable medium carrying a program code which, when executed by a processor, any of the above communication methods is performed.
[0412] Optionally, the storage medium may be specifically a memory.
[0413] An embodiment of the present disclosure provides a computer program product storing instructions which, when executed, cause an apparatus to perform any of the above communication methods.
[0414] Note that when the request or the response mentioned above includes multiple different contents for indicating multiple different pieces of information, the multiple contents can be indicated separately in multiple request / response messages or together in a request / response message.
[0415] Note that the network elements mentioned in the present disclosure are all logical network elements, which can be implemented as individual devices, or can be implemented as chips or modules that could be integrated into a certain device.
[0416] Although the present disclosure describes methods and processes with steps in a certain order, one or more steps of the methods and processes may be omitted or altered as appropriate. One or more steps may take place in an order other than that in which they are described, as appropriate.
[0417] Note that the expression “at least one of A or B” , as used herein, is interchangeable with the expression “A and / or B” . It refers to a list in which you may select A or B or both A and B. Similarly, “at least one of A, B, or C” , as used herein, is interchangeable with “A and / or B and / or C” or “A, B, and / or C” . It refers to a list in which you may select: A or B or C, or both A and B, or both A and C, or both B and C, or all of A, B and C. The same principle applies for longer lists having a same format.
[0418] Although the present disclosure is described, at least in part, in terms of methods, a person of ordinary skill in the art will understand that the present disclosure is also directed to the various components for performing at least some of the aspects and features of the described methods, be it by way of hardware components, software or any combination of the two. Accordingly, the technical solution of the present disclosure may be embodied in the form of a software product. A suitable software product may be stored in a pre-recorded storage device or other similar non-volatile or non-transitory computer readable medium, including DVDs, CD-ROMs, USB flash disk, a removable hard disk, or other storage media, for example. The software product includes instructions tangibly stored thereon that enable a processing device (e.g., a personal computer, a server, or a network device) to execute examples of the methods disclosed herein. The machine-executable instructions may be in the form of code sequences, configuration information, or other data, which, when executed, cause a machine (e.g., a processor or other processing device) to perform steps in a method according to examples of the present disclosure.
[0419] The present disclosure may be embodied in other specific forms without departing from the subject matter of the claims. The described example embodiments are to be considered in all respects as being only illustrative and not restrictive. Selected features from one or more of the above-described embodiments may be combined to create alternative embodiments not explicitly described, features suitable for such combinations being understood within the scope of this disclosure.
[0420] All values and sub-ranges within disclosed ranges are also disclosed. Also, although the systems, devices and processes disclosed and shown herein may include a specific number of elements / components, the systems, devices and assemblies could be modified to include additional or fewer of such elements / components. For example, although any of the elements / components disclosed may be referenced as being singular, the embodiments disclosed herein could be modified to include a plurality of such elements / components. The subject matter described herein intends to cover and embrace all suitable changes in technology.
[0421] Although embodiments have been described above with reference to the accompanying drawings, those of skill in the art will appreciate that variations and modifications may be made without departing from the scope thereof as defined by the appended claims.
[0422] Please note that the different examples may be implemented separately or combined. Although a combination of features is shown in the illustrated embodiments, not all of them need to be combined to realize the benefits of various examples of the present disclosure. In other words, a system or method designed according to an embodiment of the present disclosure will not necessarily include all of the features shown in any one of the figures or all of the portions schematically shown in the figures. Moreover, selected features of one example embodiment may be combined with selected features of other example embodiments.
[0423] A person skilled in the art should understand that embodiments of this application may be provided as a method, an apparatus (or system) , computer-readable storage medium, or a computer program product. Therefore, this application may use a form of a hardware-only embodiment, a software-only embodiment, or an embodiment with a combination of software and hardware. Moreover, this application may use a form of a computer program product that is implemented on one or more computer-usable storage media (including, but not limited to, a disk memory, an optical memory, and the like) that include computer-usable program code.
[0424] Although this disclosure has been described with reference to illustrative embodiments, the description is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments, as well as other examples of the disclosure, will be apparent to persons skilled in the art upon reference to the description. It is therefore intended that the appended claims encompass any such modifications or embodiments.
Claims
A method comprising:transmitting a first message to each client of a set of participating clients, wherein the first message comprises an initial model collection request to obtain a collection of models; andtransmitting a second message to each client of a first subset of clients, wherein:the first subset of clients is selected from the set of participating clients based on a bias estimation performed on the collection of models; andthe second message comprises information pertaining to an aggregate model.The method of claim 1, wherein at least one client of the set of participating clients is associated with a respective digital entity.The method of claim 1 or claim 2, further comprising receiving a third message from at least one client of the set of participating clients, wherein the third message indicates a respective model corresponding to the at least one client.The method of claim 3, wherein receiving the third message comprises receiving the third message from a respective digital entity associated with the at least one client.The method of claim 3 or claim 4, wherein the third message comprises at least one additional parameter, wherein the at least one additional parameter comprises at least one of a synchronization time, a synchronization frequency, a data freshness measure, a timer list, one or more network parameters and fidelity.The method of claim 4, wherein transmitting the second message comprises transmitting the second message to the respective digital entity associated with the at least one client.The method of any one of claims 1 to 6, wherein transmitting the second message comprises transmitting a request to update and / or train the aggregate model.The method of any one of claims 3 to 7, wherein transmitting the first message comprises transmitting the first message upon receiving a learning request.The method of claim 8, wherein receiving the learning request comprises receiving, by a first node, the learning request.The method of claim 8 or claim 9, wherein receiving the learning request comprises receiving, by the first node, the learning request from a first network function.The method of any one of claims 8 to 10, wherein receiving the learning request comprises:receiving, by a second network function, the learning request from the first network function; andforwarding, by the second network function, the learning request to the first node.The method of any one of claims 1 to 11, wherein transmitting the first message comprises:transmitting, by the first node, a broadcast request to a third network function;broadcasting, by the third network function, a learning participation request to a plurality of clients; andreceiving, by the first node, a learning participation response from the plurality of clients.The method of claim 12, wherein the learning participation request comprises at least one of: timer settings, a refresh frequency, an update indicator, a participation level, a data freshness measure, a training sample size, and a data cycle mode.The method of claim 12 or claim 13, wherein the learning participation response comprises a fairness type, wherein the fairness type indicates one or more of a battery level, a computation load, storage or memory requirements.The method of claim 12, further comprising:transmitting, by the third network function, a learning authorization request to a second node; andreceiving, by the third network function, a learning authorization response from the second node; andtransmitting, by the third network function, information related to the set of participating clients, to the first node, wherein the set of participating clients are determined from the plurality of clients based on the learning authorization response.The method of claim 15, wherein the information related to the set of participating clients comprises at least one of: client identifier, authorization levels, data storage addresses, and permits for historical or extra data.The method of any one of claims 3 to 5 or 8 to 11, wherein receiving the third message comprises:transmitting, by the first node, an initial model to the third network function;transmitting, by the third network function, the initial model to at least one of each client of the set of participating clients or the respective digital entity associated with that client; andreceiving, by the first node, an initial trained model from at least one client of the set of participating clients or the respective digital entity associated with the at least one client.The method of claim 8 or claim 9, wherein receiving the learning request comprises receiving, by the first node, the learning request from an application.The method of claim 18, further comprising forwarding, by the first node, the learning request to a digital world data processing function (DWDPF) , wherein the first node configures the learning request with one or more parameters.The method of claim 18 or claim 19, further comprising:transmitting, by the DWDPF, a client discovery request to a fourth network function; andreceiving, by the DWDPF, a discovery response from the fourth network function.The method of claim 20, wherein the client discovery request comprises at least one of: a list of data types, data capability and client characteristics.The method of claim 20 or claim 21, wherein the client discovery response comprises at least one of: a gateway ID, an authorization level, client IDs, and historical bias analysis.The method of any one of claims 18 to 22, further comprising selecting, by the DWDPF, an initial list of clients from a plurality of clients.The method of claim 23, wherein the initial list of clients is associated with one or more of the following properties: digital users and physical users, an authorization level, gateway IDs, user IDS, synchronization, fidelity levels, cost of inviting the participants, and historical bias analysis.The method of claim 23 or claim 24, wherein transmitting the first message further comprises:transmitting, by the DWDPF, a learning authorization request to a respective digital entity associated with each client of the initial list of clients; andreceiving, by the DWDPF, a learning participation response from the respective digital entity associated with at least one client of the initial list of clients.The method of claim 25, wherein the learning authorization request comprises at least one of: a class parameter, data characteristics, a fidelity level, a participation level, and an update frequency.The method of claim 25 or claim 26, wherein the learning participation response comprises at least one of: a wait timer for a synchronization parameter, a next synchronization time stamp, a data size, a data freshness measure, and storage information.The method of claim 25, further comprising transmitting, by the DWDPF, the learning participation response to the first node.The method of any one of claims 23 to 28, further comprising transmitting, by the DWDPF, information related to the set of participating clients to the first node, wherein the set of participating clients are determined from the initial list of clients based on the learning participation response.The method of any one of claims 18 to 29, wherein receiving the third message comprises:transmitting, by a fifth network function, an initial model to the respective digital entity of each client of the set of participating clients; andreceiving, by the fifth network function, an initial trained model from the respective digital entity of at least one client of the set of participating clients.The method of any one of claims 17 to 30, wherein transmitting the second message comprises:transmitting, by the second network function or the DWDPF, information pertaining to the initial trained model to a bias estimator;transmitting, by the bias estimator, bias estimates to an optimizer, wherein the bias estimator determines the bias estimates based on the information pertaining to the initial trained model;selecting, by the optimizer, the first subset of clients for a first round based on the bias estimates; andtransmitting, by the optimizer, information pertaining to the first subset of clients to the second network function or the DWDPF.The method of claim 31, wherein transmitting the information pertaining to the initial trained model comprises transmitting at least one of the initial trained model and information related to the initial trained model.The method of claim 31 or claim 32, wherein the information pertaining to the initial trained model comprises last layer weights of the initial trained model, wherein the bias estimator uses the last layer weights of the initial trained model to determine the bias estimates.The method of claim 32, wherein the information pertaining to the initial trained model comprises at least one of a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency.The method of claim 31, wherein selecting the first subset of clients comprises receiving from the DWDPF additional parameters used as input to the optimizer for selecting the first subset of clients.The method of claim 31, wherein selecting the first subset of clients comprises receiving, by the optimizer, client characteristics from the first node or the third network function, wherein the client characteristics are used by the optimizer for selecting the first subset of clients.The method of claim 35, wherein the client characteristics comprise at least one of: a participation level, a fairness type, timer settings, and a tracking area.The method of any one of claims 31 to 37, wherein transmitting the second message comprises transmitting, by the fifth network function, the aggregate model to at least one of at least one client of the first subset of clients and the respective digital entity associated with the at least one client of the first subset of clients.The method of claim 38, further comprising:receiving, by the fifth network function, a respective trained model from at least one client of the first subset of clients; andforwarding, by the fifth network function, the respective trained model to the DWDPF.The method of any one of claims 31 to 39, further comprising:transmitting, by the second network function or the DWDPF, a feedback message to the optimizer; andselecting, by the optimizer, a second subset of clients for a second round based on the feedback message.The method of claim 40, wherein the feedback message comprises at least one of updated user settings, performance feedback, a timer list, network parameters, and test accuracy.A method comprising:receiving a first message, wherein the first message comprises an initial model collection request to obtain a collection of models; andreceiving a second message, wherein the second message comprises information pertaining to an aggregate model.The method of claim 42, further comprising transmitting a third message, wherein the third message indicates a respective model.The method of claim 43, wherein the third message comprises at least one additional parameter, wherein the at least one additional parameter comprises at least one of a synchronization time, a synchronization frequency, a data freshness measure, a timer list, one or more network parameters and fidelity.The method of any one of claims 42 to 44, wherein receiving the second message comprises receiving a request to update and / or train the aggregate model.The method of any one of claims 42 to 45, wherein receiving the first message comprises receiving the first message related to a learning request.The method of claim 46, wherein the learning request is transmitted by a first network function to a first node.The method of claim 46, wherein the learning request is transmitted by the first network function to a second network function.The method of claim 47, further comprising:receiving a learning participation request from a third network function; andtransmitting a learning participation response to the first node.The method of claim 49, wherein the learning participation request comprises at least one of: timer settings, a refresh frequency, an update indicator, a participation level, a data freshness limit, a training sample size, and a data cycle mode.The method of claim 49 or claim 50, wherein the learning participation response comprises a fairness type, wherein the fairness type indicates one or more of a battery level, a computation load, storage or memory requirements.The method of any one of claims 43 to 51, wherein transmitting the third message comprises:receiving, from the third network function, an initial model; andtransmitting an initial trained model to the first node.The method of claim 47, wherein the learning request is transmitted by an application to the first node.The method of claim 53, wherein receiving the first message comprises:receiving, from a digital world data processing function, a learning authorization request; andtransmitting a learning participation response to the DWDPF.The method of claim 54, wherein the learning authorization request comprises at least one of: a class parameter, data characteristics, a fidelity level, a participation level, and an update frequency.The method of claim 54 or claim 55, wherein the learning participation response comprises at least one of: a wait timer for a synchronization parameter, a next synchronization time stamp, a data size, a data freshness measure, and storage information.The method of any one of claims 53 to 56, wherein transmitting the third message comprises:receiving, from a fifth network function, an initial model; andtransmitting an initial trained model to the fifth network function.The method of any one of claims 42 to 57, wherein receiving the second message comprises receiving, from the fifth network function, the aggregate model.The method of claim 58, further comprising transmitting a respective trained model to the fifth network function.A method comprising:transmitting information pertaining to an initial trained model;transmitting bias estimates, wherein the bias estimates are determined based on the information pertaining to the initial trained model;selecting a first subset of clients from a set of participating clients for a first round based on the bias estimates; andtransmitting information pertaining to the first subset of clients.The method of claim 60, wherein transmitting the information pertaining to the initial trained model comprises transmitting at least one of the initial trained model and information related to the initial trained model.The method of claim 60 or claim 61, wherein the information pertaining to the initial trained model comprises last layer weights of the initial trained model, wherein the last layer weights of the initial trained model are used to determine the bias estimates.The method of any one of claims 60 to 62, wherein the information pertaining to the initial trained model comprises at least one of a schedule of a number of rounds for the first subset of clients, an update frequency of the first subset of clients, channel conditions, and a data synchronization frequency.The method of any one of claims 60 to 63, wherein selecting the first subset of clients comprises receiving additional parameters to be used as input for selecting the first subset of clients.The method of any one of claims 60 to 63, wherein selecting the first subset of clients comprises receiving client characteristics, wherein the client characteristics are used for selecting the first subset of clients.The method of claim 65, wherein the client characteristics comprise at least one of: a participation level, a fairness type, timer settings, and a tracking area.The method of any one of claims 60 to 66, further comprising:transmitting a feedback message; andselecting a second subset of clients for a second round based on the feedback message.The method of claim 67, wherein the feedback message comprises at least one of updated user settings, performance feedback, a timer list, network parameters, and test accuracy.A server, comprising:a transmitting module, configured to:transmit a first message to each client of a set of participating clients, wherein the first message comprises an initial model collection request to obtain a collection of models; andtransmit a second message to each client of a first subset of clients, wherein:the first subset of clients is selected from the set of participating clients based on a bias estimation performed on the collection of models; andthe second message comprises information pertaining to an aggregate model.A client, comprising:a receiving module, configured to:receive a first message, wherein the first message comprises an initial model collection request to obtain a collection of models; andreceive a second message, wherein the second message comprises information pertaining to an aggregate model.A network component, comprising:a transmitting module, configured to:transmit information pertaining to an initial trained model; andtransmit bias estimates, wherein the bias estimates are determined based on the information pertaining to the initial trained model;a selecting module, configured to select a first subset of clients from a set of participating clients for a first round based on the bias estimates;the transmitting module is further configured to transmit information pertaining to the first subset of clients.A server, comprising at least one processor coupled to a memory storing a set of instructions;wherein the at least one processor is configured to read the set of instructions in the memory and execute the method of any one of claims 1 to 41.A client, comprising at least one processor coupled to a memory storing a set of instructions;wherein the at least one processor is configured to read the set of instructions in the memory and execute the method of any one of claims 42 to 59.A network component, comprising at least one processor coupled to a memory storing a set of instructions;wherein the at least one processor is configured to read the set of instructions in the memory and execute the method of any one of claims 60 to 68.A communication system, comprising a sever of claim 69 or claim 72, and a client of claim 70 or claim 73 or a network component of claim 71 or claim 74.A computer-readable storage medium having instructions stored thereon which, when executed by an apparatus, cause the apparatus to perform the method of any one of claims 1 to 68.A computer program product storing instructions which, when executed, cause an apparatus to perform the method of any one of claims 1 to 68.
Citation Information
Patent Citations
Cross-device federated learning method for minimization-maximization problem
CN114330743A
Data analysis method and device
CN117675596A
Joint learning process
CN118401947A
Management of federated learning
US20240104384A1