CN113221673B - 基于多尺度特征聚集的说话人认证方法及系统 - Google Patents
基于多尺度特征聚集的说话人认证方法及系统 Download PDFInfo
- Publication number
- CN113221673B CN113221673B CN202110449128.6A CN202110449128A CN113221673B CN 113221673 B CN113221673 B CN 113221673B CN 202110449128 A CN202110449128 A CN 202110449128A CN 113221673 B CN113221673 B CN 113221673B
- Authority
- CN
- China
- Prior art keywords
- authentication
- voiceprint feature
- frame
- samples
- user
- 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
- 238000000034 method Methods 0.000 title claims abstract description 33
- 230000002776 aggregation Effects 0.000 title claims abstract description 20
- 238000004220 aggregation Methods 0.000 title claims abstract description 20
- 239000013598 vector Substances 0.000 claims abstract description 133
- 238000000605 extraction Methods 0.000 claims abstract description 50
- 238000011176 pooling Methods 0.000 claims description 33
- 238000012549 training Methods 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 9
- 230000009467 reduction Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000004931 aggregating effect Effects 0.000 claims description 4
- 238000012795 verification Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 50
- 239000011159 matrix material Substances 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/08—Feature extraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/02—Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/04—Training, enrolment or model building
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L17/00—Speaker identification or verification techniques
- G10L17/18—Artificial neural networks; Connectionist approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Probability & Statistics with Applications (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Signal Processing (AREA)
- Collating Specific Patterns (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本发明提供的基于多尺度特征聚集的说话人认证方法,包括:提取Fbank特征;建立声纹特征向量提取模型以提取声纹特征向量;构建损失函数来训练声纹特征向量提取模型;确定认证阈值;提取用户注册语音样本的Fbank特征;将用户注册样本的Fbank特征输入声纹特征向量提取模型,获得注册样本的声纹特征向量;将用户认证样本的Fbank特征输入声纹特征向量提取模型,获得认证样本的声纹特征向量;将用户认证样本的声纹特征向量逐个与注册库中每个用户的声纹特征向量计算余弦相似度,根据余弦相似度确定是否认证通过。还提供了相应的认证系统。通过采用多尺度特征聚合器,使得能够在噪声语音或短时长语音中充分提取说话人的信息。
Description
技术领域
本发明属于生物特征识别领域,尤其涉及基于多尺度特征聚集的说话人认证方法及系统。
背景技术
说话人认证是生物特征识别领域中的技术,用来确定给定的语音中说话人的身份的过程。在移动支付、车联网、智能家居、智能安防等智能化应用场景,都有着广泛的应用。
说话人认证利用声纹来辨别说话人身份,具有如下优势:1)难以伪造。声纹蕴含于人的语音当中,而语音是千变万化的。即便人两次读相同的内容,也不可能发出完全相同的声音。正是声纹这种“蕴不变于千变万化之中”的特性,使得声纹特征更加深层、难以琢磨,伪造起来也更为困难,因而认证强度更高、更安全。2)隐私性弱。在一般的大众认知中,人们在很多场合下往往不愿意被拍照或者按手印,但采集一段随机跟读的声音,对于大众更加容易接受。3)便捷性强。声音是唯一周边无死角的生物特征,可以实现非接触式采集,方便使用。这些优势使得声纹作为一种生物特征识别的载体在身份认证应用领域迅速普及。
基于深度学习的说话人认证系统主要包括三个组成部分:1)帧级特征提取器,这部分通常由常用的深度神经网络结构组成,如TDNN、ResNet和LSTM等,用来对声学特征序列进行局部建模;2)说话人嵌入码(speaker embedding)提取器,这部分通常由池化层组成如平均池化、统计池化、注意力机制池化等,用来将帧级特征随时间维度聚集,生成固定维度的嵌入码;3)损失函数,用来训练整个模型,常用的损失函数有Softmax loss,magin-basedSoftmax loss,triplet loss,GE2E loss等。第1)部分和第2)部分组成的整体称之为声纹特征向量提取模型。
现有的基于深度学习的说话人认证系统通常只将帧级特征提取器的最后一层输出的帧级特征作为说话人嵌入码提取器的输入,他们只使用了单尺度的帧级特征,导致这种系统在环境背景噪声嘈杂、语音时长短的情况下表现得不够鲁棒。这是因为深度神经网络是由多层网络堆叠而成,每层网络都能提取到不同的信息,同时,随着网络的加深,信息难以往后流动,那些只利用了最后一层的输出作为说话人嵌入码提取器的输入的系统浪费了很多中间信息,导致提取到的说话人嵌入码缺乏辨识度。另外只利用最后一层的信息会导致网络训练时出现梯度消失的情况。
现有的基于深度学习的说话人认证系统通常将模型按照分类任务进行训练,训练完成后将网络倒数第二层的输出作为说话人嵌入码。这种训练方法不能直接对说话人嵌入码空间进行优化,且面对开集识别场景时表现得不够鲁棒。这是因为模型训练过程与测试过程不一致,即训练时模型的目标是正确分类,测试时模型的任务是从输入的声学特征中提取具有用户区分能力的说话人嵌入码;此外,根据分类任务的方式进行训练的模型不能直接对嵌入码空间进行优化。
中国专利申请“声纹识别方法、装置、存储介质及计算机设备(202011126786.3)”公开了一种声纹识别方法,可以同时进行说话人身份信息和语音内容的匹配,但仍存在以下问题:(1)其直接将帧级特征处理结构的输出层输出的帧级输入到帧级特征聚集器中,这样的做法会导致特征在神经网络中前向传播时丢失掉部分有用的细节信息,而这种细节信息是对辨别说话人身份有利的;(2)帧级特征聚集器使用了简单的基于统计的方法。基于统计方法的帧级特征聚集器不能从帧级特征中提取辨别说话人身份有用的帧、抑制包含有辨别说话人身份有害的帧(如仅包含噪声或静音而不包含说话人身份信息的帧)。因此他们需要在模型前端增加语音活动检测(Voice activity detection,VAD)模块检测非语音帧并去除,这样做增加了模型的复杂度。而本发明中提出了G-VLAD池化层用于对帧级特征的聚集,能有效聚集对辨别身份有用的帧,抑制有害信息的帧;(3)为了增强声纹特征向量的辨别能力,额外训练一个概率线性鉴别分析(Probabilistic Linear DiscriminantAnalysis,PLDA)模块来对声纹特征向量进行相似度度量,增加了模型的复杂度,降低了计算效率。
发明内容
本发明主要解决说话人认证的问题,尤其是说话人语音信号中重叠有背景噪音、或语音时长短的条件下的说话人认证问题。
为了实现本发明目的,本发明提供的基于多尺度特征聚集的说话人认证方法,包括以下步骤:
采集用户语音信号,提取Fbank特征;
建立声纹特征向量提取模型,用于从Fbank中提取具有用户区分性的声纹特征向量,其中,所述声纹特征向量提取模型包括帧级特征提取器和多尺度特征聚集器,帧级特征提取器用于对Fbank特征处理后输出多个不同尺度的帧级特征,多尺度特征聚集器用于根据多个不同尺度的帧级特征得到声纹特征向量;
确定用于区分用户身份的认证阈值;
提取用户注册语音样本的Fbank特征;
将用户注册样本的Fbank特征输入声纹特征向量提取模型,获得注册样本的声纹特征向量,并将注册样本的声纹特征向量加入注册库;
提取用户认证语音样本的Fbank特征;
将用户认证样本的Fbank特征输入声纹特征向量提取模型,获得认证样本的声纹特征向量;
将用户认证样本的声纹特征向量逐个与注册库中每个用户的声纹特征向量计算余弦相似度,若相似度大于认证阈值,则认证通过,若相似度小于等于查询阈值,则认证失败。
进一步地,在建立声纹特征向量提取模型后,还包括以下步骤:构建损失函数,用来训练声纹特征向量提取模型。
进一步地,所述损失函数包括基于余弦相似度的prototypical损失函数LP和有附加间隔的Softmax损失函数LLMS,即损失函数L的表达式如下
L=LP+LLMS#(5)
其中,
式中,Sp,p表示同类样本之间的相似度,Sp,v表示异类样本之间的相似度,N表示训练集中类别总数,决定了附加间隔Softmax函数的类型,θ表示特征向量与分类层中对应权值向量之间的角度。
进一步地,所述确定用于区分用户身份的认证阈值的方式如下:
将数据集中的样本两两组合成样本对,其中,属于同一个说话人的为正样本对,属于不同说话人的为负样本对;
度量每个样本对中的两个样本之间的距离,并设定距离的阈值范围;
在距离的阈值范围内选取多个阈值;
对于每个阈值,计算其对应的错误接受率FAR和错误拒绝率FRR;
分别计算每个所选取阈值的错误接受率FAR和错误拒绝率FRR的残差,选取残差最小的一对错误接受率FAR和错误拒绝率FRR所对应的阈值作为认证阈值;
其中,错误接受率FAR和错误拒绝率FRR的计算公式如下:
式中,TH为所有阈值的集合,FPth、TNth、FARth分别表示在阈值取th时,实际为负样本而预测为正样本的数量、实际为负样本而预测为负样本的数量、错误接受率;FNth、TPth、FRRth分别表示在阈值取th时,实际为正样本而预测为负样本的数量、实际为正样本而预测为正样本的数量、错误拒绝率。
进一步地,所述帧级特征提取器采用装配有SE模块的ResNet34模型,ResNet34模型包括多个残差模块,多个残差模块用于输出尺度不同的多个帧级特征。
进一步地,所述多尺度特征聚集器包括平均池化层、G-VLAD池化层和用于降维的降维层,平均池化层用于将帧级特征提取器输出的帧级特征转化为二维帧级特征,G-VLAD池化层的数量与帧级特征提取器中的残差模块的数量相等,G-VLAD池化层与残差模块一一相应设置,每个G-VLAD池化层用于将相应残差模块输出的帧级特征拆分并聚集得到固定长度的一维特征向量,每个一维特征向量串联得到一维多尺度特征向量,降维层用于根据所述一维多尺度特征向量得到声纹特征向量。
进一步地,降维层为全连接层。
进一步地,每个残差模块均包括SE模块、卷积层和池化层。
进一步地,G-VLAD池化层的数量与帧级特征提取器中的残差模块的数量均为4。
本发明还提供基于多尺度特征聚集的说话人认证系统,用于实现前述的方法,包括:
训练集特征提取模块,用于从语音信号提取Fbank特征;
模型模块,用于建立声纹特征向量提取模型,用于从Fbank中提取具有用户区分性的声纹特征向量,其中,所述声纹特征向量提取模型包括帧级特征提取器和多尺度特征聚集器,帧级特征提取器用于对Fbank特征处理后输出多个不同尺度的帧级特征,多尺度特征聚集器用于根据多个不同尺度的帧级特征得到声纹特征向量;
认证阈值确定模块,用于确定用于区分用户身份的认证阈值;
注册语音特征提取模块,用于提取用户注册语音样本的Fbank特征;
注册库建立模块,用于将用户注册样本的Fbank特征输入声纹特征向量提取模型,获得注册样本的声纹特征向量,并将注册样本的声纹特征向量加入注册库;
认证语音特征提取模块,用于提取用户认证语音样本的Fbank特征;
认证语音特征向量获取模块,用于将用户认证样本的Fbank特征输入声纹特征向量提取模型,获得认证样本的声纹特征向量;
认证模块,用于将用户认证样本的声纹特征向量逐个与注册库中每个用户的声纹特征向量计算余弦相似度,若相似度大于认证阈值,则认证通过,若相似度小于等于查询阈值,则认证失败。
与现有技术相比,本发明能够实现的有益效果至少如下:
1、本发明通过采用多尺度特征聚集器,使得声纹特征向量提取模型能够在噪声语音或短时长语音中充分提取说话人的信息。识别准确率高,且能够在噪音环境下和语音时长短的条件下仍然能保持较高的准确性。
2、现有的说话人认证系统中,提取说话人嵌入码时只用了帧级特征提取器最后一层的输出,忽略了帧级特征提取器隐层中不同尺度的特征,导致提取出来的说话人特征向量在噪声环境下或短时长语音条件下表现得不够鲁棒。本发明通过设置多尺度特征聚集器,将帧级特征提取器输出的不同尺度的帧级特征进行聚类,充分利用了帧级特征提取器隐层中不同尺度的帧级特征,可以有效提高鲁棒性。
3、本发明提出了组合损失函数,将带间距的margin-based softmax损失函数与prototypical损失函数组合。这样的组合方式能充分发挥两种损失函数的优点,即分类损失函数能抓住训练集全局的信息,稳定收敛,充分区分不同的类别;prototypical损失函数能直接对说话人嵌入码空间进行优化,使得在这个空间中同类样本之间的距离尽可能的紧凑,不同类别样本之间的距离尽可能大。使得在开集识别场景下准确性高,训练简单,不需要精心设计数据挖掘策略来训练,并且能稳定收敛。
附图说明
图1是本发明实施例提供的基于多尺度特征聚集的说话人认证方法的流程示意图。
图2是本发明实施例提供的基于多尺度特征聚集策略的声纹特征向量提取模型结构图。
图3是本发明实施例提供的基于多尺度特征聚集的说话人认证系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都是本发明保护的范围。
请参阅图1,本发明提供的基于多尺度特征聚集的说话人认证方法,包括以下步骤:
步骤1:采集语音信号制作训练集,并从语音信号中提取Fbank(Mel filterbanks,梅尔滤波器组)特征。
在本发明其中一个实施例中,Fbank特征的提取过程是:首先将时域语音信号做预加重处理;然后将预加重处理后的语音信号分帧,并使用汉明窗函数对每帧信号处理;随后使用短时快速傅里叶变换STFT将每一帧信号变换到频域上,获得频谱特征;最后使用梅尔三角滤波器对频谱特征进行滤波,获得所述Fbank特征。
在本发明其中一个实施例中,Fbank特征是二维特征,其中频率维度是40,时间维度可以任意长。
步骤2:建立声纹特征向量提取模型,用于从Fbank中提取具有用户区分性的声纹特征向量。其中,声纹特征向量提取模型包括帧级特征提取器和多尺度特征聚集器。帧级特征提取器用于根据Fbank特征输出不同时频尺度的帧级特征,多尺度特征聚集器用于将帧级特征提取器输出的不同时频尺度的帧级特征进行聚集,生成一维多尺度特征向量。
在本发明其中一个实施例中,帧级特征提取器采用装配有SE(Squeeze-and-excitation)模块的ResNet34模型,SE模块用来考虑模型通道之间的相互依赖性。
进一步地,请参阅图2中,ResNet34模型的结构包括4个残差模块,每个残差模块里包含有SE模块、卷积层和池化层。将每个残差模块串联起来,形成了完整的ResNet34网络结构。每个残差模块后面都有一个输出支路,以将该残差模块输出的帧级特征传送给多尺度特征聚集器。每个残差模块的输出可以看做是具有不同尺度的帧级特征。这些帧级特征的长度是可变的,其长度由输入声纹特征向量提取模型的Fbank特征的长度决定。
在本发明其中一个实施例中,请参阅图2中,多尺度特征聚集器包括平均池化层、G-VLAD池化层和用于降维的降维层。平均池化层用于将输入的特征转化为包含有时间维度和通道维度的二维帧级特征。G-VLAD池化层用于根据二维帧级特征得到一维特征向量。
由于每个残差模块后的支路输出的帧级特征都是具有3个维度的,即通道维度、时间维度和频率维度。因此在多尺度特征聚集器中用一个平均池化层沿着帧级特征的频率维度做平均池化,把频率维度消掉,得到仅含有时间维度和通道维度的二维帧级特征。
具体的,所述G-VLAD池化层将局部描述子聚集(Vector of Local AggregatedDescriptors,VLAD)的思想引入到了深度神经网络中,实现了与网络共同训练。VLAD的核心思想是利用聚类算法将帧级特征中的所有帧聚成K个类,然后计算每一帧与各个聚类中心向量之间的残差,此时每个聚类中心都会得到一组残差,分别对各聚类中心得到的残差求和得到K个一维的残差向量,最后将这些残差向量拼接起来,得到所述的语句级特征。但不同的是,G-VLAD池化层将帧级特征拆分成G组相对低维度的帧级特征,每组帧级特征的帧数与原始帧级特征的帧数相同,只是维度减小了G倍。在拆分后低维帧级特征中进行VLAD操作,能充分提取出与说话人身份有用信息,并减少计算量提高计算效率。
具体的,将所述二维帧级特征输入G-VLAD池化层,得到固定长度的一维特征向量,该向量称为语句级特征。对4个残差模块输出的4种尺度的帧级特征处理后得到4条语句级特征,将这4条语句级特串联起来,得到一条一维的多尺度特征向量。随后利用一个降维层将所述多尺度特征向量降维后,得到所述声纹特征向量。其中,在本发明其中一个实施例中,降维层为全连接层。
具体的,二维帧级特征h输入G-VLAD池化层后,首先用一个全连接层将具有T帧D维的帧级特征的通道维度扩展λ倍(λ是大于等于2的正整数)由(T,D)变成(T,λD),然后将扩展后的帧级特征分成G组低维度的帧级特征/>每组的特征形状为(T,λD/G),随后对每组特征分别做VLAD。其中,残差向量可以用下式表示:
其中,表示第g组中的第i帧特征与第k个聚类中心之间的残差。K表示VLAD中聚类中心的个数。/>表示第g组帧级特征中第i帧的第j个维度的值,ckj表示第k个聚类中心向量的第j个维度的值。
其中:
其中,表示/>属于第k个类别的权重,/>表示所述分组特征之间的注意力函数,σ(·)是sigmoid函数,将输出范围控制在0到1之间。/>表示可学习的权值矩阵w中的第g组第k个分量,/>表示维度扩展后的第i帧特征,/>表示可学习的权值矩阵w中的第g组第r个分量,bgk、bgr表示可学习的偏置系数,/>表示注意力函数中可学习的权值矩阵的第g组分量,bg表示注意力函数中可学习的偏置系数,r表示聚类中心的索引。
然后,将所述残差向量沿着时间轴和分组轴聚集求和,得到一个形状为(K,D)的二维矩阵:
最后,将二维矩阵V逐行执行L2范数归一化后将其拉伸成一个固定长度的K×λD/G的一维向量,得到所述语句级特征。语句级特征是一个向量。
步骤3:构建损失函数,用来训练声纹特征向量提取模型,使其具备提取语音信号中能区分说话人身份的信息的能力。
该组合损失函数能保证提取到的声纹特征向量具有足够的身份辨别能力,在相似度度量时仅需计算余弦距离即可达到比使用PLDA更高的准确率,同时精简了模型,并极大降低了计算资源的消耗。
在本发明其中一个实施例中,步骤3中所述损失函数是组合损失函数L,由两个损失函数直接相加组成。第一个损失函数是基于余弦相似度的prototypical损失函数LP,第二个是带有附加间隔的Softmax损失函数LLMS,它们的组合方式是直接相加:
L=LP+LLMS#(5)
所述基于余弦相似度的prototypical损失函数在小样本学习框架下进行训练。在训练过程中,随机从训练集挑选P个类别,然后再从每个类别中分别随机挑选2个样本组成一个迷你批次(mini-batch),在这些挑出来的样本中,用每个类别中的其中1个样本组成支持集,另一个样本组成查询集。所述迷你批次输入步骤2建立的声纹特征向量提取模型之后,提取到该迷你批次样本的声纹特征向量,用表示支持集中第n个类别的声纹特征向量,用/>表示查询集中第p个类别的声纹特征向量。根据少样本学习的思想,利用每个类别中的支持集的均值表示各自类别的中心,由于这里每个类别的支持集只有一个样本组成,所以类别中心用该样本表示,因此,第n个类别的中心可表示为:
进一步地,利用余弦距离计算所述查询集所有样本与所有类别中心的相似度,得到相似度矩阵S,矩阵中第p行第n列的计算方式为:
w和b分别表示可学习的参数,用于控制余弦相似度的取值范围。
相似度矩阵S由P行和P列组成,其中,在第p行第n列的样本表示查询集中第p类与支持集中第n类之间的相似度,所述相似度矩阵对角线上的元素表示同类之间的相似度,非对角线上的元素表示异类之间的相似度。所述prototypica损失函数的优化目标是减小所述相似度矩阵对角线元素的数值增大非对角线元素的数值使得对角线上的元素远小于非对角线上的元素。
在本发明其中一个实施例中,所述prototypical损失函数的公式表示如下:
式中,Sp,p表示同类样本之间的相似度,Sp,v表示异类样本之间的相似度。
进一步地,Softmax损失函数LLMS的公式表示如下:
N表示当前batch中的样本个数,s表示附加间隔Softmax函数中的缩放因子,决定了附加间隔Softmax函数的类型(当/>的形式不同时可以表示A-Softmax、AM-Softmax、AAM-Softmax这三种损失函数),θ表示特征向量与分类层中对应权值向量之间的角度。C表示训练集中类别总数,yi表示分类正确的样本的标签、u表示分类错误的样本的标签的索引号。
其中,式(9)中的当m1>0,m2=0时,LLMS表示AAMSoftmax损失,当m1=0,m2≠0时,LLMS表示AMSoftmax损失,m1和m2的取值范围介于0和1之间。m表示附加间隔Softmax损失函数中的附加间隔的大小。
现有的说话人认证系统在训练时,通常只使用一种损失函数,要么是分类损失函数要么是度量损失函数。使用分类损失函数训练时根据分类任务训练模型,测试推理时要去掉分类器(最后一层全连接层),将分类器前一层的输出作为说话人嵌入码。这种利用分类损失函数训练出来的模型虽然在闭集测试任务中准确率高,但在开集识别场景下准确率低,而说话人认证通常属于开集识别任务。使用度量损失函数训练的模型虽然能直接对说话人嵌入码空间进行优化,但往往训练起来不稳定,难收敛,需要精心设计数据挖掘策略才能训练出优秀的模型。而本发明采用的所述附加间隔Softmax损失函数在训练过程中能用Softmax函数中全连接层的参数表示训练集中每个类别的代理中心,它能掌握训练集全局的信息,使得整个网络能稳定收敛,同时,由于给softmax损失函数添加了惩罚间距(附加间隔),使得每个类别代理中心之间的间距足够大,增加可分性。所述prototypical损失函数直接约束两个样本的声纹特征向量之间的相似度,使同类之间的相似度增大,异类之间的相似度减小,这样能够直接对声纹特征空间进行优化,使得在所述空间中同类聚集得更紧凑,异类之间的距离更大。进一步地,将所述基于余弦相似度的prototypical损失函数和所述附加间隔Softmax损失函数组合起来训练所述声纹特征向量提取模型,使得提取到的声纹特征向量具备更强的可分性,增强其在开集识别场景下的鲁棒性。
步骤4:确定用于区分用户身份的认证阈值。
在本发明其中一个实施例中,通过遍历数据集,确定用于区分用户身份信息的“认证阈值”。其中数据集是从步骤1的训练集中随机采样10%得到。
在本发明其中一个实施例中,认证阈值用于说话人身份认证中区分用户的身份。遍历数据集中的所有样本,两两组合成样本对,属于同一个说话人的为正样本对,属于不同说话人的为负样本对。度量每个样本对中的两个样本之间的距离,设定距离的阈值范围为[0,1],在其中均匀采样1000个点TH={0.001,0.002,…,1.000},TH表示一个包含了1000个点的集合。对于采样的每个阈值,计算对应的错误接受率FAR和错误拒绝率FRR:
其中FPth、TNth、FARth分别表示在阈值取th时,实际为负样本而预测为正样本的数量、实际为负样本而预测为负样本的数量、错误接受率;FNth、TPth、FRRth分别表示在阈值取th时,实际为正样本而预测为负样本的数量、实际为正样本而预测为正样本的数量、错误拒绝率。
计算所有阈值的FAR和FRR的残差,选取残差最小的一对FAR和FRR对应的阈值作为“认证阈值”。
步骤5:获取用户注册语音样本,并提取用户注册语音样本的Fbank特征。
Fbank特征的提取方式同步骤1。
步骤6:将步骤5得到的Fbank特征输入训练好的声纹特征向量提取模型,提取得到注册语音样本的声纹特征向量,并将该注册语音样本的声纹特征向量加入至注册库中该用户的目录下,若该用户第一次注册,则为该用户新建一个目录并将该声纹特征向量加入该目录下。
步骤7:获取用户认证语音样本,并提取用户认证语音样本的Fbank特征。
Fbank特征的提取方式同步骤1。
步骤8:将步骤S7得到的Fbank特征输入训练好的声纹特征向量提取模型,提取得到认证语音样本的声纹特征向量。
步骤9:用户身份认证,将步骤8得到的认证语音样本的声纹特征向量逐个与注册库中每个用户的声纹特征向量计算余弦相似度,若相似度大于认证阈值,则认证通过,若相似度小于等于认证阈值,则认证失败。
本发明通过采用一种装备有局部描述子分组聚集池化层G-VLAD的多尺度特征聚集策略,能将深度神经网络中的不同时频尺度的帧级特征输入多尺度特征聚集器中生成声纹特征向量,既能避免反向传播时梯度消失,又能充分提取辨别不同说话人的信息,增强了系统在噪声环境下和短时长语音下的鲁棒性。
本发明将原型损失函数(prototypical loss)与附加间隔Softmax(Large-MarginSoftmax Loss)损失函数融合起来,在小样本学习(few-shot learning)的框架下进行训练。这种训练方式能利用附加间隔Softmax损失函数的优点增大类间间隔,并能掌握训练集全局信息使得稳定收敛,利用原型损失函数的优点能直接对说话人嵌入码空间进行优化。这样训练出来的模型在开集识别场景和短时长语音中表现得更鲁棒。
在本发明其中一个实施例中,还提供前述认证方法的认证系统。
基于多尺度特征聚集的说话人认证系统,用于实现前述认证方法,包括:
训练集特征提取模块,用于从语音信号提取Fbank特征;
模型模块,用于建立声纹特征向量提取模型,用于从Fbank中提取具有用户区分性的声纹特征向量,其中,所述声纹特征向量提取模型包括帧级特征提取器和多尺度特征聚集器,帧级特征提取器用于对Fbank特征处理后输出多个不同尺度的帧级特征,多尺度特征聚集器用于根据多个不同尺度的帧级特征得到声纹特征向量;
认证阈值确定模块,用于确定用于区分用户身份的认证阈值;
注册语音特征提取模块,用于提取用户注册语音样本的Fbank特征;
注册库建立模块,用于将用户注册样本的Fbank特征输入声纹特征向量提取模型,获得注册样本的声纹特征向量,并将注册样本的声纹特征向量加入注册库;
认证语音特征提取模块,用于提取用户认证语音样本的Fbank特征;
认证语音特征向量获取模块,用于将用户认证样本的Fbank特征输入声纹特征向量提取模型,获得认证样本的声纹特征向量;
认证模块,用于将用户认证样本的声纹特征向量逐个与注册库中每个用户的声纹特征向量计算余弦相似度,若相似度大于认证阈值,则认证通过,若相似度小于等于查询阈值,则认证失败。
本实施例提供的基于多尺度特征聚集的说话人认证系统,具有如上述方法相同的有益效果。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的基于多尺度特征聚集的说话人认证系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.基于多尺度特征聚集的说话人认证方法,其特征在于,包括以下步骤:
采集用户语音信号,提取Fbank特征;
建立声纹特征向量提取模型,用于从Fbank中提取具有用户区分性的声纹特征向量,其中,所述声纹特征向量提取模型包括帧级特征提取器和多尺度特征聚集器,帧级特征提取器用于对Fbank特征处理后输出多个不同尺度的帧级特征,多尺度特征聚集器用于根据多个不同尺度的帧级特征得到声纹特征向量;
确定用于区分用户身份的认证阈值;
提取用户注册语音样本的Fbank特征;
将用户注册样本的Fbank特征输入声纹特征向量提取模型,获得注册样本的声纹特征向量,并将注册样本的声纹特征向量加入注册库;
提取用户认证语音样本的Fbank特征;
将用户认证样本的Fbank特征输入声纹特征向量提取模型,获得认证样本的声纹特征向量;
将用户认证样本的声纹特征向量逐个与注册库中每个用户的声纹特征向量计算余弦相似度,若相似度大于认证阈值,则认证通过,若相似度小于等于认证阈值,则认证失败;
其中,所述帧级特征提取器采用装配有SE模块的ResNet模型,ResNet模型包括多个残差模块,多个残差模块用于输出尺度不同的多个帧级特征;所述多尺度特征聚集器包括平均池化层、G-VLAD池化层和用于降维的降维层,平均池化层用于将帧级特征提取器输出的帧级特征转化为二维帧级特征,G-VLAD池化层的数量与帧级特征提取器中的残差模块的数量相等,G-VLAD池化层与残差模块一一相应设置,每个G-VLAD池化层用于将相应残差模块输出的帧级特征拆分并聚集得到固定长度的一维特征向量,每个一维特征向量串联得到一维多尺度特征向量,降维层用于根据所述一维多尺度特征向量得到声纹特征向量;
其中,在建立声纹特征向量提取模型后,还包括以下步骤:构建损失函数,用来训练声纹特征向量提取模型,所述损失函数包括基于余弦相似度的prototypical损失函数LP和有附加间隔的Softmax损失函数LLMS,即损失函数L的表达式如下:
L=LP+LLMS#(5)
其中,
式中,Sp,p表示同类样本之间的相似度,Sp,v表示异类样本之间的相似度,N表示训练集中类别总数,s表示附加间隔Softmax函数中的缩放因子,决定了附加间隔Softmax函数的类型,θ表示特征向量与分类层中对应权值向量之间的角度,yi表示分类正确的样本的标签,u表示分类错误的样本的标签的索引号,C表示训练集中类别总数,P表示从训练集中挑选的P个类别,p表示挑选出来的第p类。
2.根据权利要求1所述的基于多尺度特征聚集的说话人认证方法,其特征在于,所述确定用于区分用户身份的认证阈值的方式如下:
将数据集中的样本两两组合成样本对,其中,属于同一个说话人的为正样本对,属于不同说话人的为负样本对;
度量每个样本对中的两个样本之间的距离,并设定距离的阈值范围;
在距离的阈值范围内选取多个阈值;
对于每个阈值,计算其对应的错误接受率FAR和错误拒绝率FRR;
分别计算每个所选取阈值的错误接受率FAR和错误拒绝率FRR的残差,选取残差最小的一对错误接受率FAR和错误拒绝率FRR所对应的阈值作为认证阈值;
其中,错误接受率FAR和错误拒绝率FRR的计算公式如下:
式中,TH为所有阈值的集合,FPth、TNth、FARth分别表示在阈值取th时,实际为负样本而预测为正样本的数量、实际为负样本而预测为负样本的数量、错误接受率;FNth、TPth、FRRth分别表示在阈值取th时,实际为正样本而预测为负样本的数量、实际为正样本而预测为正样本的数量、错误拒绝率。
3.根据权利要求1所述的基于多尺度特征聚集的说话人认证方法,其特征在于,降维层为全连接层。
4.根据权利要求1所述的基于多尺度特征聚集的说话人认证方法,其特征在于,每个残差模块均包括SE模块、卷积层和池化层。
5.根据权利要求1所述的基于多尺度特征聚集的说话人认证方法,其特征在于,G-VLAD池化层的数量与帧级特征提取器中的残差模块的数量均为4。
6.基于多尺度特征聚集的说话人认证系统,其特征在于,用于实现权利要求1-5任一所述的认证方法,包括:
训练集特征提取模块,用于从语音信号提取Fbank特征;
模型模块,用于建立声纹特征向量提取模型,用于从Fbank中提取具有用户区分性的声纹特征向量,其中,所述声纹特征向量提取模型包括帧级特征提取器和多尺度特征聚集器,帧级特征提取器用于对Fbank特征处理后输出多个不同尺度的帧级特征,多尺度特征聚集器用于根据多个不同尺度的帧级特征得到声纹特征向量;
认证阈值确定模块,用于确定用于区分用户身份的认证阈值;
注册语音特征提取模块,用于提取用户注册语音样本的Fbank特征;
注册库建立模块,用于将用户注册样本的Fbank特征输入声纹特征向量提取模型,获得注册样本的声纹特征向量,并将注册样本的声纹特征向量加入注册库;
认证语音特征提取模块,用于提取用户认证语音样本的Fbank特征;
认证语音特征向量获取模块,用于将用户认证样本的Fbank特征输入声纹特征向量提取模型,获得认证样本的声纹特征向量;
认证模块,用于将用户认证样本的声纹特征向量逐个与注册库中每个用户的声纹特征向量计算余弦相似度,若相似度大于认证阈值,则认证通过,若相似度小于等于认证阈值,则认证失败。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110449128.6A CN113221673B (zh) | 2021-04-25 | 2021-04-25 | 基于多尺度特征聚集的说话人认证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110449128.6A CN113221673B (zh) | 2021-04-25 | 2021-04-25 | 基于多尺度特征聚集的说话人认证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113221673A CN113221673A (zh) | 2021-08-06 |
CN113221673B true CN113221673B (zh) | 2024-03-19 |
Family
ID=77088863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110449128.6A Active CN113221673B (zh) | 2021-04-25 | 2021-04-25 | 基于多尺度特征聚集的说话人认证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113221673B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113724713B (zh) * | 2021-09-07 | 2024-07-05 | 中国科学技术大学 | 一种语音识别方法、装置、设备及存储介质 |
CN114067803A (zh) * | 2021-10-21 | 2022-02-18 | 北京工业大学 | 一种基于距离相关的度量学习的说话人确认方法 |
CN114141255A (zh) * | 2021-11-24 | 2022-03-04 | 中国电信股份有限公司 | 声纹识别模型的训练方法及装置、声纹识别方法及装置 |
CN114581398A (zh) * | 2022-03-01 | 2022-06-03 | 江苏苏云信息科技有限公司 | 一种基于多模态信号的烟草振槽故障检测系统 |
CN114549910B (zh) * | 2022-03-16 | 2024-09-27 | 清华大学深圳国际研究生院 | 基于干净数据集与关键特征检测的噪声识别方法 |
CN114780787A (zh) * | 2022-04-01 | 2022-07-22 | 杭州半云科技有限公司 | 声纹检索方法、身份验证方法、身份注册方法和装置 |
CN114648978B (zh) * | 2022-04-27 | 2024-08-16 | 腾讯科技(深圳)有限公司 | 一种语音验证处理的方法以及相关装置 |
CN114842866B (zh) * | 2022-04-29 | 2024-09-10 | 思必驰科技股份有限公司 | 语音处理方法、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111833886A (zh) * | 2020-07-27 | 2020-10-27 | 中国科学院声学研究所 | 全连接多尺度的残差网络及其进行声纹识别的方法 |
CN112071322A (zh) * | 2020-10-30 | 2020-12-11 | 北京快鱼电子股份公司 | 一种端到端的声纹识别方法、装置、存储介质及设备 |
CN112380512A (zh) * | 2020-11-02 | 2021-02-19 | 华南理工大学 | 卷积神经网络动态手势认证方法、装置、存储介质及设备 |
-
2021
- 2021-04-25 CN CN202110449128.6A patent/CN113221673B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111833886A (zh) * | 2020-07-27 | 2020-10-27 | 中国科学院声学研究所 | 全连接多尺度的残差网络及其进行声纹识别的方法 |
CN112071322A (zh) * | 2020-10-30 | 2020-12-11 | 北京快鱼电子股份公司 | 一种端到端的声纹识别方法、装置、存储介质及设备 |
CN112380512A (zh) * | 2020-11-02 | 2021-02-19 | 华南理工大学 | 卷积神经网络动态手势认证方法、装置、存储介质及设备 |
Non-Patent Citations (1)
Title |
---|
基于深度学习的声纹识别系统研究与实现;梁冰;《中国优秀硕士学位论文全文数据库 信息科技辑》;20210115(第1期);第I136-305页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113221673A (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113221673B (zh) | 基于多尺度特征聚集的说话人认证方法及系统 | |
CN110491416B (zh) | 一种基于lstm和sae的电话语音情感分析与识别方法 | |
CN109036382B (zh) | 一种基于kl散度的音频特征提取方法 | |
CN108231067A (zh) | 基于卷积神经网络与随机森林分类的声音场景识别方法 | |
CN109559736B (zh) | 一种基于对抗网络的电影演员自动配音方法 | |
CN109147817B (zh) | 一种基于变异受限玻尔兹曼机的去噪音频特征提取方法 | |
CN104538035B (zh) | 一种基于Fisher超向量的说话人识别方法及系统 | |
CN111951824A (zh) | 一种基于声音判别抑郁症的检测方法 | |
CN113223536B (zh) | 声纹识别方法、装置及终端设备 | |
CN111048097B (zh) | 一种基于3d卷积的孪生网络声纹识别方法 | |
CN110070895A (zh) | 一种基于监督变分编码器因素分解的混合声音事件检测方法 | |
CN104887263A (zh) | 一种基于心音多维特征提取的身份识别算法及其系统 | |
CN112270931A (zh) | 一种基于孪生卷积神经网络进行欺骗性语音检测的方法 | |
CN113823293A (zh) | 一种基于语音增强的说话人识别方法及系统 | |
CN111986699A (zh) | 基于全卷积网络的声音事件检测方法 | |
CN113345466A (zh) | 基于多麦克风场景的主说话人语音检测方法、装置及设备 | |
CN113763966A (zh) | 一种端到端的文本无关声纹识别方法及系统 | |
CN112562725A (zh) | 基于语谱图和胶囊网络的混合语音情感分类方法 | |
CN113241081B (zh) | 一种基于梯度反转层的远场说话人认证方法及系统 | |
Lu et al. | Detecting Unknown Speech Spoofing Algorithms with Nearest Neighbors. | |
CN111785262B (zh) | 一种基于残差网络及融合特征的说话人年龄性别分类方法 | |
CN117976006A (zh) | 音频处理方法、装置、计算机设备和存储介质 | |
CN107093430A (zh) | 一种基于小波包变换的声纹特征提取算法 | |
Tan et al. | Towards real time implementation of sparse representation classifier (SRC) based heartbeat biometric system | |
CN111862991A (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 |