乔丹教授(Michael I. Jordan)教授是机器学习领域神经网络的大牛,他对深度学习、神经网络有着很浓厚的兴趣。因此,很多提问的问题中包含了机器学习领域的各类模型,乔丹教授对此一一做了解释和展望。首先被提到的就是经典的贝叶斯非参数模型。今年暑假,乔丹教授在Como开设了贝叶斯非参数模型的课程...
分类:
其他好文 时间:
2014-10-10 13:52:04
阅读次数:
169
1简介为了理解复杂的数据,人们提出了分层特征提取概念。著名的算法之一是2006年Hinton提出的DeepBeliefNetwork(DBN)。随着训练深层结构的成功,人们又提出了许多深度学习的变体。尽管这些多层算法产生了多层方法在特征提取和提供对复杂问题的有效方法,但并没有告诉我们通过..
分类:
其他好文 时间:
2014-10-05 23:58:49
阅读次数:
344
通常来说,大家认为深度学习的观点是Geoffrey Hinton在2006年提出的。这一算法提出之后,得到了迅速的发展。关于深度学习,zouxy09的专栏中有详细的介绍,Free Mind 的博文也很值得一读。本博文是我对深度学习的一点看法,主要内容在第4、5部分,不当之处还请指教。1.深度学习 深...
分类:
其他好文 时间:
2014-09-22 16:23:42
阅读次数:
201
Training Products of Experts by Minimizing Contrastive Divergence(以下简称 PoE)是 DBN 和深度学习理论的 肇始之篇,最近在爬梳和学习 RBM 的相关知识时,发 现训练 RBM 时使用的对比散度算法在各种中英文资料 中都不甚详解...
分类:
其他好文 时间:
2014-09-15 14:19:08
阅读次数:
270
载入与保存
Python标准的保存类别实体并重新载入它们的途径是pickle机制。许多Theano对象可以由此被序列化(或者反序列化),然而pickle的局限性在于,被序列化的类别实例的代码或者数据并没有被同时保存。因此重新载入先前版本的类可能会出问题。
因此,需要寻求基于预期保存和重新载入的耗时的不同机制。
对于短期(比如临时文件和网络转录),Theano的pickle是可行的。
对于长...
分类:
其他好文 时间:
2014-09-04 23:45:41
阅读次数:
568
深度学习的实质,是通过构建具有很多隐层的机器学习模型和海量的训练数据,来学习更有用的特征,从而最终提升分类或预测的准确性。因此,“深度模型”是手段,“特征学习”是目的。区别于传统的浅层学习,深度学习的不同在于:1)强调了模型结构的深度,通常有5层、6层,甚至10多层的隐层节点;2)明确突出了特征学习...
分类:
其他好文 时间:
2014-09-03 19:40:57
阅读次数:
234
关于深度学习的一些个人浅见:
深度学习通常是训练深度(多层)神经网络,用于模式识别(如语音、图像识别);深度网络 指是具有深层(多层)网络结构的神经网络。
深层网络由于神经元多,参数多,拟合表现能力强,有表现欲解决复杂问题的能力。
但是深度网络存在很多局部最优解,深度网络的训练容易停留在局部最优上,初始参数的选择对网络最终收敛在那个位置有很大的影响。...
分类:
数据库 时间:
2014-09-03 11:18:46
阅读次数:
2523
配置
config模块包含了各种用于修改Theano的属性。在Theano导入时,许多属性都会被检查,而有些属性是只读模式。
一般约定,在用户代码内部config模块的属性不应当被修改。
Theano的这些属性都有默认值,但是你也可以在你的.theanorc文件里面修改,并且使用THEANO_FLAGS的环境变量进行修改。
优先顺序是:
1. theano.config.的赋值
2. ...
分类:
其他好文 时间:
2014-09-02 19:56:15
阅读次数:
447
导数使用T.grad计算。
这里使用pp()打印梯度的符号表达式。
第3行输出是打印了经过优化器简化的符号梯度表达式,与第1个输出相比确实简单多了。
fill((x** TensorConstant{2}), TensorConstant{1.0})指创建一个x**2大小的矩阵,并填充1。
importtheano.tensor as T
fromtheano import pp
fr...
分类:
其他好文 时间:
2014-08-29 20:10:08
阅读次数:
338
图结构(Graph Structures)是了解Theano内在工作原理的基础。
Theano编程的核心是用符号占位符把数学关系表示出来。
图结构的组成部分
如图实现了这段代码:
importtheano.tensor as T
x= T.matrix('x')
y= T.matrix('y')
z= x + y
变量节点(variable nodes)
红色表示...
分类:
其他好文 时间:
2014-08-29 11:04:07
阅读次数:
323