BALASUBRAMANIAM SANKARAN (IN)
YOON DAEJUNG (FR)
KOTESHWAR SRINATH PAVAN (FR)
CAPDEVIELLE VERONIQUE (FR)
NOKIA AMERICA CORP (US)
WO2013065042A1 | 2013-05-10 | |||
WO2018004464A1 | 2018-01-04 | |||
WO2019036860A1 | 2019-02-28 |
US20160021503A1 | 2016-01-21 | |||
US20140273911A1 | 2014-09-18 | |||
US20160165468A1 | 2016-06-09 | |||
US20160262063A1 | 2016-09-08 | |||
US20160021503A1 | 2016-01-21 |
Claims 1. A method comprising: determining, at a first stage, a first position of a communications device; inputting, from the first stage, the first position to a machine learning model at a second stage; and determining, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the machine learning model. 2. The method according to claim 1, wherein the first position is determined at the first stage by using one of at least a non-machine learning model and a machine learning model. 3. The method according to claim 1 or 2, wherein the first position from the first stage is inputted directly to the machine learning model at the second stage after determining the first position. 4. The method according to claim 1 or 2, further comprising: determining, at the first stage, a first location accuracy of the first position; and comparing the first location accuracy and a second location accuracy of a location quality of service, wherein the first position from the first stage is inputted to the machine learning model at the second stage if comparing the first location accuracy and the second location accuracy results in that the first location accuracy is lower than the second location accuracy, and wherein the method further comprises: inputting the first location accuracy from the first stage to the machine learning model at the second stage if comparing the first location accuracy and the second location accuracy results in that the first location accuracy is lower than the second location accuracy, the second position being determined at the second stage further based on the inputted first location accuracy. 5. The method according to claim 4, wherein determining the first location accuracy comprises using a look-up table. 6. The method according to any of claims 1 to 5, wherein: the machine learning model at the second stage comprises an autoencoder; and the first position from the first stage is inputted to a latent layer of the autoencoder. 7. The method according to claim 6 when dependent on claim 4 or 5, wherein the first location accuracy from the first stage is inputted to the latent layer of the autoencoder. 8. The method according to claim 6 or 7, further comprising: training offline the autoencoder by: computing a first loss at an output of the autoencoder; computing a second loss at the latent layer of the autoencoder by using at least the first position of the communications device and the second position of the communications device; and using the first loss and the second loss to train the autoencoder. 9. The method according to claim 8, wherein the second loss comprises a sum of a first term and a second term, the second term causing the second position to be within a space around the first position. 10. The method according to claim 9, wherein the second term is based on a maximum absolute distance between the first position and the second position. 11. A method comprising: receiving, at a machine learning model at a second stage, a first position of a communications device, the first position being determined at a first stage; and determining, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the machine learning model. 12. The method according to claim 11, wherein the first position from the first stage is received directly at the machine learning model at the second stage after determining the first position. 13. The method according to claim 11, wherein: the first position from the first stage is received at the machine learning model at the second stage if a first location accuracy of the first position from the first stage is lower than a second location accuracy of a location quality of service; and the method further comprises: receiving, at the second stage, the first location accuracy from the first stage if the first location accuracy is lower than the second location accuracy, the second position being determined at the second stage further based on the received first location accuracy. 14. The method according to any of claims 11 to 13, wherein: the machine learning model at the second stage comprises an autoencoder; and the first position from the first stage is received at a latent layer of the autoencoder. 15. The method according to claim 14 when dependent on claim 13, wherein the first location accuracy from the first stage is received at the latent layer of the autoencoder. 16. The method according to claim 14 or 15, further comprising: training offline the autoencoder by: computing a first loss at an output of the autoencoder; computing a second loss at the latent layer of the autoencoder by using at least the first position of the communications device and the second position of the communications device; and using the first loss and the second loss to train the autoencoder. 17. The method according to claim 16, wherein the second loss comprises a sum of a first term and a second term, the second term causing the second position to be within a space around the first position. 18. The method according to claim 17, wherein the second term is based on a maximum absolute distance between the first position and the second position. 19. An apparatus comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to: determine, at a first stage, a first position of a communications device; input, from the first stage, the first position to a machine learning model at a second stage; and determine, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the machine learning model. 20. The apparatus according to claim 19, wherein the first position is determined at the first stage by using one of at least a non-machine learning model and a machine learning model. 21. The apparatus according to claim 19 or 20, wherein the first position from the first stage is inputted directly to the machine learning model at the second stage after determining the first position. 22. The apparatus according to claim 19 to 20, wherein the at least one memory and the computer program code are further configured to, with the at least one processor, cause the apparatus at least to: determine, at the first stage, a first location accuracy of the first position; and compare the first location accuracy and a second location accuracy of a location quality of service, wherein the first position from the first stage is inputted to the machine learning model at the second stage if said comparison between the first location accuracy and the second location accuracy results in that the first location accuracy is lower than the second location accuracy, and wherein the at least one memory and the computer program code are further configured to, with the at least one processor, cause the apparatus at least to: input the first location accuracy from the first stage to the machine learning model at the second stage if said comparison between the first location accuracy and the second location accuracy results in that the first location accuracy is lower than the second location accuracy, the second position being determined at the second stage further based on the inputted first location accuracy. 23. The apparatus according to claim 22, wherein the first location accuracy is determined by causing the apparatus at least to use a look- up table. 24. The apparatus according to any of claims 19 to 23, wherein: the machine learning model at the second stage comprises an autoencoder; and the first position from the first stage is inputted to a latent layer of the autoencoder. 25. The apparatus according to claim 24 when dependent on claim 22 or 23, wherein the first location accuracy is inputted to the latent layer of the autoencoder. 26. The apparatus according to claim 24 or 25, wherein the at least one memory and the computer program code are further configured to, with the at least one processor, cause the apparatus at least to: train offline the autoencoder by: computing a first loss at an output of the autoencoder; computing a second loss at the latent layer of the autoencoder by using at least the first position of the communications device and the second position of the communications device; and using the first loss and the second loss to train the autoencoder. 27. The apparatus according to claim 26, wherein the second loss comprises a sum of a first term and a second term, the second term causing the second position to be within a space around the first position. 28. The apparatus according to claim 27, wherein the second term is based on a maximum absolute distance between the first position and the second position. 29. An apparatus comprising: at least one processor; and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the apparatus at least to: receive, at a machine learning model at a second stage, a first position of a communications device, the first position being determined at a first stage; and determine, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the machine learning model. 30. The apparatus according to claim 29, wherein the first position from the first stage is received directly at the machine learning model at the second stage after determining the first position. 31. The apparatus according to claim 29, wherein: the first position from the first stage is received at the machine learning model at the second stage if a first location accuracy of the first position from the first stage is lower than a second location accuracy of a location quality of service; and the at least one memory and the computer program code are further configured to, with the at least one processor, cause the apparatus at least to: receive, at the second stage, the first location accuracy from the first stage if the first location accuracy is lower than the second location accuracy, the second position being determined at the second stage further based on the received first location accuracy. 32. The apparatus according to any of claims 29 to 31, wherein: the machine learning model at the second stage comprises an autoencoder; and the first position from the first stage is received at a latent layer of the autoencoder. 33. The apparatus according to claim 32 when dependent on claim 31, wherein the first location accuracy from the first stage is received at the latent layer of the autoencoder. 34. The apparatus according to claim 32 or 33, wherein the at least one memory and the computer program code are further configured to, with the at least one processor, cause the apparatus at least to: train offline the autoencoder by: computing a first loss at an output of the autoencoder; computing a second loss at the latent layer of the autoencoder by using at least the first position of the communications device and the second position of the communications device; and using the first loss and the second loss to train the autoencoder. 35. The apparatus according to claim 34, wherein the second loss comprises a sum of a first term and a second term, the second term causing the second position to be within a space around the first position. 36. The apparatus according to claim 35, wherein the second term is based on a maximum absolute distance between the first position and the second position. 37. An apparatus comprising: means for: determining, at a first stage, a first position of a communications device; inputting, from the first stage, the first position to a machine learning model at a second stage; and determining, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the machine learning model. 38. The apparatus according to claim 37, wherein the first position is determined at the first stage by using one of at least a non-machine learning model and a machine learning model. 39. The apparatus according to claim 38, wherein the first position from the first stage is inputted directly to the machine learning model at the second stage after determining the first position. 40. The apparatus according to claim 37 or 38, further comprising: means for: determining, at the first stage, a first location accuracy of the first position; and comparing the first location accuracy and a second location accuracy of a location quality of service, wherein the first position from the first stage is inputted to the machine learning model at the second stage if comparing the first location accuracy and the second location accuracy results in that the first location accuracy is lower than the second location accuracy, and wherein the apparatus further comprises means for: inputting the first location accuracy from the first stage to the machine learning model at the second stage if comparing the first location accuracy and the second location accuracy results in that the first location accuracy is lower than the second location accuracy, the second position being determined at the second stage further based on the inputted first location accuracy. 41. The apparatus according to claim 40, wherein determining the first location accuracy comprises using a look-up table. 42. The apparatus according to any of claims 37 to 41, wherein: the machine learning model at the second stage comprises an autoencoder; and the first position from the first stage is inputted to a latent layer of the autoencoder. 43. The apparatus according to claim 42 when dependent on claim 40 or 41, wherein the first location accuracy from the first stage is inputted to the latent layer of the autoencoder. 44. The apparatus according to claim 42 or 43, further comprising: means for training offline the autoencoder by: computing a first loss at an output of the autoencoder; computing a second loss at the latent layer of the autoencoder by using at least the first position of the communications device and the second position of the communications device; and using the first loss and the second loss to train the autoencoder. 45. The apparatus according to claim 44, wherein the second loss comprises a sum of a first term and a second term, the second term causing the second position to be within a space around the first position. 46. The apparatus according to claim 45, wherein the second term is based on a maximum absolute distance between the first position and the second position. 47. An apparatus comprising: means for: receiving, at a machine learning model at a second stage, a first position of a communications device, the first position being determined at a first stage; and determining, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the machine learning model. 48. The apparatus according to claim 47, wherein the first position from the first stage is received directly at the machine learning model at the second stage after determining the first position. 49. The apparatus according to claim 47, wherein: the first position from the first stage is received at the machine learning model at the second stage if a first location accuracy of the first position from the first stage is lower than a second location accuracy of a location quality of service; and the apparatus further comprises: means for: receiving, at the second stage, the first location accuracy from the first stage if the first location accuracy is lower than the second location accuracy, the second position being determined at the second stage further based on the received first location accuracy. 50. The apparatus according to any of claims 47 to 49, wherein: the machine learning model at the second stage comprises an autoencoder; and the first position from the first stage is received at a latent layer of the autoencoder. 51. The apparatus according to claim 50 when dependent on claim 49, wherein the first location accuracy from the first stage is received at the latent layer of the autoencoder. 52. The apparatus according to claim 50 or 51, further comprising: means for training offline the autoencoder by: computing a first loss at an output of the autoencoder; computing a second loss at the latent layer of the autoencoder by using at least the first position of the communications device and the second position of the communications device; and using the first loss and the second loss to train the autoencoder. 53. The apparatus according to claim 52, wherein the second loss comprises a sum of a first term and a second term, the second term causing the second position to be within a space around the first position. 54. The apparatus according to claim 53, wherein the second term is based on a maximum absolute distance between the first position and the second position. 55. A computer program comprising: computer executable code which, when run on at least one processor, is configured to cause an apparatus at least to: perform any of the methods according to claims 1 to 18. 56. A computer readable medium comprising: program instructions stored thereon for performing any of the methods according to claims 1 to 18. 57. A non-transitory computer readable medium comprising: program instructions stored thereon for performing any of the methods according to claims 1 to 18. 58. A non-volatile tangible memory medium comprising: program instructions stored thereon for performing any of the methods according to claims 1 to 18. 59. An apparatus comprising: circuitry configured to perform any of the methods according to claims 1 to 18. |
Nevertheless, a 5G network specifies new use cases and scenarios which require much more localization accuracy compared to what is specified by the regulatory bodies and what is achieved so far by the standardized NR positioning methods. For example, as specified in 3 GPP TR 22.862 v14.1.0, high positioning accuracy includes requirements that the location information is acquired quickly, is reliable, and is available (e.g., it is possible to determine the position). One typical area where "higher accuracy positioning" is needed may, for example, be collision avoidance of vehicles: every vehicle must be aware of its own position, the positions of near-by vehicles, and also their expected paths, to avoid collisions. Next generation high accuracy positioning will require a level of accuracy less than 1 meter in more than 95 % of service area, including indoor, outdoor and urban environments. Specifically, network based positioning in three-dimensional space should be supported with accuracy from 10 meters to <1 meter in 80 % of situations, and better than 1 meter for indoor deployments. High accuracy positioning service in a 5G network should be supported in areas of traffic roads, tunnel, underground car-park or indoor environment.
In this regard, ML based positioning methods may have the advantage to have a higher localization accuracy than the non-ML positioning methods. Example ML based positioning methods may be based on models such as artificial neural networks (ANNs) comprising, for example, deep neural networks (DNN) and convolutional neural networks (CNN), decision trees, support vector machines (SVMs), regression analysis, Bayesian networks and genetic algorithms (GAs). An example ML based positioning method may be found in: L. Zhang et al., “An efficient machine learning approach for indoor localization”, China Communications, vol.14, no.11, pp.141-150, November 2017. Therein, the ML approach combines grid search based kernel support vector machine and principle component analysis, applies principle component analysis to reduce high dimensional measurements, and designs a grid search algorithm to optimize the parameters of kernel support vector machine in order to improve the localization accuracy. Experimental results indicate that the proposed ML approach reduces the localization error and improves the computational efficiency with respect to K-nearest neighbour, back- propagation neural network and support vector machine based methods. Figure 7 schematically shows an example embodiment of a positioning procedure 700, wherein the depicted reference sign “SW” schematically refers to a two-position switch (the two positions being depicted as ^ and ^) to help better visualize schematically the two example embodiments according to which the positioning procedure may be performed. In a first example stage, a first position, denoted by , of a communications device (e.g., UE) is determined. Although the example embodiment of figure 7 shows that the determination of the first position is performed by a non-ML based positioning method 710 (depicted as non-ML method) using a non-ML model, it shall be noted that, in another example embodiment, the determination of the first position may be performed by a ML based positioning method using a ML model or any other suitable positioning method. The determination of the first position comprises estimating the first position of the communications device such that the determined first position is an estimated position of the communications device. The non-ML based positioning method 710 may be selected among any positioning method defined by the 3GPP, such as, but not limited to, any location method listed in the above-mentioned Table I. In this regard, the selection of the non-ML based positioning method 710 may depend on the considered RAT and the available inputs in the network that can be employed to estimate the UE localization, such as Wi-Fi measurements, positioning reference signal (PRS) measurements, sounding reference signal (SRS) measurements, and so on. As shown, the non-ML model of the non-ML based positioning method 710 receives as input a first set of measurements, depicted as measurement set 1, and provides as output a first location result denoted by , i.e., the first position of the communications device, based on the received input. In a first example embodiment (schematically corresponding to SW being switched to the position as shown in figure 7), the determination (referenced by 720) of a first location accuracy of the first position may be performed and said first location accuracy may be compared (referenced by 730) to a target location accuracy, depicted as second location accuracy, of a location quality of service (QoS) (referenced by 740). The determination (referenced by 720) of the first location accuracy comprises estimating the location accuracy of the first position such that the determined first location accuracy is an estimated location accuracy of the first position The first location accuracy is a positive number which may be expressed in any suitable way, for example, as a percentage value or as a mean square value. The first location accuracy may be determined, for example, by using a lookup table (LUT) with a dedicated database configured to provide the corresponding average location accuracy for each of a plurality of non-ML based positioning methods, and therefore the corresponding average location accuracy for the non-ML based positioning method 710 applied to determine the first position or in offline manner based on the selected non-ML based positioning method 710 and its parameters while accounting for the propagation environment such as indoor and outdoor. The target location accuracy (i.e., the second location accuracy) may, for example, be a required location accuracy included in a QoS structure as defined, for example, by 3GPP Release 16. If the comparison results in that the first location accuracy is equal to or greater than the second location accuracy, then the non-ML based positioning method 710 can be considered satisfactory as regards the accuracy with which the first position is determined, and the positioning procedure 700 provides as output (referenced by 750) the first position (also corresponding to an output of the non-ML model of the non-ML based positioning method 710). On the other hand, if the comparison results in that the first location accuracy is lower than the second location accuracy, thereby meaning that the non-ML based positioning method 710 cannot be considered satisfactory with respect to the second location accuracy as regards the accuracy with which the first position is determined, then an additional stage, denoted by a second example stage, is required to determine the position of the communications device with an increased location accuracy with respect to the first location accuracy , with the aim of reaching the target location accuracy of the QoS, i.e., the second location accuracy of the QoS. The second location accuracy may be expressed in any suitable way, for example, as a percentage value or as a mean square value. In order to decrease any signaling overhead due, for example, to PRS transmission, a second example embodiment (schematically corresponding to SW being switched to the position ^) may be provided. In the second example embodiment, the determination 720 of the first location accuracy of the first position and its comparison 730 with the second location accuracy of the QoS are not performed in the first example stage, and the first position is directly provided to the second example stage. In this second example embodiment, information about the first location accuracy of the first position is not provided to the second example stage, and information about the target location accuracy (i.e., the second location accuracy of the location QoS) may be directly obtained at the second example stage due to the availability of said information about the target location accuracy in the network. In the second example stage, which triggers if the comparison results in that the first location accuracy ^^ ^^^ is lower than the second location accuracy or if the first position is directly provided to the second example stage (i.e., without the steps of determining the first location accuracy of the first position and comparing the first location accuracy and the second location accuracy of the location QoS), a ML based positioning method 760 (referenced by ML method) using a ML model is applied to determine a second position, depicted as , of the communications device such as the UE. The determination of the second position comprises estimating the second position of the communications device such that the determined second position is an estimated position of the communications device. The ML based positioning method 760 may be based on, for example, but not limited to, ANN models such as DNN models, CNN models, etc. As depicted in figure 7, when SW is set to the position , if the above comparison results in that the first location accuracy is lower than the second location accuracy, then the ML model of the ML based positioning method 760 receives as input, from the first example stage, the first position of the communications device and the first location accuracy in addition to a second set of measurements, depicted as measurement set 2. On the other hand, when SW is set to the position , the ML model of the ML based positioning method 760 receives as input, from the first example stage, the first position of the communications device in addition to the second set of measurements, depicted as measurement set 2. The positioning procedure 700 provides as output (referenced by 770) a second location result denoted by (also corresponding to an output of the ML model of the ML based positioning method 760), i.e., the second position of the communications device. The positioning procedure 700 may be based on a supervised learning. To make use of it, an offline training of the ML model is necessary as indicated by reference 780. In an example embodiment, the real time functioning of the positioning procedure 700 may be realized at the LMF 510. In an example option, the training might run at the NWDAF 560 and the training data might then be collected through minimization of drive-tests (MDT) measurements whose corresponding measurement logs/reports might consist of: time information, RF measurements and detailed location information (e.g. GNSS location information). As MDT may already be available as input to NWDAF 560, it would be then needed to transmit the trained ML model towards LMF 510 to be used in an online manner. In another example option, the training and inference operations might run at the LMF 510. To do so, it would be necessary to make MDT measurements available at the LMF side in order to perform the required training of the ML model. In an example embodiment in which the ML based positioning method 760 would be specified to be run in the NWDAF 560, then the LMF 510 might use the API provided by the NWDAF 560. Thus, the positioning procedure 700 of figure 7 may be based on a hybrid use of a first positioning method (i.e., the non-ML based positioning method 710 in the example embodiment of figure 7) and a second positioning method (i.e., the ML based positioning method 760 in the example embodiment of figure 7). Moreover, the positioning procedure 700 may be a two-stage procedure comprising the first example stage (related to the non-ML based positioning method 710 and the optional comparison 730 between the first and second location accuracies) followed by the second example stage (related to the ML based positioning method 760, wherein the output of the first example stage is provided to the input of the second example stage if the above comparison results in that the first location accuracy is lower than the second location accuracy or if the first position is directly provided to the second example stage). Thereby, the positioning procedure 700 of figure 7 may be considered a hierarchical hybrid localization (HHL) procedure. Figure 8 schematically shows an example embodiment of a comparative level of location accuracy provided by the non-ML and ML based positioning methods 710, 760 of the two-stage positioning procedure 700 within a Cartesian coordinate (x, y) system. As can be seen, the non-ML based positioning method 710, depicted as non-ML localization, may schematically provide a “coarse” level of location accuracy, i.e., the first location accuracy of the first position of the communications device. After the output of the non-ML model of the non- ML based positioning method 710 has been provided as input to the ML model of the ML based positioning method 760, the ML based positioning method 760, depicted as ML localization, may schematically provide a “fine” level of location accuracy of the first position of the communications device to obtain the second position of the communications device. Thus, the ML based positioning method 760 of the positioning procedure 700 may be schematically seen as a “zooming” or “refinement” method. It shall be noted that the first and second example stages of the positioning procedure 700 may run at different time scales, depending on the availability of the inputted first and second sets of measurements at the level of each respective example stage. In this regard, figure 9 shows an example embodiment of a time scale representation in the case of a communications device like a UE following a trajectory within a Cartesian coordinate (x, y) system. As can be seen, the non-ML based positioning method 710, depicted as non-ML localization, provides a larger localization error compared to the ML based positioning method 760 depicted as ML localization. Thus, at different time instants, the ML based positioning method 760 may provide a more accurate UE position compared to the non-ML based positioning method 710, within the position range of the non-ML based positioning method 710. Figure 10 shows an example implementation 1000 of the positioning procedure 700, wherein the non- ML model of the non-ML based positioning method 710 is an UTDoA model of an UTDoA based positioning method 1010 (referenced by UTDoA) and the ML model of the ML based positioning method 760 is a DNN model of a DNN based positioning method 1060 (referenced by DNN). In this example implementation 1000 of figure 10, the first position of the communications device provided by the first example stage is depicted as (which is an estimated position); the second position of the communications device provided by the second example stage is depicted as (which is an estimated position); the first set of measurements, depicted as measurement set 1, may comprise SRS measurements and corresponding configuration parameters; and the second set of measurements, depicted as measurement set 2, may comprise reference signal received power (RSRP) measurements reported by the communications device (e.g., UE) and UL-TOA measurements. Still in figure 10, the determination (referenced by 1020) of the first location accuracy (which is an estimated location accuracy) of the first position is determined by using a LUT with a database 1080 configured to provide the corresponding average location accuracy for the UTDoA based positioning method; the location QoS providing the second location accuracy is referenced by 1040; the comparison between the first and second location accuracies is referenced by 1030. Furthermore, the example implementation 1000 of the positioning procedure 700 may provide as output (referenced by 1050) the first position in the case where said comparison results in that the first location accuracy is equal to or greater than the second location accuracy. On the other hand, the example implementation 1000 of the positioning procedure 700 may provide as output (referenced by 1070) the second position (also corresponding to an output of the DNN model of the DNN based positioning method) in the case where the first location accuracy is lower than the second location accuracy or the first position is directly provided to the second example stage. The DNN model of the DNN based positioning method 1060 may comprise a neural network, e.g., an autoencoder. In an example embodiment, the autoencoder may be a CNN, a DNN or any other suitable ANN. Figure 11 shows an example embodiment of an autoencoder 1100. The autoencoder 1100 may comprise an encoder 1110, a latent-space representation 1120 (also known as code), and a decoder 1130. The encoder 1110 may comprise one or more hidden layers and is configured to compress input data, depicted as XRSRP-TOA, which may correspond to the second set of measurements comprising the RSRP and UL-TOA measurements, into the latent-space representation 1120, which comprises a single hidden layer denoted by latent layer, as the middle-most layer. As can be seen, the latent layer may receive, from the first example stage of the positioning procedure 700, the first position (which is an estimated position) of the communications device, and, when the first location accuracy is lower than the second location accuracy, the first location accuracy (which is an estimated location accuracy) of the first position and may then provide as output the second position (which is an estimated position) of the communications device. The decoder 1130 may comprise one or more hidden layers and is configured to reconstruct the input data from the latent-space representation by providing as output the reconstructed input data, depicted as As shown, each of the hidden layers of the encoder 1110, the latent-space representation 1120 and the decoder 1130, has a respective number of neurons (also designated as nodes), the latent layer having the fewest neurons. ML models require an offline training and the provision of training data or samples. The autoencoder 1100, as an example ML model, may be trained offline according to the following example embodiment. Let S be the set of training samples, L be the set of samples with labels (i.e., with the ground truth positions available), and U be the remaining set of unlabeled samples. So, S is the union of L and U. For every element a∈L, we have the availability of the 4-tuple , where respectively denote the RSRP and UL-TOA measurements the actual position of the communications device, the first position of the communications device which is an estimated position determined by the UTDoA based positioning method 1010 using the UTDoA model, and the first location accuracy which is a positive number corresponding to an estimated location accuracy of the first position determined by the UTDoA based positioning method 1010 using the UTDoA model. For every element a∈U, we only have the availability of the 3-tuple The input of the encoder 1110 of the autoencoder 1100 is X RSRP-TOA,a and the same is reconstructed as at the output of the decoder 1130 of the autoencoder 1100 for all a∈S. The autoencoder 1100 may then be trained using a sum of a first loss at the output of the decoder 1130 of the autoencoder 1100 and a second loss at the latent layer 1120 of the autoencoder 1100. The first loss at the output of the decoder 1130 may also be designated as the reconstruction loss for the autoencoder 1100 and be given by the following relationship (1): The second loss at the latent layer 1120 may be given by the following relationship (2): As can be seen, the second loss is the sum of a first and second loss term. The first loss term is the mean-squared error (MSE) loss between the actual positions for the available labeled data and the estimated positions (i.e., the second positions) of the communications device determined by the DNN based positioning method 1070 using the autoencoder 1100. The second loss term is the maximum absolute distance (MAD) loss. It serves to restrict the estimated positions (i.e., the second positions) from the second example stage using the autoencoder 1100, in order to be within a space around the respective estimated positions (i.e., the respective first positions) from the first example stage using the UTDoA model, thereby allowing to achieve a high accuracy with a lesser amount of labeled data. Thus, the use of a ML model like, for example, the autoencoder 1100, along with estimated positions from a non-ML model of a non-ML based positioning method may shorten the offline training phase of the ML model compared to the use of a standalone ML model of a ML based positioning method, because the ML model requires for the same level of position accuracy a lesser amount of labeled data. It also allows to enhance the location accuracy compared to the location accuracy provided by a standalone non-ML model. Figure 12 shows an example flowchart 1200 describing an example embodiment of the positioning procedure 700. This example flowchart 1200 may be implemented in, for example, the LMF 510 or an apparatus within the LMF 510. In step 1210, the method of the example flowchart 1200 may comprise determining, at a first stage, a first position of a communications device. In step 1220, the method of the example flowchart 1200 may comprise inputting, from the first stage, the first position to a ML model at a second stage. In step 1230, the method of the example flowchart 1200 may comprise determining, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the ML model. Figure 13 shows an example flowchart 1300 describing an example embodiment of the positioning procedure 700 performed by the ML model of the ML based positioning method 760. This example flowchart 1300 may be implemented in, for example, the LMF 510 or the NWDAF 560, or an apparatus within the LMF 510 or the NWDAF 560. In step 1310, the method of the example flowchart 1300 may comprise receiving, at a ML model at a second stage, a first position of a communications device, the first position being determined at a first stage. In step 1320, the method of the example flowchart 1300 may comprise determining, at the second stage, at least based on the first position from the first stage, a second position of the communications device by using the ML model. Figure 14 shows an example embodiment of an environment with 2000 UE devices placed within a Cartesian coordinate (x, y) system, where x and y are expressed in meter (m). For the purpose of simulation, there are 21 gNBs with each UE reporting the strongest beam RSRP to each of the 21 gNBs, and the UL-TOA is measured at each gNB for each of the 2000 UE devices. In the first example stage of localization, a non-ML based positioning method using the UTDoA measurements, such as the UTDoA based positioning method 1010, is applied to obtain estimated UE positions for all the 2000 UE devices. In the next stage (i.e., the second example stage) of localization, a ML model, such as the autoencoder 1100 of figure 11, is used for localization. The encoder section 1110 of the autoencoder 1100 has two dense hidden layers with respective 128 and 32 neurons, the latent layer 1120 of the autoencoder 1100 has two neurons, and the decoder section 1130 of the autoencoder 1100 has two dense hidden layers with respective 32 and 128 neurons. The input and the output layers both have 42 neurons. The input X RSRP-TOA to the autoencoder is a 42-dimensional vector formed by a 21-dimensional RSRP vector and a 21-dimensional TOA vector. The input which comprises the estimated positions and first location accuracies from the first example stage of localization, is provided to the latent layer 1120. Furthermore, ground truth labels (i.e., true UE positions) are provided for 1000 of the 2000 samples, and the autoencoder 1100 is trained offline using said first loss at the output of the decoder section 1130 and said second loss at the latent layer 1120. Based on the above simulation parameters, figure 15 shows an example embodiment of a cumulative density function (CDF) plotted against an estimation error value (in meter) for the following three location methods: ● the (standalone) UTDoA based positioning method 1010 using UTDoA measurements as input to the UTDoA model; ● the DNN based positioning method 1060 using the estimated positions and first location accuracies provided by the UTDoA model to the autoencoder 1100 (denoted by AE) as DNN model; and ● the standalone DNN based positioning method 1060 whose autoencoder as DNN model is trained on only 1000 samples without using the estimated positions and first location accuracies from the first example stage. The following Table II provides a description of the mean estimation error (in meter) calculated on the unlabeled 1000 samples for each of the above three location methods. Table II: Mean estimation error (in meter) for the above three location methods Table II shows that the average estimation error for the DNN based positioning method 1060 using both the AE 1100 and the estimated positions and first location accuracies provided by the UTDoA model is smaller than for the standalone DNN based positioning method and the UTDoA based positioning method. It shall be noted that the accuracy gains of a standalone ML based positioning method are even more significant when the offline training is performed on a much larger number of samples. It shall be noted that, while the above described example embodiments, there are several variations and modifications which may be made to the disclosed solution without departing from the scope of the present application. For instance, although the example embodiments of figures 7 to 14 be illustratively related to a positioning procedure based on a non-ML based positioning method using a non-ML model in the first example stage and based on a ML based positioning method using a ML model in the second example stage, in another example embodiment, the proposed positioning procedure may be based on a ML based positioning method using a ML model in both the first example stage and the second example stage or be based on any other suitable positioning method using a suitable model in the first example stage and based on a ML based positioning method using a ML model in the second example stage. The embodiments may thus vary within the scope of the attached claims. In general, some embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although embodiments are not limited thereto. While various embodiments may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof. The embodiments may be implemented by computer software stored in a memory and executable by at least one data processor of the involved entities or by hardware, or by a combination of software and hardware. Further in this regard it should be noted that any of the above procedures may represent program steps, or interconnected logic circuits, blocks and functions, or a combination of program steps and logic circuits, blocks and functions. The software may be stored on such physical media as memory chips, or memory blocks implemented within the processor, magnetic media such as hard disk or floppy disks, and optical media such as for example DVD and the data variants thereof, CD. The memory may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The data processors may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASIC), gate level circuits and processors based on multi core processor architecture, as non-limiting examples. Alternatively or additionally, some embodiments may be implemented using circuitry. The circuitry may be configured to perform one or more of the functions and/or method steps previously described. That circuitry may be provided in the base station and/or in the communications device. As used in the present application, the term “circuitry” may refer to one or more or all of the following: (a) hardware-only circuit implementations (such as implementations in only analogue and/or digital circuitry); (b) combinations of hardware circuits and software, such as: (i) a combination of analogue and/or digital hardware circuit(s) with software/firmware and (ii) any portions of hardware processor(s) with software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as the communications device or base station to perform the various functions previously described; and (c) hardware circuit(s) and or processor(s), such as a microprocessor(s) or a portion of a microprocessor(s), that requires software (e.g., firmware) for operation, but the software may not be present when it is not needed for operation. This definition of circuitry applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term circuitry also covers an implementation of merely a hardware circuit or processor (or multiple processors) or portion of a hardware circuit or processor and its (or their) accompanying software and/or firmware. The term circuitry also covers, for example integrated device. The foregoing description has provided by way of exemplary and non-limiting examples a full and informative description of some embodiments. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. However, all such and similar modifications of the teachings will still fall within the scope as defined in the appended claims.