tensorflow - tensorflow2: keras: model.fit() 回调和急切模式
问题描述
我正在使用 keras API 运行 Tensorflow 2.1。我遵循以下编码风格:
model = tf.keras.Sequential()
...
model.fit(..., callbacks=callbacks)
现在,我想将一些中间层张量值保存为图像摘要(作为第 n 个训练步骤中发生的示例)。为了做到这一点,我实现了我自己的回调类。我还了解了如何keras.callbacks.TensorBoard
实现,因为它可以将图层权重保存为图像摘要。我在我的中执行以下操作on_epoch_end
:
tensor = self.model.get_layer(layer_name).output
with context.eager_mode():
with ops.init_scope():
tensor = tf.keras.backend.get_value(tensor)
tf.summary.image(layer_name, tensor, step=step, max_outputs=1)
不幸的是,我仍然遇到与渴望/图形模式相关的问题:
tensor = tf.keras.backend.get_value(tensor)
File "/home/matwey/lab/venv/lib/python3.6/site-packages/tensorflow_core/python/keras/backend.py", line 3241, in get_value
return x.numpy()
AttributeError: 'Tensor' object has no attribute 'numpy'
不幸的是,关于如何正确组合 keras 回调和tf.summary.image
. 我该如何克服这个问题?
更新: tf_nightly-2.2.0.dev20200427 具有相同的行为。
解决方案
推荐阅读
- php - Yii2 在 `$this->modelClass::find()->andWhere(['post_id' => \Yii::$app->request->get('postId')])` 上出现语法错误,这是一个有效条款
- html - 表格行在第一个表格中没有拉伸全长,在第二个表格中它做得很好
- python - 如何使用递归遍历列表中的所有值?
- php - JWT 认证 / Laravel
- mysql - 在 mysql 查询中键入自省
- java - 使用 java swing 显示字体的问题
- tensorflow - 无法加载 CUDA。Tensorflow 尝试加载错误版本的 cudart64
- java - 使用队列的 Java 贪吃蛇游戏
- python - sklearn.model_selection :TimeSeriesSplit 的采样问题
- shell - 如何通过计算前缀的使用次数来删除文件?