A Bayesian Approach to Deep Neural Network Adaptation with Applications to Robust Automatic Speech Recognition
基于贝叶斯的深度神经网络自适应及其在鲁棒自动语音识别中的应用
直接贝叶斯DNN自适应
使用高斯先验对DNN进行MAP自适应
为何贝叶斯在模型自适应中很有用?
- 因为自适应问题可以视为后验估计问题:

- 能够克服灾难性遗忘问题
在实现通用智能时,神经网络需要学习并记住多个任务,任务顺序无标注,任务会不可预期地切换,同种任务可能在很长一段时间内不会复现。当对当前任务B进行学习时,对先前任务A的知识会突然地丢失,这种现象被称为灾难性遗忘(catastrophic forgetting)。
DNN的MAP自适应:理论背景
基于GMM系统的MAP自适应
GMM作为生成性pdf:符合直觉

共轭先验(Conjugate Prior)
在贝叶斯统计中,如果后验分布与先验分布属于同类,则先验分布与后验分布被称为共轭分布,而先验分布被称为似然函数的共轭先验。
具体地说,就是给定贝叶斯公式


基于DNN的MAP自适应
但是DNN是鉴别性模型,它没有生成性后验概率的概率密度函数。
使得DNN近似为概率密度函数
- 将DNN看作是一个概率密度函数
将DNN的目标函数以概率(似然)形式表示:

- 估计后验概率

其中似然L可以是交叉熵、最小互信息、最小音素错误、最小分类错误等。
先验估计:经验贝叶斯
对训练说话人进行自适应,并分析说话人直接的参数分布。

Prior Estimation Cont'd(先验估计,接上页)
con'd, Abbreviation of continued, 接上页
假设先验分布为多元高斯

等式右边,只用矢量w完成了对矩阵W的表示(向量化)。
假设先验分布为矩阵高斯

多元高斯与矩阵高斯的结果类似,不过多元高斯先验使用了向量化,更易于处理、更易于简化至到L2正则项。
高斯先验:易于简化至到L2正则项
- 多元高斯先验的展开式:



- L2正则化训练

DNN自适应中的灾难性遗忘
自适应后,DNN对自适应数据中见过的类有偏差;
丧失对未观察到样本的识别能力
贝叶斯用于解决灾难性遗忘问题


控制参数数量(LHN)
只对插入到线性隐层的仿射变换权重进行适应:冻结其他参数
通常使用一个瓶颈层以控制LHN的大小,进一步较少参数数量。
MAP:只更新激活函数参数
适应隐层中Sigmoid激活函数(AF)参数

此方法更新的参数比LHN更少。
实验(SWBD)
- 保持权重不变,只更新AF参数,WER降低4.6%(15.1->14.4)
在此基础之上,以最大后验概率准则更新AF参数,WER进一步降低2.8%(14.4->14.0)
- 进行特征空间最大似然线性回归(fMLLR),WER降低7.9%(15.1->13.9)
在此基础之上,以最大后验概率准则更新AF参数,WER进一步降低5.0%(13.9->13.2)
间接贝叶斯DNN自适应
对从DNN获得瓶颈特征进行MAP/SMAP
- 对DNN的直接自适应是可行的,但是还是比不上对GMM的贝叶斯自适应。
- 如何更好地利用成熟的贝叶斯自适应方法
- 将DNN转换为GMM
基于DNN瓶颈特征处理后的特征进行MAP/SMAP

