IoULoss
類別keras_cv.losses.IoULoss(bounding_box_format, mode="log", axis=-1, **kwargs)
實作 IoU 損失函數
IoU 損失函數通常用於物件偵測。此損失函數旨在直接優化真實邊界框和預測邊界框之間的 IoU 分數。最後一個維度的長度應為 4,以表示邊界框。此損失函數根據邊界框對使用 IoU,因此,y_true 和 y_pred 中的邊界框數量應相等,即批次中第 i 個 y_true 邊界框將與第 i 個 y_pred 邊界框進行比較。
參數
"linear"
。損失函數將計算為 1 - iou"quadratic"
。損失函數將計算為 1 - iou2"log"
。損失函數將計算為 -ln(iou)。預設值為 "log"。參考
範例
y_true = np.random.uniform(size=(5, 10, 5), low=10, high=10)
y_pred = np.random.uniform(size=(5, 10, 5), low=10, high=10)
loss = IoULoss(bounding_box_format = "xyWH")
loss(y_true, y_pred)
搭配 compile()
API 使用
model.compile(optimizer='adam', loss=keras_cv.losses.IoULoss())