神经网络模型---ResNet

一、ResNet

1.导入包

python 复制代码
import tensorflow as tf
from tensorflow.keras import layers, models, datasets, optimizers

optimizers是用于更新模型参数以最小化损失函数的算法

2.加载数据集、归一化、转为独热编码的内容一致

3.增加颜色通道

python 复制代码
train_images = train_images[..., tf.newaxis].astype("float32")
test_images = test_images[..., tf.newaxis].astype("float32")

在train_images和test_images最后一个维度增加一个新的维度
这两行代码还将图像数据转换为浮点数类型

4.定义一个用于图像预处理的模型

4.1创造模型

python 复制代码
preprocessing = models.Sequential([

4.2添加一个卷积层,该层有3个1x1的卷积核,激活函数为relu,并且指定了输入形状为28x28像素的单通道图像

python 复制代码
layers.Conv2D(3, (1, 1), activation='relu', input_shape=(28, 28, 1)),

4.3 将图像尺寸增加到56x56

python 复制代码
    layers.UpSampling2D((2, 2)), 
])

5.应用预处理模型到训练和测试图像上

python 复制代码
train_images = preprocessing(train_images)
test_images = preprocessing(test_images)

6.加载ResNet50模型并冻结所有层

python 复制代码
base_model=tf.keras.applications.ResNet50(weights='imagenet',include_top=False,input_shape=(56, 56, 3))

ResNet50是一个预训练的卷积神经网络模型,
参数1:加载模型的权重
参数2:是否包括模型顶部的全连接层,设置False意味着不包括这些层,由此可以得到模型的特征提取部分
参数3:输入图像的尺寸
base_model.trainable = False
使ResNet50模型的所有层都不可训练

7.创建模型

python 复制代码
model = models.Sequential([

7.1放在模型的第一层添加到序列中,用于提取图像特征

python 复制代码
base_model,

7.2在Keras中添加的一个全局平均池化层

python 复制代码
layers.GlobalAveragePooling2D(),

7.3在Keras中添加的一个全连接层,使用softmax为激活函数

python 复制代码
    layers.Dense(10, activation='softmax')
])

8.编译模型

python 复制代码
model.compile(optimizer=optimizers.Adam(),
              loss='categorical_crossentropy',
              metrics=['accuracy'])

  • 和上一个博客的模型的内容一样,此处省略

9.训练模型

python 复制代码
model.fit(train_images, train_labels, epochs=10, batch_size=64, validation_data=(test_images, test_labels))

结果:

10.保存文件

python 复制代码
model.save('ResNet.h5')

结果:

相关推荐
GEO-optimize2 分钟前
2025年末GEO服务商推荐甄选:综合实力测评及优选指南
人工智能·搜索引擎·geo
Ven%7 分钟前
【AI大模型算法工程师面试题解析与技术思考】
人工智能·python·算法
我很哇塞耶11 分钟前
BOSS直聘3B超越Qwen3-32B,更多训练数据刷新小模型极限
人工智能·ai·大模型
趁你还年轻_12 分钟前
超越对话:AI 智能体如何自主完成复杂任务?
人工智能
禾高网络23 分钟前
互联网医院系统,互联网医院系统核心功能及技术
java·大数据·人工智能·小程序
AI营销实验室24 分钟前
原圈科技AI CRM系统:数据闭环与可视化革新的行业突破
大数据·人工智能
AndrewHZ26 分钟前
【复杂网络分析】什么是图神经网络?
人工智能·深度学习·神经网络·算法·图神经网络·复杂网络
2501_9414185539 分钟前
腰果病害图像识别 Mask-RCNN HRNetV2P实现 炭疽病 锈病 健康叶片分类
人工智能·分类·数据挖掘
skywalk81631 小时前
使用Trae 自动编程:为小学生学汉语项目增加不同出版社教材的区分
服务器·前端·人工智能·trae
Deepoch1 小时前
仓储智能化新思路:以“渐进式升级”破解物流机器人改造难题
大数据·人工智能·机器人·物流·具身模型·deepoc·物流机器人