900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 语音识别模型分词训练方法 系统 移动终端及存储介质与流程

语音识别模型分词训练方法 系统 移动终端及存储介质与流程

时间:2020-10-11 23:06:18

相关推荐

语音识别模型分词训练方法 系统 移动终端及存储介质与流程

本发明属于语音识别技术领域,尤其涉及一种语音识别模型分词训练方法、系统、移动终端及存储介质。

背景技术:

在中文中,字是最小的单位,但是很多时候,字与字组合成的词具有更强的语义,因此,在大多数应用中,将词看做一个整体是更为合理的,但是中文中并没有像英文中用于语义分割的空格,这就导致了计算机无法区分字与词、词与词之间的边界,因此催生了中文分词这一研究领域。中文分词是目前在中文搜索引擎、中文自然语言处理包括汉语语音识别语言模型建模等领域的必备处理步骤。

中文分词方法可分为基于规则的方法、基于传统统计机器学习的方法、基于语义的方法以及基于理解的方法。基于规则的方法主要是最大匹配方法,最大匹配方法又可进一步细分为正向最大匹配方法和逆向最大匹配方法。基于统计的方法是一种使用传统机器学习中的马尔科夫模型、最大熵模型或者条件随机场模型,本质上是字串或者词串标注学习。基于语义的方法引入了语义分析,主要包括扩充转移网络法、邻接约束法、综合匹配法、后缀分词法、特征词库法、矩阵约束法等。基于理解的方法通过让计算机模拟人对句子的理解达到识别词的的效果,主要分为基于专家系统的分词法和基于神经网络的分词法。

另一方面,因为中文字典规模大,字与字组成词的组合是字典规模的指数级,即使有很多字与字不会组合成词,但规模仍是指数级的,因此,不存在一种方法穷举出所有的词,并且待分词的文本是千变万化的,文本中总会存在词典中没有词(集外词,oov),这就需要分词算法能够根据文本组合出新词。

目前使用最广泛效果最好的分词方法是基于条件随机场的方法。基于条件随机场的分词方法虽然取得了目前最好的分词效果,也能在一定程度上解决集外词的问题,但是该方法使用过程中,训练文本需要进行分词,若采用人工分词,因为文本量级大,会非常耗时;而若采用已有分词算法,又会将已有分词算法的不足引入到该分词算法中,继而降低了后续语音识别模型的识别效率。

技术实现要素:

本发明实施例要解决的技术问题是如何在不使用外部资源的情况下,尽量减少人工参与,又能提升分词性能从而进一步提升语音识别语言模型的性能。

本发明实施例是这样实现的,一种语音识别模型分词训练方法,所述方法包括:

收集本地存储的文本语料,设置组词总数,并分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;

将所述组词词典与本地预存储的原始词典进行合并,并根据合并后的词典对所述文本语料进行分词,以得到所述分词语料;

根据所述分词语料对语音识别模型进行训练。

更进一步的,所述分别计算所述文本语料中每个当前文字与下一文字之间的组合频数的步骤之前,所述方法还包括:

对所述文本语料进行特殊字符识别,并根据识别结果进行字符删除;

对所述文本语料进行标点识别,并根据识别结果将识别到的标点符号转为为换行符;

对所述文本语料进行数字识别,并根据识别结果将数字字符串转换为对应的文字字符串。

更进一步的,所述将所述组词词典与本地预存储的原始词典进行合并的步骤包括:

获取所述原始词典的原始格式,并将所述组词词典转换为所述原始格式;

将所述组词词典与所述原始词典进行合并,将合并后的词典进行文字排序,并根据排序结果进行词组去重。

更进一步的,所述根据所述分词语料对语音识别模型进行训练的步骤包括:

在所述语音识别模型中,采用三元文法对所述分词语料进行语言模型训练。

更进一步的,所述方法还包括:

当判断到所述文本语料中的所述组词频数小于第二频数阈值时,发出组词提示,以使用户进行语料补充。

本发明实施例的另一目的在于提供一种语音识别模型分词训练系统,所述系统包括:

频数计算模块,用于收集本地存储的文本语料,设置组词总数,并分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

组词控制模块,用于当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;

词典合并模块,用于将所述组词词典与本地预存储的原始词典进行合并,并根据合并后的词典对所述文本语料进行分词,以得到所述分词语料;

分词训练模块,用于根据所述分词语料对语音识别模型进行训练。

更进一步的,所述语音识别模型分词训练系统还包括:

语料优化模块,用于对所述文本语料进行特殊字符识别,并根据识别结果进行字符删除;对所述文本语料进行标点识别,并根据识别结果将识别到的标点符号转为为换行符;对所述文本语料进行数字识别,并根据识别结果将数字字符串转换为对应的文字字符串。

更进一步的,所述词典合并模块还用于:

获取所述原始词典的原始格式,并将所述组词词典转换为所述原始格式;

将所述组词词典与所述原始词典进行合并,将合并后的词典进行文字排序,并根据排序结果进行词组去重。

本发明实施例的另一目的在于提供一种移动终端,包括存储设备以及处理器,所述存储设备用于存储计算机程序,所述处理器运行所述计算机程序以使所述移动终端执行上述的语音识别模型分词训练方法。

本发明实施例的另一目的在于提供一种存储介质,其存储有上述的移动终端中所使用的计算机程序,该计算机程序被处理器执行时实现上述的语音识别模型分词训练方法的步骤。

本发明实施例,通过构造所述组词词典对原始词典进行扩充,大大缓解了集外词的问题,避免了识别结果中出现大量无法识别的词,使得最终训练出来的语音识别模型无论是在测试集还是使用测试时均具有识别性能高的优点,且本发明实施例不需要额外收集用于子串标注学习的训练语料,也不需要事先进行人工分词或者采用其他分词算法进行分词,减少了人工和其他分词算法带来的影响。

附图说明

图1是本发明第一实施例提供的语音识别模型分词训练方法的流程图;

图2是本发明第二实施例提供的语音识别模型分词训练方法的流程图;

图3是本发明第三实施例提供的语音识别模型分词训练系统的结构示意图;

图4是本发明第四实施例提供的移动终端的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

现有的分词方法使用过程中,训练文本需要进行分词,若采用人工分词,因为文本量级大,会非常耗时;而若采用已有分词算法,又会将已有分词算法的不足引入到该分词算法中,继而降低了后续语音识别模型的识别效率,因此,本发明的目的在于通过构造所述组词词典对原始词典进行扩充,使得不需要额外收集用于子串标注学习的训练语料,也不需要事先进行人工分词或者采用其他分词算法进行分词,减少了人工和其他分词算法带来的影响。

实施例一

请参阅图1,是本发明第一实施例提供的语音识别模型分词训练方法的流程图,包括步骤:

步骤s10,收集本地存储的文本语料,设置组词总数,并分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

其中,优选的,由于中文字典字数多,即使是常用字也有4000字以上,这些字组合成的词的数量是指数级增长的,因此,就需要收集大量的、主题覆盖面广的文本语料,以使通过该文本语料训练出来的基于n元文法的语言模型才是可信的,否则会有很大的偏见,泛化能力差,导致最终语音识别效果无法满足要求;

具体的,该步骤中可以通过网络爬虫、收集来源数据集等方式收集文本语料,使用工具可以为python3.6和bash;

步骤s20,当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;

其中,该步骤中,通过统计每个字后面出现某个字的频数,该过程是一个递归的过程,对于已经计算过的同时出现的频数足够大的组合,把组合标记为一整体,然后重新计算后面出现某个字或组合出现的频数,因此,最终得到的词的长度是不限的。该步骤中有一原则,即词数最少原则,也即如果若干个组合,组合成的长串频数也够高,则将这些组合进一步合并成一个更长的组合作为新词;

步骤s30,将所述组词词典与本地预存储的原始词典进行合并,并根据合并后的词典对所述文本语料进行分词,以得到所述分词语料;

其中,可以通过采用分词工具的方式对所述文本语料进行分词,即可以通过使用jieba分词工具,在该工具中使用合并后的词典,对所述文本语料进行分词,以得到所述分词语料;

具体的,该步骤保留了原始经过人工精心采集构建的词典,从而避免了纯数据驱动所构建的词典因为语料覆盖面不够而引入的偏见,从而避免泛化能力差的问题;

步骤s40,根据所述分词语料对语音识别模型进行训练;

其中,可以采用二元文法或三元文法的方式对所述分词语料进行语言模型训练;

本实施例,可以充分利用大量的采集好的用于训练语言模型的语料,采用基于统计的方法,构造另外一套词典,而且只要语料覆盖的主题足够广,甚至可以提取出网络流行语,这对于语音识别是十分有利的。将这两种词典进行合并,则既能保留人工构建的词典的覆盖面广的优点,又可以根据文本语料提取出词典中不可能出现的词,例如网络流行语和领域专有名词,从而无论是通用场景的的语音识别还是特定领域的语音识别都大有裨益,通过构造所述组词词典对原始词典进行扩充,大大缓解了集外词的问题,避免了识别结果中出现大量无法识别的词,使得最终训练出来的语音识别模型无论是在测试集还是使用测试时均具有识别性能高的优点,且本发明实施例不需要额外收集用于子串标注学习的训练语料,也不需要事先进行人工分词或者采用其他分词算法进行分词,减少了人工和其他分词算法带来的影响。

实施例二

请参阅图2,是本发明第二实施例提供的语音识别模型分词训练方法的流程图,包括步骤:

步骤s11,收集本地存储的文本语料,对所述文本语料进行特殊字符识别,并根据识别结果进行字符删除;

其中,收集得到的所述文本语料中可能存储有特征字符,但由于特殊字符在中文语音中一般是没有的,为了后续保障后续字与字之间组合计算的准确性,需要去除特殊字符,因此,在进行后续的组词步骤之前,通过进行特殊字符识别,以使提高所述语音识别模型分词训练方法的准确性;

步骤s21,对所述文本语料进行标点识别,并根据识别结果将识别到的标点符号转为为换行符;

可以理解的,由于标点符号在中文语音中一般是没有的,为了后续保障后续字与字之间组合计算的准确性,需要去除标点符号,以使进一步提高了所述语音识别模型分词训练方法的准确性;

步骤s31,对所述文本语料进行数字识别,并根据识别结果将数字字符串转换为对应的文字字符串;

其中,由于在中文中,可以直接读成二零一九,也可以读成两千零一十九和二千零一十九,因此,需要在不同的语境中进行区别对待,将数字字符串转换成对应的汉字字符串是有必要的,进而更进一步的提高了所述语音识别模型分词训练方法的准确性;

步骤s41,分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

步骤s51,当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;

其中,由于中文字典字数多,即使是常用字也有4000字以上,这些字组合成的词的数量是指数级增长的,因此,就需要收集大量的、主题覆盖面广的文本语料,以使通过该文本语料训练出来的基于n元文法的语言模型才是可信的,否则会有很大的偏见,泛化能力差,导致最终语音识别效果无法满足要求;

优选的,该步骤中,当判断到所述文本语料中的所述组词频数小于第二频数阈值时,发出组词提示,以使用户进行语料补充,具体的,所述第二频数阈值可以根据用户需求进行参数值的设置,该组词提示可以采用语音提示、短信提示或图像提示的方式以提醒用户;

步骤s61,获取所述原始词典的原始格式,并将所述组词词典转换为所述原始格式;

步骤s71,将所述组词词典与所述原始词典进行合并,将合并后的词典进行文字排序,并根据排序结果进行词组去重;

其中,该词组去重是将所述组词词典与所述原始词典中重读的词进行删除,且该步骤中,通过采用文字排序去重的方式,有效的提高了去重效率;

步骤s81,根据合并后的词典对所述文本语料进行分词,以得到所述分词语料,在所述语音识别模型中,采用三元文法对所述分词语料进行语言模型训练;

具体的,该步骤中,所述采用三元文法对所述分词语料进行语言模型训练的具体步骤为:

(1)统计词典中每个词在语料中出现的频数,除以总词数就是每个词出现的概率;

(2)统计每两个词一起出现的频数,然后除以其中一个词出现的频数,就可以得到在给定这个词的情况下,出现另一个词的概率,这就是二元文法(bigram);

(3)同理可统计出给定某个词的情况下,同时出现另外两个词的概率,就可得到每个词的三元文法模型;

(4)因为一方面语料不可能无穷大,另一方面语料也不可能完全覆盖所有可能的词,因此常常出现某个词的三元文法概率过低甚至是零的情况,这就需要用到平滑算法,将概率高的“匀”一点概率给概率低的,或者将这些概率低的三元文法模型退化到更低阶的二元文法甚至是一元文法(unigram)从而避免某些是合理的词组合却不能识别出来的情况;

本实施例,通过构造所述组词词典对原始词典进行扩充,大大缓解了集外词的问题,避免了识别结果中出现大量无法识别的词,使得最终训练出来的语音识别模型无论是在测试集还是使用测试时均具有识别性能高的优点,且本发明实施例不需要额外收集用于子串标注学习的训练语料,也不需要事先进行人工分词或者采用其他分词算法进行分词,减少了人工和其他分词算法带来的影响。

实施例三

请参阅图3,是本发明第三实施例提供的语音识别模型分词训练系统100的结构示意图,包括:频数计算模块10、组词控制模块11、词典合并模块12和分词训练模块13,其中:

频数计算模块10,用于收集本地存储的文本语料,设置组词总数,并分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

组词控制模块11,用于当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典。

优选的,所述组词控制模块11还用于:当判断到所述文本语料中的所述组词频数小于第二频数阈值时,发出组词提示,以使用户进行语料补充。

词典合并模块12,用于将所述组词词典与本地预存储的原始词典进行合并,并根据合并后的词典对所述文本语料进行分词,以得到所述分词语料;

其中,所述词典合并模块12还用于:获取所述原始词典的原始格式,并将所述组词词典转换为所述原始格式;将所述组词词典与所述原始词典进行合并,将合并后的词典进行文字排序,并根据排序结果进行词组去重。

分词训练模块13,用于根据所述分词语料对语音识别模型进行训练。

此外,所述分词训练模块13还用于:在所述语音识别模型中,采用三元文法对所述分词语料进行语言模型训练。

本实施例中,所述语音识别模型分词训练系统100还包括:

语料优化模块14,用于对所述文本语料进行特殊字符识别,并根据识别结果进行字符删除;对所述文本语料进行标点识别,并根据识别结果将识别到的标点符号转为为换行符;对所述文本语料进行数字识别,并根据识别结果将数字字符串转换为对应的文字字符串。

优选的,所述语音识别模型分词训练系统100还包括:

阈值调整模块15,用于当当前文字出现频数大于第一频数阈值时,增大第二频数阈值,当当前文字出现频数低于第一频数阈值时,减小第二频数阈值。

本实施例,通过构造所述组词词典对原始词典进行扩充,大大缓解了集外词的问题,避免了识别结果中出现大量无法识别的词,使得最终训练出来的语音识别模型无论是在测试集还是使用测试时均具有识别性能高的优点,且本发明实施例不需要额外收集用于子串标注学习的训练语料,也不需要事先进行人工分词或者采用其他分词算法进行分词,减少了人工和其他分词算法带来的影响。

实施例四

请参阅图4,是本发明第四实施例提供的移动终端101,包括存储设备以及处理器,所述存储设备用于存储计算机程序,所述处理器运行所述计算机程序以使所述移动终端101执行上述的语音识别模型分词训练方法。

本实施例还提供了一种存储介质,其上存储有上述移动终端101中所使用的计算机程序,该程序在执行时,包括如下步骤:

收集本地存储的文本语料,设置组词总数,并分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;

将所述组词词典与本地预存储的原始词典进行合并,并根据合并后的词典对所述文本语料进行分词,以得到所述分词语料;

根据所述分词语料对语音识别模型进行训练。所述的存储介质,如:rom/ram、磁碟、光盘等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元或模块完成,即将存储装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施方式中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。

本领域技术人员可以理解,图3中示出的组成结构并不构成对本发明的语音识别模型分词训练系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,而图1-2中的语音识别模型分词训练方法亦采用图3中所示的更多或更少的部件,或者组合某些部件,或者不同的部件布置来实现。本发明所称的单元、模块等是指一种能够被所述目标语音识别模型分词训练系统中的处理器(图未示)所执行并功能够完成特定功能的一系列计算机程序,其均可存储于所述目标语音识别模型分词训练系统的存储设备(图未示)内。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

技术特征:

1.一种语音识别模型分词训练方法,其特征在于,所述方法包括:

收集本地存储的文本语料,设置组词总数,并分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;

