CN103810220A - 一种微博搜索方法及装置 - Google Patents
一种微博搜索方法及装置 Download PDFInfo
- Publication number
- CN103810220A CN103810220A CN201210460174.7A CN201210460174A CN103810220A CN 103810220 A CN103810220 A CN 103810220A CN 201210460174 A CN201210460174 A CN 201210460174A CN 103810220 A CN103810220 A CN 103810220A
- Authority
- CN
- China
- Prior art keywords
- blog article
- section
- microblogging
- term
- article
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Abstract
本发明属于搜索技术领域,尤其涉及一种微博搜索方法及装置。本发明微博搜索方法包括:对微博博文进行倒排以生成相应的倒排数据;对微博博文进行分段处理;接收用户输入的检索词,根据检索词对博文进行搜索;统计检索词在分段博文中的命中结果,根据命中结果进行博文展示。本发明通过将博文的段定义为以特殊字符分隔的物理句子,在搜索多个检索词时,根据博文分段信息分别获取每个检索词命中段的位置信息,并根据所有检索词命中段的位置信息判断博文是否段命中,在实时排序时优先展示,在保证实时性的前提下进一步提高了检索准确率,有利于提升用户的搜索体验。
Description
技术领域
本发明属于搜索技术领域,尤其涉及一种微博搜索方法及装置。
背景技术
随着微博的发展,越来越多的用户加入到微博平台,每天通过微博产生的消息量也越来越庞大。由于目前还没有针对微博内容进行系统的收录和检索,如何从这些海量数据中检索到用户真正想要的数据是非常困难的。搜搜、百度等普通搜索引擎可根据检索词的相关性排序进行搜索,该检索方式主要根据检索词在文章中命中的位置关系来判断检索词和文章的相关程度,相关性越高排序越靠前,但该检索方式并不适用于微博检索,由于微博平台十分强调文章的时新性,通过这种检索方式检索出的文章即使相关性很高但缺乏时新性也是没有价值的。
目前微博全文检索默认的排序方式为实时排序,即按照时间逆序对博文进行排列,而没有关注博文和检索词的相关度,导致博文排序的准确率较低,影响用户搜索体验。例如用户想找到与新版本的微信软件相关的文章,通过检索词“新版微信”进行搜索,但检索返回的博文有的是新版的QQ,有的是新版的飞信,并不是用户需要的检索结果,具体如图1所示,是现有微博全文检索排序效果图。那么,如何在保证时新性的前提下尽可能选择和检索词相关度高的文章返回给用户是目前微博全文检索的瓶颈。
发明内容
本发明提供了一种微博搜索方法及装置,旨在解决现有技术的微博检索方式缺乏时新性及博文排序方式准确率低问题。
本发明是这样实现的,一种微博搜索方法,包括:
对微博博文进行倒排以生成相应的倒排数据;
对微博博文进行分段处理;
接收用户输入的检索词,根据检索词对博文进行搜索;
统计检索词在所述倒排数据中的分段博文中的命中结果,根据命中结果进行博文展示。
本发明实施例采取的另一技术方案为:一种微博搜索装置,包括倒排数据生成模块、段处理模块、搜索模块和统计模块,所述倒排数据生成模块用于对微博博文进行倒排以生成相应的倒排数据;所述段处理模块用于对微博博文进行分段处理;所述搜索模块用于接收用户输入的检索词,根据检索词对博文进行搜索;所述统计模块用于统计检索词在分段博文中的命中结果,根据命中结果进行博文展示。
本发明实施例的技术方案具有如下优点或有益效果:本发明实施例的微博搜索方法及装置通过将博文的段定义为以特殊字符分隔的物理句子,在搜索多个检索词时,根据博文分段信息分别获取每个检索词命中段的位置信息,并根据所有检索词命中段的位置信息判断博文是否段命中,根据段命中检索出与检索词相关度高的博文,在实时排序时优先展示,在保证实时性的前提下进一步提高了检索准确率,有利于提升用户的搜索体验。
附图说明
附图1是现有微博全文检索排序效果图;
附图2是本发明实施例的微博搜索方法的流程图;
附图3是本发明将微博进行分段处理的效果图;
附图4是本发明实施例的微博搜索装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图2,是本发明第一实施例的微博搜索方法的流程图。本发明第一实施例的微博搜索方法包括以下步骤:
步骤100:对微博博文进行倒排以生成相应的倒排数据;
其中,倒排数据主要包括博文的列表以及各个分词在博文中的出现的位置列表。
步骤110:对微博博文进行分段处理;
在步骤110中,博文分段方式为:将段定义为以特殊字符分隔的物理句子,而将独立段分为普通段和特殊段两种类型,并分别对普通段和特殊段进行编号,普通段和特殊段分别以不同的字符进行标识,如“#微信阅读#QQ新版”,“微信阅读”为一个独立段,“QQ新版”是一个独立段;其中,普通段是以“。”、“!”、“?”或“;”等标点符号结尾的自然句子;或者是以“||”分隔的前后两个句子,“||”在微博中为转播标记,该符号前面的内容是转播人自己发表的内容,后面的则是被转播人发表的内容,故互相独立;特殊段是以“#”和“#”、“(”和“)”、“《”和“》”、“<”和“>”、“【”和“】”或“[”和“]”等字符对括起来的句子,“#”和“#”之间的内容表示博文属于哪个话题,通常话题内容比较独立可单独分段,由于一篇微博最多只能输入140个字符,用户通常会将内容梗概用括号括起来以起到标题的提示作用,因此也可将其独立分段。具体如图3所示,是本发明将微博进行分段处理的效果图,在图3中可以看出,该篇博文可分为4段,包括2个特殊段和2个普通段,第一个特殊段为“南昌将提高驾照考试标准”,第二个特殊段为“南昌新闻”;第一个普通段为“为强化交通安全工作保障机制,南昌将定期制定预防重特大道路交通事故措施”,第二个普通段为“有关部门将严把驾驶员证照关,提高驾照考试标准,增加复杂路况、恶劣天气、应急处置安全考试内容,对考试不合格者坚决不予发放相关证照”,在本发明实施方式中可以采用其他方式对博文进行分段,例如不同的人发表的博文作为不同的段。
此外,根据每篇博文的分段信息,在生成各个分词的位置列表时,可以将各个分词所在的分段的编号以附加位的形式写入到位置列表中。因此,在后续输入检索词进行检索以及进行的段命中的判断时,可以比较易于获知哪个检索词是位于博文中哪个段,以及该段是普通段还是特殊段。
步骤120:接收用户输入的检索词,根据检索词对博文进行搜索;
在步骤120中,用户输入的检索词可以为一个或多个。
步骤130:统计检索词在分段博文中的命中结果,根据命中结果进行博文展示;
在步骤130中,本发明实施方式的微博搜索方法会首先判断输入检索词为单个还是多个,由于单个检索词不存在是否段命中的问题,只需要将倒排数据中的博文按照时间的倒序正常排列展示即可,而对于多个检索词的检索,则需要分别对每个检索词进行段命中判断。
具体地,根据所有检索词在命中博文中的位置信息以及对应的段号来判断博文是否段命中,其中,由于特殊段可能是博文所属的话题或者是对博文梗概的描述,更需强调其独立性,因此在计算段命中时对于普通段和特殊段要进行区分,最终段命中的判断条件为:如果关键词的命中段是特殊段,所有关键词都要段命中,且所有关键词的命中段都属于相同的特殊段;如果关键词的命中段是普通段,所有关键词都要段命中,但所有关键词的命中段可以是不同的普通段。如果用户搜索“ABCDEF”,需要判断ABCDEF是否段命中,可以没有普通段和特殊段的区别。但是当用户搜索“ABC DEF”时,由于ABC和DEF之间用空格隔开,则认为二者之间不是强相关,分别判断ABC和DEF是否段命中。最终段命中的判断条件为:1.ABC和DEF都要段命中;2.ABC和DEF命中段属于相同的特殊段或者命中段都属于普通段,但可以是不同的普通段。当然,在本发明其他实施方式中,也可以自动对用户输入的词进行分词处理,然后再对分词后的关键词进行分别的搜索以及判断段命中。
然后,将段命中的博文打上标记,并返回。根据博文标记汇总段命中博文,并判断段命中博文的结果数是否大于设定阈值。具体地,当汇总段命中博文结果时判断段命中博文的结果数有多少,当该结果数大于设定阈值时会按照时间的倒序排列优先展示设定阀值内的段命中博文;当该结果数小于设定阈值时,会按照时间的倒序正常排列倒排数据中的所有博文,也就是说,其既包含段命中的博文,也包含非段命中的博文。
本发明通过段命中的判断而放弃使用相关性来判断主要是因为最终要按时间排序进行博文展示,所以无法直接使用相关性进行排序。另外,相关性的值根据检索词的不同差距较大,判断是否相关的阈值很难选取,并且相关性差的并不代表一定和检索词无关,本发明使用段命中对博文进行检索,相当于降低了相关性的标准,在保证召回率的前提下进一步提高了检索准确率。
请参阅图4,是本发明第一实施例的微博搜索装置的结构示意图。本发明第一实施例的微博搜索装置包括倒排数据生成模块、段处理模块、搜索模块和统计模块,其中,
倒排数据生成模块用于对微博博文进行倒排以生成相应的倒排数据。
段处理模块用于对微博博文进行分段处理。在本发明实施方式中,博文分段方式为:将段定义为以特殊字符分隔的物理句子,而将独立段分为普通段和特殊段两种类型,并分别对普通段和特殊段进行编号,普通段和特殊段分别以不同的字符进行标识,如“#微信阅读#QQ新版”,“微信阅读”为一个独立段,“QQ新版”是一个独立段;其中,普通段是以“。”、“!”、“?”或“;”等标点符号结尾的自然句子;或者是以“||”分隔的前后两个句子,“||”在微博中为转播标记,该符号前面的内容是转播人自己发表的内容,后面的则是被转播人发表的内容,故互相独立;特殊段是以“#”和“#”、“(”和“)”、“《”和“》”、“<”和“>”、“【”和“】”或“[”和“]”等字符对括起来的句子,“#”和“#”之间的内容表示博文属于哪个话题,通常话题内容比较独立可单独分段,由于一篇微博最多只能输入140个字符,用户通常会将内容梗概用括号括起来以起到标题的提示作用,因此也可将其独立分段。具体如图3所示,是本发明将微博进行分段处理的效果图,在图3中可以看出,该篇博文可分为4段,包括2个特殊段和2个普通段,第一个特殊段为“南昌将提高驾照考试标准”,第二个特殊段为“南昌新闻”;第一个普通段为“为强化交通安全工作保障机制,南昌将定期制定预防重特大道路交通事故措施。”,第二个普通段为“有关部门将严把驾驶员证照关,提高驾照考试标准,增加复杂路况、恶劣天气、应急处置安全考试内容,对考试不合格者坚决不予发放相关证照。”。可以理解,也可采取其他方式进行博文分段;获取检索词在博文中命中的位置信息,即获取检索词在命中博文中具体地命中段、命中段的类型及段号,并在生成位置列表时将检索词命中段的段号以附加位的形式写入位置信息,便于检索模块进行所有检索词的段命中判断。
搜索模块用于接收用户输入的检索词,根据检索词对博文进行搜索。在发明实施方式中,用户输入的检索词可以为一个或多个,因此搜索模块在检索时,还会判断输入检索词为单个还是多个,如果是单个,搜索单个检索词命中的博文;如果是多个,则搜索每个检索词同时命中的博文。
统计模块用于统计检索词在分段博文中的命中结果,根据命中结果进行博文展示。
其中,所述搜索装置可进一步包括判断模块和展示模块,所述判断模块用于根据检索词的位置信息判断博文是否段命中,如果是,将段命中的博文打上标记并返回。而所述展示模块用于根据统计模块统计的命中博文的结果数与阈值的关系展示博文,如果命中博文的结果数大于设定阈值,展示模块按照时间的倒序排列优先展示检索出来的段命中博文;如果小于设定阈值,按照时间的倒序正常排列所述所有博文。
本发明实施方式的微博搜索装置根据所有检索词在命中博文中的位置信息以及对应的段号来判断博文是否段命中,其中,由于特殊段可能是博文所属的话题或者是对博文梗概的描述,更需强调其独立性,因此在计算段命中时对于普通段和特殊段要进行区分,最终段命中的判断条件为:如果关键词的命中段是特殊段,所有关键词都要段命中,且所有关键词的命中段都属于相同的特殊段;如果关键词的命中段是普通段,所有关键词都要段命中,但所有关键词的命中段可以是不同的普通段。如果用户搜索“ABCDEF”,需要判断ABCDEF是否段命中,可以没有普通段和特殊段的区别。但是当用户搜索“ABC DEF”时,由于ABC和DEF之间用空格隔开,则认为二者之间不是强相关,分别判断ABC和DEF是否段命中。最终段命中的判断条件为:1.ABC和DEF都要段命中;2.ABC和DEF命中段属于相同的特殊段或者命中段都属于普通段,但可以是不同的普通段。当然,在本发明其他实施方式中,也可以自动对用户输入的词进行分词处理,然后再对分词后的关键词进行分别的搜索以及判断段命中。
本发明微博搜索方法及装置通过将博文的段定义为以特殊字符分隔的物理句子,在搜索多个检索词时,根据博文分段信息分别获取每个检索词命中段的位置信息,并根据所有检索词命中段的位置信息判断博文是否段命中,根据段命中检索出与检索词相关度高的博文,在实时排序时优先展示,在保证时新性的前提下进一步提高了检索准确率,有利于提升用户的搜索体验。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种微博搜索方法,包括:
对微博博文进行倒排以生成相应的倒排数据;
对微博博文进行分段处理;
接收用户输入的检索词,根据检索词对博文进行搜索;
统计检索词在所述倒排数据中的分段博文中的命中结果,根据命中结果进行博文展示。
2.根据权利要求1所述的微博搜索方法,其特征在于,所述对微博博文进行倒排以生成的倒排数据包括博文的列表以及各个分词在博文中的出现的位置列表。
3.根据权利要求1所述的微博搜索方法,其特征在于,所述对微博博文进行分段处理为:根据定义的分隔方式将博文分为普通段和特殊段。
4.根据权利要求3所述的微博搜索方法,其特征在于,所述博文分隔方式为:将段定义为以特殊字符分隔的物理句子,其中,所述普通段和所述特殊段分别以不同的字符进行标识。
5.根据权利要求1所述的微博搜索方法,其特征在于,所述接收用户输入的检索词步骤前还包括:输入检索词进行搜索,判断输入检索词为单个还是多个,如果是单个,搜索该单个检索词命中的博文;如果是多个,则搜索每个检索词同时命中的博文。
6.根据权利要求5所述的微博搜索方法,其特征在于,所述统计检索词在分段博文中的命中结果,根据命中结果进行博文展示步骤还包括:归并出倒排数据中包含所有检索词的博文,并根据所有检索词的位置信息判断博文是否段命中,如果是,将段命中的博文打上标记并返回。
7.根据权利要求6所述的微博搜索方法,其特征在于,所述统计检索词在分段博文中的命中结果,根据命中结果进行博文展示步骤还包括:根据博文标记汇总段命中博文,并判断段命中博文的结果数是否大于设定阈值,如果大于设定阈值,按照时间的倒序排列优先展示检索出来的段命中博文,如果小于设定阈值,按照时间的倒序正常排列所有博文。
8.一种微博搜索装置,包括倒排数据生成模块、段处理模块、搜索模块和统计模块,所述倒排数据生成模块用于对搜索结果进行倒排以生成相应的倒排数据;所述段处理模块用于对微博博文进行分段处理;所述搜索模块用于接收用户输入的检索词,根据检索词对博文进行搜索;所述统计模块用于统计检索词在分段博文中的命中结果,根据命中结果进行博文展示。
9.根据权利要求8所述的微博搜索装置,其特征在于,所述倒排数据生成模块所生成的倒排数据包括博文的列表以及各个分词在博文中的出现的位置列表。
10.根据权利要求8所述的微博搜索装置,其特征在于,所述段处理模块对微博博文进行分段处理为:根据定义的分隔方式将博文分为普通段和特殊段。
11.根据权利要求10所述的微博搜索装置,其特征在于,所述定义的分隔方式为:将段定义为以特殊字符分隔的物理句子,其中,所述普通段和所述特殊段分别以不同的字符进行标识。
12.根据权利要求8所述的微博搜索方法,其特征在于,所述搜索模块包括:对输入的检索词进行搜索,判断输入检索词为单个还是多个,如果是单个,搜索所述单个检索词命中的博文;如果是多个,则搜索每个检索词同时命中的博文。
13.根据权利要求12所述的微博搜索装置,其特征在于,还包括判断模块,所述判断模块用于根据检索词的位置信息判断博文是否段命中,如果是,将段命中的博文打上标记并返回。
14.根据权利要求13所述的微博搜索装置,其特征在于,还包括展示模块,所述展示模块用于根据统计模块统计的命中博文的结果数与阈值的关系展示博文,如果段命中博文的结果数大于设定阈值,展示模块按照时间的倒序排列优先展示检索出来的段命中博文;如果小于设定阈值,按照时间的倒序正常排列所有博文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210460174.7A CN103810220B (zh) | 2012-11-15 | 2012-11-15 | 一种微博搜索方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210460174.7A CN103810220B (zh) | 2012-11-15 | 2012-11-15 | 一种微博搜索方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103810220A true CN103810220A (zh) | 2014-05-21 |
CN103810220B CN103810220B (zh) | 2018-02-27 |
Family
ID=50707003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210460174.7A Active CN103810220B (zh) | 2012-11-15 | 2012-11-15 | 一种微博搜索方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103810220B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104715065A (zh) * | 2015-03-31 | 2015-06-17 | 北京奇虎科技有限公司 | 一种长查询词的搜索方法和装置 |
CN109284352A (zh) * | 2018-09-30 | 2019-01-29 | 哈尔滨工业大学 | 一种基于倒排索引的评估类文档不定长词句的查询方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071442A (zh) * | 2007-06-26 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 分布式索引文件的检索方法、检索系统及检索服务器 |
CN101576920A (zh) * | 2009-06-19 | 2009-11-11 | 用友软件股份有限公司 | 搜索引擎系统 |
JP2010191624A (ja) * | 2009-02-17 | 2010-09-02 | Nippon Telegr & Teleph Corp <Ntt> | 情報検索方法とその装置、プログラム、記録媒体 |
CN101923556A (zh) * | 2010-02-09 | 2010-12-22 | 上海莱希信息科技有限公司 | 根据句子序列号进行网页搜索的方法和装置 |
CN102200979A (zh) * | 2010-03-26 | 2011-09-28 | 上海市浦东科技信息中心 | 一种分布式并行信息检索系统及其方法 |
-
2012
- 2012-11-15 CN CN201210460174.7A patent/CN103810220B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101071442A (zh) * | 2007-06-26 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 分布式索引文件的检索方法、检索系统及检索服务器 |
JP2010191624A (ja) * | 2009-02-17 | 2010-09-02 | Nippon Telegr & Teleph Corp <Ntt> | 情報検索方法とその装置、プログラム、記録媒体 |
CN101576920A (zh) * | 2009-06-19 | 2009-11-11 | 用友软件股份有限公司 | 搜索引擎系统 |
CN101923556A (zh) * | 2010-02-09 | 2010-12-22 | 上海莱希信息科技有限公司 | 根据句子序列号进行网页搜索的方法和装置 |
CN102200979A (zh) * | 2010-03-26 | 2011-09-28 | 上海市浦东科技信息中心 | 一种分布式并行信息检索系统及其方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104715065A (zh) * | 2015-03-31 | 2015-06-17 | 北京奇虎科技有限公司 | 一种长查询词的搜索方法和装置 |
CN109284352A (zh) * | 2018-09-30 | 2019-01-29 | 哈尔滨工业大学 | 一种基于倒排索引的评估类文档不定长词句的查询方法 |
CN109284352B (zh) * | 2018-09-30 | 2022-02-08 | 哈尔滨工业大学 | 一种基于倒排索引的评估类文档不定长词句的查询方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103810220B (zh) | 2018-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10635717B2 (en) | Query suggestion templates | |
Metzler et al. | Structured event retrieval over microblog archives | |
CN101251855B (zh) | 一种互联网网页清洗方法、系统及设备 | |
KR101735024B1 (ko) | 키워드의 현지화 번역 | |
US8255414B2 (en) | Search assist powered by session analysis | |
US9934315B2 (en) | Method and system for web searching | |
CN102760172B (zh) | 一种网络搜索方法及网络搜索系统 | |
US10296644B2 (en) | Salient terms and entities for caption generation and presentation | |
JP6538277B2 (ja) | 検索クエリ間におけるクエリパターンおよび関連する総統計の特定 | |
CN104679801B (zh) | 一种兴趣点搜索方法和装置 | |
CN104011712A (zh) | 对跨语言查询建议的查询翻译进行评价 | |
CN103544255A (zh) | 基于文本语义相关的网络舆情信息分析方法 | |
US8788477B1 (en) | Identifying addresses and titles of authoritative web pages by analyzing search queries in query logs | |
US9805142B2 (en) | Ranking suggestions based on user attributes | |
US9727647B1 (en) | Annotating articles | |
EP2973379A1 (en) | Personalized summaries for content | |
CN103678412A (zh) | 一种文档检索的方法及装置 | |
CN103020212A (zh) | 一种基于用户查询日志实时发现热点视频的方法和装置 | |
CN105630884A (zh) | 一种微博热点事件的地理位置发现方法 | |
CN105183765A (zh) | 一种基于大数据的话题抽取方法 | |
CN102053974A (zh) | 一种汉字输入方法和装置 | |
CN103778122A (zh) | 搜索方法和系统 | |
CN102646124A (zh) | 一种自动识别地址信息的方法 | |
WO2016137690A1 (en) | Efficient retrieval of fresh internet content | |
CN103955480A (zh) | 一种用于确定用户所对应的目标对象信息的方法与设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |