Jupyter下的tensorboard使用

tensorflow自带的tensorboard功能强大,图像生成,参数变化等都可以进行可视化。
不过这个要单独启动才行。
使用方法可参考:http://wiki.jikexueyuan.com/project/tensorflow-zh/how_tos/summaries_and_tensorboard.html

如果要求不高,只是想在jupyter下面,图像生成,简单的可视化即可的话,有这下的方法。
本文参考:https://qiita.com/kegamin/items/887c7dfe8bbb76197741

 

简单的说,就是两步,
1,生成tensorboard.py,复制下面的代码即可。
2,在调用的地步,import tensorboard as tb 并且调用tb.show_graph

 

代码:

from IPython.display import clear_output, Image, display, HTML
import tensorflow as tf
import numpy as np

def strip_consts(graph_def, max_const_size=32):
    """Strip large constant values from graph_def."""
    strip_def = tf.GraphDef()
    for n0 in graph_def.node:
        n = strip_def.node.add() 
        n.MergeFrom(n0)
        if n.op == 'Const':
            tensor = n.attr['value'].tensor
            size = len(tensor.tensor_content)
            if size > max_const_size:
                tensor.tensor_content = bytes(""%size, 'utf-8')
    return strip_def

def show_graph(graph_def, max_const_size=32):
    """Visualize TensorFlow graph."""
    if hasattr(graph_def, 'as_graph_def'):
        graph_def = graph_def.as_graph_def()
    strip_def = strip_consts(graph_def, max_const_size=max_const_size)
    code = """
        
        
        
""".format(data=repr(str(strip_def)), id='graph'+str(np.random.rand())) iframe = """ """.format(code.replace('"', '"')) display(HTML(iframe))

调用方法:
 

import tensorboard1 as tb

# 線形回帰の例

# グラフのリセット
tf.reset_default_graph()

# プレースホルダーと変数の宣言
x = tf.placeholder(tf.float32, name='x')
t = tf.placeholder(tf.float32, name='t')
W = tf.Variable(tf.random_uniform([5,3], -1.0, 1.0), name='W')
b = tf.Variable(tf.zeros([3]), name='b')
# グラフの構築
y = tf.add(tf.matmul(x, W), b, name='y')

# 誤差関数の定義
loss = tf.reduce_mean((y - t)**2, name='loss')

tb.show_graph(tf.Session().graph)

 

实际效果图(非上述代码)

Jupyter下的tensorboard使用_第1张图片

你可能感兴趣的:(AI,学习笔记)