AttributeError: 'Namespace' object has no attribute 'add_hparam'
时间: 2023-09-12 08:05:52 浏览: 132
【Python】AttributeError: ‘AutoSchema’ object has no attribute ‘get_link’
5星 · 资源好评率100%
这个错误通常是因为 TensorFlow 版本不兼容导致的。在 TensorFlow 2.0 中,`add_hparam` 方法已被弃用。如果你使用的是旧版本的 TensorFlow,可以尝试使用以下代码替换:
```python
if not hasattr(tf.contrib, 'training'):
tf.contrib.training = tf.compat.v1.train
# Create a new TensorFlow summary object with the given name.
summary = tf.summary.create_file_writer(logdir)
# Log hparams
if FLAGS.hparams:
with summary.as_default():
hp.hparams_config(
hparams=[hp.HParam(key, hp.Discrete(values))
for key, values in sorted(FLAGS.hparams.items())],
metrics=[hp.Metric('loss', display_name='Loss')],
)
```
如果你使用的是 TensorFlow 2.0 或更高版本,可以使用以下代码:
```python
if not hasattr(tf, 'summary'):
tf.summary = tf.compat.v1.summary
# Create a new TensorFlow summary object with the given name.
summary = tf.summary.create_file_writer(logdir)
# Log hparams
if FLAGS.hparams:
with summary.as_default():
hp.hparams_config(
hparams=[hp.HParam(key, hp.Discrete(values))
for key, values in sorted(FLAGS.hparams.items())],
metrics=[hp.Metric('loss', display_name='Loss')],
)
```
这应该能够解决这个问题。
阅读全文