CN110390937B - 一种基于ArcFace loss算法的跨信道声纹识别方法 - Google Patents

一种基于ArcFace loss算法的跨信道声纹识别方法 Download PDF

Info

Publication number
CN110390937B
CN110390937B CN201910495120.6A CN201910495120A CN110390937B CN 110390937 B CN110390937 B CN 110390937B CN 201910495120 A CN201910495120 A CN 201910495120A CN 110390937 B CN110390937 B CN 110390937B
Authority
CN
China
Prior art keywords
channel
audio
voiceprint recognition
cross
lst
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
CN201910495120.6A
Other languages
English (en)
Other versions
CN110390937A (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.)
Nanjing Silicon Intelligence Technology Co Ltd
Original Assignee
Nanjing Silicon Intelligence Technology 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 Nanjing Silicon Intelligence Technology Co Ltd filed Critical Nanjing Silicon Intelligence Technology Co Ltd
Priority to CN201910495120.6A priority Critical patent/CN110390937B/zh
Publication of CN110390937A publication Critical patent/CN110390937A/zh
Application granted granted Critical
Publication of CN110390937B publication Critical patent/CN110390937B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/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/06Decision making techniques; Pattern matching strategies

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)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种基于ArcFace loss算法的跨信道声纹识别方法,解决了跨信道声纹识别率较低的问题,其技术方案要点是将多信道的原始音频预处理后,提取fbank特征、fbank的一阶微分特征和fbank的二阶微分特征,将提取的其中一个信道的特征投入insightvoice网络训练,训练基于ArcFace loss算法的损失函数进行,得到单信道模型。然后将多信道的原始音频特征输入到单信道模型进行fine‑tune,得到多信道模型,使用多信道模型进行跨信道声纹识别,识别错误率低,总体效果较好。

Description

