资料:https://tensorflow.google.cn/tutorials/keras/save_and_load#选项

Keras的方式

Keras版本模型保存与加载

函数

保存模型权重:model.save_weights

保存HDF5文件:model.save

保存pb文件:tf.saved_model

tf.saved_modelmodel.save的区别在于,tf.saved_model格式的模型可以直接用来预测,但是tf.saved_model没有保存优化器配置,而model.save保存了优化器配置,所以整体更大。

保存模型权重方法仅仅保存了模型中的权重,而保存模型文件的model.save可以将模型和优化器一起保存,包括权重(weights)、模型配置(architecture)和优化器配置(optimizer configuration)。这样做的好处是,当你恢复模型时,完全不依赖于原来搭建模型的代码。

保存完整的模型有很多应用场景,比如在浏览器中使用TensorFlow.js加载运行,比如在移动设备上使用TensorFlow Lite加载运行。

使用

保存为pd格式

保存:model.save("要保存的目录名称")

读取:model = tf.keras.models.load_model('保存模型的目录名称')

保存为hdf5格式

同上,只是写的不再是目录名称,而是'xxx.h5'

注意:

如果发生报错:model_config = json.loads(model_config.decode('utf-8'))

原因:tensorflow2.1.0支持h5py<3.0.0 而在安装tensorflow会自动安装h5py 3.1.0 。

旧版本的方式(v1.x)

我没安装这个版本的tensorflow,没有经过测试

函数

函数:tf.train.Saver(var_list=none,max_to_keep=5)

  • 保存和加载模型,文件格式:checkpoint文件(扩展名:ckpt)
  • var_list:指定要保存和还原的变量,可以作为一个dict或一个列表传递
  • max_to_keep:指示要保留的最近检查点文件的最大数量。创建新文件时,会删除较旧的文件,如果无或者0,则保留所有检查点文件。默认为5(保留最新的5个检查点文件)

使用方法

旧版本使用办法)(1.x)

saver = tf.train.Saver()
saver.save(Model,"./路径/文件名.ckpt")
saver.restore(Model,"./路径/文件名.ckpt")

【人工智能】深度学习框架值TF入门-模型保存与加载的更多相关文章

  1. 人工智能深度学习框架MXNet实战:深度神经网络的交通标志识别训练

    人工智能深度学习框架MXNet实战:深度神经网络的交通标志识别训练 MXNet 是一个轻量级.可移植.灵活的分布式深度学习框架,2017 年 1 月 23 日,该项目进入 Apache 基金会,成为 ...

  2. 《深度学习框架PyTorch:入门与实践》的Loss函数构建代码运行问题

    在学习陈云的教程<深度学习框架PyTorch:入门与实践>的损失函数构建时代码如下: 可我运行如下代码: output = net(input) target = Variable(t.a ...

  3. 深度学习-05(tensorflow模型保存与加载、文件读取、图像分类:手写体识别、服饰识别)

    文章目录 深度学习-05 模型保存于加载 什么是模型保存与加载 模型保存于加载API 案例1:模型保存/加载 读取数据 文件读取机制 文件读取API 案例2:CSV文件读取 图片文件读取API 案例3 ...

  4. [PyTorch 学习笔记] 7.1 模型保存与加载

    本章代码: https://github.com/zhangxiann/PyTorch_Practice/blob/master/lesson7/model_save.py https://githu ...

  5. tensorflow 模型保存与加载 和TensorFlow serving + grpc + docker项目部署

    TensorFlow 模型保存与加载 TensorFlow中总共有两种保存和加载模型的方法.第一种是利用 tf.train.Saver() 来保存,第二种就是利用 SavedModel 来保存模型,接 ...

  6. tensorflow实现线性回归、以及模型保存与加载

    内容:包含tensorflow变量作用域.tensorboard收集.模型保存与加载.自定义命令行参数 1.知识点 """ 1.训练过程: 1.准备好特征和目标值 2.建 ...

  7. sklearn模型保存与加载

    sklearn模型保存与加载 sklearn模型的保存和加载API 线性回归的模型保存加载案例 保存模型 sklearn模型的保存和加载API from sklearn.externals impor ...

  8. 《深度学习框架PyTorch:入门与实践》读书笔记

    https://github.com/chenyuntc/pytorch-book Chapter2 :PyTorch快速入门 + Chapter3: Tensor和Autograd + Chapte ...

  9. TensorFlow构建卷积神经网络/模型保存与加载/正则化

    TensorFlow 官方文档:https://www.tensorflow.org/api_guides/python/math_ops # Arithmetic Operators import ...

  10. 转 tensorflow模型保存 与 加载

    使用tensorflow过程中,训练结束后我们需要用到模型文件.有时候,我们可能也需要用到别人训练好的模型,并在这个基础上再次训练.这时候我们需要掌握如何操作这些模型数据.看完本文,相信你一定会有收获 ...

随机推荐

  1. android中的render线程是什么?

    在 Android 中,Render 线程(也称为渲染线程)是一个专门用于处理 UI 绘制和动画的线程.它的主要职责是确保用户界面在屏幕上流畅且高效地呈现.这个线程的引入是为了将渲染任务从主线程(UI ...

  2. DWC3和XHCI的区别

    DWC3(DesignWare USB 3.0 Controller)和XHCI(eXtensible Host Controller Interface)都是与USB控制器相关的技术,但它们的作用和 ...

  3. pcss 软阴影

    PCF Percentage Closer Filtering:PCF是一种用于阴影反锯齿的方法,本身不是软阴影方法. 算法流程说明: Perform multiple (e.g. 7x7) dept ...

  4. vue3中的vue-18n的table表格标题不动态变化中英文

    使用 computed 即可 eg: const columns = computed(() => { return reactive<any>([ { title: proxy.$ ...

  5. Linux 系统常见 的命令

    uname -a 查看linux 的版本信息 : pwd :打印当前的工作目录 ,print work directory: cd  改变目录 ,change directory : cd . 当前目 ...

  6. 云原生周刊:GitOps 的 4 条核心原则

    日前在温哥华举行的 cdCON + GitOpsCon 上,分享内容以 GitOps 原则为特色: GitOps 是声明式的: GitOps 应用程序是版本化的和不可变的: 自动拉取 GitOps 应 ...

  7. 云原生爱好者周刊:你对 K8s 集群升级有信心吗?

    开源项目推荐 GoNoGo 在 Kubernetes 集群中,有多种因素会影响到附加组件的升级成功率,比如某些组件只支持特定的 API 或者特定的 Kubernetes 版本,某些组件废弃了特定的 a ...

  8. Solution of CF1842C

    Brief description of the title 若 \(a_i=a_j\) 且 \(1\le i < j\le |a|\).则删除 \(a_{i}\) 到 \(a_j\) 所有数. ...

  9. Python实现回数

    题目:回数是指从左向右读和从右向左读都是一样的数,例如 12321,909.请利用 filter()滤掉非回数: 思路:要实现回数判断,主要是将输入的数找到其各个位置的值,然后判断前后相对应的位置是否 ...

  10. vue 父子组件之间传值

    在vue中父子组件传值是必不可少的,大家必须要学会! 首先父组件向子组件传值: 父组件:比如我们传teacher为index,如果我们传值变量可以使用 : 绑定我们在data中定义的变量. 子组件:为 ...