CN114765028A - 声纹识别方法、装置、终端设备及计算机可读存储介质 - Google Patents
声纹识别方法、装置、终端设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114765028A CN114765028A CN202110055451.5A CN202110055451A CN114765028A CN 114765028 A CN114765028 A CN 114765028A CN 202110055451 A CN202110055451 A CN 202110055451A CN 114765028 A CN114765028 A CN 114765028A
- Authority
- CN
- China
- Prior art keywords
- voice
- voiceprint
- voiceprint feature
- training
- speaker
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000012549 training Methods 0.000 claims abstract description 120
- 238000000605 extraction Methods 0.000 claims abstract description 94
- 239000013598 vector Substances 0.000 claims abstract description 74
- 230000006870 function Effects 0.000 claims abstract description 72
- 230000015654 memory Effects 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 22
- 238000004590 computer program Methods 0.000 claims description 13
- 238000013527 convolutional neural network Methods 0.000 claims description 7
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 230000008569 process Effects 0.000 description 19
- 238000007781 pre-processing Methods 0.000 description 11
- 238000012360 testing method Methods 0.000 description 11
- 238000002474 experimental method Methods 0.000 description 10
- 230000004913 activation Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005457 optimization Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000013095 identification testing Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/06—Decision making techniques; Pattern matching strategies
- G10L17/08—Use of distortion metrics or a particular distance between probe pattern and reference templates
-
- 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
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Game Theory and Decision Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Business, Economics & Management (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本申请适用于计算机技术领域,提供了一种声纹识别方法、装置、终端设备及计算机可读存储介质,方法包括:获取待识别语音信息;将待识别语音信息输入声纹特征提取模型进行处理,输出声纹特征向量;其中,声纹特征提取模型根据损失函数训练得到,损失函数属于度量学习函数;基于声纹特征向量确定待识别语音信息对应的说话人。本申请提供的方法能够减少模型训练所需的算力资源以及GPU显存,降低模型训练的复杂程度,减少模型训练成本,提高模型训练效率。
Description
技术领域
本申请属于计算机技术领域,尤其涉及一种声纹识别方法、装置、终端设备及计算机可读存储介质。
背景技术
声纹识别是生物识别技术的一种,也称为说话人识别,包括说话人辨认和说话人确认。声纹识别以其易用性、低成本、用户接受率高等优势,受到社会各界的广泛关注。
相关技术中,主要通过基于卷积神经网络(Convolutional Neual Network,CNN)训练得到的模型进行声纹识别。此类模型将音频转换为图片后输入CNN进行训练,通过预置的softmax损失函数调整模型,使得模型输出的内容符合目标。
然而,基于softmax损失函数的模型,在训练过程中需要较大的算力资源和显存。
发明内容
本申请提供一种声纹识别方法、装置、终端设备及计算机可读存储介质,可以解决训练过程中需要较大的算力资源和显存的问题。
第一方面,本申请实施例提供了一种声纹识别方法,包括:
获取待识别语音信息;
将待识别语音信息输入声纹特征提取模型进行处理,输出声纹特征向量;其中,所述声纹特征提取模型根据损失函数训练得到,所述损失函数属于度量学习函数;
基于声纹特征向量确定待识别语音信息对应的说话人。
第二方面,本申请实施例提供了一种声纹识别装置,包括:
语音信息获取模块,用于获取待识别语音信息;
特征提取模块,用于将待识别语音信息输入声纹特征提取模型进行处理,输出声纹特征向量;其中,所述声纹特征提取模型根据损失函数训练得到,所述损失函数属于度量学习函数;
识别模块,用于基于声纹特征向量确定待识别语音信息对应的说话人。
第三方面,本申请实施例提供了一种终端设备,该终端设备包括:存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述第一方面中任一项的声纹识别方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述第一方面中任一项的声纹识别方法。
上述声纹识别方法、装置、终端设备及计算机可读存储介质,采用基于度量学习的损失函数进行模型训练,使得声纹特征提取模型学习到同类语音样本之间的相似度和异类语音样本之间的差异性,进而通过语音样本之间的相似度达成分类任务。如此,声纹特征提取模型不需要再完成分类任务,因此不需要映射与训练样本集中说话人数量相同的特征维度的特征向量,从而显著减少训练所需的算力资源以及GPU显存,大大降低模型训练的复杂程度,减少模型训练成本,提高模型训练的训练效率。另外,采用基于度量学习的损失函数进行模型训练,学习同类语音样本之间的相似度和异类语音样本之间的差异性,使得得到的声纹特征提取模型对于不同说话人之间的声纹特征提取更加准确,后期对于声纹的识别也更加准确。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的终端设备结构示意图;
图2是本申请一实施例提供的声纹特征提取模型训练方法的流程示意图;
图3是本申请一实施例提供的声纹特征提取模型的结构示意图;
图4是本申请一实施例提供的声纹识别方法的流程示意图;
图5是本申请一实施例提供的声纹提取装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请实施例中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
可以理解,本申请所使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本申请实施例提供的声纹识别方法可以应用于声纹识别场景,用于对说话人的识别,包括说话人辨认和说话人确认。示例性的,本申请实施例提供的方法可以应用于智能家居产品,用于识别说话人,并根据识别结果启动相应语音操作权限。例如,本申请实施例提供的方法应用于智能电视的近场遥控录音或远场麦克风阵列录音条件下的说话人辨别、说话人验证任务。具体的,本申请实施例提供的方法可以应用于文本无关(Text-independent)的声纹识别。可选的,该方法可以用于对长音频的声纹识别,也可以用于对短音频的声纹识别,其中,长音频是指时长大于3秒的音频,短音频是指时长小于3秒的音频。
本申请实施例提供的声纹识别方法可以应用于终端设备。示例性的,图1为本申请一实施例提供的终端设备的结构示意图。如图1所示,终端设备可以包括:处理器10、存储器11以及存储在存储器11中并可在处理器10上运行的计算机程序12,处理器10执行计算机程序12时可以实现本申请实施例提供的声纹特征提取模型训练方法和声纹识别方法。其中,本申请实施例对处理器10、存储器11的数量和类型不做限定。
其中,本申请实施例对终端设备1的类型不做限定。例如,可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。
下面将结合附图,对本申请中的技术方案进行详细描述。需要说明,在不冲突的情况下,本申请中不同的技术特征之间可以相互结合。
为了便于描述,下述实施例首先结合附图对声纹特征提取模型的训练方法进行说明,之后对利用声纹特征提取模型进行声纹识别的方法进行说明。
图2示出了本申请提供的声纹特征提取模型训练方法的示意性流程图。如图2所示,本实施例提供的声纹特征提取模型训练方法,可以包括:
S201、获取语音样本集合,语音样本集合包括至少两个说话人对应的语音样本。
语音样本集合包括多个语音样本。可选的,可以通过对多个说话人的语音音频进行预处理得到多个语音样本,进而得到语音样本集合。其中,关于语音音频的获取,可以通过对不同的说话人的说话声音进行录音得到,例如,可以对每个说话人随机录取多句话,对多个人进行录音得到多段语音音频。语音音频也可以通过对多个说话人的多段长语音进行截取得到。对语音音频的预处理可以包括但不限于去除静音、音频筛选、音频截取等处理。示例性的,可以去除每段音频的静音部分,对去除静音后的音频进行筛选,剔除有效时长小于1秒的音频,对于时长超过3秒的音频,只截取前3秒。如此,得到多个时长为1至3秒的音频,生成上述语音样本集合。
语音样本集合中每个语音样本对应一个说话人,每个说话人可以对应多个语音样本。两个语音样本可以对应相同的说话人,也可以对应不同的说话人。换言之,上述多个语音样本中包括说话人相同的样本和说话人不同的样本。可以预先对语音样本和说话人的对应关系进行标记,如,编号为1的语音样本对应编号为A的说话人,编号为2的语音样本对应编号为A的说话人,编号为3的语音样本对应编号为B的说话人……如此,相当于对语音样本集合中的语音样本进行分类,说话人相同的语音样本属于同类语音样本,说话人不同的语音样本属于异类语音样本。
需要说明的是,语音样本集合用于模型的训练,但语音样本集合并不等同于训练样本集,训练样本集中可以包括多个语音样本集合。
S202、基于语音样本集合和预先建立的损失函数,对初始声纹特征提取模型进行训练,得到声纹特征提取模型;其中,损失函数属于度量学习(Metric Learning)函数。
初始声纹特征提取模型用于提取语音样本的声纹特征向量。可选的,可以直接将语音样本集合中的语音样本输入初始声纹特征提取模型,输出对应的声纹特征向量,也可以对语音样本进行预处理后,再输入初始声纹特征提取模型,得到对应的声纹特征向量。示例性的,可以对语音样本进行梅尔频率倒谱系数(Mel Frequency Cepstral Coefficents,MFCC)提取,得到MFCC特征图,将MFCC特征图输入初始声纹特征提取模型进行处理。在一个具体的实施例中,对于每个语音样本,可以以1.6KHz的采样率,25ms的帧长,10ms的步长,128的梅尔频率维度,提取得到64维的MFCC特征图。对于时长为3秒的语音样本,经过MFCC提取,得到300*64的特征图;对于时长不足3秒的语音样本,可以用0补齐特征图,得到300*64的特征图。如此,可以得到与语音样本数量相同的300*64的特征图。
根据语音样本集合中每个语音样本对应的声纹特征向量,以及预先建立的损失函数,对初始声纹特征向量的参数进行调整,得到声纹特征向量。本实施例中,模型的损失函数采用度量学习函数。度量学习函数也称为距离度量学习(Distance Metric Learning,DML)函数,或者相似度学习函数。基于度量学习的损失函数的目标是使得同类语音样本的声纹特征向量的相似度更大,且使得异类语音样本之间的相似度更小,即,使得异类语音样本之间的差异性更大,从而便于训练得到的模型在后期进行分类。
通常,传统技术中的声纹特征提取模型训练方法,采用softmax系列的损失函数,训练时需要将声纹特征映射为与训练样本集中说话人数量相同的特征维度的特征向量,例如训练集中包括10000人的语音样本,那么模型需要将每个语音样本映射为10000维度的特征向量,训练模型需要较大的算力资源以及GPU显存。
而在本实施例中,采用基于度量学习的损失函数进行模型训练,使得声纹特征提取模型学习到同类语音样本之间的相似度和异类语音样本之间的差异性,进而通过语音样本之间的相似度达成分类任务。如此,声纹特征提取模型不需要再完成分类任务,因此不需要映射与训练样本集中说话人数量相同的特征维度的特征向量,从而显著减少训练所需的算力资源以及GPU显存,大大降低模型训练的复杂程度,减少模型训练成本,提高模型训练的训练效率。另外,采用基于度量学习的损失函数进行模型训练,学习同类语音样本之间的相似度和异类语音样本之间的差异性,使得得到的声纹特征提取模型对于不同说话人之间的声纹特征提取更加准确,后期对于声纹的识别也更加准确。
需要说明的是,本实施例提供的是根据一个语音样本集合,对初始声纹特征提取模型进行训练的过程。可以理解,在一些具体的实施例中,也可以将训练样本集中的多个语音样本集合依次处理,重复上述S201和S202,对初始声纹特征提取模型进行多次调整,直至模型收敛,得到最终的声纹特征提取模型。其中,每个语音样本集合中的语音样本数量可以根据模型参数及模型收敛速度等确定。作为示例而非限定,每个语音样本集合中可以包括64个语音样本,该64个语音样本包括16个说话人的语音样本,每个说话人对应4个语音样本。如此设置语音样本集合,能够使得模型不仅能够满足收敛要求,而且能够节约大量语音样本,减少训练数据需求,降低模型训练成本。
可选的,根据多个语音样集合对初始声纹特征提取模型进行训练时,可以通过随机梯度下降算法,对模型进行优化,其中,随机梯度下降算法可以采用warmup学习率调整,其学习率变化如下:
lr=flr×100.5×min(step×10-1.5,step-0.5)
其中lr表示当前学习率,flr表示系数,可以设置为0.01,min(x,y)表示取x和y的最小值,step表示当前步数。
作为一种可选的实施方式,上述步骤S202、基于多个语音样本和预先建立的损失函数,对初始声纹特征提取模型进行训练,得到声纹特征提取模型,可以通过以下方式实现,S202包括:
将语音样本集合中的语音样本输入初始声纹特征提取模型进行处理,输出每个语音样本对应的声纹特征向量;根据每个语音样本对应的声纹特征向量以及损失函数,确定训练损失;根据训练损失对初始声纹特征提取模型的参数进行调节,得到声纹特征提取模型。
如上述实施例所述,训练样本中包括多个语音样本集合时,多个语音样本集合可以分别输入初始声纹特征提取模型,结合损失函数,确定出多个训练损失,基于多个训练损失对初始声纹特征提取模型的参数进行多次调节,直至模型收敛。
该实施方式提供的方法,对语音样本集合中的语音样本进行声纹特征提取,并根据提取得到的声纹特征向量和基于度量学习的损失函数确定训练损失,并根据训练损失调节初始声纹特征提取模型的参数,使得该模型逐步学习到同类语音样本之间的相似度和异类语音样本之间的差异性,从而通过语音样本之间的相似度达成分类任务,减少训练所需的算力资源以及GPU显存。
可选的,基于每个语音样本对应的声纹特征向量和损失函数,可以通过以下方式确定训练损失:
对于语音样本集合中的每个语音样本,确定该语音样本对应的声纹特征向量分别与多个类外样本的声纹特征向量的余弦相似度的最大值(以下简称最大值);确定该语音样本对应的声纹特征向量分别与多个类内样本的声纹特征向量的余弦相似度的均值(以下简称均值)。其中,类外样本是指语音样本集合中与该语音样本属于不同说话人的语音样本,类内样本是指语音样本集合中与该语音样本属于相同说话人的语音样本。之后,根据语音样本集中每个语音样本对应的最大值和均值,基于损失函数确定训练损失。
可选的,本实施例中,可以直接根据每个语音样本对应的最大值和均值,基于损失函数确定出训练损失,也可以先根据每个语音样本对应的最大值和均值,基于损失函数确定出一个初始训练损失,然后对初始训练损失进行泛化处理,得到训练损失。通过泛化处理,能够防止过拟合,增强最终得到的声纹特征提取模型的泛化能力。可选的,可以对初始训练损失进行L2泛化处理。对应的,训练损失可以通过如下公式确定:
lossR=loss+L2
其中,lossR表示训练损失,loss表示初始训练损失,L2表示L2范数。
假设语音样本集合中包括N个说话人的语音样本,每个说话人对应M个语音样本,可选的,初始训练损失可以通过以下公式计算得到:
其中,loss表示初始训练损失,N表示说话人的数量,M表示每个说话人对应的语音样本的数量,i表示说话人的序号,j表示每个说话人对应的语音样本的序号,SOij表示第i个说话人的第j个语音样本对应的最大值,SIij表示第i个说话人的第j个语音样本对应的均值,th1表示第一阈值,th2表示第二阈值。
作为示例而非限定,每个语音样本的最大值可以通过以下公式确定:
其中,p表示说话人的序号,q表示第p个说话人对应的语音样本的序号,vij表示第i个说话人的第j个语音样本对应的声纹特征向量;vpq表示第p个说话人的第q个语音样本对应的声纹特征向量;sim[]表示求余弦相似度函数。
作为示例而非限定,每个语音样本的均值可以通过以下公式确定:
其中,k表示第i个说话人对应的语音样本的序号,vik表示第i个说话人的第k个语音样本对应的声纹特征向量。
具体的,基于上述公式,确定训练样本中每个语音样本集合对应的训练损失,通过随机梯度下降等优化方法,调整模型参数,优化模型,使得训练损失不断下降,进而使得模型在训练过程中逐渐偏向损失函数设定的目标,最终得到符合预期的声纹特征提取模型。
本实施例中,基于度量学习的损失函数的主要动机是使得同类语音样本中的任意一语音样本对应的声纹特征向量与类中心的余弦相似度大于第一阈值,同时,使得任一语音样本对应的声纹特征向量与类外任意语音样本的相似度的最大值小于第二阈值。这样,通过调节第一阈值和第二阈值,一方面可以使得声纹特征提取模型符合主要目标,另一方面可以平衡类内相似度与类外相似度,防止二者其中一个相似度占据过大比重,影响另一个的相似度的优化,提高模型的优化效果。
以下结合实施例对声纹特征提取模型的结构以及声纹特征提取的具体过程进行进一步说明:
图3为一个实施例中声纹特征提取模型的结构示意图。如图3所示,声纹特征提取模型包括卷积神经网络子模型和门控循环单元(Gated Recurrent Unit,GRU)子模型和全连接(Fully Connected,FC)层。其中,GRU是循环神经网络(Recurrent Neural Network,RNN)的一种变体。可以理解,初始声纹特征提取模型与声纹特征提取模型的结构相同,二者仅参数不同,本实施例仅以声纹特征提取模型为例进行说明。模型训练时,初始声纹特征提取模型的各层的工作过程与此相似,不再赘述。
示例性的,结合表1对声纹特征提取模型进行说明。
表1
模型结构层 | 输出数据维度 |
Reshape-1 | [64,300,64,1] |
Conv-1:[5*5]*16,步长数:2,激活函数:Relu | [64,150,32,16] |
Conv-2:[5*5]*32,步长数:2,激活函数:Relu | [64,75,16,32] |
Conv-3:[5*5]*64,步长数:2,激活函数:Relu | [64,38,8,64] |
Reshape-2 | [64,38,512] |
GRU:128cells | [64,128] |
FC:512,激活函数:tanh,L2泛化 | [64,512] |
如表1所示,卷积神经网络子模型可以包括第一重构层(Reshape-1),第一卷积层(Conv-1)、第二卷积层(Conv-2)、第三卷积层(Conv-3)、第二重构层(Reshape-2)。可选的,第一卷积层、第二卷积层和第三卷积层的卷积核均为5*5。选用5*5的卷积核,相较于过小的卷积核,如3*3的卷积核,能够在更大的时间维度上提取声纹特征,相较于过大的卷积核,能够有效减少模型参数量,实现模型轻量化,提高模型运算速度,减少算力需求。可选的,第一卷积层、第二卷积层和第三卷积层的步长数均为2。步长数为2,能够有效压缩特征,进一步减少模型的参数量,减小模型复杂程度,实现模型轻量化,进而能够提高模型的运算速度。可选的,门控循环单元子模型包括128个隐藏神经单元。
在此,以语音样本集合中包括64个语音样本为例,结合声纹特征提取模型对声纹特征的提取过程进行说明:
1)对64个语音音频进行预处理,得到64个语音样本,并对64个语音样本进行预处理(MFCC参数提取),得到64张300*64的MFCC特征图。对语音音频和语音样本的预处理过程参见上述实施例,在此不再赘述。
2)将64张300*64的MFCC特征图输入第一重构层进行重构处理,得到64张300*64*1的特征图。
3)将64张300*64*1的特征图输入第一卷积层,以ReLu为激活函数,提取声纹特征。具体的,第一卷积层的卷积核为5*5,步长数为2,通道数为16。本层输出64张150*32*16的特征图。
4)将64张150*32*16的特征图输入第二卷积层,以ReLu为激活函数,进一步压缩提纯声纹特征。具体的,第二卷积层的卷积核为5*5,步长数为2,通道数为32。本层输出64张75*16*32的特征图。
5)将64张75*16*32的特征图输入第三卷积层,以ReLu为激活函数,在次压缩提纯声纹特征。具体的,第三卷积层的卷积核为5*5,步长数为2,通道数为64。本层输出64张38*8*64的特征图。
6)将64张38*8*64的特征图输入第二重构层进行重构处理,得到64张38*512的特征图。
7)将64张38*512的特征图输入具有128个隐藏神经单元的门控循环单元子模型,门口循环单元子模型提取具有时间序列特征的声纹特征,该声纹特征为句子级别的特征。
8)通过全连接层连接tanh激活函数,将具有时间序列特征的声纹特征映射为64张512维度的初步声纹特征向量,并对每个初步声纹特征向量进行L2泛化处理,得到能够区分说话人的声纹特征向量。
显然可见,以本实施例中提供的结构作为初始特征提取模型进行模型训练时,任一语音样本输入初始特征提取模型,声纹特征提取模型仅需要将声纹特征映射为512维度的声纹特征向量,通过基于度量学习的损失函数对各个语音样本对应的声纹特征向量的相似度进行计算,完成分类,而无需将声纹特征映射为训练集中说话人数量相同特征维度的特征向量,从而显著的减少训练所需的算力资源以及GPU显存,简化训练过程,提高训练速度。
以下结合附图,对本申请提供的声纹识别方法进行详细描述。
图4示出了本申请提供的声纹识别方法的示意性流程图。如图4所示,本实施例提供的声纹识别方法,可以包括:
S401、获取待识别语音信息。
S402、将待识别语音信息输入声纹特征提取模型进行处理,输出声纹特征向量;其中,所述声纹特征提取模型根据损失函数训练得到,所述损失函数属于度量学习函数。
S403、基于声纹特征向量确定待识别语音信息对应的说话人。
本实施例中的声纹特征提取模型通过上述实施例提供的声纹特征提取模型训练方法训练得到。声纹特征提取模型对待识别语音信息进行处理提取声纹特征向量的具体过程参见上述实施例,在此不再赘述。
可选的,可以预先建立声纹模型库,声纹模型库中存储有多个注册声纹,注册声纹用于表征经过识别和记录的说话人的声纹。可以通过计算待识别语音信息对应的声纹特征向量与声纹模型库中每个注册声纹的相似度,将相似度较高的声纹对应的说话人作为待识别语音信息对应的说话人。
本实施例提供的声纹识别方法,通过声纹特征提取模型进行处理,提取声纹特征向量。其中,声纹特征提取模型通过基于度量学习的损失函数训练得到,使得该模型学习到了同类语音样本之间的相似度以及异类语音样本之间的差异性,进而通过语音样本之间的相似度达成分类任务。通过基于度量学习的损失函数训练得到的声纹特征提取模型,对声纹特征提取准确率高,从而使得对说话人的识别更加准确。
以下对本申请实施例提供的声纹特征提取模型训练方法及声纹识别方法的检测和实验验证过程进行说明。
1)数据集
实验中采用的数据集包括:近场遥控器录音数据集和远场电视麦克风阵列录音数据集。
对两个数据集中的数据分别进行去除静音、筛选、截取等操作,得到多个时长为1秒至3秒的音频。两个数据集处理后得到数据集命名为近场样本集和远场样本集。其中,近场样本集中包括8031个说话人的语音样本,共41.2万个语音样本。远场样本集中包括7224个说话人的语音样本,共22.3万个语音样本。对近场样本集中的语音样本进行随机划分,将包括7500个说话人的语音样本作为训练集,将剩下的531个说话人的语音样本作为测试集。对远场样本集中语音样本进行随机划分,将包括6700个说话人的语音样本作为训练集,将剩下的524个说话人的语音样本作为测试集。实验中,近场样本集和远场样本集分别进行试验,二者互不交叉。
2)算力资源
训练模型时,每个语音样本集合中包括64个语音样本,即每批次处理64个数据,约778M的GPU显存即可进行训练。通过型号为NVIDIA Tesla P100PCI-E 16GB的GPU单线程进行训练,约72小时即可实现初步收敛,约168小时即可接近完全收敛。接近完全收敛后,继续训练一周,可以提升约1%的准确率。
3)识别结果
本实验以识别准确率和等错误率(Equal Error Rate,EER)两个评估指标进行评估。其中,识别准确率模仿实际应用场景,每个用户注册3句话,每次录入1句话进行识别。每轮测试选取测试集中的6个说话人(如,家庭场景中,可以包括祖父母、父母、子女共6人),每个说话人说4句话进行识别测试。每一轮测试中,以说话人说的4句话中的3句话作为注册音频,另外1句话作为查询音频。识别时,选出与查询音频最为相似的注册音频所属的说话人类别作为预测的说话人类别,以此计算识别准确率。从测试集中重复随机选取多轮进行测试,求多轮得到的识别准确率的平均值,进而得到较为稳定和准确的识别准确率。实验中,近场样本集进行2305轮实验,求得准确率均值为0.98;远场样本集进行1304轮实验,求得准确率均值为0.969。
此外,为了进一步测试模型对分类数量的泛化性能,每轮选取50个说话人人进行测试,近场样本集进行276轮实验,求得准确率均值为0.907,远场样本集进行156轮实验,求得准确率均值为0.854。
本实验中,近场样本集测得的模型EER约为0.034,远场样本集测得的模型EER约为0.038。
4)模型速度
本申请是实施例提供的声纹识别方法在进行声纹识别时,影响模型速度的处理过程主要为数据预处理过程和声纹特征提取模型推理计算声纹特征向量的过程。数据预处理过程,包括对语音音频预处理生成语音样本,以及对语音样本进行预处理生成MFCC等。其中,原始语音音频的时长,以及对语音音频进行预处理生成的语音样本的时长均会影响预处理过程的速度。此外,声纹识别方法运行的终端设备的状态与配置也是影响预处理过程和声纹特征向量推理计算的重要因素。
本实验在型号为intel i5-8400 CPU的终端设备上进行模型速度的测试。语音样本的时长为1到3秒,平均每个语音样本的预处理耗时在0.04秒左右。声纹特征提取模型推理计算声纹特征向量的过程,每批次输入6*2个MFCC特征图到模型进行运算,得到12个声纹特征向量,记录声纹特征提取模型处理一批次数据消耗的时间。重复100次,去除耗时值中的最大值和最小值,计算剩下的98次耗时值的均值,再除以12,可以得到声纹特征提取模型处理每个MFCC特征图的推理耗时,约为0.0025秒。
5)与其他声纹特征提取模型的类比
2018年某公司发表的论文中的某声纹特征提取模型,其文本无关训练数据采用1.8万个说话人的数据,共3600万个语音样本。据论文所述,其EER为0.0355。实验分析发现,该模型若以批次大小为64,最长时长为3秒的音频作为训练样本将进行训练,需要12G以上的GPU显存才能进行训练。若采用更长时长的训练样本,需要内存更大的GPU显存。
2020年某大学发表的一篇声纹特征提取的论文,训练模型采用了6000个说话人,共100万个个语音样本的数据进行训练。据论文所述,其模型EER在0.02到0.05之间实验分析发现,该模型若以批次大小为64,最长时长为3秒的,音频作为训练样本将进行训练,需要9G以上的GPU显存才能进行训练。
值得注意的是,由于上述论文的测试集采用的音频时长、音质、噪音、数据分布差异等问题,几个模型的EER不能直接进行对比。但是,通过相同数量的语音样本集合下,模型训练所需的GUP内存等的比较,显然可见,本申请实施例提供的声纹特征提取模型训练方法和声纹特征识别方法,在模型性能可比拟的前提下,能够显著减少训练所需的算力资源以及GPU显存,且能够节约大量语音样本,减少训练数据需求,降低模型训练成本。
图5示出了本申请实施例提供的声纹识别装置的结构框图。如图5所示,本实施例提供的声纹识别装置,可以包括:
语音信息获取模块601,用于获取待识别语音信息;
特征提取模块602,用于将待识别语音信息输入声纹特征提取模型进行处理,输出声纹特征向量;其中,所述声纹特征提取模型根据损失函数训练得到,所述损失函数属于度量学习函数;
识别模块603,用于基于声纹特征向量确定待识别语音信息对应的说话人。
在一个实施例中,声纹识别装置还可以包括模型训练模块604,用于获取语音样本集合,语音样本集合包括至少两个说话人对应的语音样本;将语音样本集合中的语音样本输入初始声纹特征提取模型进行处理,输出每个语音样本对应的声纹特征向量;根据每个语音样本对应的声纹特征向量以及损失函数,确定训练损失;根据训练损失对初始声纹特征提取模型的参数进行调节,得到声纹特征提取模型。
在一个实施例中,模型训练模块604具体用于对于每个语音样本,确定该语音样本对应的声纹特征向量分别与多个类外样本的声纹特征向量的余弦相似度的最大值,类外样本为语音样本集合中与该语音样本属于不同说话人的语音样本;确定该语音样本对应的声纹特征向量分别与多个类内样本的声纹特征向量的余弦相似度的均值,类内样本为语音样本集合中与该语音样本属于相同说话人的语音样本;根据每个语音样本对应的最大值和均值,以及损失函数确定训练损失。
在一个实施例中,模型训练模块604具体用于根据每个语音样本对应的最大值和均值,以及损失函数确定初始训练损失;对初始训练损失进行泛化处理,得到训练损失。
在一个实施例中,模型训练模块604具体用于根据公式确定最大值,其中,p表示说话人的序号,q表示第p个说话人对应的语音样本的序号,vij表示第i个说话人的第j个语音样本对应的声纹特征向量;vpq表示第p个说话人的第q个语音样本对应的声纹特征向量;根据公式确定均值,其中,k表示第i个说话人对应的语音样本的序号,vik表示第i个说话人的第k个语音样本对应的声纹特征向量。
本实施例提供的声纹识别装置,用于执行本申请方法实施例提供的声纹识别方法,技术原理和技术效果相似,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种终端设备,例如图1所示,该终端设备包括:至少一个处理器、存储器以及存储在上述存储器中并可在上述至少一个处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现上述任意方法实施例中的步骤。
本申请实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时可实现上述任意方法实施例中的步骤。
本领域技术人员可以理解,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (11)
1.一种声纹识别方法,其特征在于,包括:
获取待识别语音信息;
将所述待识别语音信息输入声纹特征提取模型进行处理,输出声纹特征向量;其中,所述声纹特征提取模型根据损失函数训练得到,所述损失函数属于度量学习函数;
基于所述声纹特征向量确定所述待识别语音信息对应的说话人。
2.根据权利要求1所述的方法,其特征在于,根据所述损失函数训练得到所述声纹特征提取模型,包括:
获取语音样本集合,所述语音样本集合包括至少两个说话人对应的语音样本;
将所述语音样本集合中的语音样本输入初始声纹特征提取模型进行处理,输出每个所述语音样本对应的声纹特征向量;
根据每个所述语音样本对应的声纹特征向量以及所述损失函数,确定训练损失;
根据所述训练损失对所述初始声纹特征提取模型的参数进行调节,得到所述声纹特征提取模型。
3.根据权利要求2所述的方法,其特征在于,所述根据每个所述语音样本对应的声纹特征向量以及所述损失函数,确定训练损失,包括:
对于每个所述语音样本,确定该语音样本对应的声纹特征向量分别与多个类外样本的声纹特征向量的余弦相似度的最大值,所述类外样本为所述语音样本集合中与该语音样本属于不同说话人的语音样本;
确定该语音样本对应的声纹特征向量分别与多个类内样本的声纹特征向量的余弦相似度的均值,所述类内样本为所述语音样本集合中与该语音样本属于相同说话人的语音样本;
根据每个语音样本对应的最大值和均值,以及所述损失函数确定所述训练损失。
4.根据权利要求3所述的方法,其特征在于,所述根据每个语音样本对应的最大值和均值,以及所述损失函数确定所述训练损失,包括:
根据每个语音样本对应的最大值和均值,以及所述损失函数确定初始训练损失;
对所述初始训练损失进行泛化处理,得到所述训练损失。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述声纹特征提取模型包括卷积神经网络子模型和门控循环单元子模型,所述卷积神经网络子模型包括多个卷积层,每个所述卷积层的步长数为2。
8.根据权利要求7所述的方法,其特征在于,所述卷积层的卷积核为5*5。
9.一种声纹识别装置,其特征在于,包括:
语音信息获取模块,用于获取待识别语音信息;
特征提取模块,用于将所述待识别语音信息输入声纹特征提取模型进行处理,输出声纹特征向量;其中,所述声纹特征提取模型根据损失函数训练得到,所述损失函数属于度量学习函数;
识别模块,用于基于所述声纹特征向量确定所述待识别语音信息对应的说话人。
10.一种终端设备,其特征在于,所述终端设备包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至8任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110055451.5A CN114765028A (zh) | 2021-01-15 | 2021-01-15 | 声纹识别方法、装置、终端设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110055451.5A CN114765028A (zh) | 2021-01-15 | 2021-01-15 | 声纹识别方法、装置、终端设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114765028A true CN114765028A (zh) | 2022-07-19 |
Family
ID=82363593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110055451.5A Pending CN114765028A (zh) | 2021-01-15 | 2021-01-15 | 声纹识别方法、装置、终端设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114765028A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758936A (zh) * | 2023-08-18 | 2023-09-15 | 腾讯科技(深圳)有限公司 | 音频指纹特征提取模型的处理方法、装置和计算机设备 |
-
2021
- 2021-01-15 CN CN202110055451.5A patent/CN114765028A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758936A (zh) * | 2023-08-18 | 2023-09-15 | 腾讯科技(深圳)有限公司 | 音频指纹特征提取模型的处理方法、装置和计算机设备 |
CN116758936B (zh) * | 2023-08-18 | 2023-11-07 | 腾讯科技(深圳)有限公司 | 音频指纹特征提取模型的处理方法、装置和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110491416B (zh) | 一种基于lstm和sae的电话语音情感分析与识别方法 | |
Liu et al. | GMM and CNN hybrid method for short utterance speaker recognition | |
CN109817246B (zh) | 情感识别模型的训练方法、情感识别方法、装置、设备及存储介质 | |
Ma et al. | Emotion recognition from variable-length speech segments using deep learning on spectrograms. | |
CN111712874B (zh) | 用于确定声音特性的方法、系统、装置和存储介质 | |
US10176811B2 (en) | Neural network-based voiceprint information extraction method and apparatus | |
CN110289003A (zh) | 一种声纹识别的方法、模型训练的方法以及服务器 | |
US10008209B1 (en) | Computer-implemented systems and methods for speaker recognition using a neural network | |
Demircan et al. | Feature extraction from speech data for emotion recognition | |
CN108364662B (zh) | 基于成对鉴别任务的语音情感识别方法与系统 | |
CN110349597B (zh) | 一种语音检测方法及装置 | |
CN110570873A (zh) | 声纹唤醒方法、装置、计算机设备以及存储介质 | |
CN111694940A (zh) | 一种用户报告的生成方法及终端设备 | |
EP4198807A1 (en) | Audio processing method and device | |
CN111968652B (zh) | 一种基于3dcnn-lstm的说话人识别方法及存储介质 | |
Shen et al. | Knowledge distillation-based representation learning for short-utterance spoken language identification | |
Wang et al. | I-vector features and deep neural network modeling for language recognition | |
Zhang et al. | Temporal Transformer Networks for Acoustic Scene Classification. | |
CN110931043A (zh) | 集成语音情感识别方法、装置、设备及存储介质 | |
CN114765028A (zh) | 声纹识别方法、装置、终端设备及计算机可读存储介质 | |
CN109119073A (zh) | 基于多源识别的语音识别方法、系统、音箱及存储介质 | |
Zhao et al. | Transferring age and gender attributes for dimensional emotion prediction from big speech data using hierarchical deep learning | |
Chinmayi et al. | Emotion Classification Using Deep Learning | |
Xue et al. | Learning speech emotion features by joint disentangling-discrimination | |
Benmachiche et al. | Development of a biometric authentication platform using voice recognition |
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 |