Methods, apparatus, equipment and media for determining target cities in point-of-interest search

By sorting the points of interest twice and filtering out the target cities, the problem of inaccurate search results for points of interest in cross-city searches is solved, resulting in more accurate search results.

CN116775791BActive Publication Date: 2026-06-30NAVINFO

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NAVINFO
Filing Date
2023-06-20
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Existing technologies cannot accurately determine the city where the user's desired point of interest is located when searching for points of interest across cities, resulting in search results that do not meet the user's needs.

Method used

By sorting the retrieved points of interest twice, firstly, several primary points of interest are selected based on non-city distance features, and then the target city is determined based on city distance features, taking into account both the city features of the candidate cities and the distance features between the points of interest and the user's location.

Benefits of technology

It improves the accuracy of search results for points of interest, ensuring that search results better meet users' cross-city search needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116775791B_ABST
    Figure CN116775791B_ABST
Patent Text Reader

Abstract

This invention discloses a method, apparatus, device, and medium for determining a target city in point-of-interest (POI) search. It relates to the field of map retrieval technology. The method includes: ranking retrieved POIs based on non-city distance features to select several POIs as first POIs; the non-city distance features include features unrelated to the city where the POI is located and / or features unrelated to the distance between the POI and the user's location; the city to which the first POI belongs is a candidate city; ranking the candidate cities based on city distance features to select the top-ranked candidate city as the target city; the city distance features include city features of the city where the POI is located and / or distance features between the POI and the user's location. This invention can more accurately determine the target city, thus providing more accurate search results for users with cross-city search needs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of map retrieval technology, and in particular to a method, apparatus, device and medium for determining a target city in point of interest search. Background Technology

[0002] In geographic information systems, a POI (Point of Interest) can be a building, a shop, a mailbox, a bus stop, etc. When users search for POIs using maps, navigation, and other search tools, the map retrieval system typically returns POIs within the user's city. This search result generally matches the user's search needs for POIs within the city. However, some users require POI searches across cities, in which case the POIs returned by the map retrieval system may no longer meet their needs. For example, if a user searches for "Peking University" in Shenzhen, the search result might be the Peking University branch located in Shenzhen, or it might be Peking University located in Beijing; similarly, if a user searches for "Huangshan," the search result might be "Huangshan Village" located in Shenzhen, or it might be "Huangshan Scenic Area" located in Huangshan City.

[0003] Therefore, how to accurately determine the city where the user's point of interest is located when the user has cross-city search needs, that is, how to determine the target city, has become an urgent problem for people in this field to solve. Summary of the Invention

[0004] To address the aforementioned technical problems, embodiments of this specification propose a method, apparatus, device, and medium for determining target cities in point-of-interest (POI) search, which can accurately determine the city where the user's desired POI is located.

[0005] This specification provides an embodiment of a method for determining a target city in a point of interest search, including:

[0006] The retrieved points of interest are sorted based on non-city distance features to select several points of interest as first points of interest; the non-city distance features include features that are not associated with the city where the point of interest is located and / or features that are not associated with the distance between the point of interest and the user's location; the city to which the first point of interest belongs is a candidate city.

[0007] The candidate cities are sorted based on city distance features, and the city ranked first is selected as the target city; the city distance features include the city features of the city where the point of interest is located and / or the distance features between the point of interest and the user's location.

[0008] This specification provides an embodiment of a computer device, comprising:

[0009] The first sorting module sorts the retrieved points of interest based on non-city distance features to select several points of interest as first points of interest; the non-city distance features include features that are not associated with the city where the point of interest is located and / or features that are not associated with the distance between the point of interest and the user's location; the city to which the first point of interest belongs is a candidate city.

[0010] The second sorting module sorts the candidate cities based on city distance features, and selects the first-ranked candidate city as the target city; the city distance features include the city features of the city where the point of interest is located and / or the distance features between the point of interest and the user's location.

[0011] This specification provides an embodiment of a computer device, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the method described above.

[0012] This specification provides an embodiment of a computer-readable storage medium storing a computer program or instructions and / or a computer program product thereon, which, when executed by a processor, implements the steps of the methods described above.

