我想根据此comment on github来介绍我的Keras模型。我将tf.Keras API与Tensorflow版本:1.9.0-rc2和Keras版本:2.1.6-tf一起使用。
run_options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
run_metadata = tf.RunMetadata()
training_set = load_datasets(...)
model.compile(loss=helpers.mean_categorical_crossentropy,optimizer='adam',options=run_options,run_metadata=run_metadata)
model.fit(training_set.make_one_shot_iterator(), steps_per_epoch=steps_per_epoch_train,epochs=num_epochs, verbose=2)
trace = timeline.Timeline(step_stats=run_metadata.step_stats)
with open('timeline.ctf.json', 'w') as f:
f.write(trace.generate_chrome_trace_format())
错误
(('目前不支持session_kwargs中的某些键:%s', dict_keys([['options','run_metadata']))
在另一个github post中,有人给出了这个示例,并且该示例以某种方式运行而没有错误。但是,我得到了与上述相同的错误。
import keras
from keras.layers.core import Dense
from keras.models import Sequential
import tensorflow as tf
from tensorflow.python.client import timeline
import numpy as np
x = np.random.randn(10000, 2)
y = (x[:, 0] * x[:, 1]) > 0 # xor
run_options = tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE)
run_metadata = tf.RunMetadata()
model = Sequential()
model.add(Dense(units=64, activation='relu', input_dim=2))
model.add(Dense(units=2, activation='softmax'))
model.compile(loss='categorical_crossentropy',
optimizer='sgd',
options=run_options,
run_metadata=run_metadata)
model.fit(x, keras.utils.to_categorical(y), epochs=1)
trace = timeline.Timeline(step_stats=run_metadata.step_stats)
with open('timeline.ctf.json', 'w') as f:
f.write(trace.generate_chrome_trace_format())
我还在github上发现了这个issue,这表明尚未使用Keras模型进行性能分析。我很困惑。
有人知道如何解决吗?
答案 0 :(得分:1)
有一个拉取请求可解决此问题:https://github.com/tensorflow/tensorflow/pull/19932
它还没有被合并到母版中,但是我可以通过在本地合并它,或者简单地将更改手动应用于已安装的tensorflow库来使其工作