DeepLearning笔记-自编码网络
来源:互联网 发布:shopinfo.php 漏洞 编辑:程序博客网 时间:2024/06/06 00:14
- 欠完备自编码器
- 正则自编码器
- 1 稀疏自编码器
- 2 去噪自编码器
- 3 惩罚导数作为正则
- Reference
自编码器是神经网络的一种,是一种无监督学习方法,使用了反向传播算法,目标是使输出=输入。 自编码器内部有隐藏层 ,可以产生编码表示输入。1986 年Rumelhart 提出。
自编码器主要作用在于通过复现输出而捕捉可以代表输入的重要因素,利用中间隐层对输入的压缩表达,达到像PCA那样的找到原始信息主成分的效果。
传统自编码器被用于降维或特征学习。 近年来,自编码器与潜变量模型理论的联系将自编码器带到了生成式建模的前沿。
下图是一个自编码网络的例子,对于输入
1. 欠完备自编码器
简单而言就是我们不关心输出,而是中间多特征的压缩表达,所以会限制中间层维度小于输入输出,这种编码维度小于输入维度的自编码器称为欠完备自编码器。
设定的损失函数为:
其中
2. 正则自编码器
在欠完备自编码器我们限制了隐层维度小于输入,而当隐层维度等于或者大于输入的时候,整个网络可能或直接学习到了恒等复制。
这个时候正则编码器就是在这种隐层维度比输入高的情况,使用的损失函数可以鼓励模型学习其他特性(除了将输入复制到输出),而不必限制使用浅层的编码器和解码器以及小的编码维数来限制模型的容量。
这个时候就可以根据要建模的数据分布的复杂性,选择合适的编码维数和编码器、解码器容量,就可以成功训练任意架构的自编码器。
2.1 稀疏自编码器
稀疏自编码器简单地在训练时结合编码层的稀疏惩罚
其中
将惩罚项
2.2 去噪自编码器
去噪自编码从改变重构误差入手,先看看公式:
其中
从上面公式我们可以看出,去噪自编码网络的输入是带有噪声的样本,学习目标是原始无噪样本,通过模型的学习可以达到消除输入噪声的效果,具体见我的下一篇帖子。
实现的一个例子:去噪自编码网络-python keras实现
2.3 惩罚导数作为正则
正则化自编码器的另一个策略是使用一个类似稀疏自编码器中的惩罚项
而其中:
这迫使模型学习一个在
这样正则化的自编码器被称为收缩自编码器。
Reference
- 自编码算法与稀疏性
- 自编码器
- DeepLearning笔记-自编码网络
- deeplearning系列(二)自编码神经网络
- DeepLearning 笔记
- RNN与自编码网络
- 【UFLDL】稀疏自编码网络
- 深度堆栈自编码网络
- DeepLearning(二) 自编码算法与稀疏性理解与实战
- DeepLearning(二) 自编码算法与稀疏性理解与实战
- DeepLearning (四) 基于自编码算法与softmax回归的手写数字识别
- 稀疏自编码http://deeplearning.stanford.edu/wiki/index.php/Exercise:Sparse_Autoencoder#Results
- 网络编码学习笔记
- AI笔记-1-自编码
- deeplearning 学习笔记
- Deeplearning 笔记1
- TensorFlow1.1搭建自编码网络
- 自编码网络与时间信号分解
- Udacity DEEPLEARNING 学习笔记 L1 Mechine Learning to DeepLearning
- deeplearning
- python中的死锁
- 图论--最小费用最大流(MCMF)
- leetcode: 79 Word Search
- JAVA多线程基础
- Web服务器和API接口服务器心跳检查
- DeepLearning笔记-自编码网络
- 零碎的知识点
- Android学习笔记18-聊聊Handler
- Tomcat+Servlet保存Cookie到浏览器
- Java中Class.getXXX()和Class.getDeclaredXXX()的区别
- python中解决死锁的方法
- mysql的优化方法,自己总结的
- 图的广度优先搜索--python实现
- arg_scope 解读