前情提要
前五期我们提到了
接下来为大家讲解
迁移学习与计算机视觉实践
本节开始,我们将使用VGG16模型做一些小实验,进而巩固我们对迁移学习与计算机视觉理论知识的理解。与第四章一样,我们同样是基于fashion MNIST数据的图像分类去做实验。
在2017年8月份,德国研究机构Zalando Research在GitHub上推出了一个全新的数据集,其中训练集包含60000个样例,测试集包含10000个样例,分为10类,每一类的样本训练样本数量和测试样本数量相同。样本都来自日常穿着的衣裤鞋包,每个都是28×28的灰度图像,其中总共有10类标签,每张图像都有各自的标签。
值得注意的是,因为VGG16只能识别尺寸大于48×48的彩色图片,而我们的数据集是28×28的灰色图片,因此我们在将数据集灌入迁移学习模型前,要对图片数据集进行适当地转换,也就是比第四章中传统CNN神经网络的图像预处理多了一步:将图片转换成48×48大小的彩色图片。
7.3.1 实验环境
(1) Anaconda Python 3.7与Jupyter Notebook
(2) Keras
(3) fashion MNIST数据数据集
7.3.2 实验流程
(1) 加载图像数据
(2) 图像数据预处理
(3) 训练模型
(4) 保存模型与模型可视化
(5) 训练过程可视化
7.3.3 代码
1. # chapter7/7_3_Transfer_learning_cnn_image.ipynb
2. from tensorflow.python.keras.utils import get_file
3. import gzip
4. import numpy as np
5. import keras
6. from keras.datasets import cifar10
7. from keras.preprocessing.image import ImageDataGenerator
8. from keras