基于垂直领域的语音文本纠错方法、系统、设备及介质与流程

文档序号:18620545发布日期:2019-09-06 22:26阅读:240来源:国知局
基于垂直领域的语音文本纠错方法、系统、设备及介质与流程
本发明涉及自然语言处理领域,具体涉及一种基于垂直领域的语音文本纠错方法、系统、设备及介质。
背景技术
:着人工智能技术的不断发展,语音识别技术被普遍应用到人工智能领域。而语音识别技术是将人类的语言转变为相应的语音文本,现在主流的语音识别技术为自动语音识别(asr)技术,但是经asr识别后的语音文本常常出现错误,主要是受到由于同音误识别,环境音的影响等,从而对人工智能理解人类对话产生较大的影响,因此,提高语音识别的正确率是语音交互中的关键部分,对语音识别后转译的文本进行纠错是提高语音识别正确率的有效方法。技术实现要素:为了克服现有技术的不足,本发明的目的之一在于提供一种基于垂直领域的语音文本纠错系统,其基于垂直领域分别建立分词词典,提升专业领域下的纠错效果,结合语言模型对纠错候选句做评分排序,得出最优纠错结果,从而进一步提高语音交互的准确率。本发明的目的之一采用以下技术方案实现:基于垂直领域的语音文本纠错方法,包括如下步骤:将语音转译为语音文本后基于领域词典进行分词,得到分词结果;根据所述分词结果确定纠错候选分词集合,所述纠错候选分词集合交叉组合形成若干纠错候选句,所述若干纠错候选句构成混淆集;通过所述混淆集获取纠错候选句,使用语言模型对所述纠错候选句进行评分,如果所述纠错候选句的评分不高于原句评分或不高于预先定义的阈值,则判定为没有错误,否则得分最高的纠错候选句即为纠错结果;其中,所述领域词典基于垂直领域收集不同专业领域的语料进行标注后构建,所述纠错候选分词集合包括所述分词结果的易混淆词、同音词,近音词,音节歧义以及多音词。进一步地,收集常见的易混淆字词,建立混淆词典,用于纠错前的纠错建议。进一步地,建立同音词词典,所述同音词词典为原始词库按照同音词的拼音进行存储的链式hash结构,并且原始词库经过人工标注,具体建立过程如下:(1)从原始词库中读取一个词条;(2)获取词条的拼音,如果词条经过人工标注,则获取人工标注的拼音,否则将词条的每一个汉字转化为拼音,得到词条的拼音x;(3)以所述x为自变量,经由hash函数f(x)得到x对应的hash元素,将词条加入到相应的hash元素的链表中;(4)如果关键字源文件还有剩余词条,则返回步骤(1),否则所述同音词词典建立结束。进一步地,建立混淆集的步骤为:遍历所述分词结果,并依次输入到所述混淆词典进行检索,若检索到所述分词结果的纠错候选分词,则通过语言模型计算所述纠错候选分词交叉组合后的句子评分,如果所述评分不高于原句评分或者与原句评分相比得分不高于预先定义的阈值,判定为未命中所述混淆词典,否则将查询到的纠错候选分词加入纠错候选词集合,重复此步骤,直至所有分词结果都遍历完成;而未命中所述混淆词典的分词结果均转为拼音,将所述拼音依次放入所述同音词词典中检索,以获取所述拼音的同音词和根据相似拼音检索到的近音词,将检索到的所有同音词和近音词加入纠错候选分词集合,重复此步骤,直至所有未命中所述混淆词典的分词结果均加入纠错候选分词集合即完毕;从所述纠错候选分词集合中获取纠错候选分词,按照所述分词结果在原语音文本中的顺序,交叉组合每个分词的纠错候选分词形成若干纠错候选句,所述若干纠错候选句构成所述混淆集。进一步地,所述语言模型为n-gram语音模型,所述n-gram语音模型计算句子概率的公式为:p(w)=p(w1,w2,w3,w4,...wn)=p(w1)p(w2|w1)p(w3|w1,w2)...p(wn|w1,...wn-1);其中w表示分词结果,wn表示第n个分词结果。p(wn|w1,…wn-1)表示之前n-1词是w1,..wn-1的情况下第n个词是wn的概率。进一步地,将所述n-gram语言模型进行简化,得到bigram2元语言模型,所述bigram2元语言模型计算句子概率的公式为:p(w)=p(w1)p(w2|w1)...p(wn|wn-1);通过计算最大似然估计(maximumlikelihoodestimate)构造语言模型,其中p(wn|wn-1)计算公式为:p(wn|wn-1)=count(wn,wn-1)/count(wn-1),count(wn-1)表示wn-1在语料中出现的次数。本发明的目的之二在于提供一种基于垂直领域的语音文本纠错系统,其结合语言模型对纠错候选句做评分排序,得出最优纠错结果。本发明的目的之二采用以下技术方案实现:数据获取模块,用于获取语音转译的语音文本内容;自然语音处理模块,将所述语音文本内容基于领域词典进行分词,得到分词结果;混淆集生成模块,用于确定所述分词结果的纠错候选分词集合,包含纠错候选分词集合交叉组合形成的若干纠错候选句;纠错模块,用于从所述混淆集生成模块中获取纠错候选句,使用语言模型对所述纠错候选句进行评分排序,确定纠错结果;结果输出模块,用于输出所述纠错结果。本发明的目的之三在于提供执行发明目的之一的电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,所述计算机程序被处理器执行时实现上述的基于垂直领域的语音文本纠错方法。本发明的目的之四在于提供存储发明目的之一的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于垂直领域的语音文本纠错方法。相比现有技术,本发明的有益效果在于:基于垂直领域建立领域词典用于分词,通过收集不同专业领域的专业词汇构成领域词典,使得分词更加准确,从而提升了专业领域下的纠错效果;将分词结果的纠错候选词(每个分词的同音词,近音词,音节歧义以及多音词)交叉组合形成混淆集(纠错候选句集合),结合语言模型对纠错候选句做评分排序,得出最优纠错结果,从而提高语音交互的准确率,进而增加用户的语音交互感。附图说明图1是本发明实施例1基于垂直领域的语音文本纠错方法的流程图;图2是本发明实施例1中混淆集的生成方法的流程图;图3是本发明实施例1形成纠错候选句的过程示意图;图4是本发明实施例1形成纠错候选句的示例图;图5是实施例2的基于垂直领域的语言文本纠错系统的结构框图;图6是实施例3的电子设备的结构框图。具体实施方式以下将结合附图,对本发明进行更为详细的描述,需要说明的是,下参照附图对本发明进行的描述仅是示意性的,而非限制性的。各个不同实施例之间可以进行相互组合,以构成未在以下描述中示出的其他实施例。实施例1基于垂直领域的语音文本纠错方法,如图1所示,包括如下步骤:将语音转译为语音文本后基于领域词典利用viterbi分词算法进行分词,得到分词结果;根据分词结果确定纠错候选分词集合,通过混淆集获取纠错候选分词交叉组合形成若干纠错候选句,该混淆集由该若干纠错候选句构成;如图2所示,上述混淆集的生成方法为:遍历所述分词结果,并依次输入到混淆词典进行检索,若检索到所述分词结果的纠错候选分词,则通过n-gram语言模型计算所述纠错候选分词交叉组合后的句子评分,如果所述评分不高于原句评分或者与原句评分相比不高于预先定义的阈值,判定为未命中混淆词典,否则将查询到的纠错候选分词加入纠错候选词集合,重复此步骤,直至所有分词结果都遍历完成;而未命中混淆词典的分词结果均转为拼音,将所述拼音依次放入同音词词典中进行检索,以获取所述拼音的同音词、以及根据该拼音的相似拼音检索到的近音词,将检索到的所有同音词和近音词加入纠错候选分词集合,重复此步骤,直至所有未命中混淆词典的分词结果均确定纠错候选分词即完毕,每个分词结果所有纠错候选分词均加入纠错候选分词集合;混淆集即为按照分词结果的在原语音文本中的顺序,交叉组合每个分词的纠错候选分词集合,形成的若干纠错候选句的集合。从混淆集中获取纠错候选句,使用语言模型对所述纠错候选句进行评分,如果所述纠错候选句的评分不高于原句评分或不高于预先定义的阈值,则判定为没有错误,否则得分最高的纠错候选句即为纠错结果;其中,上述领域词典基于垂直领域收集不同专业领域的语料进行标注后构建,而候选分词交叉组合包括所述分词结果的易混淆词、同音词,近音词,音节歧义以及多音词;而候选分词是分词结果中的每个分词依次基于检索混淆词典和同音词词典得到,混淆词典的建立是为用于混淆集之前的语音文本纠错建议,收集常见的易混淆字词建立混淆词典,在纠错时先查该词典,可直接得到部分易错字词的纠错建议,另外,可以动态地将人工给出的纠错建议加入该词典中。该词典的格式为:错误分词纠错建议零晨凌晨而同音词词典为原始词库按照同音词的拼音进行存储的链式hash结构,并且原始词库经过人工标注,主要用以解决近音词以及方言习惯等问题,具体建立过程如下:(1)从原始词库中读取一个词条;(2)获取词条的拼音,如果词条经过人工标注,则获取人工标注的拼音,否则将词条的每一个汉字转化为拼音,得到词条的拼音x;(3)以所述x为自变量,经由hash函数f(x)得到x对应的hash元素,将词条加入到相应的hash元素的链表中;(4)如果关键字源文件还有剩余词条,则返回步骤(1),否则同音词词典建立结束。按照分词结果的在原语音文本中的顺序,交叉组合每个分词的纠错候选分词集合(从混淆集中获取),形成纠错候选句的过程如下:如图3所示,分词结果s=wl,w2···wn;wn表示原句的第n个分词,wnk表示第n个分词的第k个候选项,依次交叉组合形成混淆集,示例如图4所示。本实施例中选用预定的阈值为0.72-0.85,如果低于这个范围误判概率就会比较高,高于这个范围漏判概率会比较高,预定的阈值主要根据语料确定。本实施例中采用n-gram语音模型计算句子概率的公式为:p(w)=p(w1,w2,w3,w4,...wn)=p(w1)p(w2|w1)p(w3|w1,w2)...p(wn|w1...wn-1);其中w表示分词结果,wn表示第n个分词结果。p(wn|w1,…wn-1)表示当之前n-1词是w1,..wn-1的情况下第n个词是wn的概率。当n-gram的n值越大时,对下一个词的约束力就越强,但同时模型就越复杂,问题越多,所以在本发明另一实施例中采用bigram2元语言模型,所述bigram2元语言模型为n-gram语音模型简化后得到,计算句子概率的公式为:p(w)=p(w1)p(w2|w1)...p(wn|wn-1),通过计算最大似然估计(maximumlikelihoodestimate)构造bigram2元语言模型,其计算公式为:p(wn|wn-1)=count(wn,wn-1)/count(wn-1),count(wn-1)表示wn-1在语音文本中出现的次数。在此结合实例1对bigram2元语言模型的使用方法进行说明:对于一个数据集,假设count(wn)统计如下(总共3193个字):我想办理身份证1588387673545而count(wn,wn-1)统计如下:我想办理身份证我2256500想3001360办理000150身份证001733则bigram2语言模型的概率矩阵计算如下:我想办理身份证我0.00130.160.0310想0.07800.350办理0000.22身份证000.320.0055所以,句子“我想办理身份证”成立的概率为:p(我想办理身份证)=p(我)p(想|我)p(办理|想)p(身份证|办理)=(1588/3193)*0.16*0.35*0.22。上述例子中的矩阵存在0值,在语料库数据集中没有出现的词对我们不能就简单地认为他们的概率为0,本发明采用拉普拉斯矩阵平滑,把0值改为1值,设置成该词对出现的概率极小,这样就比较合理。本实施例中采用srilm构建和应用n-gram语言模型:1、首先对大文本数据进行切分split-d-c100mtrainfile.txtfiledir/2、切分文件列表写入filepathls\$(echo$pwd)/filedir/*>filepath3、各文本单词统计词频,合并,去掉低频词,构建词典make-batch-countsfilepath1cat./counts1-order1merge-batch-counts./counts1...(脚本处理count1/*.ngram.gz=>vocab1)4、各文本统计2gram词频,合并make-batch-countsfilepath1cat./counts2-order2merge-batch-counts./counts25、训练语言模型make-big-lm-readcounts3/*.ngrams.gz-vocabvocab1-1mtrain.1m-order3[-interpolate-kndiscount]。实施例2本实施例提供一种对应实施例1的基于垂直领域的语音文本纠错方法的系统,为上述实施例的虚拟装置结构,如图5所示,包括:数据获取模块510,用于获取语音转译的语音文本内容;自然语音处理模块520,将所述语音文本内容基于领域词典进行分词,得到分词结果;混淆集生成模块530,用于确定所述分词结果的纠错候选分词集合,包含纠错候选分词集合交叉组合形成的若干纠错候选句;纠错模块540,用于从所述混淆集生成模块中获取纠错候选句,使用语言模型对所述纠错候选句进行评分排序,确定纠错结果;结果输出模块550,用于输出所述纠错结果。优选地,在混淆集生成模块530中,基于混淆词词典和同音词词典确定所述分词结果的纠错候选分词集合,交叉组合每个分词的纠错候选分词集合形成的若干纠错候选句,即生成混淆集。确定所述分词结果的纠错候选分词集合的步骤为:遍历分词结果,并依次输入到混淆词典进行检索,若命中,则通过n-gram语言模型计算该纠错候选交叉组合的评分,如果该评分不高于原句评分或者与原句评分相比不高于预先定义的阈值,判定为未命中混淆词典,否则将查询到的纠错候选分词加入纠错候选分词集合,重复此步骤,直至所有分词结果都遍历完成;而未命中混淆词典的分词结果均转为拼音,将所述转为拼音的分词结果放入同音词词典中检索,获取所述转为拼音的分词结果的所有同音词以及相似拼音检索到的近音词加入纠错候选分词集合,重复此步骤,直至所有未命中混淆词典的分词结果均加入纠错候选分词集合即完毕。优选地,纠错模块540使用n-gram语言模型对所述纠错候选句进行评分排序,如果所述纠错候选句的评分不高于原句评分或不高于预先定义的阈值,则判定为没有错误,否则得分最高的纠错候选句即为纠错结果。优选地,自然语音处理模块520使用viterbi分词算法进行分词,得到分词结果;实施例3图6为本实施例提供的一种电子设备的结构示意图,如图6所示,该电子设备包括处理器610、存储器620、输入装置630和输出装置640;计算机设备中处理器610的数量可以是一个或多个,图6中以一个处理器610为例;电子设备中的处理器610、存储器620、输入装置630和输出装置640可以通过总线或其他方式连接,图6中以通过总线连接为例。存储器620作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的基于垂直领域的语音文本纠错方法对应的程序指令/模块(例如,基于垂直领域的语音文本纠错系统中的数据获取模块510、自然语音处理模块520、混淆集生成模块530、纠错模块540和结果输出模块550)。处理器610通过运行存储在存储器620中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述实施例1的基于垂直领域的语音文本纠错方法。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器620可进一步包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。输入装置630可用于接收语音文本数据。输出装置640可包括显示屏等显示设备,用于输出纠错结果。实施例4本实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行继电器触点燃弧时间状态检测方法,该方法包括:将语音转译为语音文本后基于领域词典进行分词,得到分词结果;根据所述分词结果确定纠错候选分词集合,所述纠错候选分词集合交叉组合形成若干纠错候选句,所述若干纠错候选句构成混淆集;通过所述混淆集获取纠错候选句,使用语言模型对所述纠错候选句进行评分,如果所述纠错候选句的评分不高于原句评分或不高于预先定义的阈值,则判定为没有错误,否则得分最高的纠错候选句即为纠错结果。当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的基于垂直领域的语音文本纠错方法中的相关操作。通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。值得注意的是,上述基于垂直领域的语音文本纠错系统的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1