Method and network node for secondary carrier prediction for a user equipment (UE)
The method and network node employ adaptive learning to efficiently predict secondary carriers for user equipment in dense 5G networks, addressing memory limitations and inter-frequency measurement challenges by dynamically managing data structures and model validity.
Patent Information
- Application Number
- PCT/IB2023/058861
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-07
- Publication Date
- 2025-03-13
AI Technical Summary
Existing technologies face challenges in efficiently predicting secondary carriers for user equipment (UE) in dense 5G communication networks, due to limited memory resources and the need for efficient inter-frequency measurements.
A computer-implemented method and network node that utilize adaptive learning to predict secondary carriers by continually storing measurements in training and validation data structures, training a machine learning model, and dynamically adjusting the batch size and model validity checks to maintain efficient resource management.
The proposed solution achieves accurate secondary carrier predictions while maintaining a low memory footprint, improving the stability and performance of the machine learning model, and adapting to changing network conditions.
Smart Images

Figure IB2023058861_13032025_PF_FP_ABST
Abstract
Description
METHOD AND NETWORK NODE FOR SECONDARY CARRIER PREDICTION FOR A USER EQUIPMENT (UE)TECHNICAL FIELD
[0001] The present disclosure relates to adaptive learning for secondary carrier prediction.BACKGROUND
[0002] Offline machine learning (ML) methods require collecting the data and storing it in memory to train ML models for secondary carrier prediction (SCP). Thus, memory is used for storing the ML model as well as the data. Moreover, read access memory (RAM) available for machine learning is currently limited, especially in dense networks such as fifth generation (5G) communication networks.
[0003] In contrast, on-the-fly learning (OTFL)-based solutions only require storing the model in the memory because the model learns from the samples / data on the fly. The process of learning from the samples could be assumed to be a continuous process; however, this is not an efficient approach.
[0004] Moreover, telecom networks are evolving to denser networks with an increasing number of frequency bands for the operating systems; this becomes more crucial with 5G networks since excessive network densification is required to meet 5G networks requirements.
[0005] In a denser network, with more available frequencies, assigning the best serving cell to a user equipment (UE), without excessive inter-frequency measurements and reporting of secondary carrier, is a big challenge. For interfrequency measurements, a UE should measure the received parameters of a different carrier and compare it with its primary carrier, which the UE is assigned to, via part of its receiving chain. This is a resource-starving procedure in terms of the receiving resources as well as the UE’s battery.SUMMARY
[0006] There is provided a computer implemented method, executed in a network node, for secondary carrier prediction for a user equipment (UE). The method comprises receiving measurements from a plurality of UEs and continually storing a first portion of the measurements in a training data structure, and-periodically storinga second portion of the measurements in a validation data structure. The method comprises, once the training data structure is filled, training a machine learning (ML) model with the measurements stored in the training data structure. The method comprises, upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feeding a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE. The method comprises, upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, training the model again with the measurements stored in the training data structure. In the method, when the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
[0007] There is provided a network node for secondary carrier prediction for a user equipment (UE). The network node comprises processing circuits and a memory. The memory contains instructions executable by the processing circuits whereby the network node is operative to receive measurements from a plurality of UEs and continually store a first portion of the measurements in a training data structure, and periodically store a second portion of the measurements in a validation data structure. The network node is operative to, once the training data structure is filled, train a machine learning (ML) model with the measurements stored in the training data structure. The network node is operative to, upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feed a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE. The network node is operative to, upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, train the model again with the measurements stored in the training data structure. When the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
[0008] There is provided a non-transitory computer readable media having stored thereon instructions for secondary carrier prediction for a user equipment (UE). The instructions comprise receiving measurements from a plurality of UEs and continually storing a first portion of the measurements in a training data structure, and periodically storing a second portion of the measurements in a validation datastructure. The instructions comprise, once the training data structure is filled, training a machine learning (ML) model with the measurements stored in the training data structure. The instructions comprise, upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feeding a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE. The instructions comprise, upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, training the model again with the measurements stored in the training data structure. When the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
[0009] The method and network node provided herein present improvements to the way secondary carrier determination for a user equipment (UE) operate.BRIEF DESCRIPTION OF THE DRAWINGS
[0010] Figure 1 is a schematic illustration of secondary carrier availabilities for a user device in a network of transmitters.
[0011] Figure 2 is a schematic illustration of reference signal received power (RSRP) measurements for primary and potential secondary carriers in a network example.
[0012] Figure 3 is a flowchart of an adaptive learning workflow for secondary carrier prediction.
[0013] Figure 4 is a simplified flowchart illustrating the steps involved in Algorithm 1.
[0014] Figure 5 is a flowchart of a method for secondary carrier prediction for a user equipment (UE).
[0015] Figure 6 is a schematic illustration of a hardware in which steps and / or method described herein can be executed.
[0016] Figure 7 is a schematic illustration of a virtualization environment in which the different steps and hardware components described herein can be deployed.DETAILED DESCRIPTION
[0017] Various features will now be described with reference to the drawings to fully convey the scope of the disclosure to those skilled in the art.
[0018] Sequences of actions or functions may be used within this disclosure. It should be recognized that some functions or actions, in some contexts, could be performed by specialized circuits, by program instructions being executed by one or more processors, or by a combination of both.
[0019] Further, computer readable carrier or carrier wave may contain an appropriate set of computer instructions that would cause a processor to carry out the techniques described herein.
[0020] The functions / actions described herein may occur out of the order noted in the sequence of actions or simultaneously. Furthermore, in some illustrations, some blocks, functions or actions may be optional and may or may not be executed; these are generally illustrated with dashed lines.
[0021] At least some aspects of the techniques described herein may be implemented using artificial intelligence, which comprises a variety of techniques as would be apparent to a person skilled in the art, including machine learning techniques.Machine learning techniques include Neural Network (NN), or Artificial Neural Network (ANN), and both terms may be used interchangeably herein.
[0022] The present disclosure proposes a mechanism which can detect a model performance degradation and switch from the inference to the training process to retrain the model automatically, thus rendering the process of model life cycle management more efficient. One challenge is to implement a mechanism that can maintain a balance between training intervals versus inference intervals while keeping the performance in an acceptable range. This mechanism will be called smart life cycle management for the ML models.
[0023] Referring to figure 1, secondary carrier prediction methods are considered in which a secondary carrier frequency is predicted based on the measurements on a primary carrier frequency. As can be seen in figure 1, at given locations, radio conditions on one frequency can be correlated to radio conditions on another frequency.
[0024] Using ML, it is possible to learn a mapping from intra-frequency measurements (e.g., reference signal received power (RSRP)), made by a UE 10, to measurements on another frequency. The neighbor’s information on the serving frequency represents a “fingerprint”. The second carrier is a preliminary requisite for essential functions to address the following network challenges: bad coverage, load balancing, carrier aggregation, faster and better inter-frequency handover, etc. Thus,reliable models should be designed to predict the secondary carrier on each cell for all the mentioned use cases.
[0025] Figure 2 illustrates RSRP measurements for primary and potential secondary carriers in a network example. In figure 2, Fl = Primary Carrier, called as P-Freq in the data set; F2 - F4 = Secondary Carriers, called as S-Freq in the data set. It is assumed that a UE reports on these 3 neighbor cells, which means that other neighbor cells will have 0s for their RSRP values.
[0026] The prediction models perform as follows. As figure 2 illustrates, the primary cell Cl 1 (a.k.a. PCell) is served by Fl and there are always some other cells 210 on the neighborhood of this cell which are served with the same frequency as Fl. The RSRP measurements from the PCell Cl 1 and its neighboring cells 210 on the same frequency as the PCell’ s frequency are collected and are used as input to a prediction model. On the other side, there are some cells C21, C22, C31, C41 and C42 in the vicinity of the PCell Cl 1 to which different frequencies are assigned. If the frequency over these cells also have coverage on the PCell, then these frequencies could be considered as potential secondary carriers. Cells C21, C22, C31, C41 and C42 are served by F2 - F4 frequencies. The received RSRP of each of these frequencies can be measured by the UE 10 separately and reported as S-RSRP. If an S-RSRP is larger than a threshold, then it is assumed that the corresponding frequency could have coverage on the target PCell and can be introduced as the secondary carrier.
[0027] The meaning of the following terms, in the context of this specification, is explained for more clarity:Offline learning: a model learns from a training data set at once, and then the model is deployed for inference without (or seldomly) performing any updates afterwards;Continual / continuous learning: the model never stops learning, i.e., learning may be triggered at any point;Online / sequential learning: the learning happens continually per sample, it is susceptible to catastrophic forgetting;Incremental learning: the model could learn more than once and in increments;- Adaptive learning: the algorithm learns only when needed, e.g., when there is a data / concept drift.
[0028] According to the above definitions:Online learning, incremental learning, and adaptive learning are subsets of continual learning;Online learning could be considered as a subset of incremental learning because it is an instance-based incremental learning;- Adaptive learning similarly is considered as a subset of incremental learning because it is a trigger-based / episodic incremental learning. In general, incremental learning can be periodic instead of episodic.
[0029] In secondary carrier prediction (SCP), offline learning is too expensive in terms of memory because an ML model must be trained per cell and per frequency and the dataset for each cell and frequency pair can be quite large. On the other hand, the performance of online learning, e.g., in terms of area under the receiver operating characteristic curve (ROC) (AUC), is much worse than offline learning. Moreover, online training for SCP is quite unstable, i.e., the variance of the loss function is quite high.
[0030] The inferior performance of the online learning might be due to the characteristics of the dataset and catastrophic forgetting. The SCP dataset is high dimensional, sparse, and extremely imbalanced with low feature-to-target correlation. Moreover, the number of features and the ratio of the imbalanced samples is not fixed. For example, there could be fifty features for some cell and frequency pairs while there could be one hundred and fifty features for others. Or the ratio of class one to class zero samples could be 10% for some pairs and 90% for others. The high dimensionality of the dataset has two consequences: 1) curse of dimensionality, and 2) a large memory footprint for the ML model.
[0031] Since offline learning is too expensive and online learning has an inferior performance, there is left incremental learning and its subcategory adaptive learning. Currently, there is no solution for SCP based on incremental learning in the literature. One aim is to obtain a satisfactory solution for SCP in terms of performance and memory consumption by proposing a novel adaptive learning approach.
[0032] To maintain a low memory footprint and have relatively accurate ML models for SCP, an adaptive learning approach is proposed. A smart mechanism to switch between three phases, namely inference phase, validation phase and training phase was developed. In the training phase, only a small batch of samples, e.g., two hundred and fifty (250) samples, are save in memory, but the batch is continuously updated by popping the old samples and pushing the new samples using an adaptive stack, i.e.,batch size is greater than one, but epoch is one per training phase. The advantage of this approach is twofold: 1) its memory footprint is small, not as small as online learning, but comparable as the is only save a small batch in memory, and 2) the training is more stable, not as stable as offline learning, but comparable. Moreover, the classification model is also more accurate, in terms of AUC and model validity measure. The model validity measure is a measure that is used by the subject matter experts based on SLA and its definition is presented in Algorithm 3 further below.
[0033] To avoid the curse of dimensionality problem, the number of input features is reduced by using a max pooling filter (maximum pooling, or max pooling, is a pooling operation that selects the maximum element from the region of the feature map covered by the filter) with an adaptive window size and sliding parameter. As a result, it is possible to predict the secondary carrier using, for example, a tiny multilayer perceptron (MLP) with only four input features (i.e., four neurons per input layer), one hidden layer with four neurons and one output layer with two neurons (concisely, a [4, 4, 2] MLP). The size of the parameters of the MLP is less than one kilobyte (KB). Given that the RSRP values can be represented by 32-bit integers, two hundred and fifty or five hundred samples occupy four or eight KBs. Therefore, a low memory footprint is achieved for both data and model.
[0034] Of course, a person skilled in the art would understand that other ML models, such as Hoeffding trees, and Mondrian forests, could be used interchangeably.
[0035] To deal with the imbalanced dataset, a class weight is calculated for each training phase / batch and this class weight is used in the binary cross entropy loss. Using class weights is a well-known technique in ML, and a person of ordinary skills in the art would know how to implement and use it. Binary cross entropy loss computes the cross-entropy loss between true labels and predicted labels for binary classification problems and is also a well-known technique and a person of ordinary skills in the art would know how to implement and use it.
[0036] Turning to figure 3, adaptive learning 300 is implemented by an adaptive stack 310 for training and a buffer 325 for validation. UEs 10, provide Intra + P-cell (X) Cl 1 and Inter (Y) RSRP measurements to the training adaptive stack 310, which activates the training 315, and saving of the model 335. The plus sign in Intra + P-cell means concatenation. In the dataset, there are a lot of Intra-RSRP features (sometimes 100 features), those are put in a vector and P-cell-RSRP is appended to it. For example, a 100-dimensional intra-RSRP vector, becomes a 101-dimensional vectorafter adding P-cell-RSRP. The validation buffer 325 is filled periodically 320 with a fixed number of samples, e.g., one hundred, and is flushed / emptied 340 right after it is used to check the validity 330 of the model and to find the optimal probability threshold. The size of the adaptive stack is not fixed, and it can change dynamically. If the model is valid 345, inference can start 355 with Intra + P-cell (X) RSRP 350, otherwise the model is trained again 315.
[0037] Experiments showed that for certain cell and frequency pairs, more data is needed for training. Therefore, the stack 310 has a base size for most cell and frequency pairs, but the base size can increase incrementally if the ML model becomes invalid for at least two consecutive validation phases. It is worth mentioning that a cap is set for the size of the stack 310, e.g., one thousand, so that the memory footprint of the training data can be controlled.
[0038] Algorithm 1, which follows, describes the implementation of adaptive learning in detail.Algorithm 1 Adaptive learning with an adaptive stack _Define an empty stack for training St and an empty buffer for validation BvSet the base size , the current size Nc to , the increment size Nt, and the cap size Ut for StSet the buffer size Nvfor BvSet model validity Vm to False, training flag Ft to True, validation flag Fvto False, and validity state Vs to 0 for sample 5 doReduce the dimension of sxusing adaptive max-pooling to srMin-max scale the max-pooled feature srto smif Fv is True then if Vm is True thenInfer y from smend if if | Bv| = =NVthenFind the value of model validity Vm and optimal probability threshold TPif Vm is True thenVs = Vs - 1Set Ft to False elseVs = 0Set Ft to True end if thenif Nc > Ut thenNc = Utend if end if if Vs >= -1 thenNc = NbPop | St | — Nb, elements from St in a chronological order end ifFlush BvelsePush (Sm, Sy) tO Bv end if end if thenFalsePush (Sm, sy) to St end if if | St | = = Nc thenPop the first element of StPush (Sm, sy) to St end if if Ft is True and | St | = = Nc then if No ML model exists thenTrain an ML model from scratch elseLoad the last ML model from memory and retrain it end ifSave the ML model to memorySet Fvto TrueSet Ft to False end if end for
[0039] In Algorithm 1, the dots on top of samples show different collection frequencies / arrival speeds. In general, a collection frequency is a configurable parameter, and it can be set to different values for different purposes. For example, it is usually set to a lower number for training than inference because the computational cost of collecting the target variable, i.e., inter-RSRP, can be slightly higher than the cost for collecting features, i.e., intra-RSRP features and P-cell RSRP feature.
[0040] In Algorithm 1, a function is called to reduce the dimensionality of the dataset by an adaptive max-pooling filter. The implementation details of this step are described in Algorithm 2.Algorithm 2 Adaptive max-pooling dimensionality reduction _Retrieve the number of input features N from the input list I Set the target number of features MDefine the empty lists L and RSet the chosen window size parameter Wc and the chosen sliding parameterSc to 1 for window size parameter W from 1 to TV do for sliding parameter S from 1 to N doSave (W, S) in L only if the total number of generated windows for (W, S) is equal to M end for end for if L is not empty thenSort / . in a decreasing order of S and set (Wc, Sc) to the first element of the sorted L end ifGenerate all the slices of / based on (Wc, Sc)Take the maximum of each slice of I and save it to R
[0041] An important step in Algorithm 1 is to decide when to trigger the retraining of the ML model. This decision is based on calculating the model validity measure which is a Boolean value. The calculation of the validity measure depends on the probability threshold that is used to binarize the output of the ML model. Instead of using a fixed threshold, the optimal threshold can be found dynamically.
[0042] The details of this approach are described in Algorithm 3. The validity condition for ML models is enforced according to the use-case domain.Algorithm 3 Validity check and adaptive probability threshold _Retrieve the output probabilities LPfrom the ML modelSet the probability threshold list Lt to [0.05, 0.1, ..., 0.9, 0.95]Set model validity Vm to False for threshold T in Lt doDefine an empty prediction listZc for P in / . / . do if P > = T thenPush 1 to Lc elsePush 0 to Lcend if end forCalculate true positive rate TPR, positive predictive value PPV, true negative rate TNR, and negative predictive value NPV from Lcand the ground truth T if TPR >= 0.1 and PPV >= 0.9 thenSet Vm to True end if if TNR >= 0.1 and NPV >= 0.9 thenSet Vm to True end if if Vm is True thenExit the loop and output Vm and T end if end forOutput Vm and 0.5
[0043] The proposed adaptive learning approach has the following advantages:The method of Algorithm 1 adapts the batch size dynamically for a better performance and resource / memory management. With the dynamic stack for each training step, the method can adjust the batch size during the training, making sure that the size of the current batch of data is controllable under limited resources.- With the adaptive max-pooling of Algorithm 2, the dimension of the input features can be reduced efficiently, i.e., it can be a small number with minimal information loss. Therefore, the curse of dimensionality is avoided.The performance of a small MLP model (with a [4, 4, 2] architecture) that is trained with the proposed adaptive learning mechanism is comparable to the performance of a large LightGBM model which is trained with offline learning, in terms of model validity measurement. In terms of AUC, a large LightGBM model that is trained in an offline manner outperforms the tiny MLP model presented herein, but only when the distribution of the test data is close to the distribution of the training data, which is not always the case. Moreover, the size of a large LightGBM model could be around 100KB and the size of a large dataset that is used for offline learning could be close to 1MB if dimensionality reduction is not used. Therefore, the memory footprint of offline learning makes this approach infeasible in practice given the substantial number of cell and frequency pairs.
[0044] Figure 4 illustrates simplified steps 400 involved in Algorithm 1, for a quick overview. Since validation should never be done on training data, a training stack is used for training and a buffer is used for validation. The training stack and validation buffer are initialized at step 405. A training stack and a validation buffer are used to make sure that validation is separate from training. The validation data in a buffer will be deleted immediately after use and accordingly there will be no opportunity for training data to be mixed with validation data.
[0045] As can be seen in Figure 4, the training stack is adaptive not only in terms of size 415 but also in terms of recency and temporality 410. More precisely, the size of the training stack increases when the ML model underperforms, and the content of the stack also changes continually by popping the old samples 435 and pushing the newones 410. In other words, the training stack adapts gradually to the new distribution of the data. When the train stack is full 420, the training and inference is triggered 425 and if the validation flag is true, validation is performed 430.
[0046] In summary, the dynamic class weight in the loss function tackles the imbalanced nature of the dataset. The adaptive max-pooling dimensionality reduction addresses the high dimensionality of the dataset. The size adaptability of the training stack, the model validity check and optimal probability thresholding tackle the sparsity and low feature-to-target correlation characteristic of the dataset. Finally, the temporal adaptability of the stack and model validity check also tackle the problem of data and concept drift, which is a frequent problem in streaming data processing applications.
[0047] Table 1 illustrates minimum, mean, median, standard deviation, and maximum values for validity percentage for a stack with two different base sizes, namely two hundred fifty and five hundred samples.Table 1 - Experimental results for SCP with an adaptive learning method
[0048] The base size is the minimum size of the stack while the cap is the maximum size of the stack which is set to one thousand, as described in Algorithm 1. Depending on the performance of the model, the size of the training stack can decrease or increase, but the mean size of the stack was calculated over all training phases for all cell and frequency pairs in the dataset. As can be seen in Table 1, the mean value is “445” samples when base size N_b=250 and “622” when base size N_b=500 which is much less than the cap size of one thousand.
[0049] The validity percentage is calculated by dividing the total number of valid ML models by the total number of validation phases for all cell and frequency pairs in the dataset. As can be seen, both mean and median values for validity percentage are high, but median is much higher than mean. Therefore, the distribution of the validity percentage is not normal, and it is skewed to the right which is a good indicator for the performance of the proposed adaptive learning approach. Experiments have indicated that there is a 3% chance that a model never becomes valid even after the training stack reaches its cap size which is set to one thousand samples here. In this case, the selection mechanism falls back to a legacy solution. In network and process scheduling, there are two important scheduling algorithms: i) round-robin and ii) priority-based scheduling. Moreover, each scheduling algorithm can have different variations. For example, deficit round-robin and weighted round-robin are two common variations of round-robin.
[0050] Similar algorithms are used for secondary carrier selection in many legacy solutions. In priority-based carrier selection, each carrier frequency comes with a preassigned priority which is typically stored in system information blocks (SIBs). In priority -based selection, the neighboring cell and frequency pair with the highest priority will be selected as the secondary carrier as long as its RSRP is greater than a threshold. In round-robin carrier selection, quanta are assigned to each carrier in equal portions and in circular order. For example, the quantum can be the load on the carrier. If the load on a carrier is greater than a threshold, the carrier will be eliminated from the list of potential secondary carriers. Moreover, carriers that are not overloaded will be assigned in a circular order, i.e., if carrier Fl is selected previously as the secondary carrier, it will not be selected in the next iteration so that the load is distributed evenly to all carriers. Apart from round-robin and priority-based carrier selection, there is also the option of choosing the secondary carrier randomly.
[0051] Turning to figure 5, there is provided a computer implemented method 500, executed in a network node, for secondary carrier prediction for a user equipment (UE). The method comprises receiving, step 501, measurements from a plurality of UEs and continually storing a first portion of the measurements in a training data structure, and periodically storing a second portion of the measurements in a validation data structure. The training and validation data structures may be first in first out (FIFO) data structures, stacks, or any other type of adequate data structures. The method comprises, once the training data structure is filled, training, step 502, amachine learning (ML) model with the measurements stored in the training data structure. The method comprises, upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feeding, step 503, a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE. The method comprises, upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, training, step 504, the model again with the measurements stored in the training data structure. In the method, when the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure. The new measurement may be stored in a in a first in first out fashion and in that case, the old measurement may be the oldest measurement. Here, “filled” can mean that the data structure contains a predetermined number of items, or it can mean that it is full.
[0052] The first portion and the second portion of the measurements from the UEs may comprise intra reference signal received power (RSRP) measurements and inter RSRP measurements.
[0053] The ML model may be a multilayer perceptron (MLP) with an input layer comprising four neurons, a hidden layer comprising four neurons and an output layer comprising two neurons.
[0054] A class weight may be calculated for each training phase and the class weight may be used in a calculation of a binary cross entropy loss that is used for convergence of the training.
[0055] The method may further comprise discarding, step 505, all the measurements in the validation data structure after determining that the ML model is valid or invalid.
[0056] A number of features stored in the training data structure and in the validation data structure may be reduced by applying a max pooling filter with an adaptive window size and sliding parameter to the measurements. Applying a max pooling filter may comprise applying Algorithm 2.
[0057] A size of the training data structure may increase after two subsequent determinations that the ML model is invalid.
[0058] Determining that the ML model is valid or invalid may be performed periodically. For example, a validation flag may always be set to true, except when the size of the training is less than a threshold (the threshold could be a base size or an adjusted size because stack size can change adaptively).
[0059] Determining that the ML model is valid or invalid may depend on a dynamically calculated probability threshold that is used to binarize the output of the ML model. For example, if probability >= threshold, set the label to 1, otherwise to 0.
[0060] The dynamically calculated probability threshold may be obtained by applying Algorithm 3.
[0061] The measurement from the UE, for inference, may comprise an intra reference signal received power measurement.
[0062] It should be noted that methods and steps described herein are, generally, computer implemented methods and steps. The term computer may be interpreted as having different meanings, such as explained next, for example.
[0063] Referring to figure 6, there is provided a network node (HW) 601, in which functions and steps described herein can be implemented.
[0064] The network node 601 may be a server, radio base station, or other computing device which may be part of a cloud computing system, edge computing system, or which may be a standalone device.
[0065] The network node 601 is used and configured for secondary carrier prediction for one or more user equipment (UEs). The secondary carrier prediction is in turn used to configure the UEs.
[0066] The network node 601 comprises processing circuitry 603 and memory 605. The memory 605 can contain instructions executable by the processing circuitry 603 whereby functions and steps described herein may be executed to provide any of the relevant features and benefits disclosed herein.
[0067] The network node 601 may also include non-transitory, persistent, machine- readable storage media 607 having stored therein software and / or instruction 609 executable by the processing circuitry 603 to execute functions and steps described herein. The network node may also include network interface(s) and a power source.
[0068] The instructions 609 may include a computer program for configuring the processing circuitry 603. The computer program may be stored in a physical memory local to the device, which can be removable, or it could alternatively, or in part, be stored in the cloud. The computer program may also be embodied in a carrier such as an electronic signal, optical signal, radio signal, or computer readable storage medium.
[0069] Referring to figure 7, there is provided a virtualization environment 700 in which functions and steps described herein can be implemented.
[0070] The virtualization environment 700 (which may go beyond what is illustrated in figure 7), may comprise systems, networks, servers, nodes, devices, etc., that are in communication with each other either through wire or wirelessly, e.g., through a network interface component (NIC) comprising physical network interface(s). Some or all of the functions and steps described herein may be implemented as one or more virtual components (e.g., via one or more applications, components, functions, virtual machines, containers, etc.) executing on one or more physical apparatus in one or more networks, systems, environment, etc.
[0071] A virtualization environment provides hardware 701 comprising processing circuitry 703 and memory 705. The memory 705 can contain instructions executable by the processing circuitry 703 whereby functions and steps described herein may be executed to provide any of the relevant features and benefits disclosed herein.
[0072] The hardware 701 may also include non-transitory, persistent, machine- readable storage media 707 having stored therein software and / or instruction 709 executable by the processing circuitry 703 to execute functions and steps described herein.
[0073] The instructions 709 may include a computer program for configuring the processing circuitry 703. The computer program may be stored in a removable memory, such as a portable compact disc, portable digital video disc, or other removable media. The computer program may be stored in a physical memory local to the hardware 701, which can be removable, or it could alternatively, or in part, be stored in the cloud. The computer program may also be embodied in a carrier such as an electronic signal, optical signal, radio signal, or computer readable storage medium.
[0074] Referring again to figures 6 and 7, there is provided a network node 601, 701, for secondary carrier prediction for a user equipment (UE) 10. The network node 601, 701, comprises processing circuitry 603, 703 and a memory 605, 705, the memory 605, 705 containing instructions executable by the processing circuitry 603, 703 whereby the network node 601, 701 is operative to receive measurements from a plurality of UEs and continually store a first portion of the measurements in a training data structure, and periodically store a second portion of the measurements in a validation data structure. The network node 601, 701 is operative to, once the training data structure is filled, train a machine learning (ML) model with the measurements stored in the training data structure. The network node 601, 701 is operative to, upondetermining, with the measurements stored in the validation data structure, that the ML model is valid, feed a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE, The network node 601, 701 is operative to, upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, train the model again with the measurements stored in the training data structure. When the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
[0075] The first portion and the second portion of the measurements from the UEs may comprise intra reference signal received power (RSRP) measurements and inter RSRP measurements.
[0076] The ML model may be a multilayer perceptron (MLP) with an input layer comprising four neurons, a hidden layer comprising four neurons and an output layer comprising two neurons.
[0077] A class weight may be calculated for each training phase and the class weight may be used in a calculation of a binary cross entropy loss that is used for convergence of the training.
[0078] The network node is further operative to discard all the measurements in the validation data structure after determining that the ML model is valid or invalid.
[0079] A number of features stored in the training data structure and in the validation data structure may be reduced by applying a max pooling filter with an adaptive window size and sliding parameter to the measurements.
[0080] The network node is further operative to apply Algorithm 2.
[0081] A size of the training data structure may increase after two subsequent determinations that the ML model is invalid.
[0082] Determining that the ML model is valid or invalid may be performed periodically.
[0083] Determining that the ML model is valid or invalid may depend on a dynamically calculated probability threshold that is used to binarize the output of the ML model.
[0084] The network node is further operative to obtain the dynamically calculated probability threshold by applying Algorithm 3.
[0085] The measurement from the UE, for inference, may comprise an intra reference signal received power measurement.
[0086] Referring again to figure 6 and 7, there is provided a non-transitory computer readable media 607, 707, having stored thereon instructions 609, 709, for secondary carrier prediction for a user equipment (UE). The instructions comprise receiving measurements from a plurality of UEs and continually storing a first portion of the measurements in a training data structure, and periodically storing a second portion of the measurements in a validation data structure. The instructions comprise, once the training data structure is filled, training a machine learning (ML) model with the measurements stored in the training data structure. The instructions comprise, upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feeding a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE. The instructions comprise, upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, training the model again with the measurements stored in the training data structure. When the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
[0087] The non-transitory computer readable media 609, 709 may further comprise instruction for executing any of the steps described herein.
[0088] Modifications will come to mind to one skilled in the art having the benefit of the teachings presented in the foregoing description and the associated drawings. Therefore, it is to be understood that modifications, such as specific forms other than those described above, are intended to be included within the scope of this disclosure. The previous description is merely illustrative and should not be considered restrictive in any way. The scope sought is given by the appended claims, rather than the preceding description, and all variations and equivalents that fall within the range of the claims are intended to be embraced therein. Although specific terms may be employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
Claims
CLAIMS1. A computer implemented method, executed in a network node, for secondary carrier prediction for a user equipment (UE), comprising:- receiving measurements from a plurality of UEs and: continually storing a first portion of the measurements in a training data structure, and- periodically storing a second portion of the measurements in a validation data structure; once the training data structure is filled, training a machine learning (ML) model with the measurements stored in the training data structure;- upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feeding a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE; and- upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, training the model again with the measurements stored in the training data structure; wherein when the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
2. The method of claim 1, wherein the first portion and the second portion of the measurements from the UEs comprise intra reference signal received power (RSRP) measurements and inter RSRP measurements.
3. The method of claim 1 or 2, wherein the ML model is a multilayer perceptron (MLP) with an input layer comprising four neurons, a hidden layer comprising four neurons and an output layer comprising two neurons.
4. The method of any one of claims 1 to 3, wherein a class weight is calculated for each training phase and the class weight is used in a calculation of a binary cross entropy loss that is used for convergence of the training.
5. The method of any one of claims 1 to 4, further comprising discarding all the measurements in the validation data structure after determining that the ML model is valid or invalid.
6. The method of any one of claims 1 to 5, wherein a number of features stored in the training data structure and in the validation data structure is reduced by applying a max pooling filter with an adaptive window size and sliding parameter to the measurements.
7. The method of claim 6, wherein applying a max pooling filter comprises applying Algorithm 2.
8. The method of any one of claims 1 to 7, wherein a size of the training data structure increases after two subsequent determinations that the ML model is invalid.
9. The method of any one of claims 1 to 8, wherein determining that the ML model is valid or invalid is performed periodically.
10. The method of any one of claims 1 to 9, wherein determining that the ML model is valid or invalid depends on a dynamically calculated probability threshold that is used to binarize the output of the ML model.
11. The method of claim 10, wherein the dynamically calculated probability threshold is obtained by applying Algorithm 3.
12. The method of any one of claims 1 to 11, wherein the measurement from the UE, for inference, comprises an intra reference signal received power measurement.
13. A network node for secondary carrier prediction for a user equipment (UE), comprising processing circuits and a memory, the memory containing instructions executable by the processing circuits whereby the network node is operative to:- receive measurements from a plurality of UEs and: continually store a first portion of the measurements in a training data structure, and- periodically store a second portion of the measurements in a validation data structure; once the training data structure is filled, train a machine learning (ML) model with the measurements stored in the training data structure;- upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feed a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE; and- upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, train the model again with the measurements stored in the training data structure; wherein when the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
14. The network node of claim 13, wherein the first portion and the second portion of the measurements from the UEs comprise intra reference signal received power (RSRP) measurements and inter RSRP measurements.
15. The network node of claim 13 or 14, wherein the ML model is a multilayer perceptron (MLP) with an input layer comprising four neurons, a hidden layer comprising four neurons and an output layer comprising two neurons.
16. The network node of any one of claims 13 to 15, wherein a class weight is calculated for each training phase and the class weight is used in a calculation of a binary cross entropy loss that is used for convergence of the training.
17. The network node of any one of claims 13 to 16, further operative to discard all the measurements in the validation data structure after determining that the ML model is valid or invalid.
18. The network node of any one of claims 13 to 17, wherein a number of features stored in the training data structure and in the validation data structure is reduced by applying a max pooling filter with an adaptive window size and sliding parameter to the measurements.
19. The network node of claim 18, further operative to apply Algorithm 2.
20. The network node of any one of claims 13 to 19, wherein a size of the training data structure increases after two subsequent determinations that the ML model is invalid.
21. The network node of any one of claims 13 to 20, wherein determining that the ML model is valid or invalid is performed periodically.
22. The network node of any one of claims 13 to 21, wherein determining that the ML model is valid or invalid depends on a dynamically calculated probability threshold that is used to binarize the output of the ML model.
23. The network node of claim 22, further operative to obtain the dynamically calculated probability threshold by applying Algorithm 3.
24. The network node of any one of claims 13 to 23, wherein the measurement from the UE, for inference, comprises an intra reference signal received power measurement.
25. A non-transitory computer readable media having stored thereon instructions for secondary carrier prediction for a user equipment (UE), the instructions comprising:- receiving measurements from a plurality of UEs and: continually storing a first portion of the measurements in a training data structure, and- periodically storing a second portion of the measurements in a validation data structure; once the training data structure is filled, training a machine learning (ML) model with the measurements stored in the training data structure; - upon determining, with the measurements stored in the validation data structure, that the ML model is valid, feeding a measurement from the UE to the ML model for inference, to obtain the secondary carrier prediction for the UE; and - upon determining, with the measurements stored in the validation data structure, that the ML model is invalid, training the model again with the measurements stored in the training data structure; wherein when the training data structure is full and a new measurement is available for storing, an old measurement is deleted from the training data structure and the new measurement is inserted in the training data structure.
26. The non-transitory computer readable media of claim 25, further comprising instruction for executing the steps of any one of claims 2 to 12.
Citation Information
Patent Citations
System and method for a convolutional neural network for multi-label classification with partial annotations
US20200160177A1
Secondary cell group selection based on primary frequency band measurements
US20210243631A1
Machine learning non-standalone air-interface
WO2021089568A1
Apparatuses, methods and computer program using channel measurement data for a primary component carrier
WO2021148136A1
Distributed learning using mobile network topology information
WO2023134851A1