User position determination method and device and electronic equipment

By obtaining and processing users' network usage data and using models to predict and optimize locations, the problems of user location push delay and inaccuracy in the 5G era are solved, real-time accurate prediction of user locations and service quality improvement.

CN119172726APending Publication Date: 2024-12-20CHINA TELECOM CORP LTD

Patent Information

Application Number
CN202411322836.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-20
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

In the 5G era, due to the large user scale, data latency and omission problems, the delay and inaccuracy of user location push has affected the efficiency and user experience of real-time location services.

Method used

By obtaining the user's network usage data, including depth packet detection data, measurement report data and detailed list data, the first model is used to extract and initial position prediction of the trajectory feature data, and optimize the position prediction results through the second model, combining geography Location and signal feature information are used to establish a positioning database to achieve real-time and accurate prediction of user location.

Benefits of technology

It improves the accuracy and user experience of user location services, reduces the delay in information push, enhances the practicality of 5G cloud message service, and meets the needs of real-time location push.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172726A_ABST
    Figure CN119172726A_ABST
Patent Text Reader

Abstract

The invention discloses a user position determination method and device and electronic equipment. The method comprises the steps that network use data of a target object is acquired, track feature data corresponding to the target object are determined according to the network use data, and the network use data comprise at least one of deep packet inspection data, measurement report data and detailed list data generated when the target object uses a network; the track feature data is used for representing feature data generated by the target object in a position moving process; processing the trajectory feature data through a first model to obtain a position prediction result of the target object; and processing the position prediction result through a second model to obtain the target position of the target object. The technical problem that the position of the user cannot be positioned in real time due to the conditions of data delay, data omission and the like in related technologies is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of real-time computing, and in particular to a method, device and electronic device for determining a user location. Background Art

[0002] In the era of mobile Internet, user location information has become key data in the fields of business analysis, public transportation, autonomous driving, drones, smart homes, etc. In order to protect personal information, the user's location is often indirectly collected and calculated through various devices and systems, and provided to relevant parties without violating regulations. For example, when a user stays in a scenic spot or business district, the system can determine the location in real time by recording the location changes of the user's device, and promptly recommend "food, accommodation, transportation, travel, shopping, and entertainment" related special services to the user, helping to promote the cultural and tourism industry and create a complete service closed loop to meet the needs of tourists in the new era of 5G.

[0003] However, due to the large scale of 5G users, large-scale data processing has a large delay, and there are also data omissions, which affects the accuracy and efficiency of real-time location push. For example, when the recommendation message arrives, the user may have already left the scenic spot or business district. The delay of the message will not only produce invalid recommendations, but also cause unnecessary disturbance to users, and even lead to complaints.

[0004] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention

[0005] The embodiments of the present application provide a method, device and electronic device for determining a user location, so as to at least solve the technical problem of being unable to locate the user location in real time due to data delay, data omission and the like in the related technology.

[0006] According to one aspect of an embodiment of the present application, a method for determining a user location is provided, comprising: acquiring network usage data of a target object, and determining trajectory feature data corresponding to the target object based on the network usage data, wherein the network usage data comprises at least one of the following: deep packet detection data, measurement report data, and detailed list data generated when the target object uses the network, and the trajectory feature data is used to represent feature data generated by the target object during its position movement; processing the trajectory feature data through a first model to obtain a position prediction result of the target object, wherein the first model is used to extract features from the trajectory feature data and generate preliminary position prediction information; processing the position prediction result through a second model to obtain a target position of the target object, wherein the second model optimizes the position prediction result by optimizing model hyperparameters.

[0007] Optionally, after obtaining the network usage data of the target object, the method also includes: determining a first configuration parameter and a second configuration parameter when processing the network usage data; determining a first resource usage rate of the network usage data under the first configuration parameter, and determining a second resource usage rate of the network usage data under the second configuration parameter, wherein the first resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the first configuration parameter, and the second resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the second configuration parameter; determining a target configuration parameter based on the first resource usage rate and the second resource usage rate, wherein the target configuration parameter is a configuration parameter with optimal resource usage rate for the network usage data under the first configuration parameter and the second configuration parameter.

[0008] Optionally, after obtaining the network usage data of the target object, the method also includes: determining first characteristic data containing geographic location information in the network usage data, wherein the geographic location information includes at least latitude and longitude information and a cell location code of the target object; determining second characteristic data containing signal characteristic information in the network usage data, wherein the signal characteristic information includes at least device information of a user device used by the target object, and signal strength and signal quality received by the user device; establishing a positioning database based on the first characteristic data and the second characteristic data, wherein the geographic location information and signal characteristic information in the positioning database correspond one to one.

[0009] Optionally, the trajectory feature data is processed by the first model to obtain a position prediction result of the target object, including: position encoding the trajectory feature data to obtain encoded feature data; processing the encoded feature data by the attention mechanism in the first model to obtain a first feature vector corresponding to the encoded feature data; processing the first feature vector by the feedforward neural network in the first model to obtain a second feature vector corresponding to the encoded feature data; and determining the position prediction result based on the second feature vector.

[0010] Optionally, the encoded feature data is processed through the attention mechanism in the first model to obtain a first feature vector corresponding to the encoded feature data, including: determining a query vector, a key vector, and a value vector corresponding to the encoded feature data, and determining a first attention weight corresponding to the self-attention mechanism in the first model based on the query vector and the key vector; determining a third feature vector corresponding to the encoded feature data based on the first attention weight and the value vector; processing the third feature vector through the multi-head attention mechanism in the first model to obtain a second attention weight corresponding to each attention head in the multi-head attention mechanism; and determining the first feature vector based on the second attention weight.