瓶颈特征是鉴别性数据驱动方式训练的;
通过拼接以使用DNN的优点;
要获得瓶颈特征:
- 训练一个带有瓶颈层的DNN;
- 训练一个不带有瓶颈层的DNN,然后进行奇异值分解(SVD)以得到瓶颈;
- 不使用瓶颈层,只进行PCA/LDA降维;
MAP/SMAP自适应
MAP
是有效的模型自适应方法,对小数据集鲁棒;
数据量很大时,将蜕化至(相当于)最大似然估计(MLE);
会由于缺少数据,不能更新未见的三音素;
SMAP(Structured MAP)
针对少数据量的结构化MAP自适应
MAP/SMAP实验
瓶颈特征的GMM-HMM略微差与原DNN-HMM(基线)结果(WER提高0.2%,8.84->8.86)
对瓶颈特征进行MAP的GMM-HMM WER降低5.2%(8.84->8.38)
对瓶颈特征进行SMAP的GMM-HMM WER降低11.1%(8.84->7.85)
与MAP-LHN、LHN相比,SMAP最优。
总结
直接DNN自适应:
- 使用高斯先验进行有监督/无监督的自适应
- 多任务学习(MTL)自适应以解决数据稀疏问题
自适应时,需要对DNN构建一个框架。使用已提出的框架,可以将DNN应用到不同种类型的模型与不同的任务中。
通过瓶颈特征,将DNN"转换"为生成性模型
- 使用瓶颈特征将DNN-HMM转换为GMM-HMM
为DNN提供了使用传统统计学机器学习方法(包括贝叶斯方法)
A Bayesian Approach to Deep Neural Network Adaptation with Applications to Robust Automatic Speech Recognition的更多相关文章
- 论文阅读笔记六十四: Architectures for deep neural network based acoustic models defined over windowed speech waveforms(INTERSPEECH 2015)
论文原址:https://pdfs.semanticscholar.org/eeb7/c037e6685923c76cafc0a14c5e4b00bcf475.pdf 摘要 本文研究了利用深度神经网络 ...
- Deep Learning: Assuming a deep neural network is properly regulated, can adding more layers actually make the performance degrade?
Deep Learning: Assuming a deep neural network is properly regulated, can adding more layers actually ...
- 论文翻译:2022_PACDNN: A phase-aware composite deep neural network for speech enhancement
论文地址:PACDNN:一种用于语音增强的相位感知复合深度神经网络 引用格式:Hasannezhad M,Yu H,Zhu W P,et al. PACDNN: A phase-aware compo ...
- XiangBai——【AAAI2017】TextBoxes_A Fast Text Detector with a Single Deep Neural Network
XiangBai--[AAAI2017]TextBoxes:A Fast Text Detector with a Single Deep Neural Network 目录 作者和相关链接 方法概括 ...
- What are the advantages of ReLU over sigmoid function in deep neural network?
The state of the art of non-linearity is to use ReLU instead of sigmoid function in deep neural netw ...
- 论文笔记之:Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation
Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation xx
- 用matlab训练数字分类的深度神经网络Training a Deep Neural Network for Digit Classification
This example shows how to use Neural Network Toolbox™ to train a deep neural network to classify ima ...
- 深度神经网络如何看待你,论自拍What a Deep Neural Network thinks about your #selfie
Convolutional Neural Networks are great: they recognize things, places and people in your personal p ...
- 【论文笔记】Malware Detection with Deep Neural Network Using Process Behavior
[论文笔记]Malware Detection with Deep Neural Network Using Process Behavior 论文基本信息 会议: IEEE(2016 IEEE 40 ...
随机推荐
- 机器学习三剑客之matplotlib 数据绘图展示
线型图: #导包 import matplotlib.pyplot as plt #导入字体库 from matplotlib.font_manager import FontProperties # ...
- vue使用element-ui 监听使用回车键事件
因为element-ui 对input做了封装,使用@keyup.enter="fn"触发Enter键事件就不会触发,解决:后面追加.native.@keyup.enter.nat ...
- 斯坦福大学公开课机器学习:machine learning system design | trading off precision and recall(F score公式的提出:学习算法中如何平衡(取舍)查准率和召回率的数值)
一般来说,召回率和查准率的关系如下:1.如果需要很高的置信度的话,查准率会很高,相应的召回率很低:2.如果需要避免假阴性的话,召回率会很高,查准率会很低.下图右边显示的是召回率和查准率在一个学习算法中 ...
- Unity 物体移动的理解
Unity通过内置的Input类获取外部输入,具体查看: Editor---Project Setting---Input,常见的输入比如:Vertical.Horizontal.Fire1.Jump ...
- This Gradle plugin requires a newer IDE able to request IDE model level 3. For Android Studio this means v3+
在项目的gradle.properties配置文件中加入以下这句: gradle.properties中:android.injected.build.model.only.versioned = 3
- MySQL mysqldump 导入/导出 结构&数据&存储过程&函数&事件&触发器
———————————————-库操作———————————————-1.①导出一个库结构 mysqldump -d dbname -u root -p > xxx.sql ②导出多个库结构 m ...
- mysql删除大表更快的drop table办法
mysql删除大表更快的drop table办法 参考资料:https://blog.csdn.net/anzhen0429/article/details/76284320 利用硬链接和trunca ...
- 机器学习-随机梯度下降(Stochastic gradient descent)
sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...
- Hadoop生产环境配置文件
前提: ①已经搭建好zk ②已经安装好JDK 正文开始: 首先从官网下载hadoop 2.7.3 (虽然官网3.0都出了.但是目前还没经过完全的测试..待测试后...) 一.hadoop-env.sh ...
- ffmpeg的各种黑科技
获取音频的时长 /** * 获取视频文件的时长 * @param ffmpegPath 是ffmpeg软件存放的目录,sourceFile是目标文件 * @return */ public Strin ...