WO2020168827A1 - 基于地理位置的兴趣点索引 - Google Patents

基于地理位置的兴趣点索引 Download PDF

Info

Publication number
WO2020168827A1
WO2020168827A1 PCT/CN2019/129395 CN2019129395W WO2020168827A1 WO 2020168827 A1 WO2020168827 A1 WO 2020168827A1 CN 2019129395 W CN2019129395 W CN 2019129395W WO 2020168827 A1 WO2020168827 A1 WO 2020168827A1
Authority
WO
WIPO (PCT)
Prior art keywords
geographic
group
interest
target
block
Prior art date
Application number
PCT/CN2019/129395
Other languages
English (en)
French (fr)
Inventor
张雨萌
刘铮
仓魁
Original Assignee
北京三快在线科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京三快在线科技有限公司 filed Critical 北京三快在线科技有限公司
Publication of WO2020168827A1 publication Critical patent/WO2020168827A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries

Definitions

  • the present disclosure relates to the field of computer technology, and to index of interest points based on geographic location.
  • the point of interest index refers to a search mode that selects the corresponding category according to the user's interest and queries related point of interest information. For example, finding high-quality and suitable group-buying information near the user's location in a group-buying website is a kind of index of interest points.
  • a method for indexing points of interest based on geographic location including: obtaining longitude and latitude information carried in a user request, and encoding the longitude and latitude information to obtain a corresponding target geographic block code; Map the target geographic block code to the code of the target group containing the target geographic block; expand the target group according to the score of the target group and the request conditions carried in the user request to obtain an extended group; The coding of the target group and the coding of the expansion group obtain interest points corresponding to the target group and the expansion group.
  • the method before mapping the target geographic block code to the code of the target group containing the target geographic block, the method further includes: performing geocoding on the geographic area to be indexed to obtain the Geographic blocks and corresponding geographic block codes, the multiple geographic blocks are set as at least one sub-area according to reference rules; the multiple geographic blocks are scored according to the attributes of points of interest in the multiple geographic blocks; For the scores of the multiple geographic blocks, the geographic blocks in each of the sub-regions are respectively combined into groups with codes to form a mapping relationship between the geographic block codes and the codes of the groups.
  • the scoring formula for scoring the multiple geographic blocks according to the attributes of points of interest in the multiple geographic blocks is:
  • n is the number of points of interest included in the geographic block
  • bid k is the bid of the k-th point of interest
  • ctr k is the historical click-through rate of the k-th point of interest
  • poi_attr k is the attribute score of the k-th point of interest.
  • is the specific gravity value.
  • combining the geographic blocks in each of the sub-regions into groups with codes according to the scores of the multiple geographic blocks includes: ungrouped geographic block geographic bin highest score credited C i O maxi group; score calculated in all geographic bin group and C i, C i obtained scores of the group; and if the rates C i is greater than a set reference value, Stop adding geographic blocks to the C i group. If the score of the C i group is less than the reference value, the adjacent geographic block with the highest score and ungrouped adjacent to the geographic block O maxi will be recorded in the C i group, Until the score of the Ci group is greater than the reference value or there is no adjacent geographic block adjacent to the geographic block O maxi .
  • the target group is expanded according to the score of the target group and the request condition carried in the user request to obtain the expanded group, including: if the score of the target group is less than the request condition value, Then the target group is expanded, and the expanded group is the group with the highest score among the groups adjacent to the target group; if the target group score is greater than the request condition value, and the target geographic block is the geographic block at the edge of the subregion, the target group
  • the expansion group is a group adjacent to the target group in a subregion adjacent to the subregion where the target geographic block is located.
  • the method further includes: if it is determined not to expand the target group according to the score of the target group and the request condition carried in the user request, obtaining the corresponding target group List of points of interest.
  • updating the mapping includes: if a change in the point of interest in the target geographic block is detected, re-analyzing the target geographic block Perform scoring; based on the updated score of the target geographic block, recombine the geographic blocks in each sub-region to form a new group with codes.
  • a device for indexing points of interest based on geographic location including: an encoding unit for obtaining longitude and latitude information carried in a user request, and encoding the longitude and latitude information to obtain the corresponding Target geographic block coding; mapping unit, used to map the target geographic block coding to the code of the target group containing the target geographic block; extension unit, used to base the score of the target group and the request carried in the user request The condition expands the target group to obtain an extended group; an obtaining unit is configured to obtain points of interest corresponding to the target group and the extended group according to the code of the target group and the code of the extended group.
  • the mapping unit is configured to: perform geocoding on the geographic area to be indexed to obtain multiple geographic blocks and corresponding geographic block codes, and convert the multiple geographic blocks according to reference rules Set as at least one sub-region; score the multiple geographic blocks according to the attributes of the points of interest in the multiple geographic blocks; divide the geographic blocks in each of the sub-regions according to the scores of the multiple geographic blocks Combine them into groups with codes to form a mapping relationship between geographic block codes and group codes.
  • mapping unit is configured as follows: the scoring formula for scoring geographic blocks according to the attributes of points of interest is:
  • n is the number of points of interest included in the geographic block
  • bid k is the bid of the k-th point of interest
  • ctr k is the historical click-through rate of the k-th point of interest
  • poi_attr k is the attribute score of the k-th point of interest.
  • is the specific gravity value.
  • the mapping unit is configured to: record the geographic block O maxi with the highest score among the ungrouped geographic blocks in the subregion into the C i group; calculate the C i group All blocks within the geographic score and give scores of the group C i; C i if the score is greater than a set reference value, the geographic bin was added to stop the group of C i, C i if the score is less than the reference value set , Then the adjacent geographic block with the highest score and ungrouped adjacent to the geographic block O maxi is recorded in the Ci group until the score of the Ci group is greater than the reference value or there is no adjacent geographic block adjacent to the geographic block O maxi until.
  • the expansion unit is configured to expand the target group if the score of the target group is less than the request condition value, and the expansion group is the group adjacent to the target group The group with the highest score; if the score of the target group is greater than the requested condition value and the target geographic block is the geographic block at the edge of the sub-region, the target group is expanded.
  • the extended group is the sub-region adjacent to the sub-region where the target geographic block is located. The group adjacent to the target group.
  • the obtaining unit is configured to: if the target group is determined not to be expanded according to the score of the target group and the request conditions carried in the user request, the target group is obtained. A list of corresponding points of interest.
  • the mapping unit is configured to: if a change in the point of interest in the target geographic block is detected, re-scoring the target geographic block; based on the target geographic block After the updated score of the block, the geographic blocks in each sub-region are recombined to form a new group with codes.
  • a computer-readable medium having a computer program stored thereon, and when the program is executed by a processor, the geographical location-based Point of interest index method.
  • an electronic device including: one or more processors; a storage device, configured to store one or more programs, when the one or more programs are used by the one When executed by the one or more processors, the one or more processors implement the method for indexing points of interest based on geographic location as described in the first aspect of the foregoing embodiments.
  • the longitude and latitude information carried in the user request is mapped to the target group by encoding and mapping, and the target group is evaluated according to the score of the target group and the request conditions carried in the user request.
  • the target group is expanded, and finally points of interest corresponding to the target group and the expanded group are obtained.
  • the technical solution of the embodiment of the present disclosure expands the target group according to the interest rating score, and achieves the purpose of controlling the number and quality of the indexed interest points. At the same time, even when the user is at the edge of a geographic block, this extended indexing method can overcome the problem of mismatching or incomplete retrieval of points of interest with the user.
  • Fig. 1 schematically shows a flowchart of a method for indexing points of interest based on geographic location according to an embodiment of the present disclosure
  • FIG. 2 schematically shows a flowchart of a method for establishing a mapping according to an embodiment of the present disclosure
  • Fig. 3 schematically shows a flowchart of a method for grouping geographic blocks according to scores according to an embodiment of the present disclosure
  • FIG. 4 shows a schematic diagram of the sequence of recording adjacent geographic blocks adjacent to geographic blocks into groups according to an embodiment of the present disclosure
  • Fig. 5 shows an implementation method of a method for indexing points of interest based on geographic location according to an embodiment of the present disclosure
  • Fig. 6 shows a result diagram of grouping geographic blocks in sub-regions according to an embodiment of the present disclosure
  • Fig. 7 schematically shows a flowchart of a target group expansion method according to an embodiment of the present disclosure
  • Fig. 8 schematically shows a flowchart of a method for updating a mapping according to an embodiment of the present disclosure
  • Fig. 9 shows an implementation method of updating a mapping according to an embodiment of the present disclosure
  • Fig. 10 schematically shows a schematic diagram of the composition of an apparatus for indexing points of interest based on geographic location according to an embodiment of the present disclosure
  • FIG. 11 shows a schematic structural diagram of a computer system suitable for implementing an electronic device of an embodiment of the present disclosure.
  • the point of interest index refers to a search mode that selects the corresponding category according to the user's interest and queries related point of interest information. For example, finding high-quality and suitable group-buying information near the user's location in a group-buying website is a kind of index of interest points.
  • the common method of indexing points of interest is based on geographic location. It searches the corresponding points of interest in the geographic block where the user is located by dividing the latitude and longitude into blocks according to certain rules, so as to achieve the purpose of searching for matching points of interest with the user.
  • this method of indexing points of interest is only based on geographic location, it is not highly targeted, and it is easy to cause the problem that the quantity or quality of points of interest does not meet user requirements.
  • this indexing method of retrieving points of interest in a single block will also cause the edge problem that the points of interest do not match the user and the retrieval of points of interest is incomplete.
  • Fig. 1 schematically shows a flowchart of a method for indexing points of interest based on geographic location according to an embodiment of the present disclosure.
  • the execution subject of the method for indexing points of interest based on geographic location may be a client, a server, a terminal device, etc., with an indexing function.
  • the method for indexing points of interest based on geographic location includes the following steps S110 to S140, which are described in detail below:
  • step S110 the latitude and longitude information carried in the user request is obtained, and the latitude and longitude information is encoded to obtain the corresponding target geographic block code.
  • encoding rules such as GEOHASH encoding or S2GEO encoding may be used to encode the latitude and longitude information to obtain a set of string codes corresponding to the blocks, and further indexing can be performed accordingly. That is, the latitude and longitude information is encoded as a set of character string codes, and the character string code is used as the target geographic block code corresponding to the latitude and longitude information.
  • the target geographic block corresponding to the latitude and longitude information refers to the geographic block where a geographic location corresponding to the latitude and longitude information is located. After that, further indexing can be performed according to the target geographic block coding.
  • step S120 the target geographic block code is mapped to the code of the target group containing the target geographic block.
  • mapping when the target geographic block code is mapped to the code of the target group containing the target geographic block, the mapping can be implemented in multiple ways. For example, mapping can be achieved through a code mapping table.
  • mapping the target geographic block encoding to the encoding of the target group containing the target geographic block a mapping relationship needs to be established for the mapping, and the method for establishing the mapping relationship is described in FIG. 2
  • the display includes the following steps S210 to S230, which are described in detail below:
  • step S210 the geographic area to be indexed is geocoded to obtain multiple geographic blocks and corresponding geographic block codes, and the multiple geographic blocks are set as at least one subregion according to the reference rule.
  • the geographic area to be indexed may be set according to the area served by the index client or server.
  • the index server serving China the geographic area to be indexed may be China; for another example, the geographic area serving Shanghai Index server, the geographic area to be indexed can be Shanghai. Since the geographic area to be indexed may be a large geographic area, the geographic area to be indexed may be geocoded to obtain multiple geographic blocks and corresponding geographic block codes, so as to facilitate accurate indexing of points of interest.
  • multiple geographic blocks within the same geographic range in the geographic area can be set as at least one regular sub-areas.
  • the reference rule may be the number of reference blocks, and the number of reference blocks may be set in the form of the product of two positive integers, for example, it may be 4*4 blocks, 3*5 blocks, and so on.
  • the number of geographic blocks in the sub-region can be set according to the attributes of the geographic blocks. In areas with many points of interest, the number of reference blocks in the sub-region can be a smaller value. In areas with fewer points of interest, the reference block of the sub-region The number of blocks can take a larger value.
  • the geographic block located in Shanghai may contain many points of interest, while the geographic block located in Lhasa may contain relatively few points of interest. Therefore, the geographic block located in Shanghai can be combined into multiple regular sub-regions, each of which contains The number of geographic blocks can be a smaller value.
  • the setting of the number of reference blocks for each sub-region may be the same.
  • step S220 score the multiple geographic blocks according to the attributes of the points of interest in the multiple geographic blocks.
  • the score can be based on the attributes of the points of interest in the geographic block, for example, the bids of the points of interest, historical click-through rate, attribute scores, etc. can be scored.
  • the scoring formula is:
  • n is the number of points of interest contained in the geographic block
  • bid k is the bid of the k-th point of interest
  • the bid of the point of interest refers to the resource value paid by the operator of the point of interest to promote the point of interest
  • ctr k Is the historical click rate of the k-th point of interest
  • poi_attr k is the attribute score of the k-th point of interest
  • is the proportion value.
  • the information used in scoring the points of interest in this embodiment includes, but is not limited to, the bids, historical click rates, and attribute scores of the aforementioned points of interest. In implementation, you can also select other information to score points of interest based on experience or actual needs.
  • the resulting combination scores points of interest may include a variety of information such as the number of historical evaluations of points of interest, favorable rate, negative rate, per capita consumer price, and passenger flow index.
  • scoring points of interest in this embodiment is not limited to the above scoring formula.
  • the weighted sum, product, or score obtained through one or more other calculation methods of all the information used to score the point of interest can also be used as the score of the point of interest.
  • step S220 according to the scores of the multiple geographic blocks, the geographic blocks in each of the sub-regions are respectively combined into groups with codes to form a mapping relationship between the geographic block codes and the codes of the groups.
  • the geographic blocks in the respective geographic regions are combined into a coded group, wherein O represents the geographic block corresponding to the geographic block Encoding, with C representing the encoding of the group, as shown in Figure 3, includes the following steps:
  • step S310 the geographic block O maxi with the highest score among the ungrouped geographic blocks in the geographic area is recorded in the C i group.
  • Step S320 the score calculation in all geographic bin group and C i, C i obtained score group.
  • Step S330 the group C i if the score is greater than a reference value, the geographic bin was added to stop the group of C i, C i if the score is less than the reference set value, the geographic bin adjacent O maxi, Rating The highest and ungrouped adjacent geographic block is recorded in the Ci group until the score of the Ci group is greater than the reference value or there is no adjacent geographic block adjacent to the geographic block O maxi .
  • the reference value may be set according to the attribute of the geographic area to which the sub-region belongs. For example, when geographical areas are divided according to cities, the sub-regions of large cities such as Beijing, Shanghai, and Guangzhou have many points of interest. You can set the reference value to a smaller value to ensure that the number of points of interest in the same group is moderate. Reduce the consumption of retrieval resources, and for sub-regions of other cities with few points of interest, you can set the reference value to a larger value to ensure that there are more points of interest in the same group and avoid the problem of insufficient retrieval points of interest .
  • the adjacent geographic blocks include directly adjacent geographic blocks and indirect adjacent geographic blocks.
  • the top, bottom, left and right four blocks of the geographic block O maxi are directly adjacent geographic blocks, and the geographic blocks adjacent to the geographic block O maxi in an oblique direction are indirect adjacent geographic blocks, where the numbers in the geographic blocks Represents the score of this geographic block.
  • the ungrouped adjacent geographic blocks can be added according to the scores (for example, in the order of scores 10, 9, 8, and 5).
  • Directly adjacent geographic blocks are added to indirect adjacent geographic blocks according to the score (for example, in the order of 7, 5, 3, 2).
  • the corresponding relationship between the geographic blocks and the groups is formed, and the mapping relationship between the geographic block codes and the codes of the groups is correspondingly formed.
  • the geographic block whose geographic block code is O1 is added to the C1 group, and the geographic block code O1 forms a mapping relationship with the group code C1.
  • the embodiment of the present disclosure provides an implementation solution. Referring to FIG. 5, the details are as follows:
  • Step S510 Obtain user longitude and latitude information lat and lng carried in the user request. Where lat represents latitude information, and lng represents longitude information.
  • step S520 (lat, lnt) is coded by the GEOHASH formula to obtain the corresponding code CODEX.
  • CODEX is the target geographic block code.
  • Step S530 Map CODEX to the system code through the code mapping table to obtain the system code NEW_CODEX.
  • NEW_CODEX is the code of the target group containing the target geographic block.
  • Step S540 according to the score of NEW_CODEX itself and the request condition, determine the extension code in the extension unit, and the extension code is NEW_CODEY.
  • the score of NEW_CODEX itself is the score of the target group, and the extension unit can be the decision maker. That is, in this implementation scheme, the decision maker can determine whether the target group needs to be expanded according to the score of the target group and the request conditions. If expansion is needed, the code of the expansion group obtained by the expansion is NEW_CODEY.
  • step S550 the inverted index searches for NEW_CODEX and NEW_CODEY to obtain a list of points of interest.
  • Step S560 Filter the interest points in the interest point list.
  • filtering can be achieved by combining user requests and relevant information of points of interest.
  • the interest points that do not match the user request can be filtered out from the interest point list.
  • the point of interest required by the user request is a flower shop
  • the points of interest that are not the flower shop can be filtered from the list of points of interest.
  • the number of points of interest in the point of interest list that does not match the user's request is often small or zero.
  • the purpose of filtering according to the user's request is to ensure that the points of interest are completely matched with the user's request.
  • Step S570 supplementing material information for each point of interest in the list of points of interest.
  • the material information supplemented for the point of interest includes, but is not limited to, one or more of the text, pictures, and video used to describe the point of interest.
  • Step S580 Obtain supplementary points of interest, and perform deduplication and merge on the supplementary points of interest and the points of interest in the list of points of interest.
  • This embodiment does not limit the way of acquiring supplementary points of interest.
  • all the points of interest of each type can be arranged in the order from high to low to obtain a sequence of points of interest, and the first reference number of points of interest in the sequence of points of interest can be used as supplementary points of interest.
  • Complement points of interest for corresponding storage In this way, the supplementary points of interest corresponding to the types of the points of interest in the list of points of interest can be determined according to the types of points of interest in the list of points of interest, so as to obtain the supplementary points of interest.
  • the supplementary points of interest and the points of interest in the list of points of interest are also deduplicated and merged to avoid recommending duplicate points of interest to the user.
  • Step S590 Arrange the interest points after deduplication and merge according to the reference order, and the arranged interest points are used for display.
  • the user's historical click data can be obtained, and the user's personal preferences can be analyzed according to the historical click data, so as to arrange the points of interest after deduplication and merge according to the user's personal preferences.
  • the merged and deduplicated points of interest can also be sorted according to business logic, for example, the business logic that sorts the points of interest with a shorter online time.
  • the arrangement can also be implemented in a user-defined order, and this embodiment does not limit the arrangement.
  • this embodiment does not limit the execution order of the foregoing steps S560, S570, S580, and S590.
  • the above steps S560, S570, S580, and S590 are also executed in other orders.
  • the basic coding scheme is as follows:
  • Geographic block basic geocoding block, such as GEOHASH or S2GEO geocoding, this scheme uniformly uses GEOHASH as the default block code.
  • the geographic block is bound to the geographic location corresponding to the geographic block corresponding to the CODEX obtained by encoding according to the latitude and longitude before the code mapping in this scheme.
  • the "group” corresponds to the group consisting of at least one geographic block corresponding to NEW_CODEX obtained after code mapping in this scheme; the group code is the code obtained after mapping, and the group The coding is changeable. Multiple geographic blocks will be combined into groups, and each group is mutually exclusive. Different groups will not have the same geographic block, and the group is not bound to the location.
  • Sub-region A range of geocoding blocks is a sub-region, and the sub-regions are regular. When coding, the geographic blocks in the sub-region will be grouped to facilitate parallel calculation and management, and it is convenient to target different sub-regions. (Such as city, business district) for personalized settings.
  • Group the geographic blocks in each geographic area to form the mapping relationship between geographic blocks and groups as follows:
  • the geographic block For each geographic area, the geographic block is scored, with O representing the GEOHAH code and the score of this block, and Ci representing the group code.
  • Direct adjacent refers to the up, down, left, and right adjacent relationship of a geographic block
  • indirect adjacent refers to the diagonally adjacent relationship of a geographic block, as shown in Figure 4.
  • step 6 If the sum score of all geographic blocks in C i is greater than or equal to the reference value, step 6 is executed.
  • the scoring formula for the score corresponding to each geographic block is:
  • n is the number of points of interest included in the geographic block
  • bid k is the bid of the k-th point of interest
  • ctr k is the historical click-through rate of the k-th point of interest
  • poi_attr k is the attribute score of the k-th point of interest.
  • is the specific gravity value.
  • the geographic blocks in the geographic area in the figure are grouped according to the above solution.
  • the number in the geographic block represents the score of the geographic block, and the letter O and the number after it represent the code of the geographic block.
  • the reference value is 70, the grouping results are as follows:
  • Group C1 includes geographic block O6;
  • Group C2 includes geographic block O3;
  • Group C3 includes geographic blocks O5, O4, O8;
  • Group C4 includes geographic block O9;
  • Group C5 includes geographic block O7;
  • Group C6 includes geographic blocks O2, O1;
  • the order of grouping is from C1 to C6, and the order of geographic block coding in each group is the order in which the geographic blocks are added to the group.
  • step S130 the target group is expanded according to the score of the target group and the request condition carried in the user request to obtain an expanded group.
  • the method for expanding the target group to obtain an expanded group according to the score of the target group and the request conditions carried in the user request includes the following steps:
  • Step S710 If the score of the target group is less than the request condition value, the target group is expanded, and the expanded group is the group with the largest score among the groups adjacent to the target group.
  • Step S720 if the target group score is greater than the request condition value and the target geographic block is a geographic block at the edge of the subregion, the target group is expanded, and the extended group is the target group in the subregion adjacent to the subregion where the target geographic block is located. Adjacent groups.
  • the request condition may be set by the client or server that implements retrieval, or may be customized by the user.
  • the e-commerce platform can set request conditions for clients, servers, etc., to ensure the stability of the e-commerce platform server and reduce resource consumption during retrieval; for another example, the request can be customized according to user needs.
  • the request condition value is set to a larger value.
  • the request condition value is set to a smaller value to reduce network resources consumed by retrieval.
  • step S140 according to the code of the target group and the code of the extended group, points of interest corresponding to the target group and the extended group are obtained.
  • a list of interest points corresponding to the target group is obtained.
  • the target geographic block is an internal block of the subregion, it may be determined not to expand the target group.
  • mapping is updated, and the method for updating the mapping is shown in FIG. 8, including the following steps S810 to S820, which will be described in detail below:
  • step S810 if it is detected that the points of interest in the target geographic block have changed, the target geographic block is scored again.
  • the change of the point of interest includes adding or deleting a point of interest.
  • the interest point can be detected in real time, or it can be detected periodically at a time interval. For example, real-time detection of whether interest points have changed, and immediately update the mapping when interest points are added or deleted; another example is to set a one-day time interval, and perform regular inspections at 24 o'clock every night, based on the addition or deletion of interest points within 24 hours , Update the mapping uniformly.
  • step S820 based on the updated score of the target geographic block, the geographic blocks in each geographic area are recombined to form a new coded group.
  • the score of the target geographic block where the point of interest is located will change, which will affect the score of the target group containing the target geographic block. Therefore, when points of interest are added or deleted, the geographic blocks in the geographic area where the target group is located need to be recombined to form a new group with codes.
  • the embodiment of the present disclosure provides an implementation scheme, as shown in FIG. 9, the details are as follows:
  • step S910 the latitude and longitude (lat, lng) of one or more of the newly added points of interest, the deleted points of interest, and the points of interest whose scores have changed are subjected to GEOHAH encoding to be coded into a CODEX block.
  • Step S920 Record the score changes of one or more of the newly added points of interest, the deleted points of interest, and the points of interest whose scores have changed into the CODEX block, corresponding to the score changes of the CODEX block.
  • Step S930 Map the CODEX block to the CLASSY group through the code mapping table, and update the score corresponding to the CLASSY group.
  • Step S940 Determine the magnitude relationship between the CODEX block score, the CLASSY group score and the reference value.
  • step S950 if the CLASSY group score increases, and the score of the CODEX block with the added score is greater than the reference value, then CODEX is newly established as the CLASSX group. If the score of the CLASSY group increases and the score of the CODEX block with the added score is less than the reference value or the score of the CLASSY group drops below the reference value, the blocks in the area where the CODEX block is located are regrouped. If the score of the CLASSY group decreases but is still greater than the reference value, no regrouping will be performed.
  • Step S960 update each group information and its score.
  • the following describes the device embodiments of the present disclosure, which can be used to implement the above-mentioned method for indexing points of interest based on geographic location in the present disclosure.
  • Fig. 10 schematically shows a block diagram of a device for indexing points of interest based on geographic location according to an embodiment of the present disclosure.
  • the device can be set on a terminal device with interest indexing requirements or a client with indexing requirements installed.
  • the apparatus 1000 for indexing points of interest based on geographic location includes: an encoding unit 1001, a mapping unit 1002, an extension unit 1003, and an acquisition unit 1004.
  • the encoding unit 1001 is used to obtain the longitude and latitude information carried in the user request, and to encode the longitude and latitude information to obtain the corresponding target geographic block code;
  • the mapping unit 1002 is used to map the target geographic block code to include the target The coding of the target group of the geographic block;
  • the expansion unit 1003 is used to expand the target group according to the score of the target group and the request conditions carried in the user request to obtain the expansion group;
  • the acquisition unit 1004 is used to obtain the expansion group according to the target group Encoding and encoding of the expansion group to obtain points of interest corresponding to the target group and the expansion group.
  • the mapping unit 1002 is configured to: perform geocoding on the geographic area to be indexed to obtain multiple geographic blocks and corresponding geographic block codes, and convert the multiple geographic regions according to reference rules.
  • the block is set as at least one sub-region; the multiple geographic blocks are scored according to the attributes of the points of interest in the multiple geographic blocks; the geographic regions in each of the sub-regions are scored according to the scores of the multiple geographic blocks.
  • the blocks are respectively combined into groups with codes to form a mapping relationship between geographic block codes and group codes.
  • the mapping unit 1002 is configured to: the scoring formula for scoring geographic blocks according to the attributes of the points of interest is:
  • n is the number of points of interest included in the geographic block
  • bid k is the bid of the k-th point of interest
  • ctr k is the historical click-through rate of the k-th point of interest
  • poi_attr k is the attribute score of the k-th point of interest.
  • is the specific gravity value.
  • the mapping unit 1002 is configured to: record the geographic block O maxi with the highest score among the ungrouped geographic blocks in the subregion into the C i group; calculate C i All rates and geographic bin in the group, to give scores of the group C i; C i if the score is greater than a set reference value, the geographic bin was added to stop the group of C i, C i if the score is less than the reference group Value, the adjacent geographic block adjacent to the geographic block O maxi and the highest score is recorded in the Ci group until the score of the Ci group is greater than the reference value or there is no adjacent geographic block adjacent to the geographic block O maxi .
  • the expansion unit 1003 is configured to expand the target group if the score of the target group is less than the request condition value, and the expansion group is a group adjacent to the target group. If the score of the target group is greater than the requested condition value, and the target geographic block is a geographic block at the edge of the sub-region, the target group is expanded, and the extended group is in the sub-region adjacent to the sub-region where the target geographic block is located The group adjacent to the target group.
  • the obtaining unit 1004 is configured to: if the target group is determined not to be expanded according to the score of the target group and the request conditions carried in the user request, then the target group is obtained. List of points of interest corresponding to the group.
  • the mapping unit 1002 is configured to: if a change in the point of interest in the target geographic block is detected, re-scoring the target geographic block; based on the target The updated score of the geographic block recombines the geographic blocks in each sub-region to form a new group with codes.
  • FIG. 11 shows a schematic structural diagram of a computer system 1100 suitable for implementing an electronic device of the embodiments of the present disclosure.
  • the computer system 1100 of the electronic device shown in FIG. 11 is only an example, and should not bring any limitation to the function and scope of use of the embodiments of the present disclosure.
  • the computer system 1100 includes a central processing unit (CPU) 1101, which can be based on a program stored in a read-only memory (ROM) 1102 or a program loaded from a storage portion 1108 into a random access memory (RAM) 1103 And perform various appropriate actions and processing.
  • CPU central processing unit
  • RAM random access memory
  • various programs and data required for system operation are also stored.
  • the CPU 1101, the ROM 1102, and the RAM 1103 are connected to each other through a bus 1104.
  • An input/output (I/O) interface 1105 is also connected to the bus 1104.
  • the following components are connected to the I/O interface 1105: an input portion 1106 including a keyboard, a mouse, etc.; an output portion 1107 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and speakers, etc.; a storage portion 1108 including a hard disk, etc. ; And a communication section 1109 including a network interface card such as a LAN card, a modem, and the like. The communication section 1109 performs communication processing via a network such as the Internet.
  • the driver 1110 is also connected to the I/O interface 1105 as needed.
  • a removable medium 1111 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1110 as needed, so that the computer program read from it is installed into the storage portion 1108 as needed.
  • the process described above with reference to the flowchart can be implemented as a computer software program.
  • the embodiments of the present disclosure include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart.
  • the computer program may be downloaded and installed from the network through the communication part 1109, and/or installed from the removable medium 1111.
  • the central processing unit (CPU) 1101 the above-mentioned functions defined in the system of the present application are executed.
  • the computer-readable medium shown in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two.
  • the computer-readable storage medium may be, for example, but not limited to, an electric, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable Programmable read only memory (EPROM or flash memory), optical fiber, portable compact disk read only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program, and the program may be used by or in combination with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in a baseband or as a part of a carrier wave, and a computer-readable program code is carried therein. This propagated data signal can take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • the computer-readable signal medium may also be any computer-readable medium other than the computer-readable storage medium.
  • the computer-readable medium may send, propagate, or transmit the program for use by or in combination with the instruction execution system, apparatus, or device .
  • the program code contained on the computer-readable medium can be transmitted by any suitable medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.
  • each block in the flowchart or block diagram may represent a module, program segment, or part of code, and the above-mentioned module, program segment, or part of code contains one or more for realizing the specified logical function Executable instructions.
  • the functions marked in the block may also occur in a different order from the order marked in the drawings. For example, two blocks shown in succession can actually be executed substantially in parallel, or they can sometimes be executed in the reverse order, depending on the functions involved.
  • each block in the block diagram or flowchart, and the combination of blocks in the block diagram or flowchart can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or can be It is realized by a combination of dedicated hardware and computer instructions.
  • the units involved in the embodiments described in the present disclosure may be implemented in software or hardware, and the described units may also be provided in a processor. Among them, the names of these units do not constitute a limitation on the unit itself under certain circumstances.
  • this application also provides a computer-readable medium.
  • the computer-readable medium may be included in the electronic device described in the above-mentioned embodiments; or it may exist alone without being assembled into the electronic device. in.
  • the aforementioned computer-readable medium carries one or more programs. When the aforementioned one or more programs are executed by an electronic device, the electronic device realizes the method for indexing points of interest based on geographic location as described in the aforementioned embodiment.
  • the electronic device may implement the following: step S110, obtain the latitude and longitude information carried in the user request, and encode the longitude and latitude information to obtain the corresponding target geographic block code; step S120, The target geographic block code is mapped to the code of the target group containing the target geographic block; step S130, the target group is expanded according to the score of the target group and the request conditions carried in the user request to obtain an extended group; step S140 , According to the code of the target group and the code of the expansion group, obtain the points of interest corresponding to the target group and the expansion group.
  • the electronic device can implement the steps shown in FIGS. 2 to 3, 5, and 7 to 9.
  • modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory.
  • the features and functions of two or more modules or units described above may be embodied in one module or unit.
  • the features and functions of a module or unit described above can be further divided into multiple modules or units to be embodied.
  • the exemplary embodiments described herein can be implemented by software, or can be implemented by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, U disk, mobile hard disk, etc.) or on the network , Including several instructions to make a computing device (which may be a personal computer, a server, a touch terminal, or a network device, etc.) execute the method according to the embodiments of the present disclosure.
  • a computing device which may be a personal computer, a server, a touch terminal, or a network device, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于地理位置的兴趣点索引方法,包括:获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得到对应的目标地理块编码(S110);将所述目标地理块编码映射为包含所述目标地理块的目标组的编码(S120);根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组(S130);根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点(S140)。

