A location recommendation system natural noise filtering method based on check-in data discrete feature quantization
By quantifying the discrete features of user check-in data, filtering and removing natural noise, the shortcomings of natural noise filtering in the location recommendation system are solved, and the accuracy and reliability of the recommendation system are improved.
Patent Information
- Application Number
- CN202310458878.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-25
- Publication Date
- 2025-10-24
- Estimated Expiration
- 2043-04-25
AI Technical Summary
In existing location recommendation systems, natural noise filtering technology has not been effectively applied in location recommendation scenarios, and traditional methods require additional information collection or ignore the uncertainty of noise, resulting in inefficient and inaccurate recommendation systems.
By calculating the discrete features of user check-in data, quantifying the discreteness of user check-in behavior, and filtering and deleting check-in data with high discreteness, a natural noise filtering method based on the quantification of discrete features of check-in data is designed to improve the quality of source data.
It effectively filters natural noise data, improves the accuracy and reliability of the recommendation system, reduces data interference and error propagation, and improves the performance of the recommendation algorithm.
Smart Images

Figure CN116644227B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application relates to a location recommendation system natural noise filtering method based on check-in data discrete feature quantization in a location social network, and belongs to the technical field of artificial intelligence and machine learning. BACKGROUND
[0002] With the popularity and development of intelligent mobile devices, mobile Internet has occupied a dominant position, greatly affecting and changing people's lives. The 51st "Statistical Report on the Development of China Internet" released by China Internet Network Information Center pointed out that as of December 2022, the scale of netizens in China has reached 1.067 billion, among which the scale of mobile phone netizens is 1.065 billion, and the proportion of netizens using mobile phones to access the Internet is 99.8%. The wide application of high-precision positioning technology, civil GPS and other positioning chips has promoted the rapid development of location-based social networks (LBSNs). At present, there are a large number of mature location-based social network platforms at home and abroad. Foreign Foursquare, Gowalla, Yelp, Instagram, Uber, Google Maps and domestic Didi, Meituan, Qunar, Baidu Map and other location service applications attract hundreds of millions of users. In the location-based social network, users can view some interesting locations such as restaurants, stores and cinemas by adding geographic tags; can check in using mobile devices, publish geographic location information and share their suggestions and comments. Location social networks can not only bring convenience to users, but also help businesses understand the real users behind the network, so as to "give them what they want" and customize personalized services that meet their needs for different users, which has strong practicality and advancement.
[0003] Billions of users leave their geographic location information in location-based social networks (LBSNs) voluntarily or involuntarily, which results in a large amount of location check-in data. Although the massive amount of information provides users with rich data resources, it also causes information overload and increases the difficulty for users to accurately obtain target items. Therefore, recommender systems (RSs) that aim to solve the problem of information overload have attracted more and more researchers' attention. For example, the famous Amazon company uses RSs to recommend goods to users, which improves the click rate and turnover of businesses. Netflix, a movie recommendation website, has attracted many research teams by holding a recommender system competition, which improves the accuracy of recommendations. As a special information filtering system, RSs do not require users to actively provide accurate keywords. Instead, they analyze users' existing historical behavior, model users' interests and hobbies, and mine users' potential preferences to actively recommend goods, services, and other items that meet users' needs. Location recommendation, as an inevitable product of the collaborative development of traditional RSs and LBSNs, has become a research hotspot. Location recommendation systems can help users find target locations that better meet their interests and preferences, and can also help businesses accurately push advertisements to potential customers, providing valuable business opportunities for businesses, and achieving a win-win situation for users and businesses, which has great market potential and broad application prospects.
[0004] The design of RSs mainly includes two modules: data preprocessing and recommendation algorithm design. In order to improve the prediction accuracy of RSs, most researchers focus on the design of recommendation algorithms and ignore the noise information that cannot be avoided in the source data of RSs. As early as 2006, O'Mahony et al. proposed that there are two types of inherent noise data in RSs—malicious noise and natural noise. According to the law of error propagation, different noise filtering methods will pass different degrees of uncertainty to the recommendation algorithm under the condition of using the same recommendation algorithm, causing differences in the recommendation results. Noise data makes the RS a "pseudo-expert" and greatly reduces user satisfaction. Therefore, the research of RSs should not only focus on the design of recommendation algorithms, but also pay attention to the noise interference information of different properties in the source data to provide reliable input guarantee for the recommendation algorithm.
[0005] The natural noise in the location recommendation system can be defined as inconsistent and discrete check-in information introduced by the user unintentionally due to external factors, which is specifically manifested in that the user unintentionally visits a non-target address due to unstable network communication signals or inaccurate positioning technology, and the individual user produces the characteristics of address diversification and discretization due to emotional fluctuations or personal habit problems. In the score matrix generated based on the check-in record, these non-malicious check-in deviations are distributed in a certain row or column, and finally exhibit the natural noise in the score data. Unlike the malicious noise which often has certain regularity and can be processed by analyzing the statistical characteristics of the user or using attack detection algorithm, the natural noise is more concealed and does not conform to any rule and distribution, and it is difficult to be simply filtered out by the formatted and regularized program. Therefore, in the location recommendation system, how to design an effective identification and filtering method for the natural noise data to reduce the error propagation rate of the data is a problem worthy of study.
[0006] At present, the existing natural noise filtering technology of the recommendation system still has some deficiencies, which can be summarized as follows:
[0007] (1) The related researches are all concentrated in the traditional recommendation field with movies, jokes, music and the like as the recommendation target, and almost no research is conducted on identifying the natural noise in the location recommendation scene. Actually, in the two types of recommendation systems, there are great differences in the source data characteristics, the causes and the manifestation modes of the natural noise. Therefore, whether the natural noise processing technology in the traditional recommendation system is applicable in the location recommendation field still needs to be verified.
[0008] (2) Some natural noise filtering technologies need to collect a large amount of item and user information in addition to the original score, which greatly affects the execution efficiency of the recommendation system.
[0009] (3) Some research methods identify the natural noise based on strict binary logic, ignoring the inherent uncertainty and fuzziness of the natural noise.
[0010] (4) There is data-driven uncertainty in the recommendation system which can cause the natural noise, which mainly comes from the diversity of the user check-in preferences and the item characteristics. Some research works have been conducted around the uncertainty, but the specific quantification method of the uncertainty is not clearly proposed, which reduces the explainability of the natural noise filtering.
[0011] The above-mentioned deficiencies of the existing natural noise filtering technology of the recommendation system bring great disadvantages in the design, development, deployment and operation of different location social network platforms, especially cause the decline of the service quality of the recommendation system on the network platform with a large amount of item information, and further affect the sales performance of the electronic commerce system. SUMMARY
[0012] The present application aims at the defects and deficiencies of the prior art, and provides a location recommendation system natural noise filtering method based on check-in data discrete feature quantization.
[0013] The technical solution adopted by the present application to solve its technical problems is: first, calculate the geographic center point of the visited location group for each user according to the geographic longitude and latitude of the location; then, define and calculate the general frequency distance and the frequency correction distance of the user visiting a certain location respectively; calculate the discrete degree of each user check-in data based on the sum of the frequency correction distance and the sum of the general frequency distance; sort the users according to the check-in discrete degree, fit the empirical model, and regard the check-in data of a number of users with high discrete degree as natural noise; delete the natural noise data to improve the source data quality of the recommendation system. Figure 1
[0014] The specific process of the method of the present application includes:
[0015] Step 1: collect and organize the historical check-in records in the location recommendation system to form the original user check-in data set. Filter out the users with no social relationship, the inactive users and the unpopular locations.
[0016] Step 2: calculate the geographic center point of all the visited locations of a user according to the historical check-in records.
[0017] Step 3: define and calculate the general frequency distance and the frequency correction distance of the user visiting a certain location.
[0018] Step 4: calculate the sum of the general frequency distance and the sum of the frequency correction distance of a user based on the set of locations visited by the user, and then extract the discrete degree of each user check-in data.
[0019] Step 5: sort all the users according to the check-in discrete degree, fit the empirical model, and screen and delete the data of a number of users with high check-in feature discrete degree.
[0020] Step 6: convert the check-in data set before and after the natural noise filtering into a user-location two-dimensional score matrix respectively. Run different types of location recommendation algorithms, and use the recommendation accuracy index to evaluate the recommendation quality. Compare the recommendation accuracy of different data sets before and after the natural noise data filtering, and evaluate the effectiveness and applicability of the proposed technology in the location recommendation system.
[0021] Advantages:
[0022] 1. The natural noise filtering method based on check-in data discrete feature quantization is proposed for the location recommendation system, the uncertainty brought by the diversity of user check-in preferences and item features to the recommendation system is fully considered, the discrete features of the user check-in behavior are reasonably quantized, the blank of the natural noise filtering research in the location recommendation system is filled, and the method has wide application prospects in the data preprocessing of e-commerce, location service, social network and other related platforms.
[0023] 2. The correction coefficient is designed based on the user access frequency, the diversification and discretization features of the user check-in behavior are quantized, it is ensured that reasonable check-in data is not filtered out by mistake when analyzing the user check-in behavior, the natural noise filtering technology of "discrete quantization and accurate judgment" is realized, and the reliability of the recommendation system is improved.
[0024] 3. The method has certain universality and portability, can be applied to not only the location recommendation system, but also the traditional recommendation field taking non-geographical feature items as the recommendation objects. The method can effectively improve the quality of source data of the recommendation system, reduce data interference and error propagation, provide reliable input for subsequent recommendation algorithms, and is the premise and basis for improving the performance of the recommendation system. BRIEF DESCRIPTION OF DRAWINGS
[0025] Figure 1 is a schematic diagram of the natural noise filtering method based on check-in data discrete feature quantization of the location recommendation system proposed in the application.
[0026] Figure 2 is a flowchart of the natural noise filtering method based on check-in data discrete feature quantization of the location recommendation system proposed in the application.
[0027] Figure 3 is a preprocessing flowchart of the original check-in data set in the embodiment of the application.
[0028] Figure 4 is a scatter plot of the discrete degree of all user check-in data in the embodiment of the application.
[0029] Figure 5 is a bar chart of the precision and recall comparison of the user-based collaborative filtering (UBCF) recommendation algorithm before and after natural noise filtering in the embodiment of the application.
[0030] wherein, Figure 5 (a) is a precision comparison chart of the UBCF algorithm before and after natural noise filtering. Figure 5(b) is a comparison chart of the recall rate of the UBCF algorithm before and after natural noise filtering.
[0031] Figure 6 It is a bar chart comparing the precision and recall of the item-based collaborative filtering (IBCF) recommendation algorithm before and after natural noise filtering in the implementation case of the present invention.
[0032] in, Figure 6 (a) is a comparison chart of the precision of the IBCF algorithm before and after natural noise filtering. Figure 6 (b) is a comparison chart of the recall rate of the IBCF algorithm before and after natural noise filtering.
[0033] Figure 7 This is a bar chart comparing the precision and recall of the singular value decomposition (SVD) algorithm before and after natural noise filtering in the implementation case of the present invention.
[0034] in, Figure 7 (a) is a comparison chart of the precision of the SVD algorithm before and after natural noise filtering. Figure 7 (b) is a comparison chart of the recall rate of the SVD algorithm before and after natural noise filtering.
[0035] Figure 8 It is a bar chart comparing the precision and recall of the social relationship-based collaborative filtering (FCF) recommendation algorithm before and after natural noise filtering in the implementation case of the present invention.
[0036] in, Figure 8 (a) is a comparison chart of the accuracy of the FCF algorithm before and after natural noise filtering. Figure 8 (b) is a comparison chart of the recall rate of the FCF algorithm before and after natural noise filtering.
[0037] Figure 9 This is a bar chart comparing the precision and recall of the kernel density estimation algorithm (KDE) based on geographic features before and after natural noise filtering in the implementation case of the present invention.
[0038] in, Figure 9 (a) is a comparison chart of the precision of the KDE algorithm before and after natural noise filtering. Figure 9 (b) is a comparison chart of the recall rate of the KDE algorithm before and after natural noise filtering. DETAILED DESCRIPTION
[0039] The present invention will be described in further detail below with reference to the accompanying drawings.
[0040] like Figure 1 and Figure 2 As shown, the present invention provides a natural noise filtering method for a location recommendation system based on discrete feature quantization of check-in data, the method comprising the following steps:
[0041] Step 1: Collect and organize historical check-in records from the location recommendation system to form the original user check-in dataset. Filter out users without social connections, inactive users, and unpopular locations. The steps are as follows:
[0042] Step 1-1: Select the user check-in dataset C of the target recommendation system. The dataset contains n check-in records, denoted as C = {c1, c2, ..., c n}, each check-in record is represented by a five-tuple consisting of user ID, check-in time, geographic latitude, geographic longitude, and location ID, denoted as {userID, time, latitude, longitude, locationID}.
[0043] Step 1-2: Label each check-in record with the country and city of its location based on its latitude and longitude. Count and sort the number of locations and check-ins in each region to determine the experimental observation range and filter out the corresponding user check-in records.
[0044] Step 1-3: Delete isolated users and keep only users with at least one social relationship.
[0045] Step 1-4: Delete inactive users and keep only users who have visited at least Lmin locations.
[0046] Step 1-5: Delete unpopular locations. If a location is visited by fewer than Umin users, it is considered unpopular and deleted from the check-in record.
[0047] Step 1-6: Repeat steps 1-3 to 1-5 until all users have at least one social connection, have visited at least Lmin locations, and all locations have been visited by at least Lmin users. This results in a filtered check-in dataset, C', where the number of users and locations in the dataset is NU and NL, respectively.
[0048] Step 2: Calculate the geographic center of all the locations a user has visited based on historical check-in records. The steps are as follows:
[0049] Step 2-1: Count the number of users u based on the check-in dataset C' i (1≤i≤NU) Number of visited locations m iLet L be the set of locations visited by user u i = {l1, l2, …, lm mi}, record the longitude and latitude <lon i , lat j > of each location l j in set L j (1≤j≤m i ).
[0050] Step 2-2: Convert the longitude and latitude <lon i , lat j > of each location l j in set L j one by one:
[0051]
[0052]
[0053] lon j ' and lat j ' are the converted longitude and latitude of location l j , respectively.
[0054] Step 2-3: Calculate the center point in the 3D coordinate system according to the converted longitude and latitude of all locations:
[0055]
[0056]
[0057]
[0058] where lon j ' and lat j ' are the converted longitude and latitude of location l j , and m i is the number of locations visited by user u i .
[0059] Step 2-4: Calculate the longitude lon i and latitude lat i of the geographic center point P mi of the set of locations L i = {l1, l2, …, lm p} visited by user u p , where X, Y, and Z are the center point coordinates in the 3D coordinate system obtained in step 2-3:
[0060]
[0061]
[0062] Step 3: Define and calculate the general frequency distance and the frequency correction distance of a user visiting a location. The operation steps are as follows:
[0063] Step 3-1: lon j and lat j are the longitude and latitude of location l j , respectively, and lon p and lat p are the longitude and latitude of the geographical center point P i of the locations visited by user u i , respectively, the geographical distance from location l j = <lon j , lat j > to the geographical center point P i = <lon p , lat p > is calculated as:
[0064] dis(P i , l j ) = R * arccos [sin lat p * sin lat j + cos lat p * cos lat j * cos (lon p - lon j )] (8)
[0065] where R is the radius of the earth, R = 6371 km.
[0066] Step 3-2: The general frequency distance dp i of user u j visiting location l ij is the geographical distance dis(P i , l j ) from the center point P i to location l j multiplied by the number of check-ins c j of the user at l j :
[0067] dp ij = dis(P i , l j ) * c j (9)
[0068] Step 3-3: According to the number of check-ins c i of user u j at location l j, set a correction coefficient proportional to the number of check-ins for each distance calculation, user u i Access Location j The frequency correction distance is:
[0069]
[0070] Among them, dis(P i ,l j ) is the position l j To user u i The geographic center point P of the visited location i The geographical distance between users and the user, cmax is the maximum number of check-ins of all users.
[0071] Step 4: Based on the set of locations the user has visited, calculate the sum of the user's general frequency distance and the sum of the frequency-corrected distance, and then extract the discreteness of each user's check-in data. The steps are as follows:
[0072] Step 4-1: Calculate user u i Visited set L i ={l1,l2,…,l mi The sum of the general frequency distances of each position in}:
[0073]
[0074] Among them, dp ij is user u i Access Location j General frequency distance, m i is user u i The number of locations visited.
[0075] Step 4-2: Calculate user u i Visited set L i ={l1,l2,…,l mi The sum of the frequency-corrected distances of each position in}:
[0076]
[0077] in, is user u i Access Location j Frequency correction distance, m i is user u i The number of locations visited.
[0078] Step 4-3: Quantify user u i Discrete features of check-in behavior, defining user u i Dispersion of sign-in data iThe ratio of the sum of the frequency-corrected distance of the user in the set of visited locations L i to the sum of the general frequency distance:
[0079]
[0080] where m i is the number of locations visited by user u i , sdp i is the sum of the general frequency distance of the locations visited by user u i , and is the sum of the frequency-corrected distance of the locations visited by user u i .
[0081] Step 5: Sort all users by check-in dispersion, fit an empirical model, and filter and delete the data of several users with high check-in feature dispersion. The operation steps are as follows:
[0082] Step 5-1: Perform steps 2-4 for each user in the check-in data set C' to generate a set of check-in data dispersion D = {disper1, disper2, …, disper NU} for NU users.
[0083] Step 5-2: Sort the elements in the dispersion set D in descending order, and the sorted dispersion set is denoted as D'.
[0084] Step 5-3: Based on the empirical summary of related technologies for processing natural noise, it is found that there are about 4%-10% of potential natural noise in the data set. Based on this, the natural noise ratio is set to 6%.
[0085] Step 5-4: Take the first 6% elements in the dispersion set D', record their corresponding user IDs, and consider the check-in data of these users as natural noise. Delete the corresponding check-in data in the check-in data set C'. Update the check-in data set C' to C_Na.
[0086] Step 6: Convert the check-in data set before and after natural noise filtering into a user-location two-dimensional rating matrix respectively. Run different types of location recommendation algorithms and use the recommendation accuracy index to evaluate the recommendation quality. Compare the recommendation accuracy of different data sets before and after natural noise data filtering to evaluate the effectiveness and applicability of the proposed technology in the location recommendation system. The operation steps are as follows:
[0087] Step 6-1: Based on the C' check-in data set, generate a user-location two-dimensional rating matrix R' = {r ul}, u e [1, NU], l e [1, NL]. Wherein, u represents the user number, l represents the address number, NU represents the total number of users, NL represents the total number of addresses, r ul represents the score of user u to position l:
[0088]
[0089] Wherein, c ul is the check-in number of user u in position l, and cmax is the maximum value of all user check-in numbers.
[0090] Similarly, based on the C_Na check-in data set, a user-position two-dimensional score matrix R_Na={r u'l'}, u' e [1, 0.94xNU], l' e [1, NL]. Wherein, u' represents the user number, l' represents the address number, NU represents the total number of users, NL represents the total number of addresses, r u'l' represents the score of user u' to position l'.
[0091] Step 6-2: Based on the C' check-in data set and the R' score data set, randomly select 20% of the users as the target user set AU', run various recommendation algorithms for each target user in the set, and generate a recommendation list.
[0092] Step 6-3: Based on the C_Na check-in data set and the R_Na score data set, randomly select 20% of the users as the target user set AU_Na, and run various recommendation algorithms for each target user in the set to generate a recommendation list.
[0093] Step 6-4: For each recommendation algorithm, evaluate the recommendation accuracy of the same recommendation algorithm in different data sets one by one. The accuracy rate Precision, recall rate Recall and recommendation precision index F1 of each recommendation algorithm running once for the target user set are the average values of all users in the set for this index.
[0094] Step 6-5: Repeat steps 6-2 to 6-4 for Ntimes times, and the accuracy rate Precision, recall rate Recall and recommendation precision index F1 of each recommendation algorithm are the average values of Ntimes running results.
[0095] Step 6-6: Comparative analysis of the results of each index: if the recommendation accuracy index F1 of the same recommendation algorithm in the C_Na check-in data set and the R_Na rating data set is greater than the recommendation accuracy index F1 value in the C' check-in data set and the R' rating data set, it indicates that the proposed technology effectively filters out natural noise data; if the precision of the same recommendation algorithm in the C_Na check-in data set and the R_Na rating data set is greater than the precision value in the C' check-in data set and the R' rating data set, the method can help the recommendation algorithm to find the address of interest to the user more accurately; if the recall of the same recommendation algorithm in the C_Na check-in data set and the R_Na rating data set is greater than the recall value in the C' check-in data set and the R' rating data set, the method can help the recommendation algorithm to cover the location of interest to the user more comprehensively.
[0096] As shown in Figures 3-9 , the present application takes a specific location-based social network Brightkite as an example to illustrate in detail how the natural noise filtering method of the location recommendation system based on check-in data discrete feature quantization in the present application works.
[0097] The Brightkite data set is collected by the SNAP laboratory of Stanford University in the United States, and the social relationship and check-in information of 58228 users on the Brightkite website from April 2008 to October 2010. The number of locations in the Brightkite data set is 693362, the check-in records of the users are 4747281, and the social relationships between the users form 214078. The Brightkite data set is one of the most commonly used test data sets for location recommendation system researchers.
[0098] The recommendation algorithms selected in the implementation case are: user-based collaborative filtering (UBCF), item-based collaborative filtering (IBCF), singular value decomposition (SVD), social relationship-based collaborative filtering (FCF), and kernel density estimation algorithm based on geographical features (KDE). Specifically, it includes:
[0099] Step 1: Collect and organize the historical check-in records in the location recommendation system to form the original user check-in data set. Filter out users with no social relationship, inactive users and unpopular locations. The operation steps are as follows Figure 3 ):
[0100] Step 1-1: Select the Brightkite data set as the user check-in data set C of the target recommendation system. The data set contains 4747281 check-in records, denoted as C={c1, c2, …, c 4747281}, each check-in record is represented by a five-tuple consisting of user ID, check-in time, geographic latitude, geographic longitude, and location ID, denoted as {userID, time, latitude, longitude, locationID}.
[0101] Step 1-2: Based on the location's latitude and longitude, label each check-in record with the country and city where it occurred. Limiting the observation data to the United States, we screened out check-in records from the United States and labeled the county name for each location. After counting and sorting the number of locations and check-ins in each county (Table 1), we selected the top three counties with the most data (Los Angeles, San Francisco, and New York) as the observation area for the experiment and screened out the corresponding user check-in records.
[0102] Table 1 Check-in statistics for the top five counties in the United States
[0103]
[0104] Step 1-3: Delete isolated users and keep only users with at least one social relationship.
[0105] Step 1-4: Delete inactive users and keep only those who have visited at least 3 locations.
[0106] Step 1-5: Delete unpopular locations. If a location is visited by fewer than 5 users, it is considered unpopular and deleted from the check-in record.
[0107] Step 1-6: Repeat steps 1-3 to 1-5 until all users have at least one social connection, have visited at least three locations, and all locations have been visited by at least five users. This results in the filtered check-in dataset C', which contains 863 users and 2906 locations.
[0108] Step 2: Calculate the geographic center of all the locations a user has visited based on historical check-in records. The steps are as follows:
[0109] Step 2-1: Count the number of users u based on the check-in dataset C' i (1≤i≤863) Number of visited locations m i , and the set of locations it has visited is recorded as L i ={l1,l2,…,l mi}, record L i Each position l in the set j Latitude and longitude <lon j ,lat j >(1≤j≤mi ).
[0110] Step 2-2: Convert the longitude and latitude of each position l i in the set L j j j
[0111]
[0112]
[0113] lon j ' and lat j ' are the converted longitude and latitude of position l j , respectively.
[0114] Step 2-3: Calculate the center point in the 3D coordinate system according to the converted longitude and latitude of all positions:
[0115]
[0116]
[0117]
[0118] where lon j ' and lat j ' are the converted longitude and latitude of position l j , respectively, and m i is the number of positions visited by user u i .
[0119] Step 2-4: Calculate the longitude lon i and latitude lat i of the geographic center point P mi of the set of positions L i visited by user u p = {l1, l2, …, l p}, where X, Y, and Z are the coordinates of the center point in the 3D coordinate system obtained in Step 2-3:
[0120]
[0121]
[0122] Step 3: Define and calculate the general frequency distance and frequency correction distance of user visiting a certain position. The operation steps are as follows:
[0123] Step 3-1: lon j and lat j are the longitude and latitude of position lj Longitude and latitude, lon p and lat p They are user u i The geographic center point P of the visited location i Longitude and latitude, calculate the location l j = <lon j ,lat j >To the geographic center point P i = <lon p ,lat p >Geographical distance:
[0124] dis(P i ,l j )=R*arccos[sinlat p *sinlat j +coslat p *coslat j *cos(lon p -lon j )](twenty two)
[0125] Where R is the radius of the earth, R = 6371 km.
[0126] Step 3-2: User u i Access Location j The general frequency distance dp ij The center point P i To location l j The geographical distance dis(P i ,l j ) multiplied by the user's j Number of check-ins on c j :
[0127] dp ij =dis(P i ,l j )×c j (twenty three)
[0128] Step 3-3: According to user u i In position l j Number of check-ins on c j , set a correction coefficient proportional to the number of check-ins for each distance calculation, user u i Access Location j The frequency correction distance is:
[0129]
[0130] Among them, dis(P i ,lj ) is the position l j to user u i has visited i the geographic center point P i of the geographic distance, cmax is the maximum value of all user check-in times, cmax = 1828.
[0131] Step 4: Based on the set of locations visited by the user, calculate the sum of the general frequency distance and the sum of the frequency correction distance of the user, and then extract the dispersion of each user check-in data. The operation steps are as follows:
[0132] Step 4-1: Calculate the sum of the general frequency distance of each location in the set L i = {l1, l2, …, l mi} visited by user u i :
[0133]
[0134] Where dp ij is the general frequency distance of user u i visiting location l j , m i is the number of locations visited by user u i .
[0135] Step 4-2: Calculate the sum of the frequency correction distance of each location in the set L i = {l1, l2, …, l mi} visited by user u i :
[0136]
[0137] Where, is the frequency correction distance of user u i visiting location l j , m i is the number of locations visited by user u i .
[0138] Step 4-3: Quantify the dispersion characteristics of user u i 's check-in behavior, and define the dispersion disper i of user u i 's check-in data as the ratio of the sum of the frequency correction distance and the sum of the general frequency distance in the set L i of locations visited by the user:
[0139]
[0140] Where m i is the number of locations visited by user u iThe number of visited locations, sdp i is the user u i The sum of the general frequency distance of the visited locations, is the user u i The sum of the frequency correction distance of the visited locations.
[0141] Step 5: Sort all users according to the check-in dispersion, fit the empirical model, and delete the data of several users with high check-in feature dispersion. The operation steps are as follows:
[0142] Step 5-1: Perform steps 2-4 for each user in the check-in data set C' to generate the check-in data dispersion set D = {disper1, disper2, …, disper863} of 863 users. The scatter plot of the check-in data dispersion of the 863 users is shown in FIG. 5. 863 Figure 4
[0143] Step 5-2: Sort the elements in the dispersion set D in descending order, and the sorted dispersion set is denoted as D'.
[0144] Step 5-3: Based on the empirical summary of the related technology for processing natural noise, it is found that there are about 4% to 10% of potential natural noise in the data set. Based on this, the natural noise ratio is set to 6%.
[0145] Step 5-4: Take the first 6% elements in the dispersion set D', record their corresponding user IDs, and regard the check-in data of these users as natural noise. Delete the corresponding check-in data in the check-in data set C'. Update the check-in data set C' to C_Na. The number of users in the C_Na data set is 811.
[0146] Step 6: Convert the check-in data set before and after natural noise filtering into a user-location two-dimensional score matrix respectively. Run different types of location recommendation algorithms, and use the recommendation accuracy index to evaluate the recommendation quality. Compare the recommendation accuracy of different data sets before and after natural noise data filtering, and evaluate the effectiveness and applicability of the proposed technology in the location recommendation system. The operation steps are as follows:
[0147] Step 6-1: Based on the C' check-in data set, generate a user-location two-dimensional score matrix R' = {r ul}, u ∈ [1, 863], l ∈ [1, 2906]. Wherein, u represents the user number, l represents the address number, and r ul represents the score of user u to location l:
[0148]
[0149] Wherein, cul is the number of check-ins of user u at location l.
[0150] Similarly, based on the C_Na check-in dataset, a user-location two-dimensional rating matrix R_Na = {r u'l'}, u' e [1, 811], l' e [1, 2906]. Wherein u' represents the user number, l' represents the address number, r u'l' represents the rating of user u' to location l'.
[0151] Step 6-2: Based on the C' check-in dataset and the R' rating dataset, randomly select 173 users as the target user set AU', run various recommendation algorithms for each target user in the set, and generate a recommendation list.
[0152] Step 6-3: Based on the C_Na check-in dataset and the R_Na rating dataset, randomly select 162 users as the target user set AU_Na, run various recommendation algorithms for each target user in the set, and generate a recommendation list.
[0153] Step 6-4: Use UBCF, IBCF, SVD, FCF and KDE five types of recommendation algorithms to evaluate the recommendation accuracy of the same recommendation algorithm in different datasets one by one. The accuracy rate Precision, recall rate Recall and recommendation precision index F1 of each recommendation algorithm running once for the target user set are the average values of all users in the set for this index.
[0154] Step 6-5: Repeat steps 6-2 to 6-4 for 100 times. The accuracy rate Precision, recall rate Recall and recommendation precision index F1 of each recommendation algorithm are the average values of 100 running results. When the length of the recommendation list N takes the values of 10, 20, 30, 40 and 50 respectively, the bar chart of the comparison of the accuracy rate Precision and the recall rate Recall of each recommendation method before and after natural noise filtering is shown in Figures 5-9 . The comprehensive precision index F1 result is shown in Table 2:
[0155] Table 2 F1 values of each recommendation algorithm in the Brightkite dataset before and after natural noise filtering
[0156]
[0157] Step 6-6: Comparative analysis of the results of each index: the recommendation accuracy index F1 of all recommended algorithms in the C_Na check-in data set and the R_Na rating data set is greater than the recommendation accuracy index F1 value in the C' check-in data set and the R' rating data set, which shows that the proposed technology effectively filters out natural noise data; the precision of all recommended algorithms in the C_Na check-in data set and the R_Na rating data set is greater than the precision value in the C' check-in data set and the R' rating data set, which shows that the method can help the recommended algorithm to find the interested address of the user more accurately; the recall of all recommended algorithms in the C_Na check-in data set and the R_Na rating data set is greater than the recall value in the C' check-in data set and the R' rating data set, which shows that the method can help the recommended algorithm to cover the user's interested location more comprehensively.
[0158] Unlike conventional natural noise filtering methods, the present application is oriented towards a location recommendation system, aims to filter natural noise data in user check-in records, and innovatively proposes a discrete measurement method for the discretization characteristics of user check-in behavior, discriminates natural noise data according to the dispersion of user check-in data, and finally filters natural noise data, which significantly improves the service quality of the recommendation system. The technology proposed by the present application fills the gap in the research of natural noise filtering in the location recommendation system, has broad application prospects in the data preprocessing of e-commerce, location services, social networks and other related platforms, and is expected to be widely used in the location-based social network market.
[0159] The above technical process is only a preferred embodiment of the present application, but it does not represent all the details of the present application. Any modification, equivalent replacement and improvement made by any person skilled in the art within the technical scope disclosed by the present application, within the spirit and principle of the present application, should be included in the protection scope of the present application.
Claims
1.A method for filtering natural noise of a location recommendation system based on check-in data discrete feature quantization, characterized in that, The method comprises the following steps: Step 1: Collect and organize historical check-in records in a location recommendation system to form an original user check-in dataset, filter out users with no social relationship, inactive users and unpopular locations; Step 2: Calculate the geographic center point of all visited locations of a user according to the historical check-in records; Step 3: Define and calculate the general frequency distance and the frequency correction distance of a user visiting a location; Step 3-1: lon j and lat j are the longitude and latitude of the location l j respectively, and lon p and lat p are the longitude and latitude of the geographical center point P i of the locations visited by the user u i , the geographical distance of the location l j = <lon j , lat j > to the geographical center point P i = <lon p , lat p > is computed: dis(P i , j ) = R * arccos [sinlat p * sinlat j + coslat p * coslat j * cos(lon p - lon j )] (8) Wherein, R is the radius of the earth, R = 6371km; Step 3-2: User u i Access location l j General frequency distance dp ij For central point P i To location l j Geographical distance dis(P i , l j ) multiplied by the number of check-ins c j of this user at l j : dp ij = dis(P i , l j ) x c j (9) Step 3-3: According to the user u i the number of check-ins c j on the location l j , a correction factor proportional to the number of check-ins is set for each distance calculation, the user u i accesses the location l j , the frequency correction distance is: where dis(P i , l j ) is the geographic distance from the geographic center point P j to the location l i visited by user u i , and cmax is the maximum value of the number of check-ins by all users. Step 4: Calculate the sum of the general frequency distance and the sum of the frequency correction distance of a user based on the set of locations visited by the user, and then extract the dispersion of each user check-in data; Step 5: Sort all users according to the check-in dispersion, fit an empirical model, and filter and delete the data of several users with high check-in feature dispersion; Step 6: Convert the check-in data set before and after filtering natural noise into a user-location two-dimensional score matrix, run different types of location recommendation algorithms, use the recommendation accuracy index to evaluate the recommendation quality, and compare the recommendation accuracy of different data sets before and after filtering natural noise to evaluate the effectiveness and applicability of the proposed technology in the location recommendation system. 2.The method of claim 1, wherein, Step 1 of the method comprises: Step 1-1: Select the check-in dataset C of the target recommender system, which contains n check-in records, denoted as C = {c1, c2, …, cn}, each check-in record is represented by a five-tuple of user ID, check-in time, geographic latitude, geographic longitude, and location ID, denoted as {userID, time, latitude, longitude, locationID}; n} Step 1-2: According to the latitude and longitude of the location, label the country and city where each check-in record occurs, count and sort the number of locations and check-in times in each region, determine the experimental observation range, and select the corresponding user check-in records; Step 1-3: Delete isolated users and only keep users with at least one social relationship; Step 1-4: Delete inactive users and only keep users who have visited at least Lmin locations; Step 1-5: Delete unpopular locations. If a location is visited by less than Umin users, it is considered to be unpopular and is deleted from the check-in records; Step 1-6: Repeat steps 1-3 to 1-5 until all users have at least one social relationship and have visited at least Lmin locations, and all locations have been visited by at least Lmin users. Organize the filtered check-in dataset C', which contains NU users and NL locations. 3.The method of claim 1, wherein, Step 2 of the method comprises: Step 2-1: Based on the filtered check-in dataset C', count the number of users u i , 1≤i≤NU, the number of locations visited m i , and the set of locations it has visited is recorded as L i ={l1,l2,…,l mi }, record L i Each position l in the set j Latitude and longitude <lon j ,lat j >, 1≤j≤m i , where NU is the number of users in the filtered check-in dataset C'; Step 2-2: Transform the L i coordinates of each position l j in the set to latitude and longitude <lon j , lat j >: lon j 'and lat j 'are the converted longitude and latitude, respectively j Step 2-3: Calculate the center point in the 3D coordinate system according to the converted latitude and longitude of all locations: wherein, Ion j and lat j are the converted longitude and latitude, respectively, of the location l j m i is the number of locations visited by the user u i . Step 2-4: Calculate the user u i The set of visited locations L i = {l1, l2, …, l mi} the geographic center point P i of the longitude lon p and latitude lat p X, Y, Z are the center point coordinates in the 3D coordinate system obtained in step 2-3: 4.The method of claim 1, wherein, Step 4 of the method comprises: Step 4-1: Compute user u i Visited set L i = {l1, l2, …, ln} where each li is a location visited by user u mi Sum of general distance from each location in visited set L where dp ij is the general frequency distance of user u i visiting location l j , m i is the number of locations visited by user u i . Step 4-2: Compute user u i Visited set L i = {l1, l2, …, l mi} the sum of the frequency-corrected distances of each position in wherein, is a user u i accessed location l j a frequency correction distance, m i is a number of locations u i has accessed; Step 4-3: Quantify user u i Discrete features of check-in behavior, define user u i Discreteness of check-in data, disper i The ratio of the sum of the frequency-corrected distances to the sum of the general frequency distances for this user in the set of visited locations L i Among them, m i For user u i Number of locations visited, sdp i is user u i The sum of the general frequency distances of the visited locations, is user u i The sum of the frequency-corrected distances of the visited locations. 5.The method of claim 1, wherein, Step 5 of the method comprises: Step 5-1: Perform steps 2~4 for each user in the filtered check-in dataset C' to generate a set of check-in data dispersion D = {disper1, disper2, …, disperNU} for NU users. NU} Step 5-2: Sort the elements in the dispersion set D in descending order, and the sorted dispersion set is denoted as D'; Step 5-3: Summarize the experience of related technologies for processing natural noise, and set the proportion of natural noise in the dataset to 6%; Step 5-4: Take the first 6% elements in the dispersion set D', record their corresponding user IDs, and consider the check-in data of these users as natural noise. Delete the corresponding check-in data in the check-in dataset C', and update the check-in dataset C' to C_Na. 6.The method of claim 1, wherein, Step 6 comprises: Step 6-1: Based on the filtered C' check-in dataset, generate a user- location two-dimensional score matrix R' = {r ul}, u e [1, NU], l e [1, NL], where u represents the user number, l represents the address number, NU represents the total number of users, NL represents the total number of addresses, r ul represents the score of user u to location l: where c ul is the number of check-ins of user u at location l, and cmax is the maximum number of check-ins of all users. Similarly, based on the C_Na check-in dataset, a user-location two-dimensional score matrix R_Na = {r u'l'}, u'∈[1,0.94×NU], l'∈[1,NL] is generated, wherein u' represents the user number, l' represents the address number, NU represents the total number of users, NL represents the total number of addresses, and r u'l' represents the score of the user u' to the location l'. Step 6-2: Based on the C' check-in dataset and the R' rating dataset, randomly select 20% of the users as a target user set AU', run various recommendation algorithms for each target user in the set, and generate a recommendation list; Step 6-3: Based on the C_Na check-in dataset and the R_Na rating dataset, randomly select 20% of the users as a target user set AU_Na, run various recommendation algorithms for each target user in the set, and generate a recommendation list; Step 6-4: For each recommendation algorithm, evaluate the recommendation accuracy of the same recommendation algorithm in different datasets one by one. The accuracy rate Precision, recall rate Recall, and recommendation accuracy index F1 of each recommendation algorithm running once for the target user set are the average values of all users in the set for this index; Step 6-5: Repeat steps 6-2 to 6-4 for Ntimes times. The accuracy rate Precision, recall rate Recall, and recommendation accuracy index F1 of each recommendation algorithm are the average values of the Ntimes running results; Step 6-6: Compare and analyze the results of each index. If the recommendation accuracy index F1 of the same recommendation algorithm in the C_Na check-in dataset and the R_Na rating dataset is greater than the recommendation accuracy index F1 value in the C' check-in dataset and the R' rating dataset, it means that the proposed technology effectively filters out natural noise data. If the precision rate Precision of the same recommendation algorithm in the C_Na check-in dataset and the R_Na rating dataset is greater than the Precision value in the C' check-in dataset and the R' rating dataset, the method can help the recommendation algorithm to find the interested address of the user more accurately. If the recall rate Recall of the same recommendation algorithm in the C_Na check-in dataset and the R_Na rating dataset is greater than the Recall value in the C' check-in dataset and the R' rating dataset, the method can help the recommendation algorithm to cover the location of interest of the user more comprehensively.