Autoencoder
主要包括自编码器及其变形的理论+实践。
PDF整理
PDF来源于本人的理解+整理,部分图片来源于网上,已有标注,PDF对应博客详见:https://blog.csdn.net/quiet_girl/article/details/84401029 。
因时间原因,代码中epoch设置的较小,实际状况下,肯定要更大。
主要内容
暂时代码包括普通自编码器(Autoencoder.py)、栈式自编码器(StackAutoencoder)、稀疏自编码器(SparseAutoencoder.py)和去噪自编码器(DenoisingAutoencoder.py)的简单实现,代码每一步都有注释。
关于收缩自编码器、变分自编码器、CNN自编码器等后更。
- 基于框架:Keras2.0.4
- 数据集:Mnist
具体设置等请参见代码或者博客
代码运行结果:
1、普通自编码器:
- 简单自动编码器架构图
- Encoder层输出结果可视化
- Autoencoder生成图片和原图片对比
2、栈式自编码器:
- 栈式自动编码器架构图
- Encoder层输出结果可视化
- Stack Autoencoder生成图片和原图片对比
3、稀疏自编码器:
- 稀疏自动编码器架构图
- Encoder层输出结果可视化
- Sparse Autoencoder生成图片和原图片对比
4、去噪自编码器:
- 去噪自动编码器架构图
- Encoder层输出结果可视化
- Denoising Autoencoder原图片和添加噪声后图片对比
- Denoising Autoencoder生成图片和原图片对比
5、卷积自编码器:
- 卷积自动编码器架构图
- Convolutional Autoencoder生成图片和原图片对比
- Convolutional Autoencoder训练accuracy和loss变化图