CS224d lecture 14札记

欢迎转载,转载注明出处:

http://www.cnblogs.com/NeighborhoodGuo/p/4720985.html

这一课也是请得嘉宾讲得课,据说是standford的一位博士。讲得主题是Neural Networks in Speech Recognition

不过Speech Recognition可谓是博大精深啊,这一堂课就像讲师在课前的Overview里说的一样,只是做一个perspective

让大家对这个方面有一个简要的了解,具体如何操作,这个就没有详细讲了。。。课上讲得许多model还有推荐论文里讲得一些model部分我都不太熟悉,看得我真是痛苦呀。暂且记录下部分难点和自己不了解的地方,如果以后有机会做这方面的工作,再翻出来详细研究。

课前给了个overview,然后之后的整堂课都是按照这个outline进行的,脉络清晰明了。

Speech recognition systems overview

如图所示,Speech recognition主要分为三个部分。第一个部分是Noise Reduction这个在本课中没有涉及;第二个部分是Transcription,这个是这一课的内容;第三个部分是Understanding,之前讲得所有内容都是围绕第三个部分展开的。

最后讲师推荐了一个Speech Data的Dataset名字叫Switchboard

http://www.isip.piconepress.com/projects/switchboard/

我在网上找到这样一个corpus不知道和讲师说的那个一样不一样。

HMM-DNN(Hybrid) acoustic modeling

首先为了引入HMM-DNN先介绍了一个在Speech Recognition领域曾经风靡一时的HMM-GMMs

GMMs我在看CS229的时候学过,HMM在PGM课上也看过,可是这两玩意结合起来还是看不太明白。

上面一层是HMM;下面的是计算P(x|s),根据state求对应features的概率。这一点让我有点疑惑,我们的目的是求HMM中的Hidden state,首先s都是未知的,怎么能基于它呢;其次目的是求Hidden state求P(x|s)有啥意义

继而就介绍了HMM-DNN Hybrid Acoustic Models

和HMM-GMM相比只是把Acoustic Model替换成了DNN

这个模型据说有很长时间的历史了,但是为什么它在最近才崭露头角呢?

其中一个最重要的原因是我们的计算机的速度目前足够快了,足以支撑,运行如此大的模型,并且能够跑起来多个experiments,使得进行优化成为可能。

以前的model多为单层的NN,现在的是多层的model。还有一个重要的是使用的non-linear model比之前的要好很多。

在experiment中讲师使用了名为TIMIT的dataset作为测试。

模型的层数太少不行,不能很好的捕捉到features,但是太多了也很容易overfitting性能也会下降。

在选择non-linear function的时候,rectify function在BP的时候对error的损失比较小使得它在性能方面比tanh好

两种优化DNN的方法

第一种是把普通的DNN替换成CNN,这种CNN对于失真的声音里信息的提取很优越。

第二种是把普通的DNN替换成Recurrent NN

HMM-free RNN recognition

这里把传统的sub-phone的提取转换成了Collapsing function

在单词输出的时候不再以整一个单词作为一个单位,而将单词的部分fragment作为一个单位

对于语音之间的空隙不发音的时间段,以“_”占位。

使用RNN比普通的NN Error rate下降了很多

这种model还有一个好处,就是对于corpus里没有的词汇也可以造出来。

结论

HMM-DNN是目前最好的speech recognition model

讲师最后预测不久的将来我们的所有电子设备中的Speech recognition model都会换成HMM-DNN

链接:

Speech recognition model的开源project

http://kaldi.sourceforge.net/

两个dataset:

TIMIT

http://blog.163.com/gz_aaa/blog/static/37834532201471881923177/

http://www.fon.hum.uva.nl/david/ma_ssp/2007/TIMIT/

Switchboard

http://www.isip.piconepress.com/projects/switchboard/

时间: 2024-10-02 11:37:10

CS224d lecture 14札记的相关文章

CS224d lecture 12札记

欢迎转载,转载注明出处: http://www.cnblogs.com/NeighborhoodGuo/p/4711678.html CS224d的第十一课是他们的课上考试,所以后面的视频就直接跳到lecture 12了.lecture 12是一位外宾过来讲得,据说是Facebook的工程师,讲了现在最前沿的AI research,AI很多东西在全世界范围内都没有解决方案或者说对某一问题有统一的意见,所以这堂课不是介绍一个成熟的model,可以理解这一讲是为大家打开一扇门,让大家了解AI中的这部

