分類器混合 (ClassifierMixin)#

class sklearn.base.ClassifierMixin[原始碼]#

scikit-learn 中所有分類器的 Mixin 類別。

此 mixin 定義了以下功能:

  • 透過 estimator_type 標籤將估算器類型設定為 "classifier"

  • score 方法,預設為 accuracy_score

  • 強制要求 fit 必須透過 requires_y 標籤傳遞 y,這是透過設定分類器類型標籤來完成的。

請在使用者指南中閱讀更多資訊。

範例

>>> import numpy as np
>>> from sklearn.base import BaseEstimator, ClassifierMixin
>>> # Mixin classes should always be on the left-hand side for a correct MRO
>>> class MyEstimator(ClassifierMixin, BaseEstimator):
...     def __init__(self, *, param=1):
...         self.param = param
...     def fit(self, X, y=None):
...         self.is_fitted_ = True
...         return self
...     def predict(self, X):
...         return np.full(shape=X.shape[0], fill_value=self.param)
>>> estimator = MyEstimator(param=1)
>>> X = np.array([[1, 2], [2, 3], [3, 4]])
>>> y = np.array([1, 0, 1])
>>> estimator.fit(X, y).predict(X)
array([1, 1, 1])
>>> estimator.score(X, y)
0.66...
score(X, y, sample_weight=None)[原始碼]#

傳回給定測試資料和標籤的平均準確度。

在多標籤分類中,這是子集準確度,這是一個嚴苛的指標,因為您要求每個樣本的每個標籤集都被正確預測。

參數
X類陣列形狀 (n_samples, n_features)

測試樣本。

y類陣列形狀 (n_samples,) 或 (n_samples, n_outputs)

X 的真實標籤。

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

樣本權重。

回傳值
score浮點數

self.predict(X) 相對於 y 的平均準確度。