DNN声学模型说话人自适应的经验性评估

年3月27日

发表于:Sound (cs.SD); Computation and Language (cs.CL); Audio and Speech Processing (eess.AS)

 
 

说话人自适应时从说话人无关模型中估计一个说话人相关的声学模型,以减小训练集与测试集由于说话人差异导致的不匹配。

 
 

已经出现了许多DNN自适应方法,但是缺乏实验比较。

 
 

声学模型采用TDNN-LSTM声学模型。

 
 

自适应源时标准中文普通话声学模型

自适应目标是带口音的中文普通话声学模型

 
 

 
 

本文对三种典型的说话人自适应方法:

  • LIN
  • LHUC
  • KLD

进行经验性评估。对上述三种模型及其组合进行了性能比较。

 
 

关于说话人口音程度对说话人自适应性能的影响,本文也进行了测试。

 
 

 
 

训练-测试不匹配:训练集不能匹配新声学环境或者不能泛化至新的说话人。

为了解决未见过说话人识别问题以及声学环境不匹配问题,提出了多种声学模型补偿和自适应方法。

 
 

DNN自适应方法可以粗略地分为三类:

  • 说话人适应层插入方法

    LIN、LHN、LON是最常见的说话人适应层插入方法,其中LIN最常用。

     
     

    LHUC(Learning Hidden Unit Contribution)是说话人适应层插入方法地新类型,通过插入特殊的层以控制隐层的幅值(amplitude),使得SI网络参数变得说话人相关。

    LIN的训练通常使用一个较小的学习率,如0.00001。

  • 子空间方法

    目标是找到一个用于自适应的低维说话人子空间。最直觉的应用是使用基于子空间的特征,如:i-Vectors,作为神经网络声学模型训练中的增补特征,或用于说话人自适应训练(SAT)。

    除子空间的特征之外的另一种子空间方法,被称为:说话人编码,也是把特征用作增补[25]。

    对于每个说话人,特定神经网络单元集合被链接到原始SI网络中,并进行优化。

     
     

    基于i-Vector的SAT已经称为训练DNN声学模型时的小技巧,以提供较小但稳定的性能提升。

  • 模型直接适应方法

    一种直觉的想法是使用新的说话人数据来直接调整DNN参数。使用新数据来对SI模型进行重训练/调优是最简单的方式,又被称为重训练说话人无关(Retrained Speaker Independent,RSI)自适应。为避免过拟合,通常进行保守训练(Conservative Training),如KL散度(Kullback-Leibler Divergence)正则化[26]。通过把KL散度项添加到用于更新神经网络参数的原交叉熵代价函数中,该方法试图将适应后模型的后验分布接近于用于适应的源模型。虽然该方法十分有效,但是需要为每个说话人构建一个神经网络。

     
     

KLD正则化

 
 

L2正则化项使得自适应后模型参数与SI模型参数相接近。

 
 

对于声学模型训练,需要最小化交叉熵:

 
 

 
 

 
 

 
 

LHUC(学习性隐层单元贡献)

以限制r的元素取值为[0, 2]。

 
 

 
 

Previous studies on LHUC [22] have demonstrated that adapting more layers in the network can get continuously better accuracy. Hence we inserted LHUC parameters after each hidden layers.

 
 

实验

实验基于i-Vector与cMLLR(fMLLR)特征训练的SAT-DNN(TDNN-LSTM)声学模型。

 
 

 
 

 
 

[25] O. Abdel-Hamid and H. Jiang, "Fast speaker adaptation of hybrid nn/hmm model for speech recognition based on discriminative learning of speaker code," in Acoustics, Speech and Signal Processing (ICASSP), 2013 IEEE International Conference on. IEEE, 2013, pp. 7942–7946.

 
 

三种方法的组合:

组合并不能带来性能提升。

时,RSI就会出现偏差。

或10个话语)反而不如基线,本文实验表明即使使用少量数据也能带来不错的性能提升。我们认为,这是因为测试说话人口音很重,即SI数据与目标说话人数据之间的差异十分明显。
使用不同ρ值[0.0625,0.5]进行比较也表明,即使对于不同大小的适应数据,即使ρ较小,也可以获得合理的CER减少。对于大数据集和小数据据,中等权重(例如,0.25)最优;对于中等大小数据集,较小正则化权重(例如,0.0625)最优。我们还比较了不同口音说话人的性能。图3c的结果显示KLD适用于每个测试说话人,并且在SI模型中具有最高CER的说话人(即,S5,具有最重的口音)实现了最大的CER减少。但随着适应数据的增加,每个说话人的增益越来越小。

 
 

