最近,我一直在研究自动编码器。如果我理解正确,自动编码器是一种神经网络,其中输入层与输出层相同。因此,神经网络尝试使用输入作为黄金标准来预测输出。
这个模型有什么用处?尝试重构一些输出元素,使它们尽可能与输入元素相等有什么好处?为什么要使用所有这些机器来达到同一个起点?
最近,我一直在研究自动编码器。如果我理解正确,自动编码器是一种神经网络,其中输入层与输出层相同。因此,神经网络尝试使用输入作为黄金标准来预测输出。
这个模型有什么用处?尝试重构一些输出元素,使它们尽可能与输入元素相等有什么好处?为什么要使用所有这些机器来达到同一个起点?
自动编码器具有输入层、隐藏层和输出层。输入被迫与输出相同,因此它是我们感兴趣的隐藏层。
隐藏层形成输入的一种编码。“自动编码器的目的是为一组数据学习压缩的分布式表示(编码)。” 如果输入是 100 维向量,并且您在隐藏层中有 60 个神经元,那么自动编码器算法会将输入复制为输出层中的 100 维向量,在此过程中会为您提供一个 60 维向量来对您的输入进行编码.
因此,自动编码器的目的是降维,等等。
它还可以对您的人口进行建模,以便当您输入一个新向量时,您可以检查输入的输出有多么不同。如果它们“非常”相同,则可以假设输入与总体匹配。如果它们“完全”不同,则输入可能不属于您建模的人群。
我将其视为一种“神经网络回归”,您尝试使用一个函数来描述您的数据:它的输出与输入相同。
就 ML 而言,特征是黄金。使用尽可能少的数据但包含尽可能多的信息的学习特征使我们能够完成许多任务。从某种意义上说,自动编码很有用,它允许我们以最佳方式压缩数据(可以实际用于表示输入数据,正如解码层所观察到的那样)。
现在我们拥有了这些功能,我们能够完成许多不同的任务——例如,我们可以将其用作监督学习任务的一个很好的起点。