一种生成需求模板的方法、需求识别的方法及其装置与流程

文档序号:12541127阅读:321来源:国知局
一种生成需求模板的方法、需求识别的方法及其装置与流程
一种生成需求模板的方法、需求识别的方法及其装置【技术领域】本发明涉及自然语言处理技术,特别涉及一种生成需求模板的方法,需求识别的方法及其装置。

背景技术:
随着搜索引擎的广泛应用,搜索引擎技术得到了很大发展,如今的搜索引擎已经不仅仅满足于返回与用户查询相匹配的内容,而是试图返回与用户查询需求相关的内容。要返回与用户查询需求相关的内容,首先需要理解用户在搜索时的需求,也就是需要对用户需求进行识别,在现有技术中,对用户需求进行识别通常采用基于规则的方式实现。例如开发人员通过观察发现,用户的查询中以“mp3”结尾的查询一般都是音乐类的需求,开发人员就将“mp3结尾的需求为音乐需求”这条规则写入到需求识别程序中。这种方法存在下面两个问题:首先,规则的建立依靠人的观察,因此需要耗费大量的人力物力,而且也很难建立全面覆盖各种需求的规则,从而导致应用程序难以识别用户的各种需求;其次,采用这种方法识别用户需求,由于规则是嵌入到线上需求识别程序代码中的,因此会导致需求识别程序的可扩展性和可维护性都大大降低。

技术实现要素:
本发明所要解决的技术问题是提供一种生成需求模板的方法、需求识别的方法及其装置,以解决现有技术中,对用户需求进行识别的程序难以全面识别用户的各种需求,并且可扩展性和可维护性都较差的缺陷。本发明为解决技术问题而采用的技术方案是提供一种生成需求模板的方法,包括:从搜索日志中获取需求类型的种子查询;将所述需求类型的种子查询泛化为所述需求类型的候选模板;从所述需求类型的候选模板中选取所述需求类型的最终模板。根据本发明之一优选实施例,获取需求类型的种子查询的步骤包括:获取预设的所述需求类型的初始种子查询;对搜索日志中记录的所有查询按照层次聚类的方法进行聚类;确定一个聚类层次,使得在该层次下不少于预定比例的初始种子查询被聚到同一个类X中且在该层次下类X包含的查询总数最小,将该层次下的类X包含的所有查询作为所述需求类型的种子查询。根据本发明之一优选实施例,获取所述需求类型的种子查询的步骤包括:获取预设的所述需求类型的初始种子查询;使用迭代学习器从搜索日志中学习与所述初始种子查询之间的相似度满足预设要求的查询,并将学习到的查询与所述初始种子查询一并作为所述需求类型的种子查询。根据本发明之一优选实施例,获取需求类型的种子查询的步骤包括:从搜索日志中导致所述需求类型的页面被点击的查询中,选取查询次数最高的N1个查询作为所述需求类型的种子查询,所述N1为预设的正整数;或者,从所述需求类型的垂直搜索的搜索日志中提取所述需求类型的种子查询。根据本发明之一优选实施例,将所述需求类型的种子查询泛化为所述需求类型的候选模板的步骤包括:将所述需求类型的种子查询中与所述需求类型所对应的预设实体词匹配的部分替换成所述预设实体词所属类别的通配符;或者,将所述需求类型的种子查询中被类别识别函数识别出来的部分替换成所述类别识别函数所对应类别的通配符,其中所述类别识别函数是根据一个类别的属性定义的用于识别该类别的函数。根据本发明之一优选实施例,将所述需求类型的种子查询泛化为所述需求类型的模板的步骤进一步包括:将所述需求类型的种子查询中对所述需求类型的贡献度低于预设贡献度要求的词语替换为用于限制词语长度的长度通配符。根据本发明之一优选实施例,从所述需求类型的候选模板中选取所述需求类型的最终模板时,依据所述需求类型的候选模板的以下特征中的至少一个进行:点击特征,用于表征所述需求类型的候选模板覆盖的查询能够引起所述需求类型的页面被点击的概率;相似度特征,用于表征所述需求类型的一个候选模板与所述需求类型的所有候选模板的共性程度;匹配能力特征,用于表征所述需求类型的候选模板匹配所述需求类型的查询的能力。根据本发明之一优选实施例,所述需求类型的候选模板W的点击特征采用下列方式计算:其中Click(W)表示W的点击特征,表示W在搜索日志中覆盖的所有查询引起所述需求类型页面被点击的次数,表示W在搜索日志中覆盖的所有查询引起所有页面被点击的次数。根据本发明之一优选实施例,所述需求类型的候选模板W的相似度特征采用下列方式计算:其中,Similarity(W)表示W的相似度特征,表示W与所述需求类型的所有其他候选模板之间的相似度之和。根据本发明之一优选实施例,所述需求类型的候选模板W的匹配能力特征采用下列方式计算:其中,Match(W)表示W的匹配能力特征,表示W在所述需求类型的查询构成的搜索日志中匹配到的查询的数量,表示W在各种需求类型的查询构成的搜索日志中匹配到的查询的数量。本发明还提供了一种需求识别的方法,包括:获取用户查询;在前文所述生成需求模板的方法得到的最终模板中确定与所述用户查询相匹配的最终模板,并将与所述用户查询相匹配的最终模板所对应的需求类型作为所述用户查询具有的需求。本发明还提供了一种生成需求模板的装置,包括:种子获取单元,用于从搜索日志中获取需求类型的种子查询;泛化单元,用于将所述需求类型的种子查询泛化为所述需求类型的候选模板;选取单元,用于从所述需求类型的候选模板中选取所述需求类型的最终模板。根据本发明之一优选实施例,所述种子获取单元包括:第一选取单元,用于获取预设的所述需求类型的初始种子查询;聚类单元,用于对搜索日志中记录的所有查询按照层次聚类的方法进行聚类;确定单元,用于确定一个聚类层次,使得在该层次下不少于预定比例的初始种子查询被聚到同一个类X中且在该层次下类X包含的查询总数最小,将该层次下的类X包含的所有查询作为所述需求类型的种子查询。根据本发明之一优选实施例,所述种子获取单元包括:第二选取单元,用于获取预设的所述需求类型的的初始种子查询;学习单元,用于使用迭代学习器从搜索日志中学习与所述初始种子查询之间的相似度满足预设要求的查询,并将学习到的查询与所述初始种子查询一并作为所述需求类型的种子查询。根据本发明之一优选实施例,所述种子获取单元在获取所述需求类型的种子查询时,具体从搜索日志中导致所述需求类型的页面被点击的查询中,选取查询次数最高的N1个查询作为所述需求类型的种子查询,所述N1为预设的正整数;或者,从所述需求类型的垂直搜索的搜索日志中提取所述需求类型的种子查询。根据本发明之一优选实施例,所述泛化单元在将所述需求类型的种子查询泛化为所述需求类型的候选模板时,具体将所述需求类型的种子查询中与所述需求类型对应的预设实体词匹配的部分替换成所述预设实体词所属类别的通配符;或者,将所述需求类型的种子查询中被类别识别函数识别出来的部分替换成所述类别识别函数所对应类别的通配符,其中所述类别识别函数是根据一个类别的属性定义的用于识别该类别的函数。根据本发明之一优选实施例,所述泛化单元,还用于将所述需求类型的种子查询中对所述需求类型的贡献度低于预设贡献度要求的词语替换为用于限制词语长度的长度通配符。根据本发明之一优选实施例,所述选取单元从所述需求类型的候选模板中选取所述需求类型的最终模板时,依据所述需求类型的候选模板的以下特征中的至少一个进行:点击特征,用于表征所述需求类型的候选模板覆盖的查询能够引起所述需求类型的页面被点击的概率;相似度特征,用于表征所述需求类型的一个候选模板与所述需求类型的所有候选模板的共性程度;匹配能力特征,用于表征所述需求类型的候选模板匹配所述需求类型的查询的能力。根据本发明之一优选实施例,所述选取单元采用下列方式计算所述需求类型的候选模板W的点击特征:其中Click(W)表示W的点击特征,表示W在搜索日志中覆盖的所有查询引起所述需求类型页面被点击的次数,表示W在搜索日志中覆盖的所有查询引起所有页面被点击的次数。根据本发明之一优选实施例,所述选取单元采用下列方式计算所述需求类型的候选模板W的相似度特征:其中,Similarity(W)表示W的相似度特征,表示W与所述需求类型的所有其他候选模板之间的相似度之和。根据本发明之一优选实施例,所述选取单元采用下列方式计算所述需求类型的候选模板W的匹配能力特征:其中,Match(W)表示W的匹配能力特征,表示W在所述需求类型的查询构成的搜索日志中匹配到的查询的数量,表示W在各种需求类型的查询构成的搜索日志中匹配到的查询的数量。本发明还提供了一种需求识别的装置,包括:查询获取单元,用于获取用户查询;匹配单元,用于在前文所述生成需求模板的装置得到的最终模板中确定与所述用户查询相匹配的最终模板,并将与所述用户查询相匹配的最终模板所对应的需求类型作为所述用户查询具有的需求。由以上技术方案可以看出,通过上述方式,无需开发人员人工将识别规则写入需求识别程序中,而是由机器自动地利用搜索日志中记录的查询生成需求模板来对用户需求进行识别。在线上程序中,当获取到用户查询后,利用线下生成的需求模板,能够很好地判断用户的需求类型。在这种识别用户需求的方式中,需求模板是自动生成的,节约了人力物力,同时,由于生成需求模板与需求识别实现了线下和线上的分离,使得需求识别程序的可扩展性和可维护性都大大提高。【附图说明】图1为本发明中生成需求模板的方法与需求识别的方法的实施例的流程示意图;图2为本发明中对搜索日志中的查询进行聚类的结构示意图;图3为本发明中匹配树的示意图;图4为本发明中生成需求模板的装置与需求识别的装置的实施例的结构示意框图;图5为本发明中种子获取单元的一个实施例的结构示意框图;图6为本发明中种子获取单元的又一个实施例的结构示意框图。【具体实施方式】为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。请参考图1,图1为本发明中生成需求模板的方法与需求识别的方法的实施例的流程示意图。如图1所示,本实施例分为线下部分及线上部分,其中线下部分为生成需求模板的方法的实施例的流程示意图,线上部分为需求识别的方法的实施例的流程示意图。线下部分生成需求模板的方法包括:步骤S101:从搜索日志(querylog)中获取需求类型的种子查询。步骤S102:将相应需求类型的种子查询泛化为相应需求类型的候选模板。步骤S103:从相应需求类型的候选模板中选取相应需求类型的最终模板。下面对上述步骤进行具体说明。步骤S101中,一种需求类型的种子查询包括以各种方式表达的能够反映这种需求类型的查询。例如种子查询“步步惊心主题曲”和“三寸天堂”,虽然表达方式不同,但是表达的需求是相同的,都是查询同一首歌曲。获取需求类型的种子查询可以有多种方式,下面通过具体的实施例对获取种子查询的方式进行介绍。获取一种需求类型的种子查询的实施例一:步骤S1011:获取预设的该种需求类型的初始种子查询,并对搜索日志中记录的所有查询按照层次聚类的方法进行聚类。步骤S1012:确定一个聚类层次,使得在该层次下不少于预定比例的初始种子查询被聚到同一个类X中且在该层次下类X包含的查询总数最小,将该层次下的类X包含的所有查询作为该种需求类型的种子查询。可以理解,其中的预定比例作为一个比例值,取值范围应该大于等于零且小于等于1,并且当预定比例取值为1(即100%)时,不少于预定比例的初始种子查询实际上就是全部的初始种子查询。初始种子查询可通过人工选定有该种需求类型的查询得到。本实施例可采用自底向上或自顶向下两种方式进行层次聚类。自底向上的层次聚类方法是:首先将每一个查询作为一个类,然后通过迭代,不断地合并最相似的两类,直到将所有的查询合并为一类;自顶向下的层次聚类方法是:首先将所有查询看作一类,然后通过迭代,找出最不相似的查询分裂出去成为两个类,直至到每个查询自成一类。在聚类中,获知不同查询之间的相似度,一种方式是通过计算与不同查询对应的特征词向量之间的余弦相似度得到,其中与每个查询对应的特征词,可从该查询对应的检索结果中提取得到。此外,与各查询对应的用户点击数据也可以作为计算不同查询之间相似度的特征。本发明对聚类中如何判断不同查询之间的相似度的方法不做限制,可采用本领域技术人员所知的任意方式进行。下面通过一个具体实例说明上述获取一种需求类型的种子查询的过程。假设音乐需求类型的初始种子查询为“步步惊心主题曲”、“三寸天堂mp3”和“爱我中华歌曲免费试听”。搜索日志中的查询有:1、步步惊心片尾曲,2、步步惊心主题曲,3、三寸天堂,4、严艺丹三寸天堂,5、三寸天堂mp3,6、好听的歌曲,7爱我中华歌曲免费试听,8、步步惊心在线观看,9、步步惊心第30集,10、步步惊心无删节版,11、穿越小说步步惊心,则对以上查询进行层次聚类的结果请参考图2。图2为本发明中对搜索日志中的查询进行聚类的结果示意图。如图2所示,在聚类结果的第一层上,查询1、2是一类,查询3、4是一类,查询8、9是一类,其余查询各自是一类。在聚类结果的第二层上,查询1、2是一类,查询3、4、5是一类,查询8、9、10是一类,其余查询各自是一类。在查询的第三层上,查询1、2、3、4、5是一类,查询8、9、10是一类,其余查询各自是一类。在查询的第四层上,查询1、2、3、4、5、6是一类,查询8、9、10是一类,其余查询各自是一类。在查询的第五层上,查询1、2、3、4、5、6、7是一类,查询8、9、10是一类,查询11自成一类。在查询的第六层上,查询1、2、3、4、5、6、7、8、9、10是一类,查询11自成一类。在查询的第七层上,所有查询组成一类。可以看出,初始种子查询分别是查询2、5、7,如果前面所说的预定比例取1,也就是要求确定一个层次,在该层次下,所有的初始种子查询(即查询2、5、7)在同一个类中,且这个类包含的查询数目应该最小,显然,在第五层的时候存在满足这个条件的类,这个类包含的所有查询分别是查询1、2、3、4、5、6、7,所以查询1、2、3、4、5、6、7就是音乐需求类型的最终的种子查询。获取一种需求类型的种子查询的实施例二:步骤S101a:获取预设的该种需求类型的初始种子查询。步骤S102b:使用迭代学习器从搜索日志中学习与初始种子查询之间的相似度满足要求的查询,并将学习到的查询与初始种子查询一并作为该种需求类型的种子查询。与实施例一中类似的,初始种子查询可通过人工选定有该种需求类型的查询得到,并且在本实施例中,同样需要获取不同查询之间的相似度,而不同查询之间相似度的计算方法与实施例一中介绍的类似,在此不再赘述。迭代学习器可采用任意的有监督或无监督的机器学习方法得到,本发明不再做重点描述。除了上面所说的实施例一和实施例二,在获取一种需求类型的种子查询时,还可以根据导致该种需求类型的页面被点击时的查询来确定。例如:从导致该种需求类型的页面被点击的查询中选取查询次数最高的N1个查询作为该种需求类型的种子查询,其中N1为预设的正整数。譬如一个流行音乐下载的页面,被“周杰伦专辑下载”、“周杰伦菊花台”、“依然范特西”等查询大量点击,则这几个查询就可以作为流行音乐需求类型的种子查询。此外,还可以从一种需求类型的垂直搜索的搜索日志中提取该种需求类型的种子查询。垂直搜索是针对某个行业或某个领域的搜索,当用户在一个旅游网站搜索的时候,表达的就是与旅游有关的需求,而不会是与餐饮相关的需求。因此当需要获取与旅游相关需求的种子查询时,就可以直接从旅游搜索领域的搜索日志中提取得到。请继续参考图1。步骤S102中,将查询泛化为候选模板的过程,就是用通配符对查询进行限定以生成候选模板的过程。具体地,步骤S102的实施方式包括以下几种,参见实施例三、四和五。实施例三:将相应需求类型的种子查询中与相应需求类型所对应的预设实体词匹配的部分替换成该预设实体词所属类别的通配符。例如音乐需求类型的种子查询有“步步惊心片尾曲”和“严艺丹三寸天堂”,音乐需求类型对应的预设实体词有:步步惊心(属于电影电视剧名称类别)、严艺丹(属于歌手名称类别)和三寸天堂(属于歌曲名称类别),则查询“步步惊心片尾曲”和“严艺丹三寸天堂”就可以分别泛化为“【电影电视剧名称】片尾曲”和“【歌手名称】【歌曲名称】”两个候选模板。实施例四:将相应需求类型的种子查询中被类别识别函数识别出来的部分替换成类别识别函数所对应类别的通配符,其中类别识别函数是根据一个类别的属性定义的用于识别该类别的函数。类别识别函数包括人名识别函数,符号识别函数,英文识别函数,数字识别函数,日期识别函数,商品型号识别函数等等,其中的人名、符号、英文等表示对应类别的属性。应该理解,在使用函数识别一个类别的思想下,类别识别函数并不仅限于以上种类,凡是本领域技术人员能够实现的类别识别函数,都应该包括在本发明的范围内。实施例四中的类别识别函数也可以与实施例三中的预设实体词结合使用,可以增强候选模板中通配符的正确性。下面5个视频需求类型的种子查询:1、“文章演的最新电影”2、“马伊琍演过的励志电影”3、“孙俪邓超夫妇一起主演的电影”4、“范冰冰自己弯腰收拾行李视频”5、“迈克尔·杰克逊的所有高清视频”假如人名识别函数与包含明星类别实体词的预设词表结合使用,可以得到下列候选模板:[Star]演的最新电影、[Star]演过的励志电影、[Star][Star]夫妇一起主演的电影、[Star]自己弯腰收拾行李视频、[F:name]的所有高清视频,其中[Star]是满足预设明星类别实体词的明星名字的通配符,[F:name]是能够被人名识别函数识别出的人名的通配符。但是在另一个查询为“哪里有太阳照常升起的影评文章”的例子中,虽然“文章”与预设明星类别实体词匹配,但是由于人名识别函数未将这个查询中的“文章”识别为人名,因此这个查询中的“文章”就不会被泛化,从而提高了候选模板的正确性。人名识别函数可根据词语的共现概率来定义,例如统计大规模语料资源,根据一个词语与上下文词语共现的概率判断这个词语作为人名出现的可能性大小,当可能性大于设定阈值时就将这个词语认定为人名。其他种类的类别识别函数也可以根据识别类型的特点进行定义,这里不再赘述。实施例五:在实施例三和实施例四的基础上,将相应需求类型的种子查询中对相应需求类型的贡献度低于预设贡献度要求的词语替换为用于限制词语长度的长度通配符。例如实施例四中所举例子的5个种子查询,查询1中的“演的最新”、查询2中的“演过的励志”、查询3中的“夫妇一起主演的”、查询4中的“自己弯腰收拾行李”、查询5中的“的所有高清”,这些词语对判断一个查询是否属于视频需求类型的贡献度比较低,因此,可以将这些词语替换为长度通配符。例如将查询1中的“演的最新”替换为[W:1-4],其中[W:1-4]是表示长度为1到4个字的通配符。实施例四中的5个种子查询,在实施例三与实施例四处理的基础上,进一步对视频需求类型的贡献度低于预设贡献度要求的词语进行替换后可得到下列的候选模板:1、[Star][W:1-4]电影2、[Star][W:1-5]电影3、[Star][Star][W:1-7]电影4、[Star][W:1-8]视频5、[F:name][W:1-5]视频上述候选模板1和候选模板2还可以依据一定的合并策略,例如以待合并候选模板中的长度通配符的匹配长度区间的最大距离进行合并,将候选模板1与候选模板2合并为:[Star][W:1-5]电影。查询中的词语对相应需求类型的贡献度,可以通过计算查询中n-gram粒度的词语构成的向量与相应需求类型的词语构成的向量之间的余弦距离得到,其中n-gram是指由n个能独立表意的最小粒度词形成的片段,例如“演的最新”就是一个由最小粒度词“演的”和“最新”形成的2-gram。关于n-gram的概念可以参考现有的各种分词技术,在此不再详细说明。确定相应需求类型的词语也可采用各种现有技术进行,例如人工选取或者在相应需求类型的语料中挖掘等等,由于不是本发明的重点,在此不再赘述。以上叙述可以看出,通过步骤S102,可以得到相应需求类型的候选模板,但是,由于在泛化过程中有可能存在过度泛化的情况,如这样一个模板“[歌手名称][W:1-4]”,不仅可以匹配上“严艺丹三寸天堂”这样的查询,还可以匹配上“严艺丹的身高”这样的查询,假设这个模板是音乐需求类型的模板,很显然,其匹配的后一个查询表达的需求并不是音乐类型的,说明想要得到足够准确的需求模板,还需要从步骤S102中得到的候选模板中进行选取。因此,在步骤S103中,会对步骤S102中生成的候选模板进行选取,以得到最终模板。步骤S103中对候选模板进行选取,可采用分类器的方式进行,即利用分类器将候选模板分为正确模板与错误模板,其中的正确模板就是要选取为相应需求类型的最终模板。对分类器来说,影响分类结果好坏的最重要因素是对候选模板提取的特征。在本发明中,可以提取的特征包括但不限于:点击特征、相似度特征及匹配能力特征。其中点击特征用于表征相应需求类型的候选模板覆盖的查询能够引起相应需求类型的页面被点击的概率,相似度特征用于表征相应需求类型的一个候选模板与相应需求类型的所有候选模板的共性程度,匹配能力特征用于表征相应需求类型的候选模板匹配相应需求类型的查询的能力。具体地,候选模板W的点击特征可用公式(1)表示:其中,Click(W)表示W的点击特征,表示W在搜索日志中覆盖的所有查询引起相应需求类型页面(URL)被点击的次数,表示W在搜索日志中覆盖的所有查询引起所有页面被点击的次数。例如,候选模板“[电影电视剧名称]主题曲下载”在搜索日志中覆盖的所有查询包括“步步惊心主题曲下载”、“水浒传主题曲下载”,在这两个查询引起的点击中,有100个点击指向的是音乐网站,有5个点击指向了其他网站,则“[电影电视剧名称]主题曲下载”这个候选模板相对于音乐需求的点击特征值就是100/105。而“[电影电视剧名称]在线阅读”这个候选模板覆盖的查询有“步步惊心在线阅读”、“水浒传在线阅读”,在这两个查询引起的点击中,只有3个点击指向的是音乐网站,有100个点击指向了其他网站(主要是阅读网站),则很显然,“[电影电视剧名称]在线阅读”这个候选模板相对于音乐需求的点击特征值就是3/103,通过上述这种方法也很容易判断出“[电影电视剧名称]在线阅读”这个模板相对于阅读需求的点击特征值应该很高,从而更可能有阅读的需求。候选模板W的相似度特征,可用公式(2)进行计算:其中Similarity(W)表示W的相似度特征,表示W与相应需求类型的所有其他候选模板之间的相似度之和。例如音乐需求类型下有A、B、C三个候选模板,则候选模板A的相似度特征Similarity(A)=S(A,B)+S(A,C),同理,Similarity(B)=S(B,A)+S(B,C),Similarity(C)=S(C,A)+S(C,B)。一个候选模板X与另一个候选模板Y之间的相似度,可通过计算X得到的词向量与Y得到的词向量之间的余弦距离得到。而候选模板X或Y的词向量,可以采用多种方式获取,例如从X或Y匹配的查询中抽取关键词构成词向量,或者从X或Y匹配的查询导致的检索结果中抽取关键词构成词向量,抽取的方式可采用本领域技术人员想到的任意方式进行,本发明对此不做限制。候选模板W的匹配能力特征,可用公式(3)进行计算:其中,Match(W)表示W的匹配能力特征,表示W在相应需求类型的查询构成的搜索日志中匹配到的查询的数量,表示W在各种需求类型的查询构成的搜索日志中匹配到的查询的数量。相应需求类型的查询构成的搜索日志指的是仅记录有该种需求类型的查询的日志文件。例如,从一个音乐网站取得的搜索日志,很显然记录的应该都是音乐需求类型的查询。请继续参考图1,图1中的线上部分的需求识别的方法包括:步骤S201:获取用户查询。步骤S202:在前文所述生成需求模板的方法得到的最终模板中确定与用户查询相匹配的最终模板,并将与用户查询相匹配的最终模板所对应的需求类型作为用户查询具有的需求。步骤S202中,确定与用户查询相匹配的最终模板,可以采用树结构的算法进行匹配。在树结构中,每一个节点代表一种状态,其中的根节点代表初始状态,叶子节点代表模板匹配成功的状态,而中间节点则代表匹配过程中的中间状态。连接两个节点之间的边,称为状态转移条件。请参考图3,图3为本发明中匹配树的示意图。对查询“三寸天堂2011”而言,初始状态是1,由于“三寸天堂”符合状态转移条件“[歌曲名称]”,所以从状态1转移到状态3,又因为“2011”符合状态转移条件“[F:time]”(表示能被时间识别函数识别),所以又从状态3转移到状态9(即叶子节点,表示匹配成功)。构成状态转移路线的状态转移条件组合就形成了与查询相匹配的模板。由于与查询相匹配的模板所对应的需求类型是已知的,在匹配过程结束后,就可以确定用户查询具有与相匹配的模板一致的需求。应该理解,以上所举例子中采用查询树算法进行举例,并不是为了对本发明的匹配过程进行限定,实际上,任何已知的匹配算法在此都可以采用,例如采用正则表达式的方式进行匹配,由于匹配算法属于本领域技术人员可以获知的技术,本发明在此不再做详细介绍。请参考图4。图4为本发明中生成需求模板的装置与需求识别的装置的的实施例的结构示意框图,其中,线下部分为生成需求模板的装置的示意图,线上部分为需求识别装置的示意图。如图4所示,生成需求模板的装置包括:种子获取单元301、泛化单元302及选取单元303。其中种子获取单元301,用于获取需求类型的种子查询。泛化单元302,用于将相应需求类型的种子查询泛化为相应需求类型的候选模板。选取单元303,用于从相应需求类型的候选模板中选取相应需求类型的最终模板。请参考图5,图5为本发明中种子获取单元的一个实施例的结构示意框图。如图5所示,种子获取单元301包括:第一选取单元3011、聚类单元3012及确定单元3013。其中第一选取单元3011用于获取预设的相应需求类型的初始种子查询。聚类单元3012用于对搜索日志中记录的所有查询按照层次聚类的方法进行聚类。确定单元3013用于确定一个聚类层次,使得在该层次下不少于预定比例的初始种子查询被聚到同一个类X中且在该层次下类X包含的查询总数最小,将该层次下的类X包含的所有查询作为相应需求类型的种子查询。请参考图6,图6为本发明中种子获取单元的又一个实施例的结构示意框图。如图6所示,种子获取单元301包括:第二选取单元301a和学习单元301b。其中第二选取单元301a用于获取预设的相应需求类型的初始种子查询。学习单元301b用于使用迭代学习器从搜索日志中学习与所述初始种子查询之间的相似度满足预设要求的查询,并将学习到的查询与所述初始种子查询一并作为相应需求类型的种子查询。除了图5与图6所示的方式,种子获取单元301还可以从搜索日志中导致相应需求类型的页面被点击的查询中选取查询次数最高的N1个查询作为相应需求类型的种子查询,或者,从反映相应需求类型的垂直搜索的搜索日志中提取相应需求类型的种子查询。请继续参考图4。泛化单元302将相应需求类型的种子查询泛化为相应需求类型的候选模板时,具体有:方式一:将相应需求的种子查询中与相应需求类型所对应的预设实体词匹配的部分替换成该预设实体词所属类别的通配符,或者方式二:将相应需求类型的种子查询中被类别识别函数识别出来的部分替换成类别识别函数所对应类别的通配符,其中所述类别识别函数是根据一个类别的属性定义的用于识别该类别的函数。泛化单元302将相应需求类型的种子查询泛化为相应需求类型的候选模板时,在以上两种方式的基础上还进一步包括将相应需求类型的种子查询中对相应需求类型的贡献度低于预设贡献度要求的词语替换为用于限制词语长度的长度通配符。选取单元303在从相应需求类型的候选模板中选取相应需求类型的最终模板时,依据相应需求类型的候选模板的以下特征中的至少一个进行:一、点击特征,用于表征相应需求类型的候选模板覆盖的查询能够引起相应需求类型的页面被点击的概率。二、相似度特征,用于表征相应需求类型的一个候选模板在相应需求类型的所有候选模板中的共性程度。三、匹配能力特征,用于表征相应需求类型的候选模板匹配相应需求类型的查询的能力。具体地,选取单元303采用下列方式计算相应需求类型的候选模板W的点击特征:其中Click(W)表示W的点击特征,表示W在搜索日志中覆盖的所有查询引起相应需求类型页面被点击的次数,表示W在搜索日志中覆盖的所有查询引起所有页面被点击的次数。具体地,选取单元303采用下列方式计算相应需求类型的候选模板W的相似度特征:其中,Similarity(W)表示W的相似度特征,表示W与相应需求类型的所有其他候选模板之间的相似度之和。具体地,选取单元303采用下列方式计算相应需求类型的候选模板W的匹配能力特征:其中,Match(W)表示W的匹配能力特征,表示W在相应需求类型的查询构成的搜索日志中匹配到的查询的数量,表示W在各种需求类型的查询构成的搜索日志中匹配到的查询的数量。如图4所示,线上部分的需求识别装置包括:查询获取单元401及匹配单元402。其中查询获取单元401用于获取用户查询,匹配单元402用于在前文所述生成需求模板的装置得到的最终模板中确定与用户查询相匹配的最终模板,并将与用户查询相匹配的最终模板所对应的需求类型作为用户查询具有的需求。匹配单元402可采用任意已知的匹配算法确定与用户查询相匹配的最终模板,本发明对此不做限制。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1