人工智能/模式识别/机器学习精华专题深度学习机器学习和人工智能入门

2020机器学习自编码器(autoencoder)(上)

2020-03-05  本文已影响0人  zidea
compression-format.jpg

最近分享了 GAN 生成图片时候,在说到 Generator 如何自力更生不依赖 Discriminator 来生成图片时候我们提及了如何使用 autoencoder 来生成图片。既然说到了 autoencoder(自编码),我们今天就放下 GAN,来说一说这个 autoencoder。

首先 autoencoder 是一种无监督学习机器模型,无需给数据添加标签就可以来进行训练模型来完成任务。

目标

今天目标就是通过一个基于卷积的 autoencoder 实例来说明如何搭建一个 autoencoder 模型来进行图片压缩和对图片进行降噪(去除噪点)。实例采用 keras 来实现,数据集一个叫 notMNIST 手写字母集。

概要

预计 3 词分享,我们就来个上中下,好的话再来个续

autoencoder(自编码)

在一开始我们就说到了 autoencoder 是一个无监督的机器学习算法。将图片在隐藏空间中进行重构用较少数字来表示图片。这样也就达到对图片压缩或者说加密的效果。


autoencoder_002.png

如图,在图像中最狭窄位置就是对图像的编码。通过对 autoencoder(自动编码器)中网络进行一段时间的训练来实现的对图片压缩。

自动编码器(autoencoder) 与主成分分析(PCA)一样都是一种降维技术。都是使用线性转换将数据从高维投影到低维,并在时保留数据的重要特征前提尽可能地删除一些非必要特征。

不同之处就是自编码器使用非线性变换,而 PCA 是使用线性的变换。

autoencoder_001.png

如上图自编码器具有一个隐藏层(hidden)的输入和输出层。输入层和输出层具有相同数量的神经元。


autoencoder_003.png

如果将 5 个像素值的图像输入到自动编码器中,编码器将其压缩为 hidden(中间层)或 latent space (潜在空间)的 3 个像素值。然后解码器将 3 个值,通过解码重建 5 个像素值。
网络包括两个部分分别是编码器解码器

自动编码器有很多变种,例如卷积自编码器、去噪自编码器、变分式和稀疏式自编码器等。

上一篇 下一篇

猜你喜欢

热点阅读