Python 3.x 无法导入tf.contrib.metrics.f1_分数
我试图使用tf.contrib.metrics.F1_score计算F1分数,但它给了我一个错误。我知道如何使用精度和召回率来计算它,但我想使用这个函数 我已经在Ubuntu16.04 LTS和tensorflow版本1.9.0上试用过,有gpu支持,没有gpu支持Python 3.x 无法导入tf.contrib.metrics.f1_分数,python-3.x,tensorflow,Python 3.x,Tensorflow,我试图使用tf.contrib.metrics.F1_score计算F1分数,但它给了我一个错误。我知道如何使用精度和召回率来计算它,但我想使用这个函数 我已经在Ubuntu16.04 LTS和tensorflow版本1.9.0上试用过,有gpu支持,没有gpu支持 from tensorflow.contrib.metrics import f1_score as ms 我得到这个错误: ImportError: Traceback (most recent call last) <
from tensorflow.contrib.metrics import f1_score as ms
我得到这个错误:
ImportError: Traceback (most recent call last)
<ipython-input-6-627f14191ea2> in <module>()----> 1 from tensorflow.contrib.metrics import f1_score as ms
ImportError: cannot import name 'f1_score'
AttributeError Traceback (most recent call last)
<ipython-input-8-c19f57465581> in <module>()
1 from tensorflow.contrib import metrics as ms
----> 2 ms.f1_score
AttributeError: module 'tensorflow.contrib.metrics' has no attribute 'f1_score'
我得到这个错误:
ImportError: Traceback (most recent call last)
<ipython-input-6-627f14191ea2> in <module>()----> 1 from tensorflow.contrib.metrics import f1_score as ms
ImportError: cannot import name 'f1_score'
AttributeError Traceback (most recent call last)
<ipython-input-8-c19f57465581> in <module>()
1 from tensorflow.contrib import metrics as ms
----> 2 ms.f1_score
AttributeError: module 'tensorflow.contrib.metrics' has no attribute 'f1_score'
AttributeError回溯(最近一次调用)
在()
1从tensorflow.contrib将度量导入为ms
---->2 ms.f1_分数
AttributeError:模块“tensorflow.contrib.metrics”没有属性“f1\U分数”
我预计ms.f1_score将加载如果您确定您有可用的
tf.contrib
,并且这对您不起作用,那么您可能需要重新安装tensorflow usepip install-U tensorflow
或使用-GPU(如果您使用的是该版本)
如果失败,请转到tensorflow的安装位置,手动检查它是否可用。如果可用,请确保同一目录(当前工作目录)中没有名为tensorflow.py或tf.py的文件
在那之后你应该
更新:正如用户@grwlf所指出的
自从TensorFlow 2.0以来,tf.contrib模块被移动到Addons repo。请参阅github.com/tensorflow/addons。在那里,F1测量作为F1分数从
tensorflow\u插件中提供。度量导入F1分数
您可以找到F1分数的文档
因为它是一个函数,也许您可以尝试:
from tensorflow.contrib import metrics as ms
ms.f1_score(labels,predictions)
它将返回不同阈值上f1最佳分数的标量张量
tensorflow文档中的示例:
def model_fn(features, labels, mode):
predictions = make_predictions(features)
loss = make_loss(predictions, labels)
train_op = tf.contrib.training.create_train_op( total_loss=loss, optimizer='Adam')
eval_metric_ops = {'f1': f1_score(labels, predictions)}
return tf.estimator.EstimatorSpec( mode=mode, predictions=predictions, loss=loss, train_op=train_op, eval_metric_ops=eval_metric_ops, export_outputs=export_outputs)
estimator = tf.estimator.Estimator(model_fn=model_fn)
希望这能回答您的问题。谢谢,这对我很有效,顺便说一句,您拼写tensorflow错了,考虑到将来的参考资料。自从tensorflow 2.0以来,
tf.contrib
模块被移到了Addons repo。看见在那里,F1测量可从tensorflow_插件以F1Score
的形式获得。度量导入F1Score