一种基于堆叠自编码网络的移动录音设备源识别方法与流程

文档序号:15969603发布日期:2018-11-16 23:23阅读:246来源:国知局

本发明属于数字音频数据处理技术领域,尤其涉及一种基于堆叠自编码网络的移动录音设备源识别方法。

背景技术

目前,业内常用的现有技术是这样的:

近年来,随着信息技术发展,数字音频数据的编辑篡改变得十分容易,数字音频取证技术也日益受到广泛的关注,特别是在司法领域有着重要的应用需求。录音设备源识别是通过分析已获取的数字语音信号从而确定其录制设备的一种音频取证技术,可对音频的原始性、真实性、完整性等进行验证。其实,录音设备源识别技术在著名的“**事件”中就已崭露头角。1974年,调查人员发现对话录音中一段18分半的静音无法解释,为此法院指定了一个专业的顾问团进行音频取证(包括来自国际知名实验室、音频分析机构的著名专家),最后确认该静音段中包含多个特定型号的设备信息,是由多个不同的录音设备对原始录音进行多次擦除产生的,使案件调查有了实质性进展。录音设备源识别有很多重要的应用,例如:在司法取证领域,可验证音频证据来源的原始性和真实性;在知识产权保护领域,可协助打击盗版,保护知识产权;在媒体报道领域,可对采访音频资料的原始性、真实性进行鉴定,确保报道的真实可信;

目前设备源噪声的检测的特征提取阶段主要有两种方式,第一种依赖于对完整的录音信息建立模型,首先提取语音信号的enf(电网频率)特征,然后建立相应的模型,最后对特征信息进行判决。第二种方式是对语音信号的静音段(即没有语音信息的一段)进行分析,提取设备源的噪声信号,进而提取相应的特征信息作为最终的分类依据。但是enf特征信息并不是在所有的语音信号中都具有,随着科技的发达,移动终端设备普及,人们获取语音信号的方式有很多种,通过这类移动终端设备录制的语音信号并不具有enf特征信息,因此也无法提取相应的特征作为判决依据。对静音段的处理也同样伴随着很多的问题,在一段语音信号中,并不能保证有静音段,如果在非静音段分离加性噪声提取设备的信道噪声,将是一个很困难的事,提取到的特征表征性不够强,而且在语音信号中静音段非常的短,要利用很短的语音信号去建立数学模型也是一个不符合实际的事。

另外传统的方法在提取语音特征之后使用svm等机器学习的算法进行分类判决,精度相对比较低,而且运算的时间很长。随着深度学习的一些典型算法的提出,是的神经网络有了很好的分类判决功能,基于此,使用了深度堆叠自编码网络来进行特征的分类判决。

综上所述,现有技术存在的问题是:

现有技术中,在基于移动端设备的语音信号上无法提取到enf信号;

基于静音段语音信号的数据太少无法建立模型而且表征性不强;

基于浅层网络的判决分类精度不高。

解决上述技术问题的难度和意义:

本发明是基于设备信息的平均对数幅度谱特征来对设备源进行识别分类,提取平均对数幅度谱的过程中首先使用的是rasta-mfcc特征,经过rasta滤波后的mfcc特征更具有稳健性,提高了特征的表征性能。其次,使用ubm-gmm模型作为基准对录音设备信道进行建模,然后用map算法作自适应调整,即加快了特征提取的速度,也提高了特征的表征特性,同时也降低了数据量,克服了训练多元gmm模型需要大量数据的弊端。



技术实现要素:

针对现有技术存在的问题,本发明提供了一种基于堆叠自编码网络的移动录音设备源识别方法。本发明在语音识别和说话人识别领域,可分别检测训练和测试语音的设备信道信息,建立训练和测试语音之间的信道映射函数,从而解决信道失配问题。

本发明是这样实现的,一种基于堆叠自编码网络的移动录音设备源识别方法,所述基于堆叠自编码网络的移动录音设备源识别方法先提取纯净语音片段的rasta-mfcc特征训练一个gmm-ubm模型;

然后再基于特定设备源的语音片段提取rasta-mfcc特征,进而调整gmm的参数,并提取特定设备源的语音片段的相关对数谱的特征;最后将提取到的特征用来训练深度自编码网络,进行自动识别分类。

进一步,所述基于堆叠自编码网络的移动录音设备源识别方法具体包括:

步骤一:计算纯净语音平均对数幅度谱:对timit数据集进行筛选简化,采用随机抽样的方式来平衡数据的差异性;对纯净的语音信号加窗分帧进行预处理,然后进行短时傅里叶变换;对频域信号提取rasta-mfccs特征;将得到的rasta-mfccs特征数据进行拼接整合;对经过短时傅里叶变换后的信号进行整合,然后取对数得到对数幅度谱;对数幅度谱信号进行均值归一化;对数幅度谱和gmm的后验概率输出值计算得到纯净语音的平均对数幅度谱;

步骤二:使用map算法对gmm-ubm模型进行修改建立特定移动录音设备的gmm模型;

步骤三:计算特定移动录音设备语音信号的平均对数幅度;

步骤四:计算特定移动录音设备语音信号的特征;

步骤五:训练堆叠自编码网络并进行判决分类。

进一步,步骤一具体包括:

步骤1):首先对timit数据集进行筛选简化,在训练gmm-ubm模型时,采用随机抽样的方式来平衡数据的差异性;在timit数据集上,选择1个方言句子,2个音素紧凑的句子和1个音素发散的句子训练gmm-ubm模型;

步骤2):对纯净的语音信号加窗分帧进行预处理,然后进行短时傅里叶变换;控制数据量中,加窗的窗长设为256,帧移为128;随后将预处理好的数据进行短时傅里叶变换,频点选择512个,最终得到257维的数据;

步骤3):对频域信号提取rasta-mfccs特征,首先提取语音信号的mfcc特征,选择12个系数再加上f0的能量,同时保留一阶和二阶的系数,总共39维数据;然后将39维数据经过rasta滤波器进行滤波处理;

步骤4):首先将得到的rasta-mfccs特征数据进行拼接整合;先将单个样本数据的rasta-mfccs特征提取出来,再对特征进行整合,然后训练1024个gmm混合模型作为通用背景模型,同时计算每个语音信号的后验概率得到m*l维的数据,m表示gmm中的高斯数量,l表示语音信号的帧数;

步骤5):对经过短时傅里叶变换后的信号进行整合,然后取对数得到对数幅度谱;在训练gmm模型时,先将特征提取出来然后进行特征融合,在求对数幅度谱时,在求得stft变换之后进行特征融合;

步骤6):将对数幅度谱信号进行均值归一化;

步骤7):将得到的均值归一化后的对数幅度谱和gmm的后验概率输出值通过式(1)和式(2)计算得到纯净语音的平均对数幅度谱;

式(1)中wm表示gmm模型中每个高斯模型的权重,cs(l)表示经过rasta滤波后的mfcc特征,um表示gmm模型的均值,cm表示gmm模型的偏置,n(cs(l)|um,cm)表示多元高斯分布函数,pl,m表示gmm的后验概率;式(2)中表示经过均值归一化后的对数幅度谱。

进一步,步骤二具体包括:步骤a):对特定移动录音设备语音信号加窗分帧进行预处理,然后进行短时傅里叶变换;

步骤b):对步骤a)中频域信号提取rasta-mfccs特征,参数选取同步骤c);

步骤c):将步骤b)中得到的rasta-mfccs特征通过步骤3)所训练好的gmm模型和map算法调整gmm模型参数,采取先训练gmm-ubm的通用背景模型然后使用map算法做自适应调整,得到针对特定语音信号的gmm模型。

进一步,步骤三,具体包括:步骤i):基于步骤c中已经调整好参数的gmm模型计算输入信号的后验概率;

步骤ii):将步骤i)中计算得到的后验概率和步骤7)中计算得到的平均对数幅度谱通过式(3)进行计算得到特定移动录音设备语音信号的平均对数幅度谱;

式(3)中表示pl,m表示特定移动录音设备语音信号的高斯后验概率,表示式(2)中的纯净语音信号的平均对数幅度谱。

进一步,步骤四,具体包括:第一步:对步骤a中经过短时傅里叶变换后的信号取对数得到对数幅度谱;

第二步:将第一步中的对数幅度谱信号进行均值归一化;

第三步,将第二步中得到的均值归一化后的对数幅度谱和目标语音的平均对数幅度谱通过式(4)进行计算得到最终的信道对数幅度谱特征;

式(4)中x(k,l)表示目标语音经过均值归一化后的对数幅度谱,表示目标语音的平均对数幅度谱,l为语音的帧数。

进一步,步骤五具体包括:步骤i):将特征数据分为训练数据和测试数据两类,训练数据分为训练样本和验证样本,训练样本用来训练深度自编码神经网络模型,然后用验证数据检验模型的好坏,同时调整网络模型的参数,最后的测试数据集就用来测试最终深度自编码模型的好坏;

步骤ii):将特征数据集进行one-hot编码分类,在分类模型中,最后做预测时使用交叉熵方式;

步骤iii):将训练数据用来训练构建好的深度自编码网络;经多个自编码器进行叠层得到的深度网络结构;

步骤iv):使用测试数据对已训练好的网络进行测试评估。

本发明的另一目的在于提供一种实现所述基于堆叠自编码网络的移动录音设备源识别方法的计算机程序。

本发明的另一目的在于提供一种实现所述基于堆叠自编码网络的移动录音设备源识别方法的信息数据处理终端。

本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的基于堆叠自编码网络的移动录音设备源识别方法。

本发明的另一目的在于提供一种实现所述基于堆叠自编码网络的移动录音设备源识别方法的深度网络结构,所述深度网络结构包括:

三层自编码层、一层为输出层;自编码网络的编码层首先将原始输入的400维特征映射压缩为40维,完成特征再提取的过程,然后再压缩为20维的数据,输出层利用40维特征再进行分类,最终输出为21个标签;自编码层进行预训练时利用均方误差作为损失函数,全局调整时输出层则使用交叉熵作为损失函数,然后使用均方误差反向依次调整自编码网络相邻两个网络层之间的网络参数。

综上所述,本发明的优点及积极效果为

本发明基于rasta-mfcc特征的数据更具有鲁棒性;

基于堆叠自编码的深度学习神经网络的判决精度更高,使用svm分类器做判决时的识别精度为95.7%,而使用堆叠自编码网络做分类器时的精度为96.7%,在识别精度上高于svm分类器;

本发明首先训练一个gmm-ubm模型,然后再用map自适应算法来调整gmm的参数,克服了训练网络模型需要大量数据的弊端,相对原始方法的数据量减少了一半。

附图说明

图1是本发明实施例提供的基于堆叠自编码网络的移动录音设备源识别方法流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

现有技术中,在基于移动端设备的语音信号上无法提取到enf信号;基于静音段语音信号的数据太少无法建立模型而且表征性不强;基于浅层网络的判决分类精度不高。

图1是本发明实施例提供的基于堆叠自编码网络的移动录音设备源识别方法,

先提取纯净语音片段的rasta-mfcc特征训练一个gmm-ubm模型,然后再基于特定的带噪声的语音片段提取rasta-mfcc特征,进而调整gmm的参数,并提取带噪语音片段的相关对数谱的特征。最后将提取到的特征用来训练深度自编码网络,达到自动识别分类的要求。

具体包括:

步骤1:计算纯净语音平均对数幅度谱;

步骤1.1:首先对timit数据集进行筛选简化,在训练gmm-ubm模型时,如果使用全部的数据集,将增加模型的负载量,降低训练速度。考虑到模型的效果和性能,于是采用随机抽样的方式来平衡数据的差异性。在timit数据集上,说话人有男女的差别,在此不考虑男女发音的差别,针对每一个人,有2个方言句子,5个音素紧凑的句子和3个音素发散的句子,为了达到语音上的平衡,选择1个方言句子,2个音素紧凑的句子和1个音素发散的句子训练gmm-ubm模型;

步骤1.2:对纯净的语音信号加窗分帧进行预处理,然后进行短时傅里叶变换。为了控制数据量,加窗的窗长设为256,帧移为128。随后将预处理好的数据进行短时傅里叶变换,频点选择512个,最终得到257维的数据;

步骤1.3:对步骤1.2中频域信号提取rasta-mfccs特征,首先提取语音信号的mfcc特征,选择12个系数再加上f0的能量,同时保留一阶和二阶的系数,所以总共39维数据。然后将39维数据经过rasta滤波器进行滤波处理;

步骤1.4:首先将步骤1.3中得到的rasta-mfccs特征数据进行拼接整合。在上文中已说明6min的语音数据只能用于训练少于64个高斯的gmm模型,而在本发明中使用的是1024个高斯树,所以样本量远远不够,但是直接将语音信号进行拼接将破坏语音信号的完整性,并且在连接点处提取到的特征也会有很多的问题,没有表征性。综上所述,先将单个样本数据的rasta-mfccs特征提取出来,然后再对特征进行整合,即保证了单个样本的完整性,也增加了样本数据量。然后训练1024个gmm混合模型作为通用背景模型,同时计算每个语音信号的后验概率得到m*l维的数据,m表示gmm中的高斯数量,l表示语音信号的帧数。

步骤1.5:对步骤1.2中经过短时傅里叶变换后的信号进行整合,然后取对数得到对数幅度谱。如上文所述,本发明所用的timit语音库的语音都是很小一段一段的,所以在计算过程中需要将这些语音全部整合在一起,在训练gmm模型时,是先将特征提取出来然后进行特征融合,但是在求对数幅度谱时,就需要在求得stft变换之后

就进行特征融合;

步骤1.6:将步骤1.5中的对数幅度谱信号进行均值归一化;

步骤1.7:将步骤1.6中得到的均值归一化后的对数幅度谱和gmm的后验概率输出值通过式(1)和式(2)计算得到纯净语音的平均对数幅度谱。

式(1)中wm表示gmm模型中每个高斯模型的权重,cs(l)表示经过rasta滤波后的mfcc特征,um表示gmm模型的均值,cm表示gmm模型的偏置,n(cs(l)|um,cm)表示多元高斯分布函数,pl,m表示gmm的后验概率。

式(2)中表示步骤2.2中经过均值归一化后的对数幅度谱。

步骤2:使用map算法对gmm-ubm模型进行修改建立特定移动录音设备的gmm模型;

步骤2.1:对特定移动录音设备语音信号加窗分帧进行预处理,然后进行短时傅里叶变换。预处理方式和步骤1的同步,加窗的窗长设为256,帧移为128。然后进行短时傅里叶变换选取512个频点进行计算;

步骤2.2:对步骤2.1中频域信号提取rasta-mfccs特征,参数选取同步骤1.3;

步骤2.3:将步骤2.2中得到的rasta-mfccs特征通过步骤1.3所训练好的gmm模型和map算法调整gmm模型参数,单独一个语音数据样本不足以训练一个有1024个高斯模型的gmm模型。所以采取先训练gmm-ubm的通用背景模型然后使用map算法做自适应调整的来得到针对特定语音信号的gmm模型,在经过map自适应调整之后,变换的只是gmm模型的均值,理论上应该对gmm模型的均值、方差、偏置都进行调整,但经过分析表面,gmm模型的方差和偏置的影响较小,而且为了降低模型训练的复杂度,加快训练速度,在本发明中只针对均值进行调整。

步骤3:计算特定移动录音设备语音信号的平均对数幅度;

步骤3.1:基于步骤2.3中已经调整好参数的gmm模型计算输入信号的后验概率;

步骤3.2:将步骤3.1中计算得到的后验概率和步骤1.7中计算得到的平均对数幅度谱通过式(3)进行计算得到特定移动录音设备语音信号的平均对数幅度谱;

式(3)中表示pl,m表示特定移动录音设备语音信号的高斯后验概率,表示式(2)中的纯净语音信号的平均对数幅度谱。

步骤4:计算特定移动录音设备语音信号的特征;

步骤4.1:对步骤2.1中经过短时傅里叶变换后的信号取对数得到对数幅度谱;

步骤4.2:将步骤4.1中的对数幅度谱信号进行均值归一化;

步骤4.3:将步骤4.2中得到的均值归一化后的对数幅度谱和目标语音的平均对数幅度谱通过式(4)进行计算得到最终的信道对数幅度谱特征。

步骤5:训练堆叠自编码网络并进行判决分类;

步骤5.1:将特征数据分为训练数据和测试数据两类,训练数据又分为训练样本和验证样本,训练样本用来训练深度自编码神经网络模型,然后用验证数据检验模型的好坏,同时调整网络模型的参数,最后的测试数据集就用来测试最终深度自编码模型的好坏;

步骤5.2:将特征数据集进行one-hot编码分类,在分类模型中,最后做预测时使用的是交叉熵的方式,因此计算的是概率,使用每一个编码方式来表示一个类别将很方便的进行自动识别达到分类的目的,而one-hot编码对于每一个类别热编码只有一位是1其它为都使用0进行标注;

步骤5.3:将训练数据用来训练构建好的深度自编码网络;

堆叠自编码网络是一种无监督学习算法,经多个自编码器进行叠层得到的深度网络结构。自编码器在训练过程中尝试逼近一个恒等函数:hw,b(x)≈x,使得输出接近于输入,通常包括编码器和解码器两部分,可用两种变换和ψ给出其定义:

ψ:f→x

编码过程是指把输入x∈rm映射到隐含表示h(x)=rn的过程,此过程中通常会降低输入数据的维度,相当于做特征选择,挑选出更具有代表性的特征参与下一步的运算,具体构造过程为:

z=σ(wx+b)

其中σ为激活函数,在非线性情况下通常取sigmoid函数或relu函数等。w∈rn×m为编码权值矩阵,b∈rn为编码偏置向量。

解码过程是指把隐含表示h(x)映射到输出层,以对输入x进行重建的过程,还原出与输入x尽可能相同的x′:

x′=σ′(w′z+b′)

其中σ′为激活函数,含义与σ相同。w′∈rm×n为解码权值矩阵,b′∈rm为解码偏置向量。

在训练自编码器选择的是均方误差,则重构误差为

l(x,x′)=||x-x′||2=||x-σ′(w′(σ(wx+b))+b′)||2

堆叠自编码网络是将多个自编码器作为中间隐含层叠加重构,包含一个输入层,n个隐含层和一个输出层。

堆叠自编码网络构建的过程包括无监督预训练和有监督调优两个阶段,无监督预训练,从堆叠自编码网络的输入层到中间层,把相邻两层看作一个自编码器,其中每个自编码器的输出是下一个自编码器的输入,采用无监督学习算法(如cd算法、pcd算法等)逐层对所有自编码器进行训练。首先对每个隐含层的输入信号进行编码,然后再解码与输入进行对比,调整每两层之间的权值。详细过程为从底层的自编码器开始预训练权值矩阵w1、可视层偏置a1和隐含层偏置b1;然后逐层把第k-1个隐含层和第k个隐含层看作一个自编码器预训练相应的权值矩阵wk及偏置ak和bk(1<k≤r);最后,当r<k≤2r时,把预训练好的各个自编码器反向堆叠,直接构造wk=(w2r+1-k)t和bk=a2r+1-k,从而得到自编码器的所有初始化权值和偏置。对于上述训练方式,在训练每一层参数的时候,会固定其它各层参数保持不变。

虽然堆叠自编码网络为无监督网络,但是在完成无监督预训练后,还需要再采用有监督学习算法对网络的全部参数进行调优。经过与训练后初始化的参数可以有效的防止陷入局部最优化,同时避免了网络层数多时,梯度弥散无法训练前面网络结构的参数,但是这种初始化的参数并不是最优的,只是在相邻两层之间进行了训练,没有从全局上面进行优化,因此还需要进行有监督学习作参数的微调。有监督训练的算法通常选用bp算法,或随机梯度下降算法、共轭梯度下降算法等,优化的目标函数在本发明中选择的为平方误差:

而最终的输出层选择的是交叉熵函数:

其中(xl,yl)(1≤l≤n)为n个训练样本,为期望输出,为实际输出。

本发明中堆叠自编码网络构架为四层网络结构,其中三层为自编码层,一层为输出层。自编码网络的编码层首先将原始输入的400维特征映射压缩为40维,完成特征再提取的过程,然后再压缩为20维的数据,输出层利用40维特征再进行分类,最终输出为21个标签。自编码层进行预训练时利用均方误差作为损失函数,全局调整时输出层则使用交叉熵作为损失函数,然后使用均方误差一级一级调整前面网络层的参数。

步骤5.4:使用测试数据对已训练好的网络进行测试评估。

在模型训练好后,能够知道模型的好坏,因此需要对这个模型做测试。为了避免因参与网络结构训练而对模型最终的精度有影响,所以使用未参与训练的额外的数据对模型进行测试。

下面结合具体分析对本发明作进一步描述。

本发明的实验结果显示,识别精度为96.7%相对于传统的机器学习的方法,识别的精度有所提高。其次,在构建模型时,只训练了一次,在后续的识别过程中,不需要重新构建模型,只需要提取相应的特征然后做自适应训练即可,因此,在时间成本上大大降低了,而且在构建模型的过程中通过特征的融合,克服了单个语音无法训练gmm模型的弊端,也使得gmm模型的鲁棒性更高。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1