首页> 中国专利> 一种基于微博平台的消息搜索方法及系统

一种基于微博平台的消息搜索方法及系统

摘要

本发明公开了一种基于微博平台的消息搜索方法及系统,该方法包括步骤:获取用户设置的商品信息;根据商品信息生成相应的搜索关键词;根据预先建立的关键词知识库进行搜索关键词扩展;根据预先建立的关键词组合知识库组合扩展后的搜索关键词,生成至少一个包含了多个搜索关键词的搜索关键词组合;用搜索关键词组合在各个微博平台上搜索相关联的微博消息;对搜索到的微博消息进行智能识别,将识别出的有潜在购物需求的消息作为返回给用户的结果保存到数据库中。采用本方法或系统,能找出微博平台上有潜在购物需求的微博消息,提高了搜索的全面性、准确性和实用性,搜索效率极高。

著录项

  • 公开/公告号CN103123649A

    专利类型发明专利

  • 公开/公告日2013-05-29

    原文格式PDF

  • 申请/专利权人 广州一找网络科技有限公司;

    申请/专利号CN201310035101.8

  • 发明设计人 石忠民;徐亚波;

    申请日2013-01-29

  • 分类号G06F17/30(20060101);G06Q30/02(20120101);

  • 代理机构广州市越秀区哲力专利商标事务所(普通合伙);

  • 代理人汤喜友

  • 地址 510663 广东省广州市萝岗区科学城科学大道182号创新大厦C1-1101之二单元

  • 入库时间 2024-02-19 18:03:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-04-20

    授权

    授权

  • 2013-08-21

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20130129

    实质审查的生效

  • 2013-05-29

    公开

    公开

说明书

 

技术领域

本发明涉及计算机信息处理领域技术,尤其是一种基于微博平台的消息搜索方法及系统。

 

背景技术

随着互联网信息技术的飞速发展,现有的网络信息搜索方法搜索到的信息越来越全面,比如百度、谷歌、Bing、搜搜等搜索引擎实施的搜索方法,能够根据用户输入的关键词在互联网海量的网页里搜索到海量的相关信息。

目前,微博平台已经成为最为庞大的社会化媒体,比如新浪微博、腾讯微博、网易微博、推特等,每天都有数量庞大的网民成为微博用户,每天都有不计其数的微博消息在各微博平台上发布。鉴于此,人们期望能从不计其数的微博消息中找出有潜在购物需求的消息,继而根据微博消息表达出的潜在购物需求向发布该微博消息的微博用户发送针对性的包含广告内容的评论。然而,现有的网络信息搜索方法都是基于整个互联网,由于全面性的提高,其搜索到的信息里虽然可能包含了大量的微博消息,但没有识别出有潜在购物需求的微博消息,而且这些微博消息杂乱无章地和其它信息混杂在一起,搜索的准确性和实用性极低。 

 

发明内容

针对现有技术的不足,本发明的目的旨在于提供一种基于微博平台的消息搜索方法,其能找出微博平台上有潜在购物需求的微博消息,提高了搜索的准确性和实用性。

本发明的另一目的在于提供一种基于微博平台的消息搜索系统。

为实现上述目的,本发明采用如下技术方案:

一种基于微博平台的消息搜索方法,包括以下步骤:

a、获取用户设置的商品信息;

b、根据商品信息生成相应的搜索关键词;

c、根据预先建立的关键词知识库进行搜索关键词扩展;

d、根据预先建立的关键词组合知识库组合扩展后的搜索关键词,生成至少一个包含了多个搜索关键词的搜索关键词组合;

e、用搜索关键词组合在各个微博平台上搜索相关联的微博消息;

f、对搜索到的微博消息进行智能识别,将识别出的有潜在购物需求的消息作为返回给用户的结果保存到数据库中。

其中,步骤c中的搜索关键词扩展是将关键词知识库中搜索关键词的同义词扩展为搜索关键词。

其中,商品信息包括频道、种类和特征。

其中,在步骤f中,所述对搜索到的微博消息进行智能识别包括以下具体步骤:

根据预先设定的过滤规则对搜索到的微博消息进行过滤;

采用预先训练好的文本分类器对过滤得到的微博消息进行分类;

用分类得到的每条微博消息的正文内容与一定时间段内的其它分类得到的微博消息的正文内容进行相似度比较,如果相似,则去掉该微博消息。

其中,步骤e所述的用搜索关键词组合在各个微博平台上搜索相关联的微博消息是根据搜索调度策略进行的,搜索调度策略如下:

根据每个搜索关键词组合的历史搜索结果为其计算下一次的搜索时间,该时间由以下公式得出:

                                                

