POI recommendation method and device, computer equipment and storage medium
By integrating multi-dimensional POI hit attributes to determine the recall score, the problem of unreasonable recommendations in traditional POI recommendation methods is solved and the user experience is improved.
Patent Information
- Application Number
- CN202510635933.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-16
- Publication Date
- 2025-09-26
AI Technical Summary
Traditional POI recommendation methods use different POIs that users are interested in in different scenarios, resulting in unreasonable recommendations and poor user experience.
By introducing POI hit attributes, integrating the tag attributes of scene type tags, scene portrait tags and user portrait tags, as well as the non-tag attributes of POI popularity, POI configuration information, preset city codes and preset parent-child relationship identifiers, the recall score of the candidate POI is determined, thereby improving the rationality and accuracy of the recall score.
The rationality and accuracy of POI recommendations are improved, and the user experience is enhanced.
Smart Images

Figure CN120705391A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of map technology, and in particular to a POI recommendation method, apparatus, computer equipment, and storage medium. Background Art
[0002] Point of Interest (POI) cards are a new way to display POI information on traditional maps. As people's travel scenarios become increasingly diverse, their demands for reliable and personalized map information are also increasing. Given the large number of POIs to be displayed on a map, discovering more content that users may be interested in is crucial.
[0003] In traditional technologies, POIs that overlap with the user's route area are usually selected as target POIs based on clustering algorithms, and target POIs with higher priorities are displayed.
[0004] Although this method can recommend POIs to users, users in different scenarios may be interested in different POIs when passing through the same area. Therefore, there is a problem of unreasonable POI recommendation, which leads to a poor user experience. Summary of the Invention
[0005] Based on this, it is necessary to provide a POI recommendation method, apparatus, computer device and storage medium that can improve the rationality of POI recommendation and thus enhance user experience in response to the above technical problems.
[0006] In a first aspect, the present application provides a POI recommendation method, comprising:
[0007] Obtain recommended scene data and at least one candidate point of interest (POI);
[0008] Recalling POIs from at least one candidate POI based on the recommended scene data, and determining POI hit attributes of the recalled POIs; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene portrait tag, and a user portrait tag; and the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier;
[0009] Determine the recall score of each candidate POI based on the POI hit attributes of the recalled POI;
[0010] A POI to be recommended is selected from at least one candidate POI according to the recall score of each candidate POI.
[0011] In one embodiment, a recall score of each candidate POI is determined based on the POI hit attributes of the recalled POIs, including: for each candidate POI, determining the POI score of the candidate POI based on the tag hit status of at least one tag in the tag attributes; and determining the recall score of the candidate POI based on the POI score of the candidate POI and the attribute values of the non-tag attributes.
[0012] In one embodiment, a recall score of a candidate POI is determined based on the POI score and the attribute value of the non-label attribute of the candidate POI, including: sorting the POI score of each candidate POI to obtain a sequence score of the corresponding candidate POI; and determining the recall score of the candidate POI based on the sequence score and the attribute value of the non-label attribute of the candidate POI.
[0013] In one embodiment, the recall score of each candidate POI is determined based on the POI hit attribute of the recalled POI, including:
[0014] For each candidate POI, the scene score of the candidate POI is determined based on the hit status of the scene type tag and / or scene portrait tag; the user score of the candidate POI is determined based on the hit status of the user portrait tag; for the attribute value of each non-tag attribute, the attribute score of the corresponding non-tag attribute is determined; and the scene score of the candidate POI is determined based on at least one of the scene score, user score and attribute score of each non-tag attribute.
[0015] In one embodiment, selecting a POI to be recommended from at least one candidate POI based on the recall score of each candidate POI includes: sorting the at least one candidate POI based on the recall score of each candidate POI to obtain a POI sequence; updating the POI sequence based on an upper limit of POIs of the same category; and selecting the POI to be recommended from the updated POI sequence.
[0016] In one embodiment, selecting the POI to be recommended from the updated POI sequence includes: sequentially selecting unprocessed candidate POIs from the POI sequence as the POI to be processed; if the local cumulative number of POIs to be recommended in the POI category to which the POI to be processed belongs does not exceed the upper limit of POIs of the same category, then selecting the POI to be processed as the POI to be recommended; if the local cumulative number of POIs to be recommended in the POI category to which the POI to be processed belongs exceeds the upper limit of POIs of the same category, then no longer selecting the POI to be processed as the POI to be recommended; wherein the local cumulative number is set to 0 when it exceeds a preset update window size.
[0017] In one embodiment, the method further includes: updating the POIs to be recommended based on the recall scores and / or POI categories of the POIs to be recommended that have an overlapping relationship; and / or updating the POIs to be recommended based on the density of the POIs to be recommended in the same area; and displaying the updated POIs to be recommended on the map.
[0018] In one embodiment, obtaining at least one candidate point of interest (POI) includes: obtaining at least one initial POI based on a POI priority that matches a map scale; determining a POI requirement category based on a recommendation mode and / or a search field in the recommendation scenario data; and selecting at least one candidate POI from the at least one initial POI based on the POI requirement category.
[0019] In one embodiment, the recommended scene data also includes at least one recall mode; POI recall is performed from at least one candidate POI based on the recommended scene data, including at least one of the following: in a scene category recall mode, POI recall is performed from at least one candidate POI based on the scene category in the recommended scene data; in a scene keyword recall mode, POI recall is performed from at least one candidate POI based on the video keyword in the recommended scene data; in a user portrait recall mode, POI recall is performed from at least one candidate POI based on the user portrait data; in a landmark recall mode, POIs with landmark attributes are recalled from at least one candidate POI; in a media information recall mode, POIs associated with media information are recalled from at least one candidate POI; in a depth information recall mode, POIs with depth information are recalled from at least one candidate POI; in a city code recall mode, POIs with a preset city code are recalled from at least one candidate POI.
[0020] In a second aspect, the present application further provides a POI recommendation device, comprising:
[0021] An acquisition module is used to acquire recommended scene data and at least one candidate point of interest (POI);
[0022] A recall module is configured to recall POIs from at least one candidate POI based on the recommended scene data and determine POI hit attributes of the recalled POIs; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene portrait tag, and a user portrait tag; and the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier;
[0023] A determination module, configured to determine a recall score of each candidate POI based on the POI hit attributes of the recalled POI;
[0024] The selection module is configured to select a POI to be recommended from at least one candidate POI according to the recall score of each candidate POI.
[0025] In a third aspect, the present application further provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0026] Obtain recommended scene data and at least one candidate point of interest (POI);
[0027] Recalling POIs from at least one candidate POI based on the recommended scene data, and determining POI hit attributes of the recalled POIs; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene portrait tag, and a user portrait tag; and the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier;
[0028] Determine the recall score of each candidate POI based on the POI hit attributes of the recalled POI;
[0029] A POI to be recommended is selected from at least one candidate POI according to the recall score of each candidate POI.
[0030] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:
[0031] Obtain recommended scene data and at least one candidate point of interest (POI);
[0032] Recalling POIs from at least one candidate POI based on the recommended scene data, and determining POI hit attributes of the recalled POIs; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene portrait tag, and a user portrait tag; and the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier;
[0033] Determine the recall score of each candidate POI based on the POI hit attributes of the recalled POI;
[0034] A POI to be recommended is selected from at least one candidate POI according to the recall score of each candidate POI.
[0035] In a fifth aspect, the present application further provides a computer program product, comprising a computer program, which, when executed by a processor, implements the following steps:
[0036] Obtain recommended scene data and at least one candidate point of interest (POI);
[0037] Recalling POIs from at least one candidate POI based on the recommended scene data, and determining POI hit attributes of the recalled POIs; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene portrait tag, and a user portrait tag; and the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier;
[0038] Determine the recall score of each candidate POI based on the POI hit attributes of the recalled POI;
[0039] A POI to be recommended is selected from at least one candidate POI according to the recall score of each candidate POI.
[0040] The above-mentioned POI recommendation method, apparatus, computer equipment and storage medium introduce POI hit attributes, integrate the tag attributes of scene type tags, scene portrait tags and user portrait tags, as well as the non-tag attributes of POI popularity, POI configuration information, preset city code and preset parent-child relationship identifier, and determine the recall score of candidate POIs by combining them with multi-dimensional hit attributes, thereby improving the rationality of recall score determination and avoiding the deviation of recall score under a single dimension, which affects the accuracy of selecting POIs to be recommended. POIs to be recommended are then selected based on the recall score of each candidate POI, avoiding the problem of poor rationality of POI selection caused by selecting POIs only based on priority. This further increases the diversity of POI selection, improves the accuracy and rationality of selecting POIs to be recommended, and thus improves the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following briefly introduces the drawings required for use in the embodiments or related technical descriptions. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0042] Figure 1 A schematic diagram of the process of the first POI recommendation method provided in this embodiment;
[0043] Figure 2 A schematic flow chart of the first recall score determination step provided in this embodiment;
[0044] Figure 3 A schematic diagram of the flow chart of the second recall score determination step provided in this embodiment;
[0045] Figure 4 A flowchart of a recommended POI selection step provided in this embodiment;
[0046] Figure 5 A flowchart of a map updating step provided in this embodiment;
[0047] Figure 6 A structural block diagram of a POI recommendation device provided in this embodiment;
[0048] Figure 7 This is a diagram of the internal structure of a computer device provided in this embodiment. DETAILED DESCRIPTION
[0049] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0050] In an exemplary embodiment, Figure 1 As shown, a POI recommendation method is provided. This embodiment uses the method applied to a terminal as an example for illustration. It is understandable that the method can also be applied to a server, or to a system including a terminal and a server, and implemented through interaction between the terminal and the server. In this embodiment, the method includes the following steps:
[0051] S110: Obtain recommended scene data and at least one candidate POI.
[0052] Recommended scene data can be understood as scene data corresponding to recommended scenes that match the user's current scene. Optionally, the recommended scene data can include scene categories, video keywords, recommendation modes, search fields, and at least one recall mode. Recommended modes can include vehicle-following mode, map browsing mode, route overview mode, and destination perimeter viewing mode. Vehicle-following mode can be understood as a mode that automatically locks onto a target vehicle and maintains a preset following distance, enabling semi-autonomous or fully autonomous driving without user intervention. Map browsing mode can be understood as a mode in which the user is in a map visualization interface and autonomously exploring map information. Route overview mode can be understood as a mode that displays the driving route using a simplified route graphic (e.g., a line graph), key node annotations (e.g., toll booths, service areas), and a trip summary (total mileage, estimated travel time). Destination perimeter viewing mode can be understood as a mode that displays map information within a preset radius centered on the destination. Candidate points of interest can be understood as points of interest that are potentially of interest to the user, selected from a large pool of points of interest.
[0053] In some embodiments, the method for obtaining recommended scene data is: in response to a scene analysis request, analyzing the user's scene and user habits, and determining the recommended scene recommended for the user; obtaining the scene category, video keywords, recommendation mode, search field and recall mode and other data of the recommended scene as the recommended scene data of the recommended scene.
[0054] Optionally, the method for obtaining at least one candidate point of interest (POI) may be, based on a user input search field, selecting a POI requirement category that matches the search field; and selecting candidate POIs that match the POI requirement category from all POIs. Alternatively, at least one initial POI may be obtained based on a POI priority that matches the map scale; the POI requirement category may be determined based on a recommendation pattern and / or search field in the recommendation scenario data; and at least one candidate POI may be selected from at least one initial POI based on the POI requirement category. The initial POI may be understood as a POI that is suitable for recommendation at the map scale. The POI requirement category may be understood as a POI category that can meet the user's travel needs. The POI priority may be understood as the recommendation priority of the POI obtained through quantitative evaluation. The advantage of this setting is that different candidate POIs can be screened at different scales, thereby improving the adaptability of selecting candidate POIs at the corresponding map scale, and further improving the accuracy and rationality of the candidate POI display.
[0055] In some embodiments, a POI priority matching the map scale is selected; an initial POI matching the POI priority is selected from all POIs; a POI requirement category is determined based on a recommendation mode and / or a search field in the recommendation scenario data; and an initial POI whose POI category matches the POI requirement category is selected from each initial POI as a candidate POI.
[0056] Exemplarily, when the recommendation scenario data only includes a recommendation mode, the POI category that matches the recommendation mode is used as the POI demand category; when the recommendation scenario data only includes a search field, the POI category that matches the search field is used as the POI demand category; when the recommendation scenario data includes both a recommendation mode and a search field, the POI category that matches the search field is again selected from the POI categories that match the recommendation mode as the POI demand category.
[0057] Exemplary methods of using POI categories matching the recommendation mode as POI demand categories include: when the recommendation mode is the vehicle-following mode, using all POI categories within the vehicle's surrounding area as POI demand categories; when the recommendation mode is the map browsing mode, using all POI categories within the recommended view range as POI demand categories; when the recommendation mode is the destination viewing mode, using all POI categories within the destination's surrounding area as POI demand categories; when the recommendation mode is the route overview mode, using all POI categories within the departure area as POI demand categories; using all POI categories within the service area around the non-departure route as POI demand categories; and using preset recommended categories within the non-service area around the non-departure route as POI demand categories. Optionally, the preset recommended categories may include Chinese restaurants, foreign restaurants, cafes, scenic spots, hotels, museums, exhibition halls, science and technology museums, art galleries, planetariums, and leisure venues.
[0058] For example, taking the route overview mode as the recommendation mode, in order to ensure the smooth progress of the itinerary plan and avoid the user staying too long in the non-destination area, only the food POI category and the accommodation POI category can be used as the preset recommendation categories. Therefore, in the case of food POI categories, entertainment POI categories, shopping POI categories and accommodation POI categories included in the non-service area B around the non-departure route, only the food POI category and the accommodation POI category can be used as POI demand categories.
[0059] S120 : Recalling a POI from at least one candidate POI according to the recommended scene data, and determining a POI hit attribute of the recalled POI.
[0060] Among them, POI recall can be understood as the process of screening out POIs of interest to the user from various candidate POIs. POI hit attributes include tag attributes and / or non-tag attributes; tag attributes include at least one of scene type tags, scene portrait tags, scene priority tags, scene keyword tags, and user portrait tags; non-tag attributes include at least one of POI popularity, POI configuration information, preset city codes, and preset parent-child relationship identifiers. Among them, POI popularity can be understood as the media of the media information corresponding to the POI. POI configuration information can be understood as information that is bound to the POI. The preset city code can be understood as a code that achieves unique identification and precise positioning of the city through standardized identification and hierarchical structure. The parent-child relationship can be understood as a relationship that describes the hierarchical attribution logic between POIs. For example, if point of interest B exists in point of interest A, it proves that there is a parent-child relationship between point of interest A and point of interest B, and point of interest A has a parent tag and point of interest B has a child tag.
[0061] One optional implementation method is: determining a recall condition matching the recommended scene data based on the recommended scene data; performing POI recall from at least one candidate POI, recalling at least one POI that meets the recall condition, and determining a POI hit attribute of the recalled POI.
[0062] Another optional implementation is: recalling a POI from at least one candidate POI according to at least one recall mode included in the recommended scene data, and determining POI hit attributes of the POIs recalled under different recall modes.
[0063] Exemplarily, in the scenario category recall mode, based on the scenario category in the recommended scenario data, POIs are recalled from at least one candidate POI by: obtaining the user's time period; selecting a POI category that corresponds to both the scenario category and the time period from a pre-set scenario category recall table; selecting candidate POIs containing the POI category from the at least one candidate POI for recall; and determining the POI hit attributes of the recalled POIs as the scenario type label and the scenario priority label, using the POI category as the scenario type label and the priority as the scenario priority label for the recalled POI. For example, as shown in the scenario category recall table 1 below, each scenario category includes at least one scenario scenario, each scenario scenario being assigned a high, medium, or low priority (only high priority is shown in scenario category recall table 1), as well as the recalled POI category and label. For example, if the scenario category is local travel and the user's time period is weekend and daytime, candidate POIs in the category of catering services, shopping services, and lifestyle services can be directly determined from the table to be recalled.
[0064] Table 1 Scene category recall table
[0065]
[0066] It should be noted that the scenario solutions, priorities, POI categories and labels shown in the scenario category recall table 1 in this embodiment are only examples to assist in clearly explaining the contents of the above embodiment, and do not cover all categories of scenario solutions, priorities, POI categories and labels. This implementation does not limit the specific scenario solutions, priorities, POI categories and labels.
[0067] Exemplarily, in the scene keyword recall mode, POIs are recalled from at least one candidate POI based on video keywords in the recommended scene data by: pre-binding different video keywords to different scene categories; setting a keyword recall table based on the scene category and video keywords; when scene keyword recall is triggered, short video keywords are selected from the pre-set video keyword recall table based on the scene category in the recommended scene data and the user's time period; short video POIs containing the short video keywords are determined; and candidate POIs matching the short video POIs are recalled from the at least one candidate POI, and the POI hit attribute of the recalled POI is determined to be a scene keyword tag. For example, as shown in the following video keyword recall table 2, each scene category includes at least one scenario scenario, each scenario scenario is assigned a high, medium, or low priority (video keyword recall table 2 only shows a high priority), and the video keywords corresponding to the recalled POI are also determined. For example, using the scene category of daily commuting as an example, and determining that the user's time period is morning, the keywords "breakfast" and "refreshing" can be directly determined from the table.
[0068] Table 2 Video keyword recall table
[0069]
[0070] It should be noted that the scenario plans, priorities, short video keywords, etc. shown in Video Keyword Recall Table 2 in this embodiment are only examples to assist in clearly explaining the contents of the above embodiment, and do not cover all categories of scenario plans, priorities, and short video keywords. This implementation does not limit the specific scenario plans, priorities, and short video keywords.
[0071] Exemplarily, in the user portrait recall mode, the method of recalling POIs from at least one candidate POI based on the user portrait data is as follows: determining the user's travel habit label based on the user portrait data; selecting the POI user portrait category based on the correspondence between the travel habit label and the POI category; selecting the candidate POI whose POI category matches the POI user portrait category from at least one candidate POI for recall, and determining that the POI hit attribute of the recalled POI is the user portrait label.
[0072] Exemplarily, in the landmark recall mode, a method of recalling POIs with landmark attributes from at least one candidate POI is as follows: for each candidate POI, determining whether the candidate POI has a landmark attribute; and recalling the candidate POIs with landmark attributes.
[0073] Exemplarily, in the media information recall mode, recalling POIs associated with media information from at least one candidate POI involves: for each candidate POI, determining whether the candidate POI is associated with media information; recalling the candidate POIs associated with media information; and determining the POI hit attribute of the recalled POIs as POI popularity. For example, if media information (e.g., a short video) is associated with the candidate POI, it indicates that the candidate POI is associated with media information, and the candidate POI is recalled.
[0074] Exemplarily, in the depth information recall mode, recalling POIs with depth information from at least one candidate POI is performed by: for each candidate POI, determining whether depth information exists for the candidate POI; and recalling the candidate POIs with depth information. Depth information can be understood as the height information of the address corresponding to the candidate POI on the map.
[0075] Exemplarily, in the city code recall mode, a method for recalling POIs with a preset city code from at least one candidate POI is as follows: for each candidate POI, determining whether the candidate POI has a preset city code; recalling the candidate POIs with the preset city code, and determining that the POI hit attribute is the preset city code.
[0076] Exemplarily, candidate POIs with configuration information are recalled from at least one candidate POI, and the POI hit attribute of the recalled POI is determined to be the POI configuration information. Configuration information can be understood as the binding between the candidate POI and other scene tags. For example, if the candidate POI is a tourist attraction and is bound to other scene tags (such as a hotel), this indicates that the candidate POI has configuration information. Therefore, the candidate POI is recalled, and the POI hit attribute of the candidate POI is determined to be the POI configuration information.
[0077] Exemplarily, candidate POIs with a preset parent-child relationship are recalled from at least one candidate POI, and the POI hit attribute of the recalled POI is determined to be a preset parent-child relationship identifier; if the recalled POI has a parent identifier, the recalled POI is determined to be a parent POI; if the recalled POI has a child identifier, the recalled POI is determined to be a child POI.
[0078] It should be noted that if no candidate POI is recalled in any recall mode, in order to ensure that POI recommendations are displayed in the final result, the preset candidate POI can be recalled based on the recommended scene data, or all candidate POIs can be recalled.
[0079] It should be noted that when the recommendation mode in the recommended scenario data is the route overview mode, if no candidate POI is recalled through the city code recall mode and the user portrait recall mode within the non-departure range, all candidate POIs can be recalled.
[0080] It should be noted that, when the recommended mode in the recommended scene data is a destination surrounding viewing mode, the recall mode corresponding to the recommended scene data also includes an intention category recall mode. In this embodiment, the user's destination intention to arrive at the destination can be identified in the intention category recall mode; based on the destination intention, the destination category corresponding to the destination intention is found from the intention category recall table; based on the recall category that matches the destination category, candidate POIs with the same POI category as the recall category are recalled from at least one candidate POI. For example, as shown in the following intention category recall table 3, there is a corresponding relationship between the destination category and the recall category. Taking the destination intention of park square as an example, the destination intention of park square is a second-level category under the first-level category of scenic spots in the destination category. Therefore, it can be determined that the recall categories that match the destination intention (park square) are scenic spots, park squares, hotels, hostels and leisure places.
[0081] Table 3 Intent category recall table
[0082]
[0083] It should be noted that the destination categories and recall categories shown in the intention category recall table 3 in this embodiment are only examples to help clearly explain the contents of the above embodiment, and do not cover all categories of destination categories and recall categories. This implementation does not limit the specific destination categories and recall categories.
[0084] S130 : Determine a recall score of each candidate POI based on the POI hit attribute of the recalled POI.
[0085] Among them, the recall score can be understood as the comprehensive score of the candidate POI in multiple POI hit attribute dimensions. The recall score represents the degree to which personalized needs and POI content quality are taken into account.
[0086] In some embodiments, for each recalled POI, a hit score corresponding to the POI hit attribute and a hit weight corresponding to the POI hit attribute are determined based on the POI hit attribute of the recalled POI; a weighted sum of all hit scores and corresponding hit weights is determined; and the weighted sum is used as the recall score of the candidate POI.
[0087] S140 : Selecting a POI to be recommended from at least one candidate POI according to the recall score of each candidate POI.
[0088] In some embodiments, at least one candidate POI is sorted according to the recall score of each candidate POI to obtain a POI sequence; and a candidate POI with a preset ranking in the POI sequence is selected as the POI to be recommended.
[0089] Exemplarily, at least one candidate POI is sorted in descending order of recall scores of the candidate POIs to obtain a POI sequence; and candidate POIs with a preset ranking (eg, the top 10) are selected as the POIs to be recommended.
[0090] The above-mentioned POI recommendation method, apparatus, computer equipment and storage medium introduce POI hit attributes, integrate the tag attributes of scene type tags, scene portrait tags and user portrait tags, as well as the non-tag attributes of POI popularity, POI configuration information, preset city code and preset parent-child relationship identifier, and determine the recall score of candidate POIs by combining them with multi-dimensional hit attributes, thereby improving the rationality of recall score determination and avoiding the deviation of recall score under a single dimension, which affects the accuracy of selecting POIs to be recommended. POIs to be recommended are then selected based on the recall score of each candidate POI, so that the display of POIs to be recommended can flexibly adapt to complex scenarios, avoiding the problem of poor scene adaptability caused by displaying POIs only by priority, further improving the accuracy and rationality of selecting POIs to be recommended, and thus improving the user experience.
[0091] Based on the technical solutions of the above embodiments, the present application further provides an optional embodiment in which the recall score determination step in S130 is refined.
[0092] See also Figure 2 The steps for determining the recall score shown include:
[0093] S210 : For each candidate POI, determine a POI score of the candidate POI according to a tag hit status of at least one tag in the tag attributes.
[0094] In some embodiments, for each candidate POI, the tag hit status of each tag corresponding to the candidate POI in the tag attributes is determined; for the tag attributes of each hit tag, the tag weight corresponding to the tag attribute and the initial score corresponding to the tag attribute are determined; the product value between the initial score and the tag weight is used as the tag score of the tag attribute; and the sum of the tag scores of the tag attributes corresponding to all hit tags is used as the POI score of the candidate POI.
[0095] Exemplary methods for determining the initial score corresponding to a tag attribute include: since scene priority tags of different priorities correspond to different initial scores, if the tag attribute is a scene priority tag, then the initial score that matches the priority is determined based on the scene priority. If the attribute tag is a scene portrait tag, then the number of tags that the candidate POI hits the scene portrait tag is determined, and the number of tags is used as the initial score of the scene portrait tag; if the attribute tag is a user portrait tag, then the number of tags that the candidate POI hits the scene user tag is determined, and the number of tags is used as the initial score of the user portrait tag.
[0096] For example, the tag weight corresponding to the tag attribute can be determined by searching a pre-set tag weight table for a tag weight that matches the tag attribute. As shown in the following tag weight table 4, the table records the correspondence between different tag attributes and tag weights.
[0097] Table 4 Label weight table
[0098]
[0099] It should be noted that the priority categories shown in the label weight table 4 in this embodiment are only examples to help clearly explain the content of the above embodiment, and do not cover all priority categories. They can include but are not limited to classification into three levels: high, medium and low. The specific priority categories are not limited in this implementation.
[0100] For example, this embodiment may also determine the POI score of the candidate POI according to the tag hit status of at least one tag in the tag attributes by using the following formula (1-1):
[0101] Score (POI score) = w1*S (Scene 1 High Priority) + w2*S (Scene 1 Medium Priority) + w3*S (Scene 1 Low Priority) + ... + wn*S (Scene n Priority) + w4*[S (Scene Portrait Label 1) + ... + S (Scene Portrait Label n)] + w5*[S (User Portrait Label 1) + ... + S (User Portrait Label n)] (1-1)
[0102] Among them, Score (POI score) represents the POI score of the candidate POI, S (scene 1 high priority) represents the initial score of scene 1 corresponding to high priority; S (scene 1 medium priority) represents the initial score of scene 1 corresponding to medium priority; S (scene 1 low priority) represents the initial score of scene 1 corresponding to low priority; S (scene n priority) represents the initial score of the corresponding priority corresponding to scene n; S (scene portrait label 1) represents the initial score corresponding to the candidate POI hitting scene portrait label 1; S (scene portrait label n) represents the initial score corresponding to the candidate POI hitting scene portrait label n; S (user portrait label 1) represents the initial score corresponding to the candidate POI hitting user portrait label 1; S (user portrait label n) represents the initial score corresponding to the candidate POI hitting user portrait label n; w1 represents the label weight corresponding to high priority; w2 represents the label weight corresponding to medium priority; w3 represents the label weight corresponding to low priority; wn represents the label weight matching the corresponding priority of the scene; w4 represents the label weight corresponding to the scene portrait label; w5 represents the label weight corresponding to the user portrait label. It should be noted that the initial score corresponding to the scene portrait label and the initial score corresponding to the user portrait label can both be preset fixed values, such as 1.
[0103] S220 : Determine a recall score of the candidate POI according to the POI score of the candidate POI and the attribute value of the non-label attribute.
[0104] One optional implementation method may be: for each non-label attribute of the candidate POI, determine a non-label weight of the non-label attribute; use the product of the attribute value of the non-label attribute and the corresponding non-label weight as the non-label score of the non-label attribute; and use the sum of the POI score of the candidate POI and all non-label scores as the recall score of the candidate POI.
[0105] Another optional implementation method is: sorting the POI scores of the candidate POIs to obtain the sequence scores of the corresponding candidate POIs; and determining the recall scores of the candidate POIs based on the sequence scores of the candidate POIs and the attribute values of the non-label attributes.
[0106] Exemplarily, the POI scores of the candidate POIs are sorted in descending order to obtain the ranking of the candidate POIs; the reciprocal of the ranking is used as the sequence score of the candidate POI; a preset weight matching the ranking is determined as the ranking weight of the candidate POI; for each candidate POI, the product value between the sequence score of the candidate POI and the ranking weight is used as the ranking score of the candidate POI; for each non-label attribute of the candidate POI, the non-label weight of the non-label attribute is determined; the product value between the attribute value of the non-label attribute and the corresponding non-label weight is used as the non-label score of the non-label attribute; and the sum of the ranking score and the non-label score of the candidate POI is used as the recall score of the candidate POI.
[0107] Exemplarily, when the non-tag attribute of a candidate POI is POI popularity, the media association score of the candidate POI is determined based on the association between the candidate POI and media information. The sum of the corresponding popularity of each media information associated with the candidate POI is used as the candidate POI's popularity score. The product of the media association score and the popularity score is used as the attribute value of the POI popularity. Exemplarily, if the candidate POI is associated with media information, the media association score of the candidate POI is determined to be 1; if the candidate POI is not associated with media information, the media association score of the candidate POI is determined to be 0.
[0108] Exemplarily, when the non-tag attribute of the candidate POI is POI configuration information, if the candidate POI has POI configuration information, the attribute value corresponding to the POI configuration information is determined to be 1; if the candidate POI does not have POI configuration information, the attribute value corresponding to the POI configuration information is determined to be 0.
[0109] Exemplarily, when the non-label attribute of the candidate POI is a preset city code, if the candidate POI has a preset city code, the attribute value corresponding to the preset city code is determined to be 1; if the candidate POI does not have a preset city code, the attribute value corresponding to the preset city code is determined to be 0.
[0110] For example, when the non-tag attribute of a candidate POI is a preset parent-child relationship identifier, if the candidate POI does not have a preset parent-child relationship identifier, the attribute value corresponding to the preset parent-child relationship identifier is determined to be 1; if the candidate POI has a preset parent-child relationship identifier and the candidate POI has a parent identifier, the attribute value corresponding to the preset parent-child relationship identifier is determined to be 1. If the candidate POI has a preset parent-child relationship identifier and the candidate POI has a child identifier, the attribute value corresponding to the preset parent-child relationship identifier is determined to be 0.
[0111] For example, this embodiment may also determine the recall score of the candidate POI according to the POI score of the candidate POI and the attribute value of the non-label attribute by the following formula (1-2):
[0112] S (recall score) = A*R (sequence score) + B*R (POI popularity) + C*R (configuration information) + D*R (preset city code) + E*R (preset parent-child relationship identifier) (1-2)
[0113] Among them, S (recall score) represents the recall score of the candidate POI; R (sequence score) represents the sequence score of the candidate POI; R (POI popularity) represents the non-label score of the POI popularity as a non-label attribute; R (configuration information) represents the non-label score of the configuration information as a non-label attribute; R (preset city code) represents the non-label score of the preset city code as a non-label attribute; R (preset parent-child relationship identifier) represents the non-label score of the preset parent-child relationship identifier as a non-label attribute; A represents the ranking weight, such as A=0.6; B represents the non-label weight corresponding to POI popularity, such as B=0.1; C represents the non-label weight corresponding to configuration information popularity, such as C=0.08; D represents the non-label weight corresponding to the preset city code popularity, such as D=0.2; E represents the non-label weight corresponding to the preset parent-child relationship identifier popularity, such as E=0.02.
[0114] In this embodiment, the recall score of a candidate POI is determined by comprehensively considering the hit status of the tag attributes of each candidate POI and the attribute values of non-tag attributes. This avoids the bias of determining the candidate POI score based on a single dimension attribute, improves the accuracy and rationality of the recall score determination, and further provides data support for the subsequent selection of POIs to be recommended based on the recall score of the candidate POI.
[0115] Based on the technical solutions of the above embodiments, the present application further provides an optional embodiment in which the recall score determination step in S130 is refined.
[0116] See also Figure 3 The steps for determining the recall score shown include:
[0117] S310 , for each candidate POI, determine the scene score of the candidate POI according to the hit status of the scene type tag and / or the scene portrait tag.
[0118] In some embodiments, for each candidate POI, if the candidate POI only hits the scene type tag, the type inverse value corresponding to the number of type hits that hit the scene type tag is determined; the product value between the type inverse value and the type weight corresponding to the scene type tag (such as 40%) is used as the scene score of the candidate POI; if the candidate POI only hits the scene portrait tag, the type inverse value corresponding to the number of type hits that hit the scene portrait tag is determined; the product value between the portrait inverse value and the portrait weight corresponding to the scene portrait tag (such as 60%) is used as the scene score of the candidate POI; if the candidate POI hits both the scene type tag and the scene portrait tag, the type inverse value corresponding to the number of type hits that hit the scene type tag is determined; the product value between the type inverse value and the type weight corresponding to the scene type tag is used as the scene type score of the candidate POI; the type inverse value corresponding to the number of type hits that hit the scene portrait tag is determined; the product value between the portrait inverse value and the portrait weight corresponding to the scene portrait tag is used as the scene portrait score of the candidate POI; the sum of the scene type score and the scene portrait score is used as the scene score of the candidate POI.
[0119] S320: Determine the user score of the candidate POI based on the hit status of the user portrait tag.
[0120] In some embodiments, for each candidate POI, if the candidate POI hits a user portrait tag, the number of tags that hit the user portrait tag is calculated as the inverse value, which serves as the user score of the candidate POI.
[0121] S330 : For each attribute value of the non-label attribute, determine an attribute score of the corresponding non-label attribute.
[0122] In some embodiments, for each non-label attribute, the attribute value of the non-label attribute is used as the attribute score of the corresponding non-label attribute.
[0123] S340 : Determine a scene score of the candidate POI based on at least one of the scene score, the user score, and the attribute scores of each non-label attribute.
[0124] In some embodiments, the product value between the scene score and the preset scene weight is used as the first score of the candidate POI; the product value between the user score and the preset user weight is used as the second score of the candidate POI; the product value between the attribute score of the non-label attribute and the non-label weight corresponding to the non-label attribute is used as the non-label attribute score of the non-label attribute; and the sum of the first score, the second score and all non-label attribute scores is used as the scene score of the candidate POI.
[0125] It should be noted that, in this embodiment, the preset scene weight, the preset user weight and the non-label weight corresponding to each non-label attribute are determined as follows: determine the weight sum between the preset scene weight and the preset user weight; use the difference between 100% and the weight sum as the weight benchmark; use a weight benchmark of 50% as the non-label weight of POI popularity; use a weight benchmark of 15% as the non-label weight of POI configuration information; use a weight benchmark of 30% as the non-label weight of the preset city code; and use a weight benchmark of 5% as the non-label weight of the preset parent-child relationship identifier.
[0126] In some embodiments, the present embodiment may further determine the scene score of the candidate POI according to at least one of the scene score, the user score, and the attribute score of each non-label attribute using the following formula (1-2):
[0127] S (recall score) = w1*(40%*R(scene type score)+60%*R(scene portrait score))+w2*R(user portrait score)+w3*R(POI popularity)+w4*R(POI configuration information)+w5*R(preset city code)+w6*R(preset parent-child relationship identifier) (1-2)
[0128] Among them, S (recall score) represents the recall score of the candidate POI; R (scene type score) represents the scene type label hit score of the candidate POI; R (scene portrait score) represents the scene portrait label hit score of the candidate POI; R (POI heat) represents the non-label score of POI heat whose non-label attribute is POI heat; R (configuration information) represents the non-label score of configuration information whose non-label attribute is configuration information; R (preset city code) represents the non-label score of preset city code whose non-label attribute is preset city code; R (preset parent-child relationship identifier) represents the non-label score of preset parent-child relationship identifier whose non-label attribute is preset parent-child relationship identifier; w1 represents the preset scene weight; w2 represents the preset user weight; w3 represents the non-label weight corresponding to POI heat; w4 represents the non-label weight corresponding to configuration information heat; w5 represents the non-label weight corresponding to preset city code heat; w6 represents the non-label weight corresponding to preset parent-child relationship identifier heat.
[0129] In this embodiment, the recall score of a candidate POI is determined by comprehensively considering the hit status of the tag attributes of each candidate POI and the attribute values of non-tag attributes. This avoids the bias of determining the candidate POI score based on a single dimension attribute, improves the accuracy and rationality of the recall score determination, and further provides data support for the subsequent selection of POIs to be recommended based on the recall score of the candidate POI.
[0130] Based on the technical solutions of the above embodiments, the present application also provides an optional embodiment in which the recommended POI selection step in S140 is refined.
[0131] See also Figure 4 The steps for selecting recommended POIs shown include:
[0132] S410 , sorting at least one candidate POI according to the recall score of each candidate POI to obtain a POI sequence.
[0133] In some embodiments, according to the scale of the map, for candidate POIs within a preset distance range (e.g., 500 meters), they are sorted according to their secondary categories (if a candidate POI does not have a secondary category, the primary category is used as the secondary category of the candidate POI in the sorting), to obtain a sorted sequence; for candidate POIs outside the preset distance range, they are sorted in descending order according to their priorities to obtain a sequential sequence; the sorted sequence and the sequential sequence are concatenated to obtain a POI sequence.
[0134] It should be noted that if the recommendation mode in the recommended scenario data is route overview mode, this embodiment can further limit the number of candidate POIs to be sorted. For example, if the route passes through two or more provinces, 20 candidate POIs can be selected for sorting; if the route passes through one province, 15 candidate POIs can be selected for sorting; and if the route is within a city, a maximum of 10 candidate POIs can be selected for sorting. In addition, when the route is within a highway area, a maximum of one candidate POI can be selected for sorting per service area, and there is no need to re-sort the service areas.
[0135] S420: Update the POI sequence according to the upper limit of POIs of the same category.
[0136] In some embodiments, a sliding window of a preset size is set, and an upper limit for POIs of the same category within the sliding window is set. If the POI category of the candidate POIs within the sliding window does not meet the upper limit for POIs of the same category, candidate POIs that meet the upper limit for POIs of the same category are selected and placed in order after the sliding window. Furthermore, candidate POIs of different categories from those within the sliding window are selected from the candidate POIs sorted after the sliding window and added to the sliding window to update the POI sequence. If the POI category of the candidate POIs within the sliding window meets the upper limit for POIs of the same category, the preset step size is adjusted until the order of all candidate POIs is rearranged, completing the update of the POI sequence.
[0137] For example, let's use a sliding window size of 6 and an upper limit of 3 POIs of the same category. Before updating the POI sequence, the POI sequence is: Category 1, Category 1, Category 2, Category 1, Category 2, Category 2, Category 3, Category 1, Category 4, Category 2. In this case, the sliding window selects the top 6 candidate POIs: (Category 1, Category 1, Category 2, Category 1, Category 2, Category 2). Obviously, within this sliding window, the number of candidate POIs for Category 1 is 3, and the number of candidate POIs for Category 2 is 3. This means that both Category 1 and Category 2 POIs have reached their upper limits, so the POI sequence within the sliding window needs to be updated. From the candidate POIs sorted after the sliding window (i.e., category 3, category 1, category 4, category 1), select candidate POIs with different categories from the POIs in the sliding window (i.e., category 3 and category 4), and replace the candidate POIs that exceed the upper limit of POIs of the same category to obtain the updated POI sequence: category 1, category 1, category 2, category 2, category 3, category 4), category 1, category 2, category 1, category 2.
[0138] It should be noted that, in order to further ensure the POI display effect, this embodiment can also select candidate POIs with landmark attributes from the POI sequence without secondary classification; and forcibly insert the candidate POIs with landmark attributes into the front end of the POI sequence to enhance the landmark effect of the POI display.
[0139] It should be noted that the size of the sliding window and the upper limit of POIs of the same category in this embodiment can be adjusted according to actual effects, but should comply with the following constraints: when the number of POI sequences satisfies n*n, the window size is set to 2n, and the upper limit of POIs of the same category is n; when the number of POI sequences satisfies m*n, the window size is set to 2n, and the upper limit of POIs of the same category is (n+2) / 2.
[0140] S430: Select a POI to be recommended from the updated POI sequence.
[0141] In one embodiment, a preset number of candidate POIs ranked first in the updated POI sequence are selected as POIs to be recommended.
[0142] In another embodiment, unprocessed candidate POIs are sequentially selected from the POI sequence as pending POIs. If the local cumulative number of pending POIs for the category to which the pending POI belongs does not exceed the upper limit for POIs of the same category, the pending POI is selected as a pending POI. If the local cumulative number of pending POIs for the category to which the pending POI belongs exceeds the upper limit for POIs of the same category, the pending POI is no longer selected as a pending POI. The local cumulative number is reset to zero if it exceeds a preset update window size. This arrangement increases the diversity of displayed POIs, provides more interesting exploration possibilities, and further prevents the problem of POIs of the same type being concentrated.
[0143] Exemplarily, according to a preset size of the sliding window, unprocessed candidate POIs are sequentially selected from the POI sequence as POIs to be processed; and the local cumulative number of POI categories to which the POI to be processed belongs is accumulated; during the sliding window sliding process, if the local cumulative number of POI categories to which the POI to be processed belongs does not exceed the upper limit of POIs of the same category, the POI to be processed is used as a POI to be recommended; if the local cumulative number of POI categories to which the POI to be processed belongs exceeds the upper limit of POIs of the same category, the POI to be processed is no longer used as a POI to be recommended, and the local cumulative number is set to zero.
[0144] For example, let's take the example of a limit of 3 POIs of the same category. During the sliding window, if the local cumulative number of POI categories to which the pending POI belongs is 2, the pending POI can be selected as a POI to be recommended. If the local cumulative number of POI categories to which the pending POI belongs is 4, the pending POI is not allowed to be selected as a POI to be recommended, and the local cumulative number is set to zero.
[0145] In the above embodiment, at least one candidate POI is sorted by the recall score of each candidate POI, so that the resulting POI sequence has a strong correlation with the user's needs. Then, an upper limit is set on POIs of the same category to prevent excessive concentration of POIs of a single type, thereby improving the accuracy and rationality of the selection of the recommended POIs and further increasing the diversity of the recommended POIs.
[0146] Based on the technical solutions of the above embodiments, this application also provides an optional embodiment. Figure 5 The map update steps shown include:
[0147] S510: Update the POIs to be recommended based on the recall scores and / or POI categories of the POIs to be recommended that have overlapping relationships.
[0148] The overlapping relationship can be understood as the visual coverage relationship between different POIs to be recommended on the map due to the overlapping spatial positions.
[0149] In some embodiments, for overlapping POIs to be recommended, if the POI categories of the POIs to be recommended have the same priority, the POIs to be recommended may be sorted and updated according to their recall scores, in descending order.
[0150] In some embodiments, for overlapping POIs to be recommended, if the recall scores of the POIs to be recommended are the same, the POIs to be recommended may be sorted and updated according to their POI categories and in descending order of priority.
[0151] In some embodiments, for POIs to be recommended that have an overlapping relationship, if the recall scores and the priorities corresponding to the POI categories of the POIs to be recommended are different, then for each POI to be recommended that has an overlapping relationship, the first score of the POI to be recommended is determined based on the ranking of the recall score of the POI to be recommended among the POIs to be recommended; the second score of the POI to be recommended is determined based on the priority corresponding to the POI category of the POI to be recommended; the first score and the second score are used as the third score of the POI to be recommended; and the POIs to be recommended that have an overlapping relationship are sorted and updated in descending order of their third scores.
[0152] In some embodiments, for POIs to be recommended that overlap, if the recall scores and POI category priorities of the POIs to be recommended are the same, the POIs with earlier identity documents (IDs) are deleted according to their POI sequence numbers to ensure that the user sees the same POI when selecting.
[0153] S520, updating the POIs to be recommended based on the density of the POIs to be recommended in the same area;
[0154] In some embodiments, at least one tile contained in the current map is obtained; for each tile, the number of POIs to be recommended in the tile is determined; and the number of tile points corresponding to the map scale is determined; if the number of POIs is not greater than the number of tile points, the POIs to be recommended are not updated; if the number of POIs is greater than the number of tile points, it indicates that the density of POIs to be recommended in the same area is high. Therefore, the POIs to be recommended can be updated based on the recall score and / or POI category of the POI to be recommended, and the top-ranked POIs to be recommended are retained. A tile can be understood as a rectangular grid unit obtained by cutting the current map into a fixed size.
[0155] Exemplarily, the method of obtaining at least one tile contained in the current map is: cutting the current map according to a preset size and format to obtain at least one square grid; and using the square grid as a tile of the current map.
[0156] It should be noted that, with respect to the above-mentioned POI covering processing step S510 and the POI distribution processing step S520, this embodiment may only execute the POI covering processing step S510 when the number of POIs in the tile is not greater than the number of scattered points in the tile; it may also only execute the POI distribution processing step S520 when there is no covering relationship between the POIs to be recommended in the tile; it may also continue to execute the POI distribution processing step S520 after executing the POI covering processing step S510 if it is determined that the number of POIs in the tile is greater than the number of scattered points in the tile; or, after executing the POI distribution processing step S520, if it is determined that there is still an covering relationship between the POIs to be recommended in the tile, continue to execute the POI covering processing step S510. This embodiment does not limit this.
[0157] S530: Display the updated POIs to be recommended on the map.
[0158] In some embodiments, after the POI to be recommended is selected, the POI to be recommended is rendered and displayed using a card template corresponding to the POI to be recommended, and the rendered POI to be recommended is displayed at a corresponding position on the map.
[0159] It should be noted that in this embodiment, the card template corresponding to the recommended POI can be generated by: obtaining the container structure and component parameters of the card template; freely combining the container structure and component parameters to generate the card template; binding dynamic data fields to the card template based on the recommended POI, associating and storing the recommended POI and the card template, and generating a reusable card template instance corresponding to the recommended POI for subsequent use by the recommendation engine. The process of freely combining and generating the card template based on the container structure and component parameters also supports modification of the card template and the one-click use of historical combinations.
[0160] In this embodiment, the recommended POIs are updated based on the overlapping situation of the POIs to be recommended to eliminate the interference of the overlapping POIs to the user's vision; the recommended POIs are updated based on the density of the POIs to be recommended in the same area to reduce the number of POIs to be recommended in the same area. By adjusting the density, the user's attention focus is guided, thereby improving the readability of the POI display and further enhancing the user experience.
[0161] It should be understood that, although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence according to the instructions of the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be executed in other orders. Moreover, at least a portion of the steps in the flowcharts involved in the various embodiments described above can include multiple steps or multiple stages, and these steps or stages are not necessarily executed and completed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a portion of steps or stages in other steps.
[0162] Based on the same inventive concept, embodiments of the present application also provide a POI recommendation device for implementing the aforementioned POI recommendation method. The solution provided by this device is similar to the solution described in the aforementioned method. Therefore, the specific limitations of one or more POI recommendation device embodiments provided below can be found in the above-described limitations of the POI recommendation method and will not be further elaborated here.
[0163] In an exemplary embodiment, Figure 6 As shown, a POI recommendation device is provided, including: an acquisition module 610, a recall module 620, a determination module 630 and a selection module 640, wherein:
[0164] An acquisition module 610 is configured to acquire recommended scene data and at least one candidate POI;
[0165] The recall module 620 is configured to recall POIs from at least one candidate POI based on the recommended scene data and determine POI hit attributes of the recalled POIs; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene profile tag, and a user profile tag; and the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier;
[0166] A determination module 630 is configured to determine a recall score of each candidate POI based on the POI hit attribute of the recalled POI;
[0167] The selection module 640 is configured to select a POI to be recommended from at least one candidate POI according to the recall score of each candidate POI.
[0168] In some embodiments, the determination module 630 further includes: a first scoring unit, configured to determine, for each candidate POI, a POI score of the candidate POI based on a tag hit of at least one tag in the tag attributes; and a second scoring unit, configured to determine a recall score of the candidate POI based on the POI score of the candidate POI and the attribute value of the non-tag attribute.
[0169] In some embodiments, the second scoring unit is further configured to sort the POI scores of the candidate POIs to obtain sequence scores of the corresponding candidate POIs; and determine the recall scores of the candidate POIs based on the sequence scores and attribute values of the non-label attributes of the candidate POIs.
[0170] In some embodiments, the determination module 630 is further used to determine, for each candidate POI, a scene score of the candidate POI based on the hit status of the scene type tag and / or the scene portrait tag; determine the user score of the candidate POI based on the hit status of the user portrait tag; determine the attribute score of the corresponding non-label attribute for the attribute value of each non-label attribute; and determine the scene score of the candidate POI based on at least one of the scene score, the user score, and the attribute score of each non-label attribute.
[0171] In some embodiments, the selection module 640 includes: a sequencing unit for sorting at least one candidate POI according to the recall score of each candidate POI to obtain a POI sequence; an updating unit for updating the POI sequence according to an upper limit of POIs of the same category; and a selection unit for selecting a POI to be recommended from the updated POI sequence.
[0172] In some embodiments, the updating unit is further configured to sequentially select unprocessed candidate POIs from the POI sequence as POIs to be processed; if the local cumulative number of POIs to be recommended in the POI category to which the POI to be processed belongs does not exceed the upper limit of POIs of the same category, the POI to be processed is selected as the POI to be recommended; if the local cumulative number of POIs to be recommended in the POI category to which the POI to be processed belongs exceeds the upper limit of POIs of the same category, the POI to be processed is no longer selected as the POI to be recommended; wherein, the local cumulative number is reset to 0 when it exceeds a preset update window size.
[0173] In some embodiments, the POI recommendation device further includes: an updating module for updating the POIs to be recommended based on the recall scores and / or POI categories of the POIs to be recommended that have an overlapping relationship; and / or, updating the POIs to be recommended based on the density of the POIs to be recommended in the same area; and displaying the updated POIs to be recommended on the map.
[0174] In some embodiments, the acquisition module 710 is further used to obtain at least one initial POI based on the POI priority that matches the map scale; determine the POI demand category based on the recommendation mode and / or search field in the recommendation scene data; and select at least one candidate POI from the at least one initial POI based on the POI demand category.
[0175] In some embodiments, the recall module 620 is further used to recall POIs from at least one candidate POI according to the scene category in the recommended scene data in the scene category recall mode; to recall POIs from at least one candidate POI according to the video keywords in the recommended scene data in the scene keyword recall mode; to recall POIs from at least one candidate POI according to the user portrait data in the user portrait recall mode; to recall POIs with landmark attributes from at least one candidate POI in the landmark recall mode; to recall POIs associated with media information from at least one candidate POI in the media information recall mode; to recall POIs with depth information from at least one candidate POI in the depth information recall mode; and to recall POIs with preset city codes from at least one candidate POI in the city code recall mode.
[0176] Each module in the POI recommendation device described above may be implemented in whole or in part through software, hardware, or a combination thereof. Each module may be embedded in or independent of a processor in a computer device in the form of hardware, or may be stored in a memory in the computer device in the form of software, so that the processor can call and execute the corresponding operations of each module.
[0177] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 7 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O) and a communication interface. The processor, memory and input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The database of the computer device is used to store data. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a POI recommendation method is implemented.
[0178] Those skilled in the art will understand that Figure 7 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0179] In one embodiment, a computer device is further provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above method embodiments when executing the computer program.
[0180] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0181] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0182] It should be noted that the data involved in this application (including but not limited to data used for analysis, stored data, displayed data, etc.) are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0183] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the above-mentioned embodiments. In particular, any reference to memory, database, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, distributed databases based on blockchains. The processors involved in the various embodiments provided herein may be, but are not limited to, general-purpose processors, central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), programmable logic devices (PLDs), data processing logic devices based on quantum computing, and the like.
[0184] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0185] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.
Claims
1. A POI recommendation method, characterized in that: The method comprises: Obtain recommended scene data and at least one candidate point of interest (POI); Recalling a POI from at least one candidate POI based on the recommended scene data, and determining POI hit attributes of the recalled POI; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene portrait tag, and a user portrait tag; the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier; Determining a recall score for each candidate POI based on the POI hit attributes of the recalled POI; A POI to be recommended is selected from the at least one candidate POI according to the recall score of each candidate POI.
2. The method according to claim 1, characterized in that The step of determining the recall score of each candidate POI according to the POI hit attribute of the recalled POI includes: For each candidate POI, determining a POI score of the candidate POI according to a tag hit status of at least one tag in the tag attributes; A recall score of the candidate POI is determined according to the POI score of the candidate POI and the attribute value of the non-label attribute.
3. The method according to claim 2, characterized in that The determining the recall score of the candidate POI according to the POI score of the candidate POI and the attribute value of the non-label attribute includes: Sorting the POI scores of the candidate POIs to obtain sequence scores of the corresponding candidate POIs; A recall score of the candidate POI is determined according to the sequence score of the candidate POI and the attribute value of the non-label attribute.
4. The method according to claim 1, wherein The step of determining the recall score of each candidate POI according to the POI hit attribute of the recalled POI includes: For each candidate POI, determining a scene score of the candidate POI according to a hit status of the scene type tag and / or the scene portrait tag; Determining the user score of the candidate POI based on the hit status of the user portrait tag; For each non-label attribute value, determine an attribute score of the corresponding non-label attribute; The scene score of the candidate POI is determined according to at least one of the scene score, the user score, and the attribute scores of each non-label attribute.
5. The method according to any one of claims 1 to 4, characterized in that The selecting a POI to be recommended from the at least one candidate POI according to the recall score of each candidate POI includes: sorting the at least one candidate POI according to the recall score of each candidate POI to obtain a POI sequence; Update the POI sequence according to the upper limit of POIs of the same category; The POI to be recommended is selected from the updated POI sequence.
6. The method according to claim 5, characterized in that The step of selecting the POI to be recommended from the updated POI sequence includes: Sequentially selecting unprocessed candidate POIs from the POI sequence as POIs to be processed; If the local cumulative number of POIs to be recommended in the POI category to which the POI to be processed belongs does not exceed the upper limit of POIs of the same category, the POI to be processed is used as the POI to be recommended; If the local cumulative number of POIs to be recommended in the POI category to which the pending POI belongs exceeds the upper limit of POIs of the same category, the pending POI will no longer be used as the POI to be recommended; Wherein, the local cumulative number is set to 0 when it exceeds the preset update window size.
7. The method according to any one of claims 1 to 4, characterized in that The method further comprises: updating the POIs to be recommended based on the recall scores and / or POI categories of the POIs to be recommended that have overlapping relationships; and / or, Updating the POIs to be recommended based on the density of the POIs to be recommended in the same area; The updated POIs to be recommended are displayed on the map.
8. The method according to any one of claims 1 to 4, characterized in that Obtain at least one candidate point of interest (POI), including: Obtain at least one initial POI based on the POI priority that matches the map scale; Determining a POI requirement category based on a recommendation pattern and / or a search field in the recommendation scenario data; The at least one candidate POI is selected from the at least one initial POI according to the POI requirement category.
9. The method according to any one of claims 1 to 4, characterized in that The recommended scene data further includes at least one recall mode; and the recalling of a POI from at least one candidate POI based on the recommended scene data includes at least one of the following: In the scene category recall mode, POIs are recalled from at least one candidate POI according to the scene category in the recommended scene data; In the scene keyword recall mode, a POI is recalled from at least one candidate POI according to the video keywords in the recommended scene data; In the user portrait recall mode, POIs are recalled from at least one candidate POI based on the user portrait data; In the landmark recall mode, POIs with landmark attributes are recalled from at least one candidate POI; In the media information recall mode, POIs associated with media information are recalled from at least one candidate POI; In the depth information recall mode, POIs with depth information are recalled from at least one candidate POI; In the city code recall mode, POIs having a preset city code are recalled from at least one candidate POI.
10. A POI recommendation device, characterized in that: include: An acquisition module is used to acquire recommended scene data and at least one candidate point of interest (POI); A recall module is configured to recall POIs from at least one candidate POI based on the recommended scene data, and determine POI hit attributes of the recalled POIs; wherein the POI hit attributes include tag attributes and / or non-tag attributes; the tag attributes include at least one of a scene type tag, a scene portrait tag, and a user portrait tag; and the non-tag attributes include at least one of POI popularity, POI configuration information, a preset city code, and a preset parent-child relationship identifier; a determination module, configured to determine a recall score of each candidate POI according to the POI hit attribute of the recalled POI; The selection module is configured to select a POI to be recommended from the at least one candidate POI according to the recall score of each candidate POI.
11. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.
12. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Electronic map interfaces
CN109791547A
Scenarized content recommendation method and device, electronic equipment and storage medium
CN111061946A
Map data processing method, device and equipment and storage medium
CN111708858A
Interest point recommendation method and system, electronic equipment and program product
CN115168719A