面向家居cnn分类与特征匹配联合的声纹识别方法

文档序号:1075063 发布日期:2020-10-16 浏览:13次 >En<

阅读说明:本技术 面向家居cnn分类与特征匹配联合的声纹识别方法 (Home CNN classification and feature matching combined voiceprint recognition method ) 是由 张晖 张金鑫 赵海涛 孙雁飞 倪艺洋 朱洪波 于 2020-05-22 设计创作,主要内容包括:本发明公开了一种面向家居CNN分类与特征匹配联合的声纹识别方法,包括如下步骤:对语音进行短时傅里叶变换生成语谱图;将语谱图输入到训练好的卷积神经网络进行分类,若识别为非家庭成员,流程结束;对语音信号提取MFCC特征参数;将MFCC特征参数和k-means特征模板进行匹配,获取最终识别结果。本发明基于语谱图的生成、卷积神经网络、k-means算法、余弦相似度测量方法,在保证识别准确率的情况下,有效的降低了语音识别的误检率和漏检率,解决了误检率和漏检率较高的问题,保证了家居环境的绝对安全。(The invention discloses a home CNN classification and feature matching combined voiceprint recognition method, which comprises the following steps: carrying out short-time Fourier transform on the voice to generate a spectrogram; inputting the spectrogram into a trained convolutional neural network for classification, and if the spectrogram is identified as a non-family member, ending the process; extracting MFCC characteristic parameters from the voice signals; and matching the MFCC characteristic parameters with the k-means characteristic template to obtain a final recognition result. The method effectively reduces the false detection rate and the missed detection rate of voice recognition on the basis of the generation of the voice spectrogram, the convolutional neural network, the k-means algorithm and the cosine similarity measurement method, solves the problems of high false detection rate and missed detection rate and ensures the absolute safety of the home environment under the condition of ensuring the recognition accuracy rate.)

面向家居CNN分类与特征匹配联合的声纹识别方法

技术领域

本发明属于声纹识别领域,具体涉及一种面向家居CNN分类与特征匹配联合的声纹识别方法。

背景技术

声纹识别也称为说话人识别,包括说话人辨认和说话人确认。声纹识别应用领域十分广泛,包括金融领域、军事安全、医疗领域以及家居安全领域等等。在许多声纹识别系统的识别之前,除了预处理操作外,特征参数和模型匹配对识别的准确率至关重要。现有的声纹识别算法无法达到百分之百的识别准确率,误检率和漏检率较高,无法保证家居环境下的人身和财产的绝对安全。

发明内容

发明目的:为了克服现有技术中存在的不足,提供一种面向家居CNN分类与特征匹配联合的声纹识别方法,在保证识别准确率的前提下,降低误检率和漏检率。该方法对现有模型进行改进,从而解决误检率和漏检率较高的问题。

技术方案:为实现上述目的,本发明提供一种面向家居CNN分类与特征匹配联合的声纹识别方法,包括如下步骤:

S1:对语音进行短时傅里叶变换生成语谱图;

S2:将语谱图输入到训练好的卷积神经网络进行分类,若识别为非家庭成员,流程结束,否则,转至步骤S3;

S3:对语音信号提取MFCC特征参数;

S4:将MFCC特征参数和k-means特征模板进行匹配,获取最终识别结果。

进一步的,所述步骤S1中语音在进行短时傅里叶变换之前经过预处理操作。

进一步的,所述步骤S1中预处理操作包括采样量化、预加重、加窗和分帧、端点检测。

进一步的,所述步骤S2中卷积神经网络包括输入层、卷积层、池化层、全连接层和输出层,池化层采用平均池化,输出层采用softmax函数,采用BP算法对卷积神经网络进行训练。

进一步的,所述步骤S3中通过Mel滤波器的阶数调整提取MFCC特征参数。

进一步的,所述步骤S3中MFCC特征参数的提取过程为:

A)对输入的语音信号进行预处理,生成时域信号,对每一帧语音信号通过快速傅里叶变换或离散傅里叶变换处理得到语音线性频谱;

B)将线性频谱输入Mel滤波器组进行滤波,生成Mel频谱,取Mel频谱的对数能量,生成相应的对数频谱;

C)使用离散余弦变换将对数频谱转换为MFCC特征参数。

进一步的,所述步骤S4中k-means特征模板的生成过程为:随机选择聚类中心;遍历数据集中所有样本,计算训练数据集分别到各个聚类中心的距离,记录距离最近的中心点,然后把这个点分配到这个聚类内;接着遍历所有的聚类中心,移动聚类中心的新位置到所有属于这个聚类的均值处;重复上面步骤,不断更新聚类中心位置直到不再移动。

进一步的,所述步骤S4中采用余弦相似度方法进行匹配,通过计算两个矢量之间夹角的余弦值来评估相似度。

进一步的,所述步骤S1中语谱图的生成过程为:

a)对语音信号进行分帧处理,得到x(m,n),其中m表示帧的个数,n表示帧长,再通过短时傅里叶变换,转为X(m,n);

b)经过公式X(m,n)×X(m,n)=Y(m,n),将X(m,n)变成周期图;

c)对周期图进行取对数处理,m、n分别根据时间和概率刻度变换为M与N,生成二维语谱图。

本发明方法首先对说话人语音进行语谱图的生成,其次语谱图作为输入,输入到卷积神经网络,若识别为非家庭成员,流程结束,否则需再次确认。提取说话语音的MFCC特征,用模板匹配方法和余弦相似度测量,输出最终识别结果。

有益效果:本发明与现有技术相比,基于语谱图的生成、卷积神经网络、k-means算法、余弦相似度测量方法,在保证识别准确率的情况下,有效的降低了语音识别的误检率和漏检率,解决了误检率和漏检率较高的问题,保证了家居环境的绝对安全。

附图说明

图1为本发明方法的总体结构框图;

图2为MFCC特征参数提取流程图。

具体实施方式

下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。

如图1所示,本发明提供一种面向家居CNN分类与特征匹配联合的声纹识别方法,包括如下步骤:

1)对输入的说话人的语音进行预处理,预处理包括采样量化、预加重、加窗和分帧、端点检测等。预处理目的是消除发声器官和语音采集设备的干扰,提高系统的识别率。

2)对预处理过的语音进行短时傅里叶变换生成语谱图,具体的过程为:

a)对语音信号进行分帧处理,得到x(m,n),其中m表示帧的个数,n表示帧长,再通过短时傅里叶变换,转为X(m,n);

b)经过公式X(m,n)×X(m,n)=Y(m,n),将X(m,n)变成周期图;

c)对周期图进行取对数处理,m、n分别根据时间和概率刻度变换为M与N,生成二维语谱图。

3)将语谱图输入到训练好的卷积神经网络进行分类,若识别为非家庭成员,流程结束,否则,转至步骤4;

4)对语音信号提取MFCC特征参数;

5)将MFCC特征参数和k-means特征模板进行匹配,获取最终识别结果。

本实施例中卷积神经网络包括输入层、卷积层、池化层、全连接层和输出层,池化层采用平均池化,输出层采用softmax函数。

Figure BDA0002503417670000031

采用BP算法对卷积神经网络进行训练。

由卷积神经网络的结构可知,网络包含的参数有:卷积核、偏置项以及全连接网络的权值等。这些参数的求解需要用到反向传播算法。

约定卷积层k后面跟着层k+1,为了求得l中传输的误差信号,需要现堆下一层中所有对应于该神经元的信号求和,并将这些信号乘上相对应于k+1层的权值。降采样层中的权重都等于β(一个常量,见降采样层的梯度计算),所以只需要将前面一部的结果放大β倍来计算δk。重复这个步骤计算卷积层中每一个图j,并将其和降采样层对应起来:

其中f′(.)表示激活函数的一阶导数,up(.)表示升采样操作,简单的讲输入像素从水平和垂直方向重复复制n次,相当于降采样操作时的因子n。一个简单的实现方法是通过Kronecker积:

现在有了给定图的误差信号,可以通过对所有误差中的项目求和来计算出偏差的梯度:

Figure BDA0002503417670000041

最后,核函数的权重的梯度通过反向传播计算,只不过这里很多连接共享权重。将该权重涉及到的所有梯度求和:

Figure BDA0002503417670000042

其中表示在

Figure BDA0002503417670000044

中,在卷积过程中被乘过的一块区域。这看起来很难计算,需要计算哪些区域对应输入图。但是公式在matlab中通过‘valid’区域覆盖就能实现,采用如下公式:

Figure BDA0002503417670000046

降采样层的梯度计算,降采样层产生输入图的降采样后的结果。如果有N个输入图,就同样有N个输出图,尽管输出图相对于输入图会小一些。

其中down(.)表示降采样函数。

这里的难度在于计算误差信号图。仅有的可学习的参数是β和b。假定采样层的上一层和下一层都是卷积层。如果降采样层后面是全连接网络,那么其误差信号图可以通过反向传播算法直接得到。

在卷积层的梯度计算力,需要找到输入图中哪些块是对应输出图中的某一个像素。这里同样必须找到当前层的敏感图中哪些块对应下一层中的某个像素。显然,输入的输出链接的输出链接所乘于权重就是全集和的权重。同样可以有效地通过下面的公式实现:

现在可以计算β和b的梯度,其中b就是误差信号图中元素对μ,v的求和:

乘子偏差显然和前向传播中当前层的原始降采样图(降采样后没有附加偏差所构成的一个特征图)有关。由此可知,如果在前向传输过程中保存这些图将为后续计算做出有效帮助。据此定义:

所以β的梯度由以下公式给出:

Figure BDA0002503417670000052

如图2所示,本实施例中提取MFCC特征参数的具体步骤如下:

(1)对输入的语音信号s(n)进行预处理,生成时域信号x(n)(信号序列的长度N=256),接着,对每一帧语音信号通过快速傅里叶变换或离散傅里叶变换处理得到语音线性频谱X(k),可表示为:

Figure BDA0002503417670000053

(2)将线性频谱X(k)输入Mel滤波器组进行滤波,生成Mel频谱,接着取它的对数能量,生成相应的对数频谱S(m)。

这里,Mel滤波器组是一组三角带同滤波器Hm(k),且需满足0≤m≤M,其中M表示滤波器的数量,通常为20~28。带通滤波器的传递函数可以表示为:

f(m)为中心频率。

其中,之所以对Mel能量频谱取对数,是为了促进声纹识别系统性能的提升。语音线性频谱X(k)到对数频谱S(m)的传递函数为:

(3)通过使用离散余弦变换(DCT)将对数频谱S(m)求解转换为MFCC特征参数,MFCC特征参数的第n维特征分量C(n)的表达式为:

Figure BDA0002503417670000061

通过上述步骤获得的MFCC特征参数仅反映语音信号的静态特性,可通过求其的一阶、二阶差分得到动态特性参数。

本实施例中k-means特征模板的生成采用k-均值算法(k-means),k均值算法是无监督的机器学习算法,无监督学习的算法不需要标签,因此可以大大减少对数据标记的工作量,可应用的范围更广。k-means算法首先需要选择k,即选择聚类的个数;另一个是训练数据集x(1),x(2),...,x(m)

首先随机选择聚类中心:μ1,μ2,....μk;遍历数据集m中所有样本,计算x(i)分别到各个聚类中心μ1,μ2,....μk的距离,记录距离最近的中心点μj,然后把这个点分配到这个聚类内。计算距离时通常使用:||x(i)j||;接着遍历所有的聚类中心,移动聚类中心的新位置到所有属于这个聚类的均值处,即

Figure BDA0002503417670000062

其中e表示属于这个聚类中心的训练样本点个数,x(d)表示属于μj这个类别的点;重复上面步骤,不断更新聚类中心位置直到不再移动。

本实施例中采用余弦相似度(cosine similarity)方法对MFCC特征参数和k-means特征模板进行匹配,通过计算两个矢量之间夹角的余弦值来评估他们的相似度。若向量

Figure BDA0002503417670000067

Figure BDA0002503417670000063

的坐标分别为(x1,x2,,xn),(y1,y2,,yn),则

Figure BDA0002503417670000064

的余弦相似度可以表示为:

若两个方向一致,则夹角接近于零,就认为这两个向量越相似,余弦相似度越接近于1。在声纹识别比对相似度时,若待测语音与目标说话人语音越接近,即余弦相似度值越大,则认为是同一个说话人。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:说话人识别方法、装置、电子设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!