CN114049900B - 模型训练方法、身份识别方法、装置及电子设备 - Google Patents

模型训练方法、身份识别方法、装置及电子设备 Download PDF

Info

Publication number
CN114049900B
CN114049900B CN202111491248.9A CN202111491248A CN114049900B CN 114049900 B CN114049900 B CN 114049900B CN 202111491248 A CN202111491248 A CN 202111491248A CN 114049900 B CN114049900 B CN 114049900B
Authority
CN
China
Prior art keywords
model
voiceprint feature
feature vector
training
current
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
Application number
CN202111491248.9A
Other languages
English (en)
Other versions
CN114049900A (zh
Inventor
孟庆林
王洪斌
刘敏
陈燕丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mashang Consumer Finance Co Ltd
Original Assignee
Mashang Consumer Finance Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mashang Consumer Finance Co Ltd filed Critical Mashang Consumer Finance Co Ltd
Priority to CN202111491248.9A priority Critical patent/CN114049900B/zh
Publication of CN114049900A publication Critical patent/CN114049900A/zh
Application granted granted Critical
Publication of CN114049900B publication Critical patent/CN114049900B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/04Training, enrolment or model building
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/02Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/06Decision making techniques; Pattern matching strategies
    • G10L17/08Use of distortion metrics or a particular distance between probe pattern and reference templates

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种模型训练方法、身份识别方法、装置及电子设备。所述方法包括:获取第一训练数据集;将第一训练数据集输入到待训练模型中,获取待训练模型输出的声纹特征向量;将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值;将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值;根据所述当前领域分类损失函数的损失值和所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。

Description

模型训练方法、身份识别方法、装置及电子设备
技术领域
本申请属于机器学习技术领域,具体涉及一种模型训练方法、身份识别方法、装置、电子设备及存储介质。
背景技术
声音,作为人与生具来的能力,被视为很有前途的一种标识个人身份的特征,越来越受到重视。理论上来说,声纹就像指纹一样,很少会有两个人具有相同的声纹特征,因此,可以通过声纹来进行身份确认。在通过声纹来进行身份确认的过程中,需要对声音的声纹特征进行提取。但是,在基于相关的声纹特征提取模型提取到的声纹特征进行身份识别时,身份识别的准确性还有待提高。
发明内容
鉴于上述问题,本申请提出了一种模型训练方法、身份识别方法、装置、电子设备及存储介质,以实现改善上述问题。
第一方面,本申请实施例提供了一种声纹特征提取模型训练方法,所述方法包括:获取第一训练数据集,所述第一训练数据集为对训练音频数据集进行特征提取得到;将所述第一训练数据集输入到待训练模型中,获取所述待训练模型输出的声纹特征向量;将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值;将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值;根据所述当前领域分类损失函数的损失值和所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。
第二方面,本申请实施例提供了一种身份识别方法,所述方法包括:获取待识别用户的第一语音数据;将所述第一语音数据输入到声纹特征提取模型中,获取所述声纹特征提取模型输出的声纹特征向量;将所述声纹特征向量与预设声纹特征向量输入到身份识别模型中,得到所述身份识别模型输出的声纹识别结果,其中,所述预设声纹特征向量为将预录入的语音数据输入到所述声纹特征提取模型中得到;基于所述声纹识别结果,确定所述待识别用户的身份识别是否成功。
第三方面,本申请实施例提供了一种声纹特征提取模型训练装置,所述装置包括:第一获取单元,用于获取第一训练数据集,所述第一训练数据集为对训练音频数据集进行特征提取得到;第二获取单元,用于将所述第一训练数据集输入到待训练模型中,获取所述待训练模型输出的声纹特征向量;第一确定单元,用于将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值;第二确定单元,用于将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值;训练单元,用于根据所述当前领域分类损失函数的损失值以及所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。
第四方面,本申请实施例提供了一种身份识别装置,所述装置包括:数据获取单元,用于获取待识别用户的第一语音数据;向量获取单元,用于将所述第一语音数据输入到声纹特征提取模型中,获取所述声纹特征提取模型输出的声纹特征向量;结果获取单元,用于将所述声纹特征向量与预设声纹特征向量输入到身份识别模型中,得到所述身份识别模型输出的声纹识别结果,其中,所述预设声纹特征向量为将预录入的语音数据输入到所述声纹特征提取模型中得到;处理单元,用于基于所述声纹识别结果,确定所述待识别用户的身份识别结果。
第五方面,本申请实施例提供了一种电子设备,包括一个或多个处理器以及存储器;一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行上述的方法。
第七方面,本申请实施例提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述方法的步骤。
本申请实施例提供了一种声纹特征提取模型训练方法、身份识别方法、装置、电子设备及存储介质,通过将待训练模型输出的声纹特征向量分别输入到领域分类模型和说话人分类模型中,得到当前领域分类损失函数的损失值和当前说话人分类损失函数的损失值,再基于当前领域分类损失函数的损失值和当前说话人分类损失函数的损失值对待训练模型进行当前次训练,若当前领域分类损失函数的损失值大于目标值,以及当前说话人分类损失函数收敛,则得到声纹特征提取模型。通过上述方法,通过领域分类损失函数的损失值和说话人分类损失函数的损失值对待训练模型进行训练,可以使得领域分类损失越来越大,说话人分类损失越来越小,并且在领域分类损失函数的损失值大于目标值,以及说话人分类损失函数收敛的情况下,得到声纹特征提取模型,以使得声纹特征提取模型可以在优化说话人分类损失的基础上,更好的模糊不同领域之间的差距,进而通过声纹特征提取模型提取到的声纹特征向量的领域界限越来越模糊,说话人的分辨能力越来越强,进而基于声纹特征提取模型提取到的声纹特征向量进行身份识别,可以提高身份识别的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一实施例提出的一种声纹特征提取模型训练方法和身份识别方法的应用场景示意图;
图2示出了本申请一实施例提出的一种声纹特征提取模型训练方法的流程图;
图3示出了本申请一实施例提出的一种提取Fbank特征的过程示意图;
图4示出了本申请一实施例提出的一种声纹特征提取模型训练的示意图;
图5示出了本申请另一实施例提出的一种身份识别方法的流程图;
图6示出了本申请又一实施例提出的一种身份识别方法的流程图;
图7示出了本申请再一实施例提出的一种身份识别方法的流程图;
图8示出了本申请再一实施例中身份识别模型训练的流程图;
图9示出了本申请又一实施例提出的一种身份识别方法的流程图;
图10示出了本申请实施例提出的一种声纹特征提取模型训练装置的结构框图;
图11示出了本申请实施例提出的一种身份识别装置的结构框图;
图12示出了本申请实施例提出的一种身份识别装置的结构框图;
图13示出了本申请实施中的用于执行根据本申请实施例的声纹特征提取模型训练方法和身份识别方法的服务器或电子设备的结构框图;
图14示出了本申请实施中的用于保存或者携带实现根据本申请实施例的声纹特征提取模型训练方法和身份识别方法的程序代码的存储单元。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在消费金融场景中,公司与客户之前的放贷、收款、催收过程中的资金流动非常大,在客服与客户沟通的过程中就存在着欺诈的可能性。同时,市场上的黑中介已经有了许多伪造用户身份的办法,任何单一的身份识别手段都无法有效地解决问题,人脸识别技术也容易被攻破。因此,需要结合更多的身份识别手段。
声音,作为人与生俱来的能力,被视为很有前途的一种标识个人身份的特征,越来越受到重视。理论上来说,声纹就像指纹一样,很少会有两个人具有相同的声纹特征,因此,可以通过声纹来进行身份确认。在通过声纹来进行身份确认的过程中,需要对声音的声纹特征进行提取。但是,在基于相关的声纹特征提取模型提取到的声纹特征进行身份识别时,由于大量干扰因素使得目标领域和源领域数据分布存在差异,比如语音录制的设备不同,环境的背景噪声情况不同,语言种类不同,甚至说话人到同一录制设备的距离不同,导致相关的声纹特征提取模型提取到的声纹特征向量在跨领域时难以识别,进而使得基于该声纹特征向量进行身份识别的准确性还有待提高。
因此,发明人提出了本申请中的模型训练方法、身份识别方法、装置、电子设备及存储介质。通过领域分类损失函数的损失值和说话人分类损失函数的损失值对待训练模型进行训练,可以使得领域分类损失越来越大,说话人分类损失越来越小,并且在领域分类损失函数的损失值大于目标值,以及说话人分类损失函数收敛的情况下,得到声纹特征提取模型,以使得声纹特征提取模型可以在优化说话人分类损失的基础上,更好的模糊不同领域之间的差距,进而通过声纹特征提取模型提取到的声纹特征向量的领域界限越来越模糊,说话人的分辨能力越来越强,进而基于声纹特征提取模型提取到的声纹特征向量进行身份识别,可以提高身份识别的准确性。
在对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及一种应用环境进行介绍。
图1示出了根据本申请的实施例可以将本申请描述的各种方法和装置在其中实施的系统100的示意图。参考图1,该系统100包括一个或多个电子设备110、服务器120以及将一个或多个电子设备耦接到服务器120的一个或多个通信网络130。
在本申请的实施例中,服务器120可以运行使得能够执行声纹特征提取模型训练方法或身份识别方法的一个或多个服务或软件应用。在一些实施方式中,服务器120可以为分布式系统的服务器。服务器120也可以是云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
可以使用电子设备110来获取训练音频数据集。电子设备110可以提供使电子设备110的用户能够与电子设备110进行交互的接口。电子设备110还可以经由该接口向用户输出信息,比如电子设备110可以通过该接口输入音频数据。
电子设备110可以为各种类型的计算机设备,例如便携式手持设备、通用计算机(诸如个人计算机和膝上型计算机)以及可穿戴设备等。其中,便携式手持设备可以包括蜂窝电话、智能电话、平板电脑、个人数字助理(PDA)等;可穿戴设备可以包括头戴式显示器和其他设备。电子设备110能够执行各种不同的应用程序,例如各种与Internet相关的应用程序、通信应用程序(例如电子邮件应用程序)、短消息服务(SMS)应用程序,并且可以使用各种通信协议。
网络130可以是任何类型的网络,其可以使用多种可用协议中的任何一种(包括但不限于TCP/IP、SNA、IPX等)来支持数据通信。仅作为示例,一个或多个网络130可以是局域网(LAN)、基于以太网的网络、令牌环、广域网(WAN)、因特网、虚拟网络、虚拟专用网络(VPN)、内部网、外部网、公共交换电话网(PSTN)、红外网络、无线网络(例如蓝牙、WIFI)和/或这些和/或其他网络的任意组合。
系统100还可以包括一个或多个数据库140。在某些实施例中,这些数据库可以用于存储训练音频数据集。数据库140可以驻留在各种位置。例如,由服务器120使用的数据库可以在服务器120本地,或者可以远离服务器120且可以经由基于网络或专用的连接与服务器120通信。数据库140可以是不同的类型。在某些实施例中,由服务器120使用的数据库可以为关系数据库。这些数据库中的一个或多个可以响应于命令而存储、更新和检索到数据库以及来自数据库的数据。
可选的,电子设备110也可以运行使得能够执行声纹特征提取模型训练方法或身份识别方法的一个或多个服务或软件应用。
下面将结合附图具体描述本申请的各实施例。
请参阅图2,本申请实施例提供的一种声纹特征提取模型训练方法,本申请实施例的方法可以由如图1所示的服务器120或电子设备110执行,所述方法包括:
步骤S210:获取第一训练数据集,所述第一训练数据集为对训练音频数据集进行特征提取得到。
在本申请实施例中,为了对模型进行训练,使得训练后的模型能够输出更加准确的输出数据,因此,需要获取大量的训练数据来对模型进行训练。
作为一种方式,在获取第一训练数据集之前,可以先获取训练音频数据集。进而可以通过对训练音频数据集进行特征提取得到第一训练数据集。其中,训练音频数据集中可以包含多个训练音频数据,各个训练音频数据可以为同一说话人产生的,也可以为不同的说话人产生的,还可以为部分训练音频数据为同一说话人产生的。其中,一个训练音频数据可以理解为一段音频数据。可选的,在本申请实施例中,训练音频数据集中包括的多个训练音频数据可以为进行声纹标注后的源域音频数据和目标域音频数据。其中,声纹标注为标注员通过人耳去判断每段语音数据是否属于对应工号下的音频,并标注每段音频数据是属于电话信道数据还是非电话信道数据,也就是说标注每段语音数据是属于源域数据还是目标域数据。源域(source domain)表示与测试样本不同的领域,但是有丰富的监督信息;目标域(target domain)表示测试样本所在的领域,无标签或者只有少量标签。示例性的,若测试样本所在的领域为电话信道,那么电话信道就是目标域,非电话信道就是源域。
为了增加用于划分训练音频数据集和测试音频数据集的音频数据的数量,可以通过加噪声、加快语速以及增加数据扰动等方式对该用于划分训练音频数据集和测试音频数据集的音频数据进行数据扩增,以得到更多数量音频数据构成的训练音频数据集。示例性的,可以将进行声纹标注后的1000小时的源域音频数据和200小时的目标域音频数据,通过加噪声、加快语速以及增加数据扰动等方式进行数据扩增,以得到更多数量的音频数据构成的训练音频数据集。
在通过上述方法对音频数据进行数据扩增后,可以将数据扩增后的音频数据按照训练音频数据集与测试音频数据集的比例为8:2进行划分。其中,在划分时充分考虑说话人信息,做到训练音频数据集与测试音频数据集的说话人音频分开。其中,划分时充分考虑说话人信息可以理解为在划分训练音频数据集和测试音频数据集的时候,把每个说话人的音频数据都划分进去,说话人信息包括标注时是否属于某个说话人的信息。示例性的,比如有5000个说话人的音频数据,那么在按照8:2的比例进行训练音频数据集和测试音频数据集的划分时,可以选取每个说话人的2条音频数据作为测试音频数据集,选取每个说话人的8条语音数据作为训练音频数据集。或者,也可以将其中4000个说话人的音频数据作为训练音频数据集,将其中1000个说话人的音频数据作为测试音频数据集。
当将音频数据划分为训练音频数据集和测试音频数据集后,可以对训练音频数据集和测试音频数据集进行存储。在本申请实施例中,可以将训练音频数据集和测试音频数据集存储在本地存储区域或者云服务器中,在此不做具体限定。
进而当需要获取训练音频数据集时,可以从数据库中直接获取预存的训练音频数据集,比如从本地存储区域或云服务器中获取训练音频数据集;也可以从第三方训练音频生成系统中获取训练音频数据集,当然,其他方式的训练音频数据集获取方式也在本申请的保护范围内,在此不再具体进行限定。
进而,在获取到训练音频数据集后,可以对训练音频数据集中的训练音频数据进行特征提取。在本申请实施例中,所提取的特征为Fbank(Mel filterbanks,梅尔滤波器组)特征,第一训练数据集中包括每个训练音频数据对应的Fbank特征。
作为一种方式,第一训练数据集可以为基于MFCC(Mel-Frequency CepstralCoefficients,梅尔频率倒谱系数)对训练音频数据集进行特征提取而得到的。其中,梅尔频率是基于人耳听觉特性提出来的,它与Hz频率成非线性对应关系,MFCC则是利用它们之间的这种关系,计算得到的Hz频谱特征,主要用于音频数据特征的提取。示例性的,可以通过MFCC来提取80维的Fbank特征。通过采用MFCC来提取特征的方式,既提高了特征提取的便利性,又提高了特征提取的准确性。如图3所示,通过MFCC提取Fbank特征的步骤可以包括:预加重、分帧、加窗、快速傅里叶变换(FFT)、mel滤波以及取对数功率。首先将时域音频数据做预加重处理;然后将预加重处理后的音频数据分帧,并使用汉明窗函数对每帧音频数据处理;随后使用短时快速傅里叶变换将每一帧音频数据变换到频域上,获得频谱特征;最后使用梅尔三角滤波器对频谱特征进行滤波,获得Fbank特征。
此外,还可以采用kaldi、espnet或者librosa等现有工具包对训练音频数据集进行特征提取。当然,还可以直接使用python写特征提取的算法对训练音频数据集进行特征提取。
当提取到每一个训练音频数据对应的Fbank特征后,可以单独将每一个训练音频数据对应的Fbank特征存储在一个特征文件中,以便在需要获取训练特征集时,可以分批次读取特征文件,形成data-label的特征数据组合。这里的分批次指的是一次读取指定数量的特征文件,可以多次读取指定数量的特征文件,直至将特征文件读取完,每一次读取的特征文件可以形成一个特征数据组合。示例性的,总共有80个特征文件,指定数量的特征文件为10个特征文件,那么分批次读取特征文件就可以理解为每次读取10个特征文件,直至将80个特征文件读取完。
步骤S220:将所述第一训练数据集输入到待训练模型中,获取所述待训练模型输出的声纹特征向量。
在本申请实施例中,当获取到第一训练数据集后,可以将第一训练数据集包括的特征数据组合输入到待训练模型中进行声纹特征向量提取,得到每一个训练特征对应的声纹特征向量。可选的,可以分批次将特征数据组合馈入待训练模型中进行前向传播,获取经过待训练模型输出的声纹特征向量。
其中,待训练模型为待训练的声纹特征提取模型,待训练模型可以为ResNet-FPN(Residual Neural Network and Feature Pyramid Networks,残差网络与特征金字塔网络),ResNet-FPN是一种深度学习卷积神经网络,ResNet-FPN可以实现动态路由层的引入,不仅使得网路层数变深且可训练,还使得网络参数大幅减少,提升了网络性能的同时有效提升了网络效率,而在ResNet后面接入FPN层可以同时利用低层特征高分辨率和高层特征的高语义信息,通过融合这些不同层的特征达到预测的效果,进而提高用户声纹识别的准确性。
步骤S230:将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值。
在本申请实施例中,领域分类模型使用的是三层linear线性层做特征的映射。领域分类模型的输入端与待训练模型的输出端连接。领域分类模型的作用是尽可能的将每个批次中的特征数据分成源域数据和目标域数据。
作为一种方式,当通过上述方法提取到声纹特征向量后,将声纹特征向量输入到领域分类模型中,获取领域分类模型的输出,也就是领域分类结果,进而可以根据领域分类模型输出的领域分类结果确定当前领域分类模型对应的领域分类损失函数的损失值。其中,领域分类结果表征每一个声纹特征向量属于源域还是目标域。
作为一种方式,所述领域分类损失函数为:其中,Xi表示第i个输入所述待训练模型的特征向量,Gf表示所述待训练模型的输出,Gd表示所述领域分类模型的输出,di表示第i个特征向量的加权值。其中,特征向量指的是第一训练数据集中的Fbank特征。该领域分类损失函数可以应用在使用长训练音频训练待训练模型的场景下。
当将声纹特征向量输入到领域分类模型中后,获取领域分类模型输出的领域分类结果,进而可以通过上述损失函数计算得到领域分类模型对应的领域分类损失。
当得到领域分类模型对应的领域分类损失函数后,可以基于当前领域分类损失函数的损失值对领域分类模型进行当前次训练,调整di的值,使得损失朝着变大的方向进行收敛。当通过领域分类损失函数计算得到的领域分类损失大于或等于第一损失阈值时,确定损失收敛。其中,第一损失值阈值可以根据领域分类模型的收敛程度或者测试准确率等因素确定。示例性的,可以将第一损失值阈值设置为测试准确率达到97%或98%。
步骤S240:将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值。
在本申请实施例中,说话人分类模型使用的也是使用三层linear线性层做特征的映射。同样的,说话人分类模型的输入端也是与待训练模型的输出端连接。说话人分类模型的作用是尽可能的确定每个批次中的特征数据属于哪个说话人。
作为一种方式,当通过上述方法提取到声纹特征向量后,将声纹特征向量输入到说话人分类模型中,获取说话人分类模型的输出,也就是说话人分类结果,进而可以根据说话人分类模型输出的领域分类结果确定当前说话人分类模型对应的说话人分类损失函数的损失值。其中,说话人分类结果表征每一个声纹特征向量属于哪个说话人。
作为一种方式,所述说话人分类损失函数为:其中,Xi表示第i个输入所述待训练模型的特征向量,yi表示第i个特征向量对应的说话人标签,Gf表示所述待训练模型的输出,Gy表示所述说话人分类模型的输出。其中,特征向量指的是第一训练数据集中的Fbank特征。该说话人分类损失函数可以应用在使用长训练音频训练待训练模型的场景下。
说话人分类损失函数为softmax损失函数。当获取到声纹特征向量后,将声纹特征向量输入到说话人分类模型中,说话人分类模型使用softmax函数计算得到的损失进行反向传播训练,使损失朝着变小的方向进行收敛。
同样的,当通过说话人分类损失函数计算得到的说话人分类损失大于或等于第二损失阈值时,确定说话人分类损失函数收敛。其中,第二损失值阈值可以根据说话人分类模型的收敛程度或者测试准确率等因素确定。示例性的,可以将第二损失值阈值设置为测试准确率达到97%或98%。
需要说明的是,其中的步骤S230和步骤S240可以并行进行。
步骤S250:根据所述当前领域分类损失函数的损失值和所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。
在本申请实施例中,当获取到领域分类模型对应的领域分类损失函数以及说话人分类模型输出的说话人分类损失函数后,可以使用领域分类模型对应的领域分类损失函数以及说话人分类模型对应的说话人分类损失函数进行反向传播训练,调整待训练模型的参数,使得说话人分类损失函数朝着变小的方向收敛,以及使得领域分类损失函数朝着损失变大的方向收敛,以及使得调整参数后的待训练模型提取到的声纹特征向量的领域界限越来越模糊、说话人分辨能力越来越强。
具体的,将声纹特征向量分别输入到说话人分类模型和领域分类模型中,得到说话人分类模型的输出和领域分类模型的输出,进而可以基于说话人分类损失函数和说话人分类模型的输出计算得到一个说话人分类损失值,可以基于领域分类损失函数和领域分类模型的输出计算得到一个领域分类损失值。
从而可以基于说话人分类损失值,根据梯度下降算法,梯度从后往前逐层反馈,对说话人分类损失函数和待训练模型的参数进行调整;基于领域分类损失值,根据梯度下降算法,梯度从后往前逐层反馈,对领域分类损失函数和待训练模型的参数进行调整,调整后可以得到一个新的说话人分类损失函数和一个新的领域分类损失函数。
进一步的,在输入新的声纹特征向量后,可以基于新的说话人分类损失函数和新的领域分类损失函数计算得到新的说话人分类损失值和新的领域分类损失值。再根据新的说话人分类损失值对前一说话人分类损失函数和待训练模型的参数进行调整,根据新的领域分类损失值对前一领域分类损失函数和待训练模型的参数进行调整,如上述步骤对待训练模型进行迭代训练,使得说话人分类损失函数收敛,使得领域分类损失函数对应的损失值朝着变大的方向收敛。其中,按照上述步骤遍历完一次所有声纹特征向量的过程叫做一次迭代。
作为一种方式,在基于领域分类模型对应的领域分类损失函数以及说话人分类模型对应的说话人分类损失函数进行反向传播训练,调整待训练模型的参数的同时,可以根据所述领域分类损失函数,对所述领域分类模型进行迭代训练,在所述领域分类损失函数对应的损失值大于目标值的情况下,将所述领域分类模型确定为目标领域分类模型;根据所述说话人分类损失函数,对所述说话人分类模型进行迭代训练,在所述说话人分类损失函数收敛的情况下,将所述说话人分类模型确定为目标说话人分类模型。其中,目标值可以根据说话人分类模型的收敛程度或者测试准确率等因素确定。
在上述情况下,调整领域分类模型、说话人分类模型以及待训练模型的参数可以同时进行,也可以按照预设定的顺序进行调整,在此不做具体限定。
当然,也可以在基于领域分类损失函数调整好领域分类模型的参数,以及基于说话人分类损失函数调整好说话人分类模型的参数后,基于调整好参数后的领域分类模型对应的领域分类损失函数和调整好参数后的说话人分类模型对应的说话人分类损失函数来调整待训练模型的参数。
在上述情况下,调整领域分类模型的参数和调整说话人分类模型的参数可以同时进行;当然,也可以先调整领域分类模型的参数,再调整说话人分类模型的参数;可选的,也可以先调整说话人分类模型的参数,再调整领域分类模型的参数,调整参数的顺序在此不做具体限定。
示例性的,如图4所示,图4为声纹特征提取模型的训练示意图。将提取到的Fbank特征输入到声纹特征提取模型中,得到声纹特征向量,然后将声纹特征向量分别输入到说话人分类模型和领域分类模型中,得到说话人分类模型对应的说话人分类损失函数,以及领域分类模型对应的领域分类损失函数。进而,可以基于领域分类模型对应的领域分类损失函数以及说话人分类模型对应的说话人分类损失函数进行反向传播训练,调整领域分类模型、说话人分类模型以及待训练模型的参数,得到训练好的领域分类模型、说话人分类模型以及待训练模型。
本申请提供的一种声纹特征提取模型训练方法,通过将待训练模型输出的声纹特征向量分别输入到领域分类模型和说话人分类模型中,得到领域分类损失函数的损失值和说话人分类损失函数的损失值,再基于领域分类损失函数的损失值和说话人分类损失函数的损失值对待训练模型进行训练,若领域分类损失函数的损失值大于目标值,以及说话人分类损失函数收敛,得到声纹特征提取模型。通过上述方法,通过领域分类损失函数的损失值和说话人分类损失函数的损失值对待训练模型进行训练,可以使得领域分类损失越来越大,说话人分类损失越来越小,并且在领域分类损失函数的损失值大于目标值,以及说话人分类损失函数收敛的情况下,得到声纹特征提取模型,以使得声纹特征提取模型可以在优化说话人分类损失的基础上,更好的模糊不同领域之间的差距,进而通过声纹特征提取模型提取到的声纹特征向量的领域界限越来越模糊,说话人的分辨能力越来越强,进而基于声纹特征提取模型提取到的声纹特征向量进行身份识别,可以提高身份识别的准确性。
请参阅图5,本申请实施例提供的一种声纹特征提取模型训练方法,本申请实施例的方法可以由如图1所示的服务器120或电子设备110执行,所述方法包括:
步骤S310:获取第一训练数据集,所述第一训练数据集为对训练音频数据集进行特征提取得到。
步骤S320:将所述第一训练数据集输入到待训练模型中,获取所述待训练模型输出的声纹特征向量。
步骤S330:将当前声纹特征向量输入所述领域分类模型,得到所述当前声纹特征向量的第一分类结果。
在本申请实施例中,当前声纹特征向量为当前次输入到领域分类模型中的声纹特征向量。第一分类结果为当前声纹特征向量对应的领域分类结果。
作为一种方式,将当前声纹特征向量输入到领域分类模型中,通过领域分类模型对当前声纹特征向量进行预测,得到当前声纹特征向量对应的领域分类结果。
步骤S340:根据所述当前声纹特征向量的第一分类结果和所述当前声纹特征向量得到所述当前领域分类损失函数的损失值。
在本申请实施例中,根据当前声纹特征向量和当前声纹特征向量的领域分类结果,通过领域分类损失函数计算得到当前领域分类损失函数的损失值。
作为一种方式,领域分类损失函数的表达式可以为:
其中,Xi表示第i个输入所述待训练模型的特征向量,Gf表示所述待训练模型的输出,Gd表示所述领域分类模型的输出,di表示第i个特征向量的加权值。其中,特征向量指的是第一训练数据集中的Fbank特征。该领域分类损失函数可以应用在使用短训练音频训练待训练模型的场景下,由于短训练音频比较短,会使得模型训练时领域分类损失函数的前后损失值的变化会比较震荡,而通过上述领域分类损失函数对待训练模型进行训练,可以使得领域分类损失函数的损失值变得平稳,使得待训练模型可以更快达到训练结束条件。其中,如何确定训练音频为长训练音频还是短训练音频,是在不同的应用场景下通过多次试验后确定的,不同的应用场景下,短训练音频和长训练音频的确定方式可能不同。
步骤S350:将当前声纹特征向量输入所述说话人分类模型,得到所述当前声纹特征向量的第二分类结果。
作为一种方式,将当前声纹特征向量输入到说话人分类模型中,通过说话人分类模型对当前声纹特征向量进行预测,得到当前声纹特征向量对应的说话人分类结果。
步骤S360:根据所述当前声纹特征向量的第二分类结果和所述当前声纹特征向量对应的说话人标签,得到所述当前说话人分类损失函数的损失值。
在本申请实施例中,根据当前声纹特征向量对应的说话人标签和当前声纹特征向量的说话人分类结果,通过说话人分类损失函数计算得到当前说话人分类损失函数的损失值。
作为一种方式,说话人分类损失函数的表达式可以为:
其中,Xi表示第i个输入所述待训练模型的特征向量,yi表示第i个特征向量对应的说话人标签,Gf表示所述待训练模型的输出,Gy表示所述说话人分类模型的输出。其中,特征向量指的是第一训练数据集中的Fbank特征。该说话人分类损失函数可以应用在使用短训练音频训练待训练模型的场景下,由于短训练音频比较短,会使得模型训练时说话人分类损失函数的前后损失值的变化会比较震荡,而通过上述说话人分类损失函数对待训练模型进行训练,可以使得说话人分类损失函数的损失值变得平稳,使得待训练模型可以更快达到训练结束条件。其中,如何确定训练音频为长训练音频还是短训练音频,是在不同的应用场景下通过多次试验后确定的,不同的应用场景下,短训练音频和长训练音频的确定方式可能不同。
步骤S370:根据所述当前领域分类损失函数的损失值和所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。
本申请提供的一种声纹特征提取模型训练方法,通过领域分类损失函数的损失值和说话人分类损失函数的损失值对待训练模型进行训练,可以使得领域分类损失越来越大,说话人分类损失越来越小,并且在领域分类损失函数的损失值大于目标值,以及说话人分类损失函数收敛的情况下,得到声纹特征提取模型,以使得声纹特征提取模型可以在优化说话人分类损失的基础上,更好的模糊不同领域之间的差距,进而通过声纹特征提取模型提取到的声纹特征向量的领域界限越来越模糊,说话人的分辨能力越来越强,进而基于声纹特征提取模型提取到的声纹特征向量进行身份识别,可以提高身份识别的准确性。
请参阅图6,本申请实施例提供的一种身份识别方法,本申请实施例的方法可以由如图1所示的服务器120或电子设备110执行,所述方法包括:
步骤S410:获取待识别用户的第一语音数据。
在本申请实施例中,所述待识别用户可以为需要进行身份确认的用户。第一语音数据为需要进行身份确定的用户的语音数据。例如,第一语音数据可以为客服与用户对话中,实时获取到的用户的语音数据。
在一些应用场景中,想要确认正在说话的用户的身份,则可以通过获取该用户的语音数据,并对该语音数据进行声纹特征提取,得到对应的声纹特征向量,进而可以基于对应的声纹特征向量对该用户的身份进行确认。示例性的,在一种金融反欺诈应用场景下,在客服与用户的对话过程中,不能确认正在对话的用户是否为合法的用户,因此,可以通过获取该用户的语音数据,并对该语音数据进行声纹特征向量提取,得到对应的声纹特征向量,进而可以基于对应的声纹特征向量对该用户的身份进行确认。在又一种应用场景下,用户在购物过程中,想要通过语音唤醒的方式开启付款应用程序进行付款,然而设置有付款应用程序的电子设备不能确定正在使用该电子设备的用户是否为合法的用户,因此,电子设备可以获取该用户的语音数据,并对该语音数据进行声纹特征向量提取,得到对应的声纹特征向量,进而可以基于对应的声纹特征向量对该用户的身份进行确认。
在上述的场景中,可以先获取待识别用户的第一语音数据,然后根据该第一语音数据对待识别用户进行身份信息识别,以确定待识别用户是否为合法的用户。
步骤S420:将所述第一语音数据输入到声纹特征提取模型中,获取所述声纹特征提取模型输出的声纹特征向量。
在本申请实施例中,声纹特征提取模型为前述实施例中训练得到的声纹特征提取模型。声纹特征提取模型采用的是基于transformer的网络模型,有效结合了金融对话场景音频较短及特定词的特点。因此,声纹特征提取模型可以对金融场景下的用户语音数据进行特征提取。
作为一种方式,当获取到待识别用户的第一语音数据后,先通过MFCC来提取第一语音数据的Fbank特征,然后再将第一语音数据的Fbank特征输入到已训练好的声纹特征提取模型中,获取该已训练的声纹特征提取模型输出的声纹特征向量。
可选的,在对第一语音数据进行Fbank特征提取时,也可以通过kaldi、espnet或者librosa等现有工具包对第一音频数据进行Fbank特征提取。当然,还可以直接使用python写特征提取的算法对第一音频数据进行Fbank特征提取。
步骤S430:将所述声纹特征向量与预设声纹特征向量输入到身份识别模型中,得到所述身份识别模型输出的声纹识别结果,其中,所述预设声纹特征向量为将预录入的语音数据输入到所述声纹特征提取模型中得到。
在本申请实施例中,预录入语音数据可以理解为注册的合法用户的语音数据。即根据预录入语音数据得到的预设声纹特征向量可以作为用户身份信息判断的依据。身份识别模型可以为PLDA(Probabilistic Linear Discriminant Analysis,概率线性判别分析)模型,为已训练好的用于对用户的身份进行识别的模型。
作为一种方式,在获取第一语音数据之前,可以先获取注册的合法用户的预录入的音频数据,然后将预录入的音频数据输入到已训练好的声纹特征提取模型中,得到预设声纹特征向量,然后可以对预设声纹特征向量进行存储,存入注册库。
在对注册的合法用户的预设声纹特征向量进行存储时,可以建立用户标识、语音数据以及预设声纹特征向量之间的对应关系,进而可以根据该对应关系,来对用户身份进行识别。
注册完成之后,可以实时检测是否有用户生成第一语音数据,若检测到有用户生成第一音频数据,则获取该用户的第一语音数据。在得到第一语音数据之后,即可确定第一语音数据对应的声纹特征向量,然后可以将第一语音数据对应的声纹特征向量和预设声纹向量,输入至身份识别模型中,获取声纹识别模型输出的声纹识别结果。
可选的,当获取到待识别用户的声纹特征向量后,可以根据待识别用户的用户标识以及预先建立的对应关系,从注册库中查找到与该用户标识对应的预设声纹特征向量。获取该预设声纹特征向量,将该预设声纹特征向量和第一语音数据对应的声纹特征向量输入到已训练好的声纹识别模型中,进行PLDA分类,得到声纹识别结果。
步骤S440:基于所述声纹识别结果,确定所述待识别用户的身份识别是否成功。
在本申请实施例中,基于上述得到的声纹识别结果,确定待识别用户是否为合法用户。
本申请提供的一种身份识别方法,通过已训练好的声纹特征提取模型获取待识别用户的语音数据对应的声纹特征向量和用户预录入的语音数据对应的声纹特征向量,进而基于训练后的声纹特征提取模型提取到的两个声纹特征向量对待识别用户进行身份识别,可以提高待识别用户的身份识别的准确性。
请参阅图7,本申请实施例提供的一种身份识别方法,本申请实施例的方法可以由如图1所示的服务器120或电子设备110执行,所述方法包括:
步骤S510:获取待识别用户的第一语音数据。
作为一种方式,如图8所示,在获取待识别用户的第一语音数据之前还包括:
步骤S511:获取训练音频数据集,对所述训练音频数据集进行特征提取,得到第二训练数据集。
在本申请实施例中,训练音频数据集是用于训练身份识别模型的音频数据集。同样的,可以通过MFCC对训练音频数据集进行特征提取。可选的,也可以通过kaldi、espnet或者librosa等现有工具包对训练音频数据集进行特征提取。当然,还可以直接使用python写特征提取的算法对训练音频数据集进行特征提取,得到多个训练特征组成的第二训练数据集。
步骤S512:将所述第二训练数据集输入到所述声纹特征提取模型中,获取所述声纹特征提取模型输出的训练声纹特征向量集。
在本申请实施例中,通过声纹特征提取模型提取到的声纹特征向量的说话人辨认能力越来越强、领域界限越来越模糊。
步骤S513:将所述训练声纹特征向量集输入到初始网络模型中进行迭代训练,直至满足训练结束条件,得到所述身份识别模型。
其中,所述将所述训练声纹特征向量输入到初始网络模型中进行迭代训练的步骤包括:根据所述训练声纹特征向量对所述初始网络模型分别进行均值处理和初始化处理,得到初始极大似然估计表达式;将所述训练声纹特征向量和所述初始极大似然估计表达式输入到所述初始网络模型中,进行迭代训练。
在本实施例中,训练结束条件为训练后的初始网络模型的似然分布数值最大,以及初始网络模型的参数收敛。身份识别模型可以为PLDA模型,在得到训练声纹特征向量集之后,可以通过训练声纹特征向量集对PLDA模型进行迭代训练。
具体的,训练声纹特征向量集中包括不同说话人、不同领域的音频数据对应的声纹特征向量,可以根据不同说话人、不同领域的音频数据对应的声纹特征向量对身份识别模型进行迭代训练。对应的,可以对PLDA模型分别进行均值处理和初始化处理,得到初始极大似然估计表达式。
进一步的,该初始极大似然估计表达式包括的参数可以为训练声纹特征向量集中所包括的所有声纹特征向量的均值、身份空间特征矩阵、噪声空间特征矩阵以及噪音协方差。其中,身份空间特征矩阵可以表示不同用户的信息;噪声空间特征矩阵可以表示同一用户不同语音变化的信息和最后的残留噪声项,噪音协方差用来表示尚未解释的东西。然后可以将训练声纹特征向量集和初始极大似然估计表达式输入至身份识别模型中,通过预设算法进行迭代训练,确定初始极大似然估计表达式中各参数对应的数值。示例性的,预设算法可以为EM(Expectation Maximization Algorithm,期望最大化)算法。
其中,EM算法的训练思想为通过极大似然估计,根据己经给出的观测数据,估计出参数的数值,然后再依据上一步估计出的参数的数值估计缺失数据,再根据估计出的缺失数据加上之前获取的数据重新再对参数进行估计,得到新的参数的数值,然后反复迭代,直至身份识别模型的似然最大,参数收敛。
示例性的,假设训练音频数据由I个说话人的音频组成,其中每个说话人有J段自己不同的音频。那么,定义第i个人的第j条音频为Xij。根据因子分析,定义Xij的初始极大似然估计表达式为:
Xij=μ+Fhi+Gwij+∈ij
其中,μ表示全体训练音频数据的均值;F可以看做是身份空间,包含了可以用来表示各种说话人的信息;hi就可以看做是具体的一个说话人的身份(或者是说话人在身份空间中的位置);G可以看做是噪声空间,包含了可以用来表示同一说话人不同语音变化的信息;wij表示的是在G空间中的位置;∈ij是最后的残留噪声项,用来表示尚未解释的东西,该项为零均高斯分布,方差为Σ。
首先,进行均值处理。计算所有训练音频数据Xall的均值μ,从训练音频数据中减去该均值Xall=Xall-μ。然后,根据训练音频数据中的人数N,在计算N个人的均值Nμ。
然后,进行初始化处理。首先确定几个配置参数,特征纬度记为D,即μ是D×1维的,Nμ是D×N维的。身份空间(F)的维度,需要预先指定,记为NF,即F是D×NF维的,同时hi是NF×1维的。噪声空间(G)的维度,同样需要预先指定,记为NG,即G是D×NG维的,同时wij是NG×1维的。噪声空间G,使用随机初始化;身份空间F,对每个人的均值数据Nμ进行PCA降维,降到NF维,赋值给F;方差Σ初始化为D×1维的常量。
再通过EM算法优化。首先将上述模型改为矩阵形式:
X′=μ′+Ay+∈′;
计算隐含变量h的期望:
E[yi]=(ATΣ′-1A+I)-1ATΣ′-1(Xi-μ′);
更新参数μ,F,G,Σ;
首先对模型进行重新符号表示:
将[F|G]矩阵拼接表示为B,[hi|wij]矩阵拼接表示为zij
按照如下公式更新参数:
其中,Diag函数表示只保留对角元素。
采用上述方案后,由于不同的语音特征经过PLDA模型的似然分布是不同的,根据似然分布的不同,即可进行用户身份的识别,且由于PLDA模型具有较高的信道补偿能力,可以最大程度的表示语音信息的特征,提高了拟合特征表示参数表达语音信息对应特征的准确性,进而提高了身份识别的准确性。
步骤S520:将所述第一语音数据输入到声纹特征提取模型中,获取所述声纹特征提取模型输出的声纹特征向量。
步骤S530:将所述声纹特征向量与预设声纹特征向量输入到身份识别模型中,得到所述身份识别模型输出的似然分布数值,其中,所述预设声纹特征向量为将预录入的语音数据输入到所述声纹特征提取模型中得到。
在本申请实施例中,似然分布数值可以表示第一语音数据和预录入的语音数据之间的相似度,相似度越高,两条语音数据属于同一个说话人的可能性越大;相似度越低,两条语音数据属于同一个说话人的可能性越小。
将第一语音数据对应的声纹特征向量和预设声纹特征向量输入到训练好的身份识别模型中,获取训练好的身份识别模型输出的表征第一语音数据和预录入的语音数据之间的相似度的似然分布数值。
步骤S540:在所述似然分布数值大于预设似然分布数值的情况下,则所述待识别用户的身份识别成功。
在本申请实施例中,预设似然分布数值为预先设置的确定两条语音数据是否属于同一个说话人的似然分布数值。其中,预设似然分布数值可以根据实际应用场景自定义进行设置,示例性的,预设似然分布数值可以为80-90中的任意值。
作为一种方式,将身份识别模型输出的似然分布数值与预设似然分布数值比较,若身份识别模型输出的似然分布数值大于预设似然分布数值,则确定第一语音数据和预录入的语音数据属于同一用户,确定待识别用户的身份识别成功。
步骤S550:在所述似然分布数值小于或等于所述预设似然分布数值的情况下,则所述待识别用户的身份识别失败。
若身份识别模型输出的似然分布数值小于或等于预设似然分布数值,则确定第一语音数据和预录入语音数据不属于同一用户,确定待识别用户的身份识别失败。
本申请提供的一种身份识别方法,通过已训练好的声纹特征提取模型获取待识别用户的语音数据对应的声纹特征向量和用户预录入语音数据对应的声纹特征向量,进而基于训练后的声纹特征提取模型提取到的两个声纹特征向量对待识别用户进行身份识别,可以提高待识别用户的身份识别的准确性。
请参阅图9,提供了一种应用于金融客户场景下的身份识别方法,本申请实施例的方法可以由如图1所示的服务器120或电子设备110执行,所述方法包括:
步骤S610:获取用户预先录制的注册语音数据,并将所述注册语音数据输入到已训练的声纹特征提取模型中,获取所述已训练的声纹特征提取模型输出的注册声纹特征向量。
在本申请实施例中,可以通过声音获取设备获取用户预先录制的注册语音数据。其中,声音获取设备可以为电子设备中设置的麦克风、话筒等,在此不做具体限定。
步骤S620:获取客服与用户的对话录音数据。
在本申请实施例中,客服与用户的对话录音数据可以为实时获取的语音数据,也可以为预先存储的语音数据。
当客服与用户的对话录音数据可以为实时获取的语音数据时。获取客服与用户的对话录音数据之前,可以先检测客服与用户是否处于对话场景中,若检测到客服与用户处于对话场景中,且已经对话一段时间,则实时获取当前时刻之前的任意一段语音数据作为客服与用户的对话录音数据。
可选的,在检测客服与用户是否处于对话场景时,可以通过多种方式进行检测。作为其中一种方式,当检测到需要客服与用户对话的应用程序开启时,确定客服与用户处于对话场景中。示例性的,当检测到人工服务开启时,确定客服与用户处于对话场景中。作为其中另一种方式,当检测到语音数据中包括至少两个用户的声道时,确定客服与用户处于对话场景中。可选的,还可以通过检测对话标识来确定客服与用户是否处于对话场景中。具体的,当检测到预先设置的对话标识时,确定客服与用户处于对话场景中;当没有检测到预先设置的对话标识时,确定客服与用户不处于对话场景。其中,对话标识为预先为对话场景设置的标识。
步骤S630:对所述录音数据进行声道分离,分离出所述客服与所述用户各自对应的声道录音数据。
在本申请实施例中,可以通过Gold Wave工具对录音数据进行声道分离,分离出客服对应的语音数据和用户对应的语音数据。
步骤S640:提取所述用户的声道录音数据的Fbank特征,将所述Fbank特征输入到已训练的声纹特征提取模型中,获取所述已训练的声纹特征提取模型输出的用户对应的声纹特征向量。
其中,通过与前述同样的方法提取用户对应的语音数据的Fbank特征。
步骤S650:将所述声纹特征向量和所述注册声纹特征向量输入到已训练的身份识别模型中,获取所述身份识别模型输出的似然分布数值。
步骤S660:基于所述似然分布数值,确定所述用户的身份识别是否成功。
通过上述方法,通过声纹特征提取模型对用户的声纹特征进行提取,模糊了用户的声纹特征向量的领域界限,加强了用户的声纹特征向量的辨别能力,进而可以提高金融客服与用户对话场景下,对用户进行身份识别的准确性。
请参阅图10,本申请实施例提供的一种声纹特征提取模型训练装置700,所述装置700包括:
第一获取单元710,用于获取第一训练数据集,所述第一训练数据集为对训练音频数据集进行特征提取得到。
第二获取单元720,用于将所述第一训练数据集输入到待训练模型中,获取所述待训练模型输出的声纹特征向量。
第一确定单元730,用于将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值。
可选地,所述第一确定单元730还用于将当前声纹特征向量输入所述领域分类模型,得到所述当前声纹特征向量的第一分类结果;根据所述当前声纹特征向量的第一分类结果和所述当前声纹特征向量得到所述当前领域分类损失函数的损失值。
作为一种方式,所述领域分类损失函数为:
其中,Xi表示第i个输入所述待训练模型的特征向量,Gf表示所述待训练模型的输出,Gd表示所述领域分类模型的输出,di表示第i个特征向量的加权值。
第二确定单元740,用于将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值。
可选地,所述第二确定单元740还用于将当前声纹特征向量输入所述说话人分类模型,得到所述当前声纹特征向量的第二分类结果;根据所述当前声纹特征向量的第二分类结果和所述当前声纹特征向量对应的说话人标签,得到所述当前说话人分类损失函数的损失值。
作为一种方式,所述说话人分类损失函数为:其中,Xi表示第i个输入所述待训练模型的特征向量,yi表示第i个特征向量对应的说话人标签,Gf表示所述待训练模型的输出,Gy表示所述说话人分类模型的输出。
训练单元750,用于根据所述当前领域分类损失函数的损失值和所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。
请参阅图11,本申请实施例提供的一种身份识别装置800,所述装置800包括:
数据获取单元810,用于获取待识别用户的第一语音数据。
向量获取单元820,用于将所述第一语音数据输入到声纹特征提取模型中,获取所述声纹特征提取模型输出的声纹特征向量。
结果获取单元830,用于将所述声纹特征向量与预设声纹特征向量输入到身份识别模型中,得到所述身份识别模型输出的声纹识别结果,其中,所述预设声纹特征向量为将预录入的语音数据输入到所述声纹特征提取模型中得到。
处理单元840,用于基于所述声纹识别结果,确定所述待识别用户的身份识别结果。
作为一种方式,所述处理单元840还用于在所述似然分布数值大于预设似然分布数值的情况下,则所述待识别用户的身份识别成功;在所述似然分布数值小于或等于所述预设似然分布数值的情况下,则所述待识别用户的身份识别失败。
请参阅图12,所述装置800还包括:
模型训练单元850,用于获取训练音频数据集,对所述训练音频数据集进行特征提取,得到第二训练数据集;将所述第二训练数据集输入到所述声纹特征提取模型中,获取所述声纹特征提取模型输出的训练声纹特征向量集;将所述训练声纹特征向量集输入到初始网络模型中进行迭代训练,直至满足训练结束条件,得到所述身份识别模型。
作为一种方式,所述模型训练单元850还用于根据所述训练声纹特征向量对所述初始网络模型分别进行均值处理和初始化处理,得到初始极大似然估计表达式;将所述训练声纹特征向量和所述初始极大似然估计表达式输入到所述初始网络模型中,进行迭代训练。
需要说明的是,本申请中装置实施例与前述方法实施例是相互对应的,装置实施例中具体的原理可以参见前述方法实施例中的内容,此处不再赘述。
下面将结合图13对本申请提供的一种服务器或电子设备进行说明。
请参阅图13,基于上述的声纹特征提取模型训练方法、身份识别方法、装置,本申请实施例还提供的另一种可以执行前述声纹特征提取模型训练方法、身份识别方法的服务器或电子设备900。服务器或电子设备900包括相互耦合的一个或多个(图中仅示出一个)处理器902、存储器904以及网络模块906。其中,该存储器804中存储有可以执行前述实施例中内容的程序,而处理器902可以执行该存储器904中存储的程序。
其中,处理器902可以包括一个或者多个处理核。处理器902利用各种接口和线路连接整个服务器或电子设备900内的各个部分,通过运行或执行存储在存储器904内的指令、程序、代码集或指令集,以及调用存储在存储器904内的数据,执行服务器或电子设备900的各种功能和处理数据。可选地,处理器902可以采用数字信号处理(Digital SignalProcessing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器902可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics ProcessingUnit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器902中,单独通过一块通信芯片进行实现。
存储器904可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory,ROM)。存储器904可用于存储指令、程序、代码、代码集或指令集。存储器904可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储服务器或电子设备900在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
所述网络模块906用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯,例如和音频播放设备进行通讯。所述网络模块906可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。所述网络模906可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。例如,网络模块906可以与基站进行信息交互。
请参考图14,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读存储介质1100中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的声纹特征提取模型训练方法和身份识别方法。
计算机可读存储介质1100可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质1100包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质1100具有执行上述方法中的任何方法步骤的程序代码1110的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码1110可以例如以适当形式进行压缩。
本申请提供的一种声纹特征提取模型训练方法、身份识别方法、装置、电子设备及存储介质,通过将待训练模型输出的声纹特征向量分别输入到领域分类模型和说话人分类模型中,得到当前领域分类损失函数的损失值和当前说话人分类损失函数的损失值,再基于当前领域分类损失函数的损失值和当前说话人分类损失函数的损失值对待训练模型进行当前次训练,在领域分类损失函数的损失值大于目标值,以及说话人分类损失函数收敛的情况下,得到声纹特征提取模型。通过上述方法,通过领域分类损失函数的损失值和说话人分类损失函数的损失值对待训练模型进行训练,可以使得领域分类损失越来越大,说话人分类损失越来越小,并且在领域分类损失函数的损失值大于目标值,以及说话人分类损失函数收敛的情况下,得到声纹特征提取模型,以使得声纹特征提取模型可以在优化说话人分类损失的基础上,更好的模糊不同领域之间的差距,进而通过声纹特征提取模型提取到的声纹特征向量的领域界限越来越模糊,说话人的分辨能力越来越强,进而基于声纹特征提取模型提取到的声纹特征向量进行身份识别,可以提高身份识别的准确性。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。

Claims (13)

1.一种声纹特征提取模型训练方法,其特征在于,所述方法包括:
获取第一训练数据集,所述第一训练数据集为对训练音频数据集进行特征提取得到;
将所述第一训练数据集输入到待训练模型中,获取所述待训练模型输出的声纹特征向量;
将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值;
将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值;
根据所述当前领域分类损失函数的损失值和所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。
2.根据权利要求1所述的方法,其特征在于,将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值,包括:
将当前声纹特征向量输入所述领域分类模型,得到所述当前声纹特征向量的第一分类结果;
根据所述当前声纹特征向量的第一分类结果和所述当前声纹特征向量得到所述当前领域分类损失函数的损失值。
3.根据权利要求1所述的方法,其特征在于,所述将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值,包括:
将当前声纹特征向量输入所述说话人分类模型,得到所述当前声纹特征向量的第二分类结果;
根据所述当前声纹特征向量的第二分类结果和所述当前声纹特征向量对应的说话人标签,得到所述当前说话人分类损失函数的损失值。
4.根据权利要求1所述的方法,其特征在于,所述领域分类损失函数为:其中,/>表示第i个输入所述待训练模型的特征向量,/>表示所述待训练模型的输出,/>表示所述领域分类模型的输出,/>表示第i个特征向量的加权值。
5.根据权利要求1所述的方法,其特征在于,所述说话人分类损失函数为:其中,/>表示第i个输入所述待训练模型的特征向量,/>表示第i个特征向量对应的说话人标签,/>表示所述待训练模型的输出,/>表示所述说话人分类模型的输出。
6.一种身份识别方法,其特征在于,所述方法包括:
获取待识别用户的第一语音数据;
将所述第一语音数据输入到声纹特征提取模型中,获取所述声纹特征提取模型输出的声纹特征向量,所述声纹特征提取模型按照如权利要求1-5任一项所述的方法训练得到;
将所述声纹特征向量与预设声纹特征向量输入到身份识别模型中,得到所述身份识别模型输出的声纹识别结果,其中,所述预设声纹特征向量为将预录入的语音数据输入到所述声纹特征提取模型中得到;
基于所述声纹识别结果,确定所述待识别用户的身份识别是否成功。
7.根据权利要求6所述的方法,其特征在于,所述声纹识别结果为似然分布数值,所述基于所述声纹识别结果,确定所述待识别用户的身份识别是否成功,包括:
若所述似然分布数值大于预设似然分布数值,则所述待识别用户的身份识别成功;
若所述似然分布数值小于或等于所述预设似然分布数值,则所述待识别用户的身份识别失败。
8.根据权利要求6所述的方法,其特征在于,所述获取待识别用户的第一语音数据之前还包括:
获取训练音频数据集,对所述训练音频数据集进行特征提取,得到第二训练数据集;
将所述第二训练数据集输入到所述声纹特征提取模型中,获取所述声纹特征提取模型输出的训练声纹特征向量集;
将所述训练声纹特征向量集输入到初始网络模型中进行迭代训练,直至满足训练结束条件,得到所述身份识别模型。
9.根据权利要求8所述的方法,其特征在于,所述将所述训练声纹特征向量输入到初始网络模型中进行迭代训练,包括:
根据所述训练声纹特征向量对所述初始网络模型分别进行均值处理和初始化处理,得到初始极大似然估计表达式;
将所述训练声纹特征向量和所述初始极大似然估计表达式输入到所述初始网络模型中,进行迭代训练。
10.一种声纹特征提取模型训练装置,其特征在于,所述装置包括:
第一获取单元,用于获取第一训练数据集,所述第一训练数据集为对训练音频数据集进行特征提取得到;
第二获取单元,用于将所述第一训练数据集输入到待训练模型中,获取所述待训练模型输出的声纹特征向量;
第一确定单元,用于将所述声纹特征向量输入到领域分类模型中,根据所述领域分类模型的输出得到当前领域分类损失函数的损失值;
第二确定单元,用于将所述声纹特征向量输入到说话人分类模型中,根据所述说话人分类模型的输出得到当前说话人分类损失函数的损失值;
训练单元,用于根据所述当前领域分类损失函数的损失值和所述当前说话人分类损失函数的损失值,对所述待训练模型进行当前次训练,若所述当前领域分类损失函数的损失值大于目标值,以及所述当前说话人分类损失函数收敛,则将所述待训练模型确定为声纹特征提取模型。
11.一种身份识别装置,其特征在于,所述装置包括:
数据获取单元,用于获取待识别用户的第一语音数据;
向量获取单元,用于将所述第一语音数据输入到声纹特征提取模型中,获取所述声纹特征提取模型输出的声纹特征向量,所述声纹特征提取模型按照如权利要求1-5任一项所述的方法训练得到;
结果获取单元,用于将所述声纹特征向量与预设声纹特征向量输入到身份识别模型中,得到所述身份识别模型输出的声纹识别结果,其中,所述预设声纹特征向量为将预录入的语音数据输入到所述声纹特征提取模型中得到;
处理单元,用于基于所述声纹识别结果,确定所述待识别用户的身份识别结果。
12.一种电子设备,其特征在于,包括一个或多个处理器;一个或多个程序被存储在存储器中并被配置为由所述一个或多个处理器执行权利要求1-9任一所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码被处理器运行时执行权利要求1-9任一所述的方法。
CN202111491248.9A 2021-12-08 2021-12-08 模型训练方法、身份识别方法、装置及电子设备 Active CN114049900B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111491248.9A CN114049900B (zh) 2021-12-08 2021-12-08 模型训练方法、身份识别方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111491248.9A CN114049900B (zh) 2021-12-08 2021-12-08 模型训练方法、身份识别方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN114049900A CN114049900A (zh) 2022-02-15
CN114049900B true CN114049900B (zh) 2023-07-25

Family

ID=80212373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111491248.9A Active CN114049900B (zh) 2021-12-08 2021-12-08 模型训练方法、身份识别方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN114049900B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108777146A (zh) * 2018-05-31 2018-11-09 平安科技(深圳)有限公司 语音模型训练方法、说话人识别方法、装置、设备及介质
CN110992988A (zh) * 2019-12-24 2020-04-10 东南大学 一种基于领域对抗的语音情感识别方法及装置
CN111797844A (zh) * 2020-07-20 2020-10-20 苏州思必驰信息科技有限公司 对抗域自适应模型训练方法及对抗域自适应模型
CN111835784A (zh) * 2020-07-22 2020-10-27 苏州思必驰信息科技有限公司 用于重放攻击检测系统的数据泛化方法及系统
CN112259105A (zh) * 2020-10-10 2021-01-22 西南政法大学 一种声纹识别模型的训练方法、存储介质和计算机设备
CN112820299A (zh) * 2020-12-29 2021-05-18 马上消费金融股份有限公司 声纹识别模型训练方法、装置及相关设备
CN112820301A (zh) * 2021-03-15 2021-05-18 中国科学院声学研究所 一种融合分布对齐和对抗学习的无监督跨域声纹识别方法
EP3901948A1 (en) * 2020-04-22 2021-10-27 Beijing Xiaomi Pinecone Electronics Co., Ltd. Method for training a voiceprint extraction model and method for voiceprint recognition, and device and medium thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190147854A1 (en) * 2017-11-16 2019-05-16 Microsoft Technology Licensing, Llc Speech Recognition Source to Target Domain Adaptation

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108777146A (zh) * 2018-05-31 2018-11-09 平安科技(深圳)有限公司 语音模型训练方法、说话人识别方法、装置、设备及介质
CN110992988A (zh) * 2019-12-24 2020-04-10 东南大学 一种基于领域对抗的语音情感识别方法及装置
EP3901948A1 (en) * 2020-04-22 2021-10-27 Beijing Xiaomi Pinecone Electronics Co., Ltd. Method for training a voiceprint extraction model and method for voiceprint recognition, and device and medium thereof
CN111797844A (zh) * 2020-07-20 2020-10-20 苏州思必驰信息科技有限公司 对抗域自适应模型训练方法及对抗域自适应模型
CN111835784A (zh) * 2020-07-22 2020-10-27 苏州思必驰信息科技有限公司 用于重放攻击检测系统的数据泛化方法及系统
CN112259105A (zh) * 2020-10-10 2021-01-22 西南政法大学 一种声纹识别模型的训练方法、存储介质和计算机设备
CN112820299A (zh) * 2020-12-29 2021-05-18 马上消费金融股份有限公司 声纹识别模型训练方法、装置及相关设备
CN112820301A (zh) * 2021-03-15 2021-05-18 中国科学院声学研究所 一种融合分布对齐和对抗学习的无监督跨域声纹识别方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Automatic Speaker Recognition System based on Optimised Machine Learning Algorithms;Tumisho Billson Mokgonyane,et al,;《2019 IEEE AFRICON》;全文 *
基于生成对抗网络的领域自适应算法研究;胡威;《中国优秀硕士学位论文全文数据库(信息科技)》(第2期);全文 *

Also Published As

Publication number Publication date
CN114049900A (zh) 2022-02-15

Similar Documents

Publication Publication Date Title
US11996091B2 (en) Mixed speech recognition method and apparatus, and computer-readable storage medium
US20210050020A1 (en) Voiceprint recognition method, model training method, and server
CN105702263B (zh) 语音重放检测方法和装置
CN108520741B (zh) 一种耳语音恢复方法、装置、设备及可读存储介质
CN111460494B (zh) 面向多模态深度学习的隐私保护方法及系统
US11875799B2 (en) Method and device for fusing voiceprint features, voice recognition method and system, and storage medium
US9514751B2 (en) Speech recognition device and the operation method thereof
CN109360572B (zh) 通话分离方法、装置、计算机设备及存储介质
CN110956966B (zh) 声纹认证方法、装置、介质及电子设备
CN108346427A (zh) 一种语音识别方法、装置、设备及存储介质
CN112949708B (zh) 情绪识别方法、装置、计算机设备和存储介质
CN107886957A (zh) 一种结合声纹识别的语音唤醒方法及装置
CN114187547A (zh) 目标视频的输出方法及装置、存储介质及电子装置
CN111341350A (zh) 人机交互控制方法、系统、智能机器人及存储介质
US20230162757A1 (en) Role separation method, meeting summary recording method, role display method and apparatus, electronic device, and computer storage medium
CN111161713A (zh) 一种语音性别识别方法、装置及计算设备
CN111144566A (zh) 神经网络权重参数的训练方法、特征分类方法及对应装置
CN115376559A (zh) 基于音视频的情绪识别方法、装置及设备
CN112259114A (zh) 语音处理方法及装置、计算机存储介质、电子设备
EP3816996B1 (en) Information processing device, control method, and program
CN112992155B (zh) 一种基于残差神经网络的远场语音说话人识别方法及装置
CN116152938A (zh) 身份识别模型训练和电子资源转移方法、装置及设备
CN111899747B (zh) 用于合成音频的方法和装置
CN114049900B (zh) 模型训练方法、身份识别方法、装置及电子设备
CN108694950B (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