首页 > 乐器声学 专利正文
基于轻量化卷积神经网络的声纹识别方法和装置与流程

时间:2022-02-24 阅读: 作者:专利查询

基于轻量化卷积神经网络的声纹识别方法和装置与流程

1.本技术涉及声纹识别技术领域,具体涉及一种基于轻量化卷积神经网络的声纹识别方法和装置,以及计算机设备和计算机可读存储介质。


背景技术:

2.声纹识别也称作说话人识别,是一种从语音信号中提取说话人的声纹特征,以便于后续进行身份验证的生物特征提取技术。为了实现声纹特征提取的目的,目前主流的方法是基于语音特征向量提取语音中的声纹特征。近几年,随着深度学习领域的飞速发展,本领域技术人员尝试将广泛用于图像特征提取领域的神经网络用于声纹特征提取。然而,由于图像特征和声纹特征之间存在着本质差异,使得利用神经网络进行声纹特征提取的精度不足以满足行业要求。与此同时,神经网络庞大的参数量和计算量,占用了大量的存储空间并且拖累了运算速度。因此,如何提高神经网络的声纹特征提取精度并降低神经网络的参数量和计算量以实现轻量化的目的,成为本领域技术人员努力攻坚的难题。
3.申请内容
4.有鉴于此,本技术实施例致力于提供一种基于轻量化卷积神经网络的声纹识别方法和装置,以及计算机设备和计算机可读存储介质,以解决现有技术中利用神经网络进行声纹特征识别的精度较低以及神经网络的参数量和计算量过大的问题。
5.本技术第一方面提供了一种基于轻量化卷积神经网络的声纹识别方法,轻量化卷积神经网络包括多个特征提取子例程,声纹识别方法包括:获取声学特征向量;基于声学特征向量,顺次执行多个特征提取子例程,分别得到多个第四声纹特征向量;其中,每个特征提取子例程包括至少一个统计选择核卷积子例程,统计选择核卷积子例程包括:对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量,确定多个第一声纹特征向量各自的权重向量,基于权重向量对多个第一声纹特征向量进行加权融合,得到第二声纹特征向量;基于多个特征提取子例程中的多个预定特征提取子例程输出的第四声纹特征向量确定第五声纹特征向量;采用低秩矩阵分解技术对第五声纹特征向量进行全连接,得到第六声纹特征向量,以作为轻量化卷积神经网络的输出;根据轻量化卷积神经网络的输出进行声纹识别。
6.在一个实施例中,对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量包括:利用m个j
×
k的二维卷积核分别对输入特征向量的逐通道特征图进行卷积操作,得到中间声纹特征向量,其中,j和k分别表示二维卷积核的长和宽;利用多个1
×1×
m的卷积核顺次对中间声纹特征向量执行卷积操作,得到第一声纹特征向量,m的数值取决于中间声纹特征向量的通道数。
7.在一个实施例中,确定多个第一声纹特征向量各自的权重向量包括:确定多个第一声纹特征向量的通道统计信息向量;基于通道统计信息向量确定多个第一声纹特征向量的权重向量。
8.在一个实施例中,确定多个第一声纹特征向量的通道统计信息向量包括:对从不
同尺度上提取到的多个第一声纹特征向量执行元素相加操作,得到聚合特征向量;对聚合特征向量进行统计池化操作,得到通道统计信息向量。
9.在一个实施例中,对聚合特征向量进行统计池化操作,得到通道统计信息向量包括:在频率轴上对聚合特征向量进行平均池化操作,得到每个通道的时间特征向量;计算每个通道的时间特征向量的平均值和标准差,得到逐通道平均值向量和逐通道标准差向量;将逐通道平均值向量和逐通道标准差向量拼接,以得到通道统计信息向量。
10.在一个实施例中,基于通道统计信息向量确定多个第一声纹特征向量的权重向量包括:利用第一全连接层对通道统计信息向量进行降维,得到融合后的特征向量;利用第二全连接层对融合后的特征向量进行处理,得到多个第一声纹特征向量对应的多个注意力特征;利用softmax函数将多个注意力特征转化为多个权重向量。
11.在一个实施例中,特征提取子例程包括顺次执行的两个统计选择核卷积子例程;特征提取子例程还包括:对后一个统计选择核卷积子例程输出的第二声纹特征向量进行常规卷积操作,得到第三声纹特征向量;对前一个统计选择核卷积子例程的输入特征向量和第三声纹特征向量进行残差计算,得到第四声纹特征向量,以作为特征提取子例程的最终输出特征向量。
12.在一个实施例中,基于多个特征提取子例程中的多个预定特征提取子例程输出的第四声纹特征向量确定第五声纹特征向量包括:对多个预定特征提取子例程各自输出的第四声纹特征向量进行空间变换,以将三轴特征图变换为两轴特征图;对两轴特征图沿时间轴计算平均值向量和标准差向量;将全部平均值向量和标准差向量拼接,以得到第五声纹特征向量。
13.在一个实施例中,多个特征提取子例程输出的第四声纹特征向量的时间维度不完全相同。
14.在一个实施例中,根据轻量化卷积神经网络的输出进行声纹识别,包括:基于声纹特征向量和目标说话人数据库中注册的声纹特征向量识别说话人,其中目标说话人数据库存储有基于目标说话人的声学特征向量输入轻量化卷积神经网络得到的声纹特征向量。
15.本技术第二方面提供了一种基于轻量化卷积神经网络的声纹识别装置,包括:获取模块,用于获取声学特征向量;声纹特征提取模块,用于基于声学特征向量,顺次执行多个特征提取子例程,分别得到多个第四声纹特征向量;其中,声纹特征提取模块包括至少一个统计选择核卷积子模块,统计选择核卷积子模块用于:对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量,确定多个第一声纹特征向量各自的权重向量,基于权重向量对多个第一声纹特征向量进行加权融合,得到第二声纹特征向量;多尺度统计池化模块,用于基于多个特征提取子例程中的多个预定特征提取子例程输出的第四声纹特征向量确定第五声纹特征向量;全连接模块,用于采用低秩矩阵分解技术对第五声纹特征向量进行全连接,得到第六声纹特征向量,以作为轻量化卷积神经网络的输出;识别模块,用于根据轻量化卷积神经网络的输出进行声纹识别。
16.根据本技术的第三方面提供了一种计算机设备,包括存储器、处理器以及存储在存储器上被处理器执行的计算机程序,处理器执行计算机程序时实现上述任一实施例提供的基于轻量化卷积神经网络的声纹识别方法的步骤。
17.根据本技术的第四方面提供了一种计算机可读存储介质,其上存储有计算机程
序,其特征在于,计算机程序被处理器执行时实现上述任一实施例提供的基于轻量化卷积神经网络的声纹识别方法的步骤。
18.根据本技术提供的基于轻量化卷积神经网络的声纹识别方法和装置,以及计算机设备和计算机可读存储介质,在声纹特征提取子例程中,通过对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量,确定多个第一声纹特征向量各自的权重向量,基于权重向量对多个第一声纹特征向量进行加权融合,得到输出特征向量,一方面,并行执行的多个不同空洞率的深度可分离卷积操作可以采集目标语音数据中的不同尺度的声纹特征,从而捕获到不同尺度上的上下文信息;另一方面,基于第一声纹特征向量确定各自的权重向量,并基于权重向量对多个第一声纹特征向量进行加权融合,可以根据多个第一特征向量自适应生成各自的权重,达到了根据输入的语音特征数据自适应调整感受野大小的目的,从而提高了声纹特征提取的精度。再一方面,深度可分离卷积技术和低秩矩阵分解技术的应用,极大地降低了模型参数和计算量,实现了轻量化的目的,从而便于在移动设备上部署和应用。
附图说明
19.图1为本技术一示例性实施例提供的轻量化卷积神经网络的架构图。
20.图2为本技术一实施例提供的残差子网络的架构图。
21.图3为本技术一实施例提供的统计选择核卷积模块的执行方法流程图。
22.图4为本技术一实施例提供的统计选择核卷积模块的执行过程示意图。
23.图5为本技术一实施例提供的深度可分离卷积模块的流程示意图。
24.图6为本技术一实施例提供的深度可分离卷积模块的执行过程示意图。
25.图7为本技术一实施例提供的残差子网络的执行过程流程图。
26.图8为本技术一实施例提供的多尺度统计池化层的流程示意图。
27.图9为本技术一实施例提供的损失计算层的执行过程示意图。
28.图10为本技术第一实施例提供的基于轻量化卷积神经网络的声纹识别方法的流程图。
29.图11为本技术一实施例提供基于轻量化卷积神经网络的声纹识别方法的执行过程示意图。
30.图12为本技术第一实施例提供的基于轻量化卷积神经网络的声纹识别装置的结构框图。
31.图13为本技术一示例性实施例提供的电子设备的结构框图。
具体实施方式
32.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
33.声纹识别包括声纹确认、声纹辨认和声纹追踪。其中,声纹确认是一个“一对一”的特征提取系统,从说话人的语音中提取声纹特征,并与指定的声纹模型进行匹配,判断测试
语音来自哪一个所声明的目标说话人。根据对语音文本内容是否有限制这一条件,声纹确认包括文本无关声纹确认和文本相关声纹确认。其中,文本相关的系统不仅判断声纹特征,同时也要判断说话内容是否满足要求,这样的系统文本内容固定。文本无关的系统只需要判断声纹特征是否满足要求,无需判断说话内容,用户可以说任何内容来进行匹配。声纹辨认是一个“一对多”的声纹特征提取系统,从说话人的语音中提取声纹特征,并在声纹模型库中进行检索,判定测试语音属于已注册的说话人模型集合中哪一个人。声纹追踪是一个序列时间标注的任务,对一段包含多个说话人的语音,判断某个时间点或时间段是哪一个人在说话。
34.以文本无关声纹确认系统为例,其包括前端的声纹特征提取网络模型和后端的判决分类器。利用该文本无关声纹确认系统进行说话人确认时,首先将目标说话人的语音特征向量输入到前端的声纹特征提取网络模型,以对语音特征数据进行声纹特征提取,并将提取出的声纹特征向量输入到判决分类器;判决分类器将声纹特征向量与预先建立好的包含目标说话人声纹特征向量和说话人对应关系的模型库进行匹配,以判断目标说话人的身份,从而实现文本无关声纹确认。
35.文本无关声纹确认系统中的声纹特征提取网络模型包括多个卷积层,该多个卷积层使用相同的标准卷积核进行特征提取,标准卷积核是指空洞率为1的卷积核。然而,由于输入的语音特征向量通常为二维向量,包括时间维度和频率维度,时间维度可变,并且时间维度远大于频率维度,而相同的标准卷积核的感受野范围固定,使得声纹特征提取网络模型无法很好地提取到语音的上下文时频信息和较长语音的时间特征信息,导致声纹特征识别精度较低。
36.有鉴于此,本技术提供了一种轻量化卷积神经网络,相当于上面提到的声纹特征提取网络模型。
37.轻量化卷积神经网络
38.图1为本技术一示例性实施例提供的轻量化卷积神经网络的架构图。如图1所示,轻量化卷积神经网络10包括特征提取层11、多尺度统计池化层12和全连接层13。特征提取层11包括至少一个残差子网络110,该至少一个残差子网络110用于对获取到的声学特征向量顺次进行特征提取。多尺度统计池化层12用于对预定的至少一个残差子网络110输出的特征向量进行降维和拼接操作。全连接层13用于将多尺度统计池化层12输出的特征向量通过权重连接,以作为轻量化卷积神经网络10提取到的声纹特征向量。在一个实施例中,轻量化卷积神经网络10还包括损失计算层14,用于轻量化卷积神经网络10的训练过程,通过反向传播算法,更新网络参数,从而使轻量化卷积神经网络10能够提取出更有判别性的声纹特征。
39.图2为本技术一实施例提供的残差子网络110的架构图。如图2所示,每个残差子网络110包括统计选择核卷积模块(statistical selective kernel convolution,sskconv)111、常规卷积模块112和残差模块113。统计选择核卷积模块111能够根据输入的语音特征向量自适应调整感受野大小,并根据调整后的感受野对语音特征向量进行声纹特征提取,从而使得轻量化卷积神经网络10能够自适应地调整提取上下文时频特征的范围,进而提高声纹识别的准确率。这里提到的语音特征向量可以是声学特征向量。声学特征向量是对说话人的语音信号进行声学特征提取得到的。语音信号通常包括音色、音强、音高、音长四种
声学特征,将至少一种声学特征从语音信号中提取出来,得到声学特征向量。在一个实施例中,利用梅尔频率倒谱系数(mel

frequency cepstral coefficients,mfcc)对说话人的语音信号进行声学特征提取。在另一个实施例中,利用梅尔滤波器组(mel

filterbank)对说话人的语音信号进行声学特征提取。四种声学特征又可以分解成九十余种特征,这些特征表现了不同声音的不同波长、频率、强度、节奏。从声学特征向量中分解出的表现波长、频率、强度、节奏的特征称为声纹特征向量。
40.如图2所示,统计选择核卷积模块111包括多个第一卷积单元1110、自适应权重分配单元1111和融合单元1112。多个第一卷积单元1110用于分别对输入的特征向量进行声纹特征提取,多个第一卷积单元1110的感受野不同。自适应权重分配单元1111用于自适应地为多个第一卷积单元1110输出的特征向量分配权重。融合单元1112用于将多个第一卷积单元1110输出的特征向量通过各自的权重融合。
41.根据第一卷积单元1110所属残差子网络110所在层级的不同,输入到第一卷积单元1110中的特征向量可以是输入到轻量化卷积神经网络10中的语音特征向量,例如目标说话人的声学特征向量,或者是前一残差子网络110输出的声纹特征向量。
42.感受野是指卷积神经网络每一层输出的特征图(feature map)上的像素点在输入特征图上映射的区域大小,即特征图上的一个点对应输入特征图上的区域。感受野取决于卷积核的大小、步长和空洞率,多个第一卷积单元1110的感受野不同可以是卷积核的大小、步长和空洞率中的至少一者不同。在一个实施例中,多个第一卷积单元1110的卷积核的空洞率不同。空洞率为1的卷积核称为标准卷积核,空洞率大于或等于2的卷积核称为空洞卷积核,多个第一卷积单元1110的卷积核包括空洞卷积核。由于轻量化卷积神经网络10输入的目标语音数据是(时间*频率)的二维特征向量,且时间维度较高,通常大于200,通过在多个第一卷积单元1110中应用空洞卷积核,可以扩大相应第一卷积单元1110在时间维度上的特征提取范围,以获得较长语音的时间特征信息,从而进一步提高声纹特征的提取精度。与此同时,由于多个第一卷积单元1110的执行过程并列,避免了顺次叠加使用空洞卷积所带来的网格效应问题,从而避免由于空洞卷积的使用所导致的部分特征没有参与到神经网络的计算过程中,进而导致信息丢失的问题。
43.图3为本技术一实施例提供的统计选择核卷积模块111的执行方法流程图。图4为本技术一实施例提供的统计选择核卷积模块111的执行过程示意图。每个残差子网络110对应一个特征提取子例程,统计选择核卷积模块111的执行过程属于特征提取子例程的一部分。结合图2、图3和图4所示,统计选择核卷积模块111的执行方法100包括:
44.步骤s110,多个第一卷积单元1110从不同尺度上并行对输入特征向量进行声纹特征提取。其中,多个第一卷积单元1110的卷积核的空洞率不同。
45.具体而言,如图4所示,假设输入特征向量为x∈r
t
×
f
×
c
,其中,t,f,c分别代表输入特征向量的时间维度、频率维度和通道维度。残差子网络110包括两个第一卷积单元1110,该两个第一卷积单元1110的卷积核的尺寸相同,空洞率不同。例如,如图4所示,两个第一卷积单元1110的卷积核的尺寸均为3
×
3,空洞率分别为1和2。这种情况下,利用两个第一卷积单元1110并行对输入特征向量x进行卷积操作,该卷积操作过程可表示为:
[0046][0047]
[0048]
分别对每个卷积操作后得到的特征向量进行批标准化(batch normalization,bn)处理;然后,分别对每个批标准化处理后得到的特征向量进行线性整流,得到如图4所示的两个第一声纹特征向量,即第一声纹特征向量和第二声纹特征向量
[0049][0050][0051]
公式中,和分别代表两个第一卷积单元1110的卷积操作,b是批标准化函数,δ是线性整流激活函数(rectified linear unit,relu)。
[0052]
步骤s120,自适应权重分配单元1111自适应确定每个第一卷积单元1110输出的第一声纹特征向量的权重向量。
[0053]
具体而言,第一步,确定全部第一卷积单元1110输出的第一声纹特征向量的通道统计信息向量。
[0054]
首先,对第一声纹特征向量和第一声纹特征向量执行元素相加操作,得到聚合特征向量u:
[0055][0056]
其次,由于统计池化方法在声纹识别任务上取得了良好的效果,本实施例对聚合特征向量进行统计池化操作,生成聚合特征向量u的通道统计信息向量s。
[0057]
例如,先在频率轴上对聚合特征向量u进行平均池化操作。假设,c表示通道索引号,则经过平均池化操作后,获得每个通道的时间特征向量:
[0058][0059]
h
c
(t)是第c个通道的时间特征向量。之后分别计算每个通道的时间特征向量h
c
(t)的平均值和标准差,获得逐通道平均值向量l和逐通道标准差向量o,其在第c个通道的值分别为:
[0060][0061][0062]
之后将逐通道平均值向量和逐通道标准差向量进行拼接,获得通道统计信息向量s:
[0063]
s=[l;o]
[0064]
通道统计信息向量第二步,基于通道统计信息向量确定每个第一卷积单元1110输出的第一声纹特征向量的权重向量。
[0065]
首先,为了确保轻量化卷积神经网络10适应性地选择出的权重更加精确,先利用
第一全连接层对通道统计信息向量s进行降维处理得到融合后的特征向量z∈r
d
×1:
[0066]
z=f
fc
(s)=δ(β(ws)
[0067]
其中,w∈r
d
×
c
是第一全连接层的参数,δ是relu函数,b是批归一化函数。d是降维后的特征维度,设置方法如下所示:
[0068][0069]
其中,r和l均为超参数,在实验中进行设置。
[0070]
其次,利用第二全连接层对融合后的特征向量z进行处理,得到多个第一声纹特征向量对应的多个注意力特征。
[0071]
例如,为每个第一声纹特征向量设置一个维度为c的第二全连接层,每个第二全连接层的输入都是融合后的特征向量z,输出是不同第一声纹特征向量对应的注意力特征。
[0072]
接着,利用softmax函数将多个注意力特征转化为多个权重向量,以实现在通道维度自适应选择不同空间尺度的信息。
[0073]
例如,利用softmax函数将每个维度为c的注意力特征对应通道的元素和限制为1,从而得到和对应的权重向量,即软注意力向量a=[a1,a2,
……
a
c
]∈r
c
和a=[b1,b2,
……
b
c
]∈r
c

[0074][0075][0076]
其中,a
c
和b
c
为并行执行的两个第一卷积单元1110对应的权重。a,b∈r
c
×
d
分别为两个全连接层的参数矩阵,a
c
∈r1×
d
是a的第c行,a
c
为向量a的第c个元素,b
c
和b
c
的定义与a
c
和a
c
相同,且
[0077]
步骤s130,融合单元1112基于多个第一卷积单元1110输出的第一声纹特征向量的权重向量对多个第一声纹特征向量进行加权融合,得到第二声纹特征向量。
[0078]
具体而言,将两个第一卷积单元1110输出的特征向量与对应软注意力向量逐元素相乘后相加,得到第二声纹特征向量v∈r
t
×
f
×
c

[0079][0080]
v=[v1,v2,

,v
c
],v
c
∈r
t
×
f
[0081]
根据本实施例提供的轻量化卷积神经网络10,通过设置统计选择核卷积模块111,一方面,并行设置的多个第一卷积单元1110可以采集目标语音数据中的不同尺度的声纹特征,从而捕获到不同尺度上的上下文信息;另一方面,可以根据多个第一特征向量自适应生成各自的权重,达到了根据输入的语音特征数据自适应调整感受野大小的目的,从而提高了声纹特征提取的精度。
[0082]
在一个实施例中,如图2所示的残差子网络110中的第一卷积单元1110为深度可分离卷积单元。深度可分离卷积单元主要改变了传统卷积层的内部实现,对外依然保持传统卷积层的输入和输出的特征维度。因此,可以在不修改网络层级结构的情况下,将第一卷积
单元替换为深度可分离卷积单元。
[0083]
图5为本技术一实施例提供的深度可分离卷积单元的流程示意图。图6为本技术一实施例提供的深度可分离卷积单元的执行过程示意图。结合图5和图6所示,深度可分离卷积单元包括逐通道卷积单元和逐点卷积单元。深度可分离卷积单元的执行过程200包括:
[0084]
步骤s210,逐通道卷积单元利用m个j*k的二维卷积核分别对统计选择核卷积模块111输出的特征向量的m个通道特征图进行卷积操作,输出m个特征图,即中间声纹特征向量,其中,j和k分别表示所述二维卷积核的长和宽。二维卷积核的数量m取决于统计选择核卷积模块111输出的特征向量的通道特征图的数量。
[0085]
承接上例,统计选择核卷积模块111输出的特征向量v∈r
t
×
f
×
c
包括c个通道特征图。这种情况下,需要设置c个二维卷积核,利用该c个二维卷积核分别对c个通道特征图一一对应执行卷积操作,得到c个特征图。
[0086]
步骤s220,逐点卷积子单元对逐通道卷积子单元输出的中间声纹特征向量和n个1
×1×
c的卷积核顺次执行卷积操作,输出n个通道的特征图,即第一声纹特征向量。
[0087]
可见,逐通道卷积单元主要关注空间平面特征的提取,卷积计算仅发生在各个通道内部,通道之间并不进行融合。逐点卷积单元实现了输入特征图在通道层面的特征融合。
[0088]
深度可分离卷积单元相比于传统卷积单元而言,前者的参数数量显著减少。例如,二维卷积核的空间尺寸为j
×
k,输入通道和输出通道的数量分别为m和n。则深度可分离卷积与标准卷积的参数量之比为:
[0089][0090]
因此,根据本实施例提供的轻量化卷积神经网络10,达到了模型参数轻量化的目的,从而便于在移动设备上部署和应用。
[0091]
图7为本技术一实施例提供的残差子网络110的执行过程流程图。结合图2和图7所示,残差子网络110包括两个统计选择核卷积模块111、一个常规卷积模块112和残差计算模块113。常规卷积模块112用于对后一个统计选择核卷积模块111输出的特征向量进行常规卷积操作,得到第三声纹特征向量,残差计算模块113用于对前一个统计选择核卷积模块111的输入特征向量和第三声纹特征向量进行残差计算,得到第四声纹特征向量,以作为所述特征提取子例程的最终输出特征向量。例如,残差子网络110的执行过程包括:输入的特征向量顺次经过两次统计选择核卷积、一次常规卷积、批标准化、残差计算,最后通过线性整流函数得到残差子网络110的输出。
[0092]
图8为本技术一实施例提供的多尺度统计池化层12的流程示意图。结合图1和图8所示,多尺度统计池化层12,用于基于预定的多个残差子网络110执行的特征提取子例程输出的特征向量,例如第四声纹特征向量确定第五声纹特征向量。在一个实施例中,预定的多个特征提取子例程输出的特征向量的时间维度不同。例如,在相邻两个预定的所述特征提取子例程中,前一所述特征提取子例程输出的特征向量的时间维度是后一所述特征提取子例程输出的特征向量的时间维度的偶数倍。
[0093]
具体而言,多尺度统计池化层12包括多个变形层121、多个统计池化层122和连接层123,变形层121和统计池化层122一一对应,一个变形层121对应一个预定的残差子网络110。多尺度统计池化层12的执行过程300包括:
[0094]
步骤s310,每个变形层121对一个预定的残差子网络110输出的特征向量进行空间变换,以将三轴特征图变换为两轴特征图。
[0095]
例如,第k个残差子网络110输出的特征向量为其中t
k
,f
k
,c
k
分别为对应特征的时间、频率、通道维度。由于各个残差子网络110输出的特征向量的时间维度并不相同,为了聚合不同时间尺度的特征信息从而提取出具有时间鲁棒性的语音特征,首先,对第k个残差子网络输出的特征向量音特征,首先,对第k个残差子网络输出的特征向量进行变形,将三轴特征向量变形为两轴特征向量,得到:
[0096][0097]
步骤s320,统计池化层122对相应变形层121输出的两轴特征图沿时间轴计算平均值和标准差。
[0098]
在时间维度上对变形层121输出的两轴特征图x
k
进行统计池化,获得平均值向量和标准差向量如下所示:
[0099][0100][0101]
其中,

是代表元素相乘符号。
[0102]
步骤s330,连接层123将全部统计池化层122输出的平均值向量和标准差向量拼接,以得到第五声纹特征向量。
[0103]
首先,将每个统计池化层122输出的平均值μ
k
和标准差σ
k
在时间维度上进行拼接,得到特征向量
[0104]
p
k
=[μ
k

k
],(k=1,2,

,4)
[0105]
其次,将全部统计池化层122的拼接后的特征向量二次拼接,从而得到多尺度统计池化层12的输出特征向量,即第五声纹特征向量e:
[0106]
e=[p1,p2,p3,p4]
[0107]
根据本实施例提供的轻量化卷积神经网络10,利用多个残差子网络110的输出特征向量来确定声纹特征向量,即声纹特征向量聚合了不同的时间尺度信息,使得轻量化卷积神经网络10可以收集到更多的语音特征信息,进一步提高了声纹特征提取的精度。特别地,对于短时语音而言,由于短时语音本身包含的特征信息较少,通过综合不同时间尺度上提取到的特征向量来确定声纹特征向量,在一定程度上弥补了短时语音缺少的特征信息,从而极大地提高了短时语音的声纹特征提取精度。
[0108]
如图1所示,全连接层13用于对多尺度统计池化层12输出的第五声纹特征向量进行全连接,以作为轻量化卷积神经网络10识别出的声纹特征。全连接层13输出的声纹特征输入到后端的判别模型,例如cosine模型,获得相似度得分,进行打分判决,从而获得说话人确认任务的输出。
[0109]
在一个实施例中,由于多尺度统计池化层12的输出维度较高,全连接层13的权值
矩阵参数量较大,在一个实施例中,全连接层13采用低秩矩阵分解技术对多尺度统计池化层12输出的第五声纹特征向量进行全连接,以实现降参的目的,得到第六声纹特征向量,以作为轻量化卷积神经网络10的最终输出。具体而言,假设多尺度统计池化层12输出的特征向量为e∈r
n
,全连接层13输出的特征向量为y∈r
m
,则全连接层13输出的特征向量可以表示为:
[0110]
y=we
[0111]
其中,w∈r
m
×
n
为全连接层13的权值矩阵,本技术方案使用低秩矩阵分解,将w分解为两个矩阵w1∈r
m
×
r
和w2∈r
r
×
n
,如下所示:
[0112]
y=w1w2e
[0113]
其中,r为超参数。使用低秩矩阵分解技术可以大幅度地减少全连接层13的权值矩阵的参数量和计算量,从而减少了轻量化卷积神经网络10在设备上占用的存储空间,并加快了轻量化卷积神经网络10的运算速度。
[0114]
图9为本技术一实施例提供的损失计算层14的执行过程示意图。结合图1和图9所示,损失计算层14采用基于额外角边缘损失的softmax损失函数对全连接层13输出的第六声纹特征向量进行处理,以提高声纹特征向量的可判别性。具体而言,首先,对全连接层13输出的声纹特征向量x
j
和权重向量x
i
分别进行归一化处理;其次,计算归一化后的声纹特征向量和权重向量的点积,该点积等于余弦距离cosθ;接着,对点积cosθ应用反余弦函数,得到声纹特征向量与权重向量的角度θ;然后,在这个角度θ上加上一个角度惩罚因子m;最后,对附加有角度惩罚因子m的角度θ应用softmax激活函数,如下式所示,从而得到说话人和真实说话人的误差。
[0115][0116]
根据本实施例提供的具有惩罚因子的softmax损失函数可以缩小类内差距,扩大类间差距,从而提高了轻量化卷积神经网络10的判别能力。
[0117]
基于轻量化卷积神经网络的声纹识别方法
[0118]
本技术还提供了一种基于上述任一实施例提供的轻量化卷积神经网络进行声纹识别的方法,该声纹识别方法包括轻量化卷积神经网络10的执行过程和判决分类器的执行过程。图10为本技术第一实施例提供的基于轻量化卷积神经网络的声纹识别方法的流程图。结合图1和图10所示,声纹识别方法400包括:
[0119]
步骤s410,获取声学特征向量。
[0120]
步骤s420,基于声学特征向量,顺次执行多个特征提取子例程,分别得到多个第四声纹特征向量;其中,每个特征提取子例程包括至少一个统计选择核卷积子例程,统计选择核卷积子例程包括:对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量,确定多个第一声纹特征向量各自的权重向量,基于权重向量对多个第一声纹特征向量进行加权融合,得到第二声纹特征向量。
[0121]
在一个实施例中,每个特征提取子例程对应一个残差子网络110。
[0122]
步骤s430,基于多个特征提取子例程中的多个预定特征提取子例程输出的第四声纹特征向量确定第五声纹特征向量。在一个实施例中,步骤s430的执行过程对应多尺度统
计池化层12。
[0123]
步骤s440,采用低秩矩阵分解技术对第五声纹特征向量进行全连接,得到第六声纹特征向量,以作为轻量化卷积神经网络的输出。在一个实施例中,步骤s440的执行过程对应全连接层13。
[0124]
步骤s450,根据轻量化卷积神经网络10的输出进行声纹识别。步骤s450即为判决分类器的执行过程。
[0125]
根据本实施例提供的基于轻量化卷积神经网络的声纹识别方法,通过对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量,确定多个第一声纹特征向量各自的权重向量,基于权重向量对多个第一声纹特征向量进行加权融合,得到输出特征向量,一方面,并行执行的多个不同空洞率的深度可分离卷积操作可以采集目标语音数据中的不同尺度的声纹特征,从而捕获到不同尺度上的上下文信息;另一方面,基于第一声纹特征向量确定各自的权重向量,并基于权重向量对多个第一声纹特征向量进行加权融合,可以根据多个第一特征向量自适应生成各自的权重,达到了根据输入的语音特征数据自适应调整感受野大小的目的,从而提高了声纹特征提取的精度。再一方面,深度可分离卷积技术和低秩矩阵分解技术的应用,极大地降低了模型参数,实现了轻量化的目的,从而便于在移动设备上部署和应用。
[0126]
根据上述实施例提供的基于轻量化卷积神经网络的声纹识别方法包括上述任一实施例提供的轻量化卷积神经网络10的执行过程,未在声纹识别方法实施例中描述的具体细节可参见轻量化卷积神经网络10实施例,这里不再赘述。
[0127]
下面以一个具体示例进一步介绍基于轻量化卷积神经网络的声纹识别方法的执行过程。图11为本技术一实施例提供的基于轻量化卷积神经网络模型的声纹识别方法的执行过程示意图。
[0128]
结合图1和图11所示,轻量化卷积神经网络模型10包括1个常规卷积层、16个具有sskconv111的残差子网络110(简称基于sskconv的残差子网络110)、多尺度统计池化层、全连接层和损失函数计算层。16个基于sskconv的残差子网络110从前到后被顺序划分为四组,该四组包括的基于sskconv的残差子网络110的数量分别为3个,4个,6个,3个。每个组的最后一个基于sskconv的残差子网络110输出的特征向量输入到多尺度统计池化层。多尺度统计池化层分别对每个残差子网络110输出的特征向量依次进行改变形状和统计池化后输入到全连接层。全连接层基于低秩分解技术降参,之后输入到后端的判别模型,进而得到说话人预测标签。
[0129]
基于轻量化卷积神经网络的声纹识别装置
[0130]
本技术还提供了基于轻量化卷积神经网络的声纹识别装置。图12为本技术第一实施例提供的基于轻量化卷积神经网络的声纹识别装置的结构框图。如图12所示,声纹识别装置60包括获取模块61、声纹特征提取模块62、多尺度统计池化模块63、全连接模块64和识别模块65。其中,获取模块61用于获取声学特征向量。声纹特征提取模块62用于基于声学特征向量,顺次执行多个特征提取子例程,得到多个第四声纹特征向量。其中,所述声纹特征提取模块包括至少一个统计选择核卷积子模块,所述统计选择核卷积子模块用于:对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量,确定多个第一声纹特征向量各自的权重向量,基于所述权重向量对所述多个第一声纹特征向量
进行加权融合,得到第二声纹特征向量。多尺度统计池化模块63用于基于所述多个特征提取子例程中的多个预定特征提取子例程输出的所述第四声纹特征向量确定第五声纹特征向量。全连接模块64用于采用低秩矩阵分解技术对所述第五声纹特征向量进行全连接,得到第六声纹特征向量,以作为所述轻量化卷积神经网络的输出。识别模块64用于根据轻量化卷积神经网络的输出进行声纹识别。
[0131]
其中,统计选择核卷积子模块包括第一卷积单元、自适应权重分配单元和融合单元。第一卷积单元用于对输入特征向量进行多个不同空洞率的深度可分离卷积操作,得到多个第一声纹特征向量。自适应权重分配单元用于确定多个第一声纹特征向量各自的权重向量。融合单元用于基于权重向量对多个第一声纹特征向量进行加权融合,得到第二声纹特征向量。
[0132]
在一个实施例中,自适应权重分配单元具体用于确定多个第一声纹特征向量的通道统计信息向量;基于通道统计信息向量确定多个第一声纹特征向量的权重向量。在一个实施例中,确定多个第一声纹特征向量的通道统计信息向量具体执行为:对从不同尺度上提取到的多个第一声纹特征向量执行元素相加操作,得到聚合特征向量;对聚合特征向量进行统计池化操作,得到通道统计信息向量。
[0133]
在一个实施例中,基于通道统计信息向量确定多个第一声纹特征向量的权重向量具体执行为:利用第一全连接层对通道统计信息向量进行降维,得到融合后的特征向量;利用第二全连接层对融合后的特征向量进行处理,得到多个第一声纹特征向量对应的多个注意力特征;利用softmax函数将多个注意力特征转化为多个权重向量。
[0134]
在一个实施例中,第一卷积单元用于利用m个j
×
k的二维卷积核分别对输入特征向量的逐通道特征图进行卷积操作,得到中间声纹特征向量,其中,j和k分别表示所述二维卷积核的长和宽;利用多个1
×1×
m的卷积核顺次对中间声纹特征向量执行卷积操作,得到第一声纹特征向量,m的数值取决于中间声纹特征向量的通道数。
[0135]
在一个实施例中,声纹特征提取模块62还包括常规卷积子模块和残差计算子模块。统计选择核卷积子模块、常规卷积子模块和残差计算子模块构成一个特征提取子模块。声纹特征提取模块62包括两个特征提取子模块。常规卷积子模块用于对后一个统计选择核卷积子模块输出的第二声纹特征向量进行常规卷积操作,得到第三声纹特征向量。残差计算子模块用于对前一个统计选择核卷积子模块的输入特征向量和第三声纹特征向量进行残差计算,得到第四声纹特征向量。
[0136]
在一个实施例中,多尺度统计池化模块63用于基于多个特征提取子例程中的多个预定特征提取子例程输出的第四声纹特征向量确定第五声纹特征向量。全连接层64用于采用低秩矩阵分解技术对第五声纹特征向量进行全连接,得到第六声纹特征向量,以作为轻量化卷积神经网络的输出。
[0137]
在一个实施例中,多尺度统计池化模块63具体用于对多个预定特征提取子模块输出的第四声纹特征向量进行空间变换,以将三轴特征图变换为两轴特征图;对两轴特征图沿时间轴计算平均值向量和标准差向量;将多个残差子网络的平均值向量和标准差向量拼接,以得到第五声纹特征向量。
[0138]
在一个实施例中,多个特征提取子例程输出的特征向量的时间维度不同。
[0139]
在一个实施例中,多个特征提取子例程中的一个特征提取子例程输出的特征向量
的时间维度是下一特征提取子例程输出的特征向量的时间维度的偶数倍。
[0140]
在一个实施例中,识别模块64具体用于基于声纹特征向量和目标说话人数据库中注册的声纹特征向量识别说话人,其中目标说话人数据库存储有基于目标说话人的声学特征向量输入轻量化卷积神经网络得到的声纹特征向量。
[0141]
根据本技术任一实施例提供的基于轻量化卷积神经网络的声纹识别装置,与本技术任一实施例提供的基于轻量化卷积神经网络的声纹识别方法属于同一申请构思,未在声纹识别装置实施例中具体描述的细节可以参阅声纹识别方法实施例,这里不再赘述。
[0142]
图13为本技术一示例性实施例提供的电子设备的结构框图。如图13所示,电子设备100包括一个或多个处理器110和存储器120。
[0143]
处理器110可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备100中的其他组件以执行期望的功能。
[0144]
存储器120可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器110可以运行所述程序指令,以实现上文所述的本技术的各个实施例的基于轻量化卷积神经网络的声纹识别方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
[0145]
在一个示例中,电子设备100还可以包括:输入装置130和输出装置140,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
[0146]
输入装置130可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置130可以是通信网络连接器,用于接收所采集的输入信号。此外,该输入设备130还可以包括例如键盘、鼠标等等。
[0147]
输出装置140可以向外部输出各种信息,包括确定出的距离信息、方向信息等。输出设备140可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
[0148]
当然,为了简化,图13中仅示出了该电子设备100中与本技术有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备100还可以包括任何其他适当的组件。
[0149]
除了上述方法和设备以外,本技术的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本技术各种实施例的基于轻量化卷积神经网络的声纹识别方法中的步骤。
[0150]
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本技术实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备
或服务器上执行。
[0151]
此外,本技术的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本技术各种实施例的基于轻量化卷积神经网络的声纹识别方法中的步骤。
[0152]
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0153]
以上结合具体实施例描述了本技术的基本原理,但是,需要指出的是,在本技术中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本技术的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本技术为必须采用上述具体的细节来实现。
[0154]
本技术中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
[0155]
还需要指出的是,在本技术的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本技术的等效方案。
[0156]
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本技术。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本技术的范围。因此,本技术不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。应当理解,本技术实施例描述中所用到的限定词“第一”、“第二”、“第三”、“第四”、“第五”和“第六”仅用于更清楚的阐述技术方案,并不能用于限制本技术的保护范围。为了例示和描述的目的已经给出了以上描述。此描述不意图将本技术的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。