首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图像平均减法在凸网中有多重要?

图像平均减法在凸网中有多重要?
EN

Stack Overflow用户
提问于 2017-06-28 22:28:19
回答 1查看 1.7K关注 0票数 1

所以我读过,对于图像来说,减法是非常重要的,因为它使数据中心为零。来自的讲座。

然而,数据的零中心是非常重要的,并且看到每个像素的标准化也是很常见的。

然而,在所有的MNIST和猫/狗分类教程中,我从未见过这种情况。真的有那么重要吗?如果你不把数据归零会发生什么?有人能指给我一个教程笔记本,最好是在Tensorflow,它显示的是平均减法正在做?

EN

回答 1

Stack Overflow用户

发布于 2017-06-29 08:09:26

输入归一化,特别是平均减法,确实是一个重要的预处理步骤,在实践中对于使SGD收敛是必要的。

当你说它几乎没有在教程中使用时,你就错了:它几乎无处不在。例如,tensorflow的CIFAR-10教程将图像规范化这里

唯一常见的例外是MNIST,不幸的是,它也是无所不在的CNN-101教程,也许留下了一个持久的印象,图像正常化毕竟是可选的。

我用tensorflow的深度MNIST教程做了一个小实验,比较了归一化和不归一化的结果。

标准实施产生了:

代码语言:javascript
复制
step 0, training accuracy 0.1
step 100, training accuracy 0.94
step 200, training accuracy 0.88
step 300, training accuracy 0.9
step 400, training accuracy 0.92
step 500, training accuracy 0.92
step 600, training accuracy 0.92
step 700, training accuracy 0.98
step 800, training accuracy 0.98
step 900, training accuracy 0.9
step 1000, training accuracy 0.94
step 1100, training accuracy 0.98
step 1200, training accuracy 0.96
step 1300, training accuracy 0.94
step 1400, training accuracy 0.98
step 1500, training accuracy 1
step 1600, training accuracy 0.94
step 1700, training accuracy 0.96
step 1800, training accuracy 1
step 1900, training accuracy 0.96
test accuracy 0.974

加法时

代码语言:javascript
复制
x_image = tf.map_fn(lambda frame: tf.image.per_image_standardization(frame), x_image)

我得到了

代码语言:javascript
复制
step 0, training accuracy 0.1
step 100, training accuracy 0.86
step 200, training accuracy 0.92
step 300, training accuracy 0.86
step 400, training accuracy 0.94
step 500, training accuracy 0.98
step 600, training accuracy 0.94
step 700, training accuracy 0.96
step 800, training accuracy 1
step 900, training accuracy 0.92
step 1000, training accuracy 0.92
step 1100, training accuracy 0.98
step 1200, training accuracy 0.98
step 1300, training accuracy 0.96
step 1400, training accuracy 0.96
step 1500, training accuracy 1
step 1600, training accuracy 0.98
step 1700, training accuracy 0.96
step 1800, training accuracy 0.94
step 1900, training accuracy 1
test accuracy 0.974

最后,我得到了准确的(!)在两种情况下,2000年后的测试精度相同。因此,在这里,图像规范化不会降低性能,但不会增加太多。

真正的问题是,是什么使MNIST数据集如此特殊,以至于它无法从图像规范化中受益。这可能是由于图像的性质,这些图像大多是常量的,或者是通常在这个数据集上使用的网络(LeNet和变体),这些数据集很浅,能够处理非零均值数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44813514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档