100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 语音识别方法 装置 计算机设备及计算机可读存储介质与流程

语音识别方法 装置 计算机设备及计算机可读存储介质与流程

时间:2021-08-21 12:29:21

相关推荐

语音识别方法 装置 计算机设备及计算机可读存储介质与流程

本发明涉及语音识别技术领域,特别涉及一种语音识别方法、装置、计算机设备及计算机可读存储介质。

背景技术:

语音识别正式进入我们的日常生活的方方面面,将成为人类与计算机交互的新方式,比如手机,游戏机,家庭的智能化,都需要语音识别,语音识别已经发展了几十年,突然变得炙手可热,这归功于深度学习。然而随着神经网络的预测精度的不断提高,所需要的存储空间和计算量也不断增大,对硬件资源的需求不断增加,神经网络要求的大存储空间和大计算量,严重阻碍了其在手机、手表和移动机器人等设备上的应用,减少存储空间和计算量势在必行。

现在有很多压缩方式,比如svd(奇异值分解,Singular Value Decomposition),Quantization(量化)和二值化等等压缩算法,二值神经网络是其中一种方法,该方法通过把浮点单精度的系数变成正1或负1,几十倍地降低了网络大小和计算量,比如,系数的二值化能达成存储大小变为原来的1/32,也就是3%。在支持64位运算的CPU和GPU上,这意味着64倍的理论加速比。因此,二值网络将一个此前只能在服务器上运行的神经网络运行在智能手表上。

由于二值网络权值W中的元素只占一位二进制,因此在保存训练好后的模型时所需的内存非常小,同时又去除了普通的乘法操作,在减少模型参数所占的内存和运算量的同时还能保持神经网络的性能,这给深度学习在移动端的应用带来了非常大的前景。但是即使是这样的神经网络对要实现准确的、快速的、低延迟、小模型和低功耗的语音识别也有一点的阻力,因为二值化方法可知参数部分不存在稀疏性,参数不稀疏化就无法节省空间和时间。

技术实现要素:

本发明实施例提供了一种语音识别方法、装置、计算机设备及计算机可读存储介质,通过对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,可以使得网络结构更加稀疏,从而减少计算量。

本发明实施例提供的语音识别方法包括:

对获取的音频数据进行降采样处理,获得音频降采样数据;

将所述音频降采样数据分成训练音频数据和测试音频数据;

对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,获得稀疏化的二值化卷积神经网络;

利用所述训练音频数据,对所述稀疏化的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络;

利用所述测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别。本发明实施例提供的语音识别装置包括:

降采样处理模块,用于对获取的音频数据进行降采样处理,获得音频降采样数据;

数据分类模块,用于将所述音频降采样数据分成训练音频数据和测试音频数据;

稀疏化处理模块,用于对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,获得稀疏化的二值化卷积神经网络;

训练模块,用于利用所述训练音频数据,对所述稀疏化的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络;

语音识别模块,用于利用所述测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别。

本发明实施例提供的计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述语音识别方法。

本发明实施例提供的计算机可读存储介质,所述计算机可读存储介质存储有执行上述所述语音识别方法的计算机程序。

在一个实施例中,通过对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,可以使得网络结构更加稀疏,利用训练音频数据对稀疏化的二值化卷积神经网络进行训练获得训练好的二值化卷积神经网络,再然后利用测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别,这样可以减少计算量。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种语音识别方法流程图(一);

图2是现有技术中的一种数据和权重相乘实现原理图;

图3是本发明实施例提供的的一种数据和权重相乘实现原理图;

图4是本发明实施例提供的一种语音识别方法流程图(二);

图5是本发明实施例提供的一种近似加法器结构的电路图;

图6是本发明实施例提供的一种选择器工作原理图;

图7是本发明实施例提供的一种语音识别装置结构框图(一);

图8是本发明实施例提供的一种语音识别装置结构框图(二)。

具体实施方式

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

在本发明实施例中,提供了一种语音识别方法,如图1所示,该方法包括:

步骤101:对获取的音频数据进行降采样处理,获得音频降采样数据;

步骤102:将所述音频降采样数据分成训练音频数据和测试音频数据;

步骤103:对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,获得稀疏化的二值化卷积神经网络;

步骤104:利用所述训练音频数据,对所述稀疏化的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络;

步骤105:利用所述测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别。

在本发明实施例中,步骤101可以按照如下方式实现:即可以从训练集中为每一句话进行降采样特征提取,可以把特征降为100维度。

在本发明实施例中,本发明是针对二值化卷积神经网络的再一次压缩,实现了神经网络的稀疏化。由于二值化后的权重相对低功耗的要求仍然是巨大的,所以本发明是在正确率有所保证的情况下,对卷积层和全连接层中的权重进行稀疏性压缩(步骤103)。稀疏性压缩方式如下:

(1)对于卷积层中的权重:针对每一个卷积核,按照预定的比例(随机)将卷积核的权重的高位设置为-1(硬件中-1用0表示);其中,预设的比例指的是开始指定的压缩比例。

(2)对于全连接层中的权重:由每一层第一位权重的值确定是否将每一层后面连续的权重设置为-1。其中,每一层如果第一位的权重大于0,则每一层后面的权重不改变;每一层如果第一位的权重小于0,则将每一层中第一位后面连续多个(随机数)权重按照预定的比例随机设置为-1。

使得尽量多的值为-1,这样可以使得卷积层和全连接层的输入的稀疏度有所提高。所以,尽量多的-1对卷积层中的矩阵乘法用到内存有大大的降低,全连接层中的权重如果高位连续为-1,会节省好多运算空间和时间。

下面是一个简单的举例:

数据和权重相乘的一般实现方案如图2所示,即结果等于数据乘以权重。而本发明提出的实现方案如下:

权重数据高位很多是0,大部分权重数据可压缩。例:

16’b0000_0000_XXXX_XXXX可压缩为:8’bXXXX_XXXX+1’bflag

其中,Flag为1表明数据是被压缩过的。

经过上述压缩之后,数据和权重采用如图3所示的新的调用过程,即结果等于数据乘以{高位非0权重和压缩权重经过MUX之后的数据}(MUX,数据选择器,multiplexer)。

经过上述压缩可以节约如下网络空间:(1000x16–500x17–500x9)bit。

在现有技术中,二值网络中的参数全部采用二值化,从而在卷积神经网络中,卷积层和全连接层都是基于乘加运算,并且很容易实现并行,因此在用于卷积神经网络的硬件架构中,为了获得高性能,高并行度的计算模式是最普遍的,包括时间和空间上的并行,在一些电路的设计过程中,例如传感器、模拟电路等,为了节省更多的资源而允许一定的错误率存在的方案是比较常见的。基于这一点,近似计算近来成为热门的研究方向。通过接受结果的不可靠性,克服传统设计的局限性,从而达到提高性能、降低功耗以及维持技术扩展等目的。近似计算的应用前景非常广阔。随着云端以及移动设备处理的数据量变得逐渐庞大,多数应用可以包容一些小误差而不影响功能以及用户体验。比如使用百度搜索关键词时,会出现成千上万条搜索结果,但并不是每一条都与想要的结果吻合。这一点尤其体现在图像或视频的处理应用中,一小部分的错误是无关紧要甚至是不易察觉的。在这些以数据挖掘、识别、搜索以及机器学习等统计算法为基础的应用中,所需要获取的不是单一的黄金结果,而是足够匹配的一类结果,近似计算在这些应用中可以发挥巨大的潜力。因此,本发明除了采用上述稀疏性压缩之外,还在硬件架构中引入近似加法器来进一步提高硬件的性能。

具体的,如图4所示,该语音识别方法还可以包括:

步骤106:采用基于进位链切割原理的近似加法器替换二值化卷积神经网络卷积操作中的矩阵加法器,获得替换后的二值化卷积神经网络;

此时,步骤104具体为:利用所述训练音频数据,对替换后的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络。

在本发明实施例中,由于在二值化卷积神经网络中把卷积层中的乘加运算全部转化为加法运算,因此本发明的近似计算只考虑加法,也就是说,计算单元全部由近似加法器构成架构中的计算单元,用近似加法器代替传统的精确加法器近一步起到加速的作用。本发明是基于进位链切割原理的近似加法器,近似加法器原理如下:

首先定义三个函数(或称为信号):进位产生函数gi、进位传播函数pi和进位取消函数ki,具体表达如下:

其中,表示没有乘法的卷积运算;ai和bi表示第i位上的两个输入信号;分别表示对ai、bi取反;通过这些函数可以来判断每一位上进位信号ci的产生,从而来计算和位si,进位信号ci以及和位si的表达式为:

从表达式(1-2)中可以看到只有当进位传播函数等于1即进位传播信号pi为真时进位信号ci才与前一位的进位信号ci-1有关,否则ci只取决于进位产生信号gi或者进位取消信号ki(即与之前的输入位无关)。同样地,只有当pi-1为真时,ci-1才取决于ci-2。这也就意味着,只有当pi和pi-1同时为真时,ci才取决于ci-2。那么,可以总结出一个通用的规律就是只有当i位至i-k-1位的进位传播信号都为真时,第i位的进位信号ci才取决于第i-k上的进位信号ci-k。

