一种搜索方法、装置及服务器与流程

文档序号:11458601阅读:141来源:国知局
一种搜索方法、装置及服务器与流程

本发明涉及数据处理技术领域,具体涉及一种搜索方法、装置及服务器。



背景技术:

当用户在利用搜索引擎进行内容搜索的时候,经常情况下用户仅仅知道想要搜索内容的近似发音,而并不能确定实际想要搜索的内容是什么,从而导致用户输入的文本内容与用户想要搜索的实际内容之间存在误差,用户仅仅能够在搜索引擎中输入与用户想要搜索的实际内容近似发音的文本内容。

而现有技术在搜索与用户输入的文本内容匹配的搜索结果的时候,是按照用户输入的文字在数据库中进行匹配查找,然而,用户输入的文字往往是与用户想要搜索的实际内容近似发音的文字,而并不是用户想要搜索的实际文字,现有基于文字在数据库中匹配搜索的方式,有可能在匹配的搜索结果中找不到用户实际想要的内容;比如当用户想要搜索歌词的时候,在搜索引擎中输入一句听到并理解的模糊歌词如:“风到这里就思念”,其实真实歌词是“风到这里就是粘”,这样,用户通过搜索引擎搜索到的歌词是与“风到这里就思念”相关的搜索结果,而不是与“风到这里就是粘”相关的搜索结果,用户在搜索到的与“风到这里就思念”相关的搜索结果中有可能找不到用户实际想要的内容。

因此,在用户输入的文字为与用户想要搜索的实际内容近似发音的文字的情况下,如何提高搜索结果命中率,成为目前亟待解决的问题。



技术实现要素:

有鉴于此,本发明实施例提供一种搜索方法、装置及服务器,用于提高搜索结果的命中率。

为实现上述目的,本发明实施例提供如下技术方案:

一种搜索方法,所述方法包括:

接收输入文本,所述输入文本包括至少一个文字;

提取所述输入文本的各文字的音素;

调取预存储的至少一个候选文本;

按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,得到各候选文本中所匹配的文字的关联度;

根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;

将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

一种搜索装置,所述装置包括:

文本接收单元,用于接收输入文本,所述输入文本包括至少一个文字;

音素提取单元,用于提取所述输入文本的各文字的音素;

候选文本调取单元,用于调取预存储的至少一个候选文本;

音素匹配单元,用于按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,得到各候选文本中所匹配的文字的关联度;

总关联度确定单元,用于根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;

搜索结果获取单元,用于将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

一种服务器,所述服务器包括:如上所述的搜索装置。

基于上述技术方案,本发明实施例公开了一种搜索方法、装置及服务器,通过提取用户输入文本的各文字的音素;调取预存储的至少一个候选文本;按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,得到各候选文本中所匹配的文字的关联度;根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。本发明实施例中的技术方案是以输入文本的各文字的音素为匹配对象,而各文字的音素中包含了各文字的发音特性,在某些情况下,由于用户输入的文字为与用户想要搜索的实际内容近似发音的文字,本发明实施例能够依据输入文本的各文字的发音特性获取搜索结果,与现有技术中匹配文字字形获取搜索结果的搜索方式相比,能够使得搜索结果与用户想要搜索的实际内容的匹配度更高,从而提高搜索结果的命中率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种搜索方法的流程图;

图2为本发明实施例提供的另一种搜索方法的流程图;

图3为本发明实施例提供的一种音素相似度表结构图;

图4为本发明实施例提供的一种预先建立音素关联度表方法的流程图;

图5为本发明实施例提供的又一种搜索方法的流程图;

图6为本发明实施例提供的一种候选文本树结构图;

图7为本发明实施例提供的一种搜索装置的结构框图;

图8为本发明实施例提供的一种音素匹配子单元的结构框图;

图9为本发明实施例提供的一种关联度确定单元的结构框图;

图10为本发明实施例提供的一种音素关联度表建立单元的结构框图;

图11为本发明实施例提供的一种候选文本调取单元的结构框图;

图12为本发明实施例提供的一种音素匹配单元的结构框图;

图13为本发明实施例提供的一种服务器结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本方案的发明人发现,当用户在利用搜索引擎进行内容搜索的时候,经常情况下用户仅仅知道想要搜索内容的近似发音,而并不能确定实际想要搜索的内容是什么,从而导致用户输入的文本内容与用户想要搜索的实际内容之间存在误差,用户仅仅能够在搜索引擎中输入与用户想要搜索的实际内容近似发音的文本内容。比如说,在某些情况下,用户从户外或者电视中听到一些自己喜欢听的未知歌曲,但是由于用户当时的注意力可能都被音乐旋律所吸引,用户常常仅仅能够记住比较模糊的歌词,并且往往记住的歌词还无法确定发音。当用户想要文本搜索该歌曲的时候,就只能提供近似发音的文字(例如:用户在搜索引擎中输入一句听到并理解的模糊歌词如:“风到这里就思念”,而其实真实歌词是“风到这里就是粘”),在这种情况下,用户通过搜索引擎搜索到的歌词是与“风到这里就思念”相关的搜索结果,而不是与“风到这里就是粘”相关的搜索结果;因此,现有技术中采用对输入的歌词进行文本匹配的方式得到的搜索结果中有可能找不到用户实际想要搜索的歌词内容,搜索结果的命中率较低。

基于此,在用户输入的文字为与用户想要搜索的实际内容近似发音的文字的情况下,如何提高搜索结果命中率,成为目前亟待解决的问题。

本发明实施例中公开的技术方案为了解决上述问题,提出了一种搜索方法,通过提取用户输入文本的各文字的音素;调取预存储的至少一个候选文本;按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,得到各候选文本中所匹配的文字的关联度;根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

由此可知,本发明实施例中的技术方案是以输入文本的各文字的音素为匹配对象,而各文字的音素中包含了各文字的发音特性,在某些情况下,由于用户输入的文字为与用户想要搜索的实际内容近似发音的文字,本发明实施例能够依据输入文本的各文字的发音特性获取搜索结果,与现有技术中匹配文字字形获取搜索结果的搜索方式相比,能够使得搜索结果与用户想要搜索的实际内容的匹配度更高,从而提高搜索结果的命中率。

图1为本发明实施例提供的一种搜索方法的流程图,该方法可应用于服务器,服务器可以如搜索引擎服务器,具体如歌词的搜索引擎的服务器;参照图1,该方法可以包括:

s101:接收输入文本;

需要说明的是,用户可以通过文本搜索框输入所述输入文本并上传,从而使得服务器接收输入文本,所述输入文本包括至少一个文字;在某些情况下,用户并不确定想要搜索的实际文本内容,只能提供与用户想要搜索的实际文本内容近似发音的文字,因此,在这种情况下,接收的输入文本为与用户想要搜索的实际内容近似发音的文字。

s102:提取所述输入文本的各文字的音素;

需要说明的是,文字的音素是构成音节的最小单位或最小的语音片段,所述音素具体指的是汉语拼音中的每个拼音,如a、o、e、b、p、m等,其中包含23个声母、24个韵母,所有韵母还包括5个音调,分别为1声、2声、3声、4声、轻声,这样就可以收集到23+24*5=143个不同音素的发音。

可选的,提取所述输入文本的各文字的音素具体包括:提取所述输入文本的各文字的声母和韵母。

s103:调取预存储的至少一个候选文本;

需要说明的是,可以从候选文本库中调取预存储的至少一个候选文本,一个候选文本中包括至少一个文字。

s104:按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,得到各候选文本中所匹配的文字的关联度;

需要说明的是,本发明实施例中是按照输入文本的文字顺序,依据预存储的音素关联度表,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,确定各候选文本中所匹配的文字的关联度,其中,所述预存储的音素关联度表中记录有各音素之间的关联度。

可选的,预存储的音素关联度表中记录有音素中每两个声母之间的关联度与每两个韵母之间的关联度。

所述各候选文本中所匹配的文字的关联度指的按照输入文本的文字顺序,将输入文本中的每一个文字与候选文本中相应序位上的每一个文字的音素进行比较,得到的候选文本中的文字与输入文本中的文字的音素所匹配的程度。

s105:根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;

可选的,可以采用将各候选文本所匹配的各文字的关联度相加的方式,得到各候选文本所匹配的所有文字的总关联度;

