TensorFlow2 Python深度学习 - 模型保存与加载

锋哥原创的TensorFlow2 Python深度学习视频教程:

https://www.bilibili.com/video/BV1X5xVz6E4w/

课程介绍

本课程主要讲解基于TensorFlow2的Python深度学习知识,包括深度学习概述,TensorFlow2框架入门知识,以及卷积神经网络(CNN),循环神经网络(RNN),生成对抗网络(GAN),模型保存与加载等。

TensorFlow2 Python深度学习 - 模型保存与加载

在 TensorFlow 2 中,模型的保存和加载是非常简便的操作,使用了 tf.keras API 进行高效管理。TensorFlow 支持保存和加载完整的模型,包括权重、优化器、训练配置等,使得模型可以在不同的环境中被复用、共享或部署。

TensorFlow2 keras提供保存和加载完整模型(包括模型架构、权重、训练配置等)的save()和load_model()方法来实现模型保存和加载。

我们看一个具体示例:

通过save()方法保存模型,注意保存的模型文件后缀是.keras

复制代码
import tensorflow as tf
from keras import Input, layers
from sklearn.datasets import load_iris
​
# 1,加载鸢尾花数据集
iris = load_iris()
X = iris.data  # 特征:花萼长度、花萼宽度、花瓣长度、花瓣宽度
y = iris.target  # 标签:0-Setosa, 1-Versicolour, 2-Virginica
​
# 2,构建分类模型
model = tf.keras.models.Sequential([
    Input(shape=(X.shape[1],)),  # 输入层
    layers.Dense(16, activation='relu'),  # 隐藏层
    layers.Dense(3, activation='softmax')  # 输出层 3个神经元,对应3个类别
])
​
# 3,模型编译
model.compile(
    optimizer='adam',
    loss='sparse_categorical_crossentropy',  # 多分类交叉熵损失函数
    metrics=['accuracy']  # 评估指标:准确率
)
​
# 4,模型保存
model.save('iris_model.keras')

运行完成后,先生成iris_model.keras模型文件:

然后其他地方需要用到这个模型定义的时候,我们只需要使用keras提供的load_model()方法加载这个模型文件即可。

复制代码
from keras.src.saving import load_model
from sklearn.datasets import load_iris
​
# 1,加载鸢尾花数据集
iris = load_iris()
X = iris.data  # 特征:花萼长度、花萼宽度、花瓣长度、花瓣宽度
y = iris.target  # 标签:0-Setosa, 1-Versicolour, 2-Virginica
​
# 2,加载模型
model = load_model('iris_model.keras')
​
# 4,模型训练
history = model.fit(X, y, epochs=100, batch_size=32, verbose=1)
print(f"最终损失: {history.history['loss'][-1]:.4f}, 最终准确率: {history.history['accuracy'][-1]:.4f}")

我们来运行测试下:

相关推荐
用户7783366132117 小时前
用 React Hook 封装搜索数据:useSerp 的防抖、缓存与错误处理
python·api
65岁退休Coder11 小时前
LangGraph v1.2.9 节点容错策略 & 流式输出 & 持久化记忆管理
后端·python·langchain
ikun_文13 小时前
Django框架路由Router的使用
python·pycharm·django
IvanCodes13 小时前
Python 基础语法(二):字符串与常用操作
python
昭昭日月明13 小时前
LangChain 生态:从链到代理,开发者需要掌握的三大核心
python·langchain·agent
Csvn14 小时前
🐍 Day 8:面向对象编程
后端·python
程序员天天困14 小时前
向量检索不准怎么办:混合检索与 Rerank 重排序召回优化实战
后端·python·ai编程
alphaTao15 小时前
LeetCode 每日一题 2026/8/24-2026/8/30
python·算法·leetcode
苏灿烤鱼15 小时前
当 AI Agent 遇见真实科学环境:深度拆解 Scientific Agent Skills,把"聊天机器人"变成"AI 科学家"
python·开源·agent
张文君15 小时前
ubuntu26.04坏道坏块分区隔离急速版260831-V0.12
linux·python