近似加法器电路由m个电路块构成,每个电路块有一个k位的加法器、一个k位的进位产生器和一个选择器,每个选择器级联相邻两个进位产生器,k=n/m,n表示加法运算的数据位宽,如图5所示。将第j个电路块的输入记作和输出记作在加信号后,首先每个进位产生器根据该部分电路的输入(和)产生进位输出信号然后选择器根据判断条件选择前两个进位产生器中的一个进位输出信号作为和输出产生器的进位输入信号最后每部分的加法器产生和输出所以,整个电路的关键路径延时为三部分电路之和(进位产生,选择器和加法器),如图5中虚线框所示,黑色部分表示选择器。

如果第j部分的进位传播信号都为真的话,那么第j部分的正确进位输出信号是由第j部分之前的输入决定的,如果该进位信号为真,那么将无法准确传递给第j+1部分电路,导致和输出结果出错。而近似结构能通过判断这一条件是否为真来控制选择器选择第j部分还是第j-1部分的进位输出信号作为第i+1部分加法器的进位输入信号,如果为真,选择第j-1部分的进位输出信号;否则,选择第j部分的进位输出信号。这样结果将会精确的多。分析该电路,加了选择器后就相当于将进位链加长了k位,这一点也可以通过级联相邻两个进位产生电路得到,但一个k位的进位产生链的延时明显大于一个选择器的延时,尤其当k很大时。选择器的工作原理表达式为:

其中,

在公式(1-4)中,和是第j-1部分和第j部分电路的进位输出信号,是第j部分电路的第i位的进位传播信号。关于选择器具体工作原理的例子可以见图6。图6中根据输入A、B可知以及选择器中同时输入这俩信号,通过判断第j部分的进位传播信号都为真,即输出作为j+1部分加法器的进位输入由于选择器的存在,正确传递了进位信号。

举例说明,在该发明的16位加法器中,可以将参数设为4。首先加法器的前4位进位和精确加法器的进位原理一致;c[7](表示16位加法的第7位进位)经过选择器的修正后进位链长度变至7(即从0位开始推的),因此c[8]、c[9]和c[10]的进位链长度分别是8,9和10;c[11]经过选择器的修正后进位链长度变至7(即从输入的第4位开始推的),c[12]、c[13]和c[14]的进位链长度同样分别为8、9和10。

实验结果:压缩模型和无压缩模型的正确率比较,如表1所示:

表1

基于同一发明构思,本发明实施例中还提供了一种语音识别装置,如下面的实施例所述。由于语音识别装置解决问题的原理与语音识别方法相似,因此语音识别装置的实施可以参见语音识别方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图7是本发明实施例的语音识别装置的结构框图(一),如图7所示,包括:

降采样处理模块701,用于对获取的音频数据进行降采样处理,获得音频降采样数据;

数据分类模块702,用于将所述音频降采样数据分成训练音频数据和测试音频数据;

稀疏化处理模块703,用于对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,获得稀疏化的二值化卷积神经网络;

训练模块704,用于利用所述训练音频数据,对所述稀疏化的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络;

语音识别模块705,用于利用所述测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别。

在本发明实施例中,所述稀疏化处理模块703具体用于:

按照如下方式对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理:

对于卷积层中的权重:针对每一个卷积核,按照预定的比例将卷积核的权重的高位设置为-1;

对于全连接层中的权重:由每一层第一位权重的值确定是否将每一层后面连续的权重设置为-1。

在本发明实施例中,所述稀疏化处理模块703具体用于:

按照如下方式由每一层第一位权重的值确定是否将每一层后面连续的权重设置为-1:

每一层如果第一位的权重大于0,则每一层后面的权重不改变;

每一层如果第一位的权重小于0,则将每一层中第一位后面连续多个权重设置为-1。

在本发明实施例中,如图8所示,该语音识别装置还包括:加法操作替换模块706,用于在对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理之后,采用基于进位链切割原理的近似加法器替换二值化卷积神经网络卷积操作中的矩阵加法器,获得替换后的二值化卷积神经网络

其中,训练模块704具体用于:利用所述训练音频数据,对替换后的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络。

在本发明实施例中,所述加法操作替换模块706具体采用上述公式(1-1)至公式(1-4)以及相应的描述形式下的基于进位链切割原理的近似加法器。

本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述语音识别方法。

本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述所述语音识别方法的计算机程序。

综上所述,本发明提出的语音识别方法、装置、计算机设备及计算机可读存储介质具有如下优点:

通过对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,可以使得网络结构更加稀疏,利用训练音频数据对稀疏化的二值化卷积神经网络进行训练获得训练好的二值化卷积神经网络,再然后利用测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别,这样可以减少计算量。另外,采用基于进位链切割原理的近似加法器替换二值化卷积神经网络卷积操作中的矩阵加法器,这样可以近一步起到加速的作用,减少运算时间。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:

