自动编码器属于神经网络的一种,与传统的神经网络不同的是,自动编码器给定的是无标签数据,属于非监督学习算法。
传统神经网络结构:
自动编码的过程是一个自动寻找主要特征的过程,例如PCA,判定该特征是否能最有效的表示原输入的依据是,该特征通过解码得到的数据与原输入数据的误差尽可能的小。
自动编码器结构:
网络结构图:
对每一级自动编码器的训练同样采用的是误差的反向传播及梯度下降。
深度自动编码器结构
训练过程
自动编码器存在一个encoder和decoder,encoder通过对输入进行编码得到一个code,对该code进行解码(得到的数据与输入数据维度相同)。
自动编码器采用逐层训练的方式,下一层训练的输入来自于上一层的code,每一层训练完成,该层的decoder不再使用。