注意点
1.data_mode的默认值是”channel last“,在构建网络时一定要注意。
models.py
Sequential
该类用于表示一个网络模型,并继承于Model类
save_weights(filepath)
该函数用于将模型的权重保存为一个h5文件。
image.py
ImageDataGenerator
ImageDataGenerator类继承于object,可随着图片数目的动态增加实时对图片进行预处理并生成图片序列。
flow_from_directory(directory,target_size=(256,256),color_mode='rgb',classes=None,class_mode='categories',batch_size=32,shuffle=True,seed=None,save_to_dir=None,save_prefix='',save_format='png',follow_links=False)
其中directory是路径,这个函数会将路径下的没一个文件夹视为一个分类,并对每个文件夹中的所有图片进行预处理,target_size便是预处理后的图片大小,class_mode默认为‘categories’,这样在将图片输入到网络中时会同时将对应的lable输入,而如果设置class_mode为None的话,则将只会输入图片。
要注意的是,这里的batch_size应该只是预处理时的batch_size,而与网络的batch_size无关。
shuffle是表示是否将图片打乱,
save_to_dir表示是否将处理后的图片保存。
flow(x,y=None,batch_size=32,shuffle=True,seed=None,save_to_dir=None,save_prefix='',save_format='png')
此函数也是用于对图片进行预处理并读取样本集。x为样本图片,y为lable,其余都和flow_from_directory一样,与flow_from_directory的区别是,flow_from_directory是从本地路径中读取样本,而flow是从内存中读取。
training.py
Model
Model类,继承于Container类。
predict_generator(generator,steps,max_queue_size=10,workers=1,use_multiprocessing=False,verbose=0)
该函数对输入的样本直接进行预测,即将generator输入到网络中并得出结果。
generator是经过预处理过后的样本集。
step为分为几个batch来完成预测。