Tensorboard + Keras + 机器学习引擎

Tensorboard + Keras + ML Engine

我目前有 Google Cloud ML Engine 设置来训练在 Keras 中创建的模型。使用 Keras 时,ML Engine 似乎不会自动将日志保存到存储桶中。我在 ML 引擎作业页面中看到了日志,但它们没有显示在我的存储桶中,因此我无法在训练时 运行 张量板。

您可以看到作业成功完成并生成日志:

但是我的存储桶中没有保存日志:

我在设置环境时遵循了本教程:(http://liufuyang.github.io/2017/04/02/just-another-tensorflow-beginner-guide-4.html)

那么,在 ML Engine 上训练 Keras 模型时,如何获取日志和 运行 张量板?还有其他人成功过吗?

您需要创建回调 keras.callbacks.TensorBoard(..) 才能写出日志。参见 Tensorboad callback。您也可以向回调的 log_dir 参数提供 GCS 路径 (gs://path/to/my/logs),然后将 Tensorboard 指向该位置。您将在调用 model.fit_generator(...) 或 model.fit(...) 时将回调添加为列表。

tb_logs = callbacks.TensorBoard(
            log_dir='gs://path/to/logs',
            histogram_freq=0,
            write_graph=True,
            embeddings_freq=0)

model.fit_generator(..., callbacks=[tb_logs])