摘要: 前言: CNN作为DL中最成功的模型之一,有必要对其更进一步研究它。虽然在前面的博文Stacked CNN简单介绍中有大概介绍过CNN的使用,不过那是有个前提的:CNN中的参数必须已提前学习好。而本文的主要目的是介绍CNN参数在使用bp算法时该怎么训练,毕竟CNN中有卷积层和下采样层,虽然和MLP的 阅读全文
posted @ 2018-01-26 20:37 北方客888 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 深度网络结构是由多个单层网络叠加而成的,而常见的单层网络按照编码解码情况可以分为下面3类: 既有encoder部分也有decoder部分:比如常见的RBM系列(由RBM可构成的DBM, DBN等),autoencoder系列(以及由其扩展的sparse autoencoder, denoise au 阅读全文
posted @ 2018-01-26 20:36 北方客888 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 前言: 本文主要是bengio的deep learning tutorial教程主页中最后一个sample:rnn-rbm in polyphonic music. 即用RNN-RBM来model复调音乐,训练过程中采用的是midi格式的音频文件,接着用建好的model来产生复调音乐。对音乐建模的难 阅读全文
posted @ 2018-01-26 20:35 北方客888 阅读(280) 评论(0) 推荐(0) 编辑
摘要: Contractive autoencoder是autoencoder的一个变种,其实就是在autoencoder上加入了一个规则项,它简称CAE(对应中文翻译为?)。通常情况下,对权值进行惩罚后的autoencoder数学表达形式为: 这是直接对W的值进行惩罚的,而今天要讲的CAE其数学表达式同样 阅读全文
posted @ 2018-01-26 20:33 北方客888 阅读(373) 评论(0) 推荐(0) 编辑
摘要: CNN中卷积完后有个步骤叫pooling, 在ICLR2013上,作者Zeiler提出了另一种pooling手段(最常见的就是mean-pooling和max-pooling),叫stochastic pooling,在他的文章还给出了效果稍差点的probability weighted pooli 阅读全文
posted @ 2018-01-26 20:32 北方客888 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 和maxout(maxout简单理解)一样,DropConnect也是在ICML2013上发表的,同样也是为了提高Deep Network的泛化能力的,两者都号称是对Dropout(Dropout简单理解)的改进。 我们知道,Dropout是在训练过程中以一定概率1-p将隐含层节点的输出值清0,而用 阅读全文
posted @ 2018-01-26 20:31 北方客888 阅读(158) 评论(0) 推荐(0) 编辑
摘要: maxout出现在ICML2013上,作者Goodfellow将maxout和dropout结合后,号称在MNIST, CIFAR-10, CIFAR-100, SVHN这4个数据上都取得了start-of-art的识别率。 从论文中可以看出,maxout其实一种激发函数形式。通常情况下,如果激发函 阅读全文
posted @ 2018-01-26 20:30 北方客888 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 前言: 听说Pylearn2是个蛮适合搞深度学习的库,它建立在Theano之上,支持GPU(估计得以后工作才玩这个,现在木有这个硬件条件)运算,由DL大牛Bengio小组弄出来的,再加上Pylearn2里面已经集成了一部分常见的DL算法,本着很想读读这些算法的源码和细节这一想法,打算学习下Pylea 阅读全文
posted @ 2018-01-26 20:29 北方客888 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 目前,深度网络(Deep Nets)权值训练的主流方法还是梯度下降法(结合BP算法),当然在此之前可以用无监督的方法(比如说RBM,Autoencoder)来预训练参数的权值,而梯度下降法应用在深度网络中的一个缺点是权值的迭代变化值会很小,很容易收敛到的局部最优点;另一个缺点是梯度下降法不能很好的处 阅读全文
posted @ 2018-01-26 20:28 北方客888 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 前言: 当采用无监督的方法分层预训练深度网络的权值时,为了学习到较鲁棒的特征,可以在网络的可视层(即数据的输入层)引入随机噪声,这种方法称为Denoise Autoencoder(简称dAE),由Bengio在08年提出,见其文章Extracting and composing robust fea 阅读全文
posted @ 2018-01-26 20:27 北方客888 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 前言 训练神经网络模型时,如果训练样本较少,为了防止模型过拟合,Dropout可以作为一种trikc供选择。Dropout是hintion最近2年提出的,源于其文章Improving neural networks by preventing co-adaptation of feature det 阅读全文
posted @ 2018-01-26 20:26 北方客888 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 前言: 本次主要是练习下ICA模型,关于ICA模型的理论知识可以参考前面的博文:Deep learning:三十三(ICA模型)。本次实验的内容和步骤可以是参考UFLDL上的教程:Exercise:Independent Component Analysis。本次实验完成的内容和前面的很多练习类似, 阅读全文
posted @ 2018-01-26 20:25 北方客888 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 前言: 本节主要是来简单介绍下stacked CNN(深度卷积网络),起源于本人在构建SAE网络时的一点困惑:见Deep learning:三十六(关于构建深度卷积SAE网络的一点困惑)。因为有时候针对大图片进行recognition时,需要用到无监督学习的方法去pre-training(预训练)s 阅读全文
posted @ 2018-01-26 20:24 北方客888 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 内容: 本文主要是参考论文:On optimization methods for deep learning,文章内容主要是笔记SGD(随机梯度下降),LBFGS(受限的BFGS),CG(共轭梯度法)三种常见优化算法的在deep learning体系中的性能。下面是一些读完的笔记。 SGD优点:实 阅读全文
posted @ 2018-01-26 20:23 北方客888 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 前言: 本文是针对上篇博文Deep learning:三十四(用NN实现数据的降维)的练习部分,也就是Hition大牛science文章reducing the dimensionality of data with neural networks的code部分,其code下载见:http://ww 阅读全文
posted @ 2018-01-26 20:22 北方客888 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 前言: 最近一直在思考,如果我使用SCSAE(即stacked convolution sparse autoendoer)算法来训练一个的deep model的话,其网络的第二层开始后续所有网络层的训练数据从哪里来呢?其实如果在这个问题中,当我们的样本大小(指提供的最原始数据,比如大的图片集)和我 阅读全文
posted @ 2018-01-26 20:22 北方客888 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 数据降维的重要性就不必说了,而用NN(神经网络)来对数据进行大量的降维是从2006开始的,这起源于2006年science上的一篇文章:reducing the dimensionality of data with neural networks,作者就是鼎鼎有名的Hinton,这篇文章也标志着d 阅读全文
posted @ 2018-01-26 20:21 北方客888 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 基础知识: 在sparse coding(可参考Deep learning:二十六(Sparse coding简单理解),Deep learning:二十九(Sparse coding练习))模型中,学习到的基是超完备集的,也就是说基集中基的个数比数据的维数还要大,那么对一个数据而言,将其分解为基的 阅读全文
posted @ 2018-01-26 20:20 北方客888 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 前言: 本次主要是重新复习下Sparse autoencoder基础知识,并且加入点自己的理解。关于sparse autoencoder在前面的博文Deep learning:八(Sparse Autoencoder)中已有所介绍。 基础知识: 首先来看看为什么sparse autoencoder能 阅读全文
posted @ 2018-01-26 20:19 北方客888 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 前言: 本节主要是来练习下在machine learning(不仅仅是deep learning)设计前的一些数据预处理步骤,关于数据预处理的一些基本要点在前面的博文Deep learning:三十(关于数据预处理的相关技巧)中已有所介绍,无非就是数据的归一化和数据的白化,而数据的归一化又分为尺度归 阅读全文
posted @ 2018-01-26 20:18 北方客888 阅读(150) 评论(0) 推荐(0) 编辑