Empirical Evaluation of Speaker Adaptation on DNN based Acoustic Model的更多相关文章

  1. Utterance-Wise Recurrent Dropout And Iterative Speaker Adaptation For Robust Monaural Speech Recognition

    单声道语音识别的逐句循环Dropout迭代说话人自适应     WRBN(wide residual BLSTM network,宽残差双向长短时记忆网络) [2] J. Heymann, L. Dr ...

  2. An Empirical Evaluation of Generic Convolutional and Recurrent Networks for Sequence Modeling

    An Empirical Evaluation of Generic Convolutional and Recurrent Networks for Sequence Modeling 2018-0 ...

  3. Predicting effects of noncoding variants with deep learning–based sequence model | 基于深度学习的序列模型预测非编码区变异的影响

    Predicting effects of noncoding variants with deep learning–based sequence model PDF Interpreting no ...

  4. 论文翻译:2020_Generative Adversarial Network based Acoustic Echo Cancellation

    论文地址:http://www.interspeech2020.org/uploadfile/pdf/Thu-1-10-5.pdf 基于GAN的回声消除 摘要 生成对抗网络(GANs)已成为语音增强( ...

  5. 论文阅读笔记六十四: Architectures for deep neural network based acoustic models defined over windowed speech waveforms(INTERSPEECH 2015)

    论文原址:https://pdfs.semanticscholar.org/eeb7/c037e6685923c76cafc0a14c5e4b00bcf475.pdf 摘要 本文研究了利用深度神经网络 ...

  6. What are the differences between an LES-SGS model and a RANS based turbulence model?

    The biggest difference between LES and RANS is that, contrary to LES, RANS assumes that \(\overline{ ...

  7. pytorch --Rnn语言模型(LSTM,BiLSTM) -- 《Recurrent neural network based language model》

    论文通过实现RNN来完成了文本分类. 论文地址:88888888 模型结构图: 原理自行参考论文,code and comment: # -*- coding: utf-8 -*- # @time : ...

  8. 论文翻译:2020_Acoustic Echo Cancellation Based on Recurrent Neural Network

    论文地址:https://ieeexplore.ieee.org/abstract/document/9306224 基于RNN的回声消除 摘要 本文提出了一种基于深度学习的语音分离技术的回声消除方法 ...

  9. 机器学习进阶-目标追踪-SSD多进程执行 1.cv2.dnn.readnetFromCaffe(用于读取已经训练好的caffe模型) 2.delib.correlation_tracker(生成追踪器) 5.cv2.writer(将图片写入视频中) 6.cv2.dnn.blobFromImage(图片归一化) 10.multiprocessing.process(生成进程)

    1. cv2.dnn.readNetFromCaffe(prototxt, model)  用于进行SSD网络的caffe框架的加载 参数说明:prototxt表示caffe网络的结构文本,model ...

随机推荐

  1. mybatis 直接执行sql 【我】

    Connection conn = getConnection();//            Connection conn = this.ss.getConnection(); 返回Connect ...

  2. IDEA或Webstorm设置Ctrl+滚轮调整字体大小

    按Ctrl+Shift+A,出现搜索框 输入mouse: 点击打开这个设置:勾选 点击ok,之后就可以通过Ctrl+滚轮 调整字体大小了.

  3. 在Linux中复制文件夹下的全部文件到另外文件夹

    https://jingyan.baidu.com/article/656db918f83c0de380249c5a.html 在Linux系统中复制或拷贝文件我们可以用cp或者copy命令,但要对一 ...

  4. 计算机基础:计算机网络-chapter2

    因为计算机网络是的传输从物理到数据端的过程到端是自下而上的,所以大多数的教材都是从五层协议结构的底部开始向上延申. 物理层: = = 好复杂哦.看不懂,反正就是讲一些通信的线,信号传输的实现原理,和信 ...

  5. sqlserver2008查看表记录或者修改存储过程出现目录名无效错误解决方法

    登陆数据库后,右键打开表提示:目录名无效,执行SQL语句也提示有错误,现在把解决方法分享给大家 1.新建查询 2.点工具栏中[显示估计的查询计划],结果提示Documents and Settings ...

  6. 【清北学堂2018-刷题冲刺】Contest 1

    Task 1:最小公倍数  输入n,求n与246913578的最小公倍数.  结果对1234567890取模. [样例输入] 3 [样例输出] 246913578 [数据规模和约定] 对于30%的数据 ...

  7. Vue(小案例)底部tab栏和顶部title栏的实现

    ---恢复内容开始--- 一.前言 1.底部tab栏实现 2.顶部title栏实现 二.主要内容   1.底部tab栏实现(将底部导航提取到公共的组件中) 具体效果:当点击切换不同的tab的时候,对应 ...

  8. STM32L011D4 ----- 使用注意

    下载程序: SWD下载模式,PA14(SWCLK)是作为输入口,但是当单片机进入bootloader模式,PA14变为输出模式,就不能下载程序了. 所以下载程序时,需要配置下载程序的上位机为“conn ...

  9. 写给IT技术爱好者的一封信

    写给IT技术爱好者的一封信>当前运维素质的分析<... ---------------------- 虽相貌平平,但勤学苦练,亦收获颇丰!如果你决定要成为一名IT从业者,你需要承受以下的东 ...

  10. 2017-12-14python全栈9期第一天第六节之用户交互

    9,用户交互.input 1,等待输入, 2,将你输入的内容赋值给了前面变量. 3,input出来的数据类型全部是str 10,基础数据类型初始.数字:int 12,3,45 + - * / ** % ...