Description

基于地理位置的兴趣点索引
本公开要求于2019年2月22日提交的申请号为201910133050.X、申请名称为“基于地理位置的兴趣点索引方法、装置、介质及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。
技术领域
本公开涉及计算机技术领域,涉及基于地理位置的兴趣点索引。
背景技术
随着用户对个性化服务的要求越来越高,通用搜索引擎逐渐衍生出了兴趣点索引这种搜索模式。兴趣点索引是指按照用户的兴趣选择相应类别,查询相关的兴趣点信息的搜索模式。例如,在团购网站中找到在用户所处位置附近的优质、适合于用户的团购信息就是一种兴趣点索引。
发明内容
本公开实施例的目的在于提供基于地理位置的兴趣点索引,本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的第一方面,提供了一种基于地理位置的兴趣点索引方法,包括:获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得到对应的目标地理块编码;将所述目标地理块编码映射为包含所述目标地理块的目标组的编码;根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组;根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点。
在本公开的一些实施例中,基于前述方案,将所述目标地理块编码映射为包含所述目标地理块的目标组的编码之前,所述方法还包括:对待索引地理区域进行地理编码得到多个地理块以及对应的地理块编码,按参考规则将所述多个地理块设置为至少一个子区域;根据所述多个地理块中的兴趣点属性对所述多个地理块进行评分;根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,以形成地理块编码与组的编码之间的映射关系。
在本公开的一些实施例中,基于前述方案,根据所述多个地理块中的兴趣点属性对所述多个地理块进行评分的评分公式为:
Figure PCTCN2019129395-appb-000001
其中,n为地理块中包含的兴趣点的个数,bid k为第k个兴趣点的出价,ctr k为第k个兴趣点的历史点击率,poi_attr k为第k个兴趣点的属性分,λ为比重值。
在本公开的一些实施例中,基于前述方案,根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,包括:将所述子区域内未分组的地理块中评分最高的地理块O maxi记入C i组;计算C i组内所有地理块的评分和,得到C i组的评分;若所述C i组的评分大于参考值,则停止向C i组加入地理块,若所述C i组的评分小于所述参考值,则将与地理块O maxi相邻,评分最高且未分组的相邻地理块记入C i组,直至C i组的评分大于参考值或者没有与地理块O maxi相邻的相邻地理块为止。
在本公开的一些实施例中,基于前述方案,根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组,包括:若目标组评分小于请求条件值,则对目标组进行扩展,扩展组为与所述目标组相邻的组中评分最大的组;若目标组评分大于请求条件值,且目标地理块为子区域边缘的地理块时,对目标组进行扩展,扩展组为与目标地理块所在子区域相邻的子区域内与目标组相邻的组。
在本公开的一些实施例中,基于前述方案,所述方法还包括:若根据所述目标组的评分及用户请求中携带的请求条件确定不对所述目标组进行扩展,则获得目标组对应的兴趣点列表。
在本公开的一些实施例中,基于前述方案,若检测到兴趣点发生变化,则更新所述映射,包括:若检测到目标地理块中的兴趣点发生变化,则重新对所述目标地理块进行评分;基于所述目标地理块更新后的评分,将各个子区域内的地理块重新组合形成新的带有编码的组。
根据本公开实施例的第二方面,提供了一种基于地理位置的兴趣点索引装置,包括:编码单元,用于获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得到对应的目标地理块编码;映射单元,用于将所述目标地理块编码映射为包含所述目标地理块的目标组的编码;扩展单元,用于根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组;获取单元,用于根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点。
在本公开的一些实施例中,基于前述方案,所述映射单元的配置为:对待索引地理区 域进行地理编码得到多个地理块以及对应的地理块编码,按参考规则将所述多个地理块设置为至少一个子区域;根据所述多个地理块中的兴趣点属性对所述多个地理块进行评分;根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,以形成地理块编码与组的编码之间的映射关系。
在本公开的一些实施例中,基于前述方案,所述映射单元的配置为:根据兴趣点属性对地理块进行评分的评分公式为:
Figure PCTCN2019129395-appb-000002
其中,n为地理块中包含的兴趣点的个数,bid k为第k个兴趣点的出价,ctr k为第k个兴趣点的历史点击率,poi_attr k为第k个兴趣点的属性分,λ为比重值。
在本公开的一些实施例中,基于前述方案,所述映射单元的配置为:将所述子区域内未分组的地理块中评分最高的地理块O maxi记入C i组;计算C i组内所有地理块的评分和,得到C i组的评分;若所述C i组的评分大于参考值,则停止向C i组加入地理块,若所述C i组的评分小于所述参考值,则将与地理块O maxi相邻,评分最高且未分组的相邻地理块记入C i组,直至C i组的评分大于参考值或者没有与地理块O maxi相邻的相邻地理块为止。
在本公开的一些实施例中,基于前述方案,所述扩展单元的配置为:若目标组评分小于请求条件值,则对目标组进行扩展,扩展组为与所述目标组相邻的组中评分最大的组;若目标组评分大于请求条件值,且目标地理块为子区域边缘的地理块时,对目标组进行扩展,扩展组为与目标地理块所在子区域相邻的子区域内与目标组相邻的组。
在本公开的一些实施例中,基于前述方案,所述获取单元的配置为:若根据所述目标组的评分及用户请求中携带的请求条件确定不对所述目标组进行扩展,则获得目标组对应的兴趣点列表。
在本公开的一些实施例中,基于前述方案,所述映射单元的配置为:若检测到目标地理块中的兴趣点发生变化,则重新对所述目标地理块进行评分;基于所述目标地理块更新后的评分,将各个子区域内的地理块重新组合形成新的带有编码的组。
根据本公开实施例的第三方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中第一方面所述的基于地理位置的兴趣点索引方法。
根据本公开实施例的第四方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中第一方面所述的基于地理位置的兴趣 点索引方法。
本公开实施例提供的技术方案可以包括以下有益效果:
在本公开的一些实施例所提供的技术方案中,通过将用户请求中携带的经纬度信息通过编码和映射的方式对应至目标组,并根据目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展,最终获取对应于目标组和扩展组的兴趣点。本公开实施例的技术方案根据兴趣点评分对目标组进行扩展,实现了控制索引到的兴趣点的数量和质量的目的。同时,即使在用户处于地理块边缘时,这种扩展的索引方式也能够克服兴趣点与用户不匹配或检索不全的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了根据本公开的一个实施例的基于地理位置的兴趣点索引方法的流程图;
图2示意性示出了根据本公开一个实施例的建立映射的方法的流程图;
图3示意性示出了根据本公开一个实施例的根据评分对地理块分组方法的流程图;
图4示出了根据本公开一个实施例的将与地理块相邻的相邻地理块记入分组的顺序的示意图;
图5示出了根据本公开实施例的一个基于地理位置的兴趣点索引方法的实现方法;
图6示出了根据本公开实施例的一个对子区域中地理块进行分组的结果图;
图7示意性示出了根据本公开一个实施例的目标组扩展方法的流程图;
图8示意性示出了根据本公开一个实施例的更新映射的方法的流程图;
图9示出了根据本公开一个实施例的更新映射的实现方法;
图10示意性示出了根据本公开的一个实施例的基于地理位置的兴趣点索引装置的组成示意图;
图11示出了适于用来实现本公开实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
随着用户对个性化服务的要求越来越高,通用搜索引擎逐渐衍生出了兴趣点索引这种搜索模式。兴趣点索引是指按照用户的兴趣选择相应类别,查询相关的兴趣点信息的搜索模式。例如,在团购网站中找到在用户所处位置附近的优质、适合于用户的团购信息就是一种兴趣点索引。目前常见的兴趣点索引方式是基于地理位置的索引,它通过将经纬度按照一定规则分块,在用户所处的地理块内检索相应的兴趣点,实现检索与用户匹配兴趣点的目的。但是,由于这种兴趣点索引方式对只单纯针对地理位置进行分块,因而针对性不强,容易造成兴趣点的数量或质量不符合用户要求的问题。同时,在用户处于地理块的边缘时,这种检索单一分块中的兴趣点的索引方式也会造成兴趣点与用户不匹配,且兴趣点检索不全的边缘问题。
图1示意性示出了根据本公开的一个实施例的基于地理位置的兴趣点索引方法的流程图。该基于地理位置的兴趣点索引方法的执行主体可以是具有索引功能的客户端、服务器、终端设备等。
参照图1所示,根据本公开的一个实施例的基于地理位置的兴趣点索引方法,包括如下步骤S110至步骤S140,以下详细进行阐述:
在步骤S110中,获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得 到对应的目标地理块编码。
在本公开的一个实施例中,对所述经纬度信息进行编码时,可以采用GEOHASH编码或S2GEO编码等编码规则,将经纬度信息编码得到对应分块的一组字符串编码,据此进行进一步索引。也就是说,将经纬度信息编码为一组字符串编码,将该字符串编码作为经纬度信息对应的目标地理块编码。其中,经纬度信息对应的目标地理块是指经纬度信息对应的一个地理位置所处于的地理块。之后,可根据目标地理块编码进行进一步索引。
继续参照图1,在步骤S120中,将所述目标地理块编码映射为包含所述目标地理块的目标组的编码。
在本公开的一个实施例中,将所述目标地理块编码映射为包含所述目标地理块的目标组的编码时,可以通过多种方式实现映射。例如,可以通过code映射表实现映射。
在本公开的一个实施例中,将所述目标地理块编码映射为包含所述目标地理块的目标组的编码之前,需要为所述映射建立映射关系,建立映射关系的方法,参照图2所示,包括如下步骤S210至步骤S230,以下详细进行阐述:
在步骤S210中,对待索引地理区域进行地理编码得到多个地理块以及对应的地理块编码,按参考规则将所述多个地理块设置为至少一个子区域。
在本公开的一个实施例中,待索引地理区域可以根据索引客户端或者服务器服务的地区进行设置,例如,服务于中国的索引服务器,待索引地理区域可以是中国;再如,服务于上海的索引服务器,待索引地理区域可以是上海。由于在待索引地理区域可能是范围较大的地理区域,因此可以对待索引地理区域进行地理编码得到多个地理块以及对应的地理块编码,以便于对兴趣点的精准索引。
进一步地,可以将地理区域中同一地理范围内的多个地理块设置为至少一个规整的子区域,地理区域比较大的情况下,可以设置为多个规整的子区域。其中,参考规则可以是参考块数,参考块数可以设置为两个正整数乘积的形式,例如可以是4*4块,3*5块等。
进一步地,子区域的地理块数可以根据地理块的属性进行设置,在兴趣点较多的地区,子区域的参考块数可以取较小值,在兴趣点较少的地区,子区域的参考块数可以取较大值。例如,位于上海的地理块可能包含的兴趣点较多,而位于拉萨的地理块可能包含的兴趣点相对较少,因此可以将位于上海的地理块组合成多个规整子区域,每个子区域包含的地理块数可以取较小值。将位于拉萨的地理块组合成至少多个子区域,其中每个子区域包含的地理块数可以取较大值;再如位于热门商圈的地理块包含的兴趣点就比位于城市郊区的地理块多,因此位于热门商圈的子区域包含的地理块数可以取较小值,将位于城市郊区的地理块子区域包含的地理块数可以取较大值。在本公开的一个实施例中,针对各个子区域参 考块数的设置可以是相同的。
在步骤S220中,根据所述多个地理块中的兴趣点属性对所述多个地理块进行评分。在本公开的一个实施例中,可以根据地理块中的兴趣点属性进行评分,例如,可以根据兴趣点的出价、历史点击率、属性分等,评分公式为:
Figure PCTCN2019129395-appb-000003
其中,n为地理块中包含的兴趣点的个数,bid k为第k个兴趣点的出价,兴趣点的出价是指兴趣点的运营人员为推广该兴趣点所支付的资源价值,ctr k为第k个兴趣点的历史点击率,poi_attr k为第k个兴趣点的属性分,λ为比重值。当然,本实施例在对兴趣点进行评分时所使用的信息包括但不限于上述兴趣点的出价、历史点击率及属性分。在实施中,还可以根据经验或实际需要选择其他信息对兴趣点进行评分,还可以根据对所选择的其他信息与上述出价、历史点击率及属性分中的一种或多种进行组合,根据所得到的组合对兴趣点进行评分。例如,所选择的其他信息可以包括兴趣点的历史评价数量、好评率、差评率、人均消费价格及客流指数等等多种信息。另外,本实施例对兴趣点进行评分也不仅仅局限于上述评分公式。除上述评分公式以外,还可以将所用于对兴趣点进行评分的所有信息的加权求和值、乘积或者经过其他一种或多种计算方式所得到的分值作为兴趣点的评分。
在步骤S220中,根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,以形成地理块编码与组的编码之间的映射关系。
在本公开的一个实施例中,根据所述多个地理块的评分,将所述各个地理区域内的地理块组合成带有编码的组的方法,其中,以O代表地理块对应的地理块编码,以C代表组的编码,参照图3所示,包括如下步骤:
步骤S310,将一个所述地理区域内未分组的地理块中评分最高的地理块O maxi记入C i组。
步骤S320,计算C i组内所有地理块的评分和,得到C i组的评分。
步骤S330,若所述C i组的评分大于参考值,则停止向C i组加入地理块,若所述C i组的评分小于所述参考值,则将与地理块O maxi相邻,评分最高且未分组的相邻地理块记入C i组,直至C i组的评分大于参考值或者没有与地理块O maxi相邻的相邻地理块为止。
在本公开的一个实施例中,参考值可以根据子区域所属的地理区域的属性进行设置。例如,当地理区域根据城市划分时,北京、上海、广州等大型城市的子区域由于兴趣点较多,可以将参考值设置为较小的值,以保证在同一组中的兴趣点数量适中,降低检索资源的消耗,而对于其他兴趣点较少的城市的子区域,可以将参考值设置为较大的值,以保证 在同一组中的兴趣点数量较多,避免检索兴趣点不足的问题。
在本公开的一个实施例中,所述相邻地理块包括直接相邻地理块和间接相邻地理块。如图4所示,地理块O maxi的上下左右四块为直接相邻地理块,与地理块O maxi在斜方向上的相邻的地理块为间接相邻地理块,其中地理块中的数字表示该地理块的分数。在将与地理块O maxi相邻,评分最高且未分组的相邻地理块记入C i组时,可以先按照评分高低(例如按评分10、9、8、5的顺序)加入未分组的直接相邻地理块,再按照评分高低(例如按7、5、3、2的顺序)加入间接相邻地理块。或者,还可以直接按照评分高低的顺序将未分组的相邻地理块依次记入C i组,在记入过程中,若有两个相邻地理块的分数相同,则优先对直接相邻地理块进行记入。例如,仍如图4所示,可以按照10、9、8、7、直接地理块5、斜方地理块5、3、2的顺序将各个未分组的相邻地理块记入C i组。
在本公开的一个实施例中,通过将子区域中的地理块进行分组,形成了地理块与组之间的对应关系,对应的形成了地理块编码与组的编码之间的映射关系。例如,地理块编码为O1的地理块加入了C1组,地理块编码O1与组的编码C1形成了映射关系。
对于上述基于地理位置的兴趣点索引的方法,本公开的实施例提供了一个实现方案,参照图5,详细内容如下:
步骤S510,获取用户请求中携带用户经纬度信息lat和lng。其中lat表示纬度信息,lng表示经度信息。
步骤S520,通过GEOHASH公式对(lat,lnt)进行编码,获得对应编码CODEX。其中CODEX即为目标地理块编码。
步骤S530,通过code映射表,将CODEX映射到系统编码得到系统编码NEW_CODEX。其中NEW_CODEX即为包含目标地理块的目标组的编码。
步骤S540,根据NEW_CODEX本身分数,以及请求条件,在扩展单元中判定扩展编码,扩展编码为NEW_CODEY。其中NEW_CODEX本身分数即为目标组的评分,而扩展单元可以是决策器。即,该实现方案中可根据目标组的评分以及请求条件,通过决策器确定是否需要对目标组进行扩展。若需要进行扩展,则扩展得到的扩展组的编码为NEW_CODEY。
步骤S550,倒排索引检索NEW_CODEX和NEW_CODEY,获得兴趣点列表。
步骤S560,对兴趣点列表中的兴趣点进行过滤。其中,可结合用户请求及兴趣点的相关信息来实现过滤。在根据用户请求进行过滤时,可以从兴趣点列表中过滤掉与用户请求的匹配度不高的兴趣点。例如用户请求所需的兴趣点是花店,则可从兴趣点列表中过滤掉非花店的兴趣点。需要说明的是,兴趣点列表中与用户请求的匹配度不高的兴趣点的数量 往往很少或者为零,根据用户请求进行过滤的作用是确保兴趣点与用户请求的完全匹配。在根据兴趣点的相关信息来实现过滤时,则可以根据兴趣点的信用度、好评率以及差评率等等能够体现兴趣点质量的信息来进行过滤,例如将信用度较低的兴趣点过滤掉,从而保证能够将较高质量的兴趣点推荐给用户。
步骤S570,针对兴趣点列表中的每个兴趣点补充物料信息。在实施中,针对兴趣点所补充的物料信息包括但不限于用于描述该兴趣点的文字、图片以及视频中的一种或多种信息。通过针对兴趣点补充物料信息,使得用户在浏览兴趣点的过程中,可以结合所补充的物料信息的作用对兴趣点进行更加全面、完善的理解,提高了用户的使用体验。
步骤S580,获取补充兴趣点,对补充兴趣点及兴趣点列表中的兴趣点进行去重合并。本实施例不对获取补充兴趣点的方式加以限定。例如,可以将每个类型的所有兴趣点按照好评率从高到低的顺序排列,得到兴趣点序列,将该兴趣点序列中的前参考数量个兴趣点作为补充兴趣点,对兴趣点类型及补充兴趣点进行对应存储。这样,便可根据兴趣点列表中的兴趣点的类型,确定与该兴趣点列表中的兴趣点的类型对应的补充兴趣点,从而获取到补充兴趣点。当然,无论采用何种方式获取补充兴趣点,在获取到补充兴趣点之后,还对补充兴趣点及兴趣点列表中的兴趣点进行去重合并,以避免将重复的兴趣点推荐给用户。
步骤S590,按照参考顺序对去重合并后的兴趣点进行排列,排列后的兴趣点用于进行展示。在实施中,可以获取用户的历史点击数据,根据历史点击数据分析用户个人喜好,从而根据用户个人喜好对去重合并后的兴趣点进行排列。或者,还可以按照业务逻辑,例如上线时间较短的兴趣点排序靠前的业务逻辑对合并去重后的兴趣点进行排列。或者,还可按照用户定义的顺序来实现排列,本实施例不对排列方式加以限定。
需要说明的是,本实施例不对上述步骤S560、S570、S580及S590的执行顺序加以限定。除了按照上述说明中的执行顺序执行以外,还以按照其他顺序执行上述步骤S560、S570、S580及S590。
在执行上述步骤之前,需要进行基础编码以使地理块与组形成映射关系,基础编码的方案如下:
基础编码的方案中所用到的基础概念如下:
a)地理块:基础的地理编码块,如GEOHASH或S2GEO等地理编码,本方案统一使用GEOHASH作为默认块编码。地理块为本方案中进行code映射前根据经纬度进行编码所得的CODEX对应的地理块与地理位置绑定。
b)组:不同于块编码,此处“组”对应本方案中进行code映射后得到的NEW_CODEX对应的由至少一个地理块组成的组;其中组的编码是映射后的得到的编码,组的编码是可 变动的,多个地理块会组合成组,每个组之间是互斥的,不同组不会拥有相同的地理块,同时组并不与位置绑定。
c)子区域:一个范围的地理编码块为一个子区域,子区域都是规整的,编码时会对子区域内的地理块进行分组,方便进行并行计算和管理,同时方便针对不同的子区域(如城市、商圈)进行个性化设置。
对每个地理区域内的地理块进行分组,形成地理块与组之间的映射关系的方案如下:
对于每一个地理区域,对地理块进行打分,用O代表GEOHASH编码及其此块的评分,用Ci代表组编码。直接相邻指的是一个地理块的上下左右相邻关系,间接相邻指的是一个地理块的斜对角相邻关系,如图4所示。
1)初始设置i为0。找到未分组的地理块中,评分最大的第一个地理块O max记入编码为C i的组中。
2)若C i中所有地理块求和的评分大于或等于参考值则执行步骤6。
3)找到O max直接相邻的第一个最大评分的未分组的地理块计入Ci,跳转至步骤2;若O max没有直接相邻的地理块,则执行步骤4。
4)找到O max斜方相邻的第一个最大评分的未分组的地理块计入Ci中,跳转至步骤2;若O max没有间接相邻的地理块则跳转至步骤6。
5)将O max标记为O max-old,同时将C i中与其相邻第一个不为O max-old且评分最大的块重新标为O max,跳转至步骤3;若C i中只有O max和O max-old则执行步骤6。
6)维护此时块内O码到C码的映射,i=i+1,若地理区域内仍有未分组的地理块则执行步骤1;否则退出。
在执行上述步骤中,所述每个地理块对应的分数的打分公式为:
Figure PCTCN2019129395-appb-000004
其中,n为地理块中包含的兴趣点的个数,bid k为第k个兴趣点的出价,ctr k为第k个兴趣点的历史点击率,poi_attr k为第k个兴趣点的属性分,λ为比重值。
以图6所示的地理区域为例,按照上述方案对图中地理区域中的地理块进行分组。其中地理块中的数字表示该地理块的分数,字母O及其后的数字代表地理块的编码。在参考值为70时,分组的结果如下:
C1组包括地理块O6;
C2组包括地理块O3;
C3组包括地理块O5,O4,O8;
C4组包括地理块O9;
C5组包括地理块O7;
C6组包括地理块O2,O1;
其中,分组的顺序由C1至C6,每组中地理块编码的排序为地理块加入分组的顺序。
继续参照图1所示,在步骤S130中,根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组。
在本公开的一个实施例中,根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组的方法,参照图7所示,包括如下步骤:
步骤S710,若目标组评分小于请求条件值,则对目标组进行扩展,扩展组为与所述目标组相邻的组中评分最大的组。
步骤S720,若目标组评分大于请求条件值,且目标地理块为子区域边缘的地理块时,对目标组进行扩展,扩展组为与目标地理块所在子区域相邻的子区域内与目标组相邻的组。
在本公开的一个实施例中,所述请求条件可以是实现检索的客户端、服务器设置的,也可以是用户自定义的。例如,电商平台中可以对客户端、服务器等设置请求条件,以保证电商平台服务器的稳定性,降低检索时的资源消耗;再如,所述请求可以根据用户需求自定义,当用户网络状态较好或需要更多的兴趣点时,将请求条件值设置为较大值,当用户网络状态较差,将请求条件值设置为较小值,降低检索消耗的网络资源。
继续参照图1所示,在步骤S140中,根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点。
在本公开的一个实施例中,根据所述目标组的评分及用户请求中携带的请求条件确定不对所述目标组进行扩展,则获得目标组对应的兴趣点列表。
在本公开的一个实施例中,若目标组的评分大于请求条件,且目标地理块是子区域内部块时,可以确定不对所述目标组进行扩展。
在本公开的一个实施例中,若检测到兴趣点发生变化,则更新所述映射,更新映射的方法,参照图8所示,包括如下步骤S810至步骤S820,以下进行详细阐述:
在步骤S810中,若检测到目标地理块中的兴趣点发生变化,则重新对所述目标地理块进行评分。
在本公开的一个实施例中,兴趣点发生的变化包括新增或删除兴趣点。检测兴趣点是否发生变化时,可以实时检测,也可以设置时间间隔定期检测。例如,实时检测兴趣点是否发生变化,当发生兴趣点增删变化后,立即对映射进行更新;再如,设置一天的时间间隔,每天晚上24点进行定期检测,根据24小时内的兴趣点增删变化,统一更新映射。
在步骤S820中,基于所述目标地理块更新后的评分,将各个地理区域内的地理块重新组合形成新的带有编码的组。
在本公开的一个实施例中,由于兴趣点发生的增加或删除的变化,会造成该兴趣点所处的目标地理块评分发生变化,进而影响包含该目标地理块的目标组的评分发生变化,因此,当兴趣点发生增加或删除变化时,需重新对目标组所处的地理区域内的地理块重新组合,形成新的带有编码的组。
对于上述更新映射的方案,本公开的实施例提供了一个实现方案,参照图9所示,详细内容如下:
步骤S910,将新增的兴趣点、删除的兴趣点以及评分发生变化的兴趣点中的一种或多种兴趣点的经纬度(lat,lng)进行GEOHASH编码,编码为CODEX块。
步骤S920,将新增的兴趣点、删除的兴趣点以及评分发生变化的兴趣点中的一种或多种兴趣点的评分变化记入CODEX块,对应CODEX块评分变化。
步骤S930,通过code映射表将CODEX块映射到CLASSY组,更新CLASSY组对应评分。
步骤S940,判断CODEX块评分、CLASSY组评分以及参考值的大小关系。
步骤S950,若CLASSY组评分增加,且增加评分的CODEX块评分大于参考值,则将CODEX新设立为CLASSX组。若CLASSY组评分增加且增加评分的CODEX块评分小于参考值或CLASSY组评分降低至参考值以下,则重新对CODEX块所在区域内的块进行分组。若CLASSY组评分降低,但仍大于参考值,则不进行重新分组。
步骤S960,更新各分组信息及其评分。
以下介绍本公开的装置实施例,可以用于执行本公开上述的基于地理位置的兴趣点索引方法。
图10示意性示出了根据本公开的一个实施例的基于地理位置的兴趣点索引装置的框图,该装置可以设置于具有兴趣索引需求或安装有具有索引需求客户端的终端设备上。
参照图10所示,根据本公开的一个实施例的基于地理位置的兴趣点索引装置1000包括:编码单元1001,映射单元1002,扩展单元1003和获取单元1004。
其中,编码单元1001用于获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得到对应的目标地理块编码;映射单元1002用于将所述目标地理块编码映射为包含所述目标地理块的目标组的编码;扩展单元1003用于根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组;获取单元1004用于根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点。
在本公开的一些实施例中,基于前述方案,所述映射单元1002的配置为:对待索引地理区域进行地理编码得到多个地理块以及对应的地理块编码,按参考规则将所述多个地理块设置为至少一个子区域;;根据所述多个地理块中的兴趣点属性对所述多个地理块进行评分;根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,以形成地理块编码与组的编码之间的映射关系。
在本公开的一些实施例中,基于前述方案,所述映射单元1002的配置为:根据兴趣点属性对地理块进行评分的评分公式为:
Figure PCTCN2019129395-appb-000005
其中,n为地理块中包含的兴趣点的个数,bid k为第k个兴趣点的出价,ctr k为第k个兴趣点的历史点击率,poi_attr k为第k个兴趣点的属性分,λ为比重值。
在本公开的一些实施例中,基于前述方案,所述映射单元1002的配置为:将所述子区域内未分组的地理块中评分最高的地理块O maxi记入C i组;计算C i组内所有地理块的评分和,得到C i组的评分;若所述C i组的评分大于参考值,则停止向C i组加入地理块,若所述C i组的评分小于所述参考值,则将与地理块O maxi相邻且评分最高的相邻地理块记入C i组,直至C i组的评分大于参考值或者没有与地理块O maxi相邻的相邻地理块为止。
在本公开的一些实施例中,基于前述方案,所述扩展单元1003的配置为:若目标组评分小于请求条件值,则对目标组进行扩展,扩展组为与所述目标组相邻的组中评分最大的组;若目标组评分大于请求条件值,且目标地理块为子区域边缘的地理块时,对目标组进行扩展,扩展组为与目标地理块所在子区域相邻的子区域内与目标组相邻的组。
在本公开的一些实施例中,基于前述方案,所述获取单元1004的配置为:若根据所述目标组的评分及用户请求中携带的请求条件确定不对所述目标组进行扩展,则获得目标组对应的兴趣点列表。
在本公开的一些实施例中,基于前述方案,所述映射单元1002的配置为:若检测到目标地理块中的兴趣点发生变化,则重新对所述目标地理块进行评分;基于所述目标地理块更新后的评分,将各个子区域内的地理块重新组合形成新的带有编码的组。
由于本公开的示例实施例的基于地理位置的兴趣点索引装置的各个功能模块与上述基于地理位置的兴趣点索引方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的基于地理位置的兴趣点索引方法的实施例。
下面参考图11,其示出了适于用来实现本公开实施例的电子设备的计算机系统1100的结构示意图。图11示出的电子设备的计算机系统1100仅是一个示例,不应对本公开实施 例的功能和使用范围带来任何限制。
如图11所示,计算机系统1100包括中央处理单元(CPU)1101,其可以根据存储在只读存储器(ROM)1102中的程序或者从存储部分1108加载到随机访问存储器(RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有系统操作所需的各种程序和数据。CPU 1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
以下部件连接至I/O接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被中央处理单元(CPU)1101执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。 计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的基于地理位置的兴趣点索引方法。
例如,所述的电子设备可以实现如图1中所示的:步骤S110,获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得到对应的目标地理块编码;步骤S120,将所述目标地理块编码映射为包含所述目标地理块的目标组的编码;步骤S130,根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组;步骤S140,根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点。
又如,所述的电子设备可以实现如图2至图3,图5,图7至图9所示的各个步骤。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性 存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (16)

  1. 一种基于地理位置的兴趣点索引方法,其中,包括:
    获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得到对应的目标地理块编码;
    将所述目标地理块编码映射为包含所述目标地理块的目标组的编码;
    根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组;
    根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点。
  2. 根据权利要求1所述的基于地理位置的兴趣点索引方法,其中,将所述目标地理块编码映射为包含所述目标地理块的目标组的编码之前,所述方法还包括:
    对待索引地理区域进行地理编码得到多个地理块以及对应的地理块编码,按参考规则将所述多个地理块设置为至少一个子区域;
    根据所述多个地理块中的兴趣点属性对所述多个地理块进行评分;
    根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,以形成地理块编码与组的编码之间的映射关系。
  3. 根据权利要求2中所述的基于地理位置的兴趣点索引方法,其中,根据多个地理块中的兴趣点属性对所述多个地理块进行评分的评分公式为:
    Figure PCTCN2019129395-appb-100001
    其中,n为地理块中包含的兴趣点的个数,bid k为第k个兴趣点的出价,ctr k为第k个兴趣点的历史点击率,poi_attr k为第k个兴趣点的属性分,λ为比重值。
  4. 根据权利要求2所述的基于地理位置的兴趣点索引方法,其中,根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,包括:
    将所述子区域内未分组的地理块中评分最高的地理块O maxi记入C i组;
    计算C i组内所有地理块的评分和,得到C i组的评分;
    若所述C i组的评分大于参考值,则停止向C i组加入地理块,若所述C i组的评分小于所述参考值,则将与地理块O maxi相邻,评分最高且未分组的相邻地理块记入C i组,直至C i组的评分大于参考值或者没有与地理块O maxi相邻的相邻地理块为止。
  5. 根据权利要求2所述的基于地理位置的兴趣点索引方法,其中,根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组,包括:
    若目标组评分小于请求条件值,则对目标组进行扩展,扩展组为与所述目标组相邻的组中评分最大的组;
    若目标组评分大于请求条件值,且目标地理块为子区域边缘的地理块时,对目标组进行扩展,扩展组为与目标地理块所在子区域相邻的子区域内与目标组相邻的组。
  6. 根据权利要求5所述的基于地理位置的兴趣点索引方法,其中,所述方法还包括:
    若根据所述目标组的评分及用户请求中携带的请求条件确定不对所述目标组进行扩展,则获得目标组对应的兴趣点列表。
  7. 根据权利要求2至6中任一项所述的基于地理位置的兴趣点索引方法,其中,若检测到兴趣点发生变化,则更新所述映射,包括:
    若检测到目标地理块中的兴趣点发生变化,则重新对所述目标地理块进行评分;
    基于所述目标地理块更新后的评分,将各个子区域内的地理块重新组合形成新的带有编码的组。
  8. 一种基于地理位置的兴趣点索引装置,其中,包括:
    编码单元,用于获取用户请求中携带的经纬度信息,对所述经纬度信息进行编码,得到对应的目标地理块编码;
    映射单元,用于将所述目标地理块编码映射为包含所述目标地理块的目标组的编码;
    扩展单元,用于根据所述目标组的评分及用户请求中携带的请求条件对所述目标组进行扩展得到扩展组;
    获取单元,用于根据所述目标组的编码和所述扩展组的编码,获得对应于所述目标组和所述扩展组的兴趣点。
  9. 根据权利要求8所述的基于地理位置的兴趣点索引装置,其中,所述映射单元,用于对待索引地理区域进行地理编码得到多个地理块以及对应的地理块编码,按参考规则将所述多个地理块设置为至少一个子区域;根据所述多个地理块中的兴趣点属性对所述多个地理块进行评分;根据所述多个地理块的评分,将各个所述子区域内的地理块分别组合成带有编码的组,以形成地理块编码与组的编码之间的映射关系。
  10. 根据权利要求9所述的基于地理位置的兴趣点索引装置,其中,根据兴趣点属性对地理块进行评分的评分公式为:
    Figure PCTCN2019129395-appb-100002
    其中,n为地理块中包含的兴趣点的个数,bid k为第k个兴趣点的出价,ctr k为第k个兴趣点的历史点击率,poi_attr k为第k个兴趣点的属性分,λ为比重值。
  11. 根据权利要求9所述的基于地理位置的兴趣点索引装置,其中,所述映射单元,用于将所述子区域内未分组的地理块中评分最高的地理块O maxi记入C i组;计算C i组内所有地理块的评分和,得到C i组的评分;若所述C i组的评分大于参考值,则停止向C i组加入地理块,若所述C i组的评分小于所述参考值,则将与地理块O maxi相邻,评分最高且未分组的相邻地理块记入C i组,直至C i组的评分大于参考值或者没有与地理块O maxi相邻的相邻地理块为止。
  12. 根据权利要求9所述的基于地理位置的兴趣点索引装置,其中,所述扩展单元,用于若目标组评分小于请求条件值,则对目标组进行扩展,扩展组为与所述目标组相邻的组中评分最大的组;若目标组评分大于请求条件值,且目标地理块为子区域边缘的地理块时,对目标组进行扩展,扩展组为与目标地理块所在子区域相邻的子区域内与目标组相邻的组。
  13. 根据权利要求12所述的基于地理位置的兴趣点索引装置,其中,所述获取单元,用于若根据所述目标组的评分及用户请求中携带的请求条件确定不对所述目标组进行扩展,则获得目标组对应的兴趣点列表。
  14. 根据权利要求9-13任一项所述的基于地理位置的兴趣点索引装置,其中,所述映射单元,用于若检测到目标地理块中的兴趣点发生变化,则重新对所述目标地理块进行评分;基于所述目标地理块更新后的评分,将各个子区域内的地理块重新组合形成新的带有编码的组。
  15. 一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1至7中任一项所述的基于地理位置的兴趣点索引方法。
  16. 一种电子设备,其中,包括:
    一个或多个处理器;
    存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至7中任一项所述的基于地理位置的兴趣点索引方法。
PCT/CN2019/129395 2019-02-22 2019-12-27 基于地理位置的兴趣点索引 WO2020168827A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910133050.X 2019-02-22
CN201910133050.XA CN109815419B (zh) 2019-02-22 2019-02-22 基于地理位置的兴趣点索引方法、装置、介质及电子设备

Publications (1)

Publication Number Publication Date
WO2020168827A1 true WO2020168827A1 (zh) 2020-08-27

Family

ID=66607164

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/129395 WO2020168827A1 (zh) 2019-02-22 2019-12-27 基于地理位置的兴趣点索引

Country Status (2)

Country Link
CN (1) CN109815419B (zh)
WO (1) WO2020168827A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109815419B (zh) * 2019-02-22 2019-12-24 北京三快在线科技有限公司 基于地理位置的兴趣点索引方法、装置、介质及电子设备
CN110597932B (zh) * 2019-07-05 2022-03-11 袁静 一种基于遥感影像的环境综合评估预测方法
CN110765222B (zh) * 2019-10-24 2022-04-19 成都路行通信息技术有限公司 一种基于Geohash编码的兴趣点自驾热度计算方法和平台
CN110986996B (zh) * 2019-11-29 2021-09-10 秒针信息技术有限公司 数据处理方法、装置、电子设备和存储介质
CN111177588B (zh) * 2019-12-31 2023-12-05 北京百度网讯科技有限公司 兴趣点检索方法和装置
CN111369284B (zh) * 2020-03-03 2023-08-15 浙江网商银行股份有限公司 目标对象类型确定方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140370920A1 (en) * 2012-11-15 2014-12-18 Google Inc. Systems and methods for generating and employing an index associating geographic locations with geographic objects
CN106568429A (zh) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 一种建立兴趣点的方法及装置
CN107798110A (zh) * 2017-11-01 2018-03-13 百度在线网络技术(北京)有限公司 兴趣点地址校验方法、装置、服务器及存储介质
CN108763522A (zh) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 Poi检索排序方法、装置及计算机可读存储介质
CN109815419A (zh) * 2019-02-22 2019-05-28 北京三快在线科技有限公司 基于地理位置的兴趣点索引方法、装置、介质及电子设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100082242A1 (en) * 2008-10-01 2010-04-01 Park Jong Am System and method for intuitive poi (point of interests) map search
CN104516950A (zh) * 2014-12-10 2015-04-15 百度在线网络技术(北京)有限公司 一种兴趣点的查询方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140370920A1 (en) * 2012-11-15 2014-12-18 Google Inc. Systems and methods for generating and employing an index associating geographic locations with geographic objects
CN106568429A (zh) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 一种建立兴趣点的方法及装置
CN107798110A (zh) * 2017-11-01 2018-03-13 百度在线网络技术(北京)有限公司 兴趣点地址校验方法、装置、服务器及存储介质
CN108763522A (zh) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 Poi检索排序方法、装置及计算机可读存储介质
CN109815419A (zh) * 2019-02-22 2019-05-28 北京三快在线科技有限公司 基于地理位置的兴趣点索引方法、装置、介质及电子设备

Also Published As

Publication number Publication date
CN109815419B (zh) 2019-12-24
CN109815419A (zh) 2019-05-28

Similar Documents

Publication Publication Date Title
WO2020168827A1 (zh) 基于地理位置的兴趣点索引
US10572565B2 (en) User behavior models based on source domain
JP6744483B2 (ja) 電子地図インターフェース
US9798819B2 (en) Selective map marker aggregation
US9363634B1 (en) Providing context-relevant information to users
WO2018077046A1 (zh) 一种信息提供方法及装置
US9374427B2 (en) Geographical location based cloud storage
US20100042615A1 (en) Systems and methods for aggregating content on a user-content driven website
EP2567355A2 (en) Selecting content based on interest tags that are included in an interest cloud
WO2006127749A2 (en) Geographic information knowledge systems
WO2014055346A2 (en) Apparatus and method for personalizing maps
CN113342912B (zh) 地理位置区域的编码方法、建立编码模型的方法及装置
AU2014259978A1 (en) Tagged search result maintenance
WO2020114272A1 (zh) 商户查找方法、装置、电子设备和存储介质
US10896217B2 (en) Access points for maps
WO2021164131A1 (zh) 地图展示方法、系统、计算机设备和存储介质
CN110830604A (zh) Dns调度方法、装置
US9811539B2 (en) Hierarchical spatial clustering of photographs
WO2015070806A1 (zh) 一种音频文件的管理方法、装置和存储介质
CN111737537B (zh) 基于图数据库的poi推荐方法、设备及介质
CN107341221B (zh) 索引结构的建立、关联检索方法、装置、设备及存储介质
WO2014179380A1 (en) Search result tagging
WO2023216675A1 (zh) 数据处理方法和装置
WO2015192716A1 (zh) 一种基于电子地图的划线搜索方法和装置
US20150379027A1 (en) Searching Based On A Local Density Of Entities

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19915846

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19915846

Country of ref document: EP

Kind code of ref document: A1