[0013] The above-mentioned at least one technical solution adopted in the embodiments of this specification can achieve the following beneficial effects: the retrieved points of interest are sorted twice. First, several points of interest are sorted and selected as first points of interest based on non-city distance features, and the cities to which the first points of interest belong are determined as candidate cities. Then, the candidate cities are sorted according to the city features of the candidate cities and the distance features of the points of interest and / or the user's location to obtain the target city. The search results obtained are more accurate. Attached Figure Description

[0014] To more clearly illustrate the technical solutions in the embodiments or prior art of this specification, the drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0015] Figure 1 A flowchart illustrating a method for determining a target city in a point-of-interest search, provided as an embodiment of this specification;

[0016] Figure 2 This is a schematic diagram of the structure of a computer device provided in an embodiment of this specification;

[0017] Figure 3 This is a schematic diagram of the structure of a computer device provided in the embodiments of this specification. Detailed Implementation

[0018] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this specification, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this application.

[0019] The embodiments described below are merely preferred embodiments of the present invention and are not intended to limit the scope of the present invention. Various modifications and improvements made by those skilled in the art to the technical solutions of the present invention without departing from the spirit of the present invention should fall within the protection scope defined by the claims of the present invention.

[0020] To address the shortcomings of existing technologies, this solution provides the following embodiments:

[0021] Figure 1 This is a flowchart illustrating a method for determining a target city in a point-of-interest search, as provided in an embodiment of this specification.

[0022] From a hardware perspective, the entity executing this process can be a device or server; from a program perspective, it can be an application running on that device or server. For example... Figure 1 As shown, the process may include the following steps:

[0023] Step 101: Sort the retrieved points of interest based on non-city distance features to select several points of interest as first points of interest; the non-city distance features include features that are not associated with the city where the point of interest is located and / or features that are not associated with the distance between the point of interest and the user's location; the city to which the first point of interest belongs is a candidate city.

[0024] When users search for points of interest (POIs) using navigation or map search systems, they enter query terms. The search system then searches the map or POI index based on these terms, retrieving a large number of POIs. At this point, a simple coarse-ranking model can be used to perform an initial sorting based on fewer POI features such as text similarity, semantic similarity, and type similarity, indexing the top-ranked, predetermined number of POIs.

[0025] In this step, the retrieved points of interest refer to the predetermined number of points of interest that rank highly after the first sorting. Sorting the retrieved points of interest based on non-city distance features corresponds to the second sorting in the overall search process. In this sorting, points of interest are first sorted based on non-city distance features, eliminating the influence of city features and / or distance features on the ranking of points of interest. This sorting retains points of interest that are not located in the user's city and / or are far from the user's location but may be the points of interest the user wants.

[0026] In existing technologies, when sorting retrieved points of interest (POIs), the city where the POI is located and its distance from the user's location are taken into account to obtain the final ranking result. That is, POIs are ranked based on whether the city they are located in is the user's city, their distance from the user's location, and features such as click popularity. This excludes POIs located outside the user's city or those far from the user's location. When a user wants to see POIs outside their city or far from their location, existing technologies cannot provide accurate feedback.

[0027] Step 103: Sort the candidate cities based on city distance features, and select the candidate city ranked first as the target city; the city distance features include the city features of the city where the point of interest is located and / or the distance features between the point of interest and the user's location.

[0028] After the second sorting process identifies the primary points of interest, the cities associated with these points are then sorted—that is, the candidate cities are sorted—to ultimately determine the target city. This sorting, in the context of the entire search process, corresponds to the third sorting. This is done so that the primary points of interest for the target city can be presented to the customer later. This sorting determines the target city based on the city characteristics of the candidate cities and / or the distance characteristics between the points of interest and the user's location, resulting in more accurate search results.

[0029] Figure 1 The method described above sorts the retrieved points of interest twice. First, it sorts and filters out several points of interest based on non-city distance features, and determines the cities to which the first points of interest belong as candidate cities. Then, it sorts the candidate cities according to the city features of the candidate cities and the distance features of the points of interest and / or the user's location to obtain the target city, resulting in more accurate search results.

[0030] Optionally, the ranking of the candidate cities based on city distance features specifically includes:

[0031] The first point of interest is divided according to the city to which it belongs, resulting in several sets of first points of interest; each set of first points of interest corresponds to one of the candidate cities.

[0032] Based on the sorting information of the first interest points, determine the first interest point ranked first in each set of the first interest points;

[0033] The city features of the candidate cities and the interest point features of the first interest point ranked first in the candidate cities are concatenated to obtain the city distance features;

[0034] The candidate cities are ranked based on the city distance feature.

[0035] For example, if a user searches for "ABC" in Nanjing, the search system uses a relatively simple coarse ranking model to perform an initial ranking based on fewer interest point features such as text similarity, semantic similarity, and type similarity, selecting a predetermined number of interest points at the top. Then, a second ranking is performed based on non-city distance features to select several interest points as first interest points. Let's assume the first interest points and their ranking information are: 3 Nanjing_AFG, 5 Nanjing_ADG, 1 Zhenjiang_ABC, 2 Zhenjiang_ABCD, 4 Shanghai_ACF.

[0036] The first point of interest is divided according to the city to which it belongs, resulting in three sets of first points of interest: Nanjing City set: [Nanjing City_AFG, Nanjing City_ADG], Zhenjiang City set: [Zhenjiang City_ABC, Zhenjiang City_ABCD], and Shanghai City set: [Shanghai City_ACF].

[0037] Based on the ranking information of the first points of interest, the first point of interest ranked first in each set of first points of interest is determined. Specifically, in the Nanjing set, Nanjing_AFG and Nanjing_ADG rank third and fifth respectively, so the first point of interest for the Nanjing set is determined as Nanjing_AFG. Similarly, the first point of interest for the Zhenjiang set is determined as Zhenjiang_ABC, and the first point of interest for the Shanghai set is determined as Shanghai_ACF.

[0038] The city distance feature is obtained by concatenating the city features of the candidate cities with the interest point features of the first-ranked interest point within each candidate city. Specifically, the city distance feature of Nanjing is obtained by concatenating the city features of Nanjing_AFG with the interest point features of Nanjing_AFG. The city distance feature of Zhenjiang is obtained by concatenating the city features of Zhenjiang_ABC with the interest point features of Zhenjiang_ABC. The city distance feature of Shanghai is obtained by concatenating the city features of Shanghai_ACF with the interest point features of Shanghai_ACF.

[0039] Then, the candidate cities are ranked based on the city distance feature.

[0040] First, when users search for points of interest, their ultimate goal is to find a specific point of interest. The top-ranked point of interest among the candidate cities is most likely the search result the user wants; therefore, the characteristics of this top-ranked point of interest in each candidate city influence the selection of the candidate cities. Second, the characteristics of each candidate city also influence the selection of the candidate cities. This method, by comprehensively considering both the city characteristics of the candidate cities and the characteristics of the top-ranked point of interest within each candidate city when ranking them, yields more accurate results.

[0041] The city features include a first city feature indicating whether the candidate city is the user's city; a second city feature indicating whether the candidate city is a surrounding city of the user's city; a third city feature indicating whether the candidate city is a city within the user's province; a fourth city feature indicating the number of points of interest (POIs) in the POI set corresponding to the candidate city; and a fifth city feature indicating the probability (first selection probability) that the candidate city is selected by historical users when searching for POIs in the user's city. The first point of interest (POI) is one or more of the sixth city features that represent the probability of a user's choice (the second choice probability); the POI features include one or more of the following: a first POI feature representing the textual similarity between the first POI and the query term; a second POI feature representing the semantic similarity between the first POI and the query term; a third POI feature representing the type similarity between the first POI and the query term; a fourth POI feature representing the popularity ranking of the first POI; a fifth POI feature representing the click popularity of the first POI; and an eighth POI feature representing the distance between the first POI and the user's location.

[0042] Text similarity refers to the degree of similarity between the characters of the first point of interest (POI) and the characters of the query term. For example, if the query term is "ABC" and the name of the POI is also "ABC," and both contain identical characters, the text similarity is 1. Semantic similarity refers to the similarity between the actual meaning represented by the query term and the actual meaning represented by the name of the POI. For example, if the query term is "restaurant" and the POI name is "restaurant," the semantic similarity is high. Type similarity refers to the similarity between the type of the query term and the type of the POI. For example, if the query term is "Fragrant Hills Park" and the POI name is "Fragrant Hills Scenic Area," the type similarity is high, as both belong to scenic areas. If the POI name is "Fragrant Hills Barbecue," the type similarity is low, as one belongs to a scenic area and the other to a restaurant. Popularity refers to the public awareness of the POI, which can be ranked based on certain rules. For example, "Quanjude Roast Duck Restaurant" has higher popularity than other roast duck restaurants. Click popularity indicates the number of times the POI is clicked within a preset time period, such as 5000 times. The eighth point of interest feature is the distance between the first point of interest and the user's location. Taking distance into account can help in selecting points of interest with the same name and type that exist in two or more adjacent cities. For example, if there is a residential community called XX in Beijing, and Langfang City, which is adjacent to Beijing, also has a residential community called XX, when a user searches for "XX" in Beijing, the residential community called XX in Langfang City is more likely to be selected if the user's location is closer to it.

