如何使用 Keras 从检查点加载权重并使用 Python 重新评估模型?


TensorFlow 是 Google 提供的一个机器学习框架。它是一个开源框架,与 Python 结合使用,可以实现算法、深度学习应用程序等等。它用于研究和生产目的。

可以使用以下代码行在 Windows 上安装 “tensorflow” 包:

pip install tensorflow

张量 (Tensor) 是 TensorFlow 中使用的数据结构。它有助于连接流图中的边。此流图称为“数据流图”。张量只不过是多维数组或列表。它们可以使用三个主要属性来识别:

  • - 它表示张量的维数。可以理解为张量的阶数或已定义张量的维数。

  • 类型 - 它表示与张量元素关联的数据类型。它可以是一维、二维或 n 维张量。

  • 形状 - 它是行数和列数的总和。

Keras 在希腊语中意为“角”。Keras 是作为 ONEIROS 项目(开放式神经电子智能机器人操作系统)研究的一部分开发的。Keras 是一个用 Python 编写的深度学习 API。它是一个高级 API,具有高效的接口,有助于解决机器学习问题。它运行在 TensorFlow 框架之上。它是为了帮助快速实验而构建的。它提供了开发和封装机器学习解决方案所必需的基本抽象和构建块。

Keras 已经存在于 TensorFlow 包中。可以使用以下代码行访问它。

import tensorflow
from tensorflow import keras

我们使用 Google Colaboratory 来运行以下代码。Google Colab 或 Colaboratory 帮助在浏览器上运行 Python 代码,无需任何配置,并且可以免费访问 GPU(图形处理单元)。Colaboratory 基于 Jupyter Notebook 构建。以下是代码:

示例

print("The weights are loaded")
model.load_weights(checkpoint_path)

print("The model is being re-evaluated")
loss, acc = model.evaluate(test_images, test_labels, verbose=2)
print("This is the restored model, with accuracy: {:5.3f}%".format(100 * acc))

代码来源 -  https://tensorflowcn.cn/tutorials/keras/save_and_load

输出

The Weights are loaded
The model is beign re-evaluated
32/32 - 0 - loss:0.4066 - sparse_categorical_accuracy:0.8740
This is the restored model, with accuracy:87.400%

解释

  • 这个新模型用于将权重映射到它。

  • “evaluate” 方法用于检查模型在新数据上的性能。

  • 此外,还确定了模型训练时的损失和模型的准确性。

  • 损失和准确性将打印在控制台上。

更新于:2021年1月20日

309 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.