一种查询串的同义变换方法及设备的制造方法
【技术领域】
[0001] 本发明涉及搜索技术领域,特别涉及一种查询串的同义变换方法及设备。
【背景技术】
[0002] 目前,地址搜索已经是人们生活中经常使用的一种搜索方式,例如,搜索酒店、饭 店以及购物中心等。这样人们在出行前或出行中可以实现对目的地的路线规划。
[0003] 但是,不同用户针对同一事物的称呼有所区别,例如,用户输入的查询串为"方恒 国际大厦",而在搜索引擎对应的数据库中只有名称为"方恒国际中心"的兴趣点数据,由此 可见,虽然用户输入的查询串为"方恒国际大厦",但其实际期望查询的是"方恒国际中心",
[0004] 因此,搜索引擎有必要对用户输入的查询串进行同义变换,将用户输入的查询串 变换为数据库中可能存在的查询串,同时利用用户输入的查询串和同义变换得到的查询串 进行搜索,以便快速准确地得到用户期望的搜索结果。
[0005] 目前搜索引擎对查询串进行同义变换的方法是基于词典,参见图1,具体方法包括 以下步骤:
[0006] S101 :对用户输入的查询串进行分词处理,得到所述查询串的分词片段;例如,"方 恒国际中心"的分词片段为"方/恒/国际/中心/"。
[0007] S102 :基于同义词词典,查找分词片段的同义词;
[0008] S103:如果查找到分词片段的同义词,则用该分词片段的同义词替换查询串中对 应分词片段,否则,进入步骤104 ;
[0009] S104:判断分词片段是否为最后一个分词片段,如果是,则将同义词替换得到的查 询串作为结果输出,否则返回步骤102。
[0010] 需要说明的是,分词片段从左至右依次为第一个到最后一个,例如"方"为第一个 分词片段,"中心"为最后一个分词片段。
[0011] 现有技术中的查询串同义变换方法仅是用每个分词片段的同义词替换原查询串 中的分词片段,例如,查询串为"方恒国际大厦",同义词表中有"大厦=中心"、"大厦=大 楼",查询串被同义变换为"方恒国际大楼、方恒国际中心"。
[0012] 现有技术仅用分词片段的同义词替换的方式对查询串进行同义变换,容易导致同 义变换得到的查询串不符合语言习惯和语法要求,容易造成语义偏移。
【发明内容】
[0013] 本发明要解决的技术问题是提供一种查询串的同义变换方法及设备,能够在查询 串同义变换时减少语义偏移,使同义变换后的查询串更加准确。
[0014] 本发明实施例提供一种查询串的同义变换方法,包括:
[0015] 将查询串进行分词处理,得到分词片段;
[0016] 以分词片段为单元利用正向最大匹配算法在预置的词库中对所述查询串进行同 义词查询;
[0017] 用查询到的同义词替换查询串中对应的分词片段得到多个同义串;
[0018] 对每个所述同义串进行需求满意度统计,获得每个同义串的需求满意度值;
[0019] 对同义串按照需求满意度值由大到小的顺序进行排序;
[0020] 将排序在前的η个同义串作为同义变换后的查询串,所述η为预置的需要反馈的 同义串个数,η为整数。
[0021 ] 优选地,若排在第η位的同义串Α之后的同义串与Α的需求满意度值相同,所述方 法还包括:
[0022] 对A以及与A的需求满意度值相同的所有同义串进行语言模型概率计算,将语言 模型概率最大的同义串作为第η个同义串进行反馈;
[0023] 所述语言模型概率为:同义串的两两相邻的分词片段之间的转移概率之和。
[0024] 优选地,若排在第η位的同义串Α之前的同义串和之后的同义串与Α的需求满意 度相同,所述方法还包括:
[0025] 对A以及与A的需求满意度相同的所有同义串进行语言模型概率计算,对同义串 按照计算出来的语言模型概率由大到小的顺序进行排序;选出所述语言模型概率排序在前 的(n-m)个同义串进行反馈,所述m小于n,所述m为排在A之前且需求满意度值与A不同 的同义串的总数;
[0026] 所述语言模型概率为:同义串的两两相邻的分词片段之间的转移概率之和。
[0027] 优选地,所述对每个所述同义串进行需求满意度统计,具体为:
[0028] 从预设的历史查询结果中,获取每个同义串对应的需求参数;
[0029] 根据每个所述同义串的需求参数,进行需求满意度的线性计算。
[0030] 优选地,
[0031] 在预设的历史查询结果中,获取每个同义串对应的需求参数具体包括:
[0032] 在预设的历史查询结果中,获取每个同义串对应的第一需求参数a和第二需求参 数b ;
[0033] 根据每个所述同义串的需求参数,进行需求满意度的线性计算,具体为:
[0034] 将每个同义串对应的第一需求参数a和第二需求参数b代入公式
[0035] y = k^+^b ;
[0036] ki+k;, = 1 ;
[0037] 其中,y为所述需求满意度值,所述h为所述第一需求参数的加权系数,所述k2为 所述第二需求参数的加权系数;所述第一需求参数为每个同义串的点击数得分;所述第二 需求参数为每个同义串的查询频次得分;所述点击数得分和所述查询频次得分均为预先获 得的。
[0038] 优选地,所述方法进一步包括:
[0039] 对搜索引擎积累的用户历史搜索的查询串对应的点击次数依据该点击次数分布 进行归一化处理,将每个查询串的点击次数映射到〇~1的值域空间内,得到所述点击数得 分;
[0040] 对搜索引擎积累的用户历史搜索的查询串对应的查询频次依据该查询频次分布 进行归一化处理,将每个查询串的查询频次映射到0~1的值域空间内,得到所述查询频次 得分。
[0041] 本发明实施例还提供一种查询串的同义变换设备,包括:分词模块、同义串生成模 块、需求满意度统计模块、第一排序模块和反馈模块;
[0042] 所述分词模块,用于将查询串进行分词处理,得到分词片段;
[0043] 所述同义串生成模块,用于以分词片段为单元利用正向最大匹配算法在预置的词 库中对所述查询串进行同义词查询,用查询到的同义词替换查询串中对应的分词片段得到 多个同义串;
[0044] 所述需求满意度统计模块,用于对每个所述同义串进行需求满意度统计,获得每 个同义串的需求满意度值;
[0045] 所述第一排序模块,用于对所述同义串按照需求满意度值由大到小的顺序进行排 序;
[0046] 所述反馈模块,用于将排序在前的η个同义串作为同义变换后的查询串,所述η为 预置的需要反馈的同义串个数,η为整数。
[0047] 优选地,若排在第η位的同义串Α之后的同义串与Α的需求满意度值相同,还包 括:第一语言模型概率计算模块和第一选择模块;
[0048] 所述第一语言模型概率计算模块,用于对A以及与A的需求满意度值相同的所有 同义串进行语言模型概率计算;
[0049] 所述第一选择模块,用于将语言模型概率最大的同义串作为第η个同义串发送给 所述反馈模块;
[0050] 所述语言模型概率为:同义串的两两相邻的分词片段之间的转移概率之和。
[0051] 优选地,若排在第η位的同义串Α之前的同义串和之后的同义串与Α的需求满意 度相同,还包括:第二语言模型概率计算模块、第二排序模块和第二选择模块;
[0052] 所述第二语言模型概率计算模块,用于对A以及与A的需求满意度相同的所有同 义串进行语言模型概率计算;
[0053] 所述第二排序模块,用于对同义串按照计算出来的语言模型概率由大到小的顺序 进打排序;
[0054] 所述第二选择模块,用于选出所述语言模型概率排序在前的(n-m)个同义串进行 反馈,所述m小于n,所述m为排在A之前且需求满意度值与A不同的同义串的总数;
[0055] 所述语言模型概率为:同义串的两两相邻的分词片段之间的转移概率之和。
[0056] 优选地,所述需求满意度统计模块包括线性计算子模块,用于从预设的历史查询 结果中,获取每个同义串对应的需求参数;根据每个所述同义串的需求参数,进行需求满意 度的线性计算。
[0057] 优选地,
[0058] 当所述需求参数为两个时,所述线性计算子模块根据预设的需求参数对每个所述 同义串进行线性计算获得需求满意度值,具体为:
[0059] y = k^+^b ;
[0060] k!+k2 = 1 ;
[0061] 其中,y为所述需求满意度值,a为预设的第一需求参数,所述b为预设的第二需 求参数,所述4为所述第一需求参数的加权系数,所述k 2为所述第二需求参数的加权系数; 所述第一需求参数为每个同义串的点击数得分;所述第二需求参数为每个同义串的查询频 次得分;所述点击数得分和所述查询频次得分均为预先获得的。
[0062] 优选地,所述需求满意度统计模块还包括:点击数得分子模块和查询频次得分子 模块;
[0063] 所述点击数得分子模块,用于对搜索引擎积累的用户历史搜索的查询串对应的点 击次数依据该点击次数分布进行归一化处理,将每个查询串的点击次数映射到〇~1的值 域空间内,得到所述点击数得分;
[0064] 所述查询频次得分子模块,用于对搜索引擎积累的用户历史搜索的查询串对应的 查询频次依据该查询频次分布进行归一化处理,将每个查询串的查询频次映射到0~1的 值域空间内,得到所述查询频次得分。
[0065] 与现有技术相比,本发明具有以下优点:
[0066] 本实施例提供的搜索引擎中查询串的同义变换方法,利用正向最大匹配算法对分 词片段进行同义词查询,由于正向最大匹配算法是优先匹配最长的同义词,如果有最长的 就停止匹配,如果没有,就选择次长的同义词,这样不会使更长的同义串漏掉,