CIFAR100数据分为测试集和训练集,为50k+10k,每张图片大小为32323,共100种分类。正是由于图片小,分类多的特性使得该项目测试难度较大。本次网络共设置13层(2卷积层+2卷积层+2卷积层+2卷积层+2卷积层+3全连接层),所以数据在训练过程中速度会较慢。
import tensorflow as tf
from tensorflow.keras import datasets, layers, optimizers, Sequential
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3'
tf.random.set_seed(2)
# 设置卷积层pipeline
conv_layers = [
layers.Conv2D(64, kernel_size=[3, 3], padding='same', activation=tf.nn.relu),
layers.Conv2D(64, kernel_size=[3, 3], padding='same', activation=tf.nn.relu),
layers.MaxPool2D(pool_size=[2, 2], strides=2, padding='same'),
layers.Conv2D(128, kernel_size=[3, 3], padding='same', activation=tf.nn.relu),
layers.Conv2D(128, kernel_size=[3, 3], padding='same', activation=tf.nn.relu),
layers.MaxPool2D(pool_size=[2, 2], strides=2,