tensorflow - ImageDataGenerator 是如何工作的?
问题描述
我正在尝试使用 来了解数据增强ImageDataGenerator
,为了深入了解它,我创建了一个小型数据集。我save_to_dir
用来查看图像是如何增强的
主目录:/图像
火车目录:/图像/火车
dog_directory : /Images/train/dogs #10 狗的图像
cat_directory : /Images/train/cats #10 张猫的图片
save_to_dir : /Augmented_images
=> 这是代码
train_datagen = ImageDataGenerator(
rescale=1./255,
rotation_range=40,
width_shift_range=0.2,
height_shift_range=0.2,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True,
fill_mode='nearest')
train_generator = train_datagen.flow_from_directory(
train_directory,
target_size=(150, 150),
batch_size=5,
class_mode='binary')
history = model.fit_generator(
train_generator,
steps_per_epoch=4, # 20(number of total images)/5 (batch_size)
epochs=1,)
所以,我的问题是,如果有 20 张图片,batch_size=5, 1 epoch,steps_per_epoch=4 因此,“Augmented_images”目录中的图片数量应该是 20。但是,它显示了 45 张图片。如何?这是否意味着即使steps_per_epoch = 4,也训练了9次迭代?
解决方案
推荐阅读
- c++ - Qt5 Gui 元素加载延迟
- java - 打开相同的 Java (Qt) 程序,但窗口位于不同的位置
- bash - Wildfly/JBoss 启动后 Docker 运行 bash
- rest - InfluxDB:通过 REST API 从测量中查询数据
- python - 如何在 Python Docker 映像中安装 MSSQL Server?
- reactjs - 如何设置默认值,如果没有,则在 React Native 中设置来自 AsyncStorage 的值
- sql - 如何从表中存在的选择查询中获取 Oracle DB 中的不同日期格式?
- python - 如何编写自动创建标签增量的批处理脚本?
- java - 如何正确退出方法(返回类型为'int')而不在Java中实际返回任何值?
- sql - Hive HQL 中的错误:尚不支持 UDAF 'MAX' 的位置