[0011] Optionally, the second model is determined in the following manner: obtaining the historical location data and historical location prediction results of the target object; constructing an initial regression model, and determining the objective function of the initial regression model, wherein the objective function includes a mean function and a covariance function for processing the historical location data and the historical location prediction results; determining the normal distribution of the historical location data and the historical location prediction results based on the objective function; adjusting the hyperparameters of the initial regression model based on the normal distribution to obtain the second model.

[0012] Optionally, the normal distribution of the historical position data and the historical position prediction results is determined based on the objective function, including: determining a first normal distribution corresponding to the historical position data based on the objective function; determining the joint density of the historical position data and the historical position prediction results, wherein the joint density is used to represent the joint probability distribution between the historical position data and the historical position prediction results; and determining a second normal distribution corresponding to the historical position prediction results based on the first normal distribution and the joint density.

[0013] According to another aspect of an embodiment of the present application, a device for determining a user position is also provided, including: an acquisition module, used to acquire network usage data of a target object, and determine trajectory feature data corresponding to the target object based on the network usage data, wherein the network usage data includes at least one of the following: deep packet detection data, measurement report data, and detailed list data generated when the target object uses the network, and the trajectory feature data is used to represent feature data generated by the target object during the movement of the position; a first processing module, used to process the trajectory feature data through a first model to obtain a position prediction result of the target object, wherein the first model is used to extract features from the trajectory feature data and generate preliminary position prediction information; a second processing module, used to process the position prediction result through a second model to obtain a target position of the target object, wherein the second model optimizes the position prediction result by optimizing model hyperparameters.

[0014] According to another aspect of an embodiment of the present application, there is also provided an electronic device, including: a memory and a processor, wherein the memory is used to store program instructions; the processor is connected to the memory and is used to execute the method for determining the user location.

[0015] According to another aspect of the embodiments of the present application, a non-volatile storage medium is further provided, the non-volatile storage medium including a stored computer program, wherein the device where the non-volatile storage medium is located executes the above-mentioned method for determining the user location by running the computer program.

[0016] According to another aspect of the embodiments of the present application, a computer program product is also provided, including computer instructions, which implement the above-mentioned method for determining the user location when the computer instructions are executed by a processor.

[0017] In an embodiment of the present application, network usage data of a target object is obtained, and trajectory feature data corresponding to the target object is determined based on the network usage data, wherein the network usage data includes at least one of the following: deep packet detection data, measurement report data, and detailed list data generated when the target object uses the network, and the trajectory feature data is used to represent feature data generated by the target object during its movement; the trajectory feature data is processed by a first model to obtain a position prediction result of the target object, wherein the first model is used to extract features from the trajectory feature data and generate preliminary position prediction information; the position prediction result is processed by a second model to obtain a target position of the target object, wherein the second model optimizes the position prediction result by optimizing the model hyperparameters, thereby achieving the purpose of real-time prediction of the user's position, thereby achieving the technical effect of improving the accuracy of location services and user experience, and further solving the technical problem of being unable to locate the user's position in real time due to data delays, data omissions, and the like in related technologies. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0019] Figure 1 is a hardware structure diagram of a computer terminal for implementing a method for determining a user location according to an embodiment of the present application;

[0020] Figure 2 is a flow chart of a method for determining a user location according to an embodiment of the present application;

[0021] Figure 3 It is a structural diagram of a device for determining a user location according to an embodiment of the present application. DETAILED DESCRIPTION

[0022] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.

[0023] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0024] First, some nouns or terms that appear in the process of explaining the embodiments of the present application are subject to the following explanations:

[0025] DPI (Deep Packet Inspection): A network monitoring technology that allows network administrators or service providers to inspect the contents of data packets passing through the network. In addition to traditional IP packet detection technology, DPI adds application protocol identification, datagram content detection and deep decoding of application layer data. By collecting user online behavior, massive DPI data is generated, which can be analyzed in real time to identify various applications to obtain user information, location information, business perception, network quality, user behavior and other data.

[0026] MR (Measurement Report): A CTR (Cell Trace Record) file output by OSS (Operation Support System), including three files: MRO (Measurement Report Occasion), MRE (Measurement Report Event), and MRS (Measurement Report Subtype). MR is reported by the user equipment (UE). It expands the location information from the cell to the specific location, and can provide more realistic feedback on the user's location information.

[0027] XDR (x Detail Record): A general term for detailed records of user-plane and control-plane data. Specifically, it includes: CDR (Call Detail Record): Contains control-plane data, which reflects user call or WEB service information, and can reflect service quality from the side. UFDR (User Flow Detail Record): Contains user-plane data, i.e., data on the interaction between the user terminal and the Internet. TDR (Transaction Detail Record): Contains information after the synthesis and association of events (such as location updates and handovers), such as transaction type, latency, failure cause, etc. SDR (Statistics Detail Record): A summary of indicators generated by various dimensions generated by statistics on the original CDR at a fixed period by SEQ Analyst, which is used to support SEQ Analyst to perform service queries at different time granularities.

[0028] Transformer: A model that uses the attention mechanism to increase the speed of model training. It is suitable for parallel computing and fast computing. Transformer improves the shortcomings of slow training of recurrent neural network (RNN) and can be increased to a very deep depth, fully exploring the characteristics of deep neural network (DNN) model and improving model accuracy.

[0029] Apache Flink: An open source framework and distributed processing engine that focuses on efficient and accurate real-time computing of unbounded and bounded data streams. With its precise state management, event time processing capabilities, and powerful real-time computing performance, it ensures the real-time nature of data and is suitable for the collection and processing of DPI data.

[0030] In order to solve the problem of poor real-time performance of location determination in the related art, the present application embodiment provides a method for determining the user location, which can be run on Figure 1 In the computer terminal shown, the computer terminal is described below.

[0031] The method for determining the user location provided in the embodiments of the present application may be executed in a mobile terminal, a computer terminal or a similar computing device. Figure 1 FIG. 1 shows a hardware structure block diagram of a computer terminal for implementing a method for determining a user location. Figure 1As shown, the computer terminal 10 may include one or more (102a, 102b, ..., 102n are used to illustrate) processors (the processor may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 for storing data, and a transmission module 106 for communication functions connected via a wired and / or wireless network. In addition, it may also include: a display, a keyboard, a cursor control device, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports of the I / O interface), a network interface, and a BUS bus. Those skilled in the art can understand that Figure 1 The structure shown is only for illustration and does not limit the structure of the above electronic device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown.

[0032] It should be noted that the one or more processors and / or other data processing circuits described above may generally be referred to herein as "data processing circuits". The data processing circuits may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof. In addition, the data processing circuit may be a single independent processing module, or may be incorporated in whole or in part into any of the other components in the computer terminal 10. As described in the embodiments of the present application, the data processing circuit acts as a processor control (e.g., selection of a variable resistor terminal path connected to an interface).

[0033] The memory 104 can be used to store software programs and modules of application software, such as program instructions / data storage devices corresponding to the method for determining the user location in the embodiment of the present application. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory 104, that is, the method for determining the user location described above is realized. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include a memory remotely arranged relative to the processor, and these remote memories may be connected to the computer terminal 10 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0034] The transmission module 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the computer terminal 10. In one example, the transmission module 106 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission module 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.

[0035] The display may be, for example, a touch screen liquid crystal display (LCD) that enables a user to interact with a user interface of the computer terminal 10 .

[0036] It should be noted that, in some optional embodiments, the above Figure 1 The computer terminal shown may include hardware elements (including circuits), software elements (including computer code stored on a computer-readable medium), or a combination of hardware elements and software elements. It should be noted that Figure 1 This is merely one example of a particular embodiment and is intended to illustrate the types of components that may be present in the computer terminal described above.

[0037] In the above operating environment, an embodiment of the present application provides an embodiment of a method for determining a user's location. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0038] Figure 2 is a flow chart of a method for determining a user location according to an embodiment of the present application, such as Figure 2 As shown, the method comprises the following steps:

[0039] Step S202, obtaining network usage data of the target object, and determining trajectory feature data corresponding to the target object based on the network usage data, wherein the network usage data includes at least one of the following: deep packet inspection data, measurement report data, and detailed list data generated when the target object uses the network, and the trajectory feature data is used to represent feature data generated by the target object during the movement of the position.

[0040] In the above step S202, real-time collection of the user's (i.e., the above-mentioned target object) network usage data and determination of trajectory feature data are the basis for realizing real-time location push of 5G cloud messages. The purpose is to collect and process the data generated by the user when using the network, so as to accurately predict and push relevant location information and cloud messages in the future. Among them, the network usage data includes but is not limited to deep packet inspection data DPI, measurement report data MR and detailed data XDR. Deep packet inspection data DPI can provide detailed information on the user's online behavior, measurement report data MR contains user location information, and detailed data XDR records the user's communication behavior.

[0041] Furthermore, the trajectory feature data that can represent the user's mobility process is extracted from the above network usage data. Specifically, key fields are extracted from DPI, MR and XDR, such as IMSI (card number), IMEI (terminal number), time (including start time and end time), coordinates (including data longitude and latitude), IP address, cell location area code (including the location area code FirstLAC of the start cell and the location area code LastLAC of the end cell), etc. Then, the extracted feature data is integrated into a feature vector That is, the above-mentioned trajectory feature data, each trajectory feature data includes the user's unique identifier, location information, time interval and data source, expressed as:

[0042]

[0043] Among them, i is the user's unique identifier IMEI combined with IMSI code; x, y are the longitude and latitude converted into rectangular coordinate system identifiers; ip is the user's IP fingerprint processing; l is the location area code FirstLAC of the starting cell and the location area code LastLAC of the ending cell; d t is the time interval; m is the source code of the sample data.

[0044] Therefore, the trajectory feature data of n consecutive moments can be expressed as Used for subsequent model training and prediction.

[0045] Step S204, processing the trajectory feature data through the first model to obtain a position prediction result of the target object, wherein the first model is used to extract features from the trajectory feature data and generate preliminary position prediction information.

[0046] In the above step S204, by receiving the processed trajectory feature data and performing in-depth feature extraction using the first model (such as the Transformer model), a preliminary position prediction result can be obtained. The feature extraction stage may include processes such as position encoding, self-attention mechanism, multi-head attention mechanism, and feedforward neural network processing.

[0047] Step S206, processing the position prediction result through the second model to obtain the target position of the target object, wherein the second model optimizes the position prediction result by optimizing the model hyperparameters.

