tensorflow - 分析 keras 模型时出错

标签 tensorflow keras

我想根据这个 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())

错误

('Some keys in session_kwargs are not supported at this time: %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())

我也发现了这个 issue在 github 上,这表明尚未实现使用 Keras 模型进行分析。我很迷惑。

有谁知道如何解决它?

最佳答案

有一个拉取请求可以解决这个问题:https://github.com/tensorflow/tensorflow/pull/19932

它尚未合并以掌握,但我通过在本地合并它来使其工作,或者只是将更改手动应用于已安装的 tensorflow 库

关于tensorflow - 分析 keras 模型时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51301092/

相关文章:

Tensorflow:每行索引

json - Keras JSON 导出 : inbound_nodes

python - Tensorflow 中的目标必须是一维 Top_k_categorical_accuracy

python - Keras 在检查形状兼容性时更改输入形状的尺寸

python - 我应该如何检查 tensorflow 张量中的所有数字是否都是二进制

python - 添加 2 个不同阶的张量

python - 修改自定义 Keras 损失函数中的张量

python - Keras TimeDistributed - 权重共享吗?

python - 如何在运行时更改处理单元(从GPU到CPU)?

python - "IndexError: list index out of range"尝试使用 keras 的 vgg16 加载权重时