【问题标题】:Tensorboard + Keras + ML EngineTensorboard + Keras + ML 引擎
【发布时间】:2017-12-18 20:30:13
【问题描述】:

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

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

然后我的存储桶中没有保存日志:

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

那么,在 ML Engine 上训练 Keras 模型时,如何获取日志并运行 tensorboard?有其他人在这方面取得成功吗?

【问题讨论】:

    标签: keras tensorboard google-cloud-ml-engine


    【解决方案1】:

    您需要创建一个回调 keras.callbacks.TensorBoard(..) 才能写出日志。见Tensorboad callback。您也可以将 GCS 路径 (gs://path/to/my/logs) 提供给回调的 log_dir 参数,然后将 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])
    

    【讨论】:

    • 太棒了!那完全奏效了。我正在使用 Tensorboard 回调,但没有意识到我可以在其中放置 GCS 路径。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-04-20
    • 2018-05-03
    • 1970-01-01
    • 2019-02-07
    • 1970-01-01
    • 2020-03-04
    • 1970-01-01
    相关资源
    最近更新 更多