gpt4 book ai didi

python - 使用在线数据增强来比较 CNN 模型是否公平

转载 作者:行者123 更新时间:2023-11-30 09:33:00 29 4
gpt4 key购买 nike

我正在使用输入到卷积神经网络的图像的在线数据增强。我为此使用 Keras ImageDataGenerator。每批处理都会增强图像,然后在这些图像上训练模型。

我正在比较不同的模型,但由于图像是动态增强的,这真的公平吗,因为每个模型得到的图像略有不同?

最佳答案

如果我理解正确,您想知道数据增强引起的随机性是否会影响结果?

如果训练时间足够长,增强的随机性不会影响结果(至少不会达到产生影响的程度)。您拥有的其他选择是(据我所知):

  1. 在将图像插入模型之前,确定性地对图像应用相同的转换来增强数据。这些转换可以是(a)随机的,例如在某些限制或 (b) 预定限制之间以随机角度旋转图像,例如将所有图像旋转 1、3 和 5 度。
  2. 根本不要增加您的数据。使用您的初始数据来训练您的模型。

这些选择的效果是:

  1. 您要应用的转换数量是有限的,即使选择了选项 1a,也将是预定义的集。如果您愿意大幅增加此数量,则会出现其他问题,例如您将在哪里存储所有这些数据,您将如何在训练期间处理它们等。因此,即时的优点是数据的存储不会改变,您处理数据的方式也不是。当然,缺点是使用的过程较慢(这取决于转换可能会产生很大的差异)。
  2. 此选择有效意味着您拥有大量数据。并意味着很多(当然取决于问题)有时很多是不够的。由于您(可能)使用不同的数据进行测试,因此您的训练数据和测试数据在许多方面都存在差异。例如,对于人体检测(任意选择),姿势、颜色、光照条件、图像清晰度、图像大小、纵横比的差异很常见。你怎么处理那件事呢?您要么收集 super 大量的数据,要么(可能)使用数据增强,对吗?

总而言之,这是公平的,因为从长远来看,这并没有太大的区别。例如,考虑为您的模型选择提前停止。比较那些不在最佳迭代中停止训练的模型是否公平?嗯,这并不完全公平,但也没什么区别。

关于python - 使用在线数据增强来比较 CNN 模型是否公平,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51081439/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com