其中,TI为某个时段的时长,T为在一天中所处的时段,t为抓取时的时间,M为某个时段出现新微博条目的期望,m为出现的新微博条目数,d为t值中的日期,N为一个时段中抓取的次数;

搜索调度策略的具体流程为:

初始化每个搜索关键词组合的历史记录值;

选取搜索时间最旧的一组搜索关键词组合进行搜索; 

更新该搜索关键词组合的历史记录值;

更新该搜索关键词组合的下一次搜索时间。

一种基于微博平台的消息搜索系统,包括:

获取模块,用于获取用户设置的商品信息;

生成模块,用于根据商品信息生成相应的搜索关键词;

扩展模块,用于根据预先建立的关键词知识库进行搜索关键词扩展;

组合模块,用于根据预先建立的关键词组合知识库组合扩展后的搜索关键词,生成至少一个包含了多个搜索关键词的搜索关键词组合;

搜索模块,用于用搜索关键词组合在各个微博平台上搜索相关联的微博消息;

识别模块,用于对搜索到的微博消息进行智能识别,将识别出的有潜在购物需求的消息作为返回给用户的结果保存到数据库中。

其中,识别模块包括:

过滤装置,用于根据预先设定的过滤规则对搜索到的微博消息进行过滤;

分类装置,用于采用预先训练好的文本分类器对过滤得到的微博消息进行分类;

文本去重装置,用于用分类得到的每条微博消息的正文内容与一定时间段内的其它分类得到的微博消息的正文内容进行相似度比较,如果相似,则去掉该微博消息。

本发明所阐述的一种基于微博平台的消息搜索方法及系统,其有益效果在于: 

采用本方法或系统,通过扩展搜索关键词、组合搜索关键词和智能识别,能找出微博平台上有潜在购物需求的微博消息,提高了搜索的全面性、准确性和实用性,搜索效率极高;以及,通过采用搜索调度策略,能取得搜索结果的最大化。

 

附图说明

图1是本发明一种基于微博平台的消息搜索方法的流程图;

图2是本发明一种基于微博平台的消息搜索方法中搜索调度策略的流程图;

图3是本发明一种基于微博平台的消息搜索方法中对搜索到的微博消息进行智能识别的流程图。

 

具体实施方式

下面结合附图与具体实施例来对本发明作进一步描述。

请参照图1所示,其显示出了本发明一种基于微博平台的消息搜索方法的主要流程,在步骤a中,获取用户设置的商品信息。商品信息包括频道、种类和特征,比如需要推广面膜的用户可以选择化妆品频道、面膜种类,特征可以选择祛痘、保湿。

进行到步骤b,根据商品信息生成相应的搜索关键词。一般而言,商品信息中的种类和特征都可以作为搜索关键词。

进行到步骤c,根据预先建立的关键词知识库进行搜索关键词扩展。由于语言文字的复杂性,不同的词可能表达的意思是相同的,而用户在商品信息中设置的关键词非常有限,为了尽可能多的获得具有与商品相关的潜在购物需求的微博消息,有必要对步骤b中生成的搜索关键词进行扩展,将这些搜索关键词的同义词也扩展为搜索关键词,以保证搜索的全面性,比如,面膜的同义词有软膜、水保湿、冻膜、去角质、痘消印、水晶膜、敷面粉、海藻胶、洗颜膜、太极泥、泥浆膜、水酣睡膜等,用户只需在商品信息中将种类设置为“面膜”,扩展后生成的搜索关键词将包含“面膜”及其所有的同义词。关键词扩展主要基于半自动建立的关键词知识库,关键词知识库中应尽可能多的保存领域内的常用关键词及其同义词。

进行到步骤d,根据预先建立的关键词组合知识库组合扩展后的搜索关键词,生成至少一个包含了多个搜索关键词的搜索关键词组合。组合搜索关键词,是为了能够更准确的搜索到符合用户期望的微博消息,比如“面膜 祛痘”、“面膜 消痘”、“面贴 祛痘”就是三个包括了两个搜索关键词的搜索关键词组合,而如果只以单个搜索关键词进行搜索,如“面膜”,搜索到的微博消息中将含有大量无效内容,即没有潜在购物需求的消息也会被搜索到,降低了准确性。关键词组合知识库规定了搜索关键词可能的组合,是为了让相关度高的搜索关键词组合成搜索关键词组合,防止不相关的关键词组合成搜索关键词组合,以提高搜索效率。 

进行到步骤e,用搜索关键词组合在各个微博平台上搜索相关联的微博消息。微博平台包括新浪微博、腾讯微博、网易微博等,通过调用微博平台的API接口实现搜索,比如以“面膜 祛痘”的搜索关键词组合作为输入参数,调用新浪微博平台提供的API接口,即返回包含该搜索关键词组合的最新的新浪微博消息。由于微博平台开放的搜索接口的访问是有次数限制的,即限定了单位时间段内的最大访问次数,而每个搜索关键词的热度是不一样的,比如经测试,在新浪微博平台上,“减肥”这个搜索关键词平均每分钟可产生20多条新微博消息,而“T区护理”这个搜索关键词平均每天产生的新微博消息数量还不到一条,因此每个不同的搜索关键词组合得到的更新数量是不一样的,这就应该对所有的搜索关键词组合建立合理的搜索调度策略,以达到搜索结果最大化,本发明的搜索调度策略如下:

根据每个搜索关键词组合的历史搜索结果为其计算下一次的搜索时间,该时间由以下公式得出:

其中,TI为某个时段的时长,T为在一天中所处的时段,t为抓取时的时间,M为某个时段出现新微博条目的期望,m为出现的新微博条目数,d为t值中的日期,N为一个时段中抓取的次数。 

由于微博用户一天中在各个时间段发布微博消息的数量很不均衡,为了精确计算,必须对一天分为多个时段,记录每个时段出现的新的微博消息总数量,以及该时段的时长和期望出现的新微博消息数,计算结果。

如图2,搜索调度策略的具体流程为:

(1)、初始化每个搜索关键词组合的历史记录值。由于上述公式计算时需要用到前一天的历史记录,因而第一次搜索时可以赋予一个固定的常量作为历史记录值。

(2)、选取搜索时间最旧的一组搜索关键词组合进行搜索。 

(3)、更新该搜索关键词组合的历史记录值。搜索后,根据搜索结果记录,用于计算下一次搜索时间。

(4)、更新该搜索关键词组合的下一次搜索时间。该搜索关键词组合的下一次搜索时间根据上述公式计算。

进行到步骤f,对搜索到的微博消息进行智能识别,将识别出的有潜在购物需求的消息作为返回给用户的结果保存到数据库中。采用搜索关键词组合进行搜索,虽然在一定程度上提高了搜索的准确性,但还是可能会搜索到一些没有潜在购物需求的微博消息,因此还需要对搜索到的微博消息进行智能识别,如图3,具体包括如下步骤:

(1)、根据预先设定的过滤规则对搜索到的微博消息进行过滤。这样通过设置过滤规则能过滤掉一些无用的微博消息,过滤规则主要包括以下规则:

不包含搜索关键词的过滤:去掉微博消息正文的转发部分后,剩余内容中不包含搜索关键词组合中的任意一个搜索关键词的,过滤掉;

广告过滤:微博正文中包含URL的或正文中包含指定的特殊字符数目超过一定数量的(比如包含价格单位“¥”超过3次的),过滤掉;

微博用户昵称关键词过滤:发布该微博消息的微博用户,如果昵称中包含指定关键词的,则判断为非普通微博用户(比如公司的官方账号或组织账号,这些微博用户所发的全部消息都可认定为没有购物需求),过滤掉。

(2)、采用预先训练好的文本分类器对过滤得到的微博消息进行分类。分类的目的是为了找出有潜在购物需求的微博消息,本实施例采用基于机器学习的文本分类器,主要分为以下两个阶段: 

21)、训练分类器。当确定文本模型后,利用训练样本集对分类器进行训练,同时用测试样本对分类器进行分类效果评估并调整,以得到具有最佳分类效果的分类器,训练过程如下:

21a)、生成特征。对全部训练样本的微博消息内容进行分词,也就是将整个文本句子分割成基本单元的词组,生成文本特征集。

21b)、特征选择。由于分词得到的文本特征集的特征数量非常庞大,造成分类算法的维度过大,而且有些特征还会影响搜索的精确度,因而必须挑选一定数量的有利于提高搜索精确度的特征。特征选择方法有很多种,有基于DF(文档频率)、IG(信息增益)、MI(互信息)等,本实施例采用CHI(卡方统计)特征选择方法,CHI方法通过计算特征词t与类别Ci之间的相关程度来进行特征选择操作,并假设特征词t与类别Ci满足具有一阶自由度的卡方分布,特征词与类别的相关度与卡方的值成正比,卡方值越大,表示该特征词所携带的类别信息量也越多,则被选择的几率也就越大。以化妆品频道为例,训练样本总数为8555,训练时文本特征集的特征数量为一万多条,特征选取时设定对各种方法设定阈值,最后选取得到约1200条的有效特征。

