Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Keras中的ImageDataGenerator和fit_生成器:理解时代_Keras - Fatal编程技术网

Keras中的ImageDataGenerator和fit_生成器:理解时代

Keras中的ImageDataGenerator和fit_生成器:理解时代,keras,Keras,我试图了解在培训期间如何使用Keras中的数据生成器。如果有如下设置: datagen=ImageDataGenerator() 数据发生器安装(x_系列) 模型拟合发生器(数据生成流(x列,x测试,批量大小=32), 每个历元的步数=100, 时代=20) 我怎样才能知道“生成”了多少数据,以及何时生成?我很难理解batch\u size和steps\u per\u epoch之间的关系 以上是否等同于 对于历元1到20: 对于x_列车中的每个img: 基于img生成100张变形图像 将这些

我试图了解在培训期间如何使用Keras中的数据生成器。如果有如下设置:

datagen=ImageDataGenerator()
数据发生器安装(x_系列)
模型拟合发生器(数据生成流(x列,x测试,批量大小=32),
每个历元的步数=100,
时代=20)
我怎样才能知道“生成”了多少数据,以及何时生成?我很难理解
batch\u size
steps\u per\u epoch
之间的关系

以上是否等同于

对于历元1到20:
对于x_列车中的每个img:
基于img生成100张变形图像
将这些放入大小为32的批次中
适合每批
或者,它可能是这样工作的:

对于历元1到20:
对于x_列车中的每个img:
基于img生成100张变形图像
将所有100*x_系列形状[0]图像分成大小为32的批次
适合每批
那么这到底是如何工作的呢? 有没有办法对此进行调查/调试?

其工作原理如下:

for epoch in range(20):
    for step in range(steps_per_epoch):
       yield x,y     
       #where x.shape = (32,imgshape1,imgshape2,imgshape3)
       #where y.shape = (32,your_output_shape....)
要确切了解生成器是如何创建批次的(我怀疑是经过更改的img1、img2、img3…,可能会出现混洗),您可以:

gen = datagen.flow(x_train, x_test, batch_size=32)

for i in range(2*your_total_images):
    x,y = next(gen) #gets a batch
    useAPlottingLibraryAndPlot(x) #where x contains 32 images