低资源多语言的语音识别模型、语音识别方法与流程

文档序号:19073691发布日期:2019-11-08 21:06阅读:524来源:国知局
低资源多语言的语音识别模型、语音识别方法与流程

本发明属于语音识别领域,具体涉及一种低资源多语言的语音识别模型、语音识别方法。



背景技术:

随着智能设备等创新应用的推广,特别是智能手机的普及,语音识别作为人机交互的一个重要入口,现已被广泛应用于各类场景,例如语音输入、语音搜索、语音翻译等等。不同语种混合的现象在人们的日常交流中十分普遍,现有的语音识别系统对处理多语言混用和多方言混用情况下的语音识别存在诸多困难,目前尚未得到很好的解决。此外,目前的语音识别系统基本上仅限于世界上使用最广泛的十几种语言,例如英语、汉语等。这些语言拥有庞大的使用人群,因此可以比较方便的采集语音数据并建立语音识别系统。相比而言,对于那些小语种语言,由于使用小语种的人数有限,数据采集和标注工作十分困难,语音识别系统的建立受到了很大的限制,基于低资源的语音识别技术还远远没有达到实用的水平。



技术实现要素:

为了解决现有技术中的上述问题,即为了解决多语言混用状态下小语种语言识别准确度低的问题,本发明的第一方面,提出了一种低资源多语言的语音识别模型,该语音识别模型为端到端的语音识别模型,其特征在于,该模型中子词词表为多语言子词词表,所述多语言子词词表为设定低资源语种的标注文本与设定高资源语种的标注文本合并起来采用bpe算法共同生成多语言的符号词表。

在一些优选实施方式中,所述语音识别模型的训练数据为设定低资源语种的伪标注训练数据和设定高资源语种的训练数据的合并数据;

所述设定低资源语种的伪标注训练数据,其获取方法为:

步骤a100,获取基于低资源语种的标注数据训练得到的gmm-hmm语音识别模型,然后基于该训练好的gmm-hmm语音识别模型对所述低资源语种的标注数据进行强制对齐,通过对齐信息找到每个子词对应的语音特征序列片段,获取该低资源语种的子词-语音特征序列片段映射关系;

步骤a200,对待标注的低资源语种的文本数据,通过步骤a100得到的所述子词-语音特征序列片段映射关系,获得所述待标注的低资源语种的文本数据中各子词对应的发音序列片段,采用拼接方式得到所述待标注的低资源语种的文本数据的语音特征序列;

步骤a300,将步骤a200中所述待标注的低资源语种的文本数据及对应的语音特征序列作为伪标注训练数据。

在一些优选实施方式中,所述多语言子词词表通过bpe算法生成,其生成方法为:

步骤b100,对多种语言的标注文本合集,采用字的词表对符号词表进行初始化,并且每个词采用一组带有特殊结束符的字序列来表示;

步骤b200,对每个相邻符号对进行频次统计,将最高频次的符号对合并起来用新的符号代替,迭代执行该步骤直至达到预设的合并次数为止;

步骤b300,将步骤b200中每次合并产生的新字符对应的原始字符作为子词增入所述符号词表,得到所述多语言子词词表。

在一些优选实施方式中,所述语音识别模型包括multi-cnn-transformer模型、multi-cnn-transformer-b模型、multi-cnn-transformer-e模型、multi-cnn-transformer-e2模型中的一种或多种。

在一些优选实施方式中,当所述语音识别模型包括multi-cnn-transformer模型、multi-cnn-transformer-b模型、multi-cnn-transformer-e模型、multi-cnn-transformer-e2模型时,根据待识别数据和训练样本进行模型的选择:

所述语音识别模型的训练样本和待识别数据中语种信息均未知时,采用multi-cnn-transformer模型;

所述语音识别模型的训练样本语种信息已知、待识别数据语种信息未知时,采用multi-cnn-transformer-b模型,或者multi-cnn-transformer-e模型;

所述语音识别模型的训练样本和待识别数据中语种信息均已知时,采用multi-cnn-transformer-e2模型。

本发明的第二方面,提出了一种低资源多语言的语音识别方法,该方法包括以下步骤:

步骤c100,对输入语音进行静音切除,获取语音片段序列;

步骤c200,对语音片段序列进行特征提取,获取设定特征维度的初始特征向量;

步骤c300,对所述初始特征向量进行拼帧跳帧预处理,作为语音识别模型的输入特征向量;

步骤c400,通过所述语音识别模型,识别所述输入特征向量对应的文本信息;

其中,

所述语音识别模型为上述的低资源多语言的语音识别模型。

在一些优选实施方式中,步骤c300中拼帧跳帧预处理为拼三帧跳三帧的预处理方法。

在一些优选实施方式中,步骤c200中所述设定特征维度的特征向量,为特征维度为80维的特征向量。

本发明的第三方面,提出了一种低资源多语言的语音识别系统,该系统包括输入语音预处理单元、特征向量提取单元、特征向量预处理单元、语音识别单元;

所述输入语音预处理单元,配置为对输入语音进行静音切除,获取语音片段序列;

所述特征向量提取单元,配置为对语音片段序列进行特征提取,获取设定特征维度的初始特征向量;

所述特征向量预处理单元,配置为对所述初始特征向量进行拼帧跳帧预处理,得到语音识别模型的输入特征向量;

所述语音识别单元,配置为通过所述语音识别模型,识别所述输入特征向量对应的文本信息;

所述语音识别模型为上述的低资源多语言的语音识别模型。

本发明的第四方面,提出了一种存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现上述的低资源多语言的语音识别方法。

本发明的第五方面,提出了一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的低资源多语言的语音识别方法。

本发明的有益效果:

本发明低资源多语言的语音识别模型,基于所构建的多语言的子词词表,取消了对发音词典的依赖,这对缺乏发音词典的小语种至关重要;将语种识别和语音识别两个任务进行统一,不再需要语种识别和语种切分等预处理,能够同时实现多语言语音识别任务;所述语音识别模型采用端到端框架,不再需要传统混合模型框架的状态绑定以及决策树聚类等流程,极大简化了多语言语音识别任务的流程。

针对资源受限语言的训练数据不足的问题,采用gmm-hmm生成伪标注数据的方式弥补低资源语言在语言模型上训练不足的问题,采用生成伪标注数据的方式扩展所述低资源语音数据,提高了语音识别模型对低资源语种语音识别的效果。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本发明一种实施例中的低资源语种的伪标注训练数据方法示意图;

图2是本发明一种实施例中的多语言子词词表获取方法流程示意图;

图3是本发明一种实施例中的multi-cnn-transformer模型的框架示意图;

图4是本发明一种实施例中的multi-cnn-transformer模型、multi-cnn-transformer-b模型、multi-cnn-transformer-e模型、multi-cnn-transformer-e2模型的解码端区别示意图;

图5是本发明一种实施例的低资源多语言的语音识别方法流程示意图。

具体实施方式

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

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

本发明的一种实施例的低资源多语言的语音识别模型,该语音识别模型为端到端的语音识别模型,该模型中子词词表为多语言子词词表,所述多语言子词词表为设定低资源语种的标注文本与设定高资源语种的标注文本合并起来采用bpe算法共同生成多语言的符号词表。

本实施例中语音识别模型的训练数据为设定低资源语种的伪标注训练数据和设定高资源语种的训练数据合并数据。

设定低资源语种的伪标注训练数据,如图1所示,其获取方法为:

步骤a100,获取基于低资源语种的标注数据训练得到的gmm-hmm语音识别模型,然后基于该训练好的gmm-hmm语音识别模型对所述低资源语种的标注数据进行强制对齐,通过对齐信息找到每个子词对应的语音特征序列片段,获取该低资源语种的子词-语音特征序列片段映射关系;

步骤a200,对待标注的低资源语种的文本数据,通过步骤a100得到的所述子词-语音特征序列片段映射关系,获得所述待标注的低资源语种的文本数据中各子词对应的发音序列片段,采用拼接方式得到所述待标注的低资源语种的文本数据的语音特征序列;

步骤a300,将步骤a200中所述待标注的低资源语种的文本数据及对应的语音特征序列作为伪标注训练数据。

