读书笔记:Deep Learning [Ada-Computation&ML series]--chapter 14.Autoencoder
来源:互联网 发布:网络文化建设的弊端 编辑:程序博客网 时间:2024/05/27 20:11
part0.概述
1.公式:g( f(x) ) = x.
2.用途:降低维度,比同等维度的PCA的效果好;信息检索(图片或文字的),通过语意哈希
part1.欠完备autoencoder
1.定义:编码维度小于输入维度,迫使autoencoder去学习那些最显著的特征。
学习过程: 最小化损失函数 L(x, g(f(x)) )
2.与PCA的关系:如果decoder是线性的,L是mse,则欠完备的autoencoder学习的是跨度为与PCA相同的子空间。
3.欠完备autoencoder会有效,说明了如果其性能太强,则反而会学不到有效信息。
part2.正则化的autoencoder
1.目的是解决上述的性能太强的问题,但是不是依靠减小网络深度与编码大小,而是通过正则化,使得模型具有一些特性,比如稀疏性,对输入缺失或噪声的鲁棒性。即使是过完备的autoencoder通常也能学到有效信息。
2.分类:
1)sparse autoencoder:
L(x, g(f(x)) ) + Om(h), g(h)是decoder的输出,一般来说 h = f(x),是encoder的输出。
Om(h)可以看做是正则项。
与其把稀疏性的惩罚项看做对于拷贝任务的正则项,我们可以把这一套框架看做是近似求拥有隐变量的生成模型的最大似然。
假设模型有变量x,和隐变量h,且其联合分布 Pmodel(x,h) = Pmodel(h)*Pmodel(x|h)
Pmodel(h)是是模型关于h的先验分布。
因此logPmodel (x) = log(sum(Pmodel(h, x) for all h);
而
log Pmodel(x,h) = log Pmodel(h) + log Pmodel(x|h)
从log Pmodel(h)引入稀疏性。Pmodel(hi) = lamda/2 * e^(-lamda * |hi| )
可将其表示为- log Pmodel(h) = Om(h) + const
既稀疏项根本就是不是正则项,而是模型分布关于隐变量的结果。这样解释了为什么autoencoder学到的特征有效:因为它描述了能够解释输入的隐变量。
2)Denoising autoencoder
公式变成:L(x, g(f(x'))).x’是x的拷贝,但是被破坏了。这里同样做为过完备autoencoder可以work的一个例子。
从<x, x’> 来学习重建分布 P(x | x’); x’采样自C(x’ | x = x)
3)对梯度的正则化:此时Om(h,x) = lamda * sum(||the derivative of hi w.r.tx for all i || ),又叫做contractive autoencoder,压缩自动编码器。
part3.score matching
在18章中细谈。
part4.流形
1.首先假设数据集中在低维的流形中。
2.流形很重要的一个特性,叫做tangent planes.按照允许局部变化的方向跨度的d个向量基。使得沿着这些方向变化后还处于流形内。
3.有前两条得知:h(x)表达只对沿着流形的方向敏感。
4.缺点:如果流形不平滑则需要大量的样本,影响泛华性能。对于可通过插值来生成的流形比较work。复杂结构能力不够,需要深度网络和表达学习。
0 0
- 读书笔记:Deep Learning [Ada-Computation&ML series]--chapter 14.Autoencoder
- 读书笔记:Deep Learning [Ada-Computation&ML series]--chapter4.Numerical Computation
- 读书笔记:Deep Learning[Ada-Computation&ML series]--chapter15.Representation learning
- 读书笔记:Deep Learning [Ada-Computation&ML series]--chapter7.Regularization
- 读书笔记:Deep Learning [Ada-Computation&ML series]--chapter8.Optimization
- 读书笔记:Deep Learning [Ada-Computation&ML series]--chapter13.Linear factor model
- 读书笔记:Deep Learning [Ada-Computation&ML series]--chapter10.Sequence Modeling:RNN
- Deep learning:(Sparse Autoencoder)
- 【Deep Learning】1、AutoEncoder
- Deep learning:(Sparse Autoencoder练习)
- 【deep learning学习笔记】Autoencoder
- Deep learning:八【sparse autoencoder】
- Deep learning:八(Sparse Autoencoder)
- Deep learning:八(Sparse Autoencoder)
- Deep learning:八(Sparse Autoencoder)
- Deep Learning:Sparse Autoencoder练习
- Deep learning:八(Sparse Autoencoder)
- CHAPTER 6 Deep learning
- rails联系3 --预设页面的设定
- 如何打开资源后台加载
- iOS之Cookie
- 程序练习2016.10.21
- iOS使用自定义字体
- 读书笔记:Deep Learning [Ada-Computation&ML series]--chapter 14.Autoencoder
- C++ 栈和队列
- 根据照片拍摄地点对照片进行自动分类
- 选择最佳微控制器的10个步骤
- mysql绿色版安装
- linux系统ssh免密登陆集群配置
- android图片处理最in框架glide的学习
- JAVA中的动态代理和AOP编程思想
- redis3.0.6集群动态 增加节点