CN110019645B - 索引库构建方法、搜索方法及装置 - Google Patents

索引库构建方法、搜索方法及装置 Download PDF

Info

Publication number
CN110019645B
CN110019645B CN201710901601.3A CN201710901601A CN110019645B CN 110019645 B CN110019645 B CN 110019645B CN 201710901601 A CN201710901601 A CN 201710901601A CN 110019645 B CN110019645 B CN 110019645B
Authority
CN
China
Prior art keywords
poi
index
information
character
inverted
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201710901601.3A
Other languages
English (en)
Other versions
CN110019645A (zh
Inventor
谭鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sogou Network Technology Co.,Ltd.
Beijing Sogou Technology Development Co Ltd
Original Assignee
Beijing Sogou Technology Development Co Ltd
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 Beijing Sogou Technology Development Co Ltd filed Critical Beijing Sogou Technology Development Co Ltd
Priority to CN201710901601.3A priority Critical patent/CN110019645B/zh
Publication of CN110019645A publication Critical patent/CN110019645A/zh
Application granted granted Critical
Publication of CN110019645B publication Critical patent/CN110019645B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/319Inverted lists
    • 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/9535Search customisation based on user profiles and personalisation
    • 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

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)
  • Software Systems (AREA)
  • Remote Sensing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种索引库构建方法、搜索方法及装置。其中,索引库构建方法,包括:对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;依据各Poi的属性信息创建Poi的倒排索引;依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;依据所述索引分块构建Poi索引库。本发明实施例基于城市的索引分块构建Poi索引库,实现了按照Poi所属城市对Poi进行存储的目的,从而后续搜索过程中可按照Poi所属城市在该Poi索引库中对应的索引分块进行搜索,缩小了搜索范围,进而提高搜索效率。

Description

