首页> 中国专利> 一种基于查询语义和点击流数据的查询建议方法

一种基于查询语义和点击流数据的查询建议方法

摘要

本发明涉及一种基于查询语义和点击流数据的查询建议方法,包括以下步骤:一、对收集的查询日志数据进行预处理;二、对用户输入的查询数据进行分词、过滤停用词的预处理;三、将用户查询数据串与查询日志库中日志信息逐条进行相似度计算;四、基于知网中的词概念相关度计算方法,将用户查询数据串与查询日志库中日志信息逐条进行语义相关度计算;五、将相似度和语义相关度进行融合,计算用户查询数据串与查询日志库中每条日志信息的查询语义相关度;六、按照步骤五中的相关度由大到小,取出Top-N推荐给用户。本发明可以有效的消除查询歧义,并对输入错误进行提醒,提高信息检索系统的易用性和交互能力。

著录项

  • 公开/公告号CN102253982A

    专利类型发明专利

  • 公开/公告日2011-11-23

    原文格式PDF

  • 申请/专利权人 北京理工大学;

    申请/专利号CN201110172766.4

  • 发明设计人 彭学平;牛振东;黄胜;

    申请日2011-06-24

  • 分类号G06F17/30;

  • 代理机构

  • 代理人

  • 地址 100081 北京市海淀区中关村南大街5号

  • 入库时间 2023-12-18 03:43:07

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-08-12

    未缴年费专利权终止 IPC(主分类):G06F17/30 授权公告日:20130320 终止日期:20140624 申请日:20110624

    专利权的终止

  • 2013-03-20

    授权

    授权

  • 2012-01-04

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

    实质审查的生效

  • 2011-11-23

    公开

    公开

说明书

技术领域

本发明涉及一种新的查询建议方法——基于查询语义和点击流数据的查询 建议方法QSQSCD(Query Suggestion Based on the Query Semantics and Click-through Data),属于信息检索领域。

背景技术

目前搜索引擎采用的主要交互方式是用户自主输入查询,搜索系统根据用 户输入的查询提供检索结果。但是,很多时候用户输入的查询词并不能准确表 达其搜索需求。一方面,用户输入的查询词通常比较短——平均只有两三个词; 另一方面,很多搜索引擎含有歧义或意图模糊;此外,很多时候,用户之所以 要使用搜索引擎进行信息的搜索就是因为对要检索话题知之甚少甚至毫无概 念,这时候用户很难构造准确的查询。研究表明只有25%的查询能清晰表达用 户的意图。

为了更好地帮助用户构造查询,搜索引擎普遍采用查询建议技术,在搜索 结果页面中的“相关搜索”就是查询建议的一个具体应用。查询建议指发现或 构造一组与原查询Q相关的查询{Q1,Q2,...},可以通过修改原查询Q或整个替 换Q来实现这些相关查询。例如,对用户查询“苹果iphone”,可以通过修改 查询词“iphone”来推荐查询“苹果手机”,也可以将整个查询替换为“ipad”。

由于有着巨大的应用需求和价值,查询建议成为近年来的研究热点。从技 术实现上看,查询建议可以看作一个以搜索引擎查询为检索对象的信息检索问 题。然而,不同于文档或网页,查询的自身特点使查询建议面临诸多挑战:

首先,不同于文档或网页,查询通常只包含两到三个查询词,缺乏充分的 文本内容,传统信息检索模型不适合直接对其进行处理;

其次,用户查询信息稀疏。用户查询日志数据中多数查询出现次数很少, 在对这些查询处理时,可利用的相关属性信息有限;

最后,用户查询复杂多样。用户查询日志数据中通常包含几千万甚至上亿 条不同的查询,即使是同一查询不同用户可能表示不同意图。此外,用户查询 受时间、突发事件等因素影响。

查询建议方法根据所依赖的数据不同可分为两类:基于文档的方法和基于 日志的方法。1)第一种方法主要通过处理包含查询词的文档来分析查询,从相 关文档或人工编辑语料中搜索找出与输入查询相关的词或短语,然后利用这些 相关词或短语构建推荐查询。2)第二种方法主要通过分析用户的搜索引擎查询 日志寻找曾经出现过的相似查询,然后向用户给予推荐。这两种方法各有利弊, 基于日志的方法对处理出现频率小的稀疏查询比较困难,基于文档的方法虽能 处理稀疏查询,但是查找相关文档也是一个难题。

发明内容

本发明的目的是针对目前查询建议缺乏有效语义处理的问题,提出一种基 于查询语义和点击流数据的查询建议方法。

本发明提供了一种基于查询语义和点击流数据的查询建议方法,包括以下 步骤:

一、对收集的查询日志数据进行预处理,去掉非中文查询串、乱码数据及 无意义的符号,形成规范的查询日志库;

二、对用户输入的查询数据进行分词、过滤停用词的预处理,形成包含多 个关键词的查询数据串;

三、将用户查询数据串与查询日志库中日志信息逐条进行相似度计算;

四、基于知网中的词概念相关度计算方法,将用户查询数据串与查询日志 库中日志信息逐条进行语义相关度计算;

五、将步骤三和步骤四计算出的相似度和语义相关度进行融合,计算用户 查询数据串与查询日志库中每条日志信息的查询语义相关度;

六、按照步骤五中的相关度由大到小,取出Top-N推荐给用户。

本发明还提出了基于点击流矩阵模型的矩阵相关度计算方法,并将其与查 询语义相关度相融合,具体方法为:

在得到用户查询数据串与查询日志库中每条日志信息的查询语义相关度之 后,判断查询日志库中是否包含用户查询数据串,若不包含,则将用户查询数 据串的矩阵相关度设为0;若包含,则以用户提交的查询数据与该数据对应的点 击URL之间的关系为基础,逐条计算用户查询数据串与查询日志库中其他查询 日志信息之间的矩阵相关度;

将查询语义相关度和矩阵相关度进行融合,计算查询数据与查询日志库中 每条日志信息的相关度,作为推荐给用户的依据。

有益效果

本发明所述基于查询语义和点击流数据的查询建议方法,将查询语义信息 以及查询数据与该数据对应的点击URL之间的关系作为查询建议的依据,可以 有效的消除查询歧义,并对输入错误进行提醒,提高信息检索系统的易用性和 交互能力。

附图说明

附图1.QSQSCD的查询建议方法流程图;

附图2.查询-点击二步图;

附图3.查询建议平均精度比较。

具体实施方式

下面结合附图,具体说明本发明的优选实施方式。

本实施方式具体实现了本发明所述的基于查询语义和点击流数据的查询建 议方法,其流程如图1所示,包括以下步骤:

一、对收集的查询日志数据进行预处理,去掉非中文查询串、乱码数据及 无意义的符号,形成规范的查询日志库;

二、对用户输入的查询数据进行分词、过滤停用词的预处理,形成包含多 个关键词的查询数据串;

三、将用户查询数据串与查询日志库中日志信息逐条进行相似度计算;

进行相似度计算可以使用多种方法,例如余弦相似度计算、皮尔森系数相 似度计算等。此步骤是传统的文本相似度计算,通常基于词频统计计算文档相 似度。但是如果仅仅只通过该步骤获得相似度,将会缺乏对文档语义的处理。 如果相关文档之间的公共词较多,通过单纯基于词频的相似度计算方法可以达 到相关计算的目的,如果相关文档之间的公共词较少,这种计算方法就难以取 得较好的效果,特别对于较短的查询串。因为查询串中词汇的出现频率很小, 如果把与之关联紧密的其他概念考虑进来,则可以凸现查询的语义。因此,本 实施例在进行传统的相似度计算之后,在步骤四中进行语义相关度的计算。

四、基于知网中的词概念相关度计算方法,将用户查询数据串与查询日志 库中日志信息逐条进行语义相关度计算。

(1)知网中的词概念相关度计算方法:

知网中的每个词语均由DEF来描述其概念定义,DEF的值由若干个义原以 及它们与主干词之间的语义关系描述组成。知网中的概念是对词汇语义的描述, 每个词的语义描述包含一个或多个概念,每个概念描述形成一个记录,概念的 定义以及与之相关的同义、反义、上位、下位等关系,均描述于记录的DEF项 中。比如:DEF(高兴)={aValue|属性值,circumstances|境况,happy|福,desired| 良}。由于义原是HowNet中最小的语义单位,所以义原的相似度计算是概念相 似度计算的基础。由于所有的义原根据上下位关系构成了一个树状的义原层次 体系,所以采用简单的通过语义距离计算相似度的办法。假设两个义原在这个 层次体系中的路径距离为d,两个义原p1,p2之间的语义距离为:

Sim(p1,p2)=αd+α

其中,d是p1和p2在义原层次体系中的路径长度,是一个正整数。α是一 个可调节的参数,一般取经验值α=1.6。

知网中词语概念相似度计算的基本方法是通过计算部分之间的相似度得到 整体的相似度。知网将一个词语概念的描述分成四个部分:

1)第一基本义原:其值为一个基本义原,我们将两个概念的这一部分的相 似度记为Sim1(S1,S2);

2)其它基本义原:对应于语义表达式中除第一基本义原描述式以外的所有 基本义原描述式,其值为一个基本义原的集合,我们将两个概念的这一部分的 相似度记为Sim2(S1,S2);

