Tensorflow - 数据邻接是否重要? - MNIST的例子

时间:2015-11-14 17:57:53

标签: neural-network tensorflow mnist

我查看了MNIST example并注意到当图像的数组被展平为728数组时,该数组是否随机化是否重要?我的意思是NN是否考虑了数据的邻接,或者是否有一个输入节点输入了输入数(因此有728个节点)。

我要问的是,如果我按照示例中的图像进行训练,我是否会获得相同的网络,就像我随机化728数据阵列一样?

2 个答案:

答案 0 :(得分:6)

取决于您正在查看的mnist示例。 convolutional.py在图像上运行一个5x5空间卷积窗口,它考虑了空间相关性。

使用简单权重矩阵的初学者示例:

W = tf.Variable(tf.zeros([784,10]))
b = tf.Variable(tf.zeros([10]))

没有。您可以置换点中条目的顺序而不会更改任何内容,只要您以相同的方式置换所有输入

(对于大多数图像识别应用程序来说卷积方法正在获胜的原因 - 空间局部性 非常有用。)

答案 1 :(得分:1)

您正在查看非常基本的教程,其重点是让您熟悉TF和一些重要的ML概念,这些概念将在许多较难的模型中使用。他们并没有努力做任何事情(事实上,准确性并不高于开箱即用的SVM)。如果你仔细阅读教程,他们会说:

  

只要我们这样做,我们如何压扁阵列并不重要   图像之间保持一致。

  

展平数据会丢弃有关2D结构的信息   图片。那不好吗?那么,最好的计算机视觉方法呢   利用这个结构,我们将在以后的教程中使用。但很简单   我们将在这里使用的方法,softmax回归,赢了。

关于网络的问题:网络拓扑结构相同,权重/偏差也不同。

同样,convolutional neural network的一个示例将帐户与数据相邻接收