The present disclosure relates to a method for orchestrating acquisition of a quantity of communication network data for training a target Machine Learning model for use by a communication network node. The method may be performed by an orchestration node. The present disclosure also relates to an orchestration node, and to a computer program product configured, when run on a computer, to carry out a method for orchestrating acquisition of a quantity of communication network data.
In the Third Generation Partnership Project (3GPP), Artificial Intelligence (AI) and Machine Learning (ML) use cases are being introduced, which leverage ML algorithms in order to improve the behaviour of communication networks. AI/ML for traffic steering is one example of the use cases being introduced, and may encompass: capacity improvements and increased energy efficiency, quality of service (QOS) prediction, and improved radio resource management (RRM).
AI/ML use cases are poised to bring significant improvements in the manner that communication networks operate. However, in order to properly implement such use cases, and to experience the benefits they may bring, it is necessary to collect large volumes of data. This data is required to train the relevant AI/ML models to be able to capture, in an accurate manner, valid associations between data inputs and output target variables, and to sustain a reasonable performance of AI/ML techniques over time.
An additional difficulty arises when considering data which are relevant for an AI/ML use case, and which include information which may be sensitive or subject to privacy restrictions. For example, it may not be appropriate, or even possible, from a legislative or regulatory perspective, to copy and/or transfer certain types of data outside of a UE or from other sources of sensitive data.
In some existing techniques, the processing of relevant data and/or information may take place at a data center which is located outside of the country where the relevant data is collected. This can be problematic, as certain countries may restrict the movement of such data beyond their geographical borders.
Generative models, such as variational autoencoders, conditional autoencoders, and generative adversarial networks, can assist with some of the above mentioned challenges. Generative models are designed to learn a data distribution (μ, σ) of a dataset and then generate new data based on the learned data distribution. However, it can be difficult to decide how and when generative model techniques should be implemented to generate new data for AI/ML training. In particular, although real data (e.g. data not generated by a generative model) is generally preferred for training an ML model, the resource cost associated with obtaining and transferring such real data can be prohibitively high. On the other hand, generating data using a generative model can require a significant amount of computational resources which may not always be available when needed. In addition, it is not necessary to use privacy aware techniques for every feature to be collected, and privacy requirements are subject to change over time and/or from one country to another.
Throttling is another technique which may be used to reduce the volume of data that is transferred in a network. Throttling techniques can include, for example, capping data traffic at a particular limit once a threshold is exceeded. However, throttling techniques do not reduce the total amount of data that is transferred in the network, but instead act to lower the data transfer rate in order to make the data load more tolerable for available consumers and/or resources in the network.
Data acquisition for the purposes of training an ML model for use in a communication network consequently remains an open challenge, with existing techniques all suffering from one or more disadvantages with respect either to the quality of the training provided to the ML model or to the stable functioning of the network.
It is an aim of the present disclosure to provide a method, an orchestration node, and a computer readable medium which at least partially address one or more of the challenges discussed above.
According to a first aspect of the present disclosure there is provided a method for orchestrating acquisition of a quantity of communication network data for training a target Machine Learning (ML) model for use by a communication network node. The method is performed by an orchestration node. The method comprises obtaining a representation of a data acquisition state for the communication network data. The method further comprises using an orchestration ML model to map the representation of the data acquisition state to a first amount of the communication network data to be collected from sources of the communication network data, and a remaining amount of the communication network data to be generated using a generative model. The method further comprises causing at least the first amount of the communication network data to be collected from sources of the communication network data. The method further comprises, when the collected communication network data fulfils an availability criterion for training of a generative model, causing a generative model for the communication network data to be trained using the collected communication network data. The method further comprises causing the remaining amount of the communication network data to be generated using the trained generative model. The method further comprises causing the quantity of communication network data, comprising the first amount of collected data and the remaining amount of generated data, to be provided to the communication network node for training of the target ML model. A representation of a data acquisition state for the communication network data comprises: a number of target ML models to be trained using the dataset; availability of resources for collection of the communication network data from data sources; and a cost of resources for generating the communication network data.
According to another aspect of the present disclosure, there is provided a computer program product comprising a computer readable medium, the computer readable medium having computer readable code embodied therein, the computer readable code being configured such that, on execution by a suitable computer or processor, the computer or processor is caused to perform a method according to any one of the aspects or examples of the present disclosure.
According to another aspect of the present disclosure, there is provided an orchestration node for orchestrating acquisition of a quantity of communication network data for training a target ML model for use by a communication network node. The orchestration node comprises processing circuitry configured to cause the orchestration node to obtain a representation of a data acquisition state for the communication network data. The processing circuitry is further configured to use an orchestration ML model to map the representation of the data acquisition state to a first amount of the communication network data to be collected from sources of the communication network data, and a remaining amount of the communication network data to be generated using a generative model. The processing circuitry is further configured to cause at least the first amount of the communication network data to be collected from sources of the communication network data. The processing circuitry is further configured to, when the collected communication network data fulfils an availability criterion for training of a generative model, cause a generative model for the communication network data to be trained using the collected communication network data. The processing circuitry is further configured to cause the remaining amount of the communication network data to be generated using the trained generative model. The processing circuitry is further configured to cause the communication network data, comprising the first amount of collected data and the remaining amount of generated data, to be provided to the communication network node for training of the target ML model. A representation of a data acquisition state for the communication network data comprises: a number of target ML models to be trained using the dataset; a cost of resources for collection of the communication network data from data sources; and a cost of resources for generating the communication network data.
Aspects and examples of the present disclosure thus provide a method, an orchestration node, and a computer readable medium to orchestrate the acquisition of a quantity of communication network data for training a target ML model for use by a communication network node. In particular, an orchestration ML model may be used to determine an amount of the communication network data to be collected from sources of the communication network data, and a remaining amount of the communication network data to be generated using a generative model. In this way, the aspects and examples of the present disclosure provide a technique for determining an optimal split, between collected data and generated data, for acquiring the quantity of communication network data for training a target ML model.
For the purposes of the present disclosure, the term “ML model” encompasses within its scope the following concepts:
For a better understanding of the present disclosure, and to show more clearly how it may be carried into effect, reference will now be made, by way of example, to the following drawings in which:
Examples of the present disclose thus propose an orchestration node that may be privacy-aware, and which monitors factors such as network footprint and availability of computational resources to orchestrate collection of data from various data sources (such as UEs) as well as generation of data. The node may use optimization techniques (such as Reinforcement Learning) to determine an optimal “split” between collecting communication network data from sources of the data, and generating synthetic data, given factors such as available bandwidth and available computational resources.
The method 200 is performed by an orchestration node, which may comprise a physical or virtual node, and may be implemented in a computing device, server apparatus and/or in a virtualized environment, for example in a cloud, edge cloud or fog deployment. The orchestration node may comprise or be instantiated in any part of a network, for example in a logical core network node of a communication network, network management centre, network operations centre, radio access network node etc. A radio access network node may comprise a base station, eNodeB, gNodeB, or any other current or future implementation of functionality facilitating the exchange of radio network signals between nodes and/or users of a communication network. Any communication network node may itself be divided between several logical and/or physical functions, and any one or more parts of the orchestration node may be instantiated in one or more logical or physical functions of a communication network node. The orchestration node may therefore encompass multiple logical entities, as discussed in greater detail below.
Referring to
As illustrated at 210a, 210b and 210c, for the purposes of the method 200, the representation of a data acquisition state for the communication network data comprises a number of target ML models to be trained using the communication network data; a cost of resources for collection of the communication network data from data sources; and a cost of resources for generating the communication network data. The cost of resources for collection and generation of the communication network data may encompass the availability of such resources (for example, if no resources are available the cost may be infinitely or prohibitively high), as well as priority of the task of data acquisition. For example, if resources are available but other high priority or higher value tasks also require those resources, then the cost may be increased. A value for the number of target ML models to be trained using the communication network data, and values or vectors of values representing the cost of resources for collection and generation of the communication network data may be assembled into a matrix that comprises the obtained representation of the data acquisition state for the communication network data. In step 220, the method 200 comprises using an orchestration ML model to map the representation of the data acquisition state to a first amount of the communication network data to be collected from sources of the communication network data, and a remaining amount of the communication network data to be generated using a generative model. In this context, mapping refers to the use of the orchestration ML model to transform the representation of the data acquisition state to the first and remaining amounts. As discussed in further detail below, this may for example comprise submitting the representation of the data acquisition state to the orchestration ML model as model input data, allowing the orchestration ML model to process this input data in accordance with current values of its model parameters, and obtaining from the orchestration ML model a model output, which may for example comprise a value for either or both of the first and remaining amounts. If only one of the first or remaining amount is output by the model, then the other of the first and remaining amount may be obtained by subtracting the model output form the total amount of data. In step 230, the method 200 comprises causing at least the first amount of the communication network data to be collected from sources of the communication network data.
As illustrated at step 240, the method 200 then comprises identifying whether the collected communication network data fulfils an availability criterion for training of a generative model. As also illustrated at step 240, if the collected communication network data does not fulfil the availability criterion, the method 200 may return to step 230. As further illustrated at step 240, if the collected communication network data does fulfil the availability criterion, the method 200 proceeds to step 250. In step 250, the method 200 comprises causing a generative model for the communication network data to be trained using the collected communication network data. In step 260, the method 200 comprises causing the remaining amount of the communication network data to be generated using the trained generative model. In step 270, the method comprises causing the quantity of communication network data, comprising the first amount of collected data and the remaining amount of generated data, to be provided to the communication network node for training of the target ML model
It will be appreciated that the method 200 may be carried out during a learning phase, an operational phase, and/or may encompass elements of learning during online operation. For example, the step of using the orchestration ML model to map the representation to amounts of the dataset to be collected and to be generated may comprise using the output of the ML model directly, or using a randomization process to balance exploitation (using the model output directly) and exploration of the state action space. The method 200 takes account of the amount of data to be acquired and the cost of resources for data collection and for data generation in order to determine an optimal split between data to be collected and data to be generated.
It will further be appreciated that collection of “at least” the first amount of communication network data may encompass collecting greater than the first amount of data, for example the first amount determined by the orchestration ML model is not actually enough to train a generative model. This might be the case for example if the ML model outputs a first amount corresponding to a very small percentage of the data to be collected, with the majority to be generated. This small percentage may not be sufficient, or sufficiently diverse etc., to train the generative model.
Referring first to
As illustrated at step 303, the request management function of the orchestration node may determine whether the request can be fulfilled from communication network data available to the request management function. As illustrated at step 304, if the request can be fulfilled from communication network data available to the request management function, the request management function of the orchestration node may fulfil the request using data available to the request management function. As illustrated at step 305, if the request cannot be fulfilled from communication network data available to the request management function, the request management function of the orchestration node may forward the request for the communication network data to a data acquisition orchestration function of the orchestration node. The remaining steps of the method 300 may be performed by the data acquisition orchestration function of the orchestration node. For brevity, the term “orchestration node” is used below to refer to the logical entity conducting the remaining method steps of the method 300. However, it will be appreciated that the remaining method steps may in fact be performed specifically by the data acquisition orchestration function of the orchestration node.
As illustrated in
Sub steps that may be carried out by the orchestration node in order to perform step 310 are illustrated in
Referring now to
Referring again to
Sub steps that may be carried out by the orchestration node in order to perform step 320 are illustrated in
Referring now to
As discussed above, the method 300 may be carried out during a learning phase and/or during an operational phase. As illustrated at 320bi, during a learning phase, selecting values for the first and remaining amounts of the communication network data based on the orchestration ML model value output by the orchestration ML model may comprise using a randomisation process to balance selection of a random value for at least one of the first and remaining amounts with selection of the orchestration ML model value for at least one of the first and remaining amounts. In this manner, exploitation of the knowledge embodied in the orchestration ML model may be balanced with the advantages to be gained from exploration of the state-action space represented by the possible data acquisition states and the possible splits between data to be collected and data to be generated. It will be appreciated that any proper randomization algorithm that balances the exploration and exploitation could be used in this step, including for example an epsilon-greedy algorithm, or Deep Q Networks. In the case of epsilon-greedy, the orchestration node may select a random value for at least one of the first and remaining amounts with a probability of epsilon, and to select the orchestration ML model value for at least one of the first and remaining amounts with a probability of one minus epsilon. The value of epsilon may be set and adjusted according to relative priorities for selecting an optimal action (according to current experience) and building a diverse and useful experience buffer for training the orchestration ML model, as discussed in greater detail below.
As illustrated at 320bii, during an exploitation phase, selecting values for the first and remaining amounts of the communication network data based on the orchestration ML model value output by the orchestration ML model may comprise selecting the orchestration ML model value for at least one of the first and remaining amounts.
Referring again to
In step 340, the orchestration node may identify whether the collected communication network data fulfils an availability criterion for training of a generative model. As illustrated at 340a, the availability criterion for training of a generative model can comprise a threshold value of a function of parameters describing the collected communication network data. These parameters can include at least one of:
It will be appreciated that the method 300 refers to two availability criteria: the availability criterion for satisfying a request, discussed with reference to step 302a, and the availability criterion for training of a generative model. The availability criterion for satisfying a request is used to determine whether a received data request can be fulfilled from data that is already available, for example being stored in a memory that is accessible to the request management function. The availability criterion for training of a generative model is used to determine whether enough data has been collected to train a generative model. Many of the same parameters are included in both criteria, but the criterion for determining whether a request can be fulfilled also takes account of whether the available data is synthetic (i.e., generated) or collected, whether the network has undergone changes since the data was collected or generated, and performance of models previously trained using the data.
As illustrated at step 340, if the orchestration node identifies that the collected communication network data does not fulfil the availability criterion for training of a generative model, the method may proceed back to step 330. Alternatively, if the orchestration node identifies that the collected communication network data does fulfil the availability criterion for training of a generative model, the method may proceed to step 350, as illustrated in
In particular, as illustrated in
Time efficiency may be a function of a time taken to collect at least the first amount of communication network data from sources of the communication network data, and a time taken to generate the remaining amount of the communication network data, where time to collect data includes time to measure, assemble and upload. Energy efficiency may be a function of energy consumption for transmission of collected data and energy consumption for generation of data. Communication network impact may be a function of transmission interference caused by transmission of collected data, and processing interference caused by generation of data.
As illustrated in
As discussed above, the methods 200 and 300 may be performed by an orchestration node, and the present disclosure provides an orchestration node that is adapted to perform any or all of the steps of the above discussed methods. The orchestration node may be a physical or virtual node, and may for example comprise a virtualised function that is running in a cloud, edge cloud or fog deployment. The orchestration node may for example comprise or be instantiated in any part of a logical core network node, network management centre, network operations centre, radio access node, etc. Any such communication network node may itself be divided between several logical and/or physical functions.
Referring to
f discussed above provide an overview of methods which may be performed according to different examples of the present disclosure. These methods may be performed by an orchestration node as illustrated in
There now follows a detailed discussion of how different process steps illustrated in
An example architecture for implementing the methods 200, 300 may comprise the orchestration node, a data consumer, a data source, and a data generator. The orchestration node may, as discussed above, comprise a request management function and a data acquisition orchestration function. Each of these logical elements is discussed in greater detail below:
The data acquisition orchestration function, also referred to herein as a data_catalogue_orchestrator, is the functional component or module that determines how much data should be collected from each data source and how much data should be generated.
The data consumer, also referred to herein as data_consumer, is a placeholder for any node in a communication network (such as a 3GPP network) that is responsible for training a machine learning model and then performing inference. Such nodes may for example include Network Data Analysis Function (NWDAF) nodes or Operations and Maintenance (OAM) nodes.
The data source, also referred to herein as data_source, is a placeholder for any node in a communication network (such as a 3GPP network), or outside of such a network, that is used for collecting data. Examples of such nodes include UEs and other 3GPP nodes, including gNBs/eNBs, Mobiliyt Management Entity (MME), Packet Gateways etc.
The request management function, also referred to herein as data_catalogue, is the functional component or module that is responsible for knowing the different features that need to be collected for a given data request, and where they are located (in which data source they reside). As such the data_catalogue can be implemented as a distributed key value store.
The data generator, also referred to herein as data_generator, is the functional component or module that is responsible for generating new or synthetic data using input data from data sources and different techniques such as variational autoencoders and/or generate adversarial networks.
An example interaction between a data_consumer, data_catalogue and data_catalogue_orchestrator is illustrated in the signaling exchange of
In the interaction illustrated in
In data collection, a decision is made to which data_source node a request should be sent. As discussed above with reference to step 330 of
A decision may then be taken as to whether the collected data should be used to update one or more data generation models used by the data_generator.
In data generation, a request is sent to the data_generator entity.
Within the same context, an Operations, Administration and Maintenance (OAM) node may be tasked with using the QoS prediction that is produced by the RAN node, with the RAN node simply hosting the model. Based on the prediction, the OAM node will either:
In the following discussion of the messages exchanged and steps illustrated in
With reference to
Depending on the level of satisfaction of the request from the data_consumer that can be achieved with the available data, and whether these data features exist or not, the data catalogue may either:
The following description considers in greater detail the actions of the data_catalogue_orchestrator. The main goal of the Data Catalogue Orchestrator is to address the question of whether data should be collected from data sources (such as UEs) or not, and also whether and to what extent any proportion of that data (for example, 30%) should be collected in a privacy aware manner. The Data Catalogue Orchestrator can then initiate generation of the remaining data using a generative model. The optimal split between collection and generation of data can change over time depending on the bandwidth availability in the network, which is determined by its utilization, other tasks requiring that bandwidth, and the availability and cost of computation resources for running a generative model. Examples of the present disclosure propose to use Reinforcement Learning (RL) to find an optimal split for current network conditions. In order to use RL for this purpose, the problem of determining an optimal split between collection and generation of data can first be formalized as a Markov Decision Process (MDP), comprising a state space, action space and a reward function.
The state space for the RL problem may comprise, inter alia, the number of subscribers (how many machine learning tasks are interested in the feature set), the available uplink/downlink for each data source (for example, UE) that can produce those features, the number of data sources (for example, UEs), the expected volume of data and the available resources for running a generative model (CPU/memory). As discussed in further detail below, the state space can be further subdivided into a data collection state space and a data generation state space.
The action space comprises the possible splits between collection and generation of data. For simplicity, in one example, an action space may be considered in which an agent learns to choose between generating a=[0%, 10% 20%, 30%, 40% . . . 100%] of data (11 actions). Choosing one of these actions means that the remaining data should be collected A=(100−a) %.
The reward function may be designed to reward the model (higher reward value) for causing data to be generated when the data sources have little bandwidth and there are spare computation resources to train a generative model, and to impose a penalty on the model (lower reward value) if the model causes data to be collected directly from the data sources when there is spare computational capacity to run a generative model.
One example expression of this general relationship is shown in the equation bellow:
Time_to_upload is the time duration (in seconds or minutes) to upload the data to be collected from each data source, and can be calculated by dividing the volume of data by the available transfer rate (MB/s for example).
Time_to_generate is the time duration for the generative model to generate new data, including the time it takes for the cloud based infrastructure to allocate needed resources (CPUs/GPUs, Memory) and also the volume of data. The volume of data is proportionate to the Floating Point Operations per Second (FLOPs) that have been allocated by the cloud infrastructure.
Another example expression of the reward function, taking account of factors other than time, is shown in the equation below:
This equation represents a function of computation complexity and energy efficiency. The table below provides a discussion of the parameters in the above reward function:
An example interaction between a data_catalogue_orchestrator, data_source, and data_generator is illustrated in the signaling exchange of
With reference to
Steps 8-19 then repeat in a loop, and are used for training the DQN model.
Steps 24-35 illustrate an operational phase in which the DQN is not re-trained. This is in contrast to the learning phase illustrated above, in which the DQN is constantly learning from its environment.
While the above description of example signalling exchanges is provided in the context of a QoS use case, example methods according to the present disclosure can be used in a wide variety of use cases, examples of which are discussed below.
QoS Prediction: this example use case is presented above.
Mobility procedures (e.g., Handover): ML models used in connection with mobility procedures typically require information as to how users move in space/time. Example methods according to the present disclosure can be used to determine to what extent a generative model that produces trajectories of UE can be trained and used to provide synthetic data for training instead of collecting data from each UE.
Detection of Radio Link Failure (RLF): RLF detection models are trained with alarm data either collected from the UE or from the network equipment. Example methods according to the present disclosure can be used determine to what extent generative models can be used to mimic the way alarms are generated, and thus produce a dataset to train an ML model for the purpose of preventive maintenance.
Centralized/Distributed Multi-Antenna Pre-Coder matrix: Precoding matrices are used to reduce any potential corruption in a communication channel. However, expected corruption is not known in advance, as at this stage there is very little CSI information. To compensate for this problem generative models can be used from historical communication data, which models can learn the corruption of channels and so guide appropriate tuning of the pre-coder matrix. Example methods according to the present disclosure can be used to determine how much synthetic data to generate and use for training.
Multi-User Radio Resources Management (RRM): A generative model can be used to model the way resources are allocated for different uses given the Channel Quality Indicator (CQI) for each UE at a different time and location, and moving at different speeds. Instead of using real data example methods according to the present disclosure can guide collection of a seed of such data, and generation of synthetic data for training a resource allocation model.
Examples of the present disclosure thus propose an orchestration node that may comprise a request management function, for example implemented as a data catalogue, and a data acquisition orchestration function, for example implemented as a data catalogue orchestrator. The orchestration node may keep track of the different features that are needed for different machine learning models and may determine, using reinforcement learning (RL) or other optimization techniques, how much raw data to collect from UEs (or other data sources) and how much synthetic data to generate using generative models. This determination may be made in the basis of cost, including availability, of computational resources and network bandwidth. In addition, depending on requirements for particular data features, the orchestration node can apply a privacy aware data extraction technique (for example, differential privacy) when collecting data. Generating data from private data yields private-generated data.
Advantages afforded by example methods according to the present disclosure include reduced network footprint, as when the cost of collecting data is high, a version of a digital twin of this data (the product of a generative model) can be used to train ML models for use by a communication network node. Adaptive privacy can be used according to different regulations, as differential privacy aware techniques can be used when collecting data from the UEs. A generative model can then be trained on data which contain noise (as a consequence of the use of differential privacy). Consequently, the new data that is produced by the generative model is also private. Instead of relying exclusively on generative models, examples of the present disclosure determine dynamically how to mix raw data with synthetic, generated data, allowing the system to learn from real data and then use the real data distribution to generate the remaining samples. This mix of real and synthetic data is managed efficiently based on available network footprint and computational resources. In many data analysis situations the use of a generative model is advantageous, as it generates data on demand in a smooth and controlled manner compared to collecting data from the real world, which may have uncontrollable delay or missing values. Improvements are therefore offered in energy efficiency, spectral efficiency and throughput of the communication network, and system capacity and user enrollment.
The methods of the present disclosure may be implemented in hardware, or as software modules running on one or more processors. The methods may also be carried out according to the instructions of a computer program, and the present disclosure also provides a computer readable medium having stored thereon a program for carrying out any of the methods described herein. A computer program embodying the disclosure may be stored on a computer readable medium, or it could, for example, be in the form of a signal such as a downloadable data signal provided from an Internet website, or it could be in any other form.
It should be noted that the above-mentioned examples illustrate rather than limit the disclosure, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. The word “comprising” does not exclude the presence of elements or steps other than those listed in a claim, “a” or “an” does not exclude a plurality, and a single processor or other unit may fulfil the functions of several units recited in the claims. Any reference signs in the claims shall not be construed so as to limit their scope.
Number | Date | Country | Kind |
---|---|---|---|
20210100904 | Dec 2021 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2022/070979 | 7/26/2022 | WO |