本文笔记旨在概括地讲deep learning的经典应用。内容太大,分三块。

---------------------------------------------------------------------------------------------

Content


1. 回想 deep learning在图像上的经典应用

1.1 Autoencoder

1.2 MLP

1.3 CNN<具体的见上一篇CNN>

2. deep learning处理语音等时序信号

2.1 对什么时序信号解决什么问题

2.2 准备知识

2.2.1 Hidden Markov Model(HMM)

2.2.2 GMM-HMM for Speech Recognition

2.2.3 Restricted Boltzmann Machine(RBM)

3.  DBN 和 RNN 在语音上的应用

3.1 DBN

3.1.1 DBN架构

3.1.2 DBN-DNN for Speech Recognition

3.2 RNN

3.2.1 RNN种类

3.2.2 RNN-RBM for Sequential signal Prediction

---------------------------------------------------------------------------------------------

1. 回想 deep learning处理图像等非时序信号 <具体的见上一篇CNN>

----------------------------------------------

1.1 AutoEncoder(unsupervised)

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWJjamVubmlmZXI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" width="750" height="405" alt="" />

扩展:Stack AutoEncoder(能够变成supervised),见Andrew Ng的UFLDL教程。我就不贴图了

----------------------------------------------

1.2 MLP

MLP(ANN)是最naive的神网分类器。一个hidden层,连两端nonlinear function,output输出为f(x),softmax做分类。

----------------------------------------------

1.3 Convolutional Neural Network

特点:1. 非全连接,2、共享权重

做法:1. 卷积 2. 降採样(pooling)

具体见上一篇CNN

---------------------------------------------------------------------------------------------

2. deep learning处理语音等时序信号

2.1 对什么时序信号解决什么问题:

handwriting recognition
speech recognition
music composition
protein analysis
stock market prediction
...

2.2 准备知识:

----------------------------------------------

2.2.1 Hidden Markov Model(HMM) - 带unobserved(这就是所谓hidden)states的随机过程。表示输入语音信号和hidden state(因素)的模型:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWJjamVubmlmZXI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

<figure from wiki>

训练HMM模型:给定一个时序y1...yT, 用MLE(typically EM implemented,具体见这篇第三部分training) 预计參数;

----------------------------------------------

2.2.2 GMM-HMM for Speech Recognition (较大。单独放在一篇blog里了)

----------------------------------------------

2.2.3 Restricted Boltzmann Machine

讲RBM之前要先讲一下生成模型……<How to build a single layer of feature detector>

大体分为两类——directed model & undirected model:

1.directed model (e.g. GMM 从离散分布求latent状态)

依据先验分布选择latent variable的状态

给定latent states,依据条件分布求observable variables的状态

2.undirected model

仅仅用參数W,通过能量函数定义v(visible)和h(hidden latent variables)的联合概率

             依据”explaining away”,假设latent和visible变量有着非线性关系。directed model非常难判断出latent variable的状态;但在undirected model中,仅仅要latent变量间没有变项链就能够轻松判断。

PS: explaining away是什么?

state的先验相互独立,后验也相互独立,

以下再讲RBM。

RBM 是马尔科夫随机场(MRF)的一种。不同之处:

1. RBM是一个双向连接图(bipartite connectivity graph)

2. RBM在不同unit之间不共享权重

3. 有一部分变量是unobserved

RBM对能量函数E(v,h)的定义:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWJjamVubmlmZXI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

RBM的參数构成:W(weight), bias_h, bias_v

已知联合分布P(v,h) 。 可通过Gibbs採样边缘分布分别得到h,v,依据Gradient of NLL进行梯度下降学习到參数。

RBM的训练目标是:最大化p(v=visible)。

(visible=真实的visible数据)

RBM实际训练过程中,对每一个training_batch:

contrastive divergence 採样k次(gibbs CD-k)

依据cost function进行update : , 即 cost = T.mean(self.free_energy(self.input)) - T.mean(self.free_energy(chain_end))

上面讲的RBM都是v,h = 0/1的。那怎么处理real-value的呢?

ANS:用Gaussian-Bernoulli RBM (GRBM)。

对上面经典RBM修改不大。仅仅须要改energy function & conditional prob:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWJjamVubmlmZXI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

3.  DBN 和 RNN 在语音上的应用

3.1 DBN

3.1.1 DBN架构

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWJjamVubmlmZXI=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

流程:

1. pre-train

从左到右来看,因为输入为real-value,所以第一层为GRBM,训练W1

GRBM训练出来的hidden给下一个RBM做input,训练W2

这个RBM训练出来的hidden再传给下一个RBM做input。训练W3

……(反复)

2. 能够直接把这几层pre-train好的W叠起来,双向weight箭头全改成top-down的。成了一个DBN生成模型

3. 加分类器

能够最后在这个pre-trained网络头部加一个softmax分类器,当中每一个节点表示HMM中一个状态,去做有监督的fine-tuning.。

3.1.2 DBN-DNN for Speech Recognition

假设你细致看过上一篇GMM-HMM for Speech Recognition就会发现,这个模型和GMM-HMM仅仅差在GMM

即。DNN-HMM用DNN(undirected model)取代了GMM(directed model),这种优点是能够解决h,v之间非线性关系映射。

Fig1. GMM-HMM

Fig2. DNN-HMM

3.2 RNN

3.2.1 RNN种类

常见的:

1.Fully Recurrent Network

2.Hopfield Network

