免责声明:我也在CrossValidated上发布了这个问题,但没有得到任何关注。如果这里不适合,我会乐意删除它。
据我所知,它们之间的唯一区别在于两种网络的训练方式。深度自编码器的训练方式与单层神经网络相同,而堆叠自编码器则是采用贪婪的逐层训练方法。Hugo Larochelle 在这个视频的评论中证实了这一点。我想知道这是否是唯一的区别,有没有其他指导意见?
回答:
该领域的术语并不固定、清晰和明确定义,不同的研究可能对相同的术语有不同的理解或增加不同的方面。例如讨论如下:
-
深度学习与传统人工神经网络机器学习有什么区别?(有些人认为两层就足够深,有些人认为10层或100层才算深)。
-
多层感知器与深度神经网络(基本上是同义词,但有些研究更偏好一种而不是另一种)。
至于自编码器,根据各种来源,深度自编码器和堆叠自编码器是完全同义的,例如,这里引用自“Hands-On Machine Learning with Scikit-Learn and TensorFlow”的一段话:
就像我们讨论过的其他神经网络一样,自编码器可以有多个隐藏层。在这种情况下,它们被称为堆叠自编码器(或深度自编码器)。
随后,作者讨论了两种训练自编码器的方法,并交替使用这两个术语。
我同意“堆叠”这个词的感知是自编码器可以添加新层而不需要重新训练,但实际上这与现有层是如何训练的(联合还是分开)无关。同样,无论使用何种训练方法,研究人员可能认为它是否足够深。所以我不会太关注术语。有一天它们可能会稳定下来,但现在还没有。