我目前正在使用ImageDataGenerator
datagen = tf.keras.preprocessing.image.ImageDataGenerator(rescale=1./255.)
train_it = datagen.flow_from_directory("MyTrainImgDir",batch_size=8,target_size=(1024,1024))
...
history = model.fit(train_it,epochs=10,steps_per_epoch=16,
callbacks=[TrainingCallback()],
...
);
class TrainingCallback(Callback):
def on_train_batch_begin(self, batch, logs=None):
print(f"Training: Starting batch {batch}")
## I believe I would need to write some code here..
我想要的是…在这个回调中,我想打印培训期间选择的图像文件名…这可能吗
我很确定,每批将选择不同的图像文件进行训练…我想看看哪些图像文件已被选择训练可能
因此,输出将类似于
培训:开始第0批
1234.jpg
23456.jpg ...
培训:开始第1批
5679.jpg
98542.jpg
任何帮助都将不胜感激
谢谢
注意,我在那个目录下的图像文件总数是1000,这里的批量大小是8。所以每个历元的步长是125,但我提供的不到125。据我所知,在这种情况下,批次将随机选择
实际上,我可以像这样打印文件名
start = batch * 8
end = start + 8
train_it.filenames[start : end]
然而,这只有在步长每历元=125时才有意义。 如果每个历元的步长不等于125,我相信我需要通过拟合方法选择的实际批号,如果我是正确的,我相信它应该是随机的。。。。我的意思是,因为我提供了16个步骤,所以选择的实际批号可能是1、4、10(总共16个),…110。。。或者8,12,…100(总共16)…诸如此类
目前没有回答
相关问题 更多 >
编程相关推荐