深度学习笔记(五) 栈式自编码器

部分内容来自:http://ufldl.stanford.edu/wiki/index.php/%E6%A0%88%E5%BC%8F%E8%87%AA%E7%BC%96%E7%A0%81%E7%AE%97%E6%B3%95

栈式自编码神经网络是一个由多层稀疏自编码器组成的神经网络,其前一层自编码器的输出作为其后一层自编码器的输入。对于一个  层栈式自编码的编码过程就是,按照从前向后的顺序执行每一层自编码器的编码步骤。

自编码器的隐含层t会作为t+1层的输入层,第一个输入层就是整个神经网络的输入层,利用贪心算法训练每一层的步骤如下:

1)首先采用稀疏自编码网络,先训练从输入层到H1层的参数:

训练完毕后,我们去除解码层,只留下从输入层到隐藏层的编码阶段。

2)接着我们训练从H1到H2的参数

我们把无标签数据的H1层神经元的激活值,作为H2层的输入层,然后在进行自编码训练:

最后训练完毕后,再去除H2层的解码层。

3)对所有层重复1)和2),即移除前面自编码器的输出层,用另一个自编码器代替,再用反向传播进行训练。

4)以上步骤称为预训练,但是通过这个训练并没有得到一个从输入数据到输出标记的映射,通常的办法是在网络的最后一层增加一个或多个连接层,整个网络可以看做是一个多层感知机,并用反向传播的方式进行训练,这一步也被称为微调。

时间: 2024-11-05 13:27:36

深度学习笔记(五) 栈式自编码器的相关文章

深度学习笔记(五):LSTM

深度学习笔记(一):logistic分类 深度学习笔记(二):简单神经网络,后向传播算法及实现 深度学习笔记(三):激活函数和损失函数 深度学习笔记(四):循环神经网络的概念,结构和代码注释 深度学习笔记(五):LSTM 看到一篇讲LSTM非常清晰的文章,原文来自Understanding LSTM Networks , 译文来自理解LSTM网络 Recurrent Neural Networks 人类并不是每时每刻都从一片空白的大脑开始他们的思考.在你阅读这篇文章时候,你都是基于自己已经拥有的

Android第一行代码学习笔记五---隐式Itent启动其它程序的活动

使用隐式Itent,不仅可以启动自己程序的活动,还可以启动其它程序的活动,这使得android多个应用程序之间的功能共享成为了可能,比如你的应用程序中需要展示一个网页,这时你没必要自己去实现一个浏览器,只需要调用系统的浏览器来打开这个网页就行了.修改firstActivity中点击按钮事件的代码,如下: button.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { Intent in

降噪自编码器/稀疏自编码器/栈式自编码器

漫谈autoencoder:降噪自编码器/稀疏自编码器/栈式自编码器(含tensorflow实现) 2018年08月11日 20:45:14 wblgers1234 阅读数 13196更多 分类专栏: 机器学习 深度学习 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/wblgers1234/article/details/81545079 0. 前言   在非监督学习中,最典型的一类神经

NLTK学习笔记(五):分类和标注词汇

[TOC] 词性标注器 之后的很多工作都需要标注完的词汇.nltk自带英文标注器pos_tag import nltk text = nltk.word_tokenize("And now for something compleyely difference") print(text) print(nltk.pos_tag(text)) 标注语料库 表示已经标注的标识符:nltk.tag.str2tuple('word/类型') text = "The/AT grand/J

Linux System Programming 学习笔记(五) 进程管理

1. 进程是unix系统中两个最重要的基础抽象之一(另一个是文件) A process is a running program A thread is the unit of activity inside of a process the virtualization of memory is associated with the process, the threads all share the same memory address space 2. pid The idle pro

jQuery源码学习笔记五 六 七 八 转

jQuery源码学习笔记五 六 七 八 转 Js代码   <p>在正式深入jQuery的核心功能选择器之前,还有一些方法,基本都是数组方法,用于遴选更具体的需求,如获得某个元素的所有祖选元素啦,等等.接着是其缓存机制data.</p> <pre class="brush:javascript;gutter:false;toolbar:false"> //@author  司徒正美|なさみ|cheng http://www.cnblogs.com/ru

Caliburn.Micro学习笔记(五)----协同IResult

Caliburn.Micro学习笔记(五)----协同IResult 今天说一下协同IResult 看一下IResult接口 /// <summary> /// Allows custom code to execute after the return of a action. /// </summary> public interface IResult { /// <summary> /// Executes the result using the specif

秦涛:深度学习的五个挑战和其解决方案

深度学习的五个挑战和其解决方案 编者按:日前,微软亚洲研究院主管研究员秦涛博士受邀作客钛媒体,分享他对深度学习挑战和解决方案的思考 ,本文为秦涛博士在此次分享的实录整理. 大家好,我是微软亚洲研究院的秦涛,今天我将分享我们组对深度学习这个领域的一些思考,以及我们最近的一些研究工作.欢迎大家一起交流讨论. 先介绍一下我所在的机器学习组.微软亚洲研究院机器学习组研究的重点是机器学习,包含机器学习的各个主要方向,从底层的深度学习分布式机器学习平台(AI的Infrastructure)到中层的深度学习.

angular学习笔记(五)-阶乘计算实例(1)

<!DOCTYPE html> <html ng-app> <head> <title>2.3.2计算阶乘实例1</title> <meta charset="utf-8"> <script src="../angular.js"></script> <script src="script.js"></script> </

深度学习笔记1(卷积神经网络)

深度学习笔记1(卷积神经网络) 在看完了UFLDL教程之后,决定趁热打铁,继续深度学习的学习,主要想讲点卷积神经网络,卷积神经网络是深度学习的模型之一,还有其它如AutoEncoding.Deep Belief Network.Restricted Boltzmann Machine和sparse coding等. 在UFLDL教程中提到了针对大型图像的处理,使用卷积和池化的概念.原因主要对于全连接网络,需要的参数就有很多.比如对于一副1000*1000的图像,hidden layer也为100