如何使用Python创建Keras回调函数并保存权重?
Tensorflow是由Google提供的机器学习框架。它是一个开源框架,与Python配合使用,用于实现算法、深度学习应用等等。它被用于研究和生产目的。它具有优化技术,帮助快速执行复杂的数学运算。这是因为它使用NumPy和多维数组。这些多维数组也被称为“张量”。
可以使用以下代码行在Windows上安装“tensorflow”软件包 –
pip install tensorflow
Tensor是TensorFlow中使用的数据结构。它有助于将边缘连接在流程图中。这个流程图被称为“数据流图”。张量仅仅是多维数组或列表。
Keras是作为ONEIROS项目(开放式神经电子智能机器人操作系统)的一部分开发的。Keras是一个深度学习API,用Python编写。它是一个高级API,具有帮助解决机器学习问题的生产性接口。它运行在Tensorflow框架之上。它被构建来帮助快速实验。它提供了基本的抽象和构建块,这些对于开发和封装机器学习解决方案至关重要。
Keras已经存在于Tensorflow软件包中。可以使用以下代码行访问它。
import tensorflow
from tensorflow import keras
我们使用Google Colaboratory来运行下面的代码。Google Colab或Colaboratory可以帮助在浏览器上运行Python代码,不需要任何配置,并且可以免费访问GPU(图形处理单元)。Colaboratory基于Jupyter Notebook构建。以下是代码-
更多Python相关文章,请阅读:Python 教程
示例
print("设置检查点路径")
checkpoint_path = "training_1/cp.ckpt"
checkpoint_dir = os.path.dirname(checkpoint_path)
print("创建保存权重的回调")
cp_callback = tf.keras.callbacks.ModelCheckpoint(filepath = checkpoint_path, save_weights_only = True, verbose = 1)
print("使用新回调训练模型")
model.fit(train_images,
train_labels,
epochs = 10,
validation_data = (test_images, test_labels),
callbacks=[cp_callback])
ls {checkpoint_dir}
代码来源 – https://www.tensorflow.org/tutorials/keras/save_and_load
输出
解释
-
训练好的模型可以在不重新训练它或从离开的地方开始训练的情况下使用。
-
“ModelCheckpoint”方法持续保存模型在训练期间和训练结束时。
-
这样,检查点文件在每个epoch之后更新。
-
这个模型适用于训练数据。