将所述组词词典与本地预存储的原始词典进行合并,并根据合并后的词典对所述文本语料进行分词,以得到所述分词语料;

根据所述分词语料对语音识别模型进行训练。

2.如权利要求1所述的语音识别模型分词训练方法,其特征在于,所述分别计算所述文本语料中每个当前文字与下一文字之间的组合频数的步骤之前,所述方法还包括:

对所述文本语料进行特殊字符识别,并根据识别结果进行字符删除;

对所述文本语料进行标点识别,并根据识别结果将识别到的标点符号转为为换行符;

对所述文本语料进行数字识别,并根据识别结果将数字字符串转换为对应的文字字符串。

3.如权利要求1所述的语音识别模型分词训练方法,其特征在于,所述将所述组词词典与本地预存储的原始词典进行合并的步骤包括:

获取所述原始词典的原始格式,并将所述组词词典转换为所述原始格式;

将所述组词词典与所述原始词典进行合并,将合并后的词典进行文字排序,并根据排序结果进行词组去重。

4.如权利要求1所述的语音识别模型分词训练方法,其特征在于,所述根据所述分词语料对语音识别模型进行训练的步骤包括:

在所述语音识别模型中,采用三元文法对所述分词语料进行语言模型训练。

5.如权利要求1所述的语音识别模型分词训练方法,其特征在于,所述方法还包括:

当判断到所述文本语料中的所述组词频数小于第二频数阈值时,发出组词提示,以使用户进行语料补充。

6.一种语音识别模型分词训练系统,其特征在于,所述系统包括:

频数计算模块,用于收集本地存储的文本语料,设置组词总数,并分别计算所述文本语料中每个当前文字与下一文字之间的组合频数;

组词控制模块,用于当判断到所述组合频数大于第一频数阈值时,将所述当前文字与所述下一文字进行组词,并将组词后的词标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;

词典合并模块,用于将所述组词词典与本地预存储的原始词典进行合并,并根据合并后的词典对所述文本语料进行分词,以得到所述分词语料;

分词训练模块,用于根据所述分词语料对语音识别模型进行训练。

7.如权利要求6所述的语音识别模型分词训练系统,其特征在于,所述语音识别模型分词训练系统还包括:

语料优化模块,用于对所述文本语料进行特殊字符识别,并根据识别结果进行字符删除;对所述文本语料进行标点识别,并根据识别结果将识别到的标点符号转为为换行符;对所述文本语料进行数字识别,并根据识别结果将数字字符串转换为对应的文字字符串。

8.如权利要求6所述的语音识别模型分词训练系统,其特征在于,所述词典合并模块还用于:

获取所述原始词典的原始格式,并将所述组词词典转换为所述原始格式;

将所述组词词典与所述原始词典进行合并,将合并后的词典进行文字排序,并根据排序结果进行词组去重。

9.一种移动终端,其特征在于,包括存储设备以及处理器,所述存储设备用于存储计算机程序,所述处理器运行所述计算机程序以使所述移动终端执行根据权利要求1至5任一项所述的语音识别模型分词训练方法。

10.一种存储介质,其特征在于,其存储有权利要求9所述的移动终端中所使用的计算机程序,该计算机程序被处理器执行时实现权利要求1至5任一项所述的语音识别模型分词训练方法的步骤。

技术总结

本发明适用于语音识别技术领域,提供了一种语音识别模型分词训练方法、系统、移动终端及存储介质,该方法包括:收集本地存储的文本语料,设置组词总数,计算每个当前文字与下一文字之间的组合频数;当判断到组合频数大于第一频数阈值时,将当前文字与下一文字进行组词并标记为一个整体,直至最长组合频数小于等于第二频数阈值,停止组词,以得到组词词典;将组词词典与原始词典进行合并,并根据合并后的词典对文本语料进行分词,以得到分词语料;根据分词语料对语音识别模型进行训练。本发明通过构造组词词典对原始词典进行扩充,使得不需要额外收集用于子串标注学习的训练语料,也不需要事先进行人工分词或者采用其他分词算法进行分词。

技术研发人员:徐敏;李稀敏;肖龙源;蔡振华;刘晓葳;王静

受保护的技术使用者:厦门快商通科技股份有限公司

技术研发日:.09.18

技术公布日:.02.28

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。