这几个ppt都是在微博上看到的,是百度的一个员工整理的。

《Deep Belief Nets》,31页的一个ppt

1. 相关背景

还是在说deep learning好啦,如特征表示云云。列了一些参考文献,关于deep learning训练的,还不错。

2. 基本概念

两种产生式神经网络:(1)sigmod belief network;(2)Boltzmann Machine

多个概率密度模型如何融合?

(1)mixture:就是加权平均

(2)product:乘积

(3)composition:将一层的输入作为下一层的输出,layerwise的训练。这是软件工程中设计模式的概念,不知道是不是有义套用到这里的。

介绍了下DBN的结构和训练

3. 训练过程

pre-training, fine-tuning, bp

rbm 的 layerwise训练

4. 背后的故事

sigmod DBN 等价于RBM,原话是“An infinite sigmoid belief net that is equivalent to an RBM”。不过RBM学习过程更加简单。

为什么layerwise的训练work?公式推导一大堆,总之,提升了Log-likelihood目标函数的下界。

《Restricted Boltzmann Machine(RBM) 受限波尔兹曼机》,作者写了27页。

1. 背景介绍

(1)随机神经网络:

确定性神经网络:即通常意义的神经网络+bp算法

随机神经网路:按照某种分布修改神经网络的权值,与模拟退火算法相结合,摆脱局部最优。

模拟退火算法应用于BP算法
1. 初始化温度T(0),t0,随机初始化权值w
0;
2. 应用BP算法搜索局部最优解w(t),计算最优解目标函数值E(t);
3. 随机修正权值w’(t) = w(t) + △w,计算修正后的目标函数值
E’(t);
4. 若E’(t)< E(t),则确认修改,w(t)=w’(t),E(t)=E’(t);
5. 否则依据概率P = exp(-{E’(t) - E(t)}/T(t))确认修改;
6. 温度下降:t=t+1,T(t) = T(0)/[1+ln(t+100)],如4,5步确认修改,
转移到2,否则转移到3,直到温度下降到一定阈值为止

(2)波尔兹曼器简介

两点:1. 是随机神经网络;2. 只有两个层,隐含层和显示层,组成一个全连通图(节点之间两两互联)

定义能量函数、概率密度、分布估计

2. 受限波尔兹曼机(Restricted Boltzmann Machine,RBM)

拓扑结构的变化:隐含层和显示层层内的节点相互没有联系

参数:显层节点权重b,隐层节点权重c,两层连接权重矩阵W

定义能量函数、概率密度、分布估计等

条件独立性:给定一层(无论是隐含层还是显示层),另一层的节点条件概率相互独立。

RBM的求解:似然函数、随机梯度下降,关键是梯度如何计算。这里有一大坨公式。

如果精确计算的话,归一化因子的计算量太大。考虑用Gibbs抽样。还可以用Contrastive Divergency。

ppt接下来介绍Markov Chain,且RBM的训练满足Markov Chain的“平稳性”。没细看,我理解为layerwise training的合理性说明。

RBM求解总结:1. 计算梯度;2. 算法随机性表现在抽样随机。

《Contrastive divergence for boltzmann machines》,13页,作者没写完。

总体思路:BM->Gibbs sampling -> CD

tmd全都是公式,没啥可写的。

【deep learning学习笔记】最近读的几个ppt(四)的更多相关文章

  1. 【deep learning学习笔记】注释yusugomori的DA代码 --- dA.h

    DA就是“Denoising Autoencoders”的缩写.继续给yusugomori做注释,边注释边学习.看了一些DA的材料,基本上都在前面“转载”了.学习中间总有个疑问:DA和RBM到底啥区别 ...

  2. [置顶] Deep Learning 学习笔记

    一.文章来由 好久没写原创博客了,一直处于学习新知识的阶段.来新加坡也有一个星期,搞定签证.入学等杂事之后,今天上午与导师确定了接下来的研究任务,我平时基本也是把博客当作联机版的云笔记~~如果有写的不 ...

  3. Deep Learning 学习笔记(8):自编码器( Autoencoders )

    之前的笔记,算不上是 Deep Learning, 只是为理解Deep Learning 而需要学习的基础知识, 从下面开始,我会把我学习UFDL的笔记写出来 #主要是给自己用的,所以其他人不一定看得 ...

  4. 【deep learning学习笔记】Recommending music on Spotify with deep learning

    主要内容: Spotify是个类似酷我音乐的音乐站点.做个性化音乐推荐和音乐消费.作者利用deep learning结合协同过滤来做音乐推荐. 详细内容: 1. 协同过滤 基本原理:某两个用户听的歌曲 ...

  5. 【deep learning学习笔记】注释yusugomori的RBM代码 --- 头文件

    百度了半天yusugomori,也不知道他是谁.不过这位老兄写了deep learning的代码,包括RBM.逻辑回归.DBN.autoencoder等,实现语言包括c.c++.java.python ...

  6. Neural Networks and Deep Learning学习笔记ch1 - 神经网络

    近期開始看一些深度学习的资料.想学习一下深度学习的基础知识.找到了一个比較好的tutorial,Neural Networks and Deep Learning,认真看完了之后觉得收获还是非常多的. ...

  7. paper 149:Deep Learning 学习笔记(一)

     1. 直接上手篇 台湾李宏毅教授写的,<1天搞懂深度学习> slideshare的链接: http://www.slideshare.net/tw_dsconf/ss-62245351? ...

  8. Deep Learning 学习笔记——第9章

    总览: 本章所讲的知识点包括>>>> 1.描述卷积操作 2.解释使用卷积的原因 3.描述pooling操作 4.卷积在实践应用中的变化形式 5.卷积如何适应输入数据 6.CNN ...

  9. 【Deep Learning学习笔记】Dynamic Auto-Encoders for Semantic Indexing_Mirowski_NIPS2010

    发表于NIPS2010 workshop on deep learning的一篇文章,看得半懂. 主要内容: 是针对文本表示的一种方法.文本表示可以进一步应用在文本分类和信息检索上面.通常,一篇文章表 ...

随机推荐

  1. 三星GT-S7572换屏幕教程

    家里人手机被摔坏了,尽管不是什么值钱的手机.可是自从上了大学之后,就一直认为赚钱真的非常不easy,不到逼不得已,就不要乱花钱.于是,就从淘宝上买了外屏.以下是我在淘宝上的链接:点击打开链接.好不ea ...

  2. 真懂JavaScript吗

    你真懂JavaScript http://www.cnblogs.com/elegance/p/4195593.html 看了汤姆大叔的“你真懂JavaScript吗?”,里面有5道题目,我都一一作了 ...

  3. 日志分析工具-ApexSQL介绍

    原文:日志分析工具-ApexSQL介绍 使用场景:业务数据异常变化,通过代码分析不出来的时候,迫不得已需要通过日志来分析 下载地址:http://www.apexsql.com/Download.as ...

  4. 地图坐标Base64转换数字坐标

    测试地图源码==百读Demo<html> <head> </head> <body> <script type="text/javasc ...

  5. SQL Server 2008 允许远程链接,适用于广域网和局域网

    用户在使用SQL Server 2008远程链接时,可能会弹出如下对话框: 在链接SQL服务器时发生网络链接错误或特定实例错误.SQL服务器不存在或者链接不成功.请验证用户名是否正确或SQL服务器是否 ...

  6. TodoList开发笔记 – Part Ⅱ

    上一节给出了应用的两个主要UML类图,应用采用的技术也给出了,这一节开始实际设计编码 一.应用公开的方法 其实就几个的方法而已 1.代办事项的CRUD 2.代办事项归类目录的CRUD 3.代表事项“已 ...

  7. Smarty属性

    Attributes [属性] 大多数函数都带有自己的属性以便于明确说明或者修改他们的行为.  smarty函数的属性很像HTML中的属性.  静态数值不需要加引号,但是字符串建议使用引号.  如果用 ...

  8. 前后端分离之Web前端架构设计

    架构设计:前后端分离之Web前端架构设计 在前面的文章里我谈到了前后端分离的一些看法,这个看法是从宏观的角度来思考的,没有具体的落地实现,今天我将延续上篇文章的主题,从纯前端的架构设计角度谈谈前后端分 ...

  9. Asp.Net MVC5入门学习

    添加一个Controller(控制器) 因为我们用的是Asp.Net MVC,MVC最终还是一套框架,所以我们还是需要遵循它才能玩下去,或者说是更好的利用来便于我们的开发,要是对MVC概念还有点模糊的 ...

  10. 个推 Spark实践教你绕过开发那些“坑”

    Spark作为一个开源数据处理框架,它在数据计算过程中把中间数据直接缓存到内存里,能大大提高处理速度,特别是复杂的迭代计算.Spark主要包括SparkSQL,SparkStreaming,Spark ...