首页 > 解决方案 > 在 Google Colab 中保存 TensorFlow 检查点

问题描述

我正在尝试使用TF.train.Saver()保存经过训练的模型

saver = tf.train.Saver()

with tf.Session() as sess:
  [...]
  save_path = saver.save(sess, "/final_model.ckpt")

我知道这可以在本地计算机上运行,​​但是当我尝试在 Google Colab 上运行它时,它不会并给我以下错误:

ValueError:final_model.ckpt 的父目录不存在

我已经执行了这里提出的答案,

from google.colab import drive
drive.mount('/content/gdrive/')

但我保存的模型不会放在当前目录中。它进入content我在我的云端硬盘中看不到的文件夹。

我的代码在下面My Drive/TF 01/some method/,我想将检查点和日志保存在同一个文件夹中。

标签: tensorflowgoogle-colaboratory

解决方案


发生这种情况是因为以下行:

save_path = saver.save(sess, "/final_model.ckpt")

“/”符号指的是 Colab 的“家”。假设您的个人驱动器安装为:

from google.colab import drive
drive.mount('/content/gdrive/')

您可以通过以下方式保存在驱动器中:

save_path = saver.save(sess, "gdrive/My Drive/TF 01/some method/final_model.ckpt")

或者通过硬编码:

save_path = saver.save(sess, "/content/gdrive/My Drive/TF 01/some method/final_model.ckpt")

或者,如果您只想在运行时使用它,只需删除“/”符号:

save_path = saver.save(sess, "final_model.ckpt")

推荐阅读