可选的,可以采用将各候选文本所匹配的各文字的关联度相乘的方式,得到各候选文本所匹配的所有文字的总关联度;

可选的,可以采用将各候选文本所匹配的各文字的关联度分别乘以相应的加权系数,再将各候选文本所匹配的各文字的关联度与加权系数的乘积所得到的各个结果相加的方式得到各候选文本所匹配的所有文字的总关联度。

当然也可以采用其他方式确定各候选文本所匹配的所有文字的总关联度,具体可视实际情况确定。

s106:将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

需要说明的是,在确定各候选文本所匹配的所有文字的总关联度之后,将总关联度符合预定条件的候选文本所匹配的文字按照输入文本的文字与候选文本的文字的匹配顺序,将候选文本所匹配的文字进行组合,得到的候选文本所匹配的文字的组合作为搜索结果。

可选的,总关联度符合预定条件的情况可以是总关联度小于一个预设值,或者是总关联度大于一个预设值,或者是总关联度最大,或者是总关联度最小,具体可视实际情况确定。

本发明实施例中的技术方案是以输入文本的各文字的音素为匹配对象,而各文字的音素中包含了各文字的发音特性,在某些情况下,由于用户输入的文字为与用户想要搜索的实际内容近似发音的文字,而本发明实施例能够依据输入文本的各文字的发音特性获取搜索结果,与现有技术中匹配文字字形获取搜索结果的搜索方式相比,能够使得搜索结果与用户想要搜索的实际内容的匹配度更高,从而提高搜索结果的命中率。

可选的,图2示出了本发明实施例提供的另外一种搜索方法流程图,该方法可以包括:

s201:接收输入文本;

s202:提取所述输入文本的各文字的音素;

s203:调取预存储的至少一个候选文本;

s204:按照输入文本的文字顺序,依据所述音素关联度表,分别将输入文本的各文字的声母依序与各候选文本的文字的声母相匹配,得到各候选文本中所匹配的文字的声母关联度;

s205:按照输入文本的文字顺序,依据所述音素关联度表,分别将输入文本的各文字的韵母依序与各个候选文本的文字的韵母相匹配,得到各候选文本中所匹配的文字的韵母关联度;

需要说明的是,由于所述音素关联度表记录有音素中每两个声母之间的关联度与每两个韵母之间的关联度,本发明实施例分别提取输入文本中各个文字的声母和韵母,以及候选文本中各文字的声母和韵母,按照音素关联度表记录的音素中每两个声母之间的关联度与每两个韵母之间的关联度,分别将输入文本的各文字的声母依序与各候选文本的文字的声母相匹配,将输入文本的各文字的韵母依序与各个候选文本的文字的韵母相匹配,最终得到各候选文本中所匹配的文字的声母关联度以及各候选文本中所匹配的文字的韵母关联度。

s206:结合各候选文本中所匹配的文字的声母关联度,和各候选文本中所匹配的文字的韵母关联度,确定各候选文本中所匹配的文字的关联度;

需要说明的是,本发明实施例中所述文字的关联度可以用各文字的差别度表示,也可以用各文字的相似度表示,各文字的差别度表示各文字音素的差别程度,各文字的相似度表示各文字音素的相似程度,一个文字的音素的差别程度越大,表明这个文字的音素的相似程度越小;反过来说,一个文字的音素的相似程度越大,表明这个文字的音素的差别程度越小,文字的音素的差别程度与文字的音素的相似程度成互补的关系。

接下来,本发明实施例分别从文字的关联度为文字的差别度或者文字的关联度为文字的相似度方面,给出如下三种具体结合各候选文本中所匹配的文字的声母关联度,和各候选文本中所匹配的文字的韵母关联度,确定各候选文本中所匹配的文字的关联度的方式:

方式一:

所述文字的关联度为文字的相似度,所述音素关联度表为音素相似度表,请参照附图3,为本发明实施例公开的一种音素相似度表结构,所述音素相似度表中示出了部分音素的相似度。

所述音素相似度表记录有音素中每两个声母之间的相似度与每两个韵母之间的相似度;所述声母关联度为声母相似度,所述韵母关联度为韵母相似度的情况下,所述结合各候选文本中所匹配的文字的声母关联度,和各候选文本中所匹配的文字的韵母关联度,确定各候选文本中所匹配的文字的关联度包括:

