Tensorflow 2.x(keras)源码详解之第十章:keras中的模型保存与加载(详解Checkpoint&md5&模型序列化)

  大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理解,而且能够帮助新手快速入门。

  本文主要介绍了Tensorflow 2.x(keras)源码详解之第十章:keras中的模型保存与加载(详解Checkpoint&md5&模型序列化),希望能对学习TensorFlow 2的同学有所帮助。

文章目录

  • 1. 模型保存与加载:综述
  • 2. 前提总结
  • 3. 仅保存模型权重
    • 3.1 在内存中将权重进行迁移
    • 3.2 将权重保存到磁盘上
      • 3.2.1 Checkpoint(检查点)
      • 3.2.2 使用tf.train.checkpoint()保存多个检查点
      • 3.2.3 使用tf.train.checkpoint加载多个检查点
      • 3.2.4 tf.train.checkpoint保存和加载单一检查点
      • 3.2.5 save_weights保存检查点
      • 3.2.6 save_weights保存成HDF5格式
  • 4. 仅保存模型架构/配置
    • 4.1 layer、序贯模型、函数式 API 模型的配置
    • 4.2 自定义layer、model的保存与加载
  • 5. 保存和加载模型及权重
    • 5.1 TensorFlow SavedModel 格式
    • 5.2 HDF5格式

1. 模型保存与加载:综述

  • Keras 模型由多个组件组成:

    • 架构/配置:模型架构指模型包含哪些层以及它们如何连接,模型的配置指将架构序列化后得到结果,从形式上看是包含模型参数的字典或json。
      • 优化器:通过model.compile添加,属于架构或模型的一部分。
      • 损失和指标:通过model.compile或调用add_loss()/ add_metric()添加,属于架构或模型的一部分。
    • 权重值(“模型状态”)。

你可能感兴趣的:(tensorflow,keras,模型保存)