读书笔记:Deep Learning [Ada-Computation&ML series]--chapter 14.Autoencoder

本文详细介绍了自编码器的原理和应用,包括欠完备自编码器如何学习显著特征,正则化的自编码器如稀疏自编码器、去噪自编码器在处理噪声和输入缺失时的优势,以及合同自编码器的概念。同时,文章讨论了数据集可能集中在低维流形中的假设,并解释了流形学习的重要性及其局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


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.t x  for all || ),又叫做contractive autoencoder,压缩自动编码器。

part3.score matching
在18章中细谈。

part4.流形
1.首先假设数据集中在低维的流形中。
2.流形很重要的一个特性,叫做tangent planes.按照允许局部变化的方向跨度的d个向量基。使得沿着这些方向变化后还处于流形内。
3.有前两条得知:h(x)表达只对沿着流形的方向敏感。
4.缺点:如果流形不平滑则需要大量的样本,影响泛华性能。对于可通过插值来生成的流形比较work。复杂结构能力不够,需要深度网络和表达学习。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值