根据公式y=a2*y1+b2*y2确定各候选文本中所匹配的文字的相似度;

其中,y为各候选文本中所匹配的文字的相似度,所述y1为各候选文本中所匹配的文字的声母相似度,所述y2为各候选文本中所匹配的文字的韵母相似度,a2为声母相似系数,b2为韵母相似系数。

可选的,声母差别系数a2可以为0.3,韵母差别系数b2可以为0.7,本发明实施例不做限定。

由于部分文字可能没有声母,如果相匹配的两个文字的声母同时不存在时,y1=1,两个文字的声母有一个不存在时,y2=0。

方式二:

本发明实施例中所述文字的关联度为文字的差别度,所述音素关联度表为音素差别度表,所述音素差别度表记录有音素中每两个声母之间的差别度与每两个韵母之间的差别度;所述声母关联度为声母差别度,所述韵母关联度为韵母差别度的情况下,所述结合各候选文本中所匹配的文字的声母关联度,和各候选文本中所匹配的文字的韵母关联度,确定各候选文本中所匹配的文字的关联度的方法可以包括:

根据公式x=a1*x1+b1*x2确定各候选文本中所匹配的文字的关联度;

其中,x为各候选文本中所匹配的文字的差别度,所述x1为各候选文本中所匹配的文字的声母差别度,所述x2为各候选文本中所匹配的文字的韵母差别度,a1为声母差别系数,b1为韵母差别系数。

可选的,声母差别系数a1可以为0.3,韵母差别系数b1可以为0.7,本发明实施例不做限定。

由于部分文字可能没有声母,如果相匹配的两个文字的声母同时不存在时,x1=0,两个文字的声母有一个不存在时,x1=1。

方式三:

所述文字的关联度为文字的差别度,所述音素关联度表为音素相似度表,所述音素相似度表记录有音素中每两个声母之间的相似度与每两个韵母之间的相似度;所述声母关联度为声母相似度,所述韵母关联度为韵母相似度的情况下,所述结合各候选文本中所匹配的文字的声母关联度,和各候选文本中所匹配的文字的韵母关联度,确定各候选文本中所匹配的文字的关联度包括:

根据公式x=1-a2*y1-b2*y2确定各候选文本中所匹配的文字的差别度;

其中,x为各候选文本中所匹配的文字的差别度,所述y1为各候选文本中所匹配的文字的声母相似度,所述y2为各候选文本中所匹配的文字的韵母相似度,a2为声母相似系数,b2为韵母相似系数。

可选的,声母差别系数a2可以为0.3,韵母差别系数b2可以为0.7,本发明实施例不做限定。

由于部分文字可能没有声母,如果相匹配的两个文字的声母同时不存在时,y1=1,两个文字的声母有一个不存在时,y2=0。

s207:根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;

s208:将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

本发明实施例中的s201-s203以及s207-s208的具体实现方式在上述方法实施例中已详细说明,本实施例不再赘述。

本发明实施例中的技术方案是以输入文本的各文字的音素为匹配对象,而各文字的音素中包含了各文字的发音特性,即包含了声母和韵母,在某些情况下,由于用户输入的文字为与用户想要搜索的实际内容近似发音的文字,而本发明实施例能够依据输入文本的各文字的发音特性获取搜索结果,与现有技术中匹配文字字形获取搜索结果的搜索方式相比,能够使得搜索结果与用户想要搜索的实际内容的匹配度更高,从而提高搜索结果的命中率。

可选的,图4示出了本发明实施例提供的预先建立音素关联度表的方法流程图,该方法可以包括:

s301:获取语音片段;

需要说明的是,所述语音片段包括至少一个文字,通过收集用户说话片段的方式来获取语音片段,由于受各地方言的影响,获取语音片段的种类也多种多样。

s302:提取语音片段中的音素发音;

可选的,所述音素发音包括:声母发音和韵母发音;并采用人工标注的方式将每个音素切分出来,此处的音素指的是汉语拼音中的每个拼音,如a、o、e、b、p、m等,其中包含23个声母、24个韵母,所有韵母还包括5个音调,分别为1、2、3、4、轻声,这样就可以收集到23+24*5=143个不同音素的发音,并且随着发音人的增多,例如各地方言的引进,每个音素对应的发音也不断增多。

s303:提取所述音素发音的13维mfcc(mel-scalefrequencycepstralcoefficients,梅尔倒谱系数)特征;

需要说明的是,mfcc特征是在mel标度频率域提取出来的倒谱参数,mel标度描述了人耳频率的非线性特性,提取所述音素发音的13维mfcc特征是为了提取出不同音素发音的特性,通过13维mfcc特征来描述不同音素的发音特性。

可选的,提取所述音素发音的13维mfcc特征的提取方式可以为:对语音片段中的音素发音序列依次执行离散傅里叶变换处理、取模平方处理、三角滤波函数组处理、取对数处理、离散余弦变换处理得到13维mfcc特征。对此提取所述音素发音的13维mfcc特征的方式本发明实施例不做限定。

可选的,在对语音片段中的音素的发音进行处理之前,可以先将所有语音片段的格式统一(例如:统一为16k16bit的格式等),便于后续对所有的语音片段进行统一处理。

s304:对所述音素发音的13维mfcc特征进行处理,得到所述音素发音的39维mfcc特征;

由于13维mfcc特征只反映了语音参数的静态特性,即只反映了某一个语音帧的数据情况,而并不能反映前后帧上下文关系的特征,即并不能反映语音帧的动态特性,因此,需要对所述音素发音的13维mfcc特征进行一阶与二阶差分变换,得到所述音素发音的39维mfcc特征。

可选的,对所述音素发音的13维mfcc特征进行一阶与二阶差分变换的公式为:y[n]=3*(x[n+2]+x[n+1]-x[n-1]-x[n-2])/10,其中,x[n]为音素发音的13维mfcc特征,y[n]为音素发音的39维mfcc特征,对此所述音素发音的13维mfcc特征进行一阶与二阶差分变换的方式本发明实施例不做限定。

s305:基于所述音素发音的39维mfcc特征,确定每两个音素之间的发音关联度;

需要说明的是,基于所述音素发音的39维mfcc特征,确定每两个音素之间的发音关联度的方式为:用某一个音素的39维mfcc特征在另外其他音素的混合高斯模型中计算似然值,得到每两个音素之间的发音关联度。

可选的,本发明实施例选取的混合高斯模型由m个单高斯模型组成:

其中,p(xi)为混合高斯模型,j的范围为1~512,表示混合高斯模型有512个单高斯模型组成,αj表示每个高斯模型的权重,xi为音素发音的39维mfcc特征值,i为得到的音素发音的39维mfcc特征值的个数,μj表示每个高斯模型的均值,是一个39维的向量,σj表示每个高斯模型的协方差矩阵,是一个39*39维的矩阵。

可选的,用某一个音素的39维mfcc特征在另外其他音素的混合高斯模型中计算匹配概率的过程如下:

根据公式确定第j个混合高斯模型的似然估计值;

依据第j个混合高斯模型的似然估计值确定似然函数:

其中,θj=(αj,μj,σj),□=(θ1,...,θm)t

特征由n个特征序列×(n个39维mfcc特征)组成;

所述似然函数表示每个音素的39维mfcc特征在每个混合高斯模型中计算到的似然概率,再对得到的每个似然概率乘以对应的权系数,得到每个似然概率对应的似然值,将每个似然值相加,确定每个音素的39维mfcc特征在每个混合高斯模型中计算到的似然值,最后将得到的n各音素的39维mfcc特征在每个混合高斯模型中计算到的似然值相乘,得到每两个音素之间的发音关联度。

s306:对所述每两个音素之间的发音关联度进行归一化处理,得到所述每两个音素之间的归一化发音关联度;

需要说明的是,对所述每两个音素之间的发音关联度进行归一化处理以使每两个音素之间的发音关联度的范围在0—1之间。

举例来说,对所述每两个音素之间的发音关联度进行归一化处理的过程可以采用以下方法:

如xab表示a音素的39维mfcc特征匹配b音素的混合高斯模型的关联度,即为a音素与b音素之间的发音关联度,yab表示a音素与b音素的归一化发音关联度,则这样就得到了每两个音素间的归一化发音关联度。对所述每两个音素之间的发音关联度进行归一化处理的方式本发明实施例不做限定。

s307:依据所述每两个音素之间的归一化发音关联度建立音素关联度表。

可选的,本发明实施例中的候选文本以候选文本树的形式组成的情况下,图5示出了本发明实施例提供的另外一种搜索方法流程图,该方法可以包括:

s401:接收输入文本;

s402:提取所述输入文本的各文字的音素;

s403:调取预先存储的至少一个候选文本树;

需要说明的是,所述候选文本树中每个节点代表一个文字,候选文本树中从根节点至其它节点的一个路径上的文字依序组成一个候选文本,且所述候选文本树中同层节点上的文字各不相同。

举例来说,在搜索引擎中进行歌词搜索的时候,需要将歌词库中每首歌曲的所有歌词按句子拆分,得到多个歌词句子,首先,首字相同的歌词句子进行合并,其次,按照歌词文字的顺序,只要排在歌词中相同文字顺序上的字就合并在一起,构成一个候选文本树,在一个候选文本树中从根节点至其它节点的一个路径上的文字依序组成一个候选文本,即组成一句歌词句子。

s404:按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本树相应层节点的文字的音素相匹配,得到各候选文本树所匹配到的各文字的关联度;

需要说明的是,本发明实施例中输入文本文字的顺序对应着文本树中的从根节点层开始的不同的节点层,文本树中的从根节点层开始的不同的节点层上分布着不同候选文本的相应文字。

s405:确定各候选文本树中由根节点至匹配到的末层节点的所有路径;

s406:将各候选文本树中所确定的各条路径对应的节点的文字的关联度,确定为各候选文本树中各候选文本中所匹配的文字的关联度。

由于本发明实施例中按照候选文本的首字不同,建立了多个文本树,本发明实施例中通过确定各候选文本树中由根节点至匹配到的末层节点的所有路径,将各候选文本树中所确定的各条路径对应的节点的文字的关联度,确定为各候选文本树中各候选文本中所匹配的文字的关联度。

s407:根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;

可选的,可以采用将各候选文本所匹配的各文字的关联度相加的方式,得到各候选文本所匹配的所有文字的总关联度;

可选的,可以采用将各候选文本所匹配的各文字的关联度分别乘以一个加权系数,再将各候选文本所匹配的各文字的关联度与加权系数的乘积所得到的各个结果相加的方式得到各候选文本所匹配的所有文字的总关联度。

s408:将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

本发明实施例中的s401-s402以及s406-s407的具体实现方式在上述方法实施例中已详细说明,本实施例不再赘述。

下面以用户在搜索引擎中搜索某一句歌词为应用场景,来详细说明本发明实施例的具体实现过程:

1、接收用户输入文本,所述用户输入文本为:“风到这里就思念”;

2、提取输入文本的各文字的音素:“fengdaozhelijiusinian”,各音素的发音分别为:一声、四声、四声、三声、四声、一声、四声。

3、如图6所示,调取预先存储的至少一个候选文本树,所述候选文本树中的每个节点代表一个文字,所述候选文本树从根节点至其它节点总共有两条路径,依序组成两个候选文本,分别是:“风到这里就是粘”以及“风到这里就停”。

4、按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本树相应层节点的文字的音素相匹配,即分别将输入文本“风到这里就思念”中各文字的音素与候选文本“风到这里就是粘”和“风到这里就停”中各文字的音素相匹配,得到各候选文本树所匹配到的各文字的相似度:

通过查找音素相似度表,将输入文本“风到这里就思念”与候选文本“风到这里就是粘”中各文字的音素相匹配,得到的每个文字的声母相似度与韵母相似度以及各候选文本中所匹配的文字的差别度x如表1所示:

表1

通过查找音素相似度表,将输入文本“风到这里就思念”与候选文本“风到这里就停”中各文字的音素相匹配,得到的每个文字的声母相似度与韵母相似度如表2所示:

表2

其中,上述表1与表2中是根据公式x=1-a2*y1-b2*y2确定各候选文本中所匹配的文字的差别度,其中,x为各候选文本中所匹配的文字的差别度,所述y1为各候选文本中所匹配的文字的声母相似度,所述y2为各候选文本中所匹配的文字的韵母相似度,a2为声母相似系数,b2为韵母相似系数,a2设定为0.3,b2设定为0.7。

5、输入文本“风到这里就思念”与候选文本“风到这里就是粘”所匹配的所有文本的总差别度为0.18+0.06=0.24

输入文本“风到这里就思念”与候选文本“风到这里就停”所匹配的所有文本的总差别度为0.83+1=1.83

6、由上述可知,总差别度最小的候选文本所匹配的文字依序组合为“风到这里就是粘”,将“风到这里就是粘”作为搜索结果输出。

经由上述技术方案可知,本发明实施例是以输入文本的各文字的音素为匹配对象,而各文字的音素中包含了各文字的发音特性,在某些情况下,由于用户输入的文字为与用户想要搜索的实际内容近似发音的文字,而本发明实施例能够依据输入文本的各文字的发音特性获取搜索结果,与现有技术中匹配文字字形获取搜索结果的搜索方式相比,能够使得搜索结果与用户想要搜索的实际内容的匹配度更高,从而提高搜索结果的命中率。

上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式的装置实现,因此本发明还公开了一种装置,下面给出具体的实施例进行详细说明。

图7为本发明实施例提供的搜索装置的结构框图,该装置可以包括:

文本接收单元11,用于接收输入文本,所述输入文本包括至少一个文字;

音素提取单元12,用于提取所述输入文本的各文字的音素;

候选文本调取单元13,用于调取预存储的至少一个候选文本;

音素匹配单元14,用于按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,得到各候选文本中所匹配的文字的关联度;

总关联度确定单元15,用于根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;

搜索结果获取单元16,用于将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

基于上述搜索装置实施例,本发明还可从以下单元中选取合适单元组成新的搜索装置,具体组成方式可对应方法实施例中的相关描述进行确定,本实施例不再赘述。

所述音素匹配单元14包括:

音素匹配子单元141,用于按照输入文本的文字顺序,依据预存储的音素关联度表,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,确定各候选文本中所匹配的文字的关联度,其中,所述预存储的音素关联度表中记录有各音素之间的关联度。

所述音素关联度表记录有音素中每两个声母之间的关联度与每两个韵母之间的关联度;

如图8所示,所述音素匹配子单元141包括:

声母匹配单元21,用于按照输入文本的文字顺序,依据所述音素关联度表,分别将输入文本的各文字的声母依序与各候选文本的文字的声母相匹配,得到各候选文本中所匹配的文字的声母关联度;

韵母匹配单元22,用于按照输入文本的文字顺序,依据所述音素关联度表,分别将输入文本的各文字的韵母依序与各个候选文本的文字的韵母相匹配,得到各候选文本中所匹配的文字的韵母关联度;

关联度确定单元23,用于结合各候选文本中所匹配的文字的声母关联度,和各候选文本中所匹配的文字的韵母关联度,确定各候选文本中所匹配的文字的关联度。

所述文字的关联度为文字的差别度,所述音素关联度表为音素差别度表,所述音素差别度表记录有音素中每两个声母之间的差别度与每两个韵母之间的差别度;所述声母关联度为声母差别度,所述韵母关联度为韵母差别度;

如图9所示,所述关联度确定单元23包括:

第一差别度确定单元231,用于根据公式x=a1*x1+b1*x2确定各候选文本中所匹配的文字的差别度,其中,x为各候选文本中所匹配的文字的差别度,所述x1为各候选文本中所匹配的文字的声母差别度,所述x2为各候选文本中所匹配的文字的韵母差别度,a1为声母差别系数,b1为韵母差别系数。

所述文字的关联度为文字的相似度,所述音素关联度表为音素相似度表,所述音素相似度表记录有音素中每两个声母之间的相似度与每两个韵母之间的相似度;所述声母关联度为声母相似度,所述韵母关联度为韵母相似度;

所述关联度确定单元23包括:

相似度确定单元232,用于根据公式y=a2*y1+b2*y2确定各候选文本中所匹配的文字的相似度,其中,y为各候选文本中所匹配的文字的相似度,所述y1为各候选文本中所匹配的文字的声母相似度,所述y2为各候选文本中所匹配的文字的韵母相似度,a2为声母相似系数,b2为韵母相似系数。

所述文字的关联度为文字的差别度,所述音素关联度表为音素相似度表,所述音素相似度表记录有音素中每两个声母之间的相似度与每两个韵母之间的相似度;所述声母关联度为声母相似度,所述韵母关联度为韵母相似度;

所述关联度确定单元23包括:

第二差别度确定单元233,用于根据公式x=1-a2*y1-b2*y2确定各候选文本中所匹配的文字的差别度,其中,x为各候选文本中所匹配的文字的差别度,所述y1为各候选文本中所匹配的文字的声母相似度,所述y2为各候选文本中所匹配的文字的韵母相似度,a2为声母相似系数,b2为韵母相似系数。

还包括:音素关联度表建立单元17,用于预先建立音素关联度表。

如图10所示,所述音素关联度表建立单元17包括:

语音片段获取单元171,用于获取语音片段,所述语音片段包括至少一个文字;

音素发音提取单元172,用于提取语音片段中的音素的发音,其中,所述音素的发音包括:声母发音和韵母发音;

mfcc特征提取单元173,用于提取所述音素发音的13维mfcc特征;

mfcc特征处理单元174,用于对所述音素发音的13维mfcc特征进行处理,得到所述音素发音的39维mfcc特征;

音素发音关联度确定单元175,用于基于所述音素发音的39维mfcc特征,确定每两个音素之间的发音关联度;

归一化处理单元176,用于对所述每两个音素之间的发音关联度进行归一化处理,得到所述每两个音素之间的归一化发音关联度;

音素关联度表建立单元177,用于依据所述每两个音素之间的归一化发音关联度建立音素关联度表。

如图11所示,所述候选文本调取单元13包括:

候选文本树调取单元131,用于调取预先存储的至少一个候选文本树,所述候选文本树中每个节点代表一个文字,候选文本树中从根节点至其它节点的一个路径上的文字依序组成一个候选文本,且所述候选文本树中同层节点上的文字各不相同。

如图12所示,所述音素匹配单元14包括:

候选文本树文字音素匹配单元142,用于按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本树相应层节点的文字的音素相匹配,得到各候选文本树所匹配到的各文字的关联度;

候选文本树文字关联度确定单元143,用于确定各候选文本树中由根节点至匹配到的末层节点的所有路径,将各候选文本树中所确定的各条路径对应的节点的文字的关联度,确定为各候选文本树中各候选文本中所匹配的文字的关联度。

如图13所示,本发明实施例还提供一种服务器1,服务器可以如搜索引擎服务器,具体如歌词的搜索引擎的服务器,所述服务器1包括存储器31和通过总线32与存储器31连接的处理器33。

该存储器31具有存储介质,该存储介质中存储有搜索程序;

存储器31可能包含高速ram存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。

该处理器33通过总线32与存储器31连接,所述处理器调用所述存储器中存储的搜索程序,上述搜索程序可以包括程序代码,所述程序代码包括一系列按照一定顺排列的操作指令。处理器33可能是一个中央处理器cpu,或者是特定集成电路,或者是被配置成实施本发明实施例的一个或多个集成电路。

处理器33调用的所述存储器中存储的搜索方法程序具体可以包括:

接收输入文本,所述输入文本包括至少一个文字;

提取所述输入文本的各文字的音素;

调取预存储的至少一个候选文本;

按照输入文本的文字顺序,将输入文本的各文字的音素依序与各候选文本的文字的音素相匹配,得到各候选文本中所匹配的文字的关联度;

根据各候选文本所匹配的各文字的关联度,确定各候选文本所匹配的所有文字的总关联度;

将总关联度符合预定条件的候选文本所匹配的文字依序组合的结果,作为搜索结果。

综上所述:

本发明实施例中的技术方案是以输入文本的各文字的音素为匹配对象,而各文字的音素中包含了各文字的发音特性,在某些情况下,由于用户输入的文字为与用户想要搜索的实际内容近似发音的文字,本发明实施例能够依据输入文本的各文字的发音特性获取搜索结果,与现有技术中匹配文字字形获取搜索结果的搜索方式相比,能够使得搜索结果与用户想要搜索的实际内容的匹配度更高,从而提高搜索结果的命中率。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1