Destination prediction method and device, electronic equipment and storage medium
By obtaining and correcting user location data, the problem of user location data accuracy is solved, the accuracy and response speed of destination prediction are improved, and it is suitable for new users.
Patent Information
- Application Number
- CN202411371499.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-27
- Publication Date
- 2025-01-14
AI Technical Summary
User location data is subject to accuracy due to factors such as communication delay and sensor error, resulting in inaccurate prediction of destinations.
By acquiring the environment information of the target user and the surrounding location data in the historical location data of the first user group, the user location data of the target user is corrected, and its accuracy is improved, and the destination to be recommended is determined based on the modified location data.
Improve the accuracy of user location data, avoid destination prediction errors, enhance service response speed, and be suitable for new users without their own historical data.
Smart Images

Figure CN119311968A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, in particular to the field of data processing, and specifically to a destination prediction method, device, electronic device, computer-readable storage medium, and computer program product. Background Art
[0002] Currently, it is expected to predict the user's upcoming destination based on the user's current location data, so as to recommend information to the user based on the destination. However, the user's location data may have accuracy problems caused by factors such as communication delays and sensor errors, resulting in inaccurate destination prediction.
[0003] The methods described in this section are not necessarily methods that have been previously conceived or employed. Unless otherwise indicated, it should not be assumed that any method described in this section is considered to be prior art simply because it is included in this section. Similarly, unless otherwise indicated, the issues mentioned in this section should not be considered to have been recognized in any prior art. Summary of the invention
[0004] The present disclosure provides a destination prediction method, apparatus, electronic device, computer-readable storage medium, and computer program product.
[0005] According to one aspect of the present disclosure, a destination prediction method is provided, comprising: obtaining environmental information of a target user, the environmental information including user location data of the target user; obtaining multiple peripheral location data from historical location data of a first user group, wherein a difference between any peripheral location data and the user location data is less than a first distance threshold; based on the multiple peripheral location data of the first user group, correcting the user location data of the target user to obtain corrected location data of the target user; and determining a destination to be recommended for the target user based on the corrected location data of the target user.
[0006] According to another aspect of the present disclosure, a destination prediction device is provided, including: an environmental information acquisition module, configured to: acquire environmental information of a target user, the environmental information including user location data of the target user; a peripheral location data acquisition module, configured to: acquire multiple peripheral location data from historical location data of a first user group, wherein the difference between any peripheral location data and the user location data is less than a first distance threshold; a location data correction module, configured to: correct the user location data of the target user based on the peripheral location data of the first user group to obtain the corrected location data of the target user; and a destination determination module, configured to: determine the target user's destination to be recommended based on the corrected location data of the target user.
[0007] According to another aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the above-mentioned destination prediction method.
[0008] According to another aspect of the present disclosure, a computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable a computer to execute the above-mentioned destination prediction method.
[0009] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, wherein the computer program implements the above-mentioned destination prediction method when executed by a processor.
[0010] In the embodiments as described in the present disclosure, the user location data of the target user is corrected based on the surrounding location data in the historical location data of the first user group, so that the accuracy of the user location data of the target user can be improved, and destination prediction errors caused by inaccurate user location data can be avoided. Moreover, even for new users who do not have their own historical data, the above-mentioned destination prediction method that can improve the accuracy of the user location data of the target user can also be applied.
[0011] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] The accompanying drawings exemplarily illustrate the embodiments and constitute a part of the specification, and together with the text description of the specification, are used to explain the exemplary implementation of the embodiments. The embodiments shown are for illustrative purposes only and do not limit the scope of the claims. In all drawings, the same reference numerals refer to similar but not necessarily identical elements.
[0013] Figure 1 A flow chart of a destination prediction method according to an embodiment of the present disclosure is shown;
[0014] Figure 2A A schematic diagram showing a process of obtaining a target user's location according to an existing method;
[0015] Figure 2B A schematic diagram showing a process of correcting the user location data of a target user based on a plurality of peripheral location data of a first user group to obtain the corrected location data of the target user according to an embodiment of the present disclosure;
[0016] Figure 3A flowchart showing a process of determining a destination to be recommended for a target user based on the corrected location data of the target user according to an embodiment of the present disclosure;
[0017] Figure 4 A schematic diagram showing a process of applying a destination prediction method according to an embodiment of the present disclosure;
[0018] Figure 5 A structural block diagram of a destination prediction device according to an exemplary embodiment of the present disclosure is shown; and
[0019] Figure 6 A block diagram of an electronic device according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0020] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted in the following description.
[0021] In the present disclosure, unless otherwise specified, the use of the terms "first", "second", etc. to describe various elements is not intended to limit the positional data relationship, timing relationship, or importance relationship of these elements, and such terms are only used to distinguish one element from another element. In some examples, the first element and the second element may refer to the same instance of the element, and in some cases, based on the context of the description, they may also refer to different instances.
[0022] The terms used in the description of various examples in this disclosure are only for the purpose of describing specific examples and are not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the element can be one or more. In addition, the term "and / or" used in this disclosure covers any one of the listed items and all possible combinations.
[0023] As mentioned above, in current destination prediction, factors such as communication delays and sensor errors may cause accuracy issues with user location data, resulting in inaccurate destination predictions.
[0024] To solve the above problems, the present disclosure provides a destination prediction method, including: obtaining environmental information of a target user, the environmental information including user location data of the target user; obtaining multiple peripheral location data in the historical location data of a first user group, wherein the difference between any peripheral location data and the user location data is less than a first distance threshold; based on the multiple peripheral location data of the first user group, correcting the user location data of the target user to obtain the corrected location data of the target user; and determining the target user's destination to be recommended based on the corrected location data of the target user. In the embodiment described in the present disclosure, correcting the user location data of the target user based on the multiple peripheral location data in the historical location data of the first user group can improve the accuracy of the user location data of the target user, avoid destination prediction errors caused by inaccurate user location data, and avoid response delays caused by unsatisfactory accuracy, thereby improving the response speed of services based on destination prediction; and even for new users who do not have their own historical data, the above-mentioned destination prediction method that can improve the accuracy of the user location data of the target user can be applied.
[0025] Figure 1 FIG. 1 is a flowchart of a destination prediction method 100 according to an embodiment of the present disclosure. Figure 1 As shown, the destination prediction method 100 may include the following steps:
[0026] Step S110: Acquire the target user's environmental information, where the environmental information includes the target user's user location data;
[0027] Step S120: Acquire multiple peripheral location data in the historical location data of the first user group, wherein the difference between any peripheral location data and the user location data is less than a first distance threshold;
[0028] Step S130, based on the plurality of peripheral location data of the first user group, correct the user location data of the target user to obtain corrected location data of the target user; and
[0029] Step S140: Determine a destination to be recommended for the target user based on the corrected location data of the target user.
[0030] According to some embodiments, obtaining the target user's environmental information includes receiving environmental information from a user terminal (e.g., a mobile device used by the user). According to some embodiments, the environmental information of the user terminal may be information collected by an environmental information collection device of the user terminal, for example, user location data collected by a positioning sensor of the user terminal (e.g., a Global Positioning System (GPS) sensor).
[0031] According to some embodiments, the first user group may be a group consisting of all users in the history database. According to other embodiments, the first user group may be a group of users whose region is the same as the region to which the user location data of the target user belongs, for example, when the user location data of the target user is located in the region "A City B District", users whose region is "A City B District" are filtered.
[0032] According to some embodiments, the destination to be recommended is a destination recommended or suggested to the target user determined by the method described in the present disclosure (eg, method 100 ), and the number of the destination to be recommended can be flexibly determined according to actual conditions.
[0033] According to some embodiments, obtaining peripheral location data in historical location data of a first user group includes: in response to satisfying a preset geographical condition, obtaining multiple peripheral location data in the historical location data, any peripheral location data having a difference with the user location data that is less than a first distance threshold, and the accuracy of any peripheral location data meets a predetermined accuracy requirement, wherein the first distance threshold is determined based on the predetermined accuracy.
[0034] According to some embodiments, the preset geographical condition includes that the accuracy of the user location data of the target user does not meet a predetermined accuracy requirement.
[0035] It should be understood that the preset geographical conditions may also include other types of conditions. According to some embodiments, the preset geographical conditions also include: the distance between the target user and any consumer entity in a group of consumer entities is less than a preset threshold. According to some embodiments, the consumer entity for the above distance comparison may be a consumer entity within the geographical area where the target user is located. According to some embodiments, the preset threshold may be set according to actual conditions, for example, the third distance threshold further described below.
[0036] In an embodiment of the present disclosure, when the accuracy of the user location data does not meet the accuracy requirements, historical location data that meets the accuracy requirements near the user location data is obtained, thereby helping to improve the accuracy of the user location data (for example, completing the missing bits of accuracy in the user location data).
[0037] According to some embodiments, the first distance threshold is less than or equal to the error range value corresponding to the predetermined accuracy requirement. For example, when the predetermined accuracy requirement obtained requires the accuracy of the user location data to reach five decimal places, if the obtained user location data is data that only includes three decimal places (for example, the longitude 31.193 of the user location data), then the first distance threshold is 0.00001, and all data whose difference with the user location data is less than or equal to 0.00001 and includes five decimal places are obtained (for example, all historical location data in the format of "31.193XY..." are obtained, where X is the fourth digit of the historical location data, Y is the fifth digit of the historical location data, and the ellipsis indicates that the historical location data can also be of higher accuracy, that is, data containing more digits after the decimal point).
[0038] According to some embodiments, since the accuracy error of the user location data mainly lies in the lower digits (for example, as described above, the user location data is missing the fourth and fifth decimal places), only the part of the historical location data corresponding to the accuracy error of the user location data can be extracted for correcting the user location data, thereby reducing the amount of calculation in the correction step.
[0039] According to some embodiments, when the user location data includes sub-data corresponding to one or more dimensions, the predetermined accuracy requirement may include sub-accuracy requirements corresponding to the sub-data of each dimension. For example, when the user location data includes longitude sub-data and latitude sub-data, the predetermined accuracy requirement may include different requirements for the number of decimal places for the longitude sub-data and the latitude sub-data.
[0040] According to some embodiments, when the user location data includes sub-data corresponding to one or more dimensions, for the sub-data that does not meet the corresponding predetermined sub-precision requirements, multiple peripheral location data in the historical location data of the first user group are obtained for subsequent correction steps, wherein the difference between any peripheral location data and the sub-data is less than the first distance threshold and meets the sub-predetermined precision requirements.
[0041] According to some embodiments, based on multiple peripheral location data of the first user group, the user location data of the target user is corrected to obtain the corrected location data of the target user, including: fitting the multiple peripheral location data of the first user group to obtain the probability distribution of the multiple peripheral location data; and generating the corrected location data of the target user based on the probability distribution of the multiple peripheral location data. In the embodiment of the present disclosure, by fitting the probability distribution of the multiple peripheral location data, the geographical distribution of the user location data of the target user in the history of the user group is obtained to accurately determine the corrected location data of the target user.
[0042] According to some embodiments, multiple peripheral location data of the first user group may be fitted according to one or more distribution functions. According to some embodiments, when fitting is performed according to multiple distribution functions, the multiple distribution functions are distribution functions of the same type but with different coefficients, for example, the multiple distribution functions are all Gamma probability functions.
[0043] According to some embodiments, in the case where the portion of the historical location data corresponding to the user location data having an accuracy error is extracted as described above for use in correcting the user location data, a distribution fitting is performed on the portion of the historical location data corresponding to the user location data having an accuracy error to obtain a corrected portion of the user location data, and the user location data is corrected based on the corrected portion. For example, in the example in which the user location data is missing the fourth and fifth decimal places as described above, the portion of the fourth and fifth decimal places of the historical location data can be extracted, and the extracted portion can be fitted to obtain the portion of the fourth and fifth decimal places used to complete the user location data. For example, the user location data is longitude 31.193, and the portion corresponding to the fourth and fifth decimal places obtained by fitting is "67", then the corrected user location data is an accuracy of 31.19367.
[0044] According to some embodiments, fitting multiple peripheral location data of the first user group to obtain a probability distribution of the multiple peripheral location data includes: fitting multiple peripheral location data of the first user group based on an expectation-maximization (EM) algorithm to obtain a probability distribution of the multiple peripheral location data.
[0045] According to some embodiments, fitting multiple peripheral location data of the first user group based on the EM algorithm to obtain a probability distribution of the multiple peripheral location data includes:
[0046] 1) Initialization step: setting specific parameters for multiple probability distributions to be fitted (e.g., shape parameter and scale parameter in gamma probability distribution, mean and standard deviation in Gaussian probability distribution) and the proportion of different probability distributions;
[0047] 2) E step (Expectation step): Calculate the posterior probability of the current latent variable, that is, the probability that each fitting data (that is, each surrounding position data itself or the corresponding part extracted from each surrounding position data as described above) belongs to each probability distribution given the current parameters;
[0048] 3) M step (Maximization step): Use the E step to calculate the posterior probability of the latent variable and maximize the log-likelihood function to update the parameters of each probability distribution;
[0049] 4) Iterate step E to step M repeatedly until the parameters of the probability distribution converge. At this time, the distribution fitting is considered to be completed, that is, the probability distribution of the plurality of peripheral location data of the first user group is obtained.
[0050] According to some embodiments, the probability distribution used by the expectation maximization algorithm includes a Gamma probability distribution and / or a Gaussian probability distribution. According to other embodiments, the probability distribution used by the expectation maximization algorithm includes other applicable probability distributions.
[0051] According to some embodiments, the probability function of the probability distribution used may be a probability function corresponding to a single probability distribution. For example, the probability function of the probability distribution may be a mixed Gamma distribution, that is, Among them, π k It represents the proportion of the kth Gamma density function in the entire mixed distribution, with an interval of [0,1]. Gamma probability density function Where α is the shape parameter and β is the scale parameter.
[0052] According to some other embodiments, the probability function of the probability distribution used may be a mixed function composed of probability functions corresponding to multiple probability distributions. For example, the probability function of the probability distribution may be a mixture of the probability function of the Gamma distribution and the probability function of the Gaussian distribution, that is, Among them, π k It represents the proportion of the kth Gamma density function in the entire mixed distribution, with an interval of [0,1), and the probability function of the Gamma probability distribution Where α is the shape parameter, β is the scale parameter, and the probability function of the Gaussian probability distribution is μ is the mean and σ is the standard deviation.
[0053] According to some embodiments, generating the corrected location data of the target user based on the probability distribution of the surrounding location data includes: randomly generating the corrected location data of the target user based on the probability distribution of multiple surrounding location data. In the embodiments as described in the present disclosure, since the corrected location data of the target user is randomly generated based on the probability distribution of multiple surrounding location data, the randomness and rationality of the corrected location data are guaranteed, and the deviation caused by relatively fixed correction rules such as averaging historical location data is avoided.
[0054] Figure 2AA schematic diagram of a process 200 of obtaining the location of a target user according to an existing method is shown, wherein locations 201 to 206 are multiple peripheral locations of a first user group, and location 210 is the location of the target user.
[0055] According to some embodiments, Figure 2A As shown, the existing method averages the location data corresponding to the plurality of peripheral locations 201-206 of the first user group to obtain the location 210 of the target user. Figure 2A As shown, since the plurality of peripheral locations 201-206 of the first user group may be two relatively concentrated groups of locations (eg, locations 201-204 and locations 205-206), the obtained location 210 of the target user may ignore the actual geographic location information and be located between the two relatively concentrated groups of locations.
[0056] Figure 2B A schematic diagram of a process 200 of correcting the user location data of a target user based on a plurality of surrounding location data of a first user group to obtain the corrected location data of the target user according to an embodiment of the present disclosure is shown, wherein Figure 2A Similarly, positions 201-206 are multiple peripheral positions of the first user group, and position 210 is the corrected position of the target user. Figure 2B As shown, in the process of obtaining the corrected location data of the target user by correcting the user location data of the target user based on the multiple peripheral location data of the first user group according to the embodiment of the present disclosure, since the geographical location is determined by the distribution constructed by the historical data within the range of the multiple peripheral location data of the first user group, the finally obtained corrected location 210 of the target user has the actual geographical location meaning and conforms to the actual data distribution (for example, Figure 2B As shown, within the corresponding geographical range of a group of data 201-204 with a larger amount of data among multiple peripheral locations of the first user group).
[0057] According to some embodiments, the environmental information also includes time data, and based on the corrected location data of the target user, determining the target user's destination to be recommended includes: determining the target user's estimated trajectory information based on the target user's corrected location data and time data; obtaining one or more surrounding entities of the target user, wherein the difference between the location data of the surrounding entities and the location data of the target user is less than a second distance threshold, or the one or more surrounding entities are a predetermined number of consumer entities in a group of consumer entities that are geographically closest to the target user; and determining the target user's destination to be recommended from the target user's surrounding entities based on the target user's estimated trajectory information.
[0058] Figure 3FIG. 1 is a flowchart showing a process of determining a target user's destination to be recommended based on the target user's corrected location data according to an embodiment of the present disclosure. Figure 3 As shown, step S140 includes:
[0059] Step S301: determining estimated trajectory information of the target user based on the corrected position data and time data of the target user;
[0060] Step S302: acquiring one or more surrounding entities of the target user, wherein the distance between the surrounding entity and the target user is less than a second distance threshold, or the one or more surrounding entities are a predetermined number of consumer entities that are geographically closest to the target user in a group of consumer entities; and
[0061] Step S303: Based on the estimated trajectory information of the target user, determine the target user's destination to be recommended from the target user's surrounding entities.
[0062] According to some embodiments, the distance between the surrounding entity and the target user may be determined based on the location of the surrounding entity and the user location data and / or the corrected location data of the target user.
[0063] According to some embodiments, the time data of the target user may be time data received from the user terminal of the target user (e.g., the mobile device of the target user). For example, when the user location data of the target user is obtained, the corresponding time is also obtained as the time data. According to other embodiments, the time data of the target user may be time period information obtained based on the time data received from the user terminal of the target user, for example, the consumption time period (e.g., breakfast, lunch, afternoon tea, dinner, supper, etc.), weekday information (e.g., Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday), workday / holiday information, etc.
[0064] According to some embodiments, the estimated trajectory information of the target user includes the target user's moving direction, for example, determining the moving direction of the target user to be one of east, south, west, north, southeast, northeast, northwest and southwest.
[0065] According to some embodiments, based on the corrected location data and time data of the target user, determining the estimated trajectory information of the target user includes: based on the corrected location data and time data of the target user, using a trajectory estimation model to obtain the estimated trajectory information of the target user, wherein the trajectory estimation model is trained based on user sample data of the second user group, wherein the user sample data is the order address, the address of the ordered consumer entity, and time data when the distance between the user in the second user group and any consumer entity in a group of consumer entities is less than a third distance threshold (e.g., 1 km). In the embodiments as described in the present disclosure, the trajectory estimation model is trained with the historical data of the user group, so that the trajectory information of the target user can be accurately estimated based on the corrected location data and time data of the target user.
[0066] According to some embodiments, the distance between the users in the second user group and any consumer entity in the group of consumer entities is determined based on the data of the user's order location and the location data of any consumer entity. According to some embodiments, the trajectory information of the users in the second user group is determined based on the order address of the users in the second user group and the address of the consumer entity that placed the order, so as to be used for training the trajectory prediction model.
[0067] According to some embodiments, the second user group may be the same user group as the first user group, or may be a user group with a larger scope than the first user group.
[0068] According to some embodiments, a group of consumer entities refers to a plurality of geographical entities from which a target user can purchase goods or services, and a peripheral entity is a consumer entity in the group of consumer entities that is closer to the location of the target user. According to some embodiments, the group of consumer entities from which the peripheral entities are selected may be consumer entities of the same chain brand, or may be consumer entities that provide similar goods or services.
[0069] According to some embodiments, the preset geographical condition further includes: the distance between the target user and any consumer entity in a group of consumer entities is less than a third distance threshold (e.g., 1 km), that is, the above steps of correcting the user location data and subsequent destination prediction are initiated only when the target user is close to at least one consumer entity. According to some embodiments, the third distance threshold may be a value set according to actual conditions.
[0070] According to some embodiments, based on the estimated trajectory information of the target user, determining the target user's destination to be recommended from the target user's surrounding entities includes: based on the target user's environmental information, obtaining the target user's context information, the context information including the target user's area information, the area information indicating the type of area to which the target user belongs; and based on the target user's estimated trajectory information, environmental information and context information, determining the target user's destination to be recommended from the target user's surrounding entities. In the embodiments as described in the present disclosure, by utilizing information of multiple dimensions of the target user's estimated trajectory information, environmental information and context information, the accuracy of determining the destination to be recommended is improved.
[0071] According to some embodiments, the area information indicates the type of area to which the target user belongs, for example, a school, an office building, a station, etc.
[0072] According to some embodiments, based on the target user's estimated trajectory information, environmental information and context information, determining the target user's to-be-recommended destination from the target user's surrounding entities includes: using the above-mentioned corrected location data to modify (for example, replace) the user location data in the target user's environmental information, and, based on the target user's estimated trajectory information, context information and the modified environmental information, determining the target user's to-be-recommended destination from the target user's surrounding entities.
[0073] According to other embodiments, in addition to the estimated trajectory information, environmental information and context information, the destination to be recommended may be determined based on more information, such as the historical consumption behavior of the target user and / or the waiting time of surrounding entities.
[0074] According to some embodiments, determining the target user's destination to be recommended from the target user's surrounding entities based on the target user's estimated trajectory information, environmental information, and context information includes: determining the recommendation degree of the target user's surrounding entities based on the target user's estimated trajectory information, environmental information, and context information; and determining the target user's destination to be recommended from the target user's surrounding entities based on the recommendation degree of the target user. In the embodiments as described in the present disclosure, the target user's destination to be recommended is determined by the determined recommendation degree, thereby improving the accuracy of the prediction of the destination to be recommended.
[0075] According to some embodiments, based on the recommendation degree of the target user's surrounding entities, determining the target user's destination to be recommended from the target user's surrounding entities includes: in response to the waiting time of any surrounding entity among the target user's surrounding entities satisfying a preset time condition, adjusting the recommendation degree of the surrounding entity; and determining the target user's destination to be recommended from the target user's surrounding entities based on the adjusted recommendation degree of the target user's surrounding entity. In the embodiments as described in the present disclosure, the destination to be recommended is adjusted according to the waiting time of the surrounding entity, avoiding guiding the target user to the destination to be recommended with a long waiting time, making full use of the resources of each surrounding entity, and improving the overall production efficiency.
[0076] According to other embodiments, the process of adjusting the recommendation degree according to the waiting time may not be performed, and the destination to be recommended of the target user may be determined from the surrounding entities of the target user based on the recommendation degrees of the surrounding entities that have not been adjusted.
[0077] According to some embodiments, the target copy to be pushed to the target user is determined based on the target user's destination to be recommended. For example, when the restaurant that the target user is going to dine in is determined, the advertisement copy of the popular product of the restaurant is pushed to the target user.
[0078] According to some embodiments, relevant recommendations may be made based on the destination prediction method as described in the present disclosure, so that users can accurately obtain information to improve user experience.
[0079] Figure 4 A schematic diagram of a process 400 of applying a destination prediction method according to an embodiment of the present disclosure. Figure 4 As shown, process 400 may include the following steps:
[0080] Step S401: The user opens an application, wherein the application may be an application that recommends relevant merchants or their products so that the user consumes at the relevant merchants;
[0081] Step S402: acquiring geographic location information and time information, wherein the geographic location information and / or time information may be acquired through sensors and / or network information in a device used by the user;
[0082] Step S403: performing environmental matching in the location information database 4001 according to the acquired location information and / or time information to obtain the current location information and environmental information (for example, determining whether the user is currently in a school, a station, an office building, etc.);
[0083] Step S404: obtaining time features according to the obtained geographic location information and / or time information, for example, obtaining the consumption period (for example, if the merchant is a restaurant, the current dining period), Sunday information, and holiday information;
[0084] Step S405: Based on the geographic and / or environmental information matched in step S403 and / or the time features obtained in step S404, the user's trajectory is predicted, wherein the prediction process can be as described above with reference to Figure 3 Step S301 described;
[0085] Step S406: outputting the predicted trajectory result, for example, the probability of the user moving in each possible moving direction;
[0086] Step S407: Obtain the user's historical transaction behavior, such as the user's historical dining records in various restaurants, the user's behavior of participating in merchant activities, etc.;
[0087] Step S408: Acquire location-based services (LBS) and time information, wherein the location-based services and time information include latitude and longitude and location environment information, and location context information;
[0088] Step S409: performing data integration, for example, splicing the received trajectory prediction result from step S406, the historical transaction behavior from step S407, and the LBS and time information related features from step S408, wherein the data integration may be performed once in response to, for example, a user opening an application or a user sending a request (for example, a recommendation request) using the application;
[0089] Step S410: Obtain a predetermined number of candidate merchants closest to the area where the user is located. For example, the candidate merchant acquisition process may be as follows: Figure 3 Step S302 described;
[0090] Step S411: Predicting the waiting time according to the waiting time model 4002, wherein the waiting time of the user going to the candidate merchant can be predicted according to the current status of the most recent predetermined number of candidate merchants (e.g., the current number of orders, date, consumption schedule, etc.);
[0091] Step S412: Perform model prediction based on the integrated data from step S411 and the nearest predetermined number of candidate merchants in the user's area from step S410 to generate a destination prediction result, such as generating scores for the nearest predetermined number of candidate merchants to evaluate the probability that the user may go to each of the nearest predetermined number of candidate merchants;
[0092] Step S413: adjusting the score according to the predicted waiting time obtained from step S411. For example, when the waiting time exceeds the waiting threshold, the score corresponding to the merchant is adjusted downward. For example, if the predicted score of a merchant is 0.73 and the predicted waiting time is 20 minutes, which exceeds the predetermined waiting threshold (15 minutes), the merchant's predicted score is multiplied by a depreciation weight (for example, 0.7), and the merchant's predicted score is adjusted to 0.511.
[0093] Step S414: Select the merchant with the highest score; and
[0094] Step S415: Recall the advertisements of the selected merchants to make relevant recommendations to the user.
[0095] Figure 5 FIG. 5 shows a structural block diagram of a destination prediction device 500 according to an exemplary embodiment of the present disclosure. Figure 5 As shown, the destination prediction device 500 includes:
[0096] The environment information acquisition module 501 is configured to: acquire the environment information of the target user, the environment information including the user location data of the target user;
[0097] The peripheral location data acquisition module 502 is configured to: acquire a plurality of peripheral location data from the historical location data of the first user group, wherein the difference between any peripheral location data and the user location data is less than a first distance threshold;
[0098] The location data correction module 503 is configured to: correct the user location data of the target user based on the plurality of surrounding location data of the first user group to obtain the corrected location data of the target user; and
[0099] The destination determination module 504 is configured to determine a destination to be recommended for the target user based on the corrected location data of the target user.
[0100] According to some embodiments, the preset geographical conditions include that the accuracy of the user location data of the target user does not meet the predetermined accuracy requirements, and the surrounding location data acquisition module 502 includes a surrounding location data acquisition sub-module, which is configured to: in response to meeting the preset geographical conditions, obtain multiple surrounding location data in the historical location data, the difference between any surrounding location data and the user location data is less than a first distance threshold location data, and the accuracy of any surrounding location data meets the predetermined accuracy requirements location data surrounding location data, wherein the first distance threshold of the location data user location data is determined based on the predetermined accuracy.
[0101] According to some embodiments, the location data correction module includes: a fitting submodule, configured to fit multiple peripheral location data of the first user group to obtain a probability distribution of the multiple peripheral location data; and a correction data generation submodule, configured to generate corrected location data of the target user based on the probability distribution of the multiple peripheral location data.
[0102] According to some embodiments, the fitting submodule includes a distribution fitting submodule, which is configured to: fit multiple peripheral location data of the first user group based on an expectation-maximization algorithm to obtain a probability distribution of the multiple peripheral location data, wherein the probability distribution used by the expectation-maximization algorithm includes a Gamma probability distribution and / or a Gaussian probability distribution, and the correction data generation submodule includes a random generation submodule, which is configured to: randomly generate corrected location data of the target user based on the probability distribution of the multiple peripheral location data.
[0103] According to some embodiments, the environmental information also includes time data, and the destination determination module includes: a trajectory estimation submodule, configured to: determine the estimated trajectory information of the target user based on the corrected position data and time data of the target user; a surrounding entity acquisition submodule, configured to: obtain one or more surrounding entities of the target user, wherein the distance between the surrounding entity and the target user is less than a second distance threshold, or the one or more surrounding entities are a predetermined number of consumer entities in a group of consumer entities that are geographically closest to the target user; and a target entity determination submodule, configured to: determine the target user's to-be-recommended destination from the target user's surrounding entities based on the target user's estimated trajectory information.
[0104] According to some embodiments, the trajectory prediction submodule includes: a model prediction submodule, configured to: based on the corrected position data and time data of the target user, use a trajectory prediction model to obtain the estimated trajectory information of the target user, wherein the trajectory prediction model is trained based on user sample data of the second user group, wherein the user sample data is the order address, the address of the ordered consumer entity, and time sample data when the distance between a user in the second user group and any consumer entity in a group of consumer entities is less than a third distance threshold.
[0105] According to some embodiments, the target entity determination submodule includes: a context acquisition submodule, configured to: acquire context information of the target user based on the target user's environmental information, the context information including area information of the target user, and the area information indicates the type of area to which the target user belongs; and a first destination determination submodule, configured to: determine the target user's to-be-recommended destination from the target user's surrounding entities based on the target user's estimated trajectory information, environmental information and context information.
[0106] According to some embodiments, the first destination determination submodule includes: a recommendation degree determination submodule, configured to: determine the recommendation degree of the target user's surrounding entities based on the target user's estimated trajectory information, environmental information and context information; and a second destination determination submodule, configured to: determine the target user's to-be-recommended destination from among the target user's surrounding entities based on the recommendation degree of the target user's surrounding entities.
[0107] According to some embodiments, the second destination determination submodule includes: a duration judgment submodule configured to: in response to the waiting duration of any surrounding entity of the target user satisfying a preset duration condition, adjust the recommendation degree of the surrounding entity; and a score adjustment submodule configured to: determine the target user's destination to be recommended from the surrounding entities of the target user based on the adjusted recommendation degree of the surrounding entity of the target user. It should be understood that Figure 5 The modules 501 to 504 of the device 500 shown in FIG. 5 can be used in conjunction with the reference Figure 1 The steps S110 to S140 in the described method 100 correspond to each other. Therefore, the operations, features and advantages described above for the method 100 are also applicable to the apparatus 500 and the modules included therein. For the sake of brevity, some operations, features and advantages are not described in detail here.
[0108] According to another aspect of the present disclosure, an electronic device is also provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the above-mentioned destination prediction method.
[0109] According to another aspect of the present disclosure, a computer-readable storage medium storing computer instructions is further provided, wherein the computer instructions are used to enable a computer to execute the above-mentioned destination prediction method.
[0110] According to another aspect of the present disclosure, a computer program product is also provided, including a computer program, wherein the computer program implements the above-mentioned destination prediction method when executed by a processor.
[0111] See also Figure 6, a block diagram of an electronic device 600 that can be used as the present disclosure will now be described, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device can be a computer device of different types, such as a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.
[0112] Figure 6 1 shows a block diagram of an electronic device according to an embodiment of the present disclosure. Figure 6 As shown, the electronic device 600 may include at least one processor 601 , a working memory 602 , an I / O device 604 , a display device 605 , a storage device 606 , and a communication interface 607 that can communicate with each other via a system bus 603 .
[0113] The processor 601 may be a single processing unit or multiple processing units, all of which may include a single or multiple computing units or multiple cores. The processor 601 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuits, and / or any device that manipulates signals based on operating instructions. The processor 601 may be configured to obtain and execute computer-readable instructions stored in a working memory 602, a storage device 606, or other computer-readable media, such as program codes of an operating system 602a, program codes of an application 602b, and the like.
[0114] Working memory 602 and storage device 606 are examples of computer-readable storage media for storing instructions, which are executed by processor 601 to implement the various functions described above. Working memory 602 may include both volatile memory and non-volatile memory (e.g., RAM, ROM, etc.). In addition, storage device 606 may include a hard disk drive, a solid-state drive, a removable medium, including external and removable drives, memory cards, flash memory, a floppy disk, an optical disk (e.g., CD, DVD), a storage array, a network attached storage, a storage area network, etc. Working memory 602 and storage device 606 may all be collectively referred to herein as memory or computer-readable storage media, and may be a non-transitory medium capable of storing computer-readable, processor-executable program instructions as computer program code, which may be executed by processor 601 as a specific machine configured to implement the operations and functions described in the examples herein.
[0115] The I / O device 604 may include an input device and / or an output device. The input device may be any type of device capable of inputting information to the electronic device 600, and may include but is not limited to a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and / or a remote controller. The output device may be any type of device capable of presenting information, and may include but is not limited to a video / audio output terminal, a vibrator, and / or a printer.
[0116] The communication interface 607 allows the electronic device 600 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and may include but is not limited to a modem, a network card, an infrared communication device, a wireless communication transceiver and / or a chipset, such as a Bluetooth™ device, an 802.11 device, a WiFi device, a WiMax device, a cellular communication device and / or the like.
[0117] The application 602b in the working register 602 can be loaded to execute the various methods and processes described above, such as Figure 1 In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 600 via the storage device 606 and / or the communication interface 607. When the computer program is loaded and executed by the processor 601, one or more steps of the above-described destination prediction method may be executed.
[0118] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0119] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.
[0120] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0121] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0122] The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.
[0123] A computing system may include clients and servers. Clients and servers are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship to each other.
[0124] In the technical solution of the present disclosure, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0125] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.
[0126] Although the embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it should be understood that the above-mentioned methods, systems and devices are merely exemplary embodiments or examples, and the scope of the present invention is not limited by these embodiments or examples, but only by the claims after authorization and their equivalent scope. Various elements in the embodiments or examples can be omitted or replaced by their equivalent elements. In addition, each step can be performed in an order different from that described in the present disclosure. Further, the various elements in the embodiments or examples can be combined in various ways. It is important that with the evolution of technology, many elements described herein can be replaced by equivalent elements that appear after the present disclosure.
Claims
1. A destination prediction method, comprising: Acquire environmental information of a target user, wherein the environmental information includes user location data of the target user; Acquire a plurality of peripheral location data in the historical location data of the first user group, wherein a difference between any of the peripheral location data and the user location data is less than a first distance threshold; Based on the plurality of peripheral location data of the first user group, correcting the user location data of the target user to obtain corrected location data of the target user; and Based on the corrected location data of the target user, a destination to be recommended for the target user is determined.
2. The method according to claim 1, wherein: The step of obtaining a plurality of peripheral location data in the historical location data of the first user group includes: In response to satisfying a preset geographical condition, a plurality of peripheral location data in the historical location data are obtained, wherein the preset geographical condition includes that the accuracy of the user location data of the target user does not meet a predetermined accuracy requirement, the difference between any of the peripheral location data and the user location data is less than the first distance threshold location data, and the accuracy of any of the peripheral location data meets the predetermined accuracy requirement location data peripheral location data, The first distance threshold is determined based on the predetermined accuracy.
3. The method according to claim 1 or 2, wherein: The step of correcting the user location data of the target user based on the plurality of surrounding location data of the first user group to obtain the corrected location data of the target user includes: Fitting the plurality of peripheral location data of the first user group to obtain a probability distribution of the plurality of peripheral location data; and Based on the probability distribution of the plurality of peripheral location data, the corrected location data of the target user is generated.
4. The method according to claim 3, wherein: The fitting of the plurality of peripheral location data of the first user group to obtain a probability distribution of the plurality of peripheral location data includes: Based on an expectation maximization algorithm, multiple peripheral location data of the first user group are fitted to obtain a probability distribution of the multiple peripheral location data, wherein the probability distribution used by the expectation maximization algorithm includes a Gamma probability distribution and / or a Gaussian probability distribution, The generating the corrected location data of the target user based on the probability distribution of the plurality of surrounding location data comprises: Based on the probability distribution of the plurality of peripheral location data, the corrected location data of the target user is randomly generated.
5. The method according to claim 1 or 2, wherein: The environmental information further includes time data, and determining the destination to be recommended for the target user based on the corrected location data of the target user includes: Determining estimated trajectory information of the target user based on the corrected position data and time data of the target user; Acquire one or more surrounding entities of the target user, wherein the distance between the surrounding entities and the target user is less than a second distance threshold, or the one or more surrounding entities are a predetermined number of consumer entities that are geographically closest to the target user in a group of consumer entities; and Based on the estimated trajectory information of the target user, a to-be-recommended destination of the target user is determined from surrounding entities of the target user.
6. The method according to claim 5, wherein: The determining the estimated trajectory information of the target user based on the corrected position data and time data of the target user includes: Based on the corrected position data and time data of the target user, a trajectory prediction model is used to obtain the estimated trajectory information of the target user. The trajectory prediction model is trained based on user sample data of the second user group, wherein the user sample data includes the order address, the address of the ordered consumer entity, and time sample data when the distance between a user in the second user group and any consumer entity in the group of consumer entities is less than a third distance threshold.
7. The method according to claim 5, wherein: The determining, based on the estimated trajectory information of the target user, a destination to be recommended for the target user from surrounding entities of the target user comprises: Based on the environment information of the target user, acquiring context information of the target user, the context information including area information of the target user, the area information indicating a type of area to which the target user belongs; and Based on the estimated trajectory information of the target user, the environmental information and the context information, a destination to be recommended for the target user is determined from surrounding entities of the target user.
8. The method according to claim 7, wherein: The determining, based on the estimated trajectory information of the target user, the environment information, and the context information, of a destination to be recommended for the target user from surrounding entities of the target user comprises: Determining the recommendation degree of surrounding entities of the target user based on the estimated trajectory information of the target user, the environmental information and the context information; and Based on the recommendation degrees of the surrounding entities of the target user, a to-be-recommended destination of the target user is determined from the surrounding entities of the target user.
9. The method according to claim 8, wherein: The determining of the destination to be recommended for the target user from the surrounding entities of the target user based on the recommendation degree of the surrounding entities of the target user comprises: In response to the waiting time of any surrounding entity of the target user satisfying a preset time condition, adjusting the recommendation degree of the surrounding entity; and determining the target user's to-be-recommended destination from the surrounding entities of the target user based on the adjusted recommendation degree of the surrounding entity of the target user.
10. A destination prediction device, comprising: An environment information acquisition module is configured to: acquire environment information of a target user, wherein the environment information includes user location data of the target user; The peripheral location data acquisition module is configured to: acquire a plurality of peripheral location data from the historical location data of the first user group, wherein the difference between any peripheral location data and the user location data is less than a first distance threshold; a location data correction module configured to: correct the user location data of the target user based on a plurality of peripheral location data of the first user group to obtain the corrected location data of the target user; and The destination determination module is configured to determine a destination to be recommended for the target user based on the corrected location data of the target user.
11. An electronic device, comprising: at least one processor; as well as a memory communicatively coupled to the at least one processor; The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method according to any one of claims 1 to 9.
12. A computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-9.
13. A computer program product comprising a computer program, wherein: When the computer program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.