3)关系义原:对应于语义表达式中所有的关系义原描述式,其值是一个特 征结构,对于该特征结构的每一个特征,其属性是一个关系义原,其值是一个 基本义原,或一个具体词。我们将两个概念的这一部分的相似度记为Sim3(S1,S2);

4)关系符号:对应于语义表达式中所有的关系符号描述式,其值也是一个 特征结构,对于该特征结构的每一个特征,其属性是一个关系义原,其值是一 个集合,该集合的元素是一个基本义原,或一个具体词。我们将两个概念的这 一部分的相似度记为Sim4(S1,S2)。

于是,知网的词之间概念相似度由下式计算

Sim(S1,S2)=Σi=14βiΠj=1iSimj(S1,S2)

其中,βi(1≤i≤4)是可调节的参数,且有:β1234=1,β1≥β2≥β3≥ β4。由于第一义原描述式反映了一个概念最主要的特征,所以一般将其权值定 义得比较大,一般取在0.5以上。

(2)语义相关度计算方法:

本发明提出的语义相关度是以知网中的词概念相关度为基础的。例如,可 以直接计算两个查询串中每个词的概念相关度的加权和,来计算两个查询串的 语义相关度;或者将两个查询串中概念相似度最大的两个词的概念相似度,作 为两个查询串的语义相关度。总之要通过语义相关度的计算,将查询串之间的 语义联系考虑进来,作为推荐给用户的一个重要依据。

本实施例优选的语义相关度计算方法为:

将用户查询数据串以及查询日志库中的每条日志信息均表示为规范化向量 V(q)=(t1,w1;t2,w2;L;tn,wn),其中ti为特征项,wi为ti在q中的权值;查询向量V(q) 中的每个元素的权值wi由下面公式来计算,

wi=freqimax{freqj|j=(1,2,...,n)}

其中,freqi表示查询特征项ti在查询q中的出现频率,而查询字符串q中总 共包含n个特征项;

设用户查询数据串为V(q1)=(t1,w1;t2,w2;L;tn,wn),查询日志库中的一条日志信 息为V(q2)=(t1,w1;t2,w2;L;tm,wm),则其语义相关度为:

ConcRel(q1,q2)=Σi=1nΣj=1mwi·wj·Sim(ti,tj)

其中i∈[1,n],j∈[1,m],Sim(ti,tj)是知网定义的词之间的概念相似度;如果 该词语不在知网的语义库中,则其概念相似度定义为0;

五、将步骤三和步骤四计算出的相似度和语义相关度进行融合,计算用户 查询数据串与查询日志库中每条日志信息的查询语义相关度;本实施例中采用 的融合方法为:

Sim(q1,q2)=α·SimKeywords(q1,q2)+(1-α)·Conc Rel(q1,q2)

其中SimKeywords(q1,q2)是步骤三得到的相似度,ConcRel(q1,q2)是步骤四得 到的语义相关度,α是平衡系数,其取值范围在[0,1]范围内。

六、判断查询日志库中是否包含用户查询数据串,若不包含,则将用户查 询数据串的矩阵相关度设为0;若包含,则以用户提交的查询数据与该数据对应 的点击URL之间的关系为基础,计算用户查询数据串与查询日志库中其他查询 日志信息之间的矩阵相关度;

点击流数据记录了Web用户的检索和点击活动,这些活动反映用户的兴趣及 用户和查询、查询和点击文档之间的潜在语义关系。点击流数据的每一行包含 下列信息:用户ID(u),用户提交的查询(q),用户点击的URL(l),点击的URL排 序(r),查询提交的时间(t),如下表所示。

因此点击流数据可以表示为(u,q,l,r,t)五元组集合。从统计学的观点来看, 对应一个网页的查询词集包含人对网页和提交查询之间的关系认知。因此,本 发明基于用户提交的查询数据与该数据对应的点击URL之间的关系,定义了矩 阵相关性,作为为用户提供查询建议的一个重要依据。例如,可以直接为对应 相同网页的查询串设置一个非常大的矩阵相关性值,或者直接计算两个查询串 对应相同网页的个数,并将该数值设置为矩阵相关性值。本实施例采取的矩阵 相关度计算方法为:

(1)构建一个二步图Bql=(Vql,Eql),其中所有顶点集Vql=Q∪L,Q={q1, q2,...,qm}即用户提交查询的集合,L={l1,l2,...,ln}即用户点击的URL的集合;所 有边的集合Eql={(qi,lj)|存在从qi到lj的一条边};当且仅当一个用户提交了查询 qi,然后点击了URLlj,边(qi,lj)存在;