一种基于ArcFace loss算法的跨信道声纹识别方法
技术领域
本公开涉及声纹识别领域,尤其涉及一种基于ArcFace loss算法的跨信道声纹识别方法。
背景技术
目前,声纹识别产品化的过程中,噪声干扰、跨信道是两个主要技术难点,对于噪声干扰,已经研究出了很多算法,传统的谱减法、WebRTC、rnn、mask掩码等,这些方法在很大程度上能够解决噪声干扰问题。而对于跨信道问题,像经典的LDA和PLDA算法,能做到一定程度上的信道补偿。但是,在日新月异的时代里,从电话到手机,从有线到无线,从单一的麦克风到自带降噪处理功能,从低采样到高采样等等因素,信道的差异也就越来越大,跨信道的问题已经成为一个不可避免的挑战和难以逾越的鸿沟,传统的算法已经无法很好的解决这个问题。
在POC现场,跨信道的缺陷问题暴露无遗,已成为声纹的致命伤,要想声纹产品扎扎实实落地,超越同行竞争选手,解决跨信道问题已然是声纹产品化的关键。
发明内容
本公开的目的是提供一种基于ArcFace loss算法的跨信道声纹识别方法,以实现识别率较高的跨信道声纹识别。
为实现上述技术目的,本公开采用以下技术方案:
一种基于ArcFace loss算法的跨信道声纹识别方法,包括:
收集说话人至少在两个不同信道的音频,对所述音频进行预处理并提取音频特征;
将所述音频特征转换为.lst 文件,所述.lst 文件包括音频路径;
将一个信道音频特征的所述.lst 文件投入到insightvoice网络训练单信道模型,所述insightvoice网络通过.lst和音频结合的方式读取音频;
将其他信道音频特征的所述.lst 文件输入到所述单信道模型,基于所述单信道模型做fine-tune得到多信道模型;通过所述多信道模型对不同信道音频进行交叉验证,完成声纹识别;
其中,所述insightvoice网络为ResNet-50网络,由50个block组成;所述训练基于ArcFace loss算法的损失函数进行。
作为具体实施例地,所述基于ArcFace loss算法的损失函数为:
Figure DEST_PATH_IMAGE001
;其中,
Figure DEST_PATH_IMAGE002
为样本数量,
Figure DEST_PATH_IMAGE003
为类别数,
Figure DEST_PATH_IMAGE004
为角度余量,
Figure DEST_PATH_IMAGE005
Figure DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE007
Figure DEST_PATH_IMAGE008
Figure DEST_PATH_IMAGE009
Figure DEST_PATH_IMAGE010
表示第
Figure DEST_PATH_IMAGE011
个样本的深度特征,属于第
Figure DEST_PATH_IMAGE012
类,
Figure DEST_PATH_IMAGE013
表示最后一个全连接层权重
Figure DEST_PATH_IMAGE014
的第
Figure DEST_PATH_IMAGE015
列。
进一步地,所述角度余量
Figure 758236DEST_PATH_IMAGE004
的值为0.5。
作为具体实施例地,所述音频特征为fbank特征、fbank的一阶微分特征和fbank的二阶微分特征。
作为具体实施例地,所述音频的预处理、fine-tune和insightvoice网络的训练基于MxNet框架进行。
本公开的有益效果在于提供了一种跨信道声纹识别方法,将多信道的音频预处理后,提取音频特征,并将音频特征转为.lst文件,将其中一个信道音频特征的.lst 文件投入insightvoice网络训练,训练基于ArcFace loss算法的损失函数进行,得到单信道模型。然后将多信道音频特征的.lst 文件输入到单信道模型进行fine-tune,得到多信道模型,使用多信道模型进行跨信道声纹识别,识别错误率低,总体效果较好。
附图说明
图1是本公开的流程图;
图2为data_train.lst和data_val.lst的文件示意图;
图3为.lst文件样例示意图;
图4为.rec文件样例示意图;
图5为insightvoice网络block结构示意图。
具体实施方式
以下结合附图对本公开作进一步详细说明。
为了提高跨信道声纹识别率,本公开使用insightvoice网络来训练声音识别网络。具体方法过程为:收集说话人在至少两个信道的音频,对音频进行预处理并提取音频特征,将音频特征转为.lst文件,.lst 文件包括音频路径,再将其中一个信道音频特征的.lst文件投入到insightvoice网络训练单信道模型;然后将多信道音频特征的.lst文件基于单信道模型进行fine-tune得到多信道模型;训练基于ArcFace loss算法的损失函数,最后通过多信道模型对不同信道音频进行交叉验证,完成跨信道声纹识别。
本公开的跨信道声纹识别是基于MxNet框架进行的,本公开insightvoice网络训练声音识别模型使用.lst和音频结合的方式读取音频,可参考MxNet框架中insightface图像的读取方式。insightvoice网络同其他深度学习网络的区别在于:投入训练的特征不一样、训练使用的损失函数不一样。
insightvoice网络训练采用特征的获取方法如下:例如音频数据放在/home/audio文件夹下,一共有10个类别,那么在/home/audio文件夹下应有10个子文件夹,每个子文件夹放属于这个类的音频文件,可以用英文、中文或数字等命名这些子文件夹来表达类别,可根据个人使用习惯来进行命名。另外假设要将生成的.lst文件放在/home/lst文件夹下,那么MxNet项目的路径是~/incubator-mxnet,运行下面的命令就可以生成.lst文件:
“python ~/incubator-mxnet/tools/im2rec.py --list True --recursiveTrue --train-ratio 0.9 /home/lst/data /home/audio”
--list参数必须要是True,说明是要生成.lst文件,--recursive参数必须为True,表示要将所有音频路径写进成.lst文件,--train-ratio参数表示将train和val以多少比例划分,默认为1,表示都是train的数据。这样在/home/lst文件夹下就会生成data_train.lst和data_val.lst两个文件,如图2所示。图3为.lst文件样例:第一列是index,第二列是label,第三列是音频路径。
当然有时候可能你的数据音频不是按照一个类别放在一个文件夹这种方式,那么就需要考虑修改这个脚本来生成相同格式的.lst文件才能用于后续生成.rec文件。第一步就是已生成的.lst文件和音频,例如要将生成的.rec文件放在.lst文件相同的/home/lst文件夹下(一般都会这样操作),那么运行下面的命令就可以生成.rec文件:
python ~/incubator-mxnet/tools/im2rec.py --num-thread 4 /home/lst /home/audio
这里倒数第二个参数:/home/lst是.lst文件所放的路径,可以不用指明.lst文件名称,因为代码会自动搜索/home/lst文件夹下所有以.lst结尾的文件。最后一个参数:/home/audio是你的音频所放的路径。–num-thread 4 这个参数是表示用4个线程来执行,当数据量较大的时候,生成.rec的过程会比较慢,使用多线程可以加速。
运行成功后,在/home/rec文件夹下就生成了data_train.rec和data_val.rec文件,如图4所示,然后就可以用mxnet.io.audioRecordIter类来导入.rec文件。第二步制作rec和idx的训练集,使用MxNet的$INSIGHTFACE/src/align对齐码可以对齐并生成lst,然后在property中定义数据集的格式,整体内容例如:1000,224,224 ,其中1000代表声纹的类别数目,音频格式为224x224。
insightvoice的网络结构为ResNet-50网络,由50个block组成,每个block的构成如图5所示,其中卷积层1的卷积核大小为3*3,步宽为1,卷积层2的卷积核大小为3*3,步宽为2。
提取预处理后的音频特征即fbank特征、 fbank的一阶微分特征和fbank的二阶微分特征。fbank特征的提取这里不再赘述,一般为对数梅尔滤波器的输出。特征的维数一般选择为64维。
然后按照上述方法将音频特征转为.lst文件并投入insightvoice网络进行训练,特征提取完成后就投入insightvoice网络进行训练,训练所用的损失函数基于ArcFaceloss算法,ArcFace loss算法的损失函数为:
Figure DEST_PATH_IMAGE016
;其中,
Figure 268852DEST_PATH_IMAGE002
为样本数量,
Figure 517431DEST_PATH_IMAGE003
为类别数,
Figure 647061DEST_PATH_IMAGE004
为角度余量,
Figure 320487DEST_PATH_IMAGE005
Figure 877371DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE017
Figure 472300DEST_PATH_IMAGE008
Figure 405621DEST_PATH_IMAGE009
Figure 543341DEST_PATH_IMAGE010
表示第
Figure 395760DEST_PATH_IMAGE011
个样本的深度特征,属于第
Figure 884510DEST_PATH_IMAGE012
类,
Figure 355942DEST_PATH_IMAGE013
表示最后一个全连接层权重
Figure 472803DEST_PATH_IMAGE014
的第
Figure 637068DEST_PATH_IMAGE015
列。本公开选用的角度余量
Figure 613114DEST_PATH_IMAGE004
的值为0.5。
本公开基于12133人数据(包含704589条音频数据)对数据做增强,在音频中加入音乐、回响、说话声、白噪声的噪音,起到数据增强的作用,提高模型的鲁棒性,本公开验证的数据来自两个信道,一是通过APP注册获取的音频,二是通过拨打电话获取的音频。在400人ai_hell_v1数据集上测试,每人识别音频数量20条,20秒APP注册和10秒电话识别分别各10条,文本为自由说方式,总共2872800次交叉验证,本地cpu每次验证耗时2秒,最终测试结果如表1所示:
Figure DEST_PATH_IMAGE018
表1
其中,FAR和FRR是声纹识别性能的评价指标,简单地说,FAR就是“把不应该匹配的声纹当成匹配的声纹”的比例,FRR就是“把应该相互匹配成功的声纹当成不能匹配的声纹”的比例,ERR是等错误率,是FAR和FRR均值,T-ERR是自己定义的一个性能指标,比较严格,可做参考。
基于上面训练的单信道模型,使用975人双信道数据进行fine-tune,基于25人双信道测试集分别做单信道注册验证和双信道交叉验证,包括电话注册电话识别、APP注册APP识别、电话注册APP识别、APP注册电话识别,注册时长20秒,验证时长10秒,文本内容为自由说方式,测试结果如表2所示:
Figure DEST_PATH_IMAGE019
表2
表2中每两行为一组,一共为四组,每组的第一行参数是当T-ERR最小时取出的参数,第二行是参照FAR和FRR相等时取出的性能参数,以第二行评价指标为主。
因为本地CPU验证每次耗时在2秒左右,故做进一步优化,将验证时长缩短为5秒,提取的fbank特征维度从64降到32,最后测试能将验证耗时缩短为500毫秒左右,但是识别准确率略有下降,测试结果如表3所示:
Figure DEST_PATH_IMAGE020
表3
综上,通过insightvoice网络来进行跨信道声纹识别,最终的识别效果较好。以上为本公开的部分实施例,本公开的保护范围由权利要求书及其等效物限定。

