本申请属于声纹识别领域,具体涉及一种声纹识别方法、装置、电子设备及存储介质。
背景技术:
近年来,声纹识别这种新兴的生物识别手段因其安全便利性受到了很大关注。声纹识别是基于不同人的发声器官例如肺、气管、声带、口腔、鼻腔、咽腔等在尺寸和形态方面存在的生理差异,利用每个人语音中包含的独特信息,进行个人身份的识别和验证。相关的声纹识别方法,在对待识别音频数据进行识别时,识别的精度还有待提高。
技术实现要素:
鉴于上述问题,本申请提出了一种声纹识别方法、装置、电子设备以及存储介质,以实现改善上述问题。
第一方面,本申请实施例提供了一种声纹识别方法,所述方法包括:获取待识别音频数据的声学特征;将所述声学特征输入目标神经网络,获取所述目标神经网络输出的所述待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解;基于所述声纹特征对所述待识别音频数据进行识别。
第二方面,本申请实施例提供了一种声纹识别装置,所述装置包括:声学特征获取单元,用于获取待识别音频数据的声学特征;声纹特征获取单元,用于将所述声学特征输入目标神经网络,获取所述目标神经网络输出的所述待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解;识别单元,用于基于所述声纹特征对所述待识别音频数据进行识别。
第三方面,本申请实施例提供了一种电子设备,包括一个或多个处理器以及存储器;一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行上述的方法。
本申请实施例提供了一种声纹识别方法、装置、电子设备及存储介质。首先获取待识别音频数据的声学特征,然后将声学特征输入目标神经网络,获取目标神经网络输出的待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解,最后基于声纹特征对待识别音频数据进行识别。通过上述方法,目标神经网络中引入了半正交卷积块,使得目标神经网络能够提取出待识别音频数据所包括的重要声纹信息,把无关的噪声信息滤除,从而发挥出抗噪的能力,进而可以提高目标神经网络在噪声环境中进行声纹识别的精度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一实施例提出的一种声纹识别方法的流程图;
图2示出了本申请另一实施例提出的一种声纹识别方法的流程图;
图3示出了本申请另一实施例提出的一种初始神经网络的网络结构示意图;
图4示出了本申请另一实施例提出的一种得到新的高维度矩阵的流程图;
图5示出了本申请另一实施例提出的一种获取半正交卷积块的输出的流程图;
图6示出了本申请另一实施例提出的一种得到目标高维度矩阵的流程图;
图7示出了本申请又一实施例提出的一种声纹识别方法的流程图;
图8示出了本申请实施例提出的一种声纹识别装置的结构框图;
图9示出了本申请实施例提出的另一种声纹识别装置的结构框图;
图10示出了本申请实时中的用于执行根据本申请实施例的声纹识别方法的电子设备的结构框图;
图11示出了本申请实时中的用于保存或者携带实现根据本申请实施例的声纹识别方法的程序代码的存储单元。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
声纹识别,是从一段语音中提取分析和提取出说话人的个性特征,自动确定说话人的过程。声纹识别技术作为一种典型的声纹特征识别技术,以其便捷、安全可靠等特点,在安防领域、公安司法领域、军事领域及医学领域都有广泛的应用前景。
声纹识别技术,又称为说话人识别技术,是一种生物识别的技术。说话人识别技术包括说话人确认技术和说话人辨认技术,说话人确认是指判断一段话是否为某人所说,为“一对一”问题;说话人辨认是指在n个已知样本中选择一个与未知音频样本最像的一个音频,是“多选一”问题。
发明人在对相关的声纹识别方法的研究中发现,神经网络模型已经被广泛地应用于声纹识别领域。在深度神经网络的帮助下,声纹识别技术得到了快速的发展。例如,x-vector系统采用时延神经网络(timedelayneuralnetwork,tdnn),取得了很好的效果。但是,时延神经网络在强噪声环境中对待识别音频数据的识别效果下降,抗噪的能力不足,导致在对待识别音频数据进行识别时,识别的精度还有待提高。
因此,发明人提出了本申请中的首先获取待识别音频数据的声学特征,然后将声学特征输入目标神经网络,获取目标神经网络输出的待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解,最后基于声纹特征对待识别音频数据进行识别,通过在目标神经网络中引入了半正交卷积块,可以使得目标神经网络能够提取出待识别音频数据所包括的重要声纹信息,把无关的噪声信息滤除,从而发挥出抗噪的能力,进而可以提高目标神经网络在噪声环境中进行声纹识别的精度的声纹识别方法、装置、电子设备以及存储介质。
下面将结合附图具体描述本申请的各实施例。
请参阅图1,本申请实施例提供的一种声纹识别方法,应用于电子设备,所述方法包括:
步骤s110:获取待识别音频数据的声学特征。
在本申请实施例中,所述待识别音频数据为需要进行声纹识别的一段连续的语音,例如一个句子、一段话等;所述声学特征是指用于表征待识别音频数据的语音声学特性的物理量,比如音长、音强、音高、音质等;具体的声学特征可以为待识别音频数据的梅尔频率倒谱系数(mfcc),或感知线性预测系数(plp),或滤波器组特征(filterbankfeature)等。当然,所述声学特征也可为所述待识别音频数据的原始语音数据。
作为一种方式,可以将mfcc(mel-frequencycepstralcoefficients,梅尔频率倒谱系数)作为待识别音频数据的声学特征提取,具体的,依次对待识别音频数据经过预加重、分帧加窗的预处理、快速傅里叶变换、mel滤波以及倒谱分析等操作,得到待识别音频数据的声学特征mfcc。
其中,采用预加重处理能够消除说话人发声过程中声带和嘴唇等造成的干扰,可以有效补偿待识别音频数据被压抑的高频部分,并且能够突显待识别音频数据高频的共振峰,加强待识别音频数据的信号幅度,有助于提取待识别音频数据的声学特征。
将预加重后的待识别音频数据进行分帧处理。分帧是指将整段的语音信号切分成若干段的语音处理技术,每帧的大小在10-30ms的范围内,以大概1/2帧长作为帧移。帧移是指相邻两帧间的重叠区域,能够避免相邻两帧变化过大的问题。对待识别音频数据进行分帧处理能够将待识别音频数据分成若干段的语音数据,可以细分待识别音频数据,便于待识别音频数据的声学特征的提取。
将分帧后的待识别音频数据进行加窗处理。在对待识别音频数据进行分帧处理后,每一帧的起始段和末尾端都会出现不连续的地方,所以分帧越多与原始信号的误差也就越大。采用加窗能够解决这个问题,可以使分帧后的待识别音频数据变得连续,并且使得每一帧能够表现出周期函数的特征。加窗处理具体是指采用窗函数对待识别音频数据进行处理,窗函数可以选择汉明窗。对待识别音频数据进行加窗处理,能够使得分帧后的待识别音频数据在时域上的信号变得连续,有助于提取待识别音频数据的声学特征。
对预处理后的待识别音频数据作快速傅里叶变换,获取待识别音频数据的频谱,并根据频谱获取待识别音频数据的功率谱。其中,快速傅里叶变换(fastfouriertransformation,简称fft),指利用计算机计算离散傅里叶变换的高效、快速计算方法的统称。采用这种计算方法能使计算机计算离散傅里叶变换所需要的乘法次数大为减少,特别是被变换的抽样点数越多,fft算法计算量的节省就越显著。通过将待识别音频数据从时域上的信号幅度转换为频域上的信号幅度,再根据该频域上的信号幅度获取待识别音频数据的功率谱,为而从带识别音频数据的功率谱中提取待识别音频数据数的声学特征提供重要的技术前提。
再采用梅尔刻度滤波器组处理待识别音频数据的功率谱,获取待识别音频数据的梅尔功率谱。其中,采用梅尔刻度滤波器组处理待识别音频数据的功率谱是对功率谱进行的梅尔频率分析,而梅尔频率分析是基于人类听觉感知的分析。观测发现人耳就像一个滤波器组一样,只关注某些特定的频率分量(即人的听觉对频率是有选择性的),也就是说人耳只让某些频率的信号通过,而直接无视不想感知的某些频率信号。
具体地,梅尔刻度滤波器组包括多个滤波器,这些滤波器在频率坐标轴上却不是统一分布的,在低频区域有很多的滤波器,分布比较密集,但在高频区域,滤波器的数目就变得比较少,分布很稀疏。可以理解地,梅尔刻度滤波器组在低频部分的分辨率高,跟人耳的听觉特性是相符的,这也是梅尔刻度的物理意义所在。通过采用梅尔频率刻度滤波器组对频域信号进行切分,使得最后每个频率段对应一个能量值,若滤波器的个数为22,那么将得到待识别音频数据的梅尔功率谱相对应的22个能量值。通过对待识别音频数据的功率谱进行梅尔频率分析,使得该功率谱保留着与人耳特性密切相关的频率部分,该频率部分能够很好地反映出待识别音频数据的声纹特征。
在梅尔功率谱上进行倒谱分析,获取待识别音频数据的梅尔频率倒谱系数,并将获取到的梅尔频率倒谱系数确定为待识别音频数据的声学特征。其中,倒谱(cepstrum)是指一种信号的傅里叶变换谱经对数运算后再进行的傅里叶反变换,由于一般傅里叶谱是复数谱,因而倒谱又称复倒谱。通过倒谱分析,可以将原本特征维数过高,难以直接使用的待识别音频数据的梅尔功率谱中包含的特征,通过在梅尔功率谱上进行倒谱分析,转换成能够在模型训练过程中直接使用的待识别音频数据的声学特征,该声学特征即为梅尔频率倒谱系数。
在本申请实施例中,待识别音频数据的其他声学特征也可以利用该声学特征特有的提取算法进行特征提取,在本申请实施例中不再一一赘述。
可选的,在获取到待识别音频数据后,可以基于接收到的声学纹特征提取指令,提待识别音频数据的声学特征。
步骤s120:将所述声学特征输入目标神经网络,获取所述目标神经网络输出的所述待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解。
在本申请实施例中,所述半正交卷积块可以理解为将一个隐藏层拆分为两个隐藏层,这两个隐藏层分别用于实现矩阵维度的降低和矩阵维度的增大,在实现矩阵维度的降低的同时保证降低维度后的矩阵符合半正交,并且两个隐藏层都是卷积层,所以将这两个隐藏层合叫半正交卷积块。其中,使用半正交卷积块的好处是,可以降低待识别音频数据的声学特征的参数量的同时,最大限度的不损失待识别音频数据的声学特征的关键信息。
作为一种方式,在获取到待识别音频数据的声学特征(如mfcc特征)后,该声学特征可以以矩阵(向量)的形式表示,可以直接将矩阵形式的待识别音频数据的声学特征输入到目标神经网络中,进行声纹特征的提取。其中,声纹特征用于描述待识别音频数据中的声纹的特征信息,每个待识别音频数据都具有对应的声纹特征,所述声纹特征可以包括i-vector特征或说话人分类dnn深瓶颈特征等。
步骤s130:基于所述声纹特征对所述待识别音频数据进行识别。
当通过上述方式获取到待识别音频数据的声纹特征后,可以对待识别音频数据的声纹特征与声纹数据库中预先存储的声纹特征数据进行相似度计算,进而确定待识别音频数据对应的用户。
本申请提供的一种声纹识别方法,首先获取待识别音频数据的声学特征,然后将声学特征输入目标神经网络,获取目标神经网络输出的待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解,最后基于声纹特征对待识别音频数据进行识别。通过上述方法,目标神经网络中引入了半正交卷积块,使得目标神经网络能够提取出待识别音频数据所包括的重要声纹信息,把无关的噪声信息滤除,从而发挥出抗噪的能力,进而可以提高目标神经网络在噪声环境中进行声纹识别的精度。
请参阅图2,本申请实施例提供的一种声纹识别方法,应用于电子设备,所述方法包括:
步骤s210:获取多个训练样本,其中,每个训练样本包括多帧连续的音频数据中每帧音频数据对应的声学特征以及每个训练样本对应的用户标签。
在本申请实施例中,为了区分不同目标用户对应的音频数据,可以使每一个目标用户的音频数据都携带相应的用户标签,该用户标签是用于唯一识别用户的标识,示例性的,用户标签可以为目标说话人的身份证号或电话号码等。
作为一种方式,所述多个训练样本可以为预先采集的并且经过预处理的训练集中的音频数据。其中,预处理可以为对音频数据进行去噪处理以及平滑处理等。可选的,所述多个训练样本可以为训练集中的所有音频数据,也可以为训练集中的部分音频数据。具体的,可以根据需要进行训练的初始神经网络的网络参数来确定训练样本的数量。若初始神经网络的网络参数的值越接近预设值,那么需要获取的训练样本的数据可以越少,反之,则需要获取的训练样本的数量可以越多。
步骤s220:基于所述多个训练样本,对初始神经网络模型进行训练,得到所述目标神经网络。
在本申请实施例中,初始神经网络可以为因式分解时延卷积-循环神经网络,初始神经网络的网络结构可以如图3所示,初始神经网络可以包括输入层、以及进行跳连接的多个半正交卷积块、循环层、池化层、隐藏层以及输出层。当然,图3所示的网络结构只是初始神经网络的示意图,初始神经网络还可以包括比图3更多的隐藏层以及半正交卷积块。
将多个训练样本作为初始神经网络的输入,对初始神经网络进行训练。具体的,每个训练样本中可以包括连续多帧的音频数据,这里的连续是指在时间上的连续。连续多帧的音频数据中的每一帧音频数据都有对应的声学特征,并且每个训练样本附有对应的用户标签,其中用户标签可以为人为预先设定的。
将每个训练样本的每一帧音频数据对应的声学特征以及每个训练样本对应的用户标签输入到初始神经网络的输入层。在输入时,可以将每个训练样本的所有帧音频数据对应的声学特征以及该训练样本对应的用户标签以矩阵的形式进行表达,进而在将向初始神经网络的输入层输入训练样本的声学特征和用户标签时,可以直接将该训练样本对应的矩阵输入到初始神经网络的输入层中。
进而,初始神经网络的输入层可以将输入的训练样本对应的矩阵输入到下一层(半正交卷积块)中,并且依次经过半正交分解运算、卷积运算、激活与规整函数运算和整合预算等四次运算,得到再下一层的输入矩阵。
具体的,如图3所示,半正交分解运算用于将输入到半正交卷积块中的训练样本对应的矩阵a进行因式分解,以得到半正交权重矩阵n,进而可以实现降低参数量的同时,能最大限度不损失训练样本中的有效声纹信息。
卷积运算用于对半正交权重矩阵n进行卷积运算,得到卷积权重矩阵m,通过卷积运算可以使得多个卷积核学习不同尺度上的声纹信息,抽象提取训练样本中的关键声纹信息。
激活与规整函数运算用于对卷积权重矩阵m进行非线性激活处理,并对卷积权重矩阵m对应的权重进行规整处理,以得到矩阵b,其中,可以利用激活与规整函数对卷积权重矩阵m进行非线性激活处理和规整处理。
块整合运算用于将矩阵b与矩阵a进行相加或拼接等整合运算,结合成一个输出矩阵c,将输出矩阵c作为与当前半正交卷积块相邻的下一层的输入。其中,通过块整合运算可以避免梯度弥散和加快初始神经网络的学习速度,并且可以最大限度的保留原始数据的信息。
在图3中,不同的半正交卷积块之间可以通过跳连接进行连接,进而,可以通过跳连接将连接的不同的半正交矩阵块进行半正交分解运算后得到的半正交权重矩阵n进行叠加或拼接等整合运算,结合成一个新的矩阵n。
池化层可以用于将当前训练样本的所有帧音频数据在初始神经网络中前向传播后得到的矩阵进行整合,以得到当前训练样本对应的声纹特征。可以理解的是,在将训练样本的声学特征和用户标签输入到初始神经网络的输入层的时候,可以将一个训练样本划分为多个等时长的子训练样本,进而池化层可以将多个等时长的子训练样本对应的声纹特征进行整合,得到每个训练样本对应的完整的声纹特征。
循环层可以用于强化初始神经网络的时序建模能力,提升初始神经网络在长语音上的分类识别精度。
输出层可以用于结合初始神经网络的最终输出与当前训练样本对应的用户标签计算损失,进而可以根据损失计算梯度后反向传播给每个隐藏层去更新参数,得到目标神经网络。
步骤s230:获取待识别音频数据的声学特征。
步骤s230具体可以参照上述实施例中的详细解释,故不在本实施例进行赘述。
步骤s240:通过所述第一隐藏层对输入到所述半正交卷积块中的所述声学特征对应的权重矩阵进行降维操作,得到低维度矩阵。
在本申请实施例中,所述半正交卷积块包括第一隐藏层和第二隐藏层,所述第一隐藏层和第二隐藏层均为卷积层。
在实际应用中,可以通过半正交卷积块中的第一隐藏层对输入到半正交卷积块中的声学特征对应的权重矩阵进行降维操作,得到降低维度后的低维度矩阵。通过这种方法,可以去除声学特征对应的权重矩阵中的噪音数据。
步骤s250:通过所述第二隐藏层对所述低维度矩阵进行增维操作,得到新的高维度矩阵。
在实际应用中,可以通过半正交卷积块中的第二隐藏层对低维度矩阵进行增维操作,得到新的高维度矩阵。在本申请实施例中,新的高维度矩阵滤除了无关的噪声信息。
如图4所示,所述步骤s250具体可以包括如下步骤:
步骤s251:对输入到所述半正交卷积块中的声学特征的权重矩阵进行因式分解,并对进行因式分解后的权重矩阵进行半正交约束,以得到符合半正交的第一矩阵。
通过上述方法可以实现降低待识别音频数据对应的声学特征的参数量的同时,能最大限度不损失待识别音频数据中的有效声纹信息。
步骤s252:将所述第一矩阵进行卷积运算,生成第二矩阵。
通过上述方法可以使得半正交卷积块中的多个卷积核学习不同尺度上的声纹信息,抽象提取待识别音频数据中的关键声纹信息。
步骤s253:对所述第二矩阵进行非线性激活处理,并将所述第二矩阵对应的权重进行规整处理,以得到所述新的高维度矩阵。
在本申请实施例中,可以利用激活与规整函数对第二矩阵进行非线性激活处理和规整处理。
如图5所示,步骤s253之后还包括:
步骤s254:将所述新的高纬度矩阵与所述权重矩阵进行整合运算,得到第四矩阵。
通过上述方法可以最大限度的保留待识别音频数据的原始数据信息。
步骤s255:将所述第四矩阵作为所述半正交卷积块的输出。
步骤s260:基于所述新的高维度矩阵得到所述待识别音频数据的声纹特征。
在本申请实施例中,将新的高维度矩阵依次输入到循环层、池化层以及隐藏层中,进而可以以池化层后的某一隐藏层作为声纹特征提取层,提取出待识别音频数据的声纹特征。
如图6所示,所述步骤s260具体可以包括如下步骤:
步骤s261:获取多个所述半正交卷积块中的目标半正交卷积块,其中,所述目标半正交卷积块包括至少两个半正交卷积块。
在本申请实施例中,目标半正交卷积块包括至少两个半正交卷积块,可以理解为目标半正交卷积块中可以包括通过跳连接进行连接的至少两个半正交卷积块。
步骤s262:获取所述目标半正交卷积块各自输出的新的高维度矩阵,以得到多个新的高维度矩阵。
步骤s263:将所述多个新的高维度矩阵进行拼接,得到目标高维矩阵。
步骤s264:将所述目标高维度矩阵作为与参考半正交卷积块相邻的下一层的输入,其中,所述参考半正交卷积块为所述目标半正交卷积块所包括的多个半正交卷积块中位于最后的半正交卷积块。
步骤s265:基于所述目标高维度矩阵,得到所述待识别音频数据的声纹特征。
通过上述方法,可以把待识别音频数据中原始的梯度信息以最大限度保留传输到目标神经网络的损失函数中去。
步骤s270:基于所述声纹特征对所述待识别音频数据进行识别。
步骤s270具体可以参照上述实施例中的详细解释,故不在本实施例进行赘述。
本申请提供的一种声纹识别方法,首先获取多个训练样本,基于多个训练样本,对初始神经网络进行训练,以得到目标神经网络,然后获取待识别音频数据的声学特征,通过半正交卷积块的第一隐藏层对输入到半正交卷积块中的声学特征对应的权重矩阵进行降维操作,得到低维度矩阵,再通过半正交卷积块的第二隐藏层对低维度矩阵进行增维操作,得到新的高维度矩阵,基于新的高维度矩阵得到待识别音频数据的声纹特征,最后基于声纹特征对待识别音频数据进行识别。
请参阅图7,本申请实施例提供的一种声纹识别方法,应用于电子设备,所述方法包括:
步骤s310:获取多个训练样本,其中,每个训练样本包括多帧连续的音频数据中每帧音频数据对应的声学特征以及每个训练样本对应的用户标签。
步骤s320:将所述每个训练样本中每帧音频数据对应的声学特征以及每个训练样本对应的用户标签作为所述初始神经网络的输入。
步骤s310以及步骤s320具体可以参照上述实施例中的详细解释,故不在本实施例进行赘述。
步骤s330:获取所述初始神经网络输出的每个训练样本对应的用户标签的相似度。
在本申请实施例中,目标神经网络输出的是每个训练样本对应的用户标签的相似度,进而可以基于该相似度与预先标定的用户标签计算损失。
步骤s340:根据所述相似度迭代训练所述初始神经网络,直至所述相似度满足训练条件,将迭代完成的初始神经网络确定为所述目标神经网络。
根据损失调整初始神经网络中需要更新的参数,直至损失小于预设阈值或者训练次数达到预设次数,确定相似度满足训练条件,将迭代完成的初始神经网络确定为目标神经网络。
步骤s350:获取待识别音频数据的声学特征。
步骤s360:将所述声学特征输入目标神经网络,获取所述目标神经网络输出的所述待识别音频数据的声纹特征。
步骤s370:基于所述声纹特征对所述待识别音频数据进行识别。
步骤s350、步骤s360以及步骤s370具体可以参照上述实施例中的详细解释,故不在本实施例进行赘述。
本申请提供的一种声纹识别方法,首先获取多个训练样本,然后将每个训练样本中每帧音频数据对应的声学特征以及每个训练样本对应的用户标签作为初始神经网络的输入,获取初始神经网络输出的每个训练样本对应的用户标签的相似度,根据相似度迭代训练初始神经网络,直至相似度满足训练条件,将迭代完成的初始神经网络确定为目标神经网络,再获取待识别音频数据的声学特征,将声学特征输入目标神经网络,获取目标神经网络输出的所述待识别音频数据的声纹特征,基于声纹特征对待识别音频数据进行识别。通过上述方法,目标神经网络中引入了半正交卷积块,使得目标神经网络能够提取出待识别音频数据所包括的重要声纹信息,把无关的噪声信息滤除,从而发挥出抗噪的能力,进而可以提高目标神经网络在噪声环境中进行声纹识别的精度。
请参阅图8,本申请实施例提供的一种声纹识别装置400,所述装置400包括:
声学特征获取单元410,用于获取待识别音频数据的声学特征。
声纹特征获取单元420,用于将所述声学特征输入目标神经网络,获取所述目标神经网络输出的所述待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解。
作为一种方式,所述声纹特征获取单元420具体用于通过所述第一隐藏层对输入到所述半正交卷积块中的所述声学特征对应的权重矩阵进行降维操作,得到低维度矩阵;通过所述第二隐藏层对所述低维度矩阵进行增维操作,得到新的高维度矩阵;基于所述新的高维度矩阵得到所述待识别音频数据的声纹特征。
可选的,所述声纹特征获取单元420还具体用于获取多个所述半正交卷积块中的目标半正交卷积块,其中,所述目标半正交卷积块包括至少两个半正交卷积块;获取所述目标半正交卷积块各自输出的新的高维度矩阵,以得到多个新的高维度矩阵;将所述多个新的高维度矩阵进行拼接,得到目标高维矩阵;将所述目标高维度矩阵作为与参考半正交卷积块相邻的下一层的输入,其中,所述参考半正交卷积块为所述目标半正交卷积块所包括的多个半正交卷积块中位于最后的半正交卷积块;基于所述目标高维度矩阵,得到所述待识别音频数据的声纹特征。
可选的,所述声纹特征获取单元420还具体用于对输入到所述半正交卷积块中的声学特征的权重矩阵进行因式分解,并对进行因式分解后的权重矩阵进行半正交约束,以得到符合半正交的第一矩阵;将所述第一矩阵进行卷积运算,生成第二矩阵;对所述第二矩阵进行非线性激活处理,并将所述第二矩阵对应的权重进行规整处理,以得到所述新的高维度矩阵。
再者,所述声纹特征获取单元420还具体用于将所述新的高纬度矩阵与所述权重矩阵进行整合运算,得到第四矩阵;将所述第四矩阵作为所述半正交卷积块的输出。
识别单元430,用于基于所述声纹特征对所述待识别音频数据进行识别。
请参阅图9,所述装置400还包括:
样本获取单元440,用于获取多个训练样本,其中,每个训练样本包括多帧连续的音频数据中每帧音频数据对应的声学特征以及每个训练样本对应的用户标签。
网络训练单元450,用于基于所述多个训练样本,对初始神经网络模型进行训练,得到所述目标神经网络。
其中,所述网络训练单元具体用于将所述每个训练样本中每帧音频数据对应的声学特征以及每个训练样本对应的用户标签作为所述初始神经网络的输入;获取所述初始神经网络输出的每个训练样本对应的用户标签的相似度;根据所述相似度迭代训练所述初始神经网络,直至所述相似度满足训练条件,将迭代完成的初始神经网络确定为所述目标神经网络。
需要说明的是,本申请中装置实施例与前述方法实施例是相互对应的,装置实施例中具体的原理可以参见前述方法实施例中的内容,此处不再赘述。
下面将结合图10对本申请提供的一种电子设备进行说明。
请参阅图10,基于上述的声纹识别方法、装置,本申请实施例还提供的另一种可以执行前述声纹识别方法的电子设备800。电子设备800包括相互耦合的一个或多个(图中仅示出一个)处理器802、存储器804以及网络模块806。其中,该存储器804中存储有可以执行前述实施例中内容的程序,而处理器802可以执行该存储器804中存储的程序。
其中,处理器802可以包括一个或者多个处理核。处理器802利用各种接口和线路连接整个电子设备800内的各个部分,通过运行或执行存储在存储器804内的指令、程序、代码集或指令集,以及调用存储在存储器804内的数据,执行电子设备800的各种功能和处理数据。可选地,处理器802可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器802可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器802中,单独通过一块通信芯片进行实现。
存储器804可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory)。存储器804可用于存储指令、程序、代码、代码集或指令集。存储器804可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备800在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
所述网络模块806用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯,例如和音频播放设备进行通讯。所述网络模块806可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(sim)卡、存储器等等。所述网络模块806可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。例如,网络模块806可以与基站进行信息交互。
请参考图11,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质900中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质900可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读存储介质900包括非易失性计算机可读介质(non-transitorycomputer-readablestoragemedium)。计算机可读存储介质900具有执行上述方法中的任何方法步骤的程序代码910的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码910可以例如以适当形式进行压缩。
本申请提供的一种声纹识别方法、装置、电子设备以及存储介质,首先获取待识别音频数据的声学特征,然后将声学特征输入目标神经网络,获取目标神经网络输出的待识别音频数据的声纹特征,其中,所述目标神经网络包括半正交卷积块,所述半正交卷积块用于对输入的所述声学特征的权重矩阵进行因式分解,最后基于声纹特征对待识别音频数据进行识别。通过上述方法,目标神经网络中引入了半正交卷积块,使得目标神经网络能够提取出待识别音频数据所包括的重要声纹信息,把无关的噪声信息滤除,从而发挥出抗噪的能力,进而可以提高目标神经网络在噪声环境中进行声纹识别的精度。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。