我目前使用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?还有其他人在这方面取得了成功吗?
答案 0 :(得分:5)
您需要创建一个回调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])