[0048] In the above step S206, the position prediction result of the above Transformer model can be optimized by a second model (such as a Gaussian regression algorithm, a GPR algorithm, etc.) to improve the accuracy of position prediction. The optimization stage may include processes such as defining a Gaussian process, building a regression model, calculating joint density, optimizing model hyperparameters, and predictive calculation.

[0049] Through the above steps S202 to S206, the purpose of real-time and accurate prediction of the user's location is achieved, thereby achieving the technical effect of improving the accuracy of location services and user experience, and further solving the technical problem of being unable to locate the user's location in real time due to data delays, data omissions, etc. in related technologies. The following is a detailed description.

[0050] In the above step S202, after obtaining the network usage data of the target object, the method also includes: determining a first configuration parameter and a second configuration parameter when processing the network usage data; determining a first resource usage rate of the network usage data under the first configuration parameter, and determining a second resource usage rate of the network usage data under the second configuration parameter, wherein the first resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the first configuration parameter, and the second resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the second configuration parameter; determining a target configuration parameter based on the first resource usage rate and the second resource usage rate, wherein the target configuration parameter is a configuration parameter with the optimal resource usage rate of the network usage data under the first configuration parameter and the second configuration parameter.

[0051] In the embodiment of the present application, by comparing resource utilization (such as memory utilization and CPU utilization) under different configuration parameters, the optimal configuration parameters for real-time data processing of network usage data can be determined, thereby achieving efficient resource utilization and stable operation of tasks. The details are as follows:

[0052] The Flume component collects users' network usage data in real time, including deep packet inspection data DPI, measurement report data MR, and detailed order data XDR, and uploads the collected network usage data to Kafka (as an intermediary for data transmission). Flink performs real-time processing by consuming Kafka data.

[0053] Furthermore, in order to improve the efficiency of real-time data processing, the following two sets of Flink configuration parameters were tested and compared, and the better configuration parameters were taken as the target configuration parameters to ensure the smooth operation of tasks with fewer resources. Specifically,

[0054] Parallelism enables two degrees of parallelism, and Flink allocates two containers by default.

[0055] Under the first configuration parameters, the first resource utilization of network data is as follows: one container has a higher memory utilization rate, about 60%, and the other is as low as 20%; the memory utilization rate of the yarnjobmanageremory job control node is less than 30%, and the memory utilization rate of both the jobmanager and the taskmanager is not high; in addition, the two degrees of parallelism cause one of the CPUs to be idle for a long time, resulting in resource waste.

[0056] Under the second configuration parameters, the second resource utilization of network data is as follows: CPU utilization reaches 60%, memory utilization reaches 70%, and the job resource utilization is relatively high, saving CPU and memory overhead. In addition, real-time calculation is not delayed and data is not lost, ensuring stable operation of the job.

[0057] Therefore, the second configuration parameter is superior to the first configuration parameter, and the second configuration parameter is used as the target configuration parameter for performing real-time data processing on the user's network usage data.

[0058] Optionally, after obtaining the network usage data of the target object, the method also includes: determining first characteristic data containing geographic location information in the network usage data, wherein the geographic location information includes at least latitude and longitude information and a cell location code of the target object; determining second characteristic data containing signal characteristic information in the network usage data, wherein the signal characteristic information includes at least device information of a user device used by the target object, and signal strength and signal quality received by the user device; establishing a positioning database based on the first characteristic data and the second characteristic data, wherein the geographic location information and signal characteristic information in the positioning database correspond one to one.

[0059] In the embodiment of the present application, the positioning (fingerprint) database constructed by geographic location information and signal feature information contains the strength characteristics of various wireless signals of users in a specific environment. When a user needs to be located, the mobile device can capture the signal strength characteristics of the same signal source at an unknown location, and compare the signal strength characteristics with the signal characteristics in the positioning (fingerprint) database to obtain the user's current location. The specific construction method of the positioning database can be as follows:

[0060] 1. Feature data acquisition:

[0061] In a specific area, first feature data including geographic location information is obtained from network usage data, where the first feature data at least includes latitude and longitude information and a cell location code (including a location area code FirstLAC of a starting cell and a location area code LastLAC of an ending cell) where the user is located, wherein the latitude and longitude information can be directly obtained from a GPS module of a user device;

[0062] And obtain second characteristic data containing signal characteristic information from the network usage data, wherein the second characteristic data at least includes device information of the user device (such as device model, operating system, etc.), signal strength received by the user device, signal quality received by the user device, etc.

[0063] 2. Establish mapping relationship:

[0064] The extracted first feature data is associated with the second feature data, for example, by using a statistical method or a machine learning model to establish a mapping relationship from signal feature information to geographic location information.

[0065] It should be noted that for network usage data without longitude and latitude information, the longitude and latitude of the user can be inferred by querying an established positioning database, for example, by finding the record in the positioning database that is most similar to the current signal characteristics and using its associated geographic location information.

[0066] 3. Build a positioning database:

[0067] A positioning database is constructed to store the mapping relationship between the first characteristic data and the second characteristic data, so as to efficiently retrieve and update records, wherein each record in the positioning database includes a set of signal characteristic information and its corresponding geographical location information.

[0068] In the above step S204, the trajectory feature data is processed by the first model to obtain a position prediction result of the target object, including: position encoding the trajectory feature data to obtain encoded feature data; processing the encoded feature data by the attention mechanism in the first model to obtain a first feature vector corresponding to the encoded feature data; processing the first feature vector by the feedforward neural network in the first model to obtain a second feature vector corresponding to the encoded feature data; and determining the position prediction result based on the second feature vector.

[0069] Furthermore, the encoded feature data is processed by the attention mechanism in the first model to obtain a first feature vector corresponding to the encoded feature data, including: determining a query vector, a key vector and a value vector corresponding to the encoded feature data, and determining a first attention weight corresponding to the self-attention mechanism in the first model based on the query vector and the key vector; determining a third feature vector corresponding to the encoded feature data based on the first attention weight and the value vector; processing the third feature vector through the multi-head attention mechanism in the first model to obtain a second attention weight corresponding to each attention head in the multi-head attention mechanism; and determining the first feature vector based on the second attention weight.

[0070] The stage of feature extraction of trajectory feature data through the Transformer model can include position encoding, self-attention mechanism, multi-head attention mechanism and feedforward neural network processing. The specific steps are as follows:

[0071] 1. Position encoding:

[0072] The trajectory feature data is divided into odd positions and even positions, where the odd positions are cosine encoded and the even positions are sine encoded to obtain the encoded feature data:

[0073]

[0074] Among them, PE(p os ,2i) represents an even-numbered code value; PE(p os ,2i+1) represents an odd-numbered encoding value; p os represents the position of the element in the trajectory feature data; i represents the dimension of the element in the trajectory feature data, d model The dimension representing the position also represents the hidden state value of the model; sin represents the sine function, which is used for position encoding of even dimensions; cos represents the cosine function, which is used for position encoding of odd dimensions.

[0075] Through the above position encoding, the position information of each element in the trajectory feature data can be provided to the Transformer model, so that the model can understand the order or position relationship of the elements.

[0076] 2. Constructing the self-attention mechanism Attention(Q, K, V):

[0077] 1. Determine the query vector Q, key vector K and value vector V corresponding to the encoded feature data, and calculate the similarity between the query vector Q and the key vector K;

[0078] 2. Use the Softmax function to normalize the similarity between the query vector Q and the key vector K to obtain the first attention weight corresponding to the self-attention mechanism;

[0079] 3. Perform weighted summation based on the first attention weight and value vector V to obtain the feature vector corresponding to the above-mentioned encoded data, that is, the above-mentioned third feature vector.

[0080] It should be noted that since dirty data will inevitably exist in the data, which will cause errors in the prediction model, the accurate data n can be judged from the trajectory feature data. tru And the total data N all The proportion of is used as the coefficient dot product model output to correct data deviation, and then normalized. The specific formula is as follows:

[0081]

[0082] In the formula, f(Q,K i ) represents the dot product function, which is used to calculate the similarity between the query vector Q and the key vector K; n tru Indicates the number of accurate data points in the trajectory feature data; N all represents the total number of data points; softmax represents the normalization function, which is used to normalize the first attention weight; exp represents the exponential function, which is used to calculate the exponent of the first attention weight; V i represents the value vector, which is multiplied by the first attention weight to generate the weighted output; m represents the number of elements in the key vector and the value vector.

[0083] 3. Constructing a multi-head attention mechanism MultiHead(Q, K, V):

[0084] Divide Q, K, and V in the third eigenvector into multiple heads through different linear transformations; calculate the attention weight of each head in the multi-head attention mechanism, that is, the second attention weight; concatenate the second attention weights of all heads to obtain the eigenvector corresponding to the encoded feature data, that is, the first eigenvector. The specific formula is as follows:

[0085] MultiHead(Q,K,V)=Concat(head1,…,head h )W O

[0086] head i =Attention(QW i Q ,KW i K ,VW i V )

[0087] In the formula, head i represents the i-th head in the multi-head attention, each head learns different aspects of the trajectory data; QW i Q , KW i K 、VW i V Represents the weight matrices of the query, key, and value corresponding to each header; Concat represents the operation of concatenating multiple vectors into a long vector; W O Represents a weight matrix for a linear transformation.

[0088] 4. Feedforward Neural Network:

[0089] Using a feedforward neural network for self-learning, the second feature vector after being processed by the multi-head attention mechanism will enter a fully connected feedforward neural network, which contains two linear transformations and a ReLU activation function. Its output function is expressed as:

[0090] FFN(x)=max(0,xW1+b1)W2+b2

[0091] Where FFN(x) represents a feedforward neural network; W1 and W2 represent the weight matrices of the first and second layers in the feedforward neural network, respectively; b1 and b2 represent the bias terms of the first and second layers in the feedforward neural network, respectively; max(0,x) represents the ReLU activation function, which is used to set all negative values ​​to 0 and keep positive values ​​unchanged.

[0092] 5. Location prediction results:

[0093] The feature vector finally output by the Transformer model represents the location prediction result corresponding to the trajectory feature data of the above user:

[0094]

[0095] In the formula, Represents the Transformer model's position prediction vector for the next time period; Represents the set of historical position vectors considered by the Transformer model at the current time step.

[0096] In the above step S206, the second model is determined in the following manner: obtaining the historical location data and historical location prediction results of the target object; constructing an initial regression model, and determining the objective function of the initial regression model, wherein the objective function includes a mean function and a covariance function for processing the historical location data and the historical location prediction results; determining the normal distribution of the historical location data and the historical location prediction results based on the objective function; adjusting the hyperparameters of the initial regression model based on the normal distribution to obtain the second model.

[0097] Furthermore, the normal distribution of the historical position data and the historical position prediction results is determined based on the objective function, including: determining a first normal distribution corresponding to the historical position data based on the objective function; determining the joint density of the historical position data and the historical position prediction results, wherein the joint density is used to represent the joint probability distribution between the historical position data and the historical position prediction results; and determining a second normal distribution corresponding to the historical position prediction results based on the first normal distribution and the joint density.

[0098] In the embodiment of the present application, the position prediction results of the above Transformer model can be optimized by Gaussian regression algorithm and GPR algorithm to improve the accuracy of position prediction. Among them, the optimization stage can include processes such as defining Gaussian process, building regression model, calculating joint density, optimizing model hyperparameters and predictive calculation. The specific model training process can be as follows:

[0099] 1. Define Gaussian process:

[0100] The Gaussian process (GP) is determined by the mean function and the covariance function (i.e., the above-mentioned objective function) to describe the function distribution, wherein the mean function and the covariance function are used to process the user's historical location data and historical location prediction results to determine the normal distribution of the historical location data and historical location prediction results. The details are as follows:

[0101]

[0102] Therefore, GP can be defined as:

[0103] g(x)~GP(m(x),k(x,x ′ ))

[0104] Among them, x, x ′ is an arbitrary variable; GP represents Gaussian process; m(x) represents mean function; k(x,x ′ ) represents the covariance function; g(x) represents the prediction function; E represents the expected value operator, which is used to calculate the expected value of a random variable.

[0105] 2. Determine the normal distribution:

[0106] The normal distribution of historical position data and historical position prediction results can be determined by the objective function as follows:

[0107] 1. Determine the first normal distribution:

[0108] t=g(x)+ε

[0109] Among them, t represents the historical trajectory feature data; g(x) represents the prediction function; ε represents the noise term, which follows the normal distribution with a mean of 0. in, represents the noise variance;

[0110] y represents the historical position data, which follows the normal distribution That is, the first normal distribution mentioned above, where K(X,X) represents the covariance matrix, I n Represents the identity matrix.

[0111] 2. Determine the joint density:

[0112] Calculate historical position data y and historical prediction results g * The joint density is:

[0113]

[0114] Where K(X,X)=k ij , represents the n*n order symmetric positive definite covariance matrix, the matrix element k ij To measure x i With x j The correlation between K(X,x * )=K(x * ,X) T , represents the test point x * The n×1 order covariance matrix between the input X of the training set; k(x * ,x * ) is the test point x * Its own covariance; I n is the n-dimensional identity matrix.

[0115] 3. Determine the second normal distribution

[0116] From the above first normal distribution and joint density, we can know that the historical position prediction result g * The corresponding second normal distribution is as follows:

[0117]

[0118] Among them, cov(g * ) represents the covariance of historical forecast results, that is, the uncertainty or variance of historical forecast results.

[0119] 3. Model hyperparameter optimization:

[0120] During the entire training process, the kernel function is squared exponential covariance, and the hyperparameter set is obtained by the maximum likelihood method. is a hyperparameter, where I is the variance scale, is the signal variance, then the covariance function k(x,x ′ ):

[0121]

[0122] By taking the derivative of the hyperparameter M and minimizing the partial derivative using the conjugate gradient method, we can get the optimal solution of the hyperparameter. By bringing it into the regression model, we can get the g corresponding to the input parameter test point (trajectory feature data point) X. * Predicted value.

[0123]

[0124] Where L(M) represents the log-likelihood function, which is used to evaluate the quality of the hyperparameter set M; C represents the covariance matrix; n represents the number of trajectory feature data points; log 2π represents the constant term in the log-likelihood function, which is related to the log probability density function of the normal distribution.

[0125] For example: Using the above GPR algorithm to predict the user's location Adjust and correct, using longitude and latitude as the selected variables {(x1, t1), (x2, t2)......(x n ,t n ) as the input vector and data vector, and input the new feature vector x n+1 The feature vector t is obtained through the Gaussian process regression process n+1 , readjust the noise effect, after calculation, the kernel function is The positive sample value and the predicted value fitting curve are obtained. Finally, the output data corrected by the GPR algorithm is associated with the group GIS map to determine the user's specific location information, that is, the above-mentioned target location.

[0126] In the embodiment of the present application, based on multiple data sources such as DPI, MR, and XDR, the prediction accuracy and speed of user location are significantly improved through the powerful feature extraction capability and parallel processing efficiency of the Transformer model and the iterative optimization of the Gaussian regression algorithm GPR. In this process, not only the delay of information push is reduced, the response speed and perceived quality of user applications are improved, but also large-scale real-time data needs are supported through the big data processing framework, providing strong data support and real-time travel strategies for related business services, tourism promotion, and citizen travel, and enhancing the practicality of 5G cloud messaging services.

[0127] According to an embodiment of the present application, a device for determining a user location is provided. It should be noted that the device for determining a user location in the embodiment of the present application can be used to execute the method for determining a user location provided in the embodiment of the present application. The device for determining a user location provided in the embodiment of the present application is introduced below.

[0128] Figure 3 is a structural diagram of a device for determining a user location according to an embodiment of the present application. Figure 3 As shown, the device comprises:

[0129] The acquisition module 30 is used to acquire the network usage data of the target object, and determine the trajectory feature data corresponding to the target object according to the network usage data, wherein the network usage data includes at least one of the following: deep packet inspection data, measurement report data and detailed list data generated by the target object when using the network, and the trajectory feature data is used to represent the feature data generated by the target object during the movement of the position;

[0130] A first processing module 32 is used to process the trajectory feature data through a first model to obtain a position prediction result of the target object, wherein the first model is used to extract features from the trajectory feature data and generate preliminary position prediction information;

[0131] The second processing module 34 is used to process the position prediction result through the second model to obtain the target position of the target object, wherein the second model optimizes the position prediction result by optimizing the model hyperparameters.

[0132] Through the acquisition module 30, the first processing module 32 and the second processing module 34 in the above-mentioned user location determination device, the purpose of real-time and accurate prediction of the user location is achieved, thereby realizing the technical effect of improving the accuracy of location services and user experience, and further solving the technical problem of being unable to locate the user location in real time due to data delays, data omissions, etc. in related technologies.

[0133] In the device for determining the user location provided in an embodiment of the present application, the acquisition module is also used to determine a first configuration parameter and a second configuration parameter when processing network usage data; determine a first resource usage rate of the network usage data under the first configuration parameter, and determine a second resource usage rate of the network usage data under the second configuration parameter, wherein the first resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the first configuration parameter, and the second resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the second configuration parameter; determine a target configuration parameter based on the first resource usage rate and the second resource usage rate, wherein the target configuration parameter is a configuration parameter with optimal resource usage of the network usage data under the first configuration parameter and the second configuration parameter.

[0134] In the user location determination device provided in the embodiment of the present application, the acquisition module is also used to determine the first characteristic data containing geographic location information in the network usage data, wherein the geographic location information includes at least the latitude and longitude information and the cell location code of the target object; determine the second characteristic data containing signal characteristic information in the network usage data, wherein the signal characteristic information includes at least the device information of the user device used by the target object, the signal strength and signal quality received by the user device; establish a positioning database based on the first characteristic data and the second characteristic data, wherein the geographic location information and the signal characteristic information in the positioning database correspond one to one.

[0135] In the user location determination device provided in an embodiment of the present application, the first processing module is also used to perform position encoding on the trajectory feature data to obtain encoded feature data; the encoded feature data is processed by the attention mechanism in the first model to obtain a first feature vector corresponding to the encoded feature data; the first feature vector is processed by the feedforward neural network in the first model to obtain a second feature vector corresponding to the encoded feature data; and the position prediction result is determined based on the second feature vector.

[0136] In the user location determination device provided in an embodiment of the present application, the first processing module is also used to determine the query vector, key vector and value vector corresponding to the encoded feature data, and determine the first attention weight corresponding to the self-attention mechanism in the first model based on the query vector and the key vector; determine the third feature vector corresponding to the encoded feature data based on the first attention weight and the value vector; process the third feature vector through the multi-head attention mechanism in the first model to obtain the second attention weight corresponding to each attention head in the multi-head attention mechanism; and determine the first feature vector based on the second attention weight.

[0137] In the user location determination device provided in an embodiment of the present application, the second processing module is also used to obtain the historical location data and historical location prediction results of the target object; construct an initial regression model, and determine the objective function of the initial regression model, wherein the objective function includes a mean function and a covariance function for processing the historical location data and the historical location prediction results; determine the normal distribution of the historical location data and the historical location prediction results based on the objective function; adjust the hyperparameters of the initial regression model based on the normal distribution to obtain a second model.

[0138] In the user location determination device provided in an embodiment of the present application, the second processing module is also used to determine a first normal distribution corresponding to the historical location data based on the objective function; determine the joint density of the historical location data and the historical location prediction results, wherein the joint density is used to represent the joint probability distribution between the historical location data and the historical location prediction results; and determine a second normal distribution corresponding to the historical location prediction results based on the first normal distribution and the joint density.

[0139] An embodiment of the present application also provides an electronic device, including: a memory and a processor, wherein the memory is used to store program instructions; the processor is connected to the memory and is used to execute the method for determining the user location.

[0140] It should be noted that the above electronic equipment is used to execute Figure 2 The method for determining the user location is shown, so the relevant explanations in the above method for determining the user location are also applicable to the electronic device and will not be repeated here.

[0141] An embodiment of the present application also provides a non-volatile storage medium, which includes a stored computer program, wherein the device where the non-volatile storage medium is located executes the above-mentioned method for determining the user location by running the computer program.

[0142] It should be noted that the above non-volatile storage medium is used to execute Figure 2 The method for determining the user location is shown in the figure, so the relevant explanations in the above method for determining the user location are also applicable to the non-volatile storage medium and will not be repeated here.

[0143] An embodiment of the present application also provides a computer program product, including computer instructions, which implement the above-mentioned method for determining the user location when executed by a processor.

[0144] It should be noted that the above-mentioned computer program product is used to execute Figure 2 The method for determining the user location is shown in the figure, so the relevant explanations in the above method for determining the user location are also applicable to the computer program product and will not be repeated here.

[0145] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0146] In the above embodiments of the present application, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.

[0147] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0148] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0149] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0150] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk and other media that can store program codes.

[0151] The above is only a preferred implementation of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.

Claims