Claims (5)

1.一种基于ArcFace loss算法的跨信道声纹识别方法,其特征在于,包括:
收集说话人至少在两个不同信道的音频,对所述音频进行预处理并提取音频特征;
将所述音频特征转换为.lst 文件,所述.lst 文件包括音频路径;
将一个信道音频特征的所述.lst 文件投入到insightvoice网络训练单信道模型,所述insightvoice网络通过.lst和音频结合的方式读取音频;
将其他信道音频特征的所述.lst 文件输入到所述单信道模型,基于所述单信道模型做fine-tune得到多信道模型;通过所述多信道模型对不同信道音频进行交叉验证,完成声纹识别;
其中,所述insightvoice网络为ResNet-50网络,由50个block组成;所述训练基于ArcFace loss算法的损失函数进行。
2.如权利要求1所述的基于ArcFace loss算法的跨信道声纹识别方法,其特征在于,所述基于ArcFace loss算法的损失函数为:
Figure 435253DEST_PATH_IMAGE001
;其中,
Figure 581063DEST_PATH_IMAGE002
为样本数量,
Figure 284577DEST_PATH_IMAGE003
为类别数,
Figure 298670DEST_PATH_IMAGE004
为角度余量,
Figure 974502DEST_PATH_IMAGE005
Figure 353530DEST_PATH_IMAGE006
Figure 609587DEST_PATH_IMAGE007
Figure 302736DEST_PATH_IMAGE008
Figure 629812DEST_PATH_IMAGE009
Figure 242059DEST_PATH_IMAGE010
表示第
Figure 920165DEST_PATH_IMAGE011
个样本的深度特征,属于第
Figure 417006DEST_PATH_IMAGE012
类,
Figure 926485DEST_PATH_IMAGE013
表示最后一个全连接层权重
Figure 381737DEST_PATH_IMAGE014
的第
Figure 750401DEST_PATH_IMAGE015
列。
3.如权利要求2所述的基于ArcFace loss算法的跨信道声纹识别方法,其特征在于,所述角度余量
Figure 644408DEST_PATH_IMAGE004
的值为0.5。
4.如权利要求1-3任一项所述的基于ArcFace loss算法的跨信道声纹识别方法,其特征在于,所述音频特征为fbank特征、fbank的一阶微分特征和fbank的二阶微分特征。
5.如权利要求1-3任一项所述的基于ArcFace loss算法的跨信道声纹识别方法,其特征在于,所述音频的预处理、fine-tune和insightvoice网络的训练基于MxNet框架进行。
CN201910495120.6A 2019-06-10 2019-06-10 一种基于ArcFace loss算法的跨信道声纹识别方法 Active CN110390937B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910495120.6A CN110390937B (zh) 2019-06-10 2019-06-10 一种基于ArcFace loss算法的跨信道声纹识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910495120.6A CN110390937B (zh) 2019-06-10 2019-06-10 一种基于ArcFace loss算法的跨信道声纹识别方法

Publications (2)

Publication Number Publication Date
CN110390937A CN110390937A (zh) 2019-10-29
CN110390937B true CN110390937B (zh) 2021-12-24

Family

ID=68285421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910495120.6A Active CN110390937B (zh) 2019-06-10 2019-06-10 一种基于ArcFace loss算法的跨信道声纹识别方法

Country Status (1)

Country Link
CN (1) CN110390937B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111312283B (zh) * 2020-02-24 2023-03-21 中国工商银行股份有限公司 跨信道声纹处理方法及装置
CN111402899B (zh) * 2020-03-25 2023-10-13 中国工商银行股份有限公司 跨信道声纹识别方法及装置
CN111639558B (zh) * 2020-05-15 2023-06-20 圣点世纪科技股份有限公司 一种基于ArcFace Loss和改进残差网络的指静脉身份验证方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020178132A1 (en) * 2001-03-30 2002-11-28 Rose Ralph E. Adaptive system for recognition of multi-channel amplitude varying signals
CN101321387A (zh) * 2008-07-10 2008-12-10 ***通信集团广东有限公司 基于通信***的声纹识别方法及***
CN108492821A (zh) * 2018-03-27 2018-09-04 华南理工大学 一种减弱语音识别中说话人影响的方法
CN108877809A (zh) * 2018-06-29 2018-11-23 北京中科智加科技有限公司 一种说话人语音识别方法及装置
CN109192216A (zh) * 2018-08-08 2019-01-11 联智科技(天津)有限责任公司 一种声纹识别用训练数据集仿真获取方法及其获取装置
CN109256139A (zh) * 2018-07-26 2019-01-22 广东工业大学 一种基于Triplet-Loss的说话人识别方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020178132A1 (en) * 2001-03-30 2002-11-28 Rose Ralph E. Adaptive system for recognition of multi-channel amplitude varying signals
CN101321387A (zh) * 2008-07-10 2008-12-10 ***通信集团广东有限公司 基于通信***的声纹识别方法及***
CN108492821A (zh) * 2018-03-27 2018-09-04 华南理工大学 一种减弱语音识别中说话人影响的方法
CN108877809A (zh) * 2018-06-29 2018-11-23 北京中科智加科技有限公司 一种说话人语音识别方法及装置
CN109256139A (zh) * 2018-07-26 2019-01-22 广东工业大学 一种基于Triplet-Loss的说话人识别方法
CN109192216A (zh) * 2018-08-08 2019-01-11 联智科技(天津)有限责任公司 一种声纹识别用训练数据集仿真获取方法及其获取装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"ArcFace:additive angular margin loss for deep face recognition";Jiankang Deng;《IEEE》;20181231;全文 *
"ensemble additive margin softmax for speaker verification";Yu Y Q;《ICASSP 2019》;20190501;全文 *
"MXNet: A Flexible and Efficient Machine Learning Library for Heterogeneous Distributed Systems";Chen T;《Statistics》;20151231;全文 *
"基于短语音和信道变化的说话人识别研究";蒋晔;《中国博士学位论文全文数据库信息科技辑》;20130715;全文 *

Also Published As

Publication number Publication date
CN110390937A (zh) 2019-10-29

Similar Documents

Publication Publication Date Title
CN110390937B (zh) 一种基于ArcFace loss算法的跨信道声纹识别方法
CN108630193B (zh) 语音识别方法及装置
CN105374356B (zh) 语音识别方法、语音评分方法、语音识别***及语音评分***
CN110782872A (zh) 基于深度卷积循环神经网络的语种识别方法及装置
CN106847260B (zh) 一种基于特征融合的英语口语自动评分方法
Sadjadi et al. The 2019 NIST Speaker Recognition Evaluation CTS Challenge.
CN108922518A (zh) 语音数据扩增方法和***
Kelly et al. Deep neural network based forensic automatic speaker recognition in VOCALISE using x-vectors
CN109272992A (zh) 一种口语测评方法、装置及一种生成口语测评模型的装置
CN105006230A (zh) 一种面向非特定人的语音敏感信息检测和过滤方法
CN103730112B (zh) 语音多信道模拟与采集方法
CN111128211B (zh) 一种语音分离方法及装置
CN111489765A (zh) 一种基于智能语音技术的话务服务质检方法
CN106328123B (zh) 小数据库条件下正常语音流中耳语音的识别方法
CN111433847A (zh) 语音转换的方法及训练方法、智能装置和存储介质
CN102637433A (zh) 识别语音信号中所承载的情感状态的方法和***
CN111625639B (zh) 一种基于多轮响应生成的上下文建模方法
CN113823293B (zh) 一种基于语音增强的说话人识别方法及***
CN115602165B (zh) 基于金融***的数字员工智能***
CN110600032A (zh) 一种语音识别方法及装置
CN103054586A (zh) 一种基于汉语言语测听动态词表的汉语言语自动测听方法
CN106205635A (zh) 语音处理方法及***
CN105845143A (zh) 基于支持向量机的说话人确认方法及其***
CN108806725A (zh) 语音区分方法、装置、计算机设备及存储介质
Parthasarathi et al. Wordless sounds: Robust speaker diarization using privacy-preserving audio representations

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