为啥神经元网络的隐藏状态不能提供比原始输入更好的降维结果?
Posted
技术标签:
【中文标题】为啥神经元网络的隐藏状态不能提供比原始输入更好的降维结果?【英文标题】:Why doesn't the hidden state of a neuron network provide better dimension reduction result than original input?为什么神经元网络的隐藏状态不能提供比原始输入更好的降维结果? 【发布时间】:2016-11-26 18:27:40 【问题描述】:我刚刚阅读了一篇很棒的帖子here。我对该帖子中“带有图像的示例”的内容感到好奇。如果隐藏状态意味着原始图片的很多特征并且越来越接近最终结果,我认为对隐藏状态使用降维应该提供比原始原始像素更好的结果。
因此,我在具有 2 个 256 单位 NN 的隐藏层的 mnist 数字上进行了尝试,使用 T-SNE 进行降维;结果远非理想。从左到右,从上到下,它们是原始像素、第二隐藏层和最终预测。谁能解释一下?
顺便说一句,这个模型的准确率约为 94.x%。
【问题讨论】:
【参考方案1】:您有十个类,正如您所提到的,您的模型在这个数据集上表现良好 - 所以在这个 256 维空间中 - 使用线性子空间很好地分离了这些类。
那么为什么 T-SNE 投影没有这个属性呢?
我想到的一个简单的答案是,将高维集投影到二维可能会失去线性分离属性。考虑以下示例:一座小山,其中一个班级处于高峰,而第二个班级处于较低的高度。在三个维度中,这些类很容易被一个平面分开,但是人们可以很容易地找到一个不具有该属性的二维投影(例如,您正在丢失 height 维度的投影)。
当然,T-SNE 不是这样的线性投影,但它的主要目的是保留数据的局部结构,这样在使用这种方法时,像线性分离属性这样的一般属性可能很容易丢失。
【讨论】:
感谢您的回复,马辛。在使用 sigmoid(之前使用 RELU)对隐藏状态进行归一化后,T-sne 提供了更好的性能。以上是关于为啥神经元网络的隐藏状态不能提供比原始输入更好的降维结果?的主要内容,如果未能解决你的问题,请参考以下文章