21c)、特征赋值。特征赋值有两种方法:布尔型赋值和TF-IDF赋值,本实施例采用TF-IDF方法,该方法刻画了特征表达文本内容属性的能力,TF越大,此特征在文档集中出现的范围越广,说明它的重要程度越高,IDF 越大,此特征在文档中的分布越集中,说明它在区分该文档内容属性方面的能力越强。实际应用时,每个特征的IDF值经统计全部样本后固定不变的,保存到数据库中或以文件保存,而TF则每次由得到新的文本后重新计算。

21d)、分类器训练。文本分类器有很多种,有朴素贝叶斯(Naive Bayes,NB)分类器、K最近邻 (K-Nearest Neighbor,KNN)分类器、人工神经网络(Artificial Neural Networks,ANN)分类器等,本实施例采用SVM(Support Vector Machine,支持向量机)分类器,与其他的分类器相比,SVM分类器具有较好的泛化能力、非线性处理能力和高维处理能力,而训练SVM分类器时需要设置好相关的参数以达到分类效果最佳的目的,其中最重要的参数有:

SVM类型参数:选用C-SVC类型为最佳,其中C为惩罚参数,经多次验证,选取C=1时效果最好;

核函数参数:核函数是用于低维向量空间向高维映射的工具,可分为线性核函数、多项式核函数、径向基核函数和Sigmoid 核函数,其中径向基核函数比较适合本实施例的SVM分类器,其中的参数gamma值设置为-1时最佳。

22)、分类器分类。即利用通过上述训练的分类器对待分类的微博消息进行分类处理,找出有潜在购物需求的微博消息。 

(3)、用分类得到的每条微博消息的正文内容与一定时间段内的其它分类得到的微博消息的正文内容进行相似度比较,如果相似,则去掉该微博消息。相似度比较具体为:对每条微博消息的正文内容进行分词,用VSM向量空间模型来将分词表示为向量,通过计算两条微博之间的向量的夹角余弦值来表示两条微博的相似度,夹角余弦值取值从0到1之间,值越大,相似度越高,本发明设置的阀值为0.9,即夹角余弦值超过0.9判定为相似,否则不相似。

在完成步骤f后,可根据返回的微博消息中蕴含的潜在购物需求向发布该微博消息的微博用户发送包含广告内容的评论。具体而言,通过上述方法的步骤a-f,能主动获取有潜在购物需求的微博用户,不用等待有潜在购物需求的微博用户自己找上门来,能及时、准确地捕捉到微博用户的需求点,理解个体微博用户的需求,并能找到恰当的时机,以合适的方式与微博用户沟通,从而使得广告投放精准,提高转化率,避免制造信息垃圾(不能满足用户个体需求的广告,对用户来讲就没有价值,是垃圾信息)。比如:以“面膜 祛痘”为搜索关键词组合,搜索到有潜在购物需求的微博消息“亲们,我脸上长了好多痘,想买面膜祛痘,但是买什么样的好呢?脸上有一点点斑,用啥样的呢?”,对于该微博用户而言,关于牙膏的广告是垃圾信息,此时结合该微博用户的购物需求发送评论,其中包含用面膜祛痘的广告内容,比如发送“诚意为你推荐柚子舍柚粒水滋养面膜,无痕祛痘,缔造夏日雅妆:http://www.xxxxxxx.com”。

本发明还提供了一种基于微博平台的消息搜索系统,包括:

获取模块,用于获取用户设置的商品信息;

生成模块,用于根据商品信息生成相应的搜索关键词;

扩展模块,用于根据预先建立的关键词知识库进行搜索关键词扩展;

组合模块,用于根据预先建立的关键词组合知识库组合扩展后的搜索关键词,生成至少一个包含了多个搜索关键词的搜索关键词组合;

搜索模块,用于用搜索关键词组合在各个微博平台上搜索相关联的微博消息;

识别模块,用于对搜索到的微博消息进行智能识别,将识别出的有潜在购物需求的消息作为返回给用户的结果保存到数据库中。

其中,识别模块包括:

过滤装置,用于根据预先设定的过滤规则对搜索到的微博消息进行过滤;

分类装置,用于采用预先训练好的文本分类器对过滤得到的微博消息进行分类;

文本去重装置,用于用分类得到的每条微博消息的正文内容与一定时间段内的其它分类得到的微博消息的正文内容进行相似度比较,如果相似,则去掉该微博消息。

本系统的实施方式与上述一种基于微博平台的消息搜索方法的实施方式相同,因而不再重复。

以上所述,仅是本发明较佳实施例而已,并非对本发明的技术范围作任何限制,故凡是依据本发明的技术实质对以上实施例所作的任何细微修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号