版权声明:本文为博主原创文章,欢迎转载,并请注明出处。联系方式:460356155@qq.com
对数据量较少的深度学习,为了避免过拟合,可以对训练数据进行增强及添加Dropout层。
对训练数据进行变换增强:
train_datagen =ImageDataGenerator(
rescale=1. / 255,
rotation_range=40,
width_shift_range=0.2,
height_shift_range=0.2,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True, )
训练模型添加Dropout层:
model =models.Sequential()#输出图片尺寸:150-3+1=148*148,参数数量:32*3*3*3+32=896
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(150, 150, 3)))
model.add(layers.MaxPooling2D((2, 2))) #输出图片尺寸:148/2=74*74
#输出图片尺寸:74-3+1=72*72,参数数量:64*3*3*32+64=18496
model.add(layers.Conv2D(64, (3, 3), activation='relu'))<