最近在学习keras,总遇到使用 ImageDataGenerator当作训练参数,使用
fit_generator(), 而 Keras 2.0+ 已经放弃了,导致执行不下去了
经过N多天的摸索,终于是成功了
# 训练集数据生成
datagen = ImageDataGenerator(rotation_range=40,rescale=1./255,width_shift_range=0.2,height_shift_range=0.2,shear_range=0.2,zoom_range=0.2,horizontal_flip=True,fill_mode='nearest'
)batch_size = 32
# 生成训练数据
train_generator = datagen.flow_from_directory('E:/data/kreas/Kaggle/cat-dog-small/train', # 训练数据路径target_size=(150, 150), # 设置图片大小class_mode='categorical',batch_size=batch_size # 批次大小)model.fit(train_generator,steps_per_epoch=int(totalFileCount/batch_size),epochs=50,validation_data=test_generator,validation_steps=int(1000/batch_size),)
直接使用 ImageGenaraor 加强生成的数据即可。
之前为啥没成功呢?
我想是我之前的keras版本,已经tensorflow的版本有不兼容的问题。
我是将tensorflow 卸载重新安装,安装最新的2.18
Keras 3.7
又可以愉快的玩耍了,欢迎各位与我交流-:)
2.X 版本的 numpy 兼容性差,建议使用如下
pip install -U numpy==1.26.1
配置好GPU 可以愉快的玩耍了