1. A method for determining a user location, characterized in that: include: Acquire network usage data of the target object, and determine trajectory feature data corresponding to the target object based on the network usage data, wherein the network usage data includes at least one of the following: deep packet inspection data, measurement report data, and detailed list data generated by the target object when using the network, and the trajectory feature data is used to represent feature data generated by the target object during the movement of the position; Processing the trajectory feature data through a first model to obtain a position prediction result of the target object, wherein the first model is used to extract features from the trajectory feature data and generate preliminary position prediction information; The position prediction result is processed by a second model to obtain a target position of the target object, wherein the second model optimizes the position prediction result by optimizing model hyperparameters.

2. The method according to claim 1, characterized in that After obtaining the network usage data of the target object, the method further includes: determining a first configuration parameter and a second configuration parameter when processing the network usage data; Determine a first resource usage rate of the network usage data under the first configuration parameters, and determine a second resource usage rate of the network usage data under the second configuration parameters, wherein the first resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the first configuration parameters, and the second resource usage rate at least includes a memory usage rate and a CPU usage rate of the network usage data under the second configuration parameters; A target configuration parameter is determined according to the first resource utilization rate and the second resource utilization rate, wherein the target configuration parameter is a configuration parameter with optimal resource utilization rate of the network usage data under the first configuration parameter and the second configuration parameter.

3. The method according to claim 1, characterized in that After obtaining the network usage data of the target object, the method further includes: Determine first feature data containing geographic location information in the network usage data, wherein the geographic location information at least includes latitude and longitude information and a cell location code of the target object; Determine second characteristic data including signal characteristic information in the network usage data, wherein the signal characteristic information at least includes device information of a user device used by the target object, and signal strength and signal quality received by the user device; A positioning database is established based on the first characteristic data and the second characteristic data, wherein the geographical location information and the signal characteristic information in the positioning database correspond one to one.

4. The method according to claim 1, characterized in that Processing the trajectory feature data by a first model to obtain a position prediction result of the target object includes: Position encoding is performed on the trajectory feature data to obtain encoded feature data; Processing the encoded feature data through the attention mechanism in the first model to obtain a first feature vector corresponding to the encoded feature data; Processing the first feature vector by a feedforward neural network in the first model to obtain a second feature vector corresponding to the encoded feature data; The position prediction result is determined according to the second feature vector.

5. The method according to claim 4, characterized in that Processing the encoded feature data through the attention mechanism in the first model to obtain a first feature vector corresponding to the encoded feature data includes: Determine a query vector, a key vector, and a value vector corresponding to the encoded feature data, and determine a first attention weight corresponding to a self-attention mechanism in the first model according to the query vector and the key vector; Determining a third feature vector corresponding to the encoded feature data according to the first attention weight and the value vector; Processing the third eigenvector by the multi-head attention mechanism in the first model to obtain a second attention weight corresponding to each attention head in the multi-head attention mechanism; The first feature vector is determined according to the second attention weight.

6. The method according to claim 1, characterized in that The second model is determined by: Obtaining historical location data and historical location prediction results of the target object; Constructing an initial regression model and determining an objective function of the initial regression model, wherein the objective function includes a mean function and a covariance function for processing the historical position data and the historical position prediction results; Determining the normal distribution of the historical position data and the historical position prediction results according to the objective function; The hyperparameters of the initial regression model are adjusted according to the normal distribution to obtain the second model.

7. The method according to claim 6, characterized in that Determining the normal distribution of the historical position data and the historical position prediction result according to the objective function includes: Determining a first normal distribution corresponding to the historical position data according to the objective function; Determining a joint density of the historical location data and the historical location prediction result, wherein the joint density is used to represent a joint probability distribution between the historical location data and the historical location prediction result; A second normal distribution corresponding to the historical position prediction result is determined based on the first normal distribution and the joint density.

8. A device for determining a user's location, characterized in that: include: an acquisition module, configured to acquire network usage data of a target object, and determine trajectory feature data corresponding to the target object based on the network usage data, wherein the network usage data includes at least one of the following: deep packet inspection data, measurement report data, and detailed list data generated when the target object uses the network, and the trajectory feature data is used to represent feature data generated by the target object during the process of position movement; A first processing module, used to process the trajectory feature data through a first model to obtain a position prediction result of the target object, wherein the first model is used to extract features from the trajectory feature data and generate preliminary position prediction information; The second processing module is used to process the position prediction result through a second model to obtain the target position of the target object, wherein the second model optimizes the position prediction result by optimizing model hyperparameters.

9. An electronic device, characterized in that: include: A memory and a processor, wherein the memory is used to store program instructions; The processor is connected to the memory and is used to execute the method for determining the user location as described in any one of claims 1 to 7.

10. A non-volatile storage medium, characterized in that: The non-volatile storage medium includes a stored computer program, wherein the device where the non-volatile storage medium is located executes the method for determining the user location as described in any one of claims 1 to 7 by running the computer program.

11. A computer program product comprising computer instructions, characterized in that: When the computer instructions are executed by a processor, the method for determining the user location described in any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Gathering abnormity detection method for single sensor data flow

    CN103345593A

  • LTE network coverage analysis and prediction methods, and system

    CN108307427A

  • Personnel trajectory tracking method and system

    CN113674325A

  • Driver group identification method and system based on Internet phone bill and MR user track

    CN114363405A

  • Motion track prediction method and device, model training method and device, equipment and medium

    CN117874529A

Cited By

  • Intelligent prediction method and device for cloud and rain meteorological parameters

    CN120875146A