我刚开始使用Keras并构建了一个Q-learning示例程序.我创建了一个tensorboard回调,并将其包含在对model.fit的调用中,但TensorBoard中出现的唯一内容是丢失的标量摘要和网络图.有趣的是,如果我打开图中的密集层,我会看到一个标有"bias_0"的小摘要图标和一个标记为"kernel_0"的摘要图标,但我没有看到这些出现在TensorBoard的分布或直方图标签中,就像我在我用纯张量流建立了一个模型.
我是否需要在Tensorboard中执行其他操作才能启用它们?我是否需要查看Keras生成的模型的详细信息并添加我自己的tensor_summary()调用?
我已经采用了提供的鲍鱼示例,并确保我已经理解了......好吧,我想我做到了.但是作为我正在研究的另一个估算项目是生产垃圾 - 我试图添加张量板,所以我可以理解发生了什么.
基本代码是https://www.tensorflow.org/extend/estimators
我添加了一个Session和一个writer
# Set model params
model_params = {"learning_rate": 0.01}
with tf.Session () as sess:
# Instantiate Estimator
nn = tf.contrib.learn.Estimator(model_fn=model_fn, params=model_params)
writer = tf.summary.FileWriter ( '/tmp/ab_tf' , sess.graph)
nn.fit(x=training_set.data, y=training_set.target, steps=5000)
# Score accuracy
ev = nn.evaluate(x=test_set.data, y=test_set.target, steps=1)
And added 1 line in the model_fn function so it looks like this...
def model_fn(features, targets, mode, params):
"""Model function for Estimator."""
# Connect the first hidden layer to input layer
# (features) with relu activation …Run Code Online (Sandbox Code Playgroud) 最近的TensorFlow构建似乎存在问题.当从源代码编译以与GPU一起使用时,TensorBoard可视化工具将无法运行.错误如下:
$ tensorboard
Traceback (most recent call last):
File "/home/gpu/anaconda3/envs/tensorflow/bin/tensorboard", line 7, in <module>
from tensorflow.tensorboard.tensorboard import main
ModuleNotFoundError: No module named 'tensorflow.tensorboard.tensorboard'
Run Code Online (Sandbox Code Playgroud)
系统规格:Ubuntu 16.04,NVIDIA GTX 1070,cuda-8.0,cudnn 6.0.使用Bazel从这里描述的来源安装:https: //www.tensorflow.org/install/install_sources
安装在新的anaconda3环境'tensorflow'中,执行命令时激活环境.
非常感谢任何帮助!
刚开始使用Tensorflow,但我无法在我的cmd上使用tensorboard命令,它会给出错误命令
C:\Users\tushar\PycharmProjects>tensorboard --logdir="NewTF"
'tensorboard' is not recognized as an internal or external command,
operable program or batch file.
Run Code Online (Sandbox Code Playgroud)
我正在使用窗口10并安装了tensorboard库/
我在理解新tf.contrib.summaryAPI时遇到了一些麻烦.在旧版本中,似乎所有人应该做的就是运行tf.summary.merge_all()并运行它作为操作.
但现在我们有类似的东西tf.contrib.summary.record_summaries_every_n_global_steps,可以像这样使用:
import tensorflow.contrib.summary as tfsum
summary_writer = tfsum.create_file_writer(logdir, flush_millis=3000)
summaries = []
# First we create one summary which runs every n global steps
with summary_writer.as_default(), tfsum.record_summaries_every_n_global_steps(30):
summaries.append(tfsum.scalar("train/loss", loss))
# And then one that runs every single time?
with summary_writer.as_default(), tfsum.always_record_summaries():
summaries.append(tfsum.scalar("train/accuracy", accuracy))
# Then create an optimizer which uses a global step
step = tf.create_global_step()
train = tf.train.AdamOptimizer().minimize(loss, global_step=step)
Run Code Online (Sandbox Code Playgroud)
现在来几个问题:
session.run(summaries)在一个循环中运行,我假设准确性摘要每次都会被写入,而丢失则不会,因为只有在全局步骤被30整除时它才被写入?session.run([accuracy, summaries])但只能运行,session.run(summaries)因为它们在图形中具有依赖性,对吧?有人可以举例说明如何使用tensorboard可视化numpy数组值吗?
这里有一个相关的问题,我真的不明白. Tensorboard记录非张量(numpy)信息(AUC)
例如,如果我有
for i in range(100):
foo = np.random.rand(3,2)
Run Code Online (Sandbox Code Playgroud)
如何使用tensorboard进行100次迭代来跟踪foo的分布?有人可以给出代码示例吗?谢谢.
给定张量流事件文件,如何提取与特定标记对应的图像,然后以通用格式将它们保存到磁盘,例如.png?
我正在使用带有Tensorflow后端的Keras.我的工作涉及在我的数据集上比较几个模型的性能,如Inception,VGG,Resnet等.我想在一个图中绘制几个模型的训练精度.我试图在Tensorboard中这样做,但它不起作用.
有没有办法使用Tensorboard在一个图中绘制多个图形,还是有其他方法可以做到这一点?
谢谢
您好,我正在尝试使用Resnet神经网络通过使用微调方法来训练癌症数据集
这是我以前用来微调的方法.
image_input = Input(shape=(224, 224, 3))
model = ResNet50(input_tensor=image_input, include_top=True,weights='imagenet')
model.summary()
last_layer = model.get_layer('avg_pool').output
x= Flatten(name='flatten')(last_layer)
out = Dense(num_classes, activation='softmax', name='output_layer')(x)
custom_resnet_model = Model(inputs=image_input,outputs= out)
custom_resnet_model.summary()
for layer in custom_resnet_model.layers[:-1]:
layer.trainable = False
custom_resnet_model.layers[-1].trainable
custom_resnet_model.compile(Adam(lr=0.001),loss='categorical_crossentropy',metrics=['accuracy'])
custom_resnet_model.summary()
tensorboard = TensorBoard(log_dir='./logs', histogram_freq=0,
write_graph=True, write_images=False)
hist = custom_resnet_model.fit(X_train, X_valid, batch_size=32, epochs=nb_epoch, verbose=1, validation_data=(Y_train, Y_valid),callbacks=[tensorboard])
(loss, accuracy) = custom_resnet_model.evaluate(Y_train,Y_valid,batch_size=batch_size,verbose=1)
print("[INFO] loss={:.4f}, accuracy: {:.4f}%".format(loss,accuracy * 100))
df = pd.read_csv('C:/CT_SCAN_IMAGE_SET/resnet_50/dbs2017/data/stage1_sample_submission.csv')
df2 = pd.read_csv('C:/CT_SCAN_IMAGE_SET/resnet_50/dbs2017/data/stage1_solution.csv')
x = np.array([np.mean(np.load('E:/224x224/%s.npy' % str(id)), axis=0) for id in df['id'].tolist()])
x = …Run Code Online (Sandbox Code Playgroud) 早在TensorFlow <2.0中,我们通过将图层分组为或来定义图层,尤其是更复杂的设置,例如初始模块。tf.name_scopetf.variable_scope
利用这些运算符,我们可以方便地构建计算图,从而使TensorBoard的图视图更容易解释。
这对于调试复杂的体系结构非常方便。
不幸的是,tf.keras似乎没有理会,tf.name_scope并且tf.variable_scope在TensorFlow> = 2.0中消失了。因此,这样的解决方案...
with tf.variable_scope("foo"):
with tf.variable_scope("bar"):
v = tf.get_variable("v", [1])
assert v.name == "foo/bar/v:0"
Run Code Online (Sandbox Code Playgroud)
...不再可用。有替代品吗?
我们如何在TensorFlow> = 2.0中对图层和整个模型进行分组?如果我们不对图层进行分组,那么tf.keras只需将所有内容依次放置在图形视图中,就会给复杂的模型造成很大的混乱。
有替代品tf.variable_scope吗?到目前为止我找不到任何东西,但是在TensorFlow <2.0中大量使用了该方法。
编辑:我现在已经为TensorFlow 2.0实现了一个示例。这是使用tf.keras以下命令实现的简单GAN :
# Generator
G_inputs = tk.Input(shape=(100,), name=f"G_inputs")
x = tk.layers.Dense(7 * 7 * 16)(G_inputs)
x = tf.nn.leaky_relu(x)
x = tk.layers.Flatten()(x)
x = tk.layers.Reshape((7, 7, 16))(x)
x = tk.layers.Conv2DTranspose(32, (3, 3), padding="same")(x)
x = …Run Code Online (Sandbox Code Playgroud)