本发明涉及互联网技术领域,尤其涉及一种基于语音交互的搜索方法和装置。
背景技术:
随着互联网技术的不断发展,键盘的输入成本也随之不断提升。语音搜索,基于强大的语音识别能力,支持通过语音命令快速发起搜索,让搜索更快捷、更直接、更智能。相关技术中,传统的语音搜索以接收指令、反馈指令模式,在每次搜索时,该次搜索与上一次搜索和下一次搜索均独立,即,在同一检索序列中,搜索间均无关联。
这种方式下,若用户在对当前的检索词进行相关的追问或者补充搜索时,需重述需求主体并给出完整的检索需求表达,不能够结合语音搜索的上下文信息进行搜索,在语音搜索表达式简化的情况下搜索精准度不高。
技术实现要素:
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种基于语音交互的搜索方法,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
本发明的另一个目的在于提出一种基于语音交互的搜索装置。
本发明的又一个目的在于提出一种基于语音交互的搜索装置。
本发明的另一个目的在于提出一种非临时性计算机可读存储介质。
本发明的另一个目的在于提出一种计算机程序产品。
为达到上述目的,本发明第一方面实施例提出的基于语音交互的搜索方法,包括:根据用户提供的用于搜索的语音数据获取第一检索词,并获取为所述第一检索词的上文信息的多个第二检索词;根据所述第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从所述多种分词组合中选择目标分词组合并作为第三检索词;根据所述第三检索词进行搜索。
本发明第一方面实施例提出的基于语音交互的搜索方法,通过根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词;根据第三检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
为达到上述目的,本发明第二方面实施例提出的基于语音交互的搜索装置,包括:第一获取模块,用于根据用户提供的用于搜索的语音数据获取第一检索词;第二获取模块,用于获取为所述第一检索词的上文信息的多个第二检索词;生成模块,用于根据所述第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;选择模块,用于根据每种分词组合的相关性评分,从所述多种分词组合中选择目标分词组合并作为第三检索词;搜索模块,用于根据所述第三检索词进行搜索。
本发明第二方面实施例提出的基于语音交互的搜索装置,通过根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词;根据第三检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
为达到上述目的,本发明第三方面实施例提出的基于语音交互的搜索装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
根据用户提供的用于搜索的语音数据获取第一检索词,并获取为所述第一检索词的上文信息的多个第二检索词;
根据所述第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;
根据每种分词组合的相关性评分,从所述多种分词组合中选择目标分词组合并作为第三检索词;
根据所述第三检索词进行搜索。
本发明第三方面实施例提出的基于语音交互的搜索装置,通过根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词;根据第三检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
为达到上述目的,本发明第四方面实施例提出的非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器被执行时,使得移动终端能够执行一种基于语音交互的搜索方法,所述方法包括:
根据用户提供的用于搜索的语音数据获取第一检索词,并获取为所述第一检索词的上文信息的多个第二检索词;
根据所述第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;
根据每种分词组合的相关性评分,从所述多种分词组合中选择目标分词组合并作为第三检索词;
根据所述第三检索词进行搜索。
本发明第四方面实施例提出的非临时性计算机可读存储介质,通过根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词;根据第三检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
为达到上述目的,本发明第五方面实施例提出的计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行一种基于语音交互的搜索方法,所述方法包括:
根据用户提供的用于搜索的语音数据获取第一检索词,并获取为所述第一检索词的上文信息的多个第二检索词;
根据所述第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;
根据每种分词组合的相关性评分,从所述多种分词组合中选择目标分词组合并作为第三检索词;
根据所述第三检索词进行搜索。
本发明第五方面实施例提出的计算机程序产品,通过根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词;根据第三检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明一实施例提出的基于语音交互的搜索方法的流程示意图;
图2是本发明另一实施例提出的基于语音交互的搜索方法的流程示意图;
图3是本发明另一实施例提出的基于语音交互的搜索方法的流程示意图;
图4是本发明实施例中语音搜索界面示意图;
图5是本发明一实施例提出的基于语音交互的搜索装置的结构示意图;
图6是本发明另一实施例提出的基于语音交互的搜索装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本发明一实施例提出的基于语音交互的搜索方法的流程示意图。该基于语音交互的搜索方法被配置为基于语音交互的搜索装置中来举例说明。该基于语音交互的搜索方法可以应用在电子设备的搜索引擎中,搜索引擎是指能够接收用户输入的搜索信息,并从互联网上搜集与搜索信息相关信息,在对信息进行组织和处理后,为用户提供检索服务,将与搜索信息相关信息展示给用户的系统。
其中,电子设备例如为个人电脑(Personal Computer,PC),云端设备或者移动设备,移动设备例如智能手机,或者平板电脑等。
参见图1,该基于语音交互的搜索方法包括:
S11:根据用户提供的用于搜索的语音数据获取第一检索词,并获取为第一检索词的上文信息的多个第二检索词。
传统的语音搜索以接收指令、反馈指令模式,在每次搜索时,该次搜索与上一次搜索和下一次搜索均独立,即,在同一检索序列中,搜索间均无关联,若用户在对当前的检索词进行相关的追问或者补充搜索时,需重述需求主体并给出完整的检索需求表达,不能够结合语音搜索的上下文信息进行搜索,在语音搜索表达式简化的情况下搜索精准度不高。
而本发明的实施例中,通过搜索上文和当前搜索的深层需求理解,若历史搜索词中包含第一检索词的第一分词结果和第二检索词的第二分词结果的初始分词组合时,则根据初始分词组合进行搜索,能够有效提升搜索效率;若历史搜索词中无初始分词组合,则根据第一检索词的类型信息将第一分词和第二分词进行组合处理,得到多种分词组合,根据相关算法计算上述每种分词组合的相关性评分,将评分值最大的分词组合作为最终的检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
在本发明的实施例中,可以接收用户提供的用于搜索的语音数据,获取与语音数据对应的第一文本,并将对应的第一文本作为第一检索词。
可选地,用户可以点击搜索引擎搜索框中的麦克风按钮,输入语音数据,搜索引擎中的语音采集模块采集到该语音数据,获取与语音数据对应的第一文本,并将对应的第一文本作为第一检索词。
可以理解的是,用户可以对当前搜索结果进行相关地追问搜索或者补充搜索,当前第一检索词的上文信息可以为多个。
例如,用户在搜索引擎中输入的语音数据为“美国”,搜索结果展示页面提供美国相关信息,当用户想查询美国的人口数据时,输入语音数据“人口多少”,结合上文信息,可知,第一检索词为“人口多少”,第二检索词为“美国”,或者,用户可以继续追问“首都是哪里”,结合上文信息可知,第一检索词为“首都是哪里”,第二检索词为:“美国”和“人口多少”。
S12:根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合。
在本发明的实施例中,可以采用相关技术对第一检索词和第二检索词进行切词处理,获得第一检索词和第二检索词的词法信息,即,得到第一分词结果和第二分词结果。
需要说明的是,对于历史未出现过的第一检索词,根据上下文特征,通过切词处理,可以过滤掉首位相同的分词,且可以过滤掉拼音相同的模糊音。
在本发明的实施例中,可以判断历史搜索词中是否存在包含第一分词结果和第二分词结果的初始分词组合;若存在包含第一分词结果和第二分词结果的初始分词组合,则将初始分词组合作为生成的分词组合;若不存在包含第一分词结果和第二分词结果的初始分词组合,则提取第一分词结果中每个第一分词的第一特征信息,并提取第二分词结果中每个第二分词的第二特征信息;根据第一特征信息和第二特征信息,确定第一检索词的类型信息;根据第一检索词的类型信息将第一分词和第二分词进行组合处理,得到多种分词组合。
一些实施例中,参见图2,步骤S12具体包括:
S21:判断历史搜索词中是否存在包含第一分词结果和第二分词结果的初始分词组合,若是,执行S22,否则,执行S23。
可选地,判断历史搜索词中是否存在包含第一分词结果和第二分词结果的初始分词组合,在历史搜索词中存在包含第一分词结果和第二分词结果的初始分词组合时,直接将初始分词组合作为生成的分词组合,根据生成的分词组合进行搜索,能够有效提升搜索效率;在历史搜索词中不存在包含第一分词结果和第二分词结果的初始分词组合时,执行S23。
S22:将初始分词组合作为生成的分词组合。
可选地,在历史搜索词中存在包含第一分词结果和第二分词结果的初始分词组合时,直接将初始分词组合作为生成的分词组合,根据生成的分词组合进行搜索,能够有效提升搜索效率。
S23:提取第一分词结果中每个第一分词的第一特征信息,并提取第二分词结果中每个第二分词的第二特征信息。
在本发明的实施例中,第一特征信息/第二特征信息包括以下至少之一:第一分词/第二分词的实体类型、权重、用户历史搜索频次、用户历史搜索后的点击频次、泛口语化的惩罚权重,以及编辑距离。
其中,第一分词/第二分词的实体类型为第一分词/第二分词的实体信息,例如人名、地名等。
第一分词/第二分词的权重的权值大小描述其在第一检索词/第二检索词中的重要性。
用户历史搜索频次用于确定后续步骤中的每种分词组合的相关性评分。
泛口语化的惩罚权重表示对第一分词/第二分词进行口语化泛化的归一处理。由于语音数据中存在大量口语化表述,例如“我想搜……”“查一下……是啥意思”,因此需要进行口语化泛化的归一处理。具体地,根据人工构建的口语化词表对第一分词/第二分词进行口语化泛化的归一处理,口语化词表中每个分词对应一个惩罚权重,惩罚权重越大,表明分词的口语话程度越高。
编辑距离为一种常见的相似度计算方法。
可选地,可以提取第一分词结果中每个第一分词的第一特征信息,并提取第二分词结果中每个第二分词的第二特征信息,以根据第一特征信息和第二特征信息确定第一检索词的类型信息。
S24:根据第一特征信息和第二特征信息,确定第一检索词的类型信息。
其中,类型信息包括:第一检索词为第二检索词的补充搜索的第一类型信息、第一检索词为第二检索词的追问搜索的第二类型信息。
在本发明的实施例中,第一类型信息为:主体语义不变,需求强相关,例如,“天天酷跑下载”,“天天酷跑”为主体词,“下载”为需求词;第二类型信息为:主体语义变化,需求语义不变。
可选地,可以借助实体属性知识库识别第一检索词和第二检索词的实体属性成分。需要说明的是,自然语言中同种意思可以用不同的表述方式,实体属性描述中亦是如此,即同一个属性需求有不同的表述方式,例如,“人口有多少”、“有多少人口”、“人口是多少”都是“人口”属性需求的不同表述,因此需要通过主干抽取技术从不同的表述方式中抽取相同的需求主干。
具体地,通过判断当前第一检索词的实体属性信息和上文信息的多个第二检索词的实体属性的相关性,即根据第一特征信息和第二特征信息,进而判断第一检索词是属性变更还是实体变更。
例如,当第一检索词为:“那体重呢?”,第二检索词为:“刘德华的身高”时,通过实体属性匹配,获得实体为“刘德华”,而“身高”“体重”均为“刘德华”的属性,因此,可知第一检索词的类型信息为:属性变更,主体语义不变,即第一类型信息。
或者,当第一检索词为:“那姚明呢?”,第二检索词为:“刘德华的身高”时,通过实体属性匹配,获得实体为“刘德华”“姚明”,而他们共同的属性为“身高”,因此,可知第一检索词的类型信息为:主体语义变化,需求语义不变,即第二类型信息。
S25:根据第一检索词的类型信息将第一分词和第二分词进行组合处理,得到多种分词组合。
作为一种示例,当第一检索词为第二检索词的追问搜索的第二类型信息时,例如,当第一检索词为:“那法国的呢?”,第二检索词为:“美国的首都是哪里”时,得到的多种分词组合可以如表1所示。
表1
本实施例中,通过在历史搜索词中存在包含第一分词结果和第二分词结果的初始分词组合时,将初始分词组合作为生成的分词组合,能够有效提升搜索效率,通过在历史搜索词中不存在包含第一分词结果和第二分词结果的初始分词组合时,根据第一特征信息和第二特征信息,确定第一检索词的类型信息,根据第一检索词的类型信息将第一分词和第二分词进行组合处理,得到多种分词组合,以便于后续对相关性评分最大的分词组合进行搜索,能够使用户自如地表达检索需求,使得语音搜索交互体验更具智能化,提升搜索精准度,提升用户搜索体验度。
一些实施例中,在步骤S12后,还包括:
S31:确定多种分词组合中,每种分词组合在用户搜索历史中的出现频次,以及与分词组合对应的第一分词的第一用户历史搜索频次和对应的第二分词的第二用户历史搜索频次。
可选地,可以假设分词组合在用户搜索历史中的出现频次为Nxyi,与分词组合对应的第一分词的第一用户历史搜索频次为Nxi,与分词组合对应的第二分词的第二用户历史搜索频次为Nyi,其中,i=1,2,…,M,M为分词组合的个数,用户历史总的搜索频次为N。
S32:根据出现频次、第一用户历史搜索频次,以及第二用户历史搜索频次确定相关性评分。
在本发明的实施例中,可以根据出现频次Nxyi、第一用户历史搜索频次Nxi、第二用户历史搜索频次Nyi,以及预设公式确定相关性评分Corr(i),其中,预设公式为:
Corr(i)=Math.log10(N/Nxi)*Math.log10(N/Nyi)*Nxyi/(Nxi+Nyi-Nxyi);
通过根据出现频次、第一用户历史搜索频次,以及第二用户历史搜索频次确定相关性评分,以便于后续对相关性评分最大的分词组合进行搜索,能够使用户自如地表达检索需求,使得语音搜索交互体验更具智能化,提升搜索精准度,提升用户搜索体验度。
S13:根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词。
在本发明的实施例中,可以从多种分词组合中选择相关性评分最高的分词组合作为目标分词组合,并将目标分词组合作为第三检索词。
例如,当第一检索词为第二检索词的追问搜索的第二类型信息,且第一检索词为:“那法国的呢?”,第二检索词为:“美国的首都是哪里”时,根据预设公式得到表1中每种分词组合的相关性评分如表2所示(第一检索词为第二检索词的补充搜索的第一类型信息的处理过程类似,此处不再赘述)。
表2
可以从多种分词组合中选择相关性评分最高的分词组合:法国的首都是哪里,作为目标分词组合,并将目标分词组合作为第三检索词,以根据第三检索词进行搜索。
S14:根据第三检索词进行搜索。
作为一种示例,参见图4,图4为本发明实施例中语音搜索界面示意图,当用户输入的语音数据为“美国”(第二检索词)时,搜索结果展示页面提供美国相关信息,当用户想查询美国的人口数据时,只需直接输入语音数据“人口多少”(第一检索词),结合上文信息,本实施例能够自动识别第一检索词为第二检索词的补充搜索的第一类型信息,得到第三检索词为“美国人口多少”,并触发搜索结果,满足用户需求。
同理,用户可以继续追问“首都是哪里”(第一检索词),结合上文信息可知,第二检索词为:“美国”和“人口多少”,本实施例能够自动识别第一检索词为第二检索词的补充搜索的第一类型信息,得到第三检索词为“美国首都是哪里”,展示搜索结果。
进一步地,为了满足用户的口语化语音表述,用户还可以自然地追问“那法国的呢”,结合上文信息,本实施例能够自动识别出第一检索词为第二检索词的追问搜索的第二类型信息,得到第三检索词为“法国的首都是哪里”,展示搜索结果。
本实施例中,通过根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词;根据第三检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
图5是本发明一实施例提出的基于语音交互的搜索装置的结构示意图。该基于语音交互的搜索装置500可以通过软件、硬件或者两者的结合来实现。
参见图5,该基于语音交互的搜索装置500可以包括:第一获取模块510、第二获取模块520、生成模块530、选择模块540,以及搜索模块550。其中,
第一获取模块510,用于根据用户提供的用于搜索的语音数据获取第一检索词。
可选地,第一获取模块510具体用于:接收用户提供的用于搜索的语音数据,获取与语音数据对应的第一文本,并将对应的第一文本作为第一检索词。
第二获取模块520,用于获取为第一检索词的上文信息的多个第二检索词。
生成模块530,用于根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合。
选择模块540,用于根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词。
可选地,选择模块540具体用于:从多种分词组合中选择相关性评分最高的分词组合作为目标分词组合,并将目标分词组合作为第三检索词。
搜索模块550,用于根据第三检索词进行搜索。
一些实施例中,参见图6,该基于语音交互的搜索装置500还可以包括:
可选地,生成模块530包括:
判断子模块531,用于判断历史搜索词中是否存在包含第一分词结果和第二分词结果的初始分词组合。
第一处理子模块532,用于在存在包含第一分词结果和第二分词结果的初始分词组合时,将初始分词组合作为生成的分词组合。
提取子模块533,用于在不存在包含第一分词结果和第二分词结果的初始分词组合时,提取第一分词结果中每个第一分词的第一特征信息,并提取第二分词结果中每个第二分词的第二特征信息。
可选地,第一特征信息/第二特征信息包括以下至少之一:
第一分词/第二分词的实体类型、权重、用户历史搜索频次、用户历史搜索后的点击频次、泛口语化的惩罚权重,以及编辑距离。
确定子模块534,用于根据第一特征信息和第二特征信息,确定第一检索词的类型信息,其中,类型信息包括:第一检索词为第二检索词的补充搜索的第一类型信息、第一检索词为第二检索词的追问搜索的第二类型信息。
第二处理子模块535,用于根据第一检索词的类型信息将第一分词和第二分词进行组合处理,得到多种分词组合。
第一确定模块560,用于确定多种分词组合中,每种分词组合在用户搜索历史中的出现频次,以及与分词组合对应的第一分词的第一用户历史搜索频次和对应的第二分词的第二用户历史搜索频次。
第二确定模块570,用于根据出现频次、第一用户历史搜索频次,以及第二用户历史搜索频次确定相关性评分。
需要说明的是,前述图1-图4实施例中对基于语音交互的搜索方法实施例的解释说明也适用于该实施例的基于语音交互的搜索装置500,其实现原理类似,此处不再赘述。
本实施例中,通过根据第一检索词的第一分词结果和每个第二检索词的第二分词结果生成多种分词组合;根据每种分词组合的相关性评分,从多种分词组合中选择目标分词组合并作为第三检索词;根据第三检索词进行搜索,能够结合语音搜索的上下文信息进行搜索,提升搜索精准度,提升用户搜索体验度。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。