自编码器AutoEncoder是一种尽可能复现输入信号的神经网络。为了实现这种复现,自动编码器就必须捕捉可以代表输入数据的最重要的因素,就像PCA那样,找到可以代表原信息的主要成分。
神经网络,例如多层感知机中,输入经过隐层变换之后,得到一个输出,然后计算与target(或label)之间的差异去改变前面各层的参数,直到收敛,这个过程就是著名的BP网络思想,如上图所示。但是自动编码器与之不同的是,我们没有target,那么怎么训练呢?
如上图所示,自动编码器AutoEncoder中将输入input输入一个编码器encoder,得到一个中间的向量表示code,这个code也就是输入的一个表示,那我们怎么知道code表示的就是input呢?我们将code输入到解码器decoder中,得到一个输出,如果这个输出与输入input很像的话