當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.keras.metrics.RecallAtPrecision用法及代碼示例


計算精度 >= 指定值的最佳召回率。

繼承自:MetricLayerModule

用法

tf.keras.metrics.RecallAtPrecision(
    precision, num_thresholds=200, class_id=None, name=None, dtype=None
)

參數

  • precision 範圍 [0, 1] 中的標量值。
  • num_thresholds (可選)默認為 200。用於匹配給定精度的閾值數。
  • class_id (可選)我們想要二進製度量的整數類 ID。這必須在半開區間 [0, num_classes) 中,其中 num_classes 是預測的最後一個維度。
  • name (可選)指標實例的字符串名稱。
  • dtype (可選)度量結果的數據類型。

對於給定的score-label-distribution,可能無法實現所需的精度,在這種情況下,0.0 作為召回返回。

該指標創建四個局部變量,true_positives , true_negatives , false_positivesfalse_negatives,用於計算給定精度的召回率。計算給定精度值的閾值並用於評估相應的召回率。

如果 sample_weightNone ,則權重默認為 1。使用 0 的 sample_weight 來屏蔽值。

如果指定了class_id,我們通過僅考慮批次中class_id 高於閾值預測的條目來計算精度,並計算其中class_id 確實是正確標簽的部分。

單機使用:

m = tf.keras.metrics.RecallAtPrecision(0.8)
m.update_state([0, 0, 1, 1], [0, 0.5, 0.3, 0.9])
m.result().numpy()
0.5
m.reset_state()
m.update_state([0, 0, 1, 1], [0, 0.5, 0.3, 0.9],
               sample_weight=[1, 0, 0, 1])
m.result().numpy()
1.0

compile() API 的用法:

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

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.metrics.RecallAtPrecision。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。