1.自动编码器 自动编码器首先通过下面的映射,把输入 $x\in[0,1]^{d}$映射到一个隐层 $y\in[0,1]^{d^{'}}$(编码器): $y=s(Wx+b)$ 其中 $s$ 是非线性的函数,例如sigmoid. 隐层表示 $y$ ,即编码然后被映射回(通过解码器)一个重构的 $z$,形状与输入$x$ 一样: $z=s(W^{'}y+b^{'})$ 这里 $W^{'}$ 不是表示 $W$ 的转置.$z$ 应该看作在给定编码 $y$ 的条件下对 $x$ 的预测.反向映射的权重矩阵 $…
起源:PCA.特征提取.... 随着一些奇怪的高维数据出现,比如图像.语音,传统的统计学-机器学习方法遇到了前所未有的挑战. 数据维度过高,数据单调,噪声分布广,传统方法的“数值游戏”很难奏效.数据挖掘?已然挖不出有用的东西. 为了解决高维度的问题,出现的线性学习的PCA降维方法,PCA的数学理论确实无懈可击,但是却只对线性数据效果比较好. 于是,寻求简单的.自动的.智能的特征提取方法仍然是机器学习的研究重点.比如LeCun在1998年CNN总结性论文中就概括了今后机器学习模型的基本架构. 当然…
降噪自动编码器是经典的自动编码器的一种扩展,它最初被当作深度网络的一个模块使用 [Vincent08].这篇指南中,我们首先也简单的讨论一下自动编码器. 自动编码器 文献[Bengio09] 给出了自动编码器的一个简介.在编码过程,它可以把输入$\mathbf{x} \in [0,1]^d$映射到一个隐式表达$\mathbf{y} \in [0,1]^{d'}$.映射关系定义如下: $$\mathbf{y} = s(\mathbf{W}\mathbf{x} + \mathbf{b})$$ 其中,…
1.1 自动编码器  自动编码器(AutoEncoder,AE)就是一种尽可能复现输入信号的神经网络,其输出向量与输入向量同维,常按照输入向量的某种形式,通过隐层学习一个数据的表示或对原始数据进行有效编码.值得注意的是,这种自编码器是一种不利用类标签的非线性特征提取方法, 就方法本身而言, 这种特征提取的目的在于保留和获得更好的信息表示, 而不是执行分类任务,尽管有时这两个目标是相关的!   一个典型的最简单的自动编码器拥有一个表示原始数据或者输入特征向量的输入层,一个表示特征转换的隐层和一个跟…
特别棒的一篇文章,仍不住转一下,留着以后需要时阅读 基于Theano的深度学习(Deep Learning)框架Keras学习随笔-01-FAQ…
https://blog.csdn.net/a819825294/article/details/51334397 1.介绍 Keras是基于Theano的一个深度学习框架,它的设计参考了Torch,用Python语言编写,是一个高度模块化的神经网络库,支持GPU和CPU.keras官方文档地址 地址 2.流程 先使用CNN进行训练,利用Theano函数将CNN全连接层的值取出来,给SVM进行训练 3.结果示例 因为这里只是一个演示keras&SVM的demo,未对参数进行过多的尝试,结果一般…
Link:https://github.com/neopenx/Dragon 起因 最近看了Hinton的Dropout,发现原来的乱代码只能在Softmax层前面加Dropout.索性把整个Theano封装了一遍了. 瞄了几眼Github上的Theano的另外一个封装Keras,然后按照自己风格手写了(看别人源码头疼) Theano目前真是日薄西山了.Bengio做出了之后就不管了.直接去搞Pylearn2了 关键是Pylearn2还没有Caffe友好,CVPR15上,Caffe还展开了铺天盖…
catalogue . 引言 . 一些基本概念 . Sequential模型 . 泛型模型 . 常用层 . 卷积层 . 池化层 . 递归层Recurrent . 嵌入层 Embedding 1. 引言 Keras是一个高层神经网络库,Keras由纯Python编写而成并基Tensorflow或Theano 简易和快速的原型设计(keras具有高度模块化,极简,和可扩充特性) 支持CNN和RNN,或二者的结合 支持任意的链接方案(包括多输入和多输出训练) 无缝CPU和GPU切换 0x1: Kera…
在Hinton的教程中, 使用Python的theano库搭建的CNN是其中重要一环, 而其中的所谓的SGD - stochastic gradient descend算法又是如何实现的呢? 看下面源码 (篇幅考虑只取测试模型函数, 训练函数只是多了一个updates参数, 并且部分参数有改动): classifier = LogisticRegression(input=x, n_in=24 * 48, n_out=32) cost = classifier.negative_log_like…
使用了两个卷积层.一个全连接层和一个softmax分类器. 在测试数据集上正确率可以达到99.22%. 代码参考了neural-networks-and-deep-learning #coding:utf8 import cPickle import numpy as np import theano import theano.tensor as T from theano.tensor.nnet import conv from theano.tensor.nnet import softm…