CS224d lecture 8札记

欢迎转载,转载注明原文地址: http://www.cnblogs.com/NeighborhoodGuo/p/4692979.html 又开始新一课的札记啦!最近Project Proposal也快到了,时间还是比较紧的.不过课程已经过半了还是挺开心的.stanford开放这么有技术含量的课程,还是很钦佩stanford的开放精神. 这一课是对Recurrent NN for MT做了一个简要的介绍.个人认为这种方法比较靠谱耶,想想我们人类对于母语的学习,对于母语的理解,从来都不是先分析语法,

CS224d lecture 10札记

欢迎转载,转载注明出处: http://blog.csdn.net/neighborhoodguo/article/details/47282709 Go Go Go 第十讲也顺利结束啦,不愧是Advanced Recursive NN讲得内容确实有些Advanced,不过如果认真听课再认真看课后的paper的话,我相信还是可以完全理解的. 开始总结喽... 首先,老师在课上开篇讲了RNN的一个综述吧,也是使用RNN进行NLP的三个大的要素:1.Train objective主要有两种,一种是c

CS224d lecture 9札记

欢迎转载,转载注明出处: http://www.cnblogs.com/NeighborhoodGuo/p/4694955.html 最近几课的内容不是很难,还有我的理解能力有所提高(自恋一下),所以这几课完成的都挺快.不知不觉lec9也完成了.这一讲讲了另一个RNN,其中R是Recursive不是之前的Recurrent.课上老师使用Recursive NN来做NLP和CV的任务,我个人认为做CV还是不错的,这个NLP怎么感觉有点不靠谱.不管怎么说这个model还是解决了很多实际问题的,而且性

CS224d lecture 15札记

欢迎转载,转载注明出处: http://blog.csdn.net/neighborhoodguo/article/details/47449257 这一讲还是嘉宾的讲课,讲得是关于parallel计算方面的.俗话说的好:"三个臭皮匠,顶个诸葛亮嘛".哈哈 因为一台计算机,或者一个处理器的处理能力是有限的,进行并行计算能够大大提高运算速度,节省调试的时间.而我们的NN是如此的复杂,有时候规模也特别大,所以使用并行计算是很有必要的. 这一讲呢,主要分为五个部分:1.Efficient f

CS224d lecture 13札记

欢迎转载,转载注明出处: http://blog.csdn.net/neighborhoodguo/article/details/47387229 不知不觉到了第三部分了,整个课程也快结束了,虽然不是第一次整个推完公开课,但是还是有些兴奋呢! 废话不多说,开始总结啦! 这节课就介绍了一个模型,就是在Computer Vision里十分popular的CNN(Convolutional Neural Networks).不过这里介绍它在NLP的应用,可见model其实是可以有不同的应用的哦,没准

CS224d lecture 6札记

哈哈哈,终于又到了每课的写笔记时间.这次课程的内容比较少,可能是为了给Problem set 1空余时间吧. 废话不多说.写喽 这次的video讲的东西主要就是把推荐的论文稍微详细的讲解了一部分,然后外加给RNN模型开了个头. 1.Multi-task learning / weight sharing 这个第一部分其实在NLP(almost) from scratch里也有讲解它的理念就是,在DL model里面底下几层里学到的feature是相同或者近似的,那么这样的话,只需要统一给DL m

CS224d lecture 16札记

欢迎转载,转载注明出处: http://blog.csdn.net/neighborhoodguo/article/details/47617297 终于把最后一讲也看完了,stanford的NLP课程也接近了尾声,真的是非常的开心,这门课真的让我收获了很多. 这一课讲得就是DL在NLP方面的应用,其实大部分内容在之前的课上和之前的推荐阅读里都有提及,这一课也算是一门复习课吧. 同样的先overview一下:1.Model overview 2.Character RNNs on text an

Lecture 14:Radial Basis Function Network

Lecture 14:Radial Basis Function Network 14.1 RBF Network Hypothesis 图  14-1 RBF network 从图 14 -1 中可以看出,RBF NNet 没啥特色.就是用 RBF 核作为激活函数.为什么还要 RBF NNet 呢?难道是大家公认 RBF 核很好?数学公式多了去,岂不是有无穷多个 NNet 呢. 需要参考 <RBF神经网络和BP神经网络有什么区别?> . 首先 RBF NNet 计算速度很快.因为 RBF N