ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

七、Data Augmentation技巧

2021-12-05 02:00:26  阅读:342  来源: 互联网

标签:layer 技巧 generator Data range Augmentation import 数据 IMSIZE


目录

前文

数据生成器+数据部分展示

#猫狗分类。数据增强
#数据生成器生成测试集
from keras.preprocessing.image import ImageDataGenerator

IMSIZE = 128
validation_generator = ImageDataGenerator(rescale=1. / 255).flow_from_directory(
    '../../data/dogs-vs-cats/smallData/validation',
    target_size=(IMSIZE, IMSIZE),
    batch_size=10,
    class_mode='categorical'
)

在这里插入图片描述

# 利用数据增强技术生成的训练集
train_generator = ImageDataGenerator(rescale=1. / 255, shear_range=0.5, rotation_range=30,
                                     zoom_range=0.2, width_shift_range=0.2, height_shift_range=0.2
                                     ).flow_from_directory('../../data/dogs-vs-cats/smallData/train',
                                                           target_size=(IMSIZE, IMSIZE), batch_size=10,
                                                           class_mode='categorical')

在这里插入图片描述

数据来源kaggle的猫狗数据

#展示数据增强后的图像
from matplotlib import pyplot as plt

plt.figure()
fig, ax = plt.subplots(2, 5)
fig.set_figheight(6)
fig.set_figwidth(15)
ax = ax.flatten()
X, Y = next(validation_generator)
for i in range(10): ax[i].imshow(X[i, :, :, ])

在这里插入图片描述

数据增强模型

#数据增强模型
IMSIZE = 128
from keras.layers import BatchNormalization, Conv2D, Dense, Flatten, Input, MaxPooling2D
from keras import Model

n_channel = 100
input_layer = Input([IMSIZE, IMSIZE, 3])
x = input_layer
x =BatchNormalization()(x)
for _ in range(7):
    x =BatchNormalization()(x)
    x =Conv2D(n_channel,[2,2],padding='same',activation='relu')(x)
    x =MaxPooling2D([2,2])(x)

x =Flatten()(x)
x =Dense(2,activation='softmax')(x)
output_layer = x
model = Model(input_layer,output_layer)
model.summary()

在这里插入图片描述

数据增强模型的编译与拟合

#数据增强模型的编译与拟合
from keras.optimizers import Adam
model.compile(loss='categorical_crossentropy',
               optimizer=Adam(lr=0.0001),
               metrics=['accuracy'])
model.fit_generator(train_generator,
                     epochs=200,
                     validation_data=validation_generator)

在这里插入图片描述

GitHub下载地址:

Tensorflow1.15深度学习

标签:layer,技巧,generator,Data,range,Augmentation,import,数据,IMSIZE
来源: https://www.cnblogs.com/lehoso/p/15643960.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有