[0043] If a user searches for points of interest in Nanjing using "ABC" as the query term, then the user's city is Nanjing. The first point of interest, Nanjing_AFG, has the following characteristics: First, it is the user's city; second, it is not a city surrounding the user's city; third, it is not a city within the user's province. It should be noted that the third characteristic applies only to cities outside the user's city. If a city is the user's city, it is not within the user's province; fourth, it is 2, meaning there are 2 points of interest within the Nanjing city set; and fifth, it represents the probability that a user historically selected a point of interest within Nanjing when searching for points of interest in their own city. To calculate the probability of the first selection, search click logs of users searching in Nanjing within a preset time period can be retrieved. This calculation does not distinguish between different types of points of interest; points of interest can include supermarkets, schools, tourist attractions, etc. For example, if 1000 searches for points of interest in Nanjing are analyzed, and 990 of the final selections are in Nanjing, then the probability of the first selection is 0.99. The sixth city feature is the probability that Nanjing is selected by a historical user when searching for points of interest of the type to which the first point of interest belongs in the user's city. When determining the second selection probability, the type of ABC is first determined. Assuming ABC represents a tourist attraction, then it is the probability that a historical user ultimately selects a tourist attraction within Nanjing when searching for tourist attractions (the attraction is not limited to ABC and can have other names) in their city. For example, if data from 1000 searches for tourist attractions in Nanjing is collected, and the final selection result is in Nanjing in 210 cases, then the second selection probability is 0.21.

[0044] It should be noted that the above method is a preferred embodiment, which obtains the city distance feature by concatenating the city features of the candidate cities with the interest point features of the first ranked interest point within the candidate cities. As a parallel, less desirable embodiment, the city features of the candidate cities can also be directly used as the city distance feature. That is, when ranking the candidate cities, they are ranked solely based on their city features. Because this step involves selecting cities, the city features of the candidate cities have a significant impact on the selection. Selecting cities based on their city features has a higher probability of yielding correct results. Since the features considered are relatively simple, the computational load is small, and the speed of determining the target city is fast.

[0045] As a parallel, less desirable embodiment, the interest point features of the first interest point ranked first among the candidate cities can also be directly used as the city distance features. The interest point features of the first interest point include an eighth interest point feature used to represent the distance between the first interest point and the user's location. That is, when ranking the candidate cities, the candidate cities are ranked only based on the interest point features of the first interest point ranked first among the candidate cities.

[0046] Optionally, the city distance feature includes the city features of the candidate cities and the interest features of the first interest point ranked first within the candidate cities; the ranking of the candidate cities based on the city distance feature specifically includes:

[0047] A city dimension vector is generated based on the city features of the candidate cities; a city optimal result dimension vector is generated based on the interest features of the first interest point ranked first in the candidate cities; the city dimension vector and the city optimal result dimension vector are concatenated to form a city selection feature vector.

[0048] The city selection feature vector is input into the city selection model for scoring and ranking; the city selection model is a ranking model based on the decision tree algorithm.

[0049] Following the previous example, a city dimension vector is generated based on the city features of the candidate cities. The city dimension vector corresponding to the first point of interest, Nanjing_AFG, is [1, 0, 0, 0.99, 0.21, 2], where 1 represents the user's city, 0 represents not being a surrounding city, 0 represents not being a city within the province, 0.99 represents the first selection probability, 0.21 represents the second selection probability, and 2 represents having 2 points of interest.

[0050] The city dimension vector corresponding to the first point of interest, Zhenjiang City_ABC, is [0, 1, 1, 0.71, 0.86, 2]. Here, 0 represents that it is not the user's city, 1 represents a surrounding city, 1 represents a city within the province, 0.71 represents the probability of the first choice, 0.86 represents the probability of the second choice, and 2 represents that there are two points of interest.

[0051] The city dimension vector corresponding to the first point of interest, Shanghai (ACF), is [0, 0, 0, 0.41, 0.1, 1]. Here, 0 represents that it is not the user's city, 0 represents that it is not a surrounding city, 0 represents that it is not a city within the province, 0.41 represents the probability of the first choice, 0.1 represents the probability of the second choice, and 1 represents that there are 2 points of interest.

[0052] The optimal city result dimension vector is generated based on the interest features of the first interest point ranked first among the candidate cities. The interest point feature vector corresponding to the first interest point, Nanjing_AFG, is [0.1, 0.1, 0.2, 3, 30, 10], where 0.1 represents the text similarity between the first interest point and the query term, 0.2 represents the type similarity between the first interest point and the query term, 3 represents the popularity ranking of the first interest point, 30 represents the number of clicks on the first interest point, and 10 represents the distance between the first interest point and the user's location as 10 kilometers.

[0053] Similarly, the feature vector of the first point of interest, Zhenjiang City_ABC, can be obtained as [1, 1, 0.9, 5, 1020, 60]; the feature vector of the first point of interest, Shanghai City_ACF, can be obtained as [0.1, 0.1, 0.2, 2, 20, 80].

[0054] The city dimension vector and the city best result dimension vector are concatenated to form the city selection feature vector. This concatenation can refer to a simple combination of the city dimension vector and the city best result dimension vector; it can also refer to removing certain feature dimensions and then combining them, where the order of the dimensions can remain the same or be changed; or it can refer to merging certain feature dimensions into a single feature dimension before combining them.

[0055] Let's take a simple combination of the city dimension vector and the optimal result dimension vector of the city as an example:

[0056] After concatenation: The city selection feature vector of Nanjing is [1, 0, 0, 0.99, 0.21, 2, 0.1, 0.1, 0.2, 3, 30, 10];

[0057] The city selection feature vector for Zhenjiang City is [0, 1, 1, 0.71, 0.86, 2, 1, 1, 0.9, 5, 1020, 60];

[0058] The city selection feature vector for Shanghai is [0, 0, 0, 0.41, 0.1, 1, 0.1, 0.1, 0.2, 2, 20, 80].

[0059] The city selection feature vector is input into the city selection model for scoring and ranking; the city selection model is a ranking model based on the decision tree algorithm. Specifically, the ranking model based on the decision tree algorithm can be a lightGBM (lightGradientBoosting Machine) model.

[0060] Assume the scoring results are as follows: First point of interest Nanjing City_AFG: [1, 0, 0, 0.99, 0.21, 2, 0.1, 0.1, 0.2, 3, 30, 10]; the score is 0.2.

[0061] First point of interest: Zhenjiang City_ABC: [0, 1, 1, 0.71, 0.86, 2, 1, 1, 0.9, 5, 1020, 60]; score: 0.9.

[0062] First point of interest: Shanghai (ACF): [0, 0, 0, 0.41, 0.1, 1, 0.1, 0.1, 0.2, 2, 20, 80]. Score: 0.12.

[0063] Zhenjiang City received the highest score and ranked first, and was ultimately selected as the target city.

[0064] This method employs a decision tree algorithm for ranking, based on city selection features. First, the decision tree algorithm, being a machine learning model, can rank cities based on a wider range of features and points of interest, resulting in more accurate rankings that better meet user needs. Second, the machine learning model, trained using the ranking scores it relies on, can quickly and cost-effectively adapt to updates to the ranking module, reducing iteration costs and improving efficiency. Compared to manually defined rules and thresholds, this method offers significant advantages in selecting target cities.

[0065] For example, a manually defined rule might be: if the city of interest is a surrounding city of the user's city, its popularity ranking is above 5, the text similarity between the interest point and the query term is greater than 4, and its click popularity is above 5000; while if the city of interest is the user's city, its popularity ranking is less than 3, and its click popularity is less than 5000; then the interest point in the surrounding city would be selected as the final result. First, manually defined rules are limited by complexity, allowing for a limited amount of information and making it difficult to encompass many features. For situations with a large number of cities to choose from, the accuracy of the returned results is limited. Second, manually defined rules are based on the scoring results in the fine-ranking process, making them strongly coupled with the previous ranking module. When the scores or distribution of the fine-ranking results change, the manually defined rules need to be manually modified and adjusted, resulting in low update efficiency and high cost.

[0066] It should be noted that the above method is a preferred embodiment, generating a city dimension vector based on the city features of the candidate cities; generating a city optimal result dimension vector based on the interest features of the first interest point ranked first within the candidate cities; and concatenating the city dimension vector and the city optimal result dimension vector to form a city selection feature vector. As a parallel, less desirable embodiment, a city dimension vector can also be generated based on the city features of the candidate cities. This city dimension vector can then be directly used as the city selection feature vector. Finally, the city dimension vector is input into the city selection model for scoring and ranking.

[0067] As a parallel, less desirable embodiment, a city-optimal result dimension vector can also be generated based on the interest features of the first interest point ranked first among the candidate cities. This city-optimal result dimension vector is then directly used as the city selection feature vector. Finally, the city-optimal result dimension vector is input into the city selection model for scoring and ranking.

[0068] Optionally, the method further includes:

[0069] The system feeds back several primary points of interest (POIs) within the target city to the client, allowing the client to display these POIs in a list format; and / or,

[0070] Several primary points of interest within the target city are fed back to the client so that the client can display these primary points of interest on the map.

[0071] For example, after a user enters a query in the search box of the search system, the search system uses the methods described above to determine the target city and then sends several primary points of interest (POIs) within that target city back to the client. This allows the client's search box to display these POIs in a dropdown list, enabling the user to select the desired POI.

[0072] Alternatively, the client may display a map area next to the search box. When displaying the map in the map area, the map is centered on the target city. Within the corresponding area of ​​the target city on the map, several points of interest within the target city are displayed in the form of markers.

[0073] Optionally, before feeding back the plurality of first points of interest within the target city to the client, the method further includes:

[0074] Based on the sorting information of the first points of interest, several first points of interest within the target city are sorted so that the client can display the several first points of interest according to the sorting.

[0075] When displaying several primary points of interest (POIs) within a target city in the dropdown list corresponding to the search box on the client side, these POIs can be sorted according to their ranking information. This allows the client to display the POIs in the correct order. If there are many POIs, they cannot all be displayed on a single page and require pagination. In this case, displaying them by ranking ensures that the POIs listed earlier in the ranking are more likely to be the ones the user needs, making it easier for the user to click and select.

[0076] Optionally, the ranking of retrieved points of interest based on non-urban distance features specifically includes:

[0077] Interest point feature vectors are generated based on the non-urban distance features; the non-urban distance features include a first interest point feature for representing the text similarity between the interest point and the query term, a second interest point feature for representing the semantic similarity between the interest point and the query term, a third interest point feature for representing the type similarity between the interest point and the query term, a fourth interest point feature for representing the popularity ranking of the interest point, a fifth interest point feature for representing the click popularity of the interest point, a sixth interest point feature for representing the number of child nodes of the interest point, and a seventh interest point feature for representing whether the interest point is located in an urban area.

[0078] The feature vectors of the interest points are input into the first ranking model to rank the interest points.

[0079] Among them, the type weight is used to represent the importance of the type to which the point of interest belongs. For example, the point of interest Palace Museum is a 5A-level scenic spot and has a high type weight; while Xiangshan Village is a village and has a low type weight. The number of child nodes refers to the number of child points of interest that are associated with the point of interest and have a lower level. For example, if the point of interest is XX University, then XX University Parking Lot, XX University East Gate, etc. are child points of interest of XX University.

[0080] Optionally, before sorting the searched interest points based on interest point features to select several interest points as the first interest point, the method further includes:

[0081] Obtain the query terms input by the user to search for points of interest;

[0082] Based on the query terms, a search is performed in the map index database to obtain multiple points of interest.

[0083] The process involves searching the map index database based on query terms, which will retrieve a huge number of points of interest (POIs). At this point, a relatively simple coarse ranking model can be used to perform an initial sorting based on fewer POI features such as text similarity, semantic similarity, and type similarity, selecting the top-ranked POIs from a predetermined number.

[0084] Based on the same idea, embodiments of this specification also provide computer devices corresponding to the above methods.

[0085] Figure 2 This is a schematic diagram of the structure of a computer device provided as an embodiment of this specification. Figure 2 As shown, it includes:

[0086] The first sorting module 201 sorts the retrieved points of interest based on non-city distance features to select a number of points of interest as first points of interest; the non-city distance features include features that are not associated with the city where the point of interest is located and / or features that are not associated with the distance between the point of interest and the user's location; the city to which the first point of interest belongs is a candidate city.

[0087] The second sorting module 202 sorts the candidate cities based on city distance features, and selects the first-ranked candidate city as the target city; the city distance features include the city features of the city where the point of interest is located and / or the distance features between the point of interest and the user's location.

[0088] Optionally, the second sorting module includes:

[0089] The segmentation module is used to segment the first point of interest according to the city to which it belongs, resulting in several sets of first points of interest; each set of first points of interest corresponds to one of the candidate cities.

[0090] The first determining module is used to determine the first interest point ranked first in each set of first interest points based on the sorting information of the first interest points;

[0091] The first splicing module is used to splice the city features of the candidate city and the interest point features of the first interest point ranked first in the candidate city to obtain the city distance features;

[0092] The first sub-sorting module is used to sort the candidate cities based on the city distance feature.

[0093] Optionally, the city distance feature includes the city features of the candidate cities and the interest features of the first interest points ranked first within the candidate cities, and the second ranking module includes:

[0094] The first vector generation module is used to generate a city dimension vector based on the city features of the candidate cities; generate a city best result dimension vector based on the interest features of the first interest point ranked first in the candidate cities; and concatenate the city dimension vector and the city best result dimension vector into a city selection feature vector.

[0095] The second sub-sorting module is used to input the city selection feature vector into the city selection model for scoring and sorting; the city selection model is a sorting model based on the decision tree algorithm.

[0096] Optionally, the computer device further includes:

[0097] The first feedback module is used to feed back several first points of interest within the target city to the client, so that the client can display the several first points of interest in list form; and / or,

[0098] The second feedback module is used to feed back several first points of interest within the target city to the client so that the client can display the several first points of interest on the map.

[0099] Optionally, the computer device further includes:

[0100] The third sorting module is used to sort the several first points of interest in the target city based on the sorting information of the first points of interest before feeding them back to the client, so that the client can display the several first points of interest according to the sorting.

[0101] Optionally, the first sorting module includes:

[0102] The second vector generation module is used to generate interest point feature vectors based on the non-urban distance features. The non-urban distance features include a first interest point feature representing the text similarity between the interest point and the query term, a second interest point feature representing the semantic similarity between the interest point and the query term, a third interest point feature representing the type similarity between the interest point and the query term, a fourth interest point feature representing the popularity ranking of the interest point, a fifth interest point feature representing the click popularity of the interest point, a sixth interest point feature representing the number of child nodes of the interest point, and a seventh interest point feature representing whether the interest point is located in an urban area.

[0103] The third sub-sorting module is used to input the feature vector of the interest point into the first sorting model to sort the interest points.

[0104] Optionally, the computer device further includes:

[0105] The acquisition module is used to acquire the query terms input by the user for searching points of interest;

[0106] The retrieval module is used to perform a retrieval in the map index database based on the query terms to obtain multiple points of interest.

[0107] Based on the same idea, the embodiments of this specification also provide computer devices corresponding to the above methods.

[0108] Figure 3 This is a schematic diagram of the structure of a computer device provided as an embodiment of this specification. Figure 3 As shown, the computer device 300 may include a memory 330, a processor 310, and a computer program 320 stored in the memory, wherein the processor executes the computer program to implement the steps of any of the methods described above.

[0109] Based on the same idea, embodiments of this specification also provide a computer-readable storage medium corresponding to the above methods, which stores a computer program or instructions and / or a computer program product thereon, which, when executed by a processor, implements the steps of any of the methods described above.

[0110] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on its differences from other embodiments. In particular, for... Figure 3 As the device shown is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.

[0111] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program a digital system themselves to "integrate" it onto a PLD, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should understand that by simply performing some logic programming on the method flow using one of these hardware description languages ​​and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.

[0112] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the memory's control logic. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, ASICs, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means that can be included within it to implement various functions can also be considered as structures within the hardware component. Alternatively, the means that can be used to implement various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0113] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.

[0114] For ease of description, the above devices are described separately by function as various units. Of course, in implementing this application, the functions of each unit can be implemented in one or more software and / or hardware.

[0115] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (which may include, but are not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0116] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, produce a machine that can be used to implement the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0117] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture that may include instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0118] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that can be used to implement a process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0119] In a typical configuration, a computing device may include one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0120] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0121] Computer-readable media can include both permanent and non-permanent, removable and non-removable media, and information storage can be achieved by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media can include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital character versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media cannot include transient computer-readable media, such as modulated data signals and carrier waves.