3.Elman Network (Simple Recurrent networks)

4.Long short term memory network

fig. LSTM

3.2.2 RNN-RBM for Sequential signal Prediction

见一个RNN样例,RNNRBM(RNN-RBM for music composition 网络架构及程序解读

Reference:

为了大家看的方便,我推荐从简了。

抄了太多图,不贴出处了大牛们见谅。。不然一堆推荐无从下手滴样纸

Deep Learning 在语音上的应用DNN经典文章:

1. Hinton, Li Deng, Dong Yu大作:Deep Neural Networks for Acoustic Modeling in Speech Recognition

2. Andrew Ng, NIPS 09, Unsupervised feature learning for audio classification using convolutional deep belief networks

Deep Learning 在语音上的应用RNN经典文章:

1. Bengio ICML 2012. RNN+RBM paper有实现 (下一篇细讲)

2. Schmidhuber JMLR 2002 paper讲LSTM经典

3. The Use of Recurrent Neural Networks in Continuous Speech Recognition,

doi=10.1.1.65.749&rep=rep1&type=pdf">老文章讲RNN比較基础,可是确实经典

Deep learning From Image to Sequence的更多相关文章

  1. (转) Deep Learning in a Nutshell: Core Concepts

    Deep Learning in a Nutshell: Core Concepts Share:   Posted on November 3, 2015by Tim Dettmers 7 Comm ...

  2. 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 ...

  3. Mol Cell Proteomics. | Prediction of LC-MS/MS properties of peptides from sequence by deep learning (通过深度学习技术根据肽段序列预测其LC-MS/MS谱特征) (解读人:梅占龙)

    通过深度学习技术根据肽段序列预测其LC-MS/MS谱特征 解读人:梅占龙  质谱平台 文献名:Prediction of LC-MS/MS properties of peptides from se ...

  4. 【Deep Learning】genCNN: A Convolutional Architecture for Word Sequence Prediction

    作者:Mingxuan Wang.李航,刘群 单位:华为.中科院 时间:2015 发表于:acl 2015 文章下载:http://pan.baidu.com/s/1bnBBVuJ 主要内容: 用de ...

  5. 【深度学习Deep Learning】资料大全

    最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books  by Yoshua Bengio, Ian Goodfellow and Aaron C ...

  6. (转) Awesome - Most Cited Deep Learning Papers

    转自:https://github.com/terryum/awesome-deep-learning-papers Awesome - Most Cited Deep Learning Papers ...

  7. (转) Awesome Deep Learning

    Awesome Deep Learning  Table of Contents Free Online Books Courses Videos and Lectures Papers Tutori ...

  8. Deep learning:四十九(RNN-RBM简单理解)

    前言: 本文主要是bengio的deep learning tutorial教程主页中最后一个sample:rnn-rbm in polyphonic music. 即用RNN-RBM来model复调 ...

  9. Deep Learning in a Nutshell: History and Training

    Deep Learning in a Nutshell: History and Training This series of blog posts aims to provide an intui ...

随机推荐

  1. nest expression &amp; Pyparsing

    http://pyparsing.wikispaces.com/ http://bbs.csdn.net/topics/330052586 C++ boost "<([^<> ...

  2. poj 百练 2765 八进制小数(精度问题)

    2765:八进制小数 查看 提交 统计 提示 提问 总时间限制:  1000ms  内存限制:  65536kB 描写叙述 八进制小数能够用十进制小数精确的表示.比方,八进制里面的0.75等于十进制里 ...

  3. Eclipse更改默认工作目录的方法

    参考: Eclipse更改默认工作目录的方法:http://blog.163.com/take_make/blog/static/208212210201272611406227/ 用记事本打开&qu ...

  4. 九度OnlineJudge之1020:最小长方形

    题目描述:     给定一系列2维平面点的坐标(x, y),其中x和y均为整数,要求用一个最小的长方形框将所有点框在内.长方形框的边分别平行于x和y坐标轴,点落在边上也算是被框在内. 输入:      ...

  5. linux内核系统调用--sendfile函数

    在apache,nginx,lighttpd等webserver其中,都有一项sendfile相关的配置,在一些网上的资料都有谈到sendfile会提升文件传输性能,那sendfile究竟是什么呢?它 ...

  6. Swift - 获取屏幕点击坐标下所有对象(SpriteKit游戏开发)

    对于场景内对象元件的点击响应,我们可以在场景的touchesBegan()方法中内统一处理. SKScene中touchesBegan()是响应屏幕点击的方法,在这里面我们可以先获取点击位置下所有的对 ...

  7. 百度地图SDK for Android v2.1.2全新发布

    2013年6月20日 Android SDK:V2.1.2产品上线 新增: 自定义指南针位置(类:MapController,方法:setCompassMargin) 自定义当前位置图标(类:MyLo ...

  8. Swift - 异步获取网络数据封装类

    使用NSURLConnection.sendAsynchronousRequest()可以采用异步获取的方式取得数据.下面通过对数据获取类进行封装,演示如何进行数据请求与接收. 1,HttpContr ...

  9. HDU4939Stupid Tower Defense (有思想的dp)

    Stupid Tower Defense Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Oth ...

  10. 什么是防盗链设置中的空Referer

    设置防盗链时候指明和不指明空Referer的差别及实现后的效果? 什么是Referer? 这里的 Referer 指的是HTTP头部的一个字段,也称为HTTP来源地址(HTTP Referer).用来 ...