当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.keras.metrics.Recall用法及代码示例


计算关于标签的预测的召回率。

继承自:MetricLayerModule

用法

tf.keras.metrics.Recall(
    thresholds=None, top_k=None, class_id=None, name=None, dtype=None
)

参数

  • thresholds (可选)[0, 1] 中的浮点值或浮点阈值的 python 列表/元组。将阈值与预测值进行比较以确定预测的真值(即,高于阈值的是true,低于阈值的是false)。为每个阈值生成一个度量值。如果未设置阈值和 top_k,则默认使用 thresholds=0.5 计算召回率。
  • top_k (可选)默认取消设置。一个 int 值,指定在计算召回时要考虑的 top-k 预测。
  • class_id (可选)我们想要二进制度量的整数类 ID。这必须在半开区间 [0, num_classes) 中,其中 num_classes 是预测的最后一个维度。
  • name (可选)指标实例的字符串名称。
  • dtype (可选)度量结果的数据类型。

该指标创建两个局部变量 true_positivesfalse_negatives ,用于计算召回率。该值最终返回为 recall ,这是一个幂等运算,只需将 true_positives 除以 true_positivesfalse_negatives 的总和。

如果 sample_weightNone ,则权重默认为 1。使用 0 的 sample_weight 来屏蔽值。

如果设置了top_k,召回率将计算为批次条目标签中的类在top-k预测中的平均频率。

如果指定了class_id,我们通过仅考虑批次中class_id 位于标签中的条目来计算召回率,并计算其中class_id 高于阈值和/或top-k 预测。

单机使用:

m = tf.keras.metrics.Recall()
m.update_state([0, 1, 1, 1], [1, 0, 1, 1])
m.result().numpy()
0.6666667
m.reset_state()
m.update_state([0, 1, 1, 1], [1, 0, 1, 1], sample_weight=[0, 0, 1, 0])
m.result().numpy()
1.0

compile() API 的用法:

model.compile(optimizer='sgd',
              loss='mse',
              metrics=[tf.keras.metrics.Recall()])

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.keras.metrics.Recall。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。