为了方便对Bql执行矩阵降维和分解,把二步图Bql转换为一个矩阵S,对于 m×n查询-URL矩阵S,行表示查询,列表示URL,sij的值表明一个查询qi被不同 用户连接到URLlj的次数,这里的“不同”是指如果一个用户多次点击同一查询 -URL对,只记为1次。这样能够较好的发现查询和URL之间的关系,如图2所示。

(2)矩阵分解与相似度计算

对于m和n都达到千万级的时候,矩阵S非常的庞大,同时查询在二步图Bql 中是很稀疏的。比如,在我们的实验数据中,一个查询连接到平均4.04个URL 上,而且,一个URL也仅涉及到很少的查询。在我们的实验中URL顶点的平均 度只有1.22。

基于对查询-链接矩阵S的分析,可以通过S的矩阵分解得到高质量低维度的 查询Q和链接L的特征向量表示。新的特征表示提取了查询和链接的主要成分, 对进一步的处理更加有效。这里Q是一个d×m的矩阵,每一列是查询的d维特征 向量,同时L是一个d×n矩阵,每一列是链接的d维特征向量。

我们可以使用类似于潜在语义索引(LSI)的方法,应用著名的主成分分析 (PCA)来得到Q和L,我们定义优化函数如下:

minQ,L||S-QTL||F2+α||Q||F2+β||L||F2

其中α,β为不大于0.1的正数,||·||F是弗罗宾尼斯范数(Frobenius norm),最优 化的目的是使两个规范化的低维矩阵乘积QTL近似于S;

根据对上面公式做矩阵运算求解,得到最优的d×m矩阵Q,矩阵的每一列 是查询的d维特征向量;向量的每个项用wij表示主成分,其中i为列标,j为行 标,且1≤i≤m,1≤j≤d;两个查询的矩阵相关度采用空间余弦夹角进行计算, 其公式如下:

simMatrix(qi,qj)=Σk=1dwi,k×wj,kΣk=1dw2i,k×Σk=1dw2j,k

七、将查询语义相关度和矩阵相关度进行融合,计算查询数据与查询日志 库中每条日志信息的相关度,作为推荐给用户的依据。

本实施方式中采用将查询语义相关度和矩阵相关度直接相乘的融合方法:

S(q,qi)=simMatrix(q,qi)·Sim(q,qi)

其中S(q,qi)为查询q和qi融合基于查询语义和点击流矩阵的相关度。但考虑 到simMatrix(q,qi)和Sim(q,qi)中一个或俩个可能等于0。我们设定一个不大于0.1 的正数,比如为0.01,使得当simMatrix(q,qi)=0或Sim(q,qi)=0时,把这个较小 的正数赋值给simMatrix(q,qi)或Sim(q,qi),这样可以对模型做一个简单的平滑, 不至于出现零值。

八、按照步骤七中的相关度由大到小,取出Top-N推荐给用户。

下表针对三组查询测试串:“教育”、“旅游”和“健身”,对本实施方 式采用的查询建议方法(QSQSCD)与Google、百度的“相关搜索”功能提供 的查询建议进行比较。

在Google、百度的“相关搜索”中均包含被测试的查询词,是对查询词进 行查询扩展而得到的查询建议结果,不包含查询词的语义关系。而本发明提出 的查询建议结果能反映查询词的相关语义信息,如用户查询“教育”在查询建 议结果中会出现“考试”和“培训”相关词语,该词语能反映“教育”的语义 信息,给用户有更深层次的提示和引导。在用户检索“旅游”时QSQSCD的查 询建议结果中列出“驴友”、“宾馆”,经过分析发现是用户在搜索“旅游”和“驴 友”时,有很多相同的点击URL,同时“旅游”与用户的住宿存在语义关系, 故“宾馆”被作为查询建议列举出来。

在本实验中将本发明提出的查询建议方法QSQSCD和SimRank相似度计算 方法进行了比较。SimRank是利用图的结构信息计算对象间的相似度:一个节 点与自身的相似度最高,相同或相似节点的邻居节点也相似。也就是说,节点 间的相似性可以沿着边传递到他们的邻居间。下表展示的是对“教育”这个查 询关键词在查询建议列表中次序为1,5,10,20的查询建议精度。实验发现, 本发明提出的查询建议方法在这四个位置的查询建议精度好于SimRank方法。

图3展示了QSQSCD和SimRank的平均查询建议精度,其中横坐标是位置 K的值(从1到10),纵坐标为在位置为K时的查询建议平均精度。在K=1时, QSQSCD和SimRank的平均查询建议精度都在80%以上,且非常的接近。但随 着K的增多,也就是随着查询建议条目的增加,QSQSCDS建议精度下降比 SimRank更趋于平缓,前者的查询建议效果好于后者。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号