在 Google Colab 中保存 TensorFlow 检查点

Mat*_* Kh 3 tensorflow google-colaboratory

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

saver = tf.train.Saver()

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

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

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

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

from google.colab import drive
drive.mount('/content/gdrive/')
Run Code Online (Sandbox Code Playgroud)

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

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

mao*_*o95 5

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

save_path = saver.save(sess, "/final_model.ckpt")
Run Code Online (Sandbox Code Playgroud)

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

from google.colab import drive
drive.mount('/content/gdrive/')
Run Code Online (Sandbox Code Playgroud)

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

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

或者通过硬编码:

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

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

save_path = saver.save(sess, "final_model.ckpt")
Run Code Online (Sandbox Code Playgroud)