1.一种语音识别方法,其特征在于,包括:

对获取的音频数据进行降采样处理,获得音频降采样数据;

将所述音频降采样数据分成训练音频数据和测试音频数据;

对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,获得稀疏化的二值化卷积神经网络;

利用所述训练音频数据,对所述稀疏化的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络;

利用所述测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别。

2.如权利要求1所述的语音识别方法,其特征在于,对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,包括:

对于卷积层中的权重:针对每一个卷积核,按照预定的比例将卷积核的权重的高位设置为-1;

对于全连接层中的权重:由每一层第一位权重的值确定是否将每一层后面连续的权重设置为-1。

3.如权利要求2所述的语音识别方法,其特征在于,由每一层第一位权重的值确定是否将该层后面连续的权重设置为-1,包括:

每一层如果第一位的权重大于0,则每一层后面的权重不改变;

每一层如果第一位的权重小于0,则将每一层中第一位后面连续多个权重设置为-1。

4.如权利要求1所述的语音识别方法,其特征在于,在对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理之后,还包括:

采用基于进位链切割原理的近似加法器替换二值化卷积神经网络卷积操作中的矩阵加法器。

5.如权利要求4所述的语音识别方法,其特征在于,所述基于进位链切割原理的近似加法器具体如下:

定义三个函数gi、pi和ki:

gi=aibi,

其中,gi表示进位产生函数;ai和bi表示第i位上的两个输入信号;分别表示对ai、bi取反;ki表示进位取消函数;pi表示进位传播函数;表示没有乘法的卷积运算;

根据所述三个函数确定每一位上进位信号ci、和位si,进位信号ci以及和位si的表达式为:

其中,只有当i位至i-k-1位的进位传播信号都为真时,第i位的进位信号ci才取决于第i-k上的进位信号ci-k;

近似加法器电路由m个电路块构成,每个电路块有一个k位的加法器、一个k位的进位产生器和一个选择器,每个选择器级联相邻两个进位产生器,k=n/m,n表示加法运算的数据位宽;

在加信号后,每个进位产生器根据第j部分电路的输入和产生进位输出信号选择器根据判断条件选择第j部分电路或第j-1部分电路的进位输出信号作为第j+1部分加法器的进位输入信号,如果为真,选择第j-1部分电路的进位输出信号;否则,选择第j部分电路的进位输出信号作为第j+1部分加法器的进位输入信号每部分电路的加法器产生和输出其中,和表示第j个电路块的输入,表示第j个电路块的输出;

选择器的工作原理表达式为:

其中,和是第j-1部分和第j部分电路的进位输出信号,是第j部分电路的第i位的进位传播信号。

6.一种语音识别装置,其特征在于,包括:

降采样处理模块,用于对获取的音频数据进行降采样处理,获得音频降采样数据;

数据分类模块,用于将所述音频降采样数据分成训练音频数据和测试音频数据;

稀疏化处理模块,用于对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,获得稀疏化的二值化卷积神经网络;

训练模块,用于利用所述训练音频数据,对所述稀疏化的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络;

语音识别模块,用于利用所述测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别。

7.如权利要求6所述的语音识别装置,其特征在于,所述稀疏化处理模块具体用于:

按照如下方式对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理:

对于卷积层中的权重:针对每一个卷积核,按照预定的比例将卷积核的权重的高位设置为-1;

对于全连接层中的权重:由每一层第一位权重的值确定是否将每一层后面连续的权重设置为-1。

8.如权利要求6所述的语音识别装置,其特征在于,还包括:加法操作替换模块,用于在对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理之后,采用基于进位链切割原理的近似加法器替换二值化卷积神经网络卷积操作中的矩阵加法器。

9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一所述语音识别方法。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至5任一所述语音识别方法的计算机程序。

技术总结

本发明提供一种语音识别方法、装置、计算机设备及计算机可读存储介质,包括:对获取的音频数据进行降采样处理,获得音频降采样数据;将所述音频降采样数据分成训练音频数据和测试音频数据;对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,获得稀疏化的二值化卷积神经网络;利用所述训练音频数据,对所述稀疏化的二值化卷积神经网络进行训练,获得训练好的二值化卷积神经网络;利用所述测试音频数据,基于所述训练好的二值化卷积神经网络进行语音识别。由于该方案通过对二值化卷积神经网络卷积层和全连接层中的权重进行稀疏化处理,可以节省好多运算空间和时间。

技术研发人员:刘玲;欧阳鹏;尹首一;李秀东;王博

受保护的技术使用者:北京清微智能科技有限公司

技术研发日:.06.04

技术公布日:.09.20

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