当前位置: 首页 > news >正文

Tensorflow2 如何保存模型参数,实现断点续训,提高模型训练效率?-- Tensorflow自学笔记15

为了提高模型训练效率,有时需要对数据集进行多次训练,为了提高模型训练效率及准确率,tensorflow可以实现断点续训,在第一次训练时保存参数和模型,第二次训练就可以在第一次参数和模型的基础上继续训练,从而提高训练效率。

一、保存模型

借助 tensorflow 给出的回调函数,直接保存参数和网络
 

tf.keras.callbacks.ModelCheckpoint(filepath=路径文件名, save_weights_only=True, monitor='val_loss', # val_loss or loss save_best_only=True)history = model.fit(x_train, y_train, batch_size=32, epochs=5, 
validation_data=(x_test, y_test), validation_freq=1, callbacks=[cp_callback])


注:monitor 配合 save_best_only 可以保存最优模型,包括:训练损失最小模 型、测试损失最小模型、训练准确率最高模型、测试准确率最高模型等。

二、读取模型

load_weights(路径文件名)

checkpoint_save_path = "./checkpoint/mnist.ckpt"
if os.path.exists(checkpoint_save_path + '.index'):print('-------------load the model-----------------')model.load_weights(checkpoint_save_path)

三、设置回调

cp_callback = tf.keras.callbacks.ModelCheckpoint(filepath=checkpoint_save_path,save_weights_only=True,#是否只保留模型参数save_best_only=True) #是否只保留最优模型history = model.fit(x_train, y_train, batch_size=32, epochs=5, validation_data=(x_test, y_test), validation_freq=1,callbacks=[cp_callback])

 

四、完整代码

参见:https://download.csdn.net/download/pisceshsu/89723387

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Mac电脑剪切板在哪里找 苹果电脑剪切板打开教程【详解】
  • 开发工具和框架
  • python绘制3D瀑布图
  • 使用docker安装jenkins,然后使用jenkins本地发版和远程发版
  • TCP远程命令执行
  • 详细阐述Activity的生命周期
  • 下班后做小红书第7个月,涨粉7w,累计变现5w+,我只用到五个点
  • FPGA开发:Verilog基础语法
  • 【稀疏矩阵】使用torch.sparse模块
  • ML20_贝叶斯模型平均BMA详解
  • LeetCode 61. 旋转链表
  • 再识Clip
  • clickhouse 保证幂等性
  • 9月11号作业
  • Netty权威指南:Netty总结-编解码与序列化
  • Android Volley源码解析
  • Golang-长连接-状态推送
  • Netty 4.1 源代码学习:线程模型
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • REST架构的思考
  • Sequelize 中文文档 v4 - Getting started - 入门
  • Spring技术内幕笔记(2):Spring MVC 与 Web
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • text-decoration与color属性
  • zookeeper系列(七)实战分布式命名服务
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 悄悄地说一个bug
  • 如何在 Tornado 中实现 Middleware
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 译米田引理
  • Java总结 - String - 这篇请使劲喷我
  • 从如何停掉 Promise 链说起
  • 东超科技获得千万级Pre-A轮融资,投资方为中科创星 ...
  • ​iOS实时查看App运行日志
  • # 飞书APP集成平台-数字化落地
  • $.ajax()
  • (02)Hive SQL编译成MapReduce任务的过程
  • (CPU/GPU)粒子继承贴图颜色发射
  • (C语言)共用体union的用法举例
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (Java实习生)每日10道面试题打卡——JavaWeb篇
  • (solr系列:一)使用tomcat部署solr服务
  • (vue)页面文件上传获取:action地址
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (佳作)两轮平衡小车(原理图、PCB、程序源码、BOM等)
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (算法二)滑动窗口
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • .NET Core 2.1路线图
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .NET/C# 使用反射注册事件