CN112863497A - 语音识别的方法及装置、电子设备和计算机可读存储介质 - Google Patents
语音识别的方法及装置、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN112863497A CN112863497A CN202011618042.3A CN202011618042A CN112863497A CN 112863497 A CN112863497 A CN 112863497A CN 202011618042 A CN202011618042 A CN 202011618042A CN 112863497 A CN112863497 A CN 112863497A
- Authority
- CN
- China
- Prior art keywords
- neural network
- feature sequence
- pooling
- frame skipping
- pooling operation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000013528 artificial neural network Methods 0.000 claims abstract description 132
- 238000011176 pooling Methods 0.000 claims abstract description 106
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims description 30
- 238000004422 calculation algorithm Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 17
- 230000036961 partial effect Effects 0.000 claims description 14
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 3
- 230000003247 decreasing effect Effects 0.000 abstract description 2
- 230000002829 reductive effect Effects 0.000 description 28
- 238000004891 communication Methods 0.000 description 24
- 230000001133 acceleration Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000003062 neural network model Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000009469 supplementation Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241001672694 Citrus reticulata Species 0.000 description 1
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Telephonic Communication Services (AREA)
Abstract
本公开的实施例提供了语音识别的方法及装置、计算机可读存储介质和电子设备。该方法包括:获取语音数据的原始音频特征序列;根据预设的跳帧数,对所述原始音频特征序列进行跳帧处理,得到跳帧后的特征序列;将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果;其中,所述神经网络中包括音频特征的池化操作。本公开技术方案能够实现加块识别效率,在减少计算量的基础上,保持识别准确率不下降。
Description
技术领域
本公开涉及计算机技术领域,特别涉及语音识别的方法及装置、电子设备和计算机可读存储介质。
背景技术
目前,语音识别的场景越来越多,而且场景对语音识别的速度要求也越来越高。其中,当前加速语音识别系统(automatic speech recognition,ASR)中神经网络模型的推理,一般采用以下方式:在神经网络计算的过程中,采用跳帧的方法,舍弃部分音频特征,减少输入音频特征序列的长度,神经网络模型计算量自然随之下降,达到加速推理目的。但是,跳帧的方法对于跳帧数量,即舍弃音频特征的比例有着敏感的限制。一般以音素为建模单元的语音识别系统,跳帧数量上限为3。以字为建模单元的,跳帧数量上限不超过5。更高的跳帧数量,会导致识别准确率急剧下降。
所以,目前语音加速推理的方案存在以下缺点:加速推理的效果不明显,加速上限较低;对神经网络本身改动较大,否则可能造成准确率损失,普适性较差。
发明内容
本公开的目的在于提供一种语音识别的方法及装置、电子设备和计算机可读存储介质,进而至少在一定程度上加速了语音的识别,以及减少计算量的基础上,保持识别准确率不下降。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的第一方面,提供语音识别的方法,包括:
获取语音数据的原始音频特征序列;
根据预设的跳帧数,对所述原始音频特征序列进行跳帧处理,得到跳帧后的特征序列;
将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果;其中,所述神经网络中包括音频特征的池化操作。
在本公开的示例性实施例中,将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果,包括:将所述跳帧后的特征序列输入神经网络的第一部分神经网络隐层(包括多层神经网络),得到中间态特征序列;对所述中间态特征序列进行池化操作,得到池化后的特征序列;将所述池化后的特征序列输入所述神经网络的第二部分神经网络隐层(包括多层神经网络),以得到语音识别的结果。
在本公开的示例性实施例中,对所述中间态特征序列进行池化操作,得到池化后的特征序列,包括:确定池化操作的参数以及池化操作算法,所述参数至少包括尺寸和步长,所述池化操作算法包括平均池化和最大值池化;根据所述参数以及池化操作算法,对所述中间态特征序列进行时间维度上的池化操作,得到池化后的特征序列。
在本公开的示例性实施例中,将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果,还包括:根据所述预设的跳帧数和/或所述池化操作的参数,确定所述神经网络的输出层的维度;根据所述输出层的维度,得到所述语音识别的结果。
在本公开的示例性实施例中,所述第二部分神经网络隐层的数量与所述第一部分神经网络隐层的数量相同。
根据本公开的第二方面,提供语音识别的装置,包括:
获取模块,用于获取语音数据的原始音频特征序列;
跳帧模块,用于根据预设的跳帧数,对所述原始音频特征序列进行跳帧处理,得到跳帧后的特征序列;
计算模块,用于将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果;其中,所述神经网络中包括音频特征的池化操作。
在本公开的示例性实施例中,所述计算模块还用于,将所述跳帧后的特征序列输入神经网络的第一部分神经网络隐层,得到中间态特征序列;对所述中间态特征序列进行池化操作,得到池化后的特征序列;将所述池化后的特征序列输入所述神经网络的第二部分神经网络隐层,以得到语音识别的结果。
在本公开的示例性实施例中,所述计算模块还用于,确定池化操作的参数以及池化操作算法,所述参数至少包括尺寸和步长,所述池化操作算法包括平均池化和最大值池化;根据所述参数以及池化操作算法,对所述中间态特征序列进行时间维度上的池化操作,得到池化后的特征序列。
在本公开的示例性实施例中,所述计算模块还用于,根据所述预设的跳帧数和/或所述池化操作的参数,确定所述神经网络的输出层的维度;根据所述输出层的维度,得到所述语音识别的结果。
在本公开的示例性实施例中,所述第二部分神经网络隐层的数量与所述第一部分神经网络隐层的数量相同。
根据本公开的第三方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述的核保信息处理方法。
根据本公开的第四方面,提供一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述的语音识别的法。
由上述技术方案可知,本公开示例性实施例中的信息处理方法及装置、计算机可读存储介质、电子设备至少具备以下优点和积极效果:
本公开实施例中的语音识别的方法首先通过对原始音频特征序列进行跳帧处理,接着通过池化操作,将由于跳帧处理损失的信息进行了信息的保留和补充。以及,跳帧处理是在神经网络输入前进行,池化操作是在神经网络的中间层进行,进而池化操作可以在跳帧的基础上进行,进一步加速模型推理。另一方面,在神经网络中间层输出上进行池化操作,不仅后续层的计算量将减少,而且能够保持识别准确率不下降。
本公开应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本公开实施例的语音识别的示例性系统架构的示意图;
图2示出本公开示例性实施例中语音识别的方法的流程示意图;
图3示出本公开示例性实施例中语音识别的深度神经网络结构的示意图;
图4示出本公开示例性实施例中语音识别的装置的框图;
图5示出本公开示例性实施例中语音识别的方法的流程示意图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施例使得本公开将更加全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现或者操作以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。符号“/”一般表示前后关联对象是一种“或”的关系。
在本公开中,除非另有明确的规定和限定,“连接”等术语应做广义理解,例如,可以是电连接或可以互相通讯;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本公开中的具体含义。
图1示出了可以应用本公开实施例的语音识别的的系统架构100的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一种或多种,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机、数字电影放映机等等。
服务器105可以是提供各种服务的服务器。例如用户利用终端设备103(也可以是终端设备101或102)向服务器105发送语音识别的请求,该请求中可包括待识别的语音数据、或者开启语音识别的指令、或者识别语音的权限验证信息等。
参见图2,为本发明一示例性实施例中语音识别的方法的流程示意图,该方法包括以下步骤:
S210,获取语音数据的原始音频特征序列;
S220,根据预设的跳帧数,对原始音频特征序列进行跳帧处理,得到跳帧后的特征序列;
S230,将跳帧后的特征序列输入神经网络,以得到语音识别的结果;其中,神经网络中包括音频特征的池化操作。
本公开实施方式提供的语音识别的方法首先通过对原始音频特征序列进行跳帧处理,接着通过池化操作,将由于跳帧处理损失的信息进行了信息的保留和补充。以及,跳帧处理是在神经网络输入前进行,池化操作是在神经网络的中间层进行,进而池化操作可以在跳帧的基础上进行,进一步加速模型推理。另一方面,在神经网络中间层输出上进行池化操作,不仅后续层的计算量将减少,而且能够保持识别准确率不下降。
在S220中,将跳帧后的特征序列输入神经网络的第一部分神经网络隐层,得到中间态特征序列;对中间态特征序列进行池化操作,得到池化后的特征序列;将池化后的特征序列输入神经网络的第二部分神经网络隐层,以得到语音识别的结果。深度学习中的池化(pooling,一种深度学习的操作)操作,是对信息进行抽象的过程,能够有效减少计算量,并保留重要信息。
更优地,对中间态特征序列进行池化操作,得到池化后的特征序列的过程中,确定池化操作的参数以及池化操作算法,参数至少包括尺寸和步长,池化操作算法包括平均池化和最大值池化;根据参数以及池化操作算法,对中间态特征序列进行时间维度上的池化操作,得到池化后的特征序列。其中,平均池化是计算指定范围内的平均值,最大值池化是计算指定范围的最大值。在本发明实施例中,采用时间池化的操作,进行多帧输出,实现了模型推理速度提高。语音识别系统的神经网络是时间序列预测模型,随着时间预测当前时刻的结果。那么在时间维度上进行池化操作,称之为时间池化,就能够减少需要预测的总长度,直接减少了推理计算量,到达了加速效果。
更优地,在本公开的示例性实施例中,将跳帧后的特征序列输入神经网络,以得到语音识别的结果的过程中,根据预设的跳帧数和/或池化操作的参数,确定神经网络的输出层的维度;根据输出层的维度,得到语音识别的结果。根据本发明实施例,在保持识别准确率不下降的条件下,神经网络计算耗时最短。并且实现简单,仅在中间层增加沿时间维度的平均池化操作,输出层增加节点,多帧输出。以及,根据预设的跳帧数和/或池化操作的参数,确定神经网络的输出层的维度,保证了在提高预测结果的分辨率的同时,神经网络的计算量不会有明显增加。
进一步,第二部分神经网络隐层的数量与第一部分神经网络隐层的数量相同。
在现有技术中,现有的神经网络推理加速方法,归纳起来是两种思路。一是通过舍弃部分输入,直接减少模型推理的计算量,二是通过同时预测多帧,减少完成推理的时间。这两种方法,很快就达到了加速推理的上限。为了进一步加速模型推理,减少模型的计算量是快速可行的方法。但是计算量的减少,意味着信息的舍弃,容易造成识别准确率的损失。
在深度学习中被称作池化的操作,对信息进行抽象的过程,能够有效减少计算量,并保留重要信息。语音识别系统的神经网络是时间序列预测模型,随着时间预测当前时刻的结果。那么在时间维度上进行池化操作,称之为时间池化,就能够减少需要预测的总长度,直接减少了推理计算量,到达了加速效果。本发明实施例通过平均池化的跳帧操作算法,能够保留更多有用信息。
进一步,如果在神经网络的输入音频特征序列上进行时间池化,会降低识别准确率。这是因为一开始就舍弃太多有用的信息。语音识别系统的神经网络模型,通常是多层结构,是深度的。在神经网络中间层输出上进行时间池化,后续层的计算量将减少,并能够保持识别准确率不下降。另外,时间池化操作减少了神经网络需要预测的长度,减少了预测结果的分辨率。为了保持预测结果数量不变,仅增加神经网络的输出层节点,同时预测多帧,有利于识别准确率。
进一步,根据本发明实施例,通过在输入神经网络前进行的跳帧处理,假设原始音频特征序列长度为S,跳帧数设置为i(一般为正整数),经过外部跳帧后,序列长度为S/i。神经网络需要处理的数据量,仅为原来的1/i,加快了模型推理。并且,长度为S/i的输入序列,经过N/2层神经网络推理计算后(N/2指第一部分神经网络隐层包含的神经网络层数是总层数的1/2),经过时间池化操作,池化的尺寸为j(一般为正整数),步长为j,所以处理后的序列长度为S/(i*j)。第一部分神经网络隐层与第二部分神经网络隐层数量相同的情况下),后续N/2层的神经网络,只需要处理原来1/(i*j)的数据量。并且,为了提高神经网络预测结果的分辨率,保持较好的识别准确率。可将输出层的节点扩大为原来的p(一般为正整数)倍,每个时刻神经网络预测p帧结果,将输出结果序列的长度提高到(S*p)/(i*j)。因为仅提高了输出层的节点数,在提高预测结果的分辨率的同时,神经网络的计算量并没有明显增加。
同现有技术的跳帧方法相比,现有技术的跳帧直接舍弃了部分输入音频特征,信息损失较大。本发明实施例通过时间池化,保留了有用的信息。而且,本发明实施例的跳帧是在神经网络输入前进行,时间池化是在神经网络的中间层进行。时间池化可以在跳帧的基础上进行,进一步加速模型推理。
现有技术还可能通过拼帧方法加速语音识别系统(ASR)中神经网络模型的推理,在语音识别系统中,音频特征序列是神经网络的输入。一般,每输入一帧特征,神经网络输出一帧预测结果。现有技术的拼帧方法,是将多帧特征拼接一起输入,神经网络同时预测多帧的结果,即“多帧进多帧出”,达到加速目的。但是,由于多帧同时输入,同时预测的设计,往往需要神经网络模型的输出层节点成倍增加,甚至隐层节点也要增加,否则识别准确率会受影响。当增加神经网络节点后,模型变大,推理的速度会下降。同现有技术的拼帧方法相比,本发明实施例均增加了输出层的节点数。但不同的是,本发明实施例仅在神经网络中间层增加了时间池化操作,不仅对神经网络其他层无改动,还极大减少了计算量。而拼帧往往还要增加中间层的节点数。采用颗粒度更大的建模单元,增加外部跳帧的数量。
图3示出本公开示例性实施例中语音识别的深度神经网络结构的示意图。在本发明实施例中,以深度神经网络为例来说明本发明公开的语音识别方案。如图3所示,本公开示例性实施例中语音识别的深度神经网络结构包括:310:原始音频特征序列;320:外部跳帧处理后的结果,如图3所示的音频特征序列,实线框表示跳帧处理后的特征;330:第一部分神经网络隐层,设深度神经网络结构共有N层,该第一部分神经网络隐层的数量为N/2;340:神经网络中间隐层的输出;350:时间维度上的池化操作结果;360:第二部分神经网络隐层,设深度神经网络结构共有N层,该第二部分神经网络隐层的数量为N/2;370:输出层以及神经网络的输出;其中,在本实施例中,输出层的维度为2。
在本发明实施例中,如图3所示,设深度神经网络结构共有N层,输入是音频特征序列,输出是每个时刻的预测结果。首先,原始音频特征序列,通过外部跳帧,得到跳帧后的特征序列作为神经网络的输入,当跳帧数为2(跳帧数可设置)的情况下,跳帧后特征序列长度为原始音频特征序列的长度的1/2。此时计算量比跳帧前减少了1/2。然后将跳帧后的特征序列送入深度神经网络,进行forward推理(神经网络模型推理,即前向计算),在经过N/2层后,得到中间状态,即神经网络隐层的输出。进一步,对隐层输出,沿时间维度进行池化操作,在本发明实施例中,池化操作的尺寸(size)设置为2,步长(stride)也设置为2(尺寸和步长可设置)。因此,池化后序列长度是池化前的1/2。
然后,将池化操作的结果,继续作为后N/2层神经网络的输入,进行推理计算,此时计算量再次减少1/2。最后,输出层的节点数,即维度,调整为原来的2倍。这样输出层的结果序列长度为输入的2倍,进而保证预测结果的分辨率不过分下降。通过本发明实施例,既能减少推理计算量,又保留了大部分对识别有用的信息。
根据本发明实施例,通过在输入神经网络前进行的跳帧处理,假设原始音频特征序列长度为S,跳帧数设置为2,经过外部跳帧后,序列长度为S/2。神经网络需要处理的数据量,仅为原来的1/2,加快了模型推理。进一步,长度为S/2的输入序列,经过N/2层神经网络推理计算后,经过时间池化操作,池化的尺寸为2,步长为2,所以处理后的序列长度为S/4。后续N/2层的神经网络,只需要处理原来1/4的数据量。并且,为了提高神经网络预测结果的分辨率,保持较好的识别准确率。可将输出层的节点扩大为原来的2倍,每个时刻神经网络预测两帧结果,将输出结果序列的长度提高到S/2。因为仅提高了输出层的节点数,所以提高预测结果的分辨率的同时,神经网络的计算量并没有明显增加。
示例性地,以30层深度前馈序列记忆网络(DFSMN)为声学模型,以字(character)作为建模单元,其他组件不赘述,构建语音识别系统。其中,DFSMN使用基于BLSTM的统计参数语音合成系统作为基线系统,采用广泛使用的跳跃连接技术,在执行反向传播算法时,梯度可以绕过非线性变换。
使用AISHELL2(希尔贝壳中文普通话语音数据库)作为测试集,将三种加速神经网络推理的方法(分别为现有的跳帧方法、现有的拼帧方法,本发明实施例)应用于该语音识别系统。其中跳帧数为2,时间池化的尺寸和步长均为2,池化的方式选择平均池化,并在第15层时,进行时间池化。各种方法的测试结果如下表:
方法 | AISHELL2准确率 | 计算耗时 |
原始DFSMN | 98.3% | 55.3 |
现有的跳帧方法 | 97.7% | 27.6 |
现有的拼帧方法 | 98.0 | 36.6 |
本发明实施例 | 98.2% | 22.8 |
从上表可见,现有的跳帧方法,直接减少了神经网络计算耗时,但是由于模型预测结果为原始的1/2,降低了分辨率,所以识别准确率下降。
现有的拼帧方法采用两帧进两帧出的模式,加速了模型计算。但为了保持识别准确率,各层神经网络节点数增加,计算耗时没有达到最优。
基于本发明实施例,在保持识别准确率不下降的条件下,神经网络计算耗时最短。并且实现简单,仅在中间层增加沿时间维度的平均池化操作,输出层增加节点,多帧输出。本发明实施例,只增加模型输出层的节点数,通过多任务训练等其他优化方法,保持识别准确率不下降。通过减少神经网络计算量来加速推理,并且找到简单而合理的减少神经网络计算量的方法,并保持了语音识别准确率不下降。
图4示意性示出了根据本公开的一实施例的语音识别的装置的框图。本公开实施例提供的语音识别的装置可以设置在终端设备上,也可以设置在服务端上,或者部分设置在终端设备上,部分设置在服务端上,例如,可以设置在图1中的服务器105(根据实际替换),但本公开并不限定于此。
本公开实施例提供的语音识别的装置400可以包括获取模块410、跳帧模块420和计算模块430。其中,获取模块410,用于获取语音数据的原始音频特征序列。跳帧模块420,用于根据预设的跳帧数,对原始音频特征序列进行跳帧处理,得到跳帧后的特征序列。计算模块430,用于将跳帧后的特征序列输入神经网络,以得到语音识别的结果;其中,神经网络中包括音频特征的池化操作。
本公开实施方式提供的语音识别的装置,首先通过对原始音频特征序列进行跳帧处理,接着通过池化操作,将由于跳帧处理损失的信息进行了信息的保留和补充。以及,跳帧处理是在神经网络输入前进行,池化操作是在神经网络的中间层进行,进而池化操作可以在跳帧的基础上进行,进一步加速模型推理。另一方面,在神经网络中间层输出上进行池化操作,不仅后续层的计算量将减少,而且能够保持识别准确率不下降。
计算模块还用于,将跳帧后的特征序列输入神经网络的第一部分神经网络隐层,得到中间态特征序列;对中间态特征序列进行池化操作,得到池化后的特征序列;将池化后的特征序列输入神经网络的第二部分神经网络隐层,以得到语音识别的结果。
更优地,计算模块还用于,确定池化操作的参数以及池化操作算法,参数至少包括尺寸和步长,池化操作算法包括平均池化和最大值池化;根据参数以及池化操作算法,对中间态特征序列进行时间维度上的池化操作,得到池化后的特征序列。
更优地,计算模块还用于,根据预设的跳帧数和/或池化操作的参数,确定神经网络的输出层的维度;根据输出层的维度,得到语音识别的结果。
更优地,第二部分神经网络隐层的数量与第一部分神经网络隐层的数量相同。
本公开实施例提供的语音识别的装置中的各个模块、单元和子单元的具体实现可以参照上述语音识别的方法中的内容,在此不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块、单元和子单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块、单元和子单元的特征和功能可以在一个模块、单元和子单元中具体化。反之,上文描述的一个模块、单元和子单元的特征和功能可以进一步划分为由多个模块、单元和子单元来具体化。
如图5所示,示例电子设备50包括用于执行软件例程的处理器501尽管为了清楚起见示出了单个处理器,但是电子设备50也可以包括多处理器系统。处理器501连接到通信基础设施502,用于与电子设备50的其他组件进行通信。通信基础设施502可以包括例如通信总线、交叉开关或网络。
电子设备50还包括诸如随机存取存储器(Random Access Memory,RAM)之类的存储器,存储器可包括主存储器503和辅助存储器510。辅助存储器510可以包括,例如硬盘驱动器511和/或可移动存储驱动器512,可移动存储驱动器512可以包括软盘驱动器,磁带驱动器,光盘驱动器等。可移动存储驱动器512以常规方式对可移动存储单元513进行读取和/或写入。可移动存储单元513可以包括由可移动存储驱动器512读取和写入的软盘、磁带、光盘等。相关领域技术人员可以理解,可移动存储单元513包括其上存储有计算机可执行程序代码指令和/或数据的计算机可读存储介质。
在一种可选实施方式中,辅助存储器510可以额外包括或选择性包括用于允许将计算机程序或其他指令加载到电子设备50中的其他类似装置。这样的装置可以包括例如可移动存储单元521和接口520。可移动存储单元521和接口520的示例包括:程序卡带(cartridge)和卡带接口(例如可在视频游戏控制台设备中找到的程序卡带和卡带接口)、可移动存储芯片(例如EPROM或PROM)和相关联的插槽、以及其他可移动存储单元521和允许软件和数据从可移动存储单元521传输到电子设备50的接口520。
电子设备50还包括至少一个通信接口540。通信接口540允许软件和数据经由通信路径541在电子设备50和外部设备之间传输。在本发明的各种实施例中,通信接口540允许数据在电子设备50和诸如公共数据或私有数据通信网络之类的数据通信网络之间传输。通信接口540可用于在不同的电子设备50之间交换数据,这些电子设备50形成互连的计算机网络的一部分。通信接口540的示例可以包括调制解调器、网络接口(诸如以太网卡)、通信端口、具有相关电路的天线等等。通信接口540可以是有线的或者可以是无线的。经由通信接口540传输的软件和数据为信号形式,该信号可以是能够被通信接口540接收的电、磁、光或其他信号。这些信号经由通信路径541被提供给通信接口。
如图5所示,电子设备50还包括显示器接口531和音频接口532,显示器接口531执行用于将图像渲染到关联的显示器530的操作,音频接口532用于执行通过关联的扬声器533播放音频内容的操作。
在本申请文件中,术语“计算机程序产品”部分程度上可以指代:可移动存储单元513、可移动存储单元521、安装在硬盘驱动器511中的硬盘、或承载着软件通过通信路径541(无线链路或电缆)到通信接口540的载波。计算机可读存储介质是指将记录的指令和/或数据提供给电子设备50以执行和/或处理的任何非暂时的有形的存储介质。这种存储介质的示例包括软盘、磁带、CD-ROM、DVD、蓝光TM光盘、硬盘驱动器、ROM或集成电路、USB存储器、磁光盘、或诸如PCMCIA卡之类的计算机可读卡等等,这些部件无论是在电子设备50的内部还是外部均可。瞬态或非有形计算机可读传输介质也可以参与向电子设备50提供软件、应用程序、指令和/或数据,这种传输介质的示例包括无线电或红外传输信道、到另一台计算机或另一个联网设备的网络连接、以及包括电子邮件传输和记录在网站上的信息等的互联网或内联网。
计算机程序(也被称为计算机程序代码)存储在主存储器503和/或辅助存储器510中。也可以经由通信接口540来接收计算机程序。此类计算机程序在被执行时使电子设备50能够执行本文所讨论的实施例的一个或多个特征。在各种实施例中,计算机程序在被执行时,使处理器501能够执行上述实施例的特征。因此,此类计算机程序代表计算机系统50的控制器。
软件可以存储在计算机程序产品中,并使用可移动存储驱动器512、硬盘驱动器511或接口520加载到电子设备50中。替代地,可以通过通信路径541将计算机程序产品下载到计算机系统50。该软件在由处理器501执行时促使电子设备50执行本文描述的实施例的功能。
应该理解,图5的实施例仅以示例的方式给出。因此,在一些实施例中,可以省略电子设备50的一个或多个特征。而且,在一些实施例中,电子设备50的一个或多个特征可以被组合在一起。另外,在一些实施例中,电子设备50的一个或多个特征可以被分成一个或多个组成部分。
可以理解的是,图5所示的要素起到了提供执行以上实施例中所描述的服务器的各种功能和操作的途径的作用。
在一种实施方式中,服务器通常可以被描述为包括至少一个处理器和至少一个包括计算机程序代码的存储器的物理设备。至少一个存储器和计算机程序代码被配置为与至少一个处理器一起促使物理设备执行必要的操作。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现图2所示方法的功能。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被电子设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
以上结合具体实施例描述了本发明的基本原理,但是,需要指出的是,在本发明中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (12)
1.一种语音识别的方法,其特征在于,包括:
获取语音数据的原始音频特征序列;
根据预设的跳帧数,对所述原始音频特征序列进行跳帧处理,得到跳帧后的特征序列;
将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果;其中,所述神经网络中包括音频特征的池化操作。
2.根据权利要求1所述的方法,其特征在于,将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果,包括:
将所述跳帧后的特征序列输入神经网络的第一部分神经网络隐层,得到中间态特征序列;
对所述中间态特征序列进行池化操作,得到池化后的特征序列;
将所述池化后的特征序列输入所述神经网络的第二部分神经网络隐层,以得到语音识别的结果。
3.根据权利要求2所述的方法,其特征在于,对所述中间态特征序列进行池化操作,得到池化后的特征序列,包括:
确定池化操作的参数以及池化操作算法,所述参数至少包括尺寸和步长,所述池化操作算法包括平均池化和最大值池化;
根据所述参数以及池化操作算法,对所述中间态特征序列进行时间维度上的池化操作,得到池化后的特征序列。
4.根据权利要求3所述的方法,其特征在于,将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果,还包括:
根据所述预设的跳帧数和/或所述池化操作的参数,确定所述神经网络的输出层的维度;
根据所述输出层的维度,得到所述语音识别的结果。
5.根据权利要求2-4任一项所述的方法,其特征在于,所述第二部分神经网络隐层的数量与所述第一部分神经网络隐层的数量相同。
6.一种语音识别的装置,其特征在于,包括:
获取模块,用于获取语音数据的原始音频特征序列;
跳帧模块,用于根据预设的跳帧数,对所述原始音频特征序列进行跳帧处理,得到跳帧后的特征序列;
计算模块,用于将所述跳帧后的特征序列输入神经网络,以得到语音识别的结果;其中,所述神经网络中包括音频特征的池化操作。
7.根据权利要求6所述的装置,其特征在于,所述计算模块还用于,将所述跳帧后的特征序列输入神经网络的第一部分神经网络隐层,得到中间态特征序列;对所述中间态特征序列进行池化操作,得到池化后的特征序列;将所述池化后的特征序列输入所述神经网络的第二部分神经网络隐层,以得到语音识别的结果。
8.根据权利要求7所述的装置,其特征在于,所述计算模块还用于,确定池化操作的参数以及池化操作算法,所述参数至少包括尺寸和步长,所述池化操作算法包括平均池化和最大值池化;根据所述参数以及池化操作算法,对所述中间态特征序列进行时间维度上的池化操作,得到池化后的特征序列。
9.根据权利要求8所述的装置,其特征在于,所述计算模块还用于,根据所述预设的跳帧数和/或所述池化操作的参数,确定所述神经网络的输出层的维度;根据所述输出层的维度,得到所述语音识别的结果。
10.根据权利要求6-8任一项所述的装置,其特征在于,所述第二部分神经网络隐层的数量与所述第一部分神经网络隐层的数量相同。
11.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~5中任意一项所述的语音识别的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~5中任意一项所述的语音识别的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011618042.3A CN112863497B (zh) | 2020-12-31 | 2020-12-31 | 语音识别的方法及装置、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011618042.3A CN112863497B (zh) | 2020-12-31 | 2020-12-31 | 语音识别的方法及装置、电子设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112863497A true CN112863497A (zh) | 2021-05-28 |
CN112863497B CN112863497B (zh) | 2022-10-21 |
Family
ID=75998837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011618042.3A Active CN112863497B (zh) | 2020-12-31 | 2020-12-31 | 语音识别的方法及装置、电子设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112863497B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105741838A (zh) * | 2016-01-20 | 2016-07-06 | 百度在线网络技术(北京)有限公司 | 语音唤醒方法及装置 |
CN106663425A (zh) * | 2014-09-23 | 2017-05-10 | 英特尔公司 | 用于自动语音识别的使用外推的跳帧和按需输出的神经网络 |
CN108022587A (zh) * | 2017-12-15 | 2018-05-11 | 深圳市声扬科技有限公司 | 语音识别方法、装置、计算机设备和存储介质 |
CN109147826A (zh) * | 2018-08-22 | 2019-01-04 | 平安科技(深圳)有限公司 | 音乐情感识别方法、装置、计算机设备及计算机存储介质 |
CN111105803A (zh) * | 2019-12-30 | 2020-05-05 | 苏州思必驰信息科技有限公司 | 快速识别性别的方法及装置、用于识别性别的算法模型的生成方法 |
US20200159828A1 (en) * | 2018-11-20 | 2020-05-21 | Sap Se | Robust key value extraction |
CN111292725A (zh) * | 2020-02-28 | 2020-06-16 | 北京声智科技有限公司 | 一种语音解码方法及装置 |
-
2020
- 2020-12-31 CN CN202011618042.3A patent/CN112863497B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106663425A (zh) * | 2014-09-23 | 2017-05-10 | 英特尔公司 | 用于自动语音识别的使用外推的跳帧和按需输出的神经网络 |
CN105741838A (zh) * | 2016-01-20 | 2016-07-06 | 百度在线网络技术(北京)有限公司 | 语音唤醒方法及装置 |
CN108022587A (zh) * | 2017-12-15 | 2018-05-11 | 深圳市声扬科技有限公司 | 语音识别方法、装置、计算机设备和存储介质 |
CN109147826A (zh) * | 2018-08-22 | 2019-01-04 | 平安科技(深圳)有限公司 | 音乐情感识别方法、装置、计算机设备及计算机存储介质 |
US20200159828A1 (en) * | 2018-11-20 | 2020-05-21 | Sap Se | Robust key value extraction |
CN111105803A (zh) * | 2019-12-30 | 2020-05-05 | 苏州思必驰信息科技有限公司 | 快速识别性别的方法及装置、用于识别性别的算法模型的生成方法 |
CN111292725A (zh) * | 2020-02-28 | 2020-06-16 | 北京声智科技有限公司 | 一种语音解码方法及装置 |
Non-Patent Citations (1)
Title |
---|
侯一民等: "基于卷积神经网络的孤立词语音识别", 《计算机工程与设计》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112863497B (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113177538B (zh) | 一种视频循环识别方法、装置、计算机设备及存储介质 | |
CN111310464B (zh) | 词向量获取模型生成方法、装置及词向量获取方法、装置 | |
US11942074B2 (en) | Learning data acquisition apparatus, model learning apparatus, methods and programs for the same | |
CN111709493B (zh) | 对象分类方法、训练方法、装置、设备及存储介质 | |
CN111344717B (zh) | 交互行为预测方法、智能装置和计算机可读存储介质 | |
CN113539244B (zh) | 端到端语音识别模型训练方法、语音识别方法及相关装置 | |
US20210279222A1 (en) | Dynamic Buffer Lookahead in Adaptive Streaming Using Machine Learning | |
US20230252294A1 (en) | Data processing method, apparatus, and device, and computer-readable storage medium | |
CN111488813B (zh) | 视频的情感标注方法、装置、电子设备及存储介质 | |
CN114547343A (zh) | 知识图谱补全的方法、装置、设备、存储介质和程序产品 | |
CN114420135A (zh) | 基于注意力机制的声纹识别方法及装置 | |
CN112863497B (zh) | 语音识别的方法及装置、电子设备和计算机可读存储介质 | |
CN113569705A (zh) | 场景分割点判断方法、系统、存储介质及电子设备 | |
CN111611409A (zh) | 一种融入场景知识的事例分析方法及相关设备 | |
CN114416863A (zh) | 用于执行基于模型并行的分布式推理的方法、设备和介质 | |
CN111091011B (zh) | 领域预测方法、领域预测装置及电子设备 | |
CN111815638A (zh) | 视频分割网络模型的训练方法、视频分割方法及相关设备 | |
CN113066038A (zh) | 图像评估方法、装置、电子设备及计算机存储介质 | |
CN111901673B (zh) | 一种视频预测方法、装置、存储介质及终端 | |
CN117521737B (zh) | 网络模型的转换方法、装置、终端及计算机可读存储介质 | |
CN110414536B (zh) | 录音重放检测方法、存储介质和电子设备 | |
CN112749297B (zh) | 视频推荐方法、装置、计算机设备和计算机可读存储介质 | |
CN115952830B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN114510585B (zh) | 一种信息表征模型构建方法、信息表征方法 | |
CN113591655A (zh) | 视频的对比损失计算方法、系统、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |