零一損失#
- 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