语音地图搜索方法及系统的制作方法
【专利摘要】本发明提供了一种语音地图搜索方法及系统,其中,语音地图搜索方法包括:采集语音信号;对语音信号进行初步识别,得到初步识别结果;判断初步识别结果是否可信;若所述初步识别结果可信,输出所述初步识别结果;若初步识别结果不可信,则将语音信号及初步识别结果发送至服务器,并接收服务器返回的对语音信号进行最终识别得到的最终识别结果,以及对最终识别结果进行模糊检索得到的搜索结果。本发明的语音地图搜索方法及系统对客户端要求较低、搜索速度快,且识别准确率较高。
【专利说明】语音地图搜索方法及系统【技术领域】
[0001]本发明涉及语音地图搜索领域,特别是涉及一种语音地图搜索方法及系统。
【背景技术】
[0002]随着城市道路日益复杂,人们对地图搜索的需求越来越大,语音地图搜索由于其便捷性,正逐渐成为用户青睐的地图搜索方式。
[0003]传统的语音地图搜索系统,通常采用本地识别,即语音采集和识别以及地名搜索都在客户端完成。客户端首先将用户输入的语音音频信息转换为文本信息,再对识别得到的文本信息进行搜索,由于地图库中地点条目非常多,可到达数百万甚至上千万,造成语音识别系统的解码空间长而复杂,对所需的硬件提出较高的要求,这增加了客户端的成本,而且结构复杂、运行速度慢。此外,用户在进行语音地图搜索时,所说内容具有一定的随意性,这导致用户语音输入的内容与数据库中保存的地名条目的用词顺序不同或用词本身有微小差异,如用户语音输入的是“东门茂业百货”,而数据库中保存的是“茂业百货东门店”,一旦出现上述情况,传统的语音地图搜索系统往往无法正确识别用户所说内容。
【发明内容】
[0004]基于此,有必要针对传统语音地图搜索系统对客户端要求高而搜索速度慢,且不易正确识别的问题,提供一种对客户端要求较低、搜索速度快,且识别准确率较高的语音地图搜索方法及系统。
[0005]一种语音地 图搜索的方法,包括以下步骤:
[0006]米集语首/[目号;
[0007]初步识别,对语音信号进行初步识别,得到初步识别结果;
[0008]判断初步识别结果是否可信;
[0009]右初步识别结果可彳目,输出初步识别结果;
[0010]若初步识别结果不可信,则将语音信号及初步识别结果发送至服务器,并接收服务器返回的对语音信号进行最终识别得到的最终识别结果,以及对最终识别结果进行模糊检索得到的搜索结果。
[0011]在其中一个实施例中,对语音信号进行初步识别,得到初步识别结果包括以下步骤:
[0012]获取客户端静态解码图;
[0013]利用客户端静态解码图识别语音信号,得到客户端音素网格;
[0014]根据客户端音素网格求解最佳路径,得到初步识别文本;
[0015]计算并输出客户端音素网格的解码最佳路径的置信度。
[0016]在其中一个实施例中,最终识别包括以下步骤:
[0017]获取服务器静态解码图;
[0018]获取语音信号及客户端音素网格;[0019]根据语音信号生成服务器音素网格,然后根据服务器音素网格对客户端音素网格进行扩展,得到最终音素网格;
[0020]利用服务器静态解码图对最终音素网格进行解码,得到语音输入内容;
[0021]识别语音输入内容,得到文本内容。
[0022]在其中一个实施例中,采集语音信号之前,该方法还包括建立索引库;建立索引库包括以下步骤:
[0023]根据地名生成索引文档,该索引文档包括地名词条、地名词条长度以及地名一元分词词条;
[0024]对所有索引文档建立索引并保存为索引文件;
[0025]将所有索引文件加入索引库。
[0026]在其中一个实施例中,对最终识别结果进行模糊检索得到的搜索结果包括以下步骤:
[0027]获取关键词列表;
[0028]根据关键词列表移除文本内容中的关键词,得到地名文本内容;
[0029]对地名文本内容进行词合并操作,得到合并文本内容;
[0030]根据合并文本内容构建模糊检索词串;
[0031 ] 在索引库内对模糊检索词串进行检索,并输出搜索结果。
[0032]在其中一个实施例中,该方法还包括:
[0033]预设搜索结果的显示数量;
[0034]在得到搜索结果后,按照搜索结果与语音信号的匹配度从高到低筛选得到符合预设数量的搜索显示结果;
[0035]显示该搜索显示结果。
[0036]在其中一个实施例中,采集语音信号之前,该方法还包括训练语音识别模型得到服务器静态解码图和客户端静态解码图;训练语音识别模型得到服务器静态解码图和客户端静态解码图包括以下步骤:
[0037]训练背景语音模型和语言模型,语言模型包括背景语言模型和对该背景语言模型剪枝后得到的剪枝语言模型;
[0038]利用语言模型生成发音字典;
[0039]利用背景语音模型、背景语言模型和发音字典生成供服务器使用的服务器静态解码图;
[0040]利用背景语音模型、剪枝语言模型和发音字典生成供客户端使用的客户端静态解码图。
[0041]一种语音地图搜索系统,包括客户端,该客户端包括:
[0042]语音采集模块,用于采集语音信号;
[0043]初步识别模块,用于对语音信号进行初步识别,得到初步识别结果;
[0044]置信度判决模块,用于判断初步识别结果是否可信;
[0045]客户〗而输出t旲块,用于在初步识别结果可彳目时,输出初步识别结果;
[0046]传输模块,用于在初步识别结果不可信时,将语音信号及初步识别结果发送至服务器,并接收服务器返回的对语音信号进行最终识别得到的最终识别结果,以及对该最终识别结果进行模糊检索得到的搜索结果。
[0047]在其中一个实施例中,初步识别模块获取客户端静态解码图,利用客户端静态解码图识别语音信号得到客户端音素网格,并根据客户端音素网格求解最佳路径,得到初步识别文本,以及计算并输出客户端音素网格的解码最佳路径的置信度。
[0048]在其中一个实施例中,该系统还包括服务器,服务器包括:
[0049]最终识别模块,用于对接收语音信号和客户端音素网格,并识别语音信号得到文本内容;
[0050]检索词处理模块,用于对文本内容进行处理,得到模糊检索词串;
[0051]服务器检索模块,用于对模糊检索词串进行检索;以及
[0052]服务器输出模块,用于输出搜索结果。
[0053]在其中一个实施例中,客户端还包括显示模块,用于预设搜索结果的显示数量,并在得到搜索结果后,按照搜索结果与语音信号的匹配度从高到低筛选得到符合预设的显示数量的搜索显示结果,最后显示该搜索显示结果。
[0054]在其中一个实施例中,最终识别模块获取服务器静态解码图,根据语音信号生成服务器音素网格,根据服务器音素网格对客户端音素网格进行扩展,得到最终音素网格,再利用服务器静态解码图对最终音素网格进行解码,得到语音输入内容,最后识别语音输入内容,得到文本内容。
[0055]在其中一个实施例中,客户端静态解码图和服务器静态解码图通过训练语音识别模型得到。
[0056]在其中一个实施例中,检索词处理模块包括:
[0057]关键词移除模块,用于建立关键词列表,并利用关键词列表移除文本内容中的关键词,得到地名文本内容;
[0058]词合并模块,用于对地名文本内容进行词合并操作,得到合并文本内容;以及
[0059]模糊检索词串构建模块,用于根据合并文本内容构建模糊检索词串。
[0060]在其中一个实施例中,服务器检索模块调用索引库,用于供服务器检索模块进行模糊检索,索引库包括多个索引文件,每个索引文件由索引文档构成,索引文档包括地名词条、地名词条长度以及地名一元分词词条。
[0061]一种语音地图搜索系统,包括客户端、语音识别服务器和地图搜索服务器,其中:
[0062]客户端用于采集语音信号并进行初步识别,得到初步识别结果,判断初步识别结果是否可信,若初步识别结果可信,输出初步识别结果,若初步识别结果不可信,则将语音信号及初步识别结果发送至语音识别服务器;
[0063]语音识别服务器用于接收语音信号并进行最终识别,得到最终识别结果;
[0064]地图搜索服务器用于对最终识别结果进行模糊检索得到的搜索结果。
[0065]上述语音地图搜索方法及系统,仅利用客户端完成简单的识别任务,将更复杂的识别任务交由服务器处理,降低了对客户端硬件的要求,提升了搜索的速度。此外,在服务器上进行模糊检索,也提高了地名识别的准确率。
【专利附图】
【附图说明】
[0066]图1为本发明的语音地图搜索系统的架构示意图;[0067]图2为本发明的语音地图搜索方法的流程图;
[0068]图3为本发明的语音地图搜索方法的初步识别流程图;
[0069]图4为本发明的语音地图搜索方法的最终识别及搜索流程图;
[0070]图5为本发明的语音地图搜索方法的显示模块工作流程图;
[0071]图6为本发明的语音识别模型的训练过程示意图;
[0072]图7为本发明的语音地图搜索系统的客户端结构示意图;
[0073]图8为本发明的语音地图搜索系统的服务器结构示意图;
[0074]图9为本发明的语音地图搜索系统的服务器的检索功能模块示意图。
【具体实施方式】
[0075]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0076]图1为语音地图搜索系统的架构示意图。如图1所示,一种语音地图搜索系统,包括服务器集群、服务器网关和分散在不同网络环境中的各个客户端。
[0077]服务器集群中包含两种类型的服务器,即语音识别服务器和基于文本的地图搜索服务器,它们之间的任务调度和通信由服务器网关负责。此外,语音识别服务器和地图搜索服务器可集成为一个服务器。
[0078]服务器网关负责整个服务器集群对外的信息交换,包括请求接收、任务排队、任务分发、服务器集群负载均衡、服务器间通信及网络异常情况处理等。
[0079]客户端设备可以是各种移动设备,包括但不限于手机、平板电脑、车机等,以及其他需要地图搜索的应用场景的设备。客户端设备上安装有专用的客户端软件,且能实现语音信号的采集和初步的数据处理及语音识别。
[0080]客户端用于采集语音信号并进行初步识别,得到初步识别结果,判断该初步识别结果是否可信。具体的,客户端识别采集到的语音信号,得到客户端音素网格;根据客户端音素网格求解最佳路径,得到初步识别文本;计算并输出客户端音素网格的解码最佳路径
的置信度。
[0081]置信度,是指在没有参考答案的情况下,对识别结果的可靠性的客观性度量。置信度的计算方法一般是根据音素网格中的对数似然比等参数进行计算,某一个识别结果的置信度越高,即该结果越可信。
[0082]最佳路径,是指网格中对数似然比之和最高的那一条路径。
[0083]在客户端预设一个置信度闕值,就可以根据输出的客户端音素网格的解码最佳路径的置信度判断初步识别结果是否可信。具体的,当输出的置信度大于该置信度闕值时,认为初步识别结果可信;当输出的置信度小于该置信度闕值时,认为初步识别结果不可信。
[0084]若该初步识别结果可信,输出该初步识别结果,若该初步识别结果不可信,则将该语音信号及该初步识别结果发送至语音识别服务器。
[0085]语音识别服务器用于接收所述语音信号并进行最终识别,得到最终识别结果。具体的,语音识别服务器获取语音信号和客户端音素网格后,根据语音信号生成服务器音素网格,根据服务器音素网格对客户端音素网格进行扩展,得到最终音素网格,再对最终音素网格进行解码,得到语音输入内容,最后识别语音输入内容,得到文本内容,即最终识别结果O
[0086]地图搜索服务器用于对该最终识别结果进行模糊检索得到的搜索结果。具体的,地图搜索服务器对语音识别服务器识别得到的文本内容进行处理,得到模糊检索词串,再对该模糊检索词串进行检索,得到搜索结果。
[0087]图2为一个实施例中语音地图搜索方法的流程图。图2中的语音地图搜索方法运行于图1的系统架构中,以客户端的角度进行描述。如图2所示,该语音地图搜索方法包括以下步骤:
[0088]S200,采集语音信号。该步骤在客户端完成,由客户端软件通过客户端的声卡实时获得音频输入。
[0089]采集到语音信号之后,通常会对该语音信号进行一系列处理,例如对采集到的语音信号进行降噪处理,由于客户端采集的语音信号一般含有噪声,因此首先需要对其进行降噪处理,降低噪声的影响。
[0090]还可以对语音信号进行滤波、预加重、分帧、和加窗等预处理,其中,
[0091]滤波,是将语音信号中特定波段频率滤除的操作,用于抑制和防止干扰。
[0092]预加重,是指通过一个一阶有限激励响应高通滤波器,使语音信号的频谱变得平坦。
[0093]分帧,即根据语音信号的短时平稳特性,以帧为单位对语音信号进行处理。
[0094]加窗,指米用汉明窗对一巾贞语音信号加窗,以减小语音信号的随机起伏。
[0095]为了提高语音识别的准确率,还会对语音信号进行特征提取,具体的,可以采用提取梅尔频谱倒谱系数(Mel-Frequency Cepstral Coefficients,MFCC)的方式。MFCC是计算语音信号的Mel频率倒谱系数,Mel频率是基于人耳听觉特性提出来的,它与频率成非线性对应关系,Mel频率倒谱系数(MFCC)则是利用它们之间的这种关系,计算得到的频谱特征。
[0096]在一个实施例中,步骤S200之前,还包括:
[0097]S100,训练语音识别模型得到客户端静态解码图和服务器静态解码图。
[0098]如图3所示,步骤SlOO可包括以下步骤(I)⑵(3) (4):
[0099](I)训练背景语音模型和语言模型。
[0100]具体的,利用大量事先标注好的语音数据训练可通用的背景语音模型ΑΜ0,在本实施例中米用高斯混合_隐马尔可夫模型(Gaussian Mixture-Hidden Markov Model,GMM-HMM);
[0101]利用大量平衡的汉语文本语料训练可通用的背景语言模型LM1,同时生成词表Vl,语目模型建模方法米用二兀语法;
[0102]以客户端设备能够承载的模型大小为准,设定合适的概率阈值,对背景语言模型LMl进行剪枝,去掉概率低于概率阈值的部分,以大幅降低语言模型的体积,得到剪枝语言模型LM1S,剪枝过程中所用概率阈值可调整;
[0103]将地名条目作为孤立词,训练基于一元语法的语言模型LM2,所有地名条目可作为孤立词形式的词表V2 ;
[0104]将地名条目进行一元分词,训练基于四元语法的语言模型LM3,同时生成字形式的词表V3 ;[0105]将地名条目按可变词表进行自适应分词,训练基于三元语法的语言模型LM4,可变词表可通过公开途径收集得到,语言模型LM4对应的词表记为词表V4 ;
[0106]对背景语言模型LM1、语言模型LM2、语言模型LM3和语言模型LM4进行插值,生成供服务器使用的背景语言模型LM0,插值权重分别记为wl、《2、w3和《4,在本实施例中,取wI = 0.15, w2 = 0.35, w3 = 0.2, w4 = 0.3,在其他实施例中,只要保证 wl+w2+w3+w4 = I,均可以实现背景语言模型LMO的生成;
[0107]对剪枝语言模型LM1S、语言模型LM2、语言模型LM3和语言模型LM4进行插值,生成供客户端使用的剪枝语言模型LM0S,插值权重分别记为wls、w2s、w3s和w4s,在本实施例中,取wls = 0.25, w2s = 0.35, w3s = 0.15, w4s = 0.25,在其他实施例中,只要保证wl+w2+w3+w4 = I,均可以实现剪枝语言模型LMOS的生成。
[0108](2)利用语言模型生成发音字典。
[0109]具体的,将词表V1、词表V2、词表V3和词表V4组合在一起,排除LMO和LMOS中未出现的词,生成词表VO ;
[0110]根据词表VO生成对应的发音字典LO。
[0111](3)利用背景语音模型ΑΜ0、背景语言模型LMO和发音字典LO生成供服务器使用的加权有限状态机(WFST, weighted finite state transducer)形式的服务器静态解码图HCLG。
[0112](4)利用背景语音模型ΑΜ0、剪枝语言模型LMOS和发音字典LO生成供客户端使用的加权有限状态机(WFST,weighted finite state transducer)形式的客户端静态解码图HCLGS。
[0113]本实施例的语音识别模型包括设置在客户端的小型语音识别模型和设置在服务器的大型语音识别模型,具有较高的识别准确率。
[0114]在一个实施例中,步骤SlOO之前,还包括:
[0115]S000,建立索引库。具体的,步骤S000可包括以下步骤(I) (2) (3):
[0116](I)生成索引文档,该索引文档包括地名词条、地名词条长度以及地名一元分词词条。以地名词条“北京大学深圳研究院”为例,该地名词条的长度为9,与该词条对应的一元分词词条为“北京大学深圳研究院”。
[0117](2)对所有索引文档建立索引并保存为索引文件。
[0118](3)将所有索引文件加入索引库。
[0119]本实施例的索引库不仅包含地名词条,还包含地名一元分词词条,便于检索。
[0120]S300,对语音信号进行初步识别,得到初步识别结果。
[0121]如图4所示,步骤S300可包括步骤S301-S304:
[0122]S301,获取客户端静态解码图HCLGS ;
[0123]S302,利用客户端静态解码图HCLGS识别语音信号,得到客户端音素网格,具体的,客户端音素网格是根据设置在客户端的小型语音识别模型生成的基于汉语音素的网格;
[0124]S303,根据客户端音素网格,求解最佳路径,生成初步识别文本;
[0125]S304,计算并输出客户端音素网格的解码最佳路径的置信度。
[0126]客户端仅对语音信号进行初步识别,并生成客户端音素网格,因此客户端不需要很高的硬件要求,也便于进行后续的识别。
[0127]S400,判断初步识别结果是否可信。具体的,通过客户端的一个置信度判决模块,预先设定一个置信度闕值,当客户端音素网格的解码最佳路径的置信度大于该置信度闕值时,认为初步识别结果可信;当客户端音素网格的解码最佳路径的置信度小于该置信度闕值时,认为初步识别结果不可信。
[0128]S500,若初步识别结果可信,输出初步识别结果。
[0129]客户端的语音识别模型较小,只能识别很常用的标志性地名,因为是常用的标志性地名,不需要搜索类似的地名,所以如果客户端认为初步识别结果可信,就会直接输出识初步别结果,该初步识别结果只有一条。
[0130]S600,若初步识别结果不可信,则将语音信号及初步识别结果发送至服务器,并接收服务器返回的对语音信号进行最终识别得到的最终识别结果,以及对最终识别结果进行模糊检索得到的搜索结果。
[0131]如图5所示,步骤S600可包括步骤S601-S610:
[0132]S601,获取服务器静态解码图HCLG。
[0133]S602,获取语音信号及客户端音素网格。
[0134]S603,根据语音信号生成服务器音素网格,然后根据服务器音素网格对客户端音素网格进行扩展,得到最终音素网格。
[0135]S604,利用服务器静态解码图HCLG对最终音素网格进行解码,得到语音输入内容。
[0136]S605,识别语音输入内容,得到文本内容W。以语音输入内容是“我要去深圳大学”为例,识别得到的文本内容为“我要去深圳大学”。
[0137]S606,获取关键词列表。关键词列表预先经过收集整理,用于过滤识别结果中可能存在的特定句式关键词,例如“我想去”、“导航到”、“在哪儿”、“在哪里”、“附近有”、“最近的”、“吗”等。
[0138]S607,根据关键词列表移除文本内容W中的关键词,得到地名文本内容W1。仍以语音输入内容是“我要去深圳大学”为例,移除关键词后的地名文本内容是“深圳大学”。
[0139]S608,对地名文本内容Wl进行词合并操作,得到合并文本内容W2,如“深圳大学”。
[0140]S609,根据合并文本内容W2构建模糊检索词串W3。模糊检索词串W3由合并文本内容W2按字分词得到,如“深圳大学”。
[0141]S610,在索引库内对模糊检索词串W3进行模糊检索,并输出搜索结果。送入索引库进行检索的内容包括模糊检索词串W3整体以及该模糊检索词串W3中的每一个字,例如“深圳大学”及“深”、“圳”、“大”、“学”。
[0142]这样处理后得到的要检索的内容中含有的地名数据所占比重更大,利于得到更精确的检索结果。服务器采用模糊检索的方式,提高了地名识别的准确率。
[0143]在一个实施例中,步骤S600之后还包括:
[0144]S700,显示搜索结果。
[0145]如图6所示,步骤S700可包括步骤S701-S703:
[0146]S701,预设搜索结果的显示数量;
[0147]S702,在得到搜索结果后,按照搜索结果与语音信号的匹配度从高到低筛选得到符合预设数量的搜索显示结果;
[0148]S703,显示该搜索显示结果。
[0149]上述语音地图搜索方法,在客户端根据置信度判断语音信号能否识别,在无法识别的情况下直接将语音信号和客户端音素网格发送到服务器,在服务器上进行最终识别和模糊检索,步骤简单且容易实现,使客户端能够迅速反应,有利于提升搜索速度。
[0150]如图7所示,本发明提供了一种语音地图搜索系统,包括客户端,该客户端包括语音采集模块10、初步识别模块20、置信度判决模块30、客户端输出模块40和传输模块50,其中:
[0151]语音采集模块10,用于采集语音信号,具体的,是由客户端软件通过客户端的声卡实时获得音频输入。采集到语音信号之后,语音采集模块10通常会对该语音信号进行一系列处理,例如滤波、预加重、分帧、加窗和特征提取等。
[0152]初步识别模块20,用于对所述语音信号进行初步识别,得到初步识别结果。初步识别模块20获取客户端静态解码图HCLGS,利用客户端静态解码图HCLGS识别语音信号得到初步识别文本。初步识别结果包括生成客户端音素网格、根据客户端音素网格解码最佳路径并得到初步识别文本以及该客户端音素网格的解码最佳路径的置信度。
[0153]置信度判决模块30,用于判断初步识别结果是否可信。具体的,预先设定一个置信度闕值,当客户端音素网格的解码最佳路径的置信度大于该置信度闕值时,认为初步识别结果可信;当客户端音素网格的解码最佳路径的置信度小于该置信度闕值时,认为初步识别结果不可信。
[0154]客户端输出模块40,用于在初步识别结果可信时,输出初步识别结果。
[0155]传输模块50,用于在初步识别结果不可信时,将语音信号及客户端音素网格发送至服务器,并接收服务器返回的对语音信号进行最终识别得到的最终识别结果,以及对最终识别结果进行模糊检索得到的搜索结果。
[0156]在一个实施例中,本系统还包括服务器。
[0157]如图8所示,服务器包括最终识别模块60、检索词处理模块70、服务器检索模块80和服务器输出模块90,其中:
[0158]最终识别模块60,用于对接收语音信号和客户端音素网格,并识别语音信号得到文本内容W。具体的,最终识别模块60获取服务器静态解码图HCLG,根据语音信号生成服务器音素网格,根据服务器音素网格对客户端音素网格进行扩展,得到最终音素网格,再利用服务器静态解码图HCLG对最终音素网格进行解码,得到语音输入内容,最后识别语音输入内容,得到文本内容W。
[0159]检索词处理模块70,用于对文本内容W进行处理,得到模糊检索词串。
[0160]服务器检索模块80,用于对模糊检索词串进行模糊检索。服务器检索模块80调用索引库,用于供服务器检索模块80进行模糊检索。索引库包括多个索引文件,每个索引文件由索引文档构成,索引文档包括地名词条、地名词条长度以及地名一元分词词条。以地名词条“北京大学深圳研究院”为例,该地名词条的长度为9,与该词条对应的一元分词词条为“北京大学深圳研究院”。
[0161]服务器输出模块90,用于输出搜索结果。
[0162]在一个实施例中,客户端静态解码图HCLGS和服务器静态解码图HCLG通过训练语音识别模型得到。
[0163]如图3所示,语音识别模型包括可通用的背景语音模型ΑΜ0、可通用的背景语言模型LM1、对背景语言模型LMl剪枝得到的剪枝语言模型LM1S、基于一元语法的语言模型LM2、基于四元语法的语言模型LM3以及基于三元语法的语言模型LM4。
[0164]背景语音模型AMO采用高斯混合-隐马尔可夫模型,由大量事先标注好的语音数据训练得到。
[0165]背景语言模型LMl由大量平衡的汉语文本语料训练得到,训练的同时生成词表Vl,语目模型建模方法米用二兀语法。
[0166]剪枝语言模型LMlS是以客户端设备能够承载的模型大小为准,对背景语言模型LMl进行剪枝而得到的,其体积远小于背景语言模型LM1。
[0167]语言模型LM2基于孤立词形式的地名条目训练得到,其对应孤立词形式的词表V2。
[0168]语言模型LM3基于一元分词形式的地名条目训练得到,其对应字形式的词表V3。
[0169]语言模型LM4基于按可变词表进行自适应分词的地名条目训练得到,其对应的词表记为V4。可变词表可通过公开途径收集得到。
[0170]对背景语言模型LMl、语言模型LM2、语言模型LM3和语言模型LM4进行插值,可得到供服务器使用的背景语言模型LMO。
[0171]对剪枝语言模型LM1S、语言模型LM2、语言模型LM3和语言模型LM4进行插值,可得到供客户端使用的剪枝语言模型LM0S。
[0172]将词表V1、词表V2、词表V3和词表V4组合在一起,排除LMO和LMOS中未出现的词,可得到词表VO。词表VO对应发音字典LO。
[0173]服务器静态解码图HCLG由背景语音模型AMO、背景语言模型LMO和发音字典LO生成。
[0174]客户端静态解码图HCLGS由背景语音模型AMO、剪枝语言模型LMOS和发音字典LO生成。
[0175]如图9所示,检索词处理模块70包括关键词移除模块71、词合并模块72和模糊检索词串构建模块73,其中:
[0176]关键词移除模块71,用于建立关键词列表,并利用关键词列表移除文本内容W中的关键词,得到地名文本内容W1。具体的,首先,根据事先收集整理好的“特定句式关键词列表”,过滤掉文本内容W中可能存在的特定句式关键词,例如“我想去”、“导航到”、“在哪儿”、“在哪里”、“附近有”、“最近的”、“吗”等。这样处理后得到的地名文本内容Wl中含有的地名数据所占比重更大,利于地名检索得到更精确的结果。
[0177]词合并模块72,用于对地名文本内容Wl进行词合并操作,得到合并文本内容W2。具体的,观察地名文本内容Wl的词序列,对相邻的两个词进行两两合并,如果合并后的内容在词表VO中,则将其合并为新词,从而得到合并文本内容W2。
[0178]模糊检索词串构建模块73,用于根据合并文本内容W2构建模糊检索词串W3,具体的,将合并文本内容W2按字分词得到模糊检索词串W3。
[0179]将模糊检索词串W3整体送入服务器检索模块80进行检索,同时将模糊检索词串W3中的每个字也送入服务器检索模块80进行检索,即服务器检索模块80检索的内容包括“深圳大学”及“深”、“圳”、“大”、“学”。。
[0180]这样的检索方法效率和准确率较高。
[0181]在一个实施例中,客户端还包括显示模块,用于显示搜索结果。显示模块可由用户预设或默认显示数量,在得到所述搜索结果后,按照所述搜索结果与所述语音信号的匹配度从高到低筛选得到符合所述显示数量的搜索显示结果。
[0182]本发明提供的语音地图搜索系统,仅利用客户端完成简单的识别任务,将更复杂的识别任务交由服务器处理,降低了对客户端硬件的要求,提升了搜索的速度。此外,在服务器上进行模糊检索,也提高了地名识别的准确率。
[0183]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【权利要求】
1.一种语音地图搜索方法,包括以下步骤: 米集语首/[目号; 对所述语音信号进行初步识别,得到初步识别结果; 判断所述初步识别结果是否可信; 若所述初步识别结果可信,输出所述初步识别结果; 若所述初步识别结果不可信,则将所述语音信号及所述初步识别结果发送至服务器,并接收所述服务器返回的对所述语音信号进行最终识别得到的最终识别结果,以及对所述最终识别结果进行模糊检索得到的搜索结果。
2.根据权利要求1所述的语音地图搜索方法,其特征在于,所述对所述语音信号进行初步识别,得到初步识别结果包括以下步骤: 获取客户端静态解码图; 利用所述客户端静态解码图识别所述语音信号,生成客户端音素网格; 求解所述客户端音素网格的最佳路径,根据最佳路径生成初步识别结果文本; 计算并输出所述客户端音素网格的解码最佳路径的置信度。
3.根据权利要 求2所述的语音地图搜索方法,其特征在于,所述最终识别包括以下步骤: 获取服务器静态解码图; 获取所述语音信号及所述客户端音素网格; 根据所述语音信号生成服务器音素网格,然后根据所述服务器音素网格对所述客户端音素网格进行扩展,得到最终音素网格; 利用所述服务器静态解码图对所述最终音素网格进行解码,得到语音输入内容; 识别所述语音输入内容,得到文本内容。
4.根据权利要求3所述的语音地图搜索方法,其特征在于,所述采集语音信号之前,所述方法还包括建立索引库; 所述建立索引库包括以下步骤: 根据地名生成索引文档,所述索引文档包括地名词条、地名词条长度以及地名一元分词词条; 对所有索引文档建立索引并保存为索引文件; 将所有索引文件加入索引库。
5.根据权利要求4所述的语音地图搜索方法,其特征在于,所述对所述最终识别结果进行模糊检索得到的搜索结果包括以下步骤: 获取关键词列表; 根据所述关键词列表移除所述文本内容中的关键词,得到地名文本内容; 对所述地名文本内容进行词合并操作,得到合并文本内容; 根据所述合并文本内容构建模糊检索词串; 在所述索引库内对所述模糊检索词串进行检索,并输出搜索结果。
6.根据权利要求5所述的语音地图搜索方法,其特征在于,所述方法还包括: 预设所述搜索结果的显示数量; 在得到所述搜索结果后,按照所述搜索结果与所述语音信号的匹配度从高到低筛选得到符合所述预设数量的搜索显示结果; 显示所述搜索显示结果。
7.根据权利要求3所述的语音地图搜索方法,其特征在于,所述采集语音信号之前,所述方法还包括训练语音识别模型得到服务器静态解码图和客户端静态解码图; 所述训练语音识 别模型得到服务器静态解码图和客户端静态解码图包括以下步骤: 训练背景语音模型和语言模型,所述语言模型包括背景语言模型和对所述背景语言模型剪枝后得到的剪枝语言模型; 利用所述语言模型生成发音字典; 利用所述背景语音模型、所述背景语言模型和所述发音字典生成供所述服务器使用的所述服务器静态解码图; 利用所述背景语音模型、所述剪枝语言模型和所述发音字典生成供所述客户端使用的所述客户端静态解码图。
8.一种语音地图搜索系统,其特征在于,包括客户端,所述客户端包括: 语音采集模块,用于采集语音信号; 初步识别模块,用于对所述语音信号进行初步识别,得到初步识别结果; 置信度判决模块,用于判断所述初步识别结果是否可信; 客户端输出模块,用于在所述初步识别结果可信时,输出所述初步识别结果; 传输模块,用于在所述初步识别结果不可信时,将所述语音信号及所述初步识别结果发送至所述服务器,并接收所述服务器返回的对所述语音信号进行最终识别得到的最终识别结果,以及对所述最终识别结果进行模糊检索得到的搜索结果。
9.根据权利要求8所述的语音地图搜索系统,其特征在于,所述初步识别模块获取客户端静态解码图,利用所述客户端静态解码图识别所述语音信号得到客户端音素网格,并根据所述客户端音素网格生成初步识别文本,以及计算并输出所述客户端音素网格的解码最佳路径的置信度。
10.根据权利要求9所述的语音地图搜索系统,其特征在于,所述系统还包括服务器,所述服务器包括: 最终识别模块,用于对接收所述语音信号和所述客户端音素网格,并识别所述语音信号得到文本内容; 检索词处理模块,用于对所述文本内容进行处理,得到模糊检索词串; 服务器检索模块,用于对所述模糊检索词串进行检索;以及 服务器输出模块,用于输出所述搜索结果。
11.根据权利要求10所述的语音地图搜索系统,其特征在于,所述客户端还包括显示模块,用于预设所述搜索结果的显示数量,并在得到所述搜索结果后,按照所述搜索结果与所述语音信号的匹配度从高到低筛选得到符合所述显示数量的搜索显示结果,最后显示所述搜索显示结果。
12.根据权利要求10所述的语音地图搜索系统,其特征在于,所述最终识别模块获取服务器静态解码图,根据所述语音信号生成服务器音素网格,根据所述服务器音素网格对所述客户端音素网格进行扩展,得到最终音素网格,再利用所述服务器静态解码图对所述最终音素网格进行解码,得到语音输入内容,最后识别所述语音输入内容,得到文本内容。
13.根据权利要求12所述的语音地图搜索系统,其特征在于,所述客户端静态解码图和所述服务器静态解码图通过训练语音识别模型得到。
14.根据权利要求12所述的语音地图搜索系统,其特征在于,所述检索词处理模块包括: 关键词移除模块,用于建立关键词列表,并利用所述关键词列表移除所述文本内容中的关键词,得到地名文本内容; 词合并模块,用于对所述地名文本内容进行词合并操作,得到合并文本内容;以及 模糊检索词串构建模块,用于根据所述合并文本内容构建所述模糊检索词串。
15.根据权利要求14所述的语音地图搜索系统,其特征在于,所述服务器检索模块调用索引库,用于供所述服务器检索模块进行模糊检索,所述索引库包括多个索引文件,每个索引文件由索引文档构成,所述索引文档包括地名词条、地名词条长度以及地名一元分词词条。
16.一种语音地图搜索系统,其特征在于,包括客户端、语音识别服务器和地图搜索服务器,其中: 所述客户端用于采集语音信号并进行初步识别,得到初步识别结果,判断所述初步识别结果是否可信,若所述初步识别结果可信,输出所述初步识别结果,若所述初步识别结果不可信,则将所述语音信号及所述初步识别结果发送至语音识别服务器; 所述语音识别服务器用于接收所述语音信号并进行最终识别,得到最终识别结果; 所述地图搜索服务器用于对所述最终识别结果进行模糊检索得到的搜索结果。
【文档编号】G10L15/00GK104008132SQ201410185061
【公开日】2014年8月27日 申请日期:2014年5月4日 优先权日:2014年5月4日
【发明者】王昕 , 刘轶, 石伟, 张勇, 黄石磊, 程刚, 林海洲, 陈诚 申请人:深圳市北科瑞声科技有限公司