CN109741733B - 基于一致性路由网络的语音音素识别方法 - Google Patents
基于一致性路由网络的语音音素识别方法 Download PDFInfo
- Publication number
- CN109741733B CN109741733B CN201910035513.9A CN201910035513A CN109741733B CN 109741733 B CN109741733 B CN 109741733B CN 201910035513 A CN201910035513 A CN 201910035513A CN 109741733 B CN109741733 B CN 109741733B
- Authority
- CN
- China
- Prior art keywords
- order state
- state vector
- consistency
- data
- tensor
- 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.)
- Active
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开一种基于一致性路由网络的语音音素识别方法,首先在训练阶段,构造一致性路由前馈网络编码器,对向量初始语音音素数据进行矩阵运算和二维卷积得到低阶状态向量;构造一致性路由网络的一致性路由结构,通过一致性路由系数加权低阶状态向量,将其中的信息传递给高阶状态向量;以每个高阶状态向量的长度的softmax激活值在所有高阶状态向量softmax激活值中的占比来表示判定为该标签的概率;然后构造一致性路由网络的重构解码器,将真实标签对应的高阶状态向量进行解码重构;基于总损失函数对一致性路由网络的参数求得梯度公式进行优化更新;在测试阶段,将初始语音音素数据输入一致性路由网络的前馈编码器中,判断待测试数据的所属类别。
Description
技术领域
本发明属于分类处理及深度学习技术领域,具体涉及一种基于一致性路由网络的语音音素识别方法。
背景技术
语音数据是现代信息数据的重要处理内容,每一帧语音数据都可以用特征参数来描绘,比如共振峰有关参数,即一帧语音数据的共振峰频率(第一维)、带宽(第二维)、能量频谱倾斜(第三维)等,以上是基于研究人员经验积累、按照理论知识直接提取出来的多维特征。然而这样的工作计算量非常大,并且需要大量的尝试以及创新。近几年崛起的深度学习方法集特征提取和特征的分类于一体,具有非常强大的特征自组织以及特征抽象能力,能够帮助研究人员减轻在语音数据特征的设计上投入的时间和精力。卷积神经网络目前已经在图像的分类识别方面取得了巨大的成就,但是由于语音数据和图像数据存在一定的差异,卷积网络善于处理矩阵形式的图像信号,然而语音数据是时间序列,多个采样点之间有时间轴上的先后关系,因此,卷积神经网络并不适合直接处理语音数据。本发明提出的一致性路由网络能够克服传统的卷积网络所具有的缺点,得到识别目标所具有的更高阶更鲁棒的数字化表征。
发明内容
本发明的目的是针对现有技术存在的问题,提出一种基于一致性路由网络的语音音素识别方法,实现对语音音素的时序信号所对应的音速符号的精准识别,解决现有技术中按照理论知识直接提取的语音特征准确度低、语音数据分类效果差以及过拟合的技术问题。
为实现上述目的,本发明采用的技术方案是:
基于一致性路由网络的语音音素识别方法,包括以下步骤:
步骤1,构造一致性路由网络的前馈网络编码器;
步骤2,构造一致性路由网络的重构解码器,将真实标签对应的高阶状态向量进行解码重构;
步骤3,根据softmax激活值的判别结果计算分类损失,根据对比解码器的解码结果和原始数据计算重构损失,根据一致性路由结果计算相似性损失,将分类损失、重构损失、相似性损失进行加权求和得到总损失,使用自适应矩估计法对一致性路由网络中的所有可更新参数进行优化,使总损失最小化;
步骤4,将待测试的初始语音音素数据输入一致性路由网络的编码器中,根据所有高阶状态向量长度的softmax激活值判断待测试的初始语音音素数据的所属类别。
优选地,步骤1进一步包括以下步骤:
步骤1.1,使用矩阵乘法和二维卷积核对初始语音音素数据进行矩阵运算和二维卷积计算,计算得到低阶状态向量;
步骤1.2,构造一致性路由网络的一致性路由结构,通过矩阵和向量的元素乘法之后求平均值,将低阶状态向量中的信息传递给高阶状态向量;
步骤1.3,用每个类别对应的高阶状态向量的长度的softmax激活值在所有高阶向量softmax激活值中的占比来表示判别为该类别的语音音素数据的概率。
优选地,初始语音音素数据是通过原始语音数据经过预处理得到,具体包括以下步骤:
步骤A,对原始语音进行巴特沃斯带通滤波,并检测异常值点,去除毛刺噪声点;
步骤B,对滤波后的语音信号进行分帧处理;
步骤C,对分帧后的每一帧语音信号进行特征提取,选取w个特征作为每一帧的w维特征向量;
步骤D,对每一帧的w维特征向量进行归一化处理得到初始语音音素数据。
优选地,步骤1.1中,使用矩阵乘法和二维卷积核对初始语音音素数据进行矩阵运算和二维卷积计算的步骤中使用的编码方法包括:以多层感知机为基本组成单元的全连接网络的编码、二维卷积网络的编码、混合全连接-卷积网络的编码。
优选地,步骤1.1中,利用混合全连接-卷积网络的编码计算得到低阶状态向量的具体步骤包括:
步骤1.11,初始语音音素数据经过一个全连接层连接到具有m1个单元的隐藏层h1,经过激活函数sigmoid作用得到隐藏层h1的输出数据z1;
步骤1.12,将隐藏层h1的输出数据z1重塑为一个三维张量input1,即m2个[b1×b1]大小的特征图谱,通过卷积核大小为[k1×k1]的二维卷积层连接到具有m3个[b2×b2]大小的特征图谱的隐藏层h2,经过激活函数sigmoid作用得到隐藏层h2的输出z2;
步骤1.13,将隐藏层h2的输出数据z2重塑成[n1×lowVec_len]大小的二维张量,代表n1个低阶状态向量,张量矩阵的每一行代表一个低阶状态向量lowVec,每个低阶状态向量的维度是lowVec_len;
步骤1.14,将每个低阶状态向量按照如下公式进行squash归一化处理。
优选地,步骤1.2中,高阶状态向量的个数即为预定的分类类别数目,构造一致性路由网络的一致性路由结构的步骤进一步包括:
步骤1.21,进行低阶状态向量到高阶状态向量的状态转换,每一个低阶状态向量先复制n2份,复制后的每一个低阶状态向量需要转换为一个对应的高阶状态向量,将n1个维度为lowVec_len的低阶状态向量复制n2份得到一个维度为[n1×n2×lowVec_len×1]的张量tile_lowVec,n2为预设的高阶状态向量数目,将tile_lowVec看作是一个包含了n1×n2个低阶状态向量的三维张量,使用基于张量的矩阵乘法得到中间张量P,具体公式如下:
Ρ=W·tile_lowVec
其中W是一个形如[n1×n2×highVec_len×lowVec_len]的权值张量,highVec_len为高阶状态向量维度,·代表张量的矩阵乘法,即执行n1×n2次维度为[highVec_len×lowVec_len]与[lowVec_len×1]的矩阵相乘,P是形如[n1×n2×highVec_len×1]的中间张量,其中W是低阶状态向量转换到高阶状态向量的状态转换系数矩阵,为可迭代更新的参数;
步骤1.22,由于完成状态转换操作之后,每一个高阶状态向量对应n1个低阶状态向量,为了得到一个完整的高阶状态向量,需要对其所有对应的n1个低阶状态向量进行求和平均操作,具体公式如下:
其中lowVeci为该高阶状态向量highVec对应的第i个低阶状态向量,由于上述公式的求和对象是向量,所以求和是向量各个维度上各自求和,先将每个高阶状态向量使用squash函数进行归一化处理,再将n2个高阶状态向量组成一个大的张量矩阵,并且保留第一个维度大小为1,最后的高阶状态张量矩阵大小为[1×n2×highVec_len];
步骤1.23,将高阶状态张量矩阵按照第一个维度复制n1份,n1为低阶状态向量个数,得到形如[n1×n2×highVec_len]的张量v_j,将张量v_j扩增维度得到形如[n1×n2×1×highVec_len]的张量,按张量的矩阵乘法计算张量v_j与中间张量P的乘积得到形如[n1×n2×1]的低阶和高阶状态向量之间的相似性度量矩阵m_s;
步骤1.24,对相似性度量矩阵m_s中的所有元素求取平均值,取平均值的相反数作为正则项加入到后面的总损失中,记该正则项为L_s,L_s表示相似性损失。
优选地,步骤2进一步包括以下步骤:
步骤2.1,根据输入数据所对应的真实标签值,取出相应位置的高阶状态向量,记为trueHighVec;
步骤2.2,将向量trueHighVec经过包括隐藏层de_fc1和隐藏层de_fc2的全连接层,以全连接的方式连接到输出维度为w的解码器输出层,w为初始语音音素数据的维度,解码出的重构数据与初始语音音素数据具有相同的数据格式。
优选地,步骤3中,对一致性路由网络中的可更新参数进行优化,以最小化总损失的步骤进一步包括:
步骤3.1,采用解码器输出的重构数据与初始语音音素数据之间各个维度对应的距离的平方差之均值作为重构损失L_r;
步骤3.2,根据所有高阶状态向量的长度得到分类损失L_c,分类损失表示高阶状态向量的长度与期望值阈值的差距,计算公式如下:
其中k是预测音素符号,Tk是一个分类标签指示函数,当k指向真实音素符号时,Tk为1,||highVeck||表示预测音素符号k对应的归一化后的高阶状态向量的长度,m+和m-分别为归一化后的单个高阶状态向量长度的上下限值,max函数表示取两个数值中较大的一个,λ为非真实音素符号对应的分类损失之和的缩放系数;
步骤3.3,总损失函数L_t=L_c+ηL_r+γL_s,其中η是用于调整重构损失在总损失中的比重的比例系数,γ是用于调整相似性损失在总损失中的比重的比例系数,采用自适应矩估计法对总损失函数进行优化,以最小化总损失。
优选地,步骤3.3中最小化总损失具体为:使用链式求导法则和反向传播算法计算出优化目标对于网络中的每个可更新参数的梯度公式,并采用小批量的梯度下降法,在训练时每次前向计算的总损失为小批量数据中所有输入数据对应的总损失的平均值,然后根据每个参数的参数数值更新公式进行计算,从而更新一致性路由网络中的可更新参数数值,其中,可更新参数包括编码器中的权重矩阵、卷积核、一致性路由系数。
与现有技术相比,本发明的有益效果是:1)本发明提供的基于一致性路由网络的语音音素识别方法,实现对语音音素的时序信号所对应的音速符号的快速、精准识别,解决现有技术中按照理论知识直接提取的特征准确度低、语音数据分类效果差、模型计算速度慢、以及过拟合的技术问题;2)本发明方法提取出频域系数等多个维度的特征表征的语音音素数据,颗粒度精细到每一帧,可以对每一帧的音素进行识别,具有较高的实时性;语音数据输入一致性路由网络后,经过卷积层以及一致性路由,可以得到表征所要求的类别的高阶状态向量,根据各个高阶状态向量的长度的softmax激活值可以判断出输入数据属于各个类别的概率;在训练阶段根据高阶状态向量解码重构出输入数据,大大增强了所提取的高阶状态向量对输入数据表征能力的置信度。
附图说明
图1为本发明一种实施例的基于一致性路由网络的语音音素识别方法流程图;
图2为本发明一种实施例中一致性路由网络整体架构中的编码器架构示意图;
图3为本发明一种实施例中一致性路由网络整体架构中的解码器架构示意图;
图4为本发明一种实施例中的squash函数示意图。
具体实施方式
下面将结合本发明中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动条件下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本发明一种实施例的基于一致性路由网络的语音音素识别方法流程图。
基于一致性路由网络的语音音素识别方法,具体步骤如下:
训练阶段:
步骤1,构造一致性路由网络的前馈网络编码器,如图2所示,具体为,
步骤1.1,使用矩阵乘法和二维卷积核对初始语音音素数据进行矩阵运算和二维卷积计算,计算得到结果为低阶状态向量:
lowVec=forward(input0)
其中,lowVec表示编码后的低阶状态向量向量,forward表示编码过程,input0表示初始语音音素数据,即编码器部分的输入数据;
步骤1.2,构造一致性路由网络的一致性路由结构,通过矩阵和向量的的元素乘法之后求平均值,将低阶状态向量中的信息传递给高阶状态向量;
步骤1.3,用每个类别对应的高阶状态向量的长度的softmax激活值在所有高阶向量softmax激活值中的占比来表示判别为该类别的语音音素数据的概率;
步骤2,构造一致性路由网络的重构解码器,将真实标签对应的高阶状态向量进行解码重构;
步骤3,根据softmax激活值的判别结果计算分类损失,根据对比解码器的解码结果和原始数据计算重构损失,根据一致性路由结果计算相似性损失,将以上三个损失项加权求和得到总损失,使用自适应矩估计法对一致性路由网络中的可更新参数进行优化,整个模型的优化目标是使总损失最小化;
测试阶段:
步骤4,将待测试的初始语音音素数据输入一致性路由网络的编码器中,根据所有高阶状态向量长度的softmax激活值判断待测试的初始语音音素数据的所属类别。
具体地,步骤1.1中,所述初始语音音素数据是通过对原始语音数据进行预处理得到,具体包括以下步骤:
A.对原始语音进行巴特沃斯带通滤波,并检测异常值点,去除毛刺噪声点,公式如下:
sp=butter_bandpass_filter(sr,a,b)
其中,sp表示滤波后的语音信号,sr表示未经处理的原始语音数据,butter_bandpass_filter为巴特沃斯带通滤波操作,频率的通带为aHz-bHz;
B.对滤波后的语音信号进行分帧处理;本实施例按照20ms级别的颗粒度对滤波后的语音信号进行分帧处理,即每一帧的时间长度是20ms,本实施例中使用的数据的采样频率是16000Hz,所以每一帧包含320个采样点;
C.对分帧后的每一帧语音信号进行特征提取,选取w个特征作为每一帧的w维特征向量;本实施例中通过傅里叶变换计算每一帧的基音频率、共振峰频率、能量频谱倾斜以及带宽等构成w个维度作为每一帧的特征,去除无关频率成分的影响,w为25;
D.对每一帧的w维(25维)特征向量进行归一化处理得到初始语音音素数据,即将每一帧的w维特征向量按维度除以一个归一化因子,所述归一化因子是一个w维(25维)向量l_norm。将语音信号的特征按各个维度将数值归一化到0-1之间,能够加速分类模型的收敛性能。
步骤1.1中采用的编码方法具体包括以多层感知机为基本组成单元的全连接网络的编码、二维卷积网络的编码、混合全连接-卷积网络的编码。
具体地,利用混合全连接-卷积网络的编码得到低阶状态向量的具体步骤为:
步骤1.11,初始语音音素数据input0(归一化的w维(25维)特征向量)经过一个全连接层连接到具有m1个单元的隐藏层h1,本实施例中m1为1600;全连接层的权重为en_w1,偏置为en_b1,则隐藏层h1的输入为
a1=input0·en_w1+en_b1
其中·为矩阵乘法,经过激活函数sigmoid作用得到隐藏层h1的输出数据z1=sigmoid(a1),a1为一个向量,sigmoid函数映射关系作用于向量的每一个元素上,本实施例中a1的维度为1600。en_w1和en_b1均为可迭代更新的参数。
步骤1.12,将隐藏层h1的输出数据z1重塑为一个三维张量input1,即m2个[b1×b1]大小的特征图谱,本实施例中[b1×b1]为[5×5],m2为64,可通过第三方软件实现重塑,通过卷积核大小为[k1×k1]的二维卷积层连接到具有m3个[b2×b2]大小的特征图谱的隐藏层h2;本实施例中m3为256,b2为3;卷积层的权重为en_w2,偏置为en_b2,且卷积核大小[k1×k1]为[3×3],隐藏层h2的输入为
a2=input1*en_w2+en_b2
其中*为矩阵二维卷积,经过激活函数sigmoid作用得到隐藏层h2的输出z2=sigmoid(a2),本实施例中,a2的大小为[3×3×256]。en_w2和en_b2均为可迭代更新的参数。
步骤1.13,将隐藏层h2的输出数据z2重塑成[n1×lowVec_len]大小的二维张量,代表n1个低阶状态向量,张量矩阵的每一行代表一个低阶状态向量lowVec,每个低阶状态向量的维度是lowVec_len;本实施例中二维张量的大小为[288×8],即n1(288)个低阶状态向量,每个低阶状态向量是元素个数(维度)为8的一个向量。
步骤1.14,将每个低阶状态向量按照如下公式进行squash归一化处理。
squash归一化函数的曲线如图4所示,该函数能将长度较短的低阶状态向量迅速压缩到接近于0的长度,将长度较长的低阶状态向量压缩到接近于1的长度。
所述步骤1.2中,构造一致性路由网络的一致性路由结构,通过矩阵和向量的的元素乘法之后求平均值,将低阶状态向量中的信息传递给高阶状态向量,高阶状态向量的个数即为预定的分类类别数目,所有低阶状态向量根据一致性路由计算出n2个高阶状态向量的向量表示,本实施例中n2为10,具体步骤为:
步骤1.21,将n1个维度为lowVec_len的低阶状态向量复制n2份(10份)得到一个[n1×n2×lowVec_len×1](即[288*10*8*1])的张量tile_lowVec,n2为预设的高阶状态量数目,基于张量的矩阵乘法得到中间张量P,具体公式如下:
Ρ=W·tile_lowVec
其中W是一个形如[n1×n2×highVec_len×lowVec_len](即[288*10*16*8])的权值张量,highVec_len为高阶状态向量维度,本实施例中为16维,·代表张量的矩阵乘法,即执行n1×n2(即288×10)次[highVec_len×lowVec_len](即[16×8])与[lowVec_len×1](即[8×1])的矩阵相乘,P是形如[n1×n2×highVec_len×1](即[288×10×16×1])的中间张量,其中W是低阶状态向量转换到高阶状态向量的状态转换系数矩阵,为可迭代更新的参数;
步骤1.22,由于完成状态转换操作之后,每一个高阶状态向量对应n1个低阶状态向量,为了得到一个完整的高阶状态向量,需要对其所有对应的n1个低阶状态向量进行求和平均操作,具体公式如下:
其中lowVeci是该高阶状态向量highVec对应的第i个低阶状态向量。由于上述公式的求和对象是向量,所以求和是向量各个维度上各自求和。完成求和之后,先将每个高阶状态向量使用squash函数进行归一化处理,再将n2个高阶状态向量组成一个大的张量矩阵,并且保留第一个维度大小为1,最后的高阶状态张量矩阵大小为[1×n2×highVec_len](即[1×10×16]);
步骤1.23,将高阶状态张量矩阵按照第一个维度复制n1份,n1为低阶状态向量个数,得到形如[n1×n2×highVec_len](即[288×10×16])的张量v_j,将张量v_j扩增维度得到形如[n1×n2×1×highVec_len](即[288×10×1×16])的张量,按张量的矩阵乘法计算张量v_j与中间张量P的乘积得到形如[n1×n2×1](即288×10×1)的低阶和高阶状态向量之间的相似性度量矩阵m_s;
步骤1.24,对相似性度量矩阵m_s中的所有元素求取得到平均值,由于模型的期望目标是使得低阶状态向量和高阶状态向量之间的相似性越高越好,但是最后的优化步骤是使得损失最小化,所以取该平均值的相反数作为正则项加入到后面的总损失中,记该正则项为L_s,L_s表示相似性损失。
所述步骤2,构造一致性路由网络的重构解码器,解码器使用堆叠的三层全连接网络构成,将真实音素符号对应的高阶状态向量进行解码重构具体步骤为:
步骤2.1,为了屏蔽无效信息的干扰,将非真实音素符号对应的高阶状态向量中的数丢弃,取出真实符号对应的高阶状态向量trueHighVec,trueHighVec是一个维度为highVec_len的向量,可以将其看做是维度为[1×highVec_len]的矩阵,作为解码器的输入。
步骤2.2,将向量trueHighVec经过包括隐藏层de_fc1和隐藏层de_fc2的全连接层,隐藏层de_fc1的单元数量为m4,隐藏层de_fc2的单元数量为m5,本实施例中m4、m5分别为128和64,以全连接的方式连接到输出维度为w(即25)的解码器输出层,w为初始语音音素数据的维度,解码出的重构数据与初始语音音素数据具有相同的数据格式。
所述步骤3根据总损失对一致性路由网络的参数进行优化,最小化总损失,具体步骤如下:
步骤3.1,采用解码器输出的重构数据与初始语音音素数据之间各个维度对应的距离的平方差之均值作为重构损失L_r;重构损失指示了解码器输出与输入的误差,具体公式如下:
sd=decode(trueHighVec)
其中sd表示根据高阶状态向量trueHighVec解码重构出的数据,decode表示解码器的解码过程,input0表示初始语音音素数据,∑表示对该矩阵中所有的元素求和。
步骤3.2,根据所有高阶状态向量的长度得到分类损失L_c,分类损失表示高阶状态向量的长度与期望值阈值的差距,计算公式如下:
其中k是预测音素符号,Tk是一个分类标签指示函数,当k指向真实音素符号时,Tk为1,||highVeck||表示预测音素符号k对应的归一化后的高阶状态向量的长度,m+和m-分别为归一化后的单个高阶状态向量长度的上下限值,max函数表示取两个数值中较大的一个,即当真实音素符号对应的高阶状态向量长度超过上限,则该高阶状态向量的分类损失忽略,非真实音素符号对应的高阶状态向量长度低于下限时,则该高阶状态向量的分类损失忽略,λ为非真实音素符号对应的分类损失之和的缩放系数;
步骤3.3,总损失函数L_t=L_c+ηL_r+γL_s,其中η是用于调整重构损失在总损失中的比重的比例系数,γ是用于调整相似性损失在总损失中的比重的比例系数,采用自适应矩估计法对总损失函数进行优化,即根据链式求导以及反向传播法则求出总损失函数对一致性路由网络中每一个可更新参数的导数,进而最小化总损失,优化一致性路由网络。
所述步骤3.3中最小化总损失具体为:使用链式求导法则和反向传播算法计算出优化目标对于网络中的每个可更新参数(主要包括编码器中的权重矩阵、卷积核、一致性路由系数等)的梯度公式,并采用小批量的梯度下降法,在训练时每次前向计算的总损失为小批量数据中所有输入数据对应的总损失的平均值,然后根据每个参数的参数数值更新公式进行计算,从而更新一致性路由网络中的可更新参数数值。本实施例中自适应矩估计法的学习率设定为0.001,本实施例的分类方法能够收敛到较优的解,训练时间长短由具体的训练数据大小决定,一般设定训练数据中每个样本都被计算50次后停止训练。
在训练完后,在应用阶段,参数都已固定,在测试阶段不需要再计算高阶状态向量对于真实音素符号的损失,故将计算损失函数的部分以及解码重构部分截断去除,直接根据所有高阶状态向量长度的softmax激活值来判断输入语音数据的所属类别。
采用数据集Arctic对本发明的分类方法进行测试,该数据集采集了两名发音标准的受试者共2264个句子的音频文件,其中音频文件的采样频率是16kHz,2264个句子一共包含了40个类别的音素。为测试本发明在不同分类复杂度下的性能构建了四种测试场景:场景一中分类的音素对象是m和n,共两类;场景二中分类的音素对象是p,r,s和t共四类;场景三中分类的音素对象是ao、ah,ax、ae、ay、aw和aa,共七类;场景四中分类的音素对象是ao、ah,ax、ae、ay、aw、aa、er、ey和eh共十类。具体测试场景如表1所示,测试结果如表2所示,一致性路由与动态路由单个batch训练阶段计算时间对比如表3。
表1四种测试场景
表2四种测试场景中的测试结果
训练正确率 | 测试正确率 | |
场景一 | 100% | 99.82% |
场景二 | 100% | 98.12% |
场景三 | 100% | 97.86% |
场景四 | 100% | 89.72% |
表3一致性路由与动态路由单个batch训练阶段计算时间对比
一致性路由 | 动态路由 | |
场景一 | 1.1s | 7.2s |
场景二 | 1.3s | 9.6s |
场景三 | 1.4s | 13.9s |
场景四 | 1.7s | 21.3s |
采用对音素符号的分类的正确率作为评价指标,正确率的计算分为训练阶段和测试阶段,训练正确率体现了本发明对训练数据的所对应真实音素符号的预测准确率,测试正确率体现本发明对新数据的泛化能力。
由上表可知,本发明提出的分类方法对所有训练数据都具有完美的拟合能力,即使是对于从未被该分类方法接触过的测试数据也具有良好的泛化能力。同时,一致性路由的计算时间至少缩短到了动态路由的七分之一,在多分类场景中效果尤为明显。
本发明提供一种基于一致性路由网络的语音音素识别方法,首先在训练阶段,构造一致性路由前馈网络编码器,对向量初始语音音素数据进行矩阵运算和二维卷积得到低阶状态向量;构造一致性路由网络的一致性路由结构,通过一致性路由系数加权低阶状态向量,将其中的信息传递给高阶状态向量;以每个高阶状态向量的长度的softmax激活值在所有高阶状态向量softmax激活值中的占比来表示判定为该标签的概率;然后构造一致性路由网络的重构解码器,将真实标签对应的高阶状态向量进行解码重构;基于总损失函数对一致性路由网络的参数求得梯度公式进行优化更新;在测试阶段,将初始语音音素数据输入一致性路由网络的前馈编码器中,判断待测试数据的所属类别。本发明实现在小样本数据集上对数字化语音音素的信号所对应的音速符号的精准识别,解决了以往的识别方法准确度低、语音音素数据识别效果差以及过拟合的技术问题。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (7)
1.基于一致性路由网络的语音音素识别方法,其特征在于,包括以下步骤:
步骤1,构造一致性路由网络的前馈网络编码器;包括以下步骤:
步骤1.1,使用矩阵乘法和二维卷积核对初始语音音素数据进行矩阵运算和二维卷积计算,计算得到低阶状态向量;
步骤1.2,构造一致性路由网络的一致性路由结构,通过矩阵和向量的元素乘法之后求平均值,将低阶状态向量中的信息传递给高阶状态向量;
步骤1.3,用每个类别对应的高阶状态向量的长度的softmax激活值在所有高阶向量softmax激活值中的占比来表示判别为该类别的语音音素数据的概率;
步骤2,构造一致性路由网络的重构解码器,将真实标签对应的高阶状态向量进行解码重构;包括以下步骤:
步骤2.1,根据输入数据所对应的真实标签值,取出相应位置的高阶状态向量,记为trueHighVec;
步骤2.2,将向量trueHighVec经过包括隐藏层de_fc1和隐藏层de_fc2的全连接层,以全连接的方式连接到输出维度为w的解码器输出层,w为初始语音音素数据的维度,解码出的重构数据与初始语音音素数据具有相同的数据格式;
步骤3,根据softmax激活值的判别结果计算分类损失,根据对比解码器的解码结果和原始数据计算重构损失,根据一致性路由结果计算相似性损失,将分类损失、重构损失、相似性损失进行加权求和得到总损失,使用自适应矩估计法对一致性路由网络中的所有可更新参数进行优化,使总损失最小化;
步骤4,将待测试的初始语音音素数据输入一致性路由网络的编码器中,根据所有高阶状态向量长度的softmax激活值判断待测试的初始语音音素数据的所属类别。
2.根据权利要求1所述的基于一致性路由网络的语音音素识别方法,其特征在于,初始语音音素数据是通过原始语音数据经过预处理得到,具体包括以下步骤:
步骤A,对原始语音进行巴特沃斯带通滤波,并检测异常值点,去除毛刺噪声点;
步骤B,对滤波后的语音信号进行分帧处理;
步骤C,对分帧后的每一帧语音信号进行特征提取,选取w个特征作为每一帧的w维特征向量;
步骤D,对每一帧的w维特征向量进行归一化处理得到初始语音音素数据。
3.根据权利要求1所述的基于一致性路由网络的语音音素识别方法,其特征在于,步骤1.1中,使用矩阵乘法和二维卷积核对初始语音音素数据进行矩阵运算和二维卷积计算的步骤中使用的编码方法包括:以多层感知机为基本组成单元的全连接网络的编码、二维卷积网络的编码、混合全连接-卷积网络的编码。
4.根据权利要求3所述的基于一致性路由网络的语音音素识别方法,其特征在于,步骤1.1使用的编码方法中,利用混合全连接-卷积网络的编码计算得到低阶状态向量的具体步骤包括:
步骤1.11,初始语音音素数据经过一个全连接层连接到具有m1个单元的隐藏层h1,经过激活函数sigmoid作用得到隐藏层h1的输出数据z1;
步骤1.12,将隐藏层h1的输出数据z1重塑为一个三维张量input1,即m2个[b1×b1]大小的特征图谱,通过卷积核大小为[k1×k1]的二维卷积层连接到具有m3个[b2×b2]大小的特征图谱的隐藏层h2,经过激活函数sigmoid作用得到隐藏层h2的输出z2;
步骤1.13,将隐藏层h2的输出数据z2重塑成[n1×lowVec_len]大小的二维张量,代表n1个低阶状态向量,张量矩阵的每一行代表一个低阶状态向量lowVec,每个低阶状态向量的维度是lowVec_len;
步骤1.14,将每个低阶状态向量按照如下公式进行squash归一化处理:
5.根据权利要求1所述的基于一致性路由网络的语音音素识别方法,其特征在于,步骤1.2中,高阶状态向量的个数即为预定的分类类别数目,构造一致性路由网络的一致性路由结构的步骤包括:
步骤1.21,进行低阶状态向量到高阶状态向量的状态转换,每一个低阶状态向量先复制n2份,复制后的每一个低阶状态向量需要转换为一个对应的高阶状态向量,将n1个维度为lowVec_len的低阶状态向量复制n2份得到一个维度为[n1×n2×lowVec_len×1]的张量tile_lowVec,n2为预设的高阶状态向量数目,将tile_lowVec看作是一个包含了n1×n2个低阶状态向量的三维张量,使用基于张量的矩阵乘法得到中间张量P,具体公式如下:
Ρ=W·tile_lowVec
其中W是一个形如[n1×n2×highVec_len×lowVec_len]的权值张量,highVec_len为高阶状态向量维度,·代表张量的矩阵乘法,即执行n1×n2次维度为[highVec_len×lowVec_len]与[lowVec_len×1]的矩阵相乘,P是形如[n1×n2×highVec_len×1]的中间张量,其中W是低阶状态向量转换到高阶状态向量的状态转换系数矩阵,为可迭代更新的参数;
步骤1.22,由于完成状态转换操作之后,每一个高阶状态向量对应n1个低阶状态向量,为了得到一个完整的高阶状态向量,需要对其所有对应的n1个低阶状态向量进行求和平均操作,具体公式如下:
其中lowVeci为该高阶状态向量highVec对应的第i个低阶状态向量,由于上述公式的求和对象是向量,所以求和是向量各个维度上各自求和,先将每个高阶状态向量使用squash函数进行归一化处理,再将n2个高阶状态向量组成一个大的张量矩阵,并且保留第一个维度大小为1,最后的高阶状态张量矩阵大小为[1×n2×highVec_len];
步骤1.23,将高阶状态张量矩阵按照第一个维度复制n1份,n1为低阶状态向量个数,得到形如[n1×n2×highVec_len]的张量v_j,将张量v_j扩增维度得到形如[n1×n2×1×highVec_len]的张量,按张量的矩阵乘法计算张量v_j与中间张量P的乘积得到形如[n1×n2×1]的低阶和高阶状态向量之间的相似性度量矩阵m_s;
步骤1.24,对相似性度量矩阵m_s中的所有元素求取平均值,取平均值的相反数作为正则项加入到后面的总损失中,记该正则项为L_s,L_s表示相似性损失。
6.根据权利要求5所述的基于一致性路由网络的语音音素识别方法,其特征在于,步骤3中,对一致性路由网络中的可更新参数进行优化,以最小化总损失的步骤包括:
步骤3.1,采用解码器输出的重构数据与初始语音音素数据之间各个维度对应的距离的平方差之均值作为重构损失L_r;
步骤3.2,根据所有高阶状态向量的长度得到分类损失L_c,分类损失表示高阶状态向量的长度与期望值阈值的差距,计算公式如下:
其中k是预测音素符号,Tk是一个分类标签指示函数,当k指向真实音素符号时,Tk为1,||highVeck||表示预测音素符号k对应的归一化后的高阶状态向量的长度,m+和m-分别为归一化后的单个高阶状态向量长度的上下限值,max函数表示取两个数值中较大的一个,λ为非真实音素符号对应的分类损失之和的缩放系数;
步骤3.3,总损失函数L_t=L_c+ηL_r+γL_s,其中η是用于调整重构损失在总损失中的比重的比例系数,γ是用于调整相似性损失在总损失中的比重的比例系数,采用自适应矩估计法对总损失函数进行优化,以最小化总损失。
7.根据权利要求6所述的基于一致性路由网络的语音音素识别方法,其特征在于,步骤3.3中最小化总损失具体为:使用链式求导法则和反向传播算法计算出优化目标对于网络中的每个可更新参数的梯度公式,并采用小批量的梯度下降法,在训练时每次前向计算的总损失为小批量数据中所有输入数据对应的总损失的平均值,然后根据每个参数的参数数值更新公式进行计算,从而更新一致性路由网络中的可更新参数数值,其中,可更新参数包括编码器中的权重矩阵、卷积核、一致性路由系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910035513.9A CN109741733B (zh) | 2019-01-15 | 2019-01-15 | 基于一致性路由网络的语音音素识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910035513.9A CN109741733B (zh) | 2019-01-15 | 2019-01-15 | 基于一致性路由网络的语音音素识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109741733A CN109741733A (zh) | 2019-05-10 |
CN109741733B true CN109741733B (zh) | 2023-01-31 |
Family
ID=66364817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910035513.9A Active CN109741733B (zh) | 2019-01-15 | 2019-01-15 | 基于一致性路由网络的语音音素识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109741733B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7043081B2 (ja) * | 2019-05-23 | 2022-03-29 | 恒雄 新田 | 音声想起認識装置、装着具、音声想起認識方法及びプログラム |
CN112785663B (zh) * | 2021-03-17 | 2024-05-10 | 西北工业大学 | 一种基于任意形状卷积核的图像分类网络压缩方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5749066A (en) * | 1995-04-24 | 1998-05-05 | Ericsson Messaging Systems Inc. | Method and apparatus for developing a neural network for phoneme recognition |
WO2000008634A1 (en) * | 1998-08-07 | 2000-02-17 | Fonix Corporation | Methods and apparatus for phoneme estimation using neural networks |
WO2002091355A1 (en) * | 2001-05-08 | 2002-11-14 | Intel Corporation | High-order entropy error functions for neural classifiers |
CN108171762A (zh) * | 2017-12-27 | 2018-06-15 | 河海大学常州校区 | 一种深度学习的压缩感知同类图像快速重构***与方法 |
CN108629412A (zh) * | 2017-03-15 | 2018-10-09 | 中国科学院声学研究所 | 一种基于无网格最大互信息准则的神经网络训练加速方法 |
CN108986797A (zh) * | 2018-08-06 | 2018-12-11 | 中国科学技术大学 | 一种语音主题识别方法及*** |
CN108985372A (zh) * | 2018-07-11 | 2018-12-11 | 广东技术师范学院 | 一种基于capsule理论和PLSA路由的医学影像分类方法 |
-
2019
- 2019-01-15 CN CN201910035513.9A patent/CN109741733B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5749066A (en) * | 1995-04-24 | 1998-05-05 | Ericsson Messaging Systems Inc. | Method and apparatus for developing a neural network for phoneme recognition |
WO2000008634A1 (en) * | 1998-08-07 | 2000-02-17 | Fonix Corporation | Methods and apparatus for phoneme estimation using neural networks |
WO2002091355A1 (en) * | 2001-05-08 | 2002-11-14 | Intel Corporation | High-order entropy error functions for neural classifiers |
CN108629412A (zh) * | 2017-03-15 | 2018-10-09 | 中国科学院声学研究所 | 一种基于无网格最大互信息准则的神经网络训练加速方法 |
CN108171762A (zh) * | 2017-12-27 | 2018-06-15 | 河海大学常州校区 | 一种深度学习的压缩感知同类图像快速重构***与方法 |
CN108985372A (zh) * | 2018-07-11 | 2018-12-11 | 广东技术师范学院 | 一种基于capsule理论和PLSA路由的医学影像分类方法 |
CN108986797A (zh) * | 2018-08-06 | 2018-12-11 | 中国科学技术大学 | 一种语音主题识别方法及*** |
Non-Patent Citations (1)
Title |
---|
Voice conversion based on Gaussian processes by coherent and asymmetric training with limited training data;Ning Xu etc.;《ELSEVIER》;20131126;正文第124-138页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109741733A (zh) | 2019-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109410917B (zh) | 基于改进型胶囊网络的语音数据分类方法 | |
CN109841226B (zh) | 一种基于卷积递归神经网络的单通道实时降噪方法 | |
US11908455B2 (en) | Speech separation model training method and apparatus, storage medium and computer device | |
CN108172238B (zh) | 一种语音识别***中基于多个卷积神经网络的语音增强算法 | |
CN110211574B (zh) | 基于瓶颈特征和多尺度多头注意力机制的语音识别模型建立方法 | |
CN110245608B (zh) | 一种基于半张量积神经网络的水下目标识别方法 | |
CN112331216A (zh) | 基于复合声学特征和低秩分解tdnn的说话人识别***及方法 | |
KR20080056069A (ko) | 음성 특징 벡터 변환 방법 및 장치 | |
CN112349297A (zh) | 一种基于麦克风阵列的抑郁症检测方法 | |
CN113936681B (zh) | 一种基于掩膜映射和混合空洞卷积网络的语音增强方法 | |
CN112927709B (zh) | 一种基于时频域联合损失函数的语音增强方法 | |
Mallidi et al. | Autoencoder based multi-stream combination for noise robust speech recognition. | |
CN109741733B (zh) | 基于一致性路由网络的语音音素识别方法 | |
CN113488060A (zh) | 一种基于变分信息瓶颈的声纹识别方法及*** | |
KR102406512B1 (ko) | 음성인식 방법 및 그 장치 | |
CN115457980A (zh) | 一种无参考语音的自动化语音质量评估方法及*** | |
CN114863938A (zh) | 一种基于注意力残差和特征融合的鸟语识别方法和*** | |
CN112183582A (zh) | 一种多特征融合的水下目标识别方法 | |
CN112329819A (zh) | 基于多网络融合的水下目标识别方法 | |
CN117310668A (zh) | 融合注意力机制与深度残差收缩网络的水声目标识别方法 | |
Li et al. | A Convolutional Neural Network with Non-Local Module for Speech Enhancement. | |
CN113744725B (zh) | 一种语音端点检测模型的训练方法及语音降噪方法 | |
CN116013339A (zh) | 一种基于改进crn的单通道语音增强方法 | |
CN115910091A (zh) | 引入基频线索的生成式语音分离方法和装置 | |
CN108573698B (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 |