計算平均 Intersection-Over-Union 指標。
用法
tf.keras.metrics.MeanIoU(
num_classes, name=None, dtype=None
)
參數
-
num_classes
預測任務可能具有的標簽數量。必須提供此值,因為將分配維度 = [num_classes, num_classes] 的混淆矩陣。 -
name
(可選)指標實例的字符串名稱。 -
dtype
(可選)度量結果的數據類型。
一般定義和計算:
Intersection-Over-Union 是語義圖像分割的常用評估指標。
對於單個類,IoU 指標定義如下:
iou = true_positives / (true_positives + false_positives + false_negatives)
為了計算 IoU,預測被累積在一個混淆矩陣中,由 sample_weight
加權,然後從中計算度量。
如果 sample_weight
是 None
,則權重默認為 1。使用 0 的 sample_weight
來屏蔽值。
請注意,此類首先計算所有單個類的 IoU,然後返回這些值的平均值。
單機使用:
# cm = [[1, 1],
# [1, 1]]
# sum_row = [2, 2], sum_col = [2, 2], true_positives = [1, 1]
# iou = true_positives / (sum_row + sum_col - true_positives))
# result = (1 / (2 + 2 - 1) + 1 / (2 + 2 - 1)) / 2 = 0.33
m = tf.keras.metrics.MeanIoU(num_classes=2)
m.update_state([0, 0, 1, 1], [0, 1, 0, 1])
m.result().numpy()
0.33333334
m.reset_state()
m.update_state([0, 0, 1, 1], [0, 1, 0, 1],
sample_weight=[0.3, 0.3, 0.3, 0.1])
m.result().numpy()
0.23809525
compile()
API 的用法:
model.compile(
optimizer='sgd',
loss='mse',
metrics=[tf.keras.metrics.MeanIoU(num_classes=2)])
相關用法
- Python tf.keras.metrics.MeanIoU.merge_state用法及代碼示例
- Python tf.keras.metrics.Mean.merge_state用法及代碼示例
- Python tf.keras.metrics.Mean用法及代碼示例
- Python tf.keras.metrics.MeanSquaredLogarithmicError用法及代碼示例
- Python tf.keras.metrics.MeanSquaredError用法及代碼示例
- Python tf.keras.metrics.MeanMetricWrapper用法及代碼示例
- Python tf.keras.metrics.MeanAbsoluteError用法及代碼示例
- Python tf.keras.metrics.MeanTensor用法及代碼示例
- Python tf.keras.metrics.MeanMetricWrapper.merge_state用法及代碼示例
- Python tf.keras.metrics.MeanAbsolutePercentageError.merge_state用法及代碼示例
- Python tf.keras.metrics.MeanAbsoluteError.merge_state用法及代碼示例
- Python tf.keras.metrics.MeanSquaredError.merge_state用法及代碼示例
- Python tf.keras.metrics.MeanRelativeError用法及代碼示例
- Python tf.keras.metrics.MeanSquaredLogarithmicError.merge_state用法及代碼示例
- Python tf.keras.metrics.MeanRelativeError.merge_state用法及代碼示例
- Python tf.keras.metrics.MeanTensor.merge_state用法及代碼示例
- Python tf.keras.metrics.MeanAbsolutePercentageError用法及代碼示例
- Python tf.keras.metrics.Metric用法及代碼示例
- Python tf.keras.metrics.Metric.merge_state用法及代碼示例
- Python tf.keras.metrics.Hinge用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.metrics.MeanIoU。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。