codecamp

TensorFlow回调函数:tf.keras.callbacks.TensorBoard

tf.keras.callbacks.TensorBoard函数

类 TensorBoard

继承自:Callback

定义在:tensorflow/python/keras/callbacks.py。

Tensorboard基本可视化。

TensorBoard是由Tensorflow提供的一个可视化工具。

此回调为TensorBoard编写日志,该日志允许您可视化训练和测试度量的动态图形,也可以可视化模型中不同层的激活直方图。

如果您已经使用pip安装了TensorFlow,那么您应该能够从命令行启动TensorBoard:

tensorboard --logdir=/full_path_to_your_logs

参数:

  • log_dir:保存TensorBoard要解析的日志文件的目录的路径。
  • histogram_freq:频率(在epoch中),计算模型层的激活和权重直方图。如果设置为0,则不会计算直方图。必须为直方图可视化指定验证数据(或拆分)。
  • write_graph:是否在TensorBoard中可视化图像。当write_graph设置为True时,日志文件可能会变得非常大。
  • write_grads:是否在TensorBoard中可视化渐变直方图。 histogram_freq必须大于0。
  • batch_size:用以直方图计算的传入神经元网络输入批的大小。
  • write_images:是否在TensorBoard中编写模型权重以显示为图像。
  • embeddings_freq:将保存所选嵌入层的频率(在epoch中)。如果设置为0,则不会计算嵌入。要在TensorBoard的嵌入选项卡中显示的数据必须作为embeddings_data传递。
  • embeddings_layer_names:要关注的层名称列表。如果为None或空列表,则将监测所有嵌入层。
  • embeddings_metadata:将层名称映射到文件名的字典,其中保存了此嵌入层的元数据。如果相同的元数据文件用于所有嵌入层,则可以传递字符串。
  • embeddings_data:要嵌入在embeddings_layer_names指定的层的数据。Numpy数组(如果模型有单个输入)或Numpy数组列表(如果模型有多个输入)。
  • update_freq:'batch'或'epoch'或整数。使用'batch'时,在每个batch后将损失和指标写入TensorBoard。这同样适用'epoch'。如果使用整数,比方说1000,回调将会在每1000个样本后将指标和损失写入TensorBoard。请注意,过于频繁地写入TensorBoard会降低您的训练速度。

可能引发的异常:

  • ValueError:如果设置了histogram_freq且未提供验证数据。

Eager兼容性

使用Tensorboard回调将在启用eager执行时起作用,但不支持输出权重和渐变的直方图摘要,因此histogram_freq将被忽略。

__init__
__init__(
    log_dir='./logs',
    histogram_freq=0,
    batch_size=32,
    write_graph=True,
    write_grads=False,
    write_images=False,
    embeddings_freq=0,
    embeddings_layer_names=None,
    embeddings_metadata=None,
    embeddings_data=None,
    update_freq='epoch'
)

初始化自我。

方法

on_batch_begin
on_batch_begin(
    batch,
    logs=None
)
on_batch_end
on_batch_end(
    batch,
    logs=None
)

为每个训练批次写入指标的标量摘要。

on_epoch_begin
on_epoch_begin(
    epoch,
    logs=None
)

将直方图操作添加到Model eval_function回调中,重置批次计数。

on_epoch_end
on_epoch_end(
    epoch,
    logs=None
)

检查摘要操作是否应该运行下一个epoch,记录标量摘要。

on_train_batch_begin
on_train_batch_begin(
    batch,
    logs=None
)
on_train_batch_end
on_train_batch_end(
    batch,
    logs=None
)
on_train_begin
on_train_begin(logs=None)
on_train_end
on_train_end(logs=None)
set_model
set_model(model)

设置Keras模型并创建摘要操作。

set_params
set_params(params)
TensorFlow回调函数:tf.keras.callbacks.RemoteMonitor
TensorFlow回调函数:tf.keras.callbacks.TerminateOnNaN
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

TensorFlow 函数介绍

TensorFlow 函数模块:tf

TensorFlow的image模块

TensorFlow使用之tf.io

TensorFlow使用之tf.keras

TensorFlow函数教程:tf.keras.applications

TensorFlow函数教程:tf.keras.backend

TensorFlow使用之tf.metrics

TensorFlow使用之tf.nn

TensorFlow使用之tf.python_io

TensorFlow 功能函数

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }