Method for recommending location of interest, electronic device, storage medium, and program product
By obtaining user check-in data and analyzing the geographical location relationship between the alternative destination and the check-in location, and calculating the access probability with the check-in frequency, the problem of low recommendation accuracy in the existing technology is solved, and more accurate recommendations of interest places are achieved.
Patent Information
- Application Number
- CN202411296224.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-14
- Publication Date
- 2024-12-27
AI Technical Summary
The existing POI recommendation methods fail to effectively consider the correlation between user preferences and activity locations, resulting in low accuracy of recommended places of interest.
By obtaining user check-in data, determine the geographical relationship between the alternative destination and the check-in location, calculate the probability of the user accessing the alternative destination based on the sign-in frequency and relationship, and then recommend it.
Improve the accuracy of recommended locations of interest, and more accurately determine the probability of users visiting each alternative destination by considering the impact of geographical location on user preferences.
Smart Images

Figure CN119202409A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing technology, and in particular to a method, electronic device, storage medium and program product for recommending places of interest. Background Art
[0002] With the popularity of location-based social networks, POI (Point of Interest) recommendation plays an important role in recommendation systems. POI recommendation is the process of providing users with places of possible interest based on their personal preferences, location, time, and other contextual information.
[0003] Current POI recommendation methods mainly mine users' preferences and daily activity patterns based on their check-in records and context information. However, user preferences are also limited by activity locations, and existing methods do not consider the correlation between user preferences and activity locations, resulting in low accuracy in the recommended points of interest. Summary of the invention
[0004] The embodiments of the present application provide a method, an electronic device, a storage medium, and a program product for recommending places of interest, so as to achieve the effect of improving the accuracy of the recommended places of interest.
[0005] In a first aspect, an embodiment of the present application provides a method for recommending places of interest, including:
[0006] Acquire user sign-in data, where the user sign-in data includes at least one sign-in location;
[0007] determining at least one candidate destination according to the user check-in data;
[0008] Acquire the first location information of each candidate destination, the second location information of each check-in location, and the frequency of the user checking in at each check-in location;
[0009] Determine the geographical location relationship between each candidate destination and each check-in location according to each first location information and each second location information;
[0010] determining a first probability of the user visiting each of the candidate destinations according to each of the frequencies and each of the mutual relationships;
[0011] The candidate destinations are recommended according to the first probabilities.
[0012] In a possible implementation manner, determining the geographical location relationship between each candidate destination and each check-in location according to each first location information and each second location information includes:
[0013] Determine a first global bandwidth in a longitude position and a second global bandwidth in a latitude direction for each candidate destination using each of the second location information;
[0014] A kernel function corresponding to each of the candidate destinations is obtained according to the first global bandwidth, the second global bandwidth, each piece of the first location information, and each piece of the second location information.
[0015] In a possible implementation, the mutual relationship includes a kernel function corresponding to the candidate destination, and determining the first probability of the user visiting each of the candidate destinations according to each of the frequencies and each of the mutual relationships includes:
[0016] Smoothing the kernel functions corresponding to the candidate destinations according to the frequencies to obtain the kernel density of the candidate destinations;
[0017] A first probability of a user visiting each of the candidate destinations is determined according to each of the kernel densities.
[0018] In a possible implementation, recommending each of the candidate destinations according to each of the first probabilities includes:
[0019] Acquire the number of times and the average number of times the user signs in at each of the sign-in locations according to the user sign-in data;
[0020] Obtaining, according to the average number of times and each of the check-in times, a second probability that the user checks in at each of the candidate destinations based on each of the check-in locations;
[0021] Determining a recommendation probability of each of the candidate destinations according to the first probability and the second probability;
[0022] The candidate destinations are recommended according to the recommendation probabilities.
[0023] In a possible implementation, obtaining, according to the average number of times and each of the check-in times, a second probability that the user checks in at each of the candidate destinations based on each of the check-in locations includes:
[0024] Performing lognormal distribution fitting on each of the check-in times to obtain lognormal data corresponding to each of the check-in locations, wherein the lognormal data includes a mean of the lognormal distribution and a standard deviation of the lognormal distribution;
[0025] The second probabilities are obtained according to the average number of times, the number of check-in times, the lognormal data, and the time intervals at which the user checks in at the check-in locations.
[0026] In a possible implementation, obtaining each second probability according to the average number of times, each of the check-in times, each of the lognormal data, and a time interval for the user to check in at each of the check-in locations includes:
[0027] Determine a check-in location with a check-in number greater than or equal to the average number as a first location;
[0028] According to the lognormal data corresponding to the first location and the time interval for the user to check in to the first location, a second probability that the user checks in to each of the candidate destinations based on the first location is obtained.
[0029] In a possible implementation, obtaining each second probability according to the average number of times, each of the check-in times, each of the lognormal data, and a time interval for the user to check in at each of the check-in locations includes:
[0030] Determine the check-in location with a check-in number less than the average number as the second location, and determine the check-in location corresponding to the latest timestamp as the third location;
[0031] Obtaining the relative distance between each of the candidate destinations and the third location;
[0032] Obtaining, according to the lognormal data corresponding to the second location and the time interval for the user to check in at the second location, a third probability that the user checks in at each of the candidate destinations based on the second location;
[0033] The third probability is corrected by using each relative distance to obtain a second probability that the user checks in at each candidate destination based on each second location.
[0034] In a possible implementation, determining at least one candidate destination according to the user check-in data includes:
[0035] Acquire at least one check-in location from the user check-in data;
[0036] Inputting each of the check-in locations into a preset location type prediction model to obtain at least one location type;
[0037] Obtain the candidate check-in locations corresponding to each of the location types;
[0038] Each of the candidate check-in locations is determined as an alternative destination.
[0039] In a second aspect, an embodiment of the present application provides an electronic device, including: a memory, a processor;
[0040] The memory stores computer-executable instructions;
[0041] The processor executes the computer-executable instructions stored in the memory, so that the processor executes the above first aspect and / or various possible implementations of the first aspect.
[0042] In a third aspect, an embodiment of the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the above first aspect and / or various possible implementations of the first aspect.
[0043] In a fourth aspect, an embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the above first aspect and / or various possible implementations of the first aspect.
[0044] The method, electronic device, storage medium and program product for recommending places of interest provided in the embodiments of the present application obtain user check-in data, determine at least one alternative destination based on the user check-in data, then determine the geographical location relationship between the alternative destination and the check-in place based on the first location information and the second location information, and finally determine the first probability of the user visiting each alternative destination based on the user's check-in frequency at the check-in place and the relationship between them. Since the geographical location relationship between the alternative destination and the check-in place is taken into account, that is, the influence of the geographical location on the user's preference is taken into account, the probability of the user visiting each alternative destination can be determined more accurately, and then each alternative destination can be recommended more accurately. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0046] Figure 1 A schematic diagram of a scenario of a method for recommending places of interest provided in this application;
[0047] FIG2( a ) is a flow chart of a method for obtaining an alternative destination provided by the present application;
[0048] FIG2( b ) is a flow chart of another method for obtaining an alternative destination provided by the present application;
[0049] Figure 3 A schematic diagram of a scenario of a method for obtaining a first probability provided by the present application;
[0050] Figure 4 A schematic diagram of a scenario of a method for recommending alternative destinations provided in this application;
[0051] Figure 5A schematic diagram of a scenario of a method for obtaining a second probability provided by the present application;
[0052] Figure 6 A schematic diagram of the structure of the electronic device provided in this application.
[0053] The above drawings have shown clear embodiments of the present application, which will be described in more detail later. These drawings and text descriptions are not intended to limit the scope of the present application in any way, but to illustrate the concept of the present application to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION
[0054] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0055] It should be noted that the user check-in data involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0056] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present invention 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 numbers used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in sequences other than those illustrated or described herein, for example.
[0057] In the embodiments of the present application, the words "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0058] Current POI recommendation methods mainly mine users' preferences and daily activity patterns based on their check-in records and contextual information.
[0059] However, user preferences are also limited by the activity location, that is, if a location of interest is closer to a location of interest with a higher check-in frequency, the probability of the location of interest being checked in is usually higher. Therefore, since the existing methods do not consider the geographical correlation between different locations of interest, the accuracy of the recommended locations of interest is low.
[0060] In order to solve the above problem, the present application provides a method for recommending places of interest, by obtaining the geographical relationship between at least two places of interest, and then determining the probability of the user visiting each place of interest according to the frequency of the user visiting the places of interest and the relationship between them, and finally recommending each place of interest according to the probability. In this way, the accuracy of the recommended places of interest can be improved.
[0061] The technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems are described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0062] Figure 1 A flowchart of a method for recommending places of interest provided in this application, such as Figure 1 As shown, the method includes:
[0063] Step S101, obtaining user sign-in data.
[0064] The user check-in data is used to record the user's activity location. The user check-in data includes at least one check-in record, which is used to record the user's check-in information at the check-in location. The check-in record includes the user's check-in location, the geographical location of the check-in location, that is, the second location information of the check-in location, the user ID, and the timestamp corresponding to the check-in location.
[0065] The specific timestamp of the check-in location can be used to calculate the frequency of the user checking in at the check-in location. The geographical location of the check-in location can be used for precise positioning, and the geographical location is, for example, longitude coordinates and latitude coordinates.
[0066] Step S102: determining at least one candidate destination according to the user's check-in data.
[0067] The candidate destination is a place of interest that the user can reach based on the user's check-in data. The candidate destination may include the check-in place in the user's check-in data, or may not include the check-in place in the user's check-in data.
[0068] The alternative destination can be determined based on the second location information in the user's check-in data. The implementation method of determining the alternative destination is, for example: obtaining the geographical location of the check-in location from the user's check-in data, setting a circular area with the geographical location as the center and a preset length as the radius, and determining all places related to the check-in location within the circular area as alternative destinations. Furthermore, all places within the circular area that have the same location type as the check-in location can be determined as alternative destinations. Location type refers to the classification based on the function and purpose of the location. In this embodiment, location types include food, transportation and accommodation, outings and entertainment, and outdoor activities.
[0069] Step S103, obtaining the first location information of each candidate destination, the second location information of each check-in location, and the frequency of the user checking in at each check-in location.
[0070] The first location information of the candidate destination includes the longitude and latitude of the candidate destination, and the second location information of the check-in location includes the longitude and latitude of the check-in location.
[0071] The frequency of a user's check-in at a check-in location can be determined based on the timestamp corresponding to the check-in location. The frequency is a positive number greater than or equal to 0. The unit is, for example, times / day, times / week, times / month, hours, or minutes. Times / day refers to the number of check-ins per day. Times / week refers to the number of check-ins per week. Times / month refers to the number of check-ins per month. Hours and minutes are used to describe the time interval between two check-ins, such as checking in once every 24 hours and once every 30 minutes.
[0072] Step S104: determining the geographical location relationship between each candidate destination and each check-in location according to each first location information and each second location information.
[0073] Optionally, obtaining the geographical relationship between the candidate destination and the check-in location is, for example, directly calculating the relative distance between the candidate destination and the check-in location according to the first location information and the second location information.
[0074] Specifically, the longitude and latitude of the candidate destination A is, for example, (a 1 , b 1 ), the latitude and longitude of the check-in location B is, for example, (a 2 , b 2 ), then the relative distance D between the alternative destination A and the check-in location B satisfies the formula D = R × C, and C satisfies the formula e satisfies the formula Δa satisfies the formula Δa=a 1 -a 2 , Δb satisfies the formula Δb=b 1 -b 2. R can be the average radius of the earth, 6371 km, the equatorial radius, 6378.1 km, or the polar radius, 6356.8 km. atan2 is a function that returns the inverse tangent in the range -π to π, Δa is the difference in longitude, and Δb is the difference in latitude.
[0075] According to the first law of geography, everything is related to other things, but similar things are more closely related. Therefore, the location relationship between the alternative destination and the check-in point has a certain impact on the user's preference. By determining the geographical relationship between the alternative destination and the check-in point based on the first location information and the second location information, the influence of the location of the alternative destination on the user's preference is taken into account, so the probability of the user visiting each alternative destination can be determined more accurately.
[0076] Step S105: determining a first probability of the user visiting each candidate destination according to each frequency and each mutual relationship.
[0077] Since the frequency of users' visits to each alternative destination can directly reflect the users' preference for each alternative destination, by combining the relationship between each frequency and location to determine the first probability of users' visits to each alternative destination, it is possible to more accurately determine the first probability of users' visits to each alternative destination, and thus more accurately recommend each alternative destination to the user.
[0078] Step S106: recommending candidate destinations according to the first probabilities.
[0079] Optionally, the alternative destinations are recommended according to the first probability, for example, by determining the recommendation order of each alternative destination according to the first probability, and recommending each alternative destination to the user according to the recommendation order. Further, the recommendation order of each alternative destination is determined according to the magnitude of each first probability, and the magnitude of the first probability is positively correlated with the recommendation order, that is, the larger the first probability, the higher the recommendation order. Among them, recommending each alternative destination to the user according to the recommendation order can be to recommend each alternative destination to the user according to the recommendation order from high to low, or to sort each alternative destination according to the recommendation order from high to low, and recommending the alternative destination ranked in the top preset position to the user.
[0080] The method for recommending places of interest provided in an embodiment of the present application obtains user check-in data, determines at least one alternative destination based on the user check-in data, then determines the geographical location relationship between the alternative destination and the check-in place based on the first location information and the second location information, and finally determines the first probability of the user visiting each alternative destination based on the user's check-in frequency at the check-in place and the relationship. Since the geographical location relationship between the alternative destination and the check-in place is taken into account, that is, the influence of the geographical location on the user's preference is taken into account, the probability of the user visiting each alternative destination can be determined more accurately, and then each alternative destination can be recommended more accurately.
[0081] FIG2(a) is a flow chart of a method for obtaining an alternative destination provided by the present application. As shown in FIG2(a), in this embodiment, Figure 1 Based on the embodiment, determining at least one candidate destination according to user check-in data is described in detail, and the method includes:
[0082] Step S2011, obtaining at least one check-in location from the user check-in data.
[0083] The user's check-in data may include one check-in location or multiple check-in locations.
[0084] Step S2012: input each check-in location into a preset location type prediction model to obtain at least one location type.
[0085] Among them, the check-in locations with the location type of food are, for example, restaurants, coffee shops, dessert shops, etc. The check-in locations with the location type of outing entertainment are, for example, cinemas, shopping malls, theaters. The check-in locations with the location type of outdoor activities are, for example, gardens, beaches, and playgrounds. The check-in locations with the location type of transportation and accommodation are, for example, stations, residences, and schools. In addition, some check-in locations have multiple location types. For example, the location types of check-in locations such as game cafes and bars can be classified not only as food, but also as outing entertainment. Therefore, by inputting a check-in location into the preset location type prediction model, one location type may be obtained, or multiple location types may be obtained. Similarly, by inputting multiple check-in locations into the location type prediction model, one location type may be obtained, or multiple location types may be obtained.
[0086] Specifically, the location type prediction model can be obtained by: obtaining a sample check-in location, adding a sample label to the sample check-in location, inputting the sample check-in location with the sample label into a preset neural network model for training, and obtaining the location type prediction model. The sample label is used to characterize the location type of the sample check-in location.
[0087] Step S2013: performing a matching operation in a preset database using the location type to obtain at least one candidate check-in location corresponding to the location type.
[0088] Step S2014: determine each candidate check-in location as a candidate destination.
[0089] Since the amount of user check-in data is large and a large amount of check-in data is highly sparse, it is difficult to predict the user's places of interest from a large amount of check-in data. However, the user's check-in location can map the user's behavioral purpose, which is used to characterize the user's motivation for check-in. At the same time, if the user's behavioral purpose is known, the user's possible points of interest can be further inferred. For example, if the user's behavioral purpose is to dine, the location type of his check-in location may be food, that is, the user is likely to check in at places such as food or restaurants. If the user's behavioral purpose is for entertainment, the location type of his check-in location may be outing for entertainment, that is, check in at places such as cinemas, shopping malls or other entertainment facilities. It can be seen that the user's behavioral purpose can be inferred by the location type of the check-in location, thereby predicting the user's places of interest. This can alleviate the problem of sparse user check-in data. Based on this, an embodiment of the present application provides a method for obtaining alternative destinations, by determining the location type of the check-in location, then obtaining the alternative check-in locations corresponding to the location type, and finally determining all the alternative check-in locations as alternative destinations to alleviate the problem of sparse check-in data, thereby more accurately predicting the user's possible places of interest.
[0090] FIG2(b) is a flow chart of a method for obtaining an alternative destination provided by the present application. As shown in FIG2(b), in this embodiment, Figure 1 Based on the embodiment, determining at least one candidate destination according to user check-in data is described in detail, and the method includes:
[0091] Step S2021, serialize the user check-in data to obtain time series data.
[0092] After the user check-in data is serialized, the check-in records included in the user check-in data are organized and recorded in the order of their respective occurrences, forming an ordered sequence. Each check-in record contains a timestamp and check-in information related to that moment, such as location ID, user ID, etc.
[0093] Step S2022: classify the time series data according to preset location types to obtain at least one set of location series data.
[0094] Among them, time series data is used to represent a set of check-in records arranged in chronological order.
[0095] Specifically, classifying the time series data according to preset place types includes: classifying the check-in records in the time series data according to the place types to obtain at least one set of place series data.
[0096] Location sequence data refers to a set of check-in records belonging to the same location type and arranged in chronological order.
[0097] Step S2023: obtaining, based on each group of location sequence data, a fourth probability that the user signs in to each location type after a preset time interval.
[0098] Specifically, the fourth probability satisfies the formula Among them, P(I a,t ) is the user's preset time interval I a,t The fourth probability of checking in at the place of interest with place type a. a,t Satisfy the formula I a,t is the time interval for users to check in to places of interest with place type a, μ a is a Gaussian white noise with a mean of 0 and a variance of σ. is the autocorrelation coefficient. It is used to measure the linear correlation between one check-in record and other check-in records in a set of location sequence data. v is the order. ∈ a is a constant term, I a,t-i It is a linear combination of several previous time intervals in the autoregressive model. The time period of the last check-in is recorded as t-1, and t is the time period for recommending places of interest.
[0099] Step S2024: taking the candidate check-in location corresponding to the target location type as the candidate destination, wherein the target location type is the location type corresponding to the fourth largest probability.
[0100] Specifically, in a preset database, a matching operation is performed using the location type corresponding to the maximum fourth probability to obtain an alternative check-in location corresponding to the target location type. The database stores the corresponding relationship between the location type and the alternative check-in location.
[0101] The method for obtaining alternative destinations provided by the embodiment of the present disclosure is adopted, by obtaining the time interval for the user to check in at each type of place, then predicting the fourth probability of the user to check in at each type of place at the next moment according to the time interval, and finally determining the alternative destination according to the place type corresponding to the maximum fourth probability, so that the determined alternative destination is the place of interest with a high probability of the user to check in at the next moment. The problem of sparse user check-in data is solved.
[0102] Figure 3A flowchart of a method for obtaining a first probability provided by the present application is shown in FIG. Figure 3 As shown, in this embodiment Figure 1 Based on the embodiment, recommending each candidate destination according to each first probability is described in detail, and the method includes:
[0103] Step S301: Determine the first global bandwidth of each candidate destination in the longitude position and the second global bandwidth in the latitude direction based on each second location information.
[0104] The first global bandwidth satisfies the formula H 1 represents the first global bandwidth calculated based on the longitude coordinates of all check-in locations, j is the total number of check-in locations, Check-in location for the user p How often you check in, Check-in location for the user q The frequency of check-ins, x q It is the sign-in location q The longitude coordinate of x p It is the sign-in location p The longitude coordinate of H 1 represents the first global bandwidth of all candidate destinations in terms of longitude, and n is the total number of check-in locations.
[0105] The second global bandwidth satisfies the formula H 2 Represents the second global bandwidth calculated based on the latitude coordinates of all check-in locations. q It is the sign-in location q The latitude coordinate of y p It is the sign-in location p The latitude coordinate of H 2 Represents the second global bandwidth of all candidate destinations at the latitude position.
[0106] Step S302: acquiring kernel functions corresponding to the candidate destinations according to the first global bandwidth, the second global bandwidth, each piece of first location information, and each piece of second location information.
[0107] Specifically, the kernel function is used to characterize the correlation between the candidate destination and the check-in location. The kernel function satisfies the formula Among them, K H (l m -l p ) represents the alternative destination l m Check-in location p The correlation between m Alternative destination m The longitude coordinate, y m Alternative destinationm The latitude coordinate of the location, E represents the sum of the frequency of users checking in at each check-in location, h m Alternative destination m Check-in density.
[0108] E satisfies the formula
[0109] h m Satisfy the formula in, Indicates alternative destination m The corresponding average check-in frequency, alternative destination l m The corresponding average check-in frequency is the average check-in frequency of the user checking in at a preset number of target check-in locations. The preset number is, for example, 10, and the target check-in location is a distance of 1 km from the candidate destination. m The nearest check-in location. Indicates the average check-in frequency of users checking in to all check-in locations.
[0110] Step S303 , performing smoothing processing on the kernel functions corresponding to the candidate destinations according to the frequencies of the users checking in at the check-in locations, to obtain the kernel density of the candidate destinations.
[0111] The kernel density of the alternative destinations satisfies the formula Alternative destination m The kernel density of .
[0112] Step S304: determining each kernel density as a first probability of the user visiting each candidate destination.
[0113] Since the location of the alternative destination has a certain influence on the user's preference, by observing the user's check-in data, it can be found that the user's check-in records are usually concentrated in one or more central points of interest. The central point of interest refers to the point of interest whose check-in frequency is in the top 5% of all check-in locations. This type of central point of interest may even be signed in by users continuously within the same time period on the same day. The closer the alternative destination is to the central point of interest, the higher the probability of the alternative destination being signed in. It can be seen that the geographical location association between the alternative destination and the check-in location can affect the probability of the user signing in to the alternative destination. The method for obtaining the first probability provided by the embodiment of the present disclosure can predict the geographical location association between each alternative destination and the check-in location by using the kernel density estimation method, so that the first probability of the alternative destination being signed in can be determined more accurately, so that the alternative destination can be recommended more accurately.
[0114] On the basis of Example 1, after determining the first probability of each alternative destination according to the geographical correlation between the alternative destination and the check-in location, it is also necessary to determine the second probability of the user signing in to each alternative destination based on each check-in location according to the number of times the user signs in to the check-in location, so as to finally determine the recommended probability of the alternative destination by combining the second probability of the user signing in to the check-in location and the first probability.
[0115] Figure 4 A flowchart of a method for recommending alternative destinations provided in this application, such as Figure 4 As shown, in this embodiment Figure 1 Based on the embodiment, the method of recommending each candidate destination according to each first probability is described in detail, and includes:
[0116] Step S401, obtaining the number of times and the average number of times the user signs in at each sign-in location according to the user sign-in data.
[0117] The check-in record corresponding to the check-in location can be obtained from the user check-in data, and then the number of check-in records corresponding to the check-in location is used as the number of check-ins that the user has made to the check-in location. The number of check-ins that the user has made to each check-in location can be added up and divided by the total number of check-in locations to obtain the average number of times.
[0118] The sign-in record corresponding to the sign-in location includes the sign-in record of the sign-in location. The sign-in record corresponding to the sign-in location may be one or more, and the data of the sign-in record corresponding to the sign-in location is not limited here.
[0119] In some embodiments, the user check-in data of user 1 includes check-in record 1, check-in record 2, check-in record 3, check-in record 4, and check-in record 5. Check-in record 1 and check-in record 2 are both used to record the check-in information of user 1 at check-in location 1. Check-in record 3 and check-in record 4 are both used to record the check-in information of user 1 at check-in location 2. Check-in record 5 is used to record the check-in information of user 1 at check-in location 3. Then, the check-in records corresponding to check-in location 1 are check-in record 1 and check-in record 2. The check-in records corresponding to check-in location 2 are check-in record 3 and check-in record 4. The check-in record corresponding to check-in location 3 is check-in location 5.
[0120] Step S402: obtaining a second probability of the user signing in at each candidate destination based on each sign-in location according to the average number of times and each sign-in number.
[0121] Step S403: determining the recommendation probability of each candidate destination according to the first probability and the second probability.
[0122] Specifically, each first probability is multiplied by the second probability to obtain a fifth probability corresponding to each candidate destination, and the maximum fifth probability corresponding to the candidate destination is used as the recommended probability of the candidate destination.
[0123] Step S404: recommending each candidate destination according to each recommendation probability.
[0124] The candidate destinations may be recommended to the user in descending order of recommendation probability.
[0125] The method for recommending an alternative destination provided by the embodiment of the present disclosure is used to predict the second probability of the user checking in at the alternative destination based on the check-in location according to the check-in number of the check-in location, and then combine the second probability with the first probability to finally obtain the recommendation probability of the alternative destination. In this way, not only the geographical correlation between the alternative destination and the check-in location is considered, but also the behavioral inertia of the user to check in at the check-in location is considered. In this way, the recommendation probability of the alternative destination can be determined more accurately, and the alternative destination can be recommended more accurately.
[0126] Behavioral inertia refers to the fact that user behavior is driven by purpose and has a certain inherent pattern. It has a subconscious guiding effect on user decision-making. For example, when users have dining needs, they always visit the same restaurant; when users have entertainment needs, they always visit the same shopping mall. The consistency of previous behaviors and the accumulation of check-ins enable users to avoid weighing alternatives when they have the same needs, and users will repeat previous behaviors without thinking to a greater extent. Therefore, the number of check-ins of users at the check-in locations can be used to infer the user's behavioral inertia, and then infer the second probability of the user checking in at the alternative destination based on each check-in location.
[0127] Figure 5 A flow chart of a method for obtaining a second probability provided in the present application is shown in FIG. Figure 5 As shown, in this embodiment Figure 1 Based on the embodiment, obtaining a second probability corresponding to a check-in location according to the average number of times and the number of check-in times of a check-in location pair is described in detail. The method includes:
[0128] Step S501 , performing lognormal distribution fitting on the number of check-in times at the check-in location to obtain lognormal data corresponding to the check-in location, wherein the lognormal data includes a mean value and a standard deviation of the lognormal distribution.
[0129] A natural logarithm transformation can be applied to the number of check-ins to achieve a log-normal distribution fit for the number of check-ins.
[0130] Step S502: obtaining a third probability that the user checks in at each candidate destination based on the check-in location according to the lognormal data and the time interval at which the user checks in at the check-in location.
[0131] The third probability satisfies the formula in, is the third probability that the user checks in at each candidate destination based on the check-in location w. i represents the mean of the lognormal distribution, σ i Represents the standard deviation of the lognormal distribution. t represents the time interval between users checking in at the check-in location w.
[0132] Step S503, determine whether the check-in number corresponding to the check-in location is less than the average number, if so, execute step S504, otherwise, execute step S507. If the check-in number corresponding to the check-in location is greater than or equal to the average number, the check-in location is the first location. If the check-in number corresponding to the check-in location is less than the average number, the check-in location is the second location.
[0133] A check-in location with a check-in frequency less than the average frequency indicates that the user has not formed a behavioral inertia at this check-in location. The increase in the number of check-ins may be due to changes in the external environment or the user's active pursuit of new things. A check-in location with a check-in frequency greater than the average frequency indicates that the user has formed a behavioral inertia at this check-in location. Therefore, it is necessary to use different methods to predict the second probability for check-in locations with different check-in frequencies.
[0134] Step S504: determine the check-in location corresponding to the latest time stamp in the user's check-in data as the third location. Then execute step S505.
[0135] Step S505, obtaining the relative distance between each candidate destination and the third location. Then, executing step S506.
[0136] The relative distance satisfies the formula
[0137]
[0138] X m is the longitude coordinate of the alternative destination. m is the latitude coordinate of the alternative destination. f is the longitude coordinate of the third location. f is the latitude coordinate of the third location.
[0139] Step S506: Correct the third probability using the relative distances to obtain the second probability that the user checks in at each candidate destination based on the check-in location. Then the process ends.
[0140] Specifically, After the third probability is corrected by the relative distance, the user selects the candidate destination (x m ,y m ) is the second probability of signing in. The coordinates are (x m ,y m )’s candidate destination, the number of points of interest that the user has checked in to under the category of the place type. Satisfy the formula R represents the user's check-in record, and f(R,c) is the location type matching function: when the check-in location in the user's check-in record matches (x m ,y m ) belong to the same category, the result returns 1, otherwise it returns 0. T represents the number of times the user visits the check-in location w.
[0141] Step S507: determine the third probability as the second probability that the user checks in at each candidate destination based on the check-in location. Then end.
[0142] The method for obtaining the second probability provided in the embodiment of the present application classifies the check-in locations according to the average number of times users check in at the check-in locations, and then adopts different methods to obtain the behavioral inertia of different check-in locations, thereby predicting the second probability of the user checking in at the alternative destination based on the different check-in locations, thereby achieving a more accurate prediction of the second probability.
[0143] Figure 6 This is a schematic diagram of the structure of the electronic device provided in this application. Figure 6 As shown, the electronic device 600 provided in this embodiment includes: at least one processor 601 and a memory 602. Optionally, the device 600 further includes a communication component 603. The processor 601, the memory 602 and the communication component 603 are connected via a bus.
[0144] In a specific implementation process, at least one processor 601 executes the computer execution instructions stored in the memory 602, so that at least one processor 601 executes the above method.
[0145] The specific implementation process of the processor 601 can be found in the above method embodiment, and its implementation principle and technical effect are similar, so this embodiment will not be repeated here.
[0146] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the invention may be directly implemented as being executed by a hardware processor, or may be executed by a combination of hardware and software modules in the processor.
[0147] The memory may include a high-speed memory (Random Access Memory, RAM), and may also include a non-volatile memory (Non-volatile Memory, NVM), such as at least one disk memory.
[0148] The bus may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, the bus in the drawings of the present application is not limited to only one bus or one type of bus.
[0149] The present application also provides a computer program product, including a computer program, which implements the above method when executed by a processor.
[0150] The present application also provides a computer-readable storage medium, in which computer-executable instructions are stored. When a processor executes the computer-executable instructions, the above method is implemented.
[0151] The above-mentioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk. The readable storage medium can be any available medium that can be accessed by a general or special-purpose computer.
[0152] An exemplary readable storage medium is coupled to a processor so that the processor can read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can be located in an application specific integrated circuit (Application Specific Integrated Circuits, referred to as: ASIC). Of course, the processor and the readable storage medium can also exist in the device as discrete components.
[0153] The division of units is only a logical function division, and there may be other divisions in actual implementation, such as 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 an indirect coupling or communication connection through some interface, device or unit, which can be electrical, mechanical or other forms.
[0154] 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 network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0155] In addition, each functional unit in each embodiment of the present invention 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.
[0156] If the function 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 invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.
[0157] Those skilled in the art can understand that all or part of the steps of implementing the above-mentioned method embodiments can be completed by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, the steps of the above-mentioned method embodiments are executed; and the aforementioned storage medium includes: ROM, RAM, disk or optical disk and other media that can store program codes.
[0158] Finally, it should be noted that those skilled in the art will readily conceive of other embodiments of the present invention after considering the specification and practicing the invention disclosed herein. The present invention is intended to cover any variations, uses or adaptations of the present invention, which follow the general principles of the present invention and include common knowledge or customary technical means in the art not disclosed by the present invention, are not limited to the precise structure described above and shown in the drawings, and may be modified and changed in various ways without departing from the scope thereof. The scope of the present invention is limited only by the appended claims.
Claims
1. A method for recommending places of interest, characterized in that: include: Acquire user sign-in data, where the user sign-in data includes at least one sign-in location; determining at least one candidate destination according to the user check-in data; Acquire the first location information of each candidate destination, the second location information of each check-in location, and the frequency of the user checking in at each check-in location; Determine the geographical location relationship between each candidate destination and each check-in location according to each first location information and each second location information; determining a first probability of the user visiting each of the candidate destinations according to each of the frequencies and each of the mutual relationships; The candidate destinations are recommended according to the first probabilities.
2. The method according to claim 1, characterized in that: Determining the geographical location relationship between each candidate destination and each check-in location according to each first location information and each second location information includes: Determine a first global bandwidth in a longitude position and a second global bandwidth in a latitude direction for each candidate destination using each of the second location information; A kernel function corresponding to each of the candidate destinations is obtained according to the first global bandwidth, the second global bandwidth, each piece of the first location information, and each piece of the second location information.
3. The method according to claim 1, characterized in that The mutual relationship includes a kernel function corresponding to the candidate destination, and determining a first probability of the user visiting each of the candidate destinations according to each of the frequencies and each of the mutual relationships includes: Smoothing the kernel functions corresponding to the candidate destinations according to the frequencies to obtain the kernel density of the candidate destinations; A first probability of a user visiting each of the candidate destinations is determined according to each of the kernel densities.
4. The method according to claim 1, characterized in that Recommending each of the candidate destinations according to each of the first probabilities includes: Acquire the number of times and the average number of times the user signs in at each of the sign-in locations according to the user sign-in data; Obtaining, according to the average number of times and each of the check-in times, a second probability that the user checks in at each of the candidate destinations based on each of the check-in locations; Determining a recommendation probability of each of the candidate destinations according to the first probability and the second probability; The candidate destinations are recommended according to the recommendation probabilities.
5. The method according to claim 4, characterized in that Obtaining a second probability that the user signs in to each of the candidate destinations based on each of the sign-in locations according to the average number of times and each of the sign-in times includes: Performing lognormal distribution fitting on each of the check-in times to obtain lognormal data corresponding to each of the check-in locations, wherein the lognormal data includes a mean of the lognormal distribution and a standard deviation of the lognormal distribution; The second probabilities are obtained according to the average number of times, the number of check-in times, the lognormal data, and the time intervals at which the user checks in at the check-in locations.
6. The method according to claim 5, characterized in that Obtaining each second probability according to the average number of times, each of the check-in times, each of the lognormal data, and a time interval at which the user checks in at each of the check-in locations includes: Determine a check-in location with a check-in number greater than or equal to the average number as a first location; According to the lognormal data corresponding to the first location and the time interval for the user to check in to the first location, a second probability that the user checks in to each of the candidate destinations based on the first location is obtained.
7. The method according to claim 5, characterized in that Obtaining each second probability according to the average number of times, each of the check-in times, each of the lognormal data, and a time interval at which the user checks in at each of the check-in locations includes: Determine the check-in location with a check-in number less than the average number as the second location, and determine the check-in location corresponding to the latest timestamp as the third location; Obtaining the relative distance between each of the candidate destinations and the third location; Obtaining, according to the lognormal data corresponding to the second location and the time interval for the user to check in at the second location, a third probability that the user checks in at each of the candidate destinations based on the second location; The third probability is corrected by using each relative distance to obtain a second probability that the user checks in at each candidate destination based on each second location.
8. The method according to any one of claims 1 to 7, characterized in that: Determining at least one candidate destination according to the user check-in data includes: Acquire at least one check-in location from the user check-in data; Inputting each of the check-in locations into a preset location type prediction model to obtain at least one location type; Obtain the candidate check-in locations corresponding to each of the location types; Each of the candidate check-in locations is determined as an alternative destination.
9. An electronic device, characterized in that: include: Memory, processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory, so that the processor performs the method according to any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 8 when executed by a processor.
11. A computer program product, characterized in that The invention comprises a computer program, which implements the method according to any one of claims 1 to 8 when being executed by a processor.
Citation Information
Patent Citations
Interest point recommendation method and device, electronic equipment and storage medium
CN107657015A
