简体   繁体   English

警告:tensorflow:`write_grads` 将在 TensorFlow 2.0 中忽略`TensorBoard` 回调

[英]WARNING:tensorflow:`write_grads` will be ignored in TensorFlow 2.0 for the `TensorBoard` Callback

I am using the following lines of codes to visualise the gradients of an ANN model using tensorboard我正在使用以下代码行使用张量板可视化 ANN model 的梯度

  tensorboard_callback = tf.compat.v1.keras.callbacks.TensorBoard(log_dir='./Graph', histogram_freq=1, write_graph = True, write_grads =True, write_images = False)

tensorboard_callback .set_model(model)


%tensorboard --logdir ./Graph

I received a warning message saying "WARNING:tensorflow: write_grads will be ignored in TensorFlow 2.0 for the TensorBoard Callback."我收到一条警告消息,上面写着“WARNING:tensorflow: write_grads将在 TensorFlow 2.0 中忽略TensorBoard回调。”

I get the tensorboard output, but without gradients.我得到了张量板 output,但没有渐变。

在此处输入图像描述

What could be the possible reason?可能的原因是什么?

(Note: I use 2.3.0 tensorflow version) (注:我用的是2.3.0 tensorflow版本)

Thank you.谢谢你。

Write_Grads was not implemented in TF2.x . Write_Grads未在TF2.x中实现。 This is one of the highly expected feature request that is still open.这是仍然开放的备受期待的功能请求之一。 Please check this GitHub issue as feature request.请检查此 GitHub问题作为功能请求。 So, we only need to import TF1.x modules and use write_grads as shown in the following code.因此,我们只需要导入TF1.x模块并使用write_grads ,如下代码所示。

# Load the TensorBoard notebook extension
%load_ext tensorboard

import tensorflow as tf
import datetime

# Clear any logs from previous runs
!rm -rf ./logs/ 

# Disable V2 behavior
tf.compat.v1.disable_v2_behavior()

mnist = tf.keras.datasets.mnist

(x_train, y_train),(x_test, y_test) = mnist.load_data()

x_train, x_test = x_train / 255.0, x_test / 255.0


def create_model():

  return tf.keras.models.Sequential([

    tf.keras.layers.Flatten(input_shape=(28, 28)),

    tf.keras.layers.Dense(512, activation='relu'),

    tf.keras.layers.Dropout(0.2),

    tf.keras.layers.Dense(10, activation='softmax')

  ])

 

model = create_model()

model.compile(optimizer='adam',

              loss='sparse_categorical_crossentropy',

              metrics=['accuracy'])


log_dir = "logs/fit/" + datetime.datetime.now().strftime("%Y%m%d-%H%M%S")

tensorboard_callback = tf.compat.v1.keras.callbacks.TensorBoard(log_dir=log_dir, histogram_freq=1, write_grads =True)

model.fit(x=x_train, y=y_train, epochs=1, validation_data=(x_test, y_test), callbacks=[tensorboard_callback]) 

%tensorboard --logdir logs/fit

Output: Output:

Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz
11493376/11490434 [==============================] - 0s 0us/step

Train on 60000 samples, validate on 10000 samples
WARNING:tensorflow:From /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training_v1.py:2048: Model.state_updates (from tensorflow.python.keras.engine.training) is deprecated and will be removed in a future version.
Instructions for updating:
This property should not be used in TensorFlow 2.0, as updates are applied automatically.
   32/60000 [..............................] - ETA: 0s - loss: 2.3311 - acc: 0.0312WARNING:tensorflow:Callbacks method `on_train_batch_end` is slow compared to the batch time (batch time: 0.0055s vs `on_train_batch_end` time: 0.0235s). Check your callbacks.
60000/60000 [==============================] - 17s 288us/sample - loss: 0.2187 - acc: 0.9349 - val_loss: 0.1012 - val_acc: 0.9690
<tensorflow.python.keras.callbacks.History at 0x7f7ebd1d3d30>

在此处输入图像描述

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM