train_datagen = ImageDataGenerator(rescale=1. / 255, #归一化
rotation_range=10, #旋转角度
width_shift_range=0.1, #水平偏移
height_shift_range=0.1, #垂直偏移
shear_range=0.1, #随机错切变换的角度
zoom_range=0.1, #随机缩放的范围
horizontal_flip=False, #随机将一半图像水平翻转
fill_mode='nearest') #填充像素的方法
test_datagen = ImageDataGenerator(rescale=1. / 255) #不增强验证数据
train_generator = train_datagen.flow_from_directory(directory=train_dir, #训练文件路径--文件夹下多分类文件夹
target_size=(30, 30), #图像统一尺寸
batch_size=nbatch_size, #batch数据的大小,默认32
class_mode='categorical')#返回标签数组形式 'binary'二进制;
validation_generator = test_datagen.flow_from_directory(directory=validation_dir,
target_size=(30, 30),
batch_size=nbatch_size,
class_mode='categorical')
model.fit_generator(
train_generator,
steps_per_epoch=25*6//nbatch_size, #整数,当生成器返回steps_per_epoch次数据时计一个epoch结束,执行下一个epoch
epochs=nepochs, #整数,数据迭代的轮数
validation_data=validation_generator,
validation_steps=50) #当validation_data为生成器时,本参数指定验证集的生成器返回次数