在 ImageDataGenerator 中,数据是在每个批次还是每个周期中进行增强的?

我知道在每个周期中我们会有一组新的增强。但我的问题是,如果我们总共有10张样本图像,batch_size = 5,并且我们选择了steps_per_epoch = 3而不是2,那么我们在每个周期中将传递5*3 = 15张图像,

因此肯定会有重复,我的疑问是,如果图像x被重复了,它们的增强值是相同的还是不同的。
这取决于新的增强是在每个批次还是每个周期中发生的。

谢谢,


回答:

增强是以周期为单位进行的,而不是每个批次。

解释:

train_size = 10 batch_size = 5steps_per_epoch = n*(train_size//batch_size) # n是任何正整数

ImageDataGenerator的工作方式是,在第一个周期中,它会对所有10张图像进行增强以生成10张增强后的图像,然后从中选择1-5张增强后的图像用于训练的第一步。这意味着您用于训练的数据是由周期定义的。在第一个周期的第二步中,将使用下一组增强后的图像,即6-10张。

在第二个周期中,将生成一组新的增强图像,然后对于每个步骤,将使用定义数量的图像。因此,如果您每个周期使用3个步骤,那么5张图像将从10张增强图像集中重复使用。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注