为图像添加噪声以进行深度学习,是或否?

时间:2017-06-06 14:15:22

标签: deep-learning

我一直以为为图像添加噪点可以防止过度拟合,也可以增加"数据集通过添加变体。我只想尝试将一些随机1添加到具有形状(256,256,3)的图像中,该图像使用uint8来表示其颜色。我认为这根本不会影响可视化(我用matplotlib显示两个图像,它们看起来几乎相同)并且它们的值之和仅有~0.01的平均差异。

但它并没有取得进展。经过长时间的训练,它仍然没有那个没有使用噪音的那么好。

是否有人试图将噪音用于此类图像分类任务?它最终更好吗?

3 个答案:

答案 0 :(得分:2)

我不会去为您的数据添加噪音。一些论文在训练期间采用输入变形来增加模型的机器人和收敛速度。然而,这些变形在统计上是低效的(不仅仅是图像而是任何类型的数据)。 您可以阅读Szegedy et al。中的Intriguing properties of Neural Networks了解更多详情(有关使用变形的论文,请参阅参考文献9和13)。

如果您想避免过度拟合,可能有兴趣阅读regularization而不是。

答案 1 :(得分:1)

有几项工作可以解决这个问题。因为你使训练集更难,训练误差会更低,但是你的概括可能会更好。已经表明,添加噪声可以对训练生成对抗网络(Adversarial Training)产生稳定性影响。

对于分类任务,它不是切割和干燥。实际上并没有多少作品涉及这个主题。最接近的是我最了解的一个来自google(https://arxiv.org/pdf/1412.6572.pdf),它们显示了使用没有噪音的训练的限制。它们确实报告了正则化效应,但实际上并没有比使用其他方法更好的结果。

答案 2 :(得分:0)

是的,您可能会添加噪音以扩展您的数据集并避免过度拟合您的训练集,但请确保它是随机的,否则您的网络会将此噪音视为应该学习的东西(并且这不是您想要的东西)。我不会首先使用这种方法,我会先旋转和/或翻转我的样本。

但是,您的网络应该表现得更好,或者至少与之前的网络一样好。

我要检查的第一件事是:你如何衡量你的表现?你之前和之后的表现是什么?你有没有改变别的什么?