本实施例中,步骤a100中低资源语种的标注数据包括语音及其对应的文本信息,通过训练好的gmm-hmm语音识别模型将文本信息中每个子词与语音中的对应片段进行强制对齐,从而可以获取每个子词对应的语音片段。

本实施例中的端到端的语音识别模型优选为基于自注意力机制的端到端模型multi-cnn-transformer语音识别模型,该模型采用了自注意力机制。当然,其他端到端的语音识别模型也适用本发明方法。

本实施例中,多语言子词词表中对多种语言的标注文本合并起来采用bpe算法共同生成多语言的符号词表,而不是直接合并每个语言的符号词表。因此相同的子词可以在不同语言之间共享,这有利于同一语系下的多语言建模。例如:德语单词(中文意思是大学建筑)被编码成了子词序列“univer@@sit@@ts@@ge@@b@@u”(每个单词由bpe算法编码出的最后一个子词没有@@符号,标识该单词的结束);英语单词“university”被编码成了子词序列“univer@@sit@@y”,其中有两个子词“univer@@”和“sit@@”在这两种语言之间共享。从这里可以看出,这种子词建模单元可以起到类似通用音子集的作用,只不过它是从多语言训练集的标注文本中迭代生成的,可以在多语言之间共享,不需要依赖任何发音词典。如果不同语言中包含相同字的情况,例如汉语和日语就包含许多相同的字,这种建模方式也会统一生成对应子词,并不对语言加以区分,此时需要借助解码器端的语言模型进行约束来解码出对应语言的文本。

多语言子词词表通过bpe(bytepairencoder,字节对编码)算法生成,如图2所示,其生成方法为:

步骤b100,对多种语言的标注文本合集,采用字的词表对符号词表进行初始化,并且每个词采用一组带有特殊结束符的字序列来表示;

步骤b200,对每个相邻符号对进行频次统计,将最高频次的符号对合并起来用新的符号代替,迭代执行该步骤直至达到预设的合并次数为止。

步骤b300,将步骤b200中每次合并产生的新字符对应的原始字符作为子词增入所述符号词表,得到所述多语言子词词表。

步骤b200中预设的合并次数为超参数,需要根据训练数据的数据量进行设定,在一些优选实施方式中,一般预设的合并次数可以在区间[5000,10000]中选定。

本实施例中的bpe算法,可以具体参考r.sennrich,b.haddow,anda.birch,neuralmachinetranslationofrarewordswithsubwordunits,arxivpreprintarxiv:1508.07909,2015,此处不再展开描述。

所述语音识别模型包括multi-cnn-transformer模型、multi-cnn-transformer-b模型、multi-cnn-transformer-e模型、multi-cnn-transformer-e2模型中的一种或多种。

multi-cnn-transformer-b模型、multi-cnn-transformer-e模型、multi-cnn-transformer-e2模型是multi-cnn-transformer模型的变种,multi-cnn-transformer模型的框架示意图如图3所示,整体采用基于注意力机制的框架,它的编码器和解码器采用自注意力网络和位置前馈网络。对于编码器的输入,这里采用一个仿射变换层和层归一化将语音输入的特征维度(初始特征向量)转换成模型维度(输入特征向量),基于位置编码,采用cnn网络对输入特征向量进行长度压缩和编码(即图3中cnn特征压缩和编码);对于解码器,基于位置编码以及基于子词词表获取的子词编码向量进行解码,并采用一个softmax输出层作为多语言子词输出单元输出多语言子词。

multi-cnn-transformer-b模型、multi-cnn-transformer-e模型、multi-cnn-transformer-e2模型是multi-cnn-transformer模型的变种。它们之间的区别之处如图4所示,主要在于解码端是否使用了语种标签信息。图4中,编码器中x1、x2…xu为语音特征输入,h1、h2…hu为编码器的隐层输出向量序列,解码器中小方框中上部字符为解码器的子词输入,下部字符为解码器的子词输出,以amazing的子词拆分“ama@@z@@ing”为例进行各模型的区别说明:multi-cnn-transformer模型在训练和测试时,解码器端都没有使用任何语种标签信息,如图4第一幅图所示。multi-cnn-transformer-b模型(图4第二幅图)和multi-cnn-transformer-e模型(图4第三幅图)在训练时使用语种标签信息,但是测试时不使用语种标签信息。例如:multi-transformer-b采用<s>作为解码开始符,之后模型首先会预测一个语种标签<s_en>,然后才依次进行常规解码,在训练时语种标签<s_en>由训练样本给出,但是测试时,这里的语种标签<s_en>由模型自行解码得到,因此multi-transformer-b在测试时不需要预先知道语种标签信息;multi-cnn-transformer-e与multi-transformer-b的区别在于预测语种标签的位置,multi-cnn-transformer-e是解码结束时才预测该句的语种标签,multi-cnn-transformer-b是解码开始时先预测该句的语种标签。multi-cnn-transformer-b2模型(图4第四幅图)在训练时和测试时都使用语种标签信息。例如:图4中multi-transformer-b2模型直接采用设定的语种标签<s_en>作为解码开始符,这就需要在测试时提前知道待识别语音的语种信息,之后模型不再需要预测语种标签,而是直接进行常规解码。

本实施例中优选采用上述四种模型共同构建语音识别模型,可以根据不同的应用场景进行选择或者切换:

语音识别模型的训练样本和待识别数据中语种信息均未知时,采用multi-cnn-transformer模型;

语音识别模型的训练样本语种信息已知、待识别数据语种信息未知时,采用multi-cnn-transformer-b模型,或者multi-cnn-transformer-e模型;

语音识别模型的训练样本和待识别数据中语种信息均已知时,采用multi-cnn-transformer-e2模型。

上述四个模型可以根据不同的训练样本进行分别训练,并针对不同的待识别数据进行选择和切换。

本发明第二实施例的低资源多语言的语音识别方法,如图5所示,该方法包括以下步骤:

步骤c100,对输入语音进行静音切除,获取语音片段序列。

通过本步骤的静音切除处理(voiceactivitydetection,vad),从语音信号流里识别和消除长时间的静音,得到纯净的语音片段,以达到在不降低业务质量的情况下节省资源的作用。

步骤c200,对语音片段序列进行特征提取,获取设定特征维度的初始特征向量。

本实施例中,设定特征维度的初始特征向量采用80维的log-mel滤波器(log-melilterbank)特征,窗长25ms,帧移10ms。

步骤c300,对所述初始特征向量进行拼帧跳帧预处理,作为语音识别模型的输入特征向量。

在一些优选实施方式中,所述拼帧跳帧预处理采用拼三帧跳三帧的预处理方式。

步骤c400,通过所述语音识别模型,识别所述输入特征向量对应的文本信息。

所述语音识别模型可以采用上述的低资源多语言的语音识别模型。

本发明第三实施例的一种低资源多语言的语音识别系统,包括输入语音预处理单元、特征向量提取单元、特征向量预处理单元、语音识别单元;

所述输入语音预处理单元,配置为对输入语音进行静音切除,获取语音片段序列;

所述特征向量提取单元,配置为对语音片段序列进行特征提取,获取设定特征维度的初始特征向量;

所述特征向量预处理单元,配置为对所述初始特征向量进行拼帧跳帧预处理,得到语音识别模型的输入特征向量;

所述语音识别单元,配置为通过所述语音识别模型,识别所述输入特征向量对应的文本信息;

所述语音识别模型为上述的低资源多语言的语音识别模型。

所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。

需要说明的是,上述实施例提供的低资源多语言的语音识别系统,仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块来完成,即将本发明实施例中的模块或者步骤再分解或者组合,例如,上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块,以完成以上描述的全部或者部分功能。对于本发明实施例中涉及的模块、步骤的名称,仅仅是为了区分各个模块或者步骤,不视为对本发明的不当限定。

本发明第四实施例的一种存储装置,其中存储有多条程序,所述程序适于由处理器加载并执行以实现上述的低资源多语言的语音识别方法。

本发明第五实施例的一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的低资源多语言的语音识别方法。

所属技术领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的存储装置、处理装置的具体工作过程及有关说明,可以参考前述方法实施例中的对应过程,在此不再赘述。

本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的模块、方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,软件模块、方法步骤对应的程序可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

术语“第一”、“第二”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。

术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。

至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。

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