零一損失#

sklearn.metrics.zero_one_loss(y_true, y_pred, *, normalize=True, sample_weight=None)[原始碼]#

零一分類損失。

如果 normalize 為 True,則返回錯誤分類的比例(浮點數),否則返回錯誤分類的數量(整數)。最佳效能為 0。

請參閱使用者指南以了解更多資訊。

參數:
y_true一維類陣列 (1d array-like) 或標籤指示陣列 / 稀疏矩陣

真實 (正確) 標籤。

y_pred一維類陣列 (1d array-like) 或標籤指示陣列 / 稀疏矩陣

預測標籤,由分類器返回。

normalize布林值 (bool),預設值為 True

若為 False,則返回錯誤分類的數量。 否則,返回錯誤分類的比例。

sample_weight形狀為 (n_samples,) 的類陣列,預設值為 None

樣本權重。

返回:
loss浮點數 (float) 或整數 (int),

normalize == True,則返回錯誤分類的比例 (浮點數),否則返回錯誤分類的數量 (整數)。

另請參閱

準確度分數 (accuracy_score)

計算準確度分數。 預設情況下,此函數將返回正確預測的比例除以預測總數。

漢明損失 (hamming_loss)

計算兩組樣本之間的平均漢明損失或漢明距離。

傑卡德係數 (jaccard_score)

計算 Jaccard 相似係數分數。

注意事項

在多標籤分類中,zero_one_loss 函數對應於子集 zero-one 損失:對於每個樣本,必須正確預測整組標籤,否則該樣本的損失等於一。

範例

>>> from sklearn.metrics import zero_one_loss
>>> y_pred = [1, 2, 3, 4]
>>> y_true = [2, 2, 3, 4]
>>> zero_one_loss(y_true, y_pred)
0.25
>>> zero_one_loss(y_true, y_pred, normalize=False)
1.0

在具有二元標籤指示器的多標籤情況下

>>> import numpy as np
>>> zero_one_loss(np.array([[0, 1], [1, 1]]), np.ones((2, 2)))
0.5