[0122] It should also be noted that the terms "may include," "comprise," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that may include a list of elements may include not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "may include a…" does not exclude the presence of other identical elements in the process, method, article, or apparatus that may include said element.

[0123] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (which may include, but are not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0124] This application can be described in the general context of computer-executable instructions, such as program modules, that are executed by a computer. Generally, program modules can include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0125] The above description is merely an embodiment of this application and should not be construed as limiting the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A method for determining a target city in a point of interest search, characterized by, include: The retrieved points of interest are sorted based on non-city distance features to select several points of interest as first points of interest; the non-city distance features include features that are not associated with the city where the point of interest is located and / or features that are not associated with the distance between the point of interest and the user's location; the city to which the first point of interest belongs is a candidate city. The first point of interest is divided into several sets of first points of interest based on the city to which it belongs; each set of first points of interest corresponds to a candidate city; based on the ranking information of the first points of interest, the first point of interest ranked first in each set of first points of interest is determined; the city features of the candidate city and the interest features of the first point of interest ranked first in the candidate city are concatenated to obtain the city distance features; the candidate cities are ranked based on the city distance features to select the candidate city ranked first as the target city; the city distance features include the city features of the city where the point of interest is located and / or the distance features between the point of interest and the user's location.

2. The method as described in claim 1, characterized in that, The city distance feature includes the city features of the candidate cities and the interest features of the first interest point ranked first within the candidate cities; the ranking of the candidate cities based on the city distance feature specifically includes: A city dimension vector is generated based on the city features of the candidate cities; a city optimal result dimension vector is generated based on the interest features of the first interest point ranked first in the candidate cities; the city dimension vector and the city optimal result dimension vector are concatenated to form a city selection feature vector. The city selection feature vector is input into the city selection model for scoring and ranking; the city selection model is a ranking model based on the decision tree algorithm.

3. The method as described in claim 1, characterized in that, The method further includes: The system feeds back several primary points of interest (POIs) within the target city to the client, allowing the client to display these POIs in a list format; and / or, Several primary points of interest within the target city are fed back to the client so that the client can display these primary points of interest on the map.

4. The method as described in claim 3, characterized in that, Before feeding back the number of first points of interest within the target city to the client, the method further includes: Based on the sorting information of the first points of interest, several first points of interest within the target city are sorted so that the client can display the several first points of interest according to the sorting.

5. The method as described in claim 1, characterized in that, The ranking of retrieved points of interest based on non-urban distance features specifically includes: Interest point feature vectors are generated based on the non-urban distance features; the non-urban distance features include a first interest point feature for representing the text similarity between the interest point and the query term, a second interest point feature for representing the semantic similarity between the interest point and the query term, a third interest point feature for representing the type similarity between the interest point and the query term, a fourth interest point feature for representing the popularity ranking of the interest point, a fifth interest point feature for representing the click popularity of the interest point, a sixth interest point feature for representing the number of child nodes of the interest point, and a seventh interest point feature for representing whether the interest point is located in an urban area. The feature vectors of the interest points are input into the first ranking model to rank the interest points.

6. The method as described in claim 1, characterized in that, Before ranking the retrieved points of interest based on non-urban distance features to select several points of interest as the first point of interest, the process also includes: Obtain the query terms input by the user to search for points of interest; Based on the query terms, a search is performed in the map index database to obtain multiple points of interest.

7. A computer device, characterized in that, include: The first sorting module sorts the retrieved points of interest based on non-city distance features to select a number of points of interest as first points of interest; the non-city distance features include features that are not associated with the city where the point of interest is located and / or features that are not associated with the distance between the point of interest and the user's location. The city to which the first point of interest is located is a candidate city; The second sorting module divides the first point of interest (POI) into several sets based on the city to which it belongs; each set of POIs corresponds to a candidate city; based on the sorting information of the POIs, it determines the first POI ranked first in each set of POIs; it concatenates the city features of the candidate city and the interest features of the first POI ranked first in the candidate city to obtain city distance features; it sorts the candidate cities based on the city distance features to select the first POI ranked first as the target city; the city distance features include the city features of the city where the POI is located and / or the distance features between the POI and the user's location.

8. A computer device, comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program or instructions stored thereon, and / or a computer program product, characterized in that, When the computer program or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 6.