索引库构建方法、搜索方法及装置
技术领域
本发明涉及搜索技术领域,特别是涉及一种索引库构建方法、一种基于索引库的搜索方法、一种索引库构建装置、一种基于索引库的搜索装置、一种设备和一种可读存储介质。
背景技术
随着移动互联网快速发展,越来越多的用户利用网络获取服务,如基于兴趣点(Point of Interest,Poi)的信息网络服务。Poi是指人们感兴趣的数据,如餐馆、景点、学校等建筑物,或者京藏高速等道路信息等等。
目前,越来越多的用户使用移动终端,在地图上进行Poi搜索。具体的,现有Poi搜索方案通常是依据用户输入的查询词确定出对应的Poi名称,并按照Poi名称在地图不同地点上搜索对应的Poi结果,以将搜索到的Poi结果提供给用户选择。这些Poi结果可能是在用户当前所在的城市,也可能是用户当前所在城市的周边城市。显然,现有Poi搜索方案主要是按照Poi名称进行搜索,搜索范围过大,影响搜索效率。
发明内容
本发明实施例所要解决的技术问题是提供一种索引库构建方法和一种基于索引库的搜索方法,以提高搜索效率。
相应的,本发明实施例还提供了一种索引库构建装置、一种基于索引库的搜索装置、一种设备以及一种可读存储介质,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种索引库构建方法,包括:对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;依据各Poi的属性信息创建Poi的倒排索引;依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;依据所述索引分块构建Poi索引库。
可选地,所述属性信息为基于Poi的查询域确定的,所述Poi的倒排索引包括:基于单个字符的倒排索引。所述依据各Poi的属性信息创建Poi的倒排索引,包括:分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
可选地,所述依据所述索引分块构建Poi索引库,包括:构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项:Poi名称索引和Poi地址索引;基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
可选地,对各Poi名称域信息包含的名称字符进行统计,确定基于单个字符的倒排索引,包括:对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
可选地,对各Poi地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引,包括:对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
可选地,依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块,包括:按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
可选地,所述确定基于单个字符的倒排索引之前,所述方法还包括:获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
本发明实施例还公开了一种基于索引库的搜索方法,包括:接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示。
可选地,从所述查询信息中识别出Poi字符信息,包括:对所述查询信息进行分词,得到至少一个分词结果;对所述分词结果进行词性标注,得到对应的属性信息;依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
可选地,依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,包括:在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
可选地,依据所述目标倒排索引生成至少一个Poi结果,包括:对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
可选地,所述对Poi结果进行展示,包括:针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;按照排列顺序对各Poi结果进行展示。
本发明实施例还公开了一种索引库构建装置,包括:数据源扫描模块,用于对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;索引创建模块,用于依据各Poi的属性信息创建Poi的倒排索引;索引切分模块,用于依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;索引库构建模块,用于依据所述索引分块构建Poi索引库。
可选地,所述属性信息为基于Poi的查询域确定的,所述Poi的倒排索引包括:基于单个字符的倒排索引。索引创建模块包括:属性信息提取子模块,用于分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;倒排索引确定子模块,用于对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
可选地,索引库构建模块包括:对应关系构建子模块,用于构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项:Poi名称索引和Poi地址索引;索引库构建子模块,用于基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
可选地,倒排索引确定子模块包括:名称字符统计单元,用于对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;第一确定单元,用于依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;名称索引构建单元,用于针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
可选地,倒排索引确定子模块包括:地址字符统计单元,用于对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;第二确定单元,用于依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;地址索引构建单元,用于针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
可选地,索引切分模块包括:倒排索引切分子模块,用于按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;索引分块生成子模块,用于基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
可选地,所述装置还包括:历史数据获取模块,用于获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;综合分析模块,用于对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
本发明实施例还公开了一种基于索引库的搜索装置,包括:信息接收模块,用于接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;Poi识别模块,用于从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;索引查询模块,用于依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;结果展示模块,用于依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示。
可选地,Poi识别模块包括:分词子模块,用于对所述查询信息进行分词,得到至少一个分词结果;标注子模块,用于对所述分词结果进行词性标注,得到对应的属性信息;分析子模块,用于依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
可选地,索引查询模块包括:分块查找子模块,用于在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;链表查找子模块,用于在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;索引确定子模块,用于依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
可选地,结果展示模块包括:索引融合子模块,用于对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;结果生成子模块,用于基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
可选地,结果展示模块包括:获取子模,用于针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;排序子模块,用于依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;展示子模块,用于按照排列顺序对各Poi结果进行展示。
本发明实施例还公开了一种设备,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;依据各Poi的属性信息创建Poi的倒排索引;依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;依据所述索引分块构建Poi索引库。
可选地,所述属性信息为基于Poi的查询域确定的,所述Poi的倒排索引包括:基于单个字符的倒排索引。所述依据各Poi的属性信息创建Poi的倒排索引,包括:分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
可选地,所述依据所述索引分块构建Poi索引库,包括:构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项:Poi名称索引和Poi地址索引;基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
可选地,对各Poi名称域信息包含的名称字符进行统计,确定基于单个字符的倒排索引,包括:对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
可选地,对各Poi地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引,包括:对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
可选地,依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块,包括:按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
可选地,在确定基于单个字符的倒排索引之前,所述由一个或者一个以上处理器执行所述一个或者一个以上程序包含还用于进行以下操作的指令:获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
本发明实施例还公开了一种设备,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;依据所述Poi所属的城市信息,从索引库中查询与所述Poi字符信息对应的目标倒排索引,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示。
可选地,从所述查询信息中识别出Poi字符信息,包括:对所述查询信息进行分词,得到至少一个分词结果;对所述分词结果进行词性标注,得到对应的属性信息;依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
可选地,依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,包括:在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
可选地,依据所述目标倒排索引生成至少一个Poi结果,包括:对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
可选地,所述对Poi结果进行展示,包括:针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;按照排列顺序对各Poi结果进行展示。
本发明实施例还公开了一种可读存储介质,当所述存储介质中的指令由设备的处理器执行时,使得设备能够执行本发明实施例中的一个或多个所述的索引库构建方法。
本发明实施例还公开了一种可读存储介质,当所述存储介质中的指令由设备的处理器执行时,使得设备能够执行本发明实施例中的一个或多个所述的基于索引库的搜索方法。
本发明实施例包括以下优点:
本发明实施例在创建Poi的倒排索引后,可以依据Poi的城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块,即根据Poi所属城市的不同,将创建的Poi的倒排索引切分成基于城市的索引分块,并可基于城市的索引分块构建Poi索引库,实现了按照Poi所属城市对Poi进行存储的目的,从而后续搜索过程中可按照Poi所属城市在该Poi索引库中对应的索引分块进行搜索,即不需要在整个Poi索引库进行搜索,缩小了搜索范围,进而提高搜索效率。
此外,本发明实施例在创建Poi倒排索引的过程中,可以创建不同查询域所对应的Poi倒排索引,如针对名称域信息创建Poi名称索引、针对地址域信息创建Poi地址索引等;进而可在Poi搜索过程中按照不同查询域进行搜索,从而能够搜索到不同查询域所对应的Poi倒排索引,并且可对搜索到的Poi倒排索引进行融合归并,如对Poi地址索引和Poi名称索引进行融合归并,在提升搜索范围的同时还可以提升搜索的召回率,进一步得提高搜索效率。
附图说明
图1是本发明的一种索引库建立方法实施例的步骤流程图;
图2是本发明的一种索引库建立方法可选实施例的步骤流程图;
图3是本发明示例中的一种基于单个名称字符的倒排链表的示意图;
图4是本发明一个示例中分别创建Poi地址索引和Poi名称索引的示意图;
图5是本发明示例中的一种创建拼音索引的示意图;
图6是本发明一个示例中的划分倒排索引的示意图;
图7是本发明的一种基于索引库的搜索方法实施例的步骤流程图;
图8是本发明的一种基于索引库的搜索方法可选实施例的步骤流程图;
图9是本发明一个应用示例中的用户查询意图理解***、查询展示***和索引服务***的连接示意图;
图10是本发明的一种索引库构建装置实施例的结构框图;
图11是本发明的一种基于索引库的搜索装置实施例的结构框图;
图12是根据一示例性实施例示出的一种设备的结构框图;
图13是本发明实施例中服务器的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
在用户对Poi进行搜索的过程中,用户对地域需求比较明确。本发明实施例的核心构思之一在于:在创建Poi的倒排索引后,依据Poi所属城市对Poi的倒排索引进行分块,得到基于城市的索引分块;从而在后续搜索过程中,可根据所需要搜索的Poi所属城市在索引分块中进行搜索,即缩小搜索范围,进而能够提高搜索效率。
参照图1,示出了本发明的一种索引库建立方法实施例的步骤流程图,具体可以包括如下步骤:
步骤102,对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息。
在具体实现中,Poi的数据源可以包括Poi名称数据、Poi地址数据、Poi热度数据、Poi点击数据、Poi所属关系、纠错词典库、同义词库、用户点击历史数据等。本发明实施例可以通过对Poi的各种数据源进行扫描,得到Poi的全局信息。该Poi的全局信息可以包括Poi的属性信息和城市信息。城市信息可以用于表示Poi所属城市,Poi所属城市可以按照行政区划进行区分,本发明实施例对此不作限制。Poi的属性信息可以用于表示兴趣点的属性,如可以包括名称域信息、地址域信息、类型域信息、同义词域信息等等。
其中,名称域信息可以包括与Poi名称相关的信息,如Poi名称、Poi名称所包含的字符个数和字符的位置等。地址域信息可以包括与Poi地址相关的信息,具体可以包括Poi所在的经纬度、Poi的详细地址信息等等,如在Poi为“中关村东路1号院搜X大厦15层”时,Poi的地址域信息可以为“中关村东路1号院”。类型域信息可以用于包括与Poi的所属类别相关的信息,具体可以包括兴趣点所属类别对应的服务信息,如服务行业代码、服务行业名称等。同义词域信息可以包括Poi名称的别名、简称和曾用名称以及词的别名等。例如,兴趣点“清华大学”的简称为“清华”,可以将“清华”作为兴趣点“清华大学”的同义词域信息;又如“发展改革委员会”与“***”可以表达同一意思,即可将其中任意一个Poi名称作为另一个Poi名称的同义词域信息,具体的,可以将“发展改革委员会”作为“***”的同义词域信息,或者,将“***”作为“发展改革委员会”的同义词域信息;又如在兴趣点“中餐馆”的别名为“中餐厅”的情况下,可以将“中餐厅”作为兴趣点“中餐馆”的同义词域信息;又如,可以将兴趣点“襄阳市”的曾用名称“襄樊市”作为兴趣点“襄阳市”的同义词域信息,等等。本
当然,Poi的属性信息可以包括其他信息,如还可以包括周边地标信息、附属信息,本发明实施例对此不作限制。周边地标信息可以用于表征Poi所在的地理位置的周边信息,如可以用于表征兴趣点所属城市的周边城市信息。附属信息可以用于确定Poi热度。Poi热度可以是通过综合分析用户的输入法记录、网页点击历史和地图点击历史而得到的综合热度权值。
步骤104,依据各Poi的属性信息创建Poi的倒排索引。
在本发明实施例中,可以针对Poi的属性信息,创建Poi的倒排索引,以方便后续搜索处理中可以基于Poi的倒排索引查找用户输入信息对应的Poi。例如,可以针对Poi的地址域信息,创建Poi地址索引,从而可在后续搜索处理中依据Poi地址索引搜索用户输入地址字符对应的Poi;又如,可以针对Poi的名称域信息,创建Poi名称索引,从而可在后续搜索处理中依据Poi名称索引搜索用户输入名称字符对应的Poi。
步骤106,依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块。
在本发明实施例中,可以根据Poi的城市信息确定Poi所属城市。在创建倒排索引的过程中,可以根据Poi所属城市的不同,将创建的Poi的倒排索引切分为各城市所对应的索引分块,即得到基于城市信息的索引分块。
步骤108,依据所述索引分块构建Poi索引库。
在本发明实施例中,可以将不同城市所对应的索引分块存储在数据库中,即构成Poi索引库。具体的,可以按照不同城市所对应的索引分块,对Poi的倒排索引进行存储,构成构建Poi索引库。该Poi索引库可以包括一个或多个索引分块以及索引分块与城市信息之间的对应关系。
综上,本发明实施例在创建Poi的倒排索引后,可以依据Poi的城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块,即根据Poi所属城市的不同,将创建的Poi的倒排索引切分成基于城市的索引分块,并可基于城市的索引分块构建Poi索引库,实现了按照Poi所属城市对Poi进行存储的目的,从而后续搜索过程中可按照Poi所属城市在该Poi索引库中对应的索引分块进行搜索,即不需要在整个Poi索引库进行搜索,缩小了搜索范围,进而提高搜索效率。
参照图2,示出了本发明的一种索引库建立方法可选实施例的步骤流程图,具体可以包括如下步骤:
步骤202,对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息。
作为本发明的一个示例,可以通过扫描Poi的数据源,构建文档。该文档可以包括扫描得到的一个或多个Poi的全局信息。其中,兴趣点的全局信息可以包括Poi的所属城市、所属类别、Poi热度、以及Poi中包含的字符个数以及字符的位置等信息。
例如,在扫描得到“搜狐网络大厦”、“搜狐媒体大厦”、“搜狗科技公司”、“天津滨海国际机场”和“天津大学”这五个Poi后,可以基于这五个Poi的全局信息构建一个文档,如下表1所示:
Poi编号 Poi名称 Poi所属城市 Poi热度
D10001481 搜狐网络大厦 01 10000
D10001482 搜狐媒体大厦 01 9000
D10001483 搜狗科技公司 01 9600
D10001493 天津滨海国际机场 02 600
D10001494 天津大学 02 900
表1
其中,Poi编号可以是Poi的唯一编码(identification,ID),具体可以用标识Poi,如表1中采用Poi编号D1001481来标识“搜狐媒体大厦”;Poi所属城市可以采用城市编号来表示,即该城市编号可以用于表示Poi所属城市,如表1中可以采用北京对应的城市编号01来表示“搜狐网络大厦”、“搜狐媒体大厦”和“搜狗科技公司”这三个Poi所属的城市为北京,采用天津所对应的城市编号02来表示“天津滨海国际机场”和“天津大学”这两个Poi所属的城市为天津。
步骤204,依据各Poi的属性信息创建Poi的倒排索引。
在具体实现中,可以基于Poi中所包含的字符创建Poi的倒排索引。该Poi的倒排索引可以包括:基于单个字符的倒排索引、基于词的倒排索引、基于短语的倒排索引等等,本发明实施例对此不作限制。其中,基于单个字符的倒排索引可以是指针对Poi的每个单字创建的索引;基于词的倒排索引可以是指针对Poi中所包含的词创建的索引;基于短语的倒排索引可以是指针对Poi中所对应的短语创建的索引。
在本发明实施例中,可以针对Poi的各种属性信息创建对应的索引。该属性信息可以基于据Poi的查询域进行确定,如可以基于地址域确定Poi地址域信息;又如可以基于名称域确定Poi名称域信息,等等。在具体实现中,可以采用特定属性信息来表示待创建索引所对应的属性信息,从而可在Poi的倒排索引创建过程中,针对特定属性信息创建Poi的倒排索引。该特定属性信息可以包括以下至少一项:地址域信息和名称域信息。
在本发明的一个可选实施例中,属性信息为基于Poi的查询域确定的。Poi的查询域可以包括名称域和/或地址域。依据各Poi的属性信息创建Poi的倒排索引具体可以包括:分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
例如,结合上述示例,可以通过循环扫描构建的文档中所包含的Poi,构建各Poi的倒排索引。具体的,字符字典可以包括所有需要创建的字符。在构建倒排索引的过程中,可按照字符字典中的字符,对文档中的每一个Poi的特定属性信息中所包含的字符进行拆分,生成字符集;并且可对字符集中的字符进行统计,确定每一个字符对应的频率,以及基于每一个字符对应的频率,创建基于单个字符的倒排链表。其中,倒排链表可以包括字符编号、频率、字符位置,Poi热度等信息,其表示形式可以为<字符ID,频率,字符位置,Poi热度>。字符ID可表示单个字符的编号,且字符ID可以与Poi ID存在偏移值的关系,因此基于字符ID与Poi ID之间的偏移关系,可将倒排链表的表示形式设置为<Poi ID,频率,字符位置,Poi热度>,本发实施例对此不作限制。频率可表示单个字符在Poi中所出现的频率或次数;字符位置可以表示单个字符在Poi中所出现的位置;Poi热度可以表示Poi面向用户需求意义上的热度。
在本发明的一种实施方式中,Poi中所包含字符的字符ID与Poi ID之间的偏移关系,可以如下公式所示:
δ=(A1+A2+A3+A4+……+An)+X
具体的,δ可以表示Poi ID;(A1+A2+A3+A4+……+An)可以表示Poi中所包含的所有字符的字符ID的和,其中A1可以表示Poi中的第一个字符的字符ID,A2可以表示Poi中的第二个字符的字符ID,A3可以表示Poi中的第三个字符的字符ID,如此类推,An可以表示Poi中的第n个字符的字符ID,n为整数;X可以表示偏移值,该偏移值可以依据Poi中所包含的字符进行设置,本发明实施例对此不作限制。
例如,在“搜狐网络大厦”中各单个字的字符ID分别为β1、β2、β5、β6、β7和β21,且偏移值X为X1时,通过对(β1+β2+β5+β6+β7+β21)+X1进行计算,得到δ为D10001481,即可确定“搜狐网络大厦”的Poi ID为D10001481;又如,在“搜狐媒体大厦”中各单个字的字符ID分别为β1、β2、β3、β4、β7和β21,且偏移值X为X2时,通过对(β1+β2+β3+β4+β7+β21)+X2进行计算,得到δ为D10001482,即可确定“搜狐媒体大厦”的Poi ID为D10001482,等等。
本发明实施例在创建倒排索引时,可以同时记录下每一个Poi所对应的Poi热度和用户点击历史数据,并且可以将Poi热度和用户点击历史数据融入到Poi的倒排索引中;从而在基于用户输入查询词向用户推荐Poi时,可基于通过Poi热度和用户点击历史数据对推荐的Poi进行排序,得到较为准确的Poi排序结果,提高召回率。
可选的,Poi热度可以通过综合用户的点击频次、搜索频次以及Poi输入频次等因素聚合而成。用户的点击频次可以表示用户在点击Poi的次数,如用户在地图上点击某一Poi的次数,可以依据用户点击历史日志得到;搜索频次可以用于表示用户搜索Poi的次数,如用户在地图上搜索某一Poi的次数,可以依据用户搜索历史日志得到;Poi输入频次可表示用户输入Poi的次数,如用户在输入法中输入某一Poi的次数。用户点击历史数据可以是根据Poi智能提示的点击历史日志得到数据。
需要说明的是,Poi智能提示是指搜索关键字智能提示。具体的,在用户输入最少的搜索词的时候,***给出用户最想要的Poi结果、导航或者线路查询,以提升用户的搜索体验。
在创建单个字符的倒排链表后,可以依据单个字符的倒排链表构建Poi的倒排索引。可选的,可以依据倒排链表中的Poi热度对基于单个字符的倒排链表进行排序,得到倒排链表的排列顺序,进而可以基于按照该排列顺序对倒排链表进行存储,以方便后续基于Poi热度查找Poi的倒排索引,提高搜索效率。当然,也可以采用其他方式对基于单个字符的倒排链表进行排序,如可以基于倒排链表中的Poi ID和字符位置等对倒排链表进行排序,本发明实施例对此不作限制。
在本发明的一个可选实施例中,所述确定基于单个字符的倒排索引之前,所述方法还可以包括:获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。其中,输入法记录数据可以用户确定用户输入每一个Poi的次数;网页点击历史数据可以用于确定用户在网页上搜索和/或点击每一Poi的次数;地图点击历史数据可用于确定用户在地图应用上搜索和/或点击每一Poi的次数。
作为本发明的一个示例,可以依据上述表1中各Poi名称所包含的名称字符,创建出基于单个名称字符的倒排链表,如图3所示。以名称字符“搜”为例,名称字符“搜”所对应的频率为3,可以确定“搜”出现在3个Poi名称中;且名称字符“搜”所对应的倒排链表包括:<D10001481,3,1,10000>、<D1000182,3,1,9000>和<D1000183,3,1,9600>;其中,<D10001481,3,1,10000>可以表示“搜”出现在“搜狐网络大厦”这个Poi名称中,且“搜”为“搜狐网络大厦”这个Poi名称的第一个名称字符,其所对应的Poi热度为9600。
在本发明的一个可选实施例中,对各Poi名称域信息包含的名称字符进行统计,确定基于单个字符的倒排索引,包括:对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
以构建“搜狐”的Poi名称索引为例,如图3所示的基于单个字符的倒排链表,可以确定“搜狐”所对应的倒排链表包括<D10001481,3,1,10000>、<D1000182,3,1,9000>、<D10001481,2,2,10000>和<D10001482,2,2,9000>;进而可以基于倒排链表这的Poi ID和字符位置,将<D10001481,3,1,10000>和<D10001481,2,2,10000>构成“搜狐”的一种Poi名称索引,将<D1000182,3,1,9000>和<D10001482,2,2,9000>构成“搜狐”的另一种Poi名称索引。
在具体实现中,一个Poi可具有名称域信息,同时也可以具有地址域信息。在创建Poi倒排索引的过程中,不仅可以针对名称域信息创建Poi名称索引,还可以针对地址域信息创建Poi地址索引,如图4所示。可选的,在对各Poi地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引,可以包括:对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
由于Poi名称和Poi地址分别属于不同的查询域,因此在创建倒排索引的过程中,可以分开创建Poi名称索引和Poi地址索引。以兴趣点是“搜狐网络大厦”为例,在“搜狐网络大厦”的地址是“中关村东路1号院9号”的情况下,可以将Poi地址“中关村东路1号院9号”作为地址域信息,进而可以基于该Poi地址“中关村东路1号院9号”中所包含的字符,构建“搜狐网络大厦”所对应的Poi地址索引;当然,也可以将Poi名称“搜狐网络大厦”作为名称域信息,以基于“搜狐网络大厦”中所包含的字符构建Poi名称索引。
用户在日常输入过程中,通常会输入完整或者不完整的拼音字符,如输入“beijing”。针对这种情况,本发明实施例可以在创建倒排索引的过程中,将Poi所包含的汉字字符转换为对应的拼音字符串,以针对拼音字符串创建对应的拼音索引。例如,如图5所示,将Poi名称“搜狐网络大厦”中所含的汉字字符转换为对应的拼音字符串“sou-hu-wang-luo-da-sha”;并且可以转化后的拼音字符串转换成单个拼音字符,即将拼音字符串“sou-hu-wang-luo-da-sha”转化为单个汉字所对应的拼音“sou”、“hu”、“wang”、“luo”、“da”、“sha”。随后,可根据前缀树的原理,针对单个拼音字符创建拼音的前缀索引树,以基于前缀索引树生成单个汉字所对应的拼音索引。从而可以在搜索过程中依据拼音索引,针对输入的拼音字符串,向用户推荐对应的Poi结果,提高搜索效率和召回率。
步骤206,按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引。
步骤208,基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
作为本发明一个示例,在创建扫描得到的所有Poi的倒排索引后,可以创建的所有Poi的倒排索引存储在一个倒排文件中;并且可根据Poi所属城市的不同,将倒排文件中的各Poi的倒排索引切分为不同城市的索引分块,城市可以是按照行政区划定义中的地级市。例如,如图6所示,按照Poi所属城市对倒排文件中的倒排索引进行划分,从而可将属于北京的Poi所对应的倒排链表划分到北京索引分块中,将属于深圳的Poi所对应的倒排链表划分到深圳索引分块中,以及将属于其他城市的Poi中所对应的倒排链表划分到其他城市索引分块。
步骤210,构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项:Poi名称索引和Poi地址索引。
具体的,在将Poi的倒排索引划分到索引分块后,可以构建索引分块中的每一个Poi的倒排索与该索引分块之间的对应关系。例如,根据兴趣点“搜狐网络大厦”所对应的Poi所属城市为北京,在将兴趣点“搜狐网络大厦”的Poi名称索引和Poi地址索引划分到北京索引分块后,可以构建兴趣点“搜狐网络大厦”的Poi地址索引与北京索引分块之间的对应关系,并且可以构建兴趣点“搜狐网络大厦”的Poi名称索引与北京索引分块之间的对应关系。
步骤212,基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
在构建Poi的倒排索引与索引分块的对应关系后,可以基于建立的Poi的倒排索引与索引分块的对应关系,对Poi的倒排索引和Poi的城市信息进行保存,构成Poi索引库。例如可以基于Poi的倒排索引与索引分块之间的对应关系,对Poi所包含的字符对应的倒排链表和Poi所属城市对应的城市信息进行存储,生成Poi索引库。从而可在Poi搜索过程中,在Poi所属城市对应索引分块进行索引,缩小搜索范围,提高搜索效率。
综上,本发明实施例在创建Poi倒排索引的过程中,可以针对Poi中所包含的每一个字符创建基于单个字符的倒排索引,并按照Poi所属城市将创建的倒排索引划分到对应的索引分块中进行存储,从而构建了Poi索引库;在后续的Poi搜索过程中,可根据Poi所属城市在Poi索引库查找出对应的索引分块,然后可基于用户输入的Poi字符信息中所包含的字符,在索引分块中查找所对应的目标倒排索引,随即可依据目标倒排索引生成一个或多个Poi结果并展示,以将Poi结果推荐给用户,满足用户需求。
参照图7,示出了本发明的一种基于索引库的搜索方法实施例的步骤流程图,具体可以包括如下步骤:
步骤702,接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息。
具体的,在用户使用终端输入查询信息后,终端可以将用户输入的查询信息发送给服务器,从而使得服务器可以接收到该用户输入的查询信息。具体的,当用户想要获取某一个Poi时,可以在终端输入针对其所要获取的Poi输入信息,以触发终端将输入信息作为查询信息,从而可以通终端将该查询信息发送给服器,使得服务器可以接收到该查询信息,执行步骤704。
步骤704,从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息。
在本发明实施例中,服务器可以对用户输入的查询信息进行Poi的识别和Poi属性标注,以识别出该查询信息中所包含的Poi字符信息。该Poi字符信息可以包括不同查询域所对应的字符信息,可以包括地址域所对应的地址字符信息、名称域所对应的名称字符信息等。Poi字符信息的字符形式可以依据用户输入方式来确定,如在用户使用中文输入法时,Poi字符信息的字符可以为中文的汉字字符;又如在用户使用英文输入法时,Poi字符信息的字符可以为拼音字符等等,本发明实施例对此不作限制。
同时,服务器可以通过终端获取用户当前所在的地理位置,进而可以基于用户当前所在的地理位置确定出Poi所属的城市信息。其中,Poi所属的城市信息可用于表征用户所需要获取的Poi所属的城市,如当用户在北京市海淀区进行Poi搜索时,可以将北京所对应的城市编码01作为Poi所属的城市信息,以在北京所对应的索引分块进行Poi搜索;又如当用户在天津大学进行Poi搜索时,可以将天津所对应的城市编码02作为用户搜索的Poi所属的城市信息,以在天津所对应的索引分块进行Poi搜索。
步骤706,依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引。
服务器在确定Poi所属的城市信息后,可以依据该城市信息在预先构建的索引库中进行查询,从而可以查找该Poi所属的城市信息所对应的索引分块,并可将查找到的索引分块确定为目标索引分块,以在该目标索引分块查找Poi字符信息所对应的倒排索引。
在查找到Poi字符信息所对应的倒排索引后,可以将查找到的倒排索引作为与Poi字符信息对应的目标倒排索引,即能够从目标索引分块中获得与Poi字符信息对应的目标倒排索引,缩小了搜索范围,从而提高搜索效率。
例如,结合图3所示的基于单个字符的倒排链表,可以在北京索引分块查找到“搜狐”所对应的倒排链表,包括<D10001481,3,1,10000>、<D1000182,3,1,9000>、<D10001481,2,2,10000>和<D10001482,2,2,9000>,进而可将<D10001481,3,1,10000>、<D1000182,3,1,9000>、<D10001481,2,2,10000>和<D10001482,2,2,9000>确定为目标倒排索引。
步骤708,依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示。
在确定目标倒排索引后,服务器可以基于该目标倒排索所对应的字符构成一个或多个Poi结果,并可以将Poi结果返回给用户所使用的终端,通过终端对Poi结果进行展示。
例如,结合上述例子,基于<D10001481,3,1,10000>和<D10001481,2,2,10000>,可以将Poi编号D10001481所对应的Poi“搜狐网络大厦”作为一个Poi结果;同时,可基于<D1000182,3,1,9000>和<D10001482,2,2,9000>,将Poi编号D10001482所对应的Poi“搜狐媒体大厦”作为另一个Poi结果;然后可以将Poi“搜狐媒体大厦”和Poi“搜狐网络大厦”展示在终端屏幕上,以推荐给用户,满足用户需求。
在实际处理中,用户在输入查询信息的过程中,可以输入不同查询域的Poi字符信息,以触发服务器在不同查询域进行Poi搜索,从而可提升搜索范围并且提升搜索效率。其中,查询域可以包括但不仅限于地址域和名称域。例如,在用户输入的查询信息为“成府路1号搜狐大厦”时,可以将“成府路1号”识别为地址字符信息,而将“搜狐大厦”识别为名称字符信息,即出现了包含不同查询域的混合查询需求。针对混合查询需求,本发明实施可按照不同查询域所对应的Poi字符信息对Poi索引进行归并查询,从而能够查询到不同查询域所对应的Poi倒排索引。
参照图8,示出了本发明的一种基于索引库的搜索方法可选实施例的步骤流程图,具体可以包括如下步骤:
步骤802,接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息。
步骤804,从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息。
在本发明实施例中,可选的,从所述查询信息中识别出Poi字符信息,可以包括:对所述查询信息进行分词,得到至少一个分词结果;对所述分词结果进行词性标注,得到对应的属性信息;依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。在具体实现中,可以按照预设的词性对对用户输入的查询信息进行分词,得到至少一个分词结果;并且可以对每一个分词结果进行词性标注,以及可以基于标注的词性确定出每一个分词结果所对应的属性信息,进而可以基于属性信息对分词结果进行分析,确定出属于查询域所对应的Poi字符信息。例如,可以基于名称域信息,从分词后得到的分词结果分析出Poi名称所包含的字符,即得到名称字符信息;又如,可以基于地址域信息,从分词后得到的分词结果分析出Poi地址所包含的字符,即得到地址字符信息。
步骤806,在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块。
在本发明实施实施例中,可以根据城市信息与索引分块的对应关系,在索引库中查找与Poi所属的城市信息相对应的目标索引分块进行查找,以在该目标索引分块中查询出Poi字符信息所对应的目标倒排索引。
例如,当用户在北京使用终端在地图应用程序的操作界面上输入查询信息“搜狐”,服务器可以将查询信息“搜狐”识别为Poi字符信息,以依据“搜狐”搜索用户所需要查询的Poi,并且可将北京所对应的城市编号01确定为用户所需要查询的Poi的城市信息,以在城市编号01所对应的北京索引分块中查找“搜狐”所对应的倒排索引。
步骤808,在目标索引分块中,查询与所述Poi字符信息相匹配的字符的倒排链表。
步骤810,依据相配匹的字符的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
在本发明实施例中,可以在目标索引分块中,查找Poi字符信息所包含的每一个字符的倒排链表,即可以得到不同查询域所对应字符的倒排链表,进而可以基于不同的查询域所对应的字符的倒排链表,确定出不同查询域所对应的目标倒排索引。例如,可以根据Poi的名称字符信息所包含的名称字符,在目标索引分块中进行查找,进而可以基于查找的名称字符的倒排链表,确定Poi在名称域上所对应的名称域索引;同理,可以根据Poi的地址字符信息所包含的地址字符,在目标索引分块中进行查找,进而可以基于查找的地址字符的倒排链表,确定Poi在地址称域上所对应的地址域索引。
步骤812,依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示。
当出现复合域查询的时候,即在用户输入的查询信息包含不同查询域所对应的Poi字符信息的情况下,本发明实施例在确定出不同查询域所对应的目标倒排索后,可以依据Poi ID对查询到的目标倒排索进行融合归并,以基于融合归并后的目标倒排索生成需要推荐的Poi结果,减少Poi结果的推荐数量。可选的,在查询到的目标倒排索引包含了地址域所对应的地址域索引和名称域所对应的名称域索引情况下,依据所述目标倒排索引生成至少一个Poi结果,包括:对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
例如,在用户输入“成府路1号搜狐大厦”后,服务器在确定出“成府路1号”所对应的地址域索引和“搜狐大厦”所对应的名称域索引,;并且通过对地址域索引和名称域索引融合归并,可以得到“成府路1号搜狐大厦”所对应的Poi索引。该Poi索引可以包括“成府路1号搜狐大厦”中所包含的各个汉字字符所对应的倒排链表。从而可基于“成府路1号搜狐大厦”中所包含的各个汉字字符所对应的倒排链表构成“成府路1号搜狐大厦”对应的Poi结果,如在地图应用的界面上显示“成府路1号搜狐大厦”这一个兴趣点的地理位置,或者展示从用户当前地理位置到“成府路1号搜狐大厦”这一个兴趣点的地理位置多对应的导航路线等。
本发明实施例在生成的Poi结果不止一个的情况下,即在生成两个或两个以上的Poi结果后,以按照Poi热度对生成的Poi结果进行排序,得到对应的排列顺序,从而可以按照排列顺序对Poi结果进行展示,即优先将Poi热度较高的Poi结果推荐给用户。可选地,对Poi结果进行展示,可以包括:针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;按照排列顺序对各Poi结果进行展示。具体的,本发明实施例可以基于倒排链表中的字符位置和Poi ID确定出字符在Poi的位置,并且可以基于字符在Poi的位置确定出Poi结果中所包含的字符与查询信息之间的关联度,进而可以采用该关联度和Poi热度对生成的Poi结果进行排序,得到对应的排序顺序,以按照该排列顺序对的Poi结果进行展示,即将Poi热度较高和关联度较高的Poi结果推荐给用户,从而提高了查询信息所对应的召回率。
作为本发明的一种应用,本发明实施例提供的基于索引库的搜索方法可以应用于用户查询意图理解***和查询展示***,而索引库建立方法可以应用于索引服务***中。其中,用户查询意图理解***可以作为判断用户初步需求的***,可以用于接收用户输入的查询信息,并且可以从用户输入的查询信息识别出诸如Poi部分输入信息、Poi完整输入信息,Poi错误输入信息等Poi字符信息和,以及可以确定出诸如Poi地址查询需求、导航需求和线路查询需求等用户需求,从而使得查询展示***依据用户需求查找识别出的Poi字符信息所对应的Poi结果,以向用户提供最佳的Poi结果。
例如,如图9所示,用户查询意图理解***910在接收到用户输入的查询信息后,可以通过分词模块912对查询信息进行分词,得到一个或多个分词结果,该分词结果可以包括一个或多个字符;并且可以通过词性标注模块914,按照预设的词性对得到的每一个分词结果进行Poi属性的标注,即确定Poi的属性信息。其中,预设的词性可以包括诸如停用词、导航跳转词、公交跳转词、品牌连锁词、行政区划词、公交站点、数字、简单兴趣点、常用后缀词、地铁跳转词、分类品牌词、道路词、方位词和字母等等,本发明实施例对此不作限制。可选的,这些词性可以依据词库中所包含的词进行设置。其中,词库可以是通过对用户日志分析得到的,如可以包括Poi名称库、同义词库、分类和品牌词库等。可选的,在用户输入的查询信息可能不单一指代某一个Poi的情况下,如在查询信息包含多种属性信息所对应的查询词的情况下,可以结合查询信息确定出当前标注的Poi属性的概率,从而在后续排序处理中能够依据Poi属性的概率进行排序,以给出合理的Poi结果。此外,用户查询意图理解***910还可以通过查询分析模块916,对分词模块912和词性标注模块914生成的结果进行进一步的分析,如基于预设的规则模板和标注的属性信息对分词结果进行分析,得到合理的查询逻辑,并将该查询逻辑发送给查询展示***920,以触发查询展示***920按照该查询逻辑进行查询。例如,查询展示***920可以按照该查询逻辑对Poi不完全输入信息进行查询、过滤掉停用词、处理导航跳转词、处理地铁跳转词、查询地址Poi和查询分类词品牌等等。
具体的,查询展示***920可以依据用户查询意图理解***发送的Poi字符信息和用户需求,在索引服务***930的索引库中匹配Poi字符信息所对应的Poi倒排索引,进而可以基于匹配到Poi倒排索引生成Poi结果,并对Poi结果进行合理化展示。其中,合理化展示可以包括Poi展示、结构化展示、聚合展示、主子节点展示、导航跳转和路线跳转展示等。结构化展示可以表示Poi所属设施的展示,如展示“门”、“停车场”、“出入口”、“售票处”、“A座B座”等。
聚合展示可以表示对用户可能需要Poi结果进行聚合展示。具体的,当用户输入比较少的字符信息的时候,用户查询意图理解***确定出的用户需求可能很多,查询展示***可以将用户最可能需要的Poi结果聚合展示给用户,进而能够提高用户输入效率。例如,当用户输入拼音“jiao”的时候,查询展示***通过聚合排序可得到“交通银行”、“教育培训”、“饺子馆”、“教堂”等词,以供给用户选择使用。
主子节点展示可以用于展示一种品牌或者类别的所属关系和相关关系。例如,“酒店”这种类别中包含“快捷酒店”、“星级酒店”、“青年旅社”等,若用户输入的查询信息为“酒店”时,则查询展示***可给出属于酒店的小类,如给出“快捷酒店”、“星级酒店”和“青年旅社”这三种类别;若用户输入的查询信息为“快捷酒店”,则查询展示***可给出诸如“七天”、“如家”等酒店品牌的结果。
导航跳转和路线跳转展示是指对跳转到导航页面或导航路线页面的接口进行展示。具体的,在用户查询意图理解***910通过分析用户输入查询词,判定用户需要进行导航和线路查询时,查询展示***920可以依据搜索到的Poi结果给出的跳转的接口,以便快速达到用户的需求。
在排序的过程中,查询展示***920可以基于词序、词紧密度、词所属关系、规则化提权和Poi点击量等等因素,对生成的Poi结果进行排序处理,以提高召回率和用搜索效率。其中,词序可表示一个词在Poi的位置,如可以采用倒排链表中的字符位置和Poi ID确定出词序;词紧密度可以通过词与词的编辑距离计算得到。词的所属关系可表示词的行政区划从属关系和同义词相近关系。规则化提权可以表示在某些用户需求下,需要把特定的词的权重进行调整,如在用户顺序输入数字的时候,可以对公交线路的排序权值进行提高;而在用户输入的查询信息中包含了在括号内的部分词语时,对此部分词语的排序权值进行降低;又如,在处理跨城市查询的时候,即在需要平衡当前城市的结果和跨城市的结果时,可对跨城市热度数据进行提权,等等。
在一种实施方式中,可以基于词序、词紧密度、词所属关系、规则化提权因子和Poi点击量创建一个拟合模型,以通过该拟合模型对生成的Poi结果进行综合打分,得到对应的综合打分值
Figure BDA0001423236520000251
例如,创建的拟合模型可以采用如下公式进行表示:
Figure BDA0001423236520000252
其中,参数x可以表示词紧密度,参数y可表示词序,参数z可表示词所属关系,p可表示规则化提权因子,t可表示Poi点击量。a可以表示词紧密度的权重,b可表示词序的权重,c可表示词所属关系的权重。需要说明的是,a、b和c可以基于监督学习方法进行回归设置的,如可是通过预设的回归模型得到的,本发明实施例对此不做限制。
例如,在用户输入查询信息“北京交管所”后,查询展示***可以在索引服务***的索引库中查找到的Poi结果可以包括有:A“西城区交通管理局”、B“北京市公安局交通管理局(阜成门北大街)”、C“北京市公安局交管局”、D“永丰基地温泉交管所”。当用户查询意图理解***将用户输入额查询信息理解为“在北京市查找交管所”,即识别到的Poi字符信息可以为“交管所”,可以确定“交管所”和D“永丰基地温泉交管所”的词紧密度、词序的权值较高,“交管所”与C“北京市公安局交管局”的词紧密度和词序次之,而“交管所”与A“西城区交通管理局”、B“北京市公安局交通管理局(阜成门北大街)”具有较低的词紧密度和词序,若仅通过查询信息和Poi结果的字符意义上的比对,则可确定出Poi结果的排列顺序为D“永丰基地温泉交管所”、C“北京市公安局交管局”、A“西城区交通管理局”、B“北京市公安局交通管理局(阜成门北大街)”。当用户查询意图理解***将用户输入额查询信息理解为特指“北京市交管所”,即识别到的Poi字符信息为“北京市交管所”,可以确定“北京市交管所”与C“北京市公安局交管局”、B“北京市公安局交通管理局(阜成门北大街)”的词所属关系则更高,若仅通过查询信息和Poi结果的字符意义上的比对,则可确定出Poi结果的排列顺序为:C“北京市公安局交管局”、B“北京市公安局交通管理局(阜成门北大街)”、A“西城区交通管理局”、D“永丰基地温泉交管所”。应用本示例中的拟合模型对各Poi结果进行综合打分,可以确定出Poi结果最终的排序则为:A“西城区交通管理局”、B“北京市公安局交通管理局(阜成门北大街)”、C“北京市公安局交管局”、D“永丰基地温泉交管所”,即结合Poi点击量对Poi结果进行排序,得到较为准确的给出排序结果,并且能够从用户角度来考虑哪个Poi结果更符合用户需求,进而提升召回率。
索引服务***930可以用于对各种数据源进行扫描,创建基于单个字符的倒排索引,并且可将创建的倒排索引划分到不同城市所对应的索引分块中进行存储;以及可以对查询展示***920查找到的Poi索引进行融合和排序。其中,数据源可以包括Poi名称数据、Poi地址数据、Poi热度数据、Poi点击数据、Poi所属关系库、纠错词典库、同义词库、用户点击历史数据等。
在具体实现中,Poi地址数据与Poi所属关系库可以用于描述Poi特定地址的数据;其中,Poi地址数据可以不描述Poi的行政区划的所属关系,具体可以用于描述Poi的具***置,如Poi地址数据“北京市海淀区清华东路1号启迪科技大厦D座”描述了Poi的详细地址。Poi所属关系库可以包括表明Poi所属行政区划的数据,行政区划可包含有“省-市-县(区)-镇-街道”五级行政单位。通过Poi所属关系库,索引服务***930可以准确地获取Poi的所属关系,同时可使得用户查询意图理解***910可以对用户错误输入的行政区划进行纠正。
纠错词典库可以是通过对用户输入日志进行挖掘分析得到的常用形近字、易错字、模糊音的词库,且该词库可以通过对日志进行统计得到用户最可能输入错误的概率,从而使得索引服务***930可以通过纠错词典库对用户输入的错误信息进行纠错,解决了现有用户输入的错误信息不能通过同音纠错模型进行纠错导致召回率低的问题。
同义词词库可以包含Poi名称的别名、简称和曾用名称以及词的别名等。通过提高同义词词库的覆盖度,可以提高用户查询意图理解***910对Poi的识别率,进而可以提高标注的准确率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图10,示出了本发明的一种索引库构建装置实施例的结构框图,具体可以包括如下模块:
数据源扫描模块1002,用于对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;
索引创建模块1004,用于依据各Poi的属性信息创建Poi的倒排索引;
索引切分模块1006,用于依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;
索引库构建模块1008,用于依据所述索引分块构建Poi索引库。
在本发明的一个可选实施中,属性信息为基于Poi的查询域确定的。Poi的倒排索引可以包括:基于单个字符的倒排索引。索引创建模块1004可以包括如下子模块:
属性信息提取子模块,用于分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;
倒排索引确定子模块,用于对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
在本发明的一个可选实施中,索引库构建模块1008可以包括如下子模块:
对应关系构建子模块,用于构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项:Poi名称索引和Poi地址索引;
索引库构建子模块,用于基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
在本发明的一个可选实施中,倒排索引确定子模块可以包括如下单元:
名称字符统计单元,用于对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;
第一确定单元,用于依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;
名称索引构建单元,用于针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
在本发明的一个可选实施中,倒排索引确定子模块可以包括如下单元:
地址字符统计单元,用于对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;
第二确定单元,用于依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;
地址索引构建单元,用于针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
在本发明的一个可选实施中,索引切分模块1006可以包括如下子模块:
倒排索引切分子模块,用于按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;
索引分块生成子模块,用于基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
在本发明的一个可选实施中,所述装置还可以包括如下模块:
历史数据获取模块,用于获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;
综合分析模块,用于对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
参照图11,示出了本发明的一种基于索引库的搜索装置实施例的结构框图,具体可以包括如下模块:
信息接收模块1102,用于接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;
Poi识别模块1104,用于从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;
索引查询模块1106,用于依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;
结果展示模块1108,用于依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示。
在本发明的一个可选实施中,Poi识别模块1104可以包括如下子模块:
分词子模块,用于对所述查询信息进行分词,得到至少一个分词结果;
标注子模块,用于对所述分词结果进行词性标注,得到对应的属性信息;
分析子模块,用于依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
在本发明的一个可选实施中,索引查询模块1106可以包括如下子模块:
分块查找子模块,用于在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;
链表查找子模块,用于在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;
索引确定子模块,用于依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
在本发明的一个可选实施中,结果展示模块1108可以包括如下子模块:
索引融合子模块,用于对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;
结果生成子模块,用于基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
在本发明的一个可选实施中,结果展示模块1108可以包括如下子模块:
获取子模,用于针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;
排序子模块,用于依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;
展示子模块,用于按照排列顺序对各Poi结果进行展示。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
图12是根据一示例性实施例示出的一种设备1200的结构框图。例如,设备1200可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等;也可以是服务端设备,如服务器。
参照图12,设备1200可以包括以下一个或多个组件:处理组件1202,存储器1204,电源组件1206,多媒体组件1208,音频组件1210,输入/输出(I/O)的接口1212,传感器组件1214,以及通信组件1216。
处理组件1202通常控制设备1200的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1202可以包括一个或多个处理器1220来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1202可以包括一个或多个模块,便于处理组件1202和其他组件之间的交互。例如,处理组件1202可以包括多媒体模块,以方便多媒体组件1208和处理组件1202之间的交互。
存储器1204被配置为存储各种类型的数据以支持在设备1200的操作。这些数据的示例包括用于在设备1200上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1204可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件1206为设备1200的各种组件提供电力。电源组件1206可以包括电源管理***,一个或多个电源,及其他与为设备1200生成、管理和分配电力相关联的组件。
多媒体组件1208包括在所述设备1200和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1208包括一个前置摄像头和/或后置摄像头。当设备1200处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件1210被配置为输出和/或输入音频信号。例如,音频组件1210包括一个麦克风(MIC),当设备1200处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1204或经由通信组件1216发送。在一些实施例中,音频组件1210还包括一个扬声器,用于输出音频信号。
I/O接口1212为处理组件1202和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件1214包括一个或多个传感器,用于为设备1200提供各个方面的状态评估。例如,传感器组件1214可以检测到设备1200的打开/关闭状态,组件的相对定位,例如所述组件为设备1200的显示器和小键盘,传感器组件1214还可以检测设备1200或设备1200一个组件的位置改变,用户与设备1200接触的存在或不存在,设备1200方位或加速/减速和设备1200的温度变化。传感器组件1214可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1214还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1214还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件1216被配置为便于设备1200和其他设备之间有线或无线方式的通信。设备1200可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件1216经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件1216还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,设备1200可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1204,上述指令可由设备1200的处理器1220执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由设备的处理器执行时,使得设备能够执行一种索引库构建方法,所述方法包括:对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;依据各Poi的属性信息创建Poi的倒排索引;依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;依据所述索引分块构建Poi索引库。
可选地,所述属性信息为基于Poi的查询域确定的,所述Poi的倒排索引包括:基于单个字符的倒排索引。所述依据各Poi的属性信息创建Poi的倒排索引,包括:分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
可选地,所述依据所述索引分块构建Poi索引库,包括:构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项:Poi名称索引和Poi地址索引;基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
可选地,对各Poi名称域信息包含的名称字符进行统计,确定基于单个字符的倒排索引,包括:对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
可选地,对各Poi地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引,包括:对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
可选地,依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块,包括:按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
可选地,在确定基于单个字符的倒排索引之前,所述由一个或者一个以上处理器执行所述一个或者一个以上程序包含还用于进行以下操作的指令:获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由设备的处理器执行时,使得设备能够执行一种基于索引库的搜索方法,所述方法包括:接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示。
可选地,可选地,从所述查询信息中识别出Poi字符信息,包括:对所述查询信息进行分词,得到至少一个分词结果;对所述分词结果进行词性标注,得到对应的属性信息;依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
可选地,依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,包括:在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
可选地,依据所述目标倒排索引生成至少一个Poi结果,包括:对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
可选地,所述对Poi结果进行展示,包括:针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;按照排列顺序对各Poi结果进行展示。
图13是本发明实施例中服务器的结构示意图。该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(central processing units,CPU)1322(例如,一个或一个以上处理器)和存储器1332,一个或一个以上存储应用程序1342或数据1344的存储介质1330(例如一个或一个以上海量存储设备)。其中,存储器1332和存储介质1330可以是短暂存储或持久存储。存储在存储介质1330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1322可以设置为与存储介质1330通信,在服务器1300上执行存储介质1330中的一系列指令操作。
服务器1300还可以包括一个或一个以上电源1326,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1358,一个或一个以上键盘1356,和/或,一个或一个以上操作***1341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种索引库构建方法和装置、一种基于索引库的搜索方法和装置、一种设备,以及一种可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (38)

