使用tensorboard可视化:
下面是一个使用tensorboard的例子:
import tensorflow as tf
tf.random.set_seed(42)
logdir = 'logs/'
writer = tf.summary.create_file_writer(logdir)
@tf.function
def my_matmult_func(x, y):
result = tf.matmul(x, y)
return result
x = tf.random.uniform((7, 7))
y = tf.random.uniform((7, 7))
tf.summary.trace_on(graph=True, profiler=True)#打开图形跟踪
z = my_matmult_func(x, y)
with writer.as_default():
tf.summary.trace_export(name="my_func_trace",step=0,profiler_outdir=logdir)#导出到日志
tensorboard --logdir=logs#启用视图
以下是一些其他类型数据的导出方法:
with file_writer.as_default():
tf.summary.image("Training data", training_images, step=0)#输出图像
with file_writer.as_default():
tf.summary.scalar('scalar variable', variable, step=0)#输出标量
with file_writer.as_default():
tf.summary.audio('audio file', data, sample_rate=44100,step=0)#输出音频
with file_writer.as_default():
tf.summary.histogram('histogram', data, step=0)#输出柱状图
下面是一个查看批处理图像的例子:
import tensorflow as tf
from tensorflow.keras.preprocessing.image import ImageDataGenerator
logdir = 'logs/'
writer = tf.summary.create_file_writer(logdir)
train_datagen = ImageDataGenerator(rescale = 1./255)
batch_size = 25
training_set = train_datagen.flow_from_directory('image_data',target_size = (224, 224),batch_size = batch_size,class_mode = 'binary')
with file_writer.as_default():
tf.summary.image("Training data",next(training_set)[0],max_outputs=batch_size,step=0)
tensorboard --logdir=logs
结果如图:
使用tensorflow_hub引用预训练模型:
import tensorflow_hub as hub#加载tensorflow_hub库
module = hub.load("tfhub.dev/google/imag…") #加载hub上的模型
layer = hub.KerasLayer("tfhub.dev/google/imag…") #将预训练模型用作自己应用程序模型的层来训练(迁移学习)
下面是一个从tensorflow_hub上下载的模型,并在tensorboard上查看架构的例子:
import tensorflow as tf
import tensorflow_hub as hub
from tensorflow.python.client import session
from tensorflow.python.summary import summary
from tensorflow.python.framework import ops
logdir = 'logs/'
module = hub.load('tfhub.dev/google/imag…')
model = module.signatures['default']
with session.Session(graph=ops.Graph()) as sess:
file_writer = summary.FileWriter(logdir)
file_writer.add_graph(model.graph)
tensorboard --logdir=logs
结果如下图: