今天开始学习GAN啦,首先今天学习的是自编码器,自编码器最早是用于数据压缩的一种算法
个人对自编码器的理解是:自编码器就是将高维度的数据压缩到低维度并且能够尽可能还原回去。
其他的机器学习算法可以看出学习一个f(x)能够使得输入x,输出y尽可能等于标签
x => f(x) = y
而自编码器则是输入x,输出也尽可能等于x
x => f(x) = x
自编码器除了数据降维以外,可以用于生成数据。
先是按照书中编写了一个多层全连接网络来实现自编码器,将28*28的数字手写图片将维到3维数据,下面是迭代训练100次后,自编码器生产的图片
这是不同数字编码分布的可视化图
嗯,后来想想感觉既然是0~9一共10个数字的手写图片,不是直觉上应该能压缩到一维么?所以首先试着压缩到2维,很可惜仅仅迭代100次生成的图片效果很差,所以试着迭代了10000次,效果一般般,感觉1.2.6.7.9能区分出来,其他数字基本模糊一团了。。。所以就没继续实验了。。。。
这是不同数字编码分布的可视化图,感觉除了0,1,7,9以为都挤成一团了。。。
领取专属 10元无门槛券
私享最新 技术干货