autoencoder pytorch_AutoEncoder: 稀疏自动编码器 Sparse_AutoEncoder

本文介绍了稀疏自动编码器(SAE)的基本概念和原理,强调在普通AE基础上通过引入KL散度惩罚隐藏层激活值,使其更接近0,实现神经元的稀疏性。内容包括KL散度的解释及其在损失函数中的应用,以及如何在PyTorch中实现KL散度的计算和训练过程。
摘要由CSDN通过智能技术生成

AutoEncoder: 稀疏自动编码器 Sparse_AutoEncoder


本文为系列文章AutoEncoder第三篇.AutoEncoder对几种主要的自动编码器进行介绍,并使用PyTorch进行实践,相关完整代码将同步到Github
本系列主要为记录自身学习历程,并分享给有需要的人.水平所限,错误难免,欢迎批评指正,不吝赐教.
本文及本系列将不定期更新.

AutoEncoder:

  • 自动编码器 AE
  • 堆叠自动编码器 Stacked AutoEncoder
  • 稀疏自动编码器 Sparse AutoEncoder
  • 降噪自动编码器 Denoising AutoEncoder
  • 变分自动编码器 Variational AutoEncoder
  • CAE

本文主要包含一下内容:

稀疏自动编码器的基本概念,原理,并使用MNIST数据集进行实现
写在前面:推荐一篇斯坦福Andrew Ng的CS294A Lecture notes, 对神经网络,SAE以及KL等都有很好的讲解,本文很多内容来源于此.

1. 基本概念

稀疏自动编码器(SAE)其实就是在普通autoencoder的基础上增加了稀疏的约束,使得神经网络在隐藏层神经元较多的情况下依然能够提取样本的特征和结构.

且该稀疏性penalty是用来惩罚隐藏层激活输出值的,而不是输出层的输出.

关于稀疏的解释:
    当神经元的的输出接近激活函数上限时(例如对于Sigmoid为1)称该神经元状态为激活,反之当神经元的输出接近激活函数的下限时称该神
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值