1.一种索引库构建方法,其特征在于,包括:
对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;
依据各Poi的属性信息创建Poi的倒排索引;
依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;
按照不同城市信息对应的索引分块,对Poi的倒排索引进行存储构建Poi索引库;
所述方法还包括:
记录每一个Poi所对应的Poi热度和用户点击历史数据,并将所述Poi热度和所述用户点击历史数据融入到Poi的倒排索引中,以便基于所述Poi热度和所述用户点击历史数对Poi进行排序。
2.根据权利要求1所述的方法,其特征在于,所述属性信息为基于Poi的查询域确定的,所述Poi的倒排索引包括:基于单个字符的倒排索引,所述依据各Poi的属性信息创建Poi的倒排索引,包括:
分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;
对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
3.根据权利要求2所述的方法,其特征在于,所述依据所述索引分块构建Poi索引库,包括:
构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项: Poi名称索引和Poi地址索引;
基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
4.根据权利要求3所述的方法,其特征在于,所述对各Poi名称域信息包含的名称字符进行统计,确定基于单个字符的倒排索引,包括:
对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;
依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;
针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
5.根据权利要求3所述的方法,其特征在于,所述对各Poi地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引,包括:
对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;
依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;
针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
6.根据权利要求1所述的方法,其特征在于,所述依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块,包括:
按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;
基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
7.根据权利要求2所述的方法,其特征在于,所述确定基于单个字符的倒排索引之前,所述方法还包括:
获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;
对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
8.一种基于索引库的搜索方法,其特征在于,包括:
接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;
从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;
依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,所述索引库是按照不同城市信息对应的索引分块,对Poi的倒排索引进行存储构建的,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;所述Poi的倒排索引中融入有Poi所对应的Poi热度和用户点击历史数据;
依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示;
其中,对所述Poi结果进行展示,包括:
基于所述Poi热度和所述用户点击历史数对Poi进行排序后展示。
9.根据权利要求8所述的方法,其特征在于,所述从所述查询信息中识别出Poi字符信息,包括:
对所述查询信息进行分词,得到至少一个分词结果;
对所述分词结果进行词性标注,得到对应的属性信息;
依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
10.根据权利要求8所述的方法,其特征在于,所述依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,包括:
在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;
在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;
依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
11.根据权利要求10所述的方法,其特征在于,所述依据所述目标倒排索引生成至少一个Poi结果,包括:
对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;
基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
12.根据权利要求11所述的方法,其特征在于,所述对Poi结果进行展示,包括:
针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;
依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;
按照排列顺序对各Poi结果进行展示。
13.一种索引库构建装置,其特征在于,包括:
数据源扫描模块,用于对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;
索引创建模块,用于依据各Poi的属性信息创建Poi的倒排索引;
索引切分模块,用于依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;
索引库构建模块,用于按照不同城市信息对应的索引分块,对Poi的倒排索引进行存储构建Poi索引库;还用于记录每一个Poi所对应的Poi热度和用户点击历史数据,并将所述Poi热度和所述用户点击历史数据融入到Poi的倒排索引中,以便基于所述Poi热度和所述用户点击历史数对Poi进行排序。
14.根据权利要求13所述的装置,其特征在于,所述属性信息为基于Poi的查询域确定的,所述Poi的倒排索引包括:基于单个字符的倒排索引,所述索引创建模块包括:
属性信息提取子模块,用于分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;
倒排索引确定子模块,用于对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
15.根据权利要求14所述的装置,其特征在于,所述索引库构建模块包括:
对应关系构建子模块,用于构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项:Poi名称索引和Poi地址索引;
索引库构建子模块,用于基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
16.根据权利要求15所述的装置,其特征在于,所述倒排索引确定子模块包括:
名称字符统计单元,用于对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;
第一确定单元,用于依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;
名称索引构建单元,用于针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
17.根据权利要求15所述的装置,其特征在于,所述倒排索引确定子模块包括:
地址字符统计单元,用于对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;
第二确定单元,用于依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;
地址索引构建单元,用于针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
18.根据权利要求13所述的装置,其特征在于,所述索引切分模块包括:
倒排索引切分子模块,用于按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;
索引分块生成子模块,用于基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
19.根据权利要求14所述的装置,其特征在于,还包括:
历史数据获取模块,用于获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;
综合分析模块,用于对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
20.一种基于索引库的搜索装置,其特征在于,包括:
信息接收模块,用于接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;
Poi识别模块,用于从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;
索引查询模块,用于依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,所述索引库是按照不同城市信息对应的索引分块,对Poi的倒排索引进行存储构建的,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;所述Poi的倒排索引中融入有Poi所对应的Poi热度和用户点击历史数据;
结果展示模块,用于依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示;还用于基于所述Poi热度和所述用户点击历史数对Poi进行排序后展示。
21.根据权利要求20所述的装置,其特征在于,所述Poi识别模块包括:
分词子模块,用于对所述查询信息进行分词,得到至少一个分词结果;
标注子模块,用于对所述分词结果进行词性标注,得到对应的属性信息;
分析子模块,用于依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
22.根据权利要求20所述的装置,其特征在于,所述索引查询模块包括:
分块查找子模块,用于在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;
链表查找子模块,用于在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;
索引确定子模块,用于依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
23.根据权利要求22所述的装置,其特征在于,所述结果展示模块包括:
索引融合子模块,用于对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;
结果生成子模块,用于基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
24.根据权利要求23所述的装置,其特征在于,所述结果展示模块包括:
获取子模,用于针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;
排序子模块,用于依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;
展示子模块,用于按照排列顺序对各Poi结果进行展示。
25.一种索引库构建设备,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
对兴趣点Poi的数据源进行扫描,确定各Poi的属性信息和城市信息;
依据各Poi的属性信息创建Poi的倒排索引;
依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块;
按照不同城市信息对应的索引分块,对Poi的倒排索引进行存储构建Poi索引库;
记录每一个Poi所对应的Poi热度和用户点击历史数据,并将所述Poi热度和所述用户点击历史数据融入到Poi的倒排索引中,以便基于所述Poi热度和所述用户点击历史数对Poi进行排序。
26.根据权利要求25所述的设备,其特征在于,所述属性信息为基于Poi的查询域确定的,所述Poi的倒排索引包括:基于单个字符的倒排索引,所述依据各Poi的属性信息创建Poi的倒排索引,包括:
分别从各Poi的属性信息中,提取各Poi地址域信息和/或名称域信息;
对各Poi名称域信息包含的名称字符以及地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引。
27.根据权利要求26所述的设备,其特征在于,所述依据所述索引分块构建Poi索引库,包括:
构建Poi的倒排索引与索引分块的对应关系,所述倒排索引包括以下至少一项: Poi名称索引和Poi地址索引;
基于所述Poi的倒排索引与索引分块的对应关系,构建Poi索引库。
28.根据权利要求27所述的设备,其特征在于,所述对各Poi名称域信息包含的名称字符进行统计,确定基于单个字符的倒排索引,包括:
对所述名称域信息中所包含的名称字符进行统计,确定各名称字符对应的频率;
依据各名称字符对应的频率,确定各名称字符的倒排链表,所述倒排链表包括:名称字符编号、字符位置以及Poi热度;
针对每一个Poi的名称域信息,基于所述名称字符的倒排链表构建Poi名称索引。
29.根据权利要求27所述的设备,其特征在于,所述对各Poi地址域信息包含的地址字符进行统计,确定基于单个字符的倒排索引,包括:
对所述地址域信息中所包含的地址字符进行统计,确定各地址字符对应的频率;
依据各地址字符对应的频率,确定各地址字符的倒排链表,所述倒排链表包括:地址字符编号、字符位置以及Poi热度;
针对每一个Poi的地址域信息,基于所述地址字符的倒排链表构建Poi地址索引。
30.根据权利要求25所述的设备,其特征在于,所述依据所述城市信息对Poi的倒排索引进行切分,得到基于城市信息的索引分块,包括:
按照所述城市信息对各Poi的倒排索引进行切分,得到各城市信息对应的Poi的倒排索引;
基于同一城市信息对应的Poi的倒排索引,生成对应的索引分块。
31.根据权利要求26所述的设备,其特征在于,在所述确定基于单个字符的倒排索引之前,所述由一个或者一个以上处理器执行所述一个或者一个以上程序包含还用于进行以下操作的指令:
获取历史搜索数据,所述历史搜索数据包括用户的输入法记录数据、网页点击历史数据和地图点击历史数据;
对所述历史搜索数据中的输入法记录数据、网页点击历史数据和地图点击历史数据进行综合分析,得到各字符对应的Poi热度。
32.一种基于索引库的搜索设备,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收用户输入的查询信息,所述查询信息中包含所述用户在搜索过程中输入的兴趣点Poi字符信息;
从所述查询信息中识别出Poi字符信息,并基于用户当前所在的地理位置确定Poi所属的城市信息;
依据所述Poi所属的城市信息,从索引库中查询与所述Poi字符信息对应的目标倒排索引,所述索引库是按照不同城市信息对应的索引分块,对Poi的倒排索引进行存储构建的,所述索引库包括基于城市信息的索引分块,所述索引分块包括Poi的倒排索引;所述Poi的倒排索引中融入有Poi所对应的Poi热度和用户点击历史数据;
依据所述目标倒排索引生成至少一个Poi结果,并对所述Poi结果进行展示;还基于所述Poi热度和所述用户点击历史数对Poi进行排序后展示。
33.根据权利要求32所述的设备,其特征在于,所述从所述查询信息中识别出Poi字符信息,包括:
对所述查询信息进行分词,得到至少一个分词结果;
对所述分词结果进行词性标注,得到对应的属性信息;
依据所述分词结果和所述属性信息进行分析,确定出Poi字符信息,所述Poi字符信息包括名称字符信息和/或地址字符信息。
34.根据权利要求32所述的设备,其特征在于,所述依据所述Poi所属的城市信息查询索引库,获得与所述Poi字符信息对应的目标倒排索引,包括:
在索引库中,查找与所述Poi所属的城市信息对应的目标索引分块;
在目标索引分块中,查询所述Poi字符信息所包含的字符的倒排链表;
依据查询到的倒排链表,确定目标倒排索引,所述目标倒排索引包括名称域索引和/或地址域索引。
35.根据权利要求34所述的设备,其特征在于,所述依据所述目标倒排索引生成至少一个Poi结果,包括:
对所述名称域索引和地址域索引进行融合,得到融合后的Poi索引;
基于所述Poi索引对应字符的倒排链表,生成至少一个Poi结果,所述倒排链表包括:字符编号、字符位置以及Poi热度。
36.根据权利要求35所述的设备,其特征在于,所述对Poi结果进行展示,包括:
针对每一个Poi结果,从所述字符的倒排链表中获取对应的Poi热度和字符位置;
依据获取的Poi热度、字符位置以及所述查询信息,对所述Poi结果进行排序处理,确定各Poi结果对应的排列顺序;
按照排列顺序对各Poi结果进行展示。
37.一种可读存储介质,其特征在于,当所述存储介质中的指令由设备的处理器执行时,使得设备能够执行如方法权利要求1-7中任意一项所述的索引库构建方法。
38.一种可读存储介质,其特征在于,当所述存储介质中的指令由设备的处理器执行时,使得设备能够执行如方法权利要求8-12中任意一项所述的基于索引库的搜索方法。
CN201710901601.3A 2017-09-28 2017-09-28 索引库构建方法、搜索方法及装置 Active CN110019645B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710901601.3A CN110019645B (zh) 2017-09-28 2017-09-28 索引库构建方法、搜索方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710901601.3A CN110019645B (zh) 2017-09-28 2017-09-28 索引库构建方法、搜索方法及装置

Publications (2)

Publication Number Publication Date
CN110019645A CN110019645A (zh) 2019-07-16
CN110019645B true CN110019645B (zh) 2022-04-19

Family

ID=67186336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710901601.3A Active CN110019645B (zh) 2017-09-28 2017-09-28 索引库构建方法、搜索方法及装置

Country Status (1)

Country Link
CN (1) CN110019645B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765262A (zh) * 2019-09-24 2020-02-07 北京嘀嘀无限科技发展有限公司 Poi文本的检索方法、装置及电子设备
CN111008625B (zh) * 2019-12-06 2023-07-18 建信金融科技有限责任公司 一种地址校正方法、装置、设备及存储介质
CN112197779A (zh) * 2020-09-14 2021-01-08 汉海信息技术(上海)有限公司 导航路径规划方法、装置、打印设备
CN112214573A (zh) * 2020-10-30 2021-01-12 数贸科技(北京)有限公司 信息搜索***、方法、计算设备及计算机存储介质
CN112685540A (zh) * 2021-01-07 2021-04-20 深圳市欢太科技有限公司 搜索方法、装置、存储介质以及终端
CN113743054A (zh) * 2021-08-17 2021-12-03 上海明略人工智能(集团)有限公司 字母向量学习方法、***、存储介质及电子设备
CN113672627B (zh) * 2021-09-08 2023-08-18 湖南惠农科技有限公司 Elasticsearch搜索引擎索引构建方法及装置
CN114661688B (zh) * 2022-03-25 2023-09-19 马上消费金融股份有限公司 地址纠错方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102147795A (zh) * 2010-02-05 2011-08-10 北京四维图新科技股份有限公司 兴趣点检索方法、兴趣点检索装置和导航***
CN102456055A (zh) * 2010-10-28 2012-05-16 腾讯科技(深圳)有限公司 兴趣点检索的方法及装置
CN102831224A (zh) * 2012-08-24 2012-12-19 北京百度网讯科技有限公司 一种数据索引库的建立方法、搜索建议生成方法和装置
CN103577442A (zh) * 2012-07-30 2014-02-12 腾讯科技(深圳)有限公司 一种地图数据重要度计算方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070276845A1 (en) * 2006-05-12 2007-11-29 Tele Atlas North America, Inc. Locality indexes and method for indexing localities
CN102024375A (zh) * 2009-09-23 2011-04-20 深圳市天翼方向科技有限公司 电子地图poi数据的特殊编排格式和计算方法
US8620947B2 (en) * 2010-02-08 2013-12-31 Navteq B.V. Full text search in navigation systems
CN103185581B (zh) * 2011-12-28 2017-03-08 上海博泰悦臻电子设备制造有限公司 信息提示装置、poi搜索结果的提示方法
ES2724007T3 (es) * 2012-01-26 2019-09-05 Hyundai Motor Co Ltd Indexado y búsqueda de un segundo objeto SOI respecto a un primer objeto SOI
CN103714092A (zh) * 2012-09-29 2014-04-09 北京百度网讯科技有限公司 一种地理位置的搜索方法和装置
CN102944243B (zh) * 2012-11-16 2016-12-21 沈阳美行科技有限公司 一种地图数据可以增量更新的方法
CN103902626B (zh) * 2012-12-30 2018-04-06 上海合众思壮科技有限公司 兴趣点检索方法、装置和带有该装置的设备
KR101558685B1 (ko) * 2013-12-09 2015-10-07 현대자동차주식회사 차량 기반 통신 서비스 지원 방법 및 시스템과 이를 지원하는 차량
US10097973B2 (en) * 2015-05-27 2018-10-09 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
CN106874287B (zh) * 2015-12-11 2020-06-30 北京四维图新科技股份有限公司 一种兴趣点 poi 地址编码的处理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102147795A (zh) * 2010-02-05 2011-08-10 北京四维图新科技股份有限公司 兴趣点检索方法、兴趣点检索装置和导航***
CN102456055A (zh) * 2010-10-28 2012-05-16 腾讯科技(深圳)有限公司 兴趣点检索的方法及装置
CN103577442A (zh) * 2012-07-30 2014-02-12 腾讯科技(深圳)有限公司 一种地图数据重要度计算方法及装置
CN102831224A (zh) * 2012-08-24 2012-12-19 北京百度网讯科技有限公司 一种数据索引库的建立方法、搜索建议生成方法和装置

Also Published As

Publication number Publication date
CN110019645A (zh) 2019-07-16

Similar Documents

Publication Publication Date Title
CN110019645B (zh) 索引库构建方法、搜索方法及装置
US10528635B2 (en) Blending by query classification on online social networks
US10051030B2 (en) Interactive searching and recommanding method and apparatus
CN105701254B (zh) 一种信息处理方法和装置、一种用于信息处理的装置
CN107589855B (zh) 一种根据地理位置推荐候选词的方法和装置
US20200326197A1 (en) Method, apparatus, computer device and storage medium for determining poi alias
US11861516B2 (en) Methods and system for associating locations with annotations
US20120296865A1 (en) Terminal device and word stock update method thereof
US9811564B2 (en) POI information providing system, POI information providing device, POI information output device, POI information providing method, and program therefor
CN110619076A (zh) 一种搜索词推荐方法、装置、计算机及存储介质
WO2012172160A1 (en) Method and apparatus for resolving geo-identity
US10242114B2 (en) Point of interest tagging from social feeds
US11176143B2 (en) Location-aware content detection
KR20130090612A (ko) 소셜 네트워크 서비스의 키워드 분석을 통한 위치기반 콘텐츠 제공 방법 및 시스템
EP3033693A1 (en) Systems and methods for processing search queries utilizing hierarchically organized data
CN111984749A (zh) 一种兴趣点排序方法和装置
US20140280053A1 (en) Contextual socially aware local search
CN108241690A (zh) 一种数据处理方法和装置、一种用于数据处理的装置
CN111694906A (zh) 一种在地图中展示poi的方法、装置和设备
CN112417318A (zh) 一种兴趣点的状态确定方法、装置、电子设备及介质
CN103955480A (zh) 一种用于确定用户所对应的目标对象信息的方法与设备
US20090186631A1 (en) Location Based Information Related to Preferences
US20200043074A1 (en) Apparatus and method of recommending items based on areas
CN108241678B (zh) 兴趣点数据的挖掘方法和装置
CN112861532B (zh) 地址标准化处理方法、装置、设备及在线搜索***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220921

Address after: 100084. Room 9, floor 01, cyber building, building 9, building 1, Zhongguancun East Road, Haidian District, Beijing

Patentee after: BEIJING SOGOU TECHNOLOGY DEVELOPMENT Co.,Ltd.

Patentee after: Beijing Sogou Network Technology Co.,Ltd.

Address before: 100084. Room 9, floor 01, cyber building, building 9, building 1, Zhongguancun East Road, Haidian District, Beijing

Patentee before: BEIJING SOGOU TECHNOLOGY DEVELOPMENT Co.,Ltd.

TR01 Transfer of patent right