AI+互联网+教育时间管理司马腾超级自控力学院

人工智能之深度学习——自编码器

2018-10-16  本文已影响15人  e025d18cbaaa

    自编码器(auto-encoder)是一类执行无监督学习任务的神经网络结构,它的目的是学习一组数据的重新表达,也就是编码。

人工智能之深度学习——自编码器

    在结构上,自编码器是包含若干隐藏层的深度前馈神经网络,其独特之处是输入层和输出层的单元数目相等;在功能上,自编码器的目的不是根据输入来预测输出,而是重建网络的输入,正是这样的功能将自编码器和其他神经网络区分开来。由于自编码器的图形表示像极了杂技中使用的道具空竹,因而也得了个“空竹网络”的雅号。

      当自编码器的隐藏单元数目大于输入信号的维度,也就是编码映射的分量数目大于输入信号的分量数目时,这就是个过度完备(overcomplete)的自编码器。过度完备的自编码器面临的一个严重问题是如果没有额外约束的话,那么它可能只能够习得识别功能,得到的编码映射和解码映射都是恒等映射,这显然是白费功夫。

      可出人意料的是,自编码器的这个缺点恰恰能被过度完备性克服。实际结果表明,当使用随机梯度下降训练时,过度完备的非线性自编码器能够生成有用的表示。这个结论是由将自编码器的输出作为其他分类算法的输入,并统计分类错误得到的。

      虽然自编码器通常只包含单个隐藏层,但这并不是强制的选择。和其他前馈网络一样,自编码器也会受益于深度结构。通用近似定理保证了具有单隐藏层的自编码器能够以任意精度逼近任意的连续函数,但难以对这样的自编码器任意添加额外的约束条件。相比之下,深度自编码器既能降低某些函数的计算成本,也能降低训练数据的数量要求,还能得到更高的压缩效率。

上一篇下一篇

猜你喜欢

热点阅读