sklearn.multioutput.MultiOutputClassifier?
class sklearn.multioutput.MultiOutputClassifier(estimator, *, n_jobs=None)
[源碼]
多目標分類
該策略包括為每個目標擬合一個分類器。這是擴展本機不支持多目標分類的分類器的簡單策略
參數 | 說明 |
---|---|
estimator | estimator object 實現fit,score和 predict_proba的估計器對象。 |
n_jobs | int or None, optional (default=None) 用于計算的作業數。它并行執行y中的每個目標變量。 None 除非joblib.parallel_backend 上下文中,否則表示1 。 -1 表示使用所有處理器。有關 更多詳細信息,請參見詞匯表。v0.20版中的更改:n_jobs默認從1更改為None |
屬性 | 說明 |
---|---|
classes_ | array, shape = (n_classes,) 類標簽。 |
estimators_ | list of n_output estimators用于預測的估計量。 |
實例
>>> import numpy as np
>>> from sklearn.datasets import make_multilabel_classification
>>> from sklearn.multioutput import MultiOutputClassifier
>>> from sklearn.neighbors import KNeighborsClassifier
>>> X, y = make_multilabel_classification(n_classes=3, random_state=0)
>>> clf = MultiOutputClassifier(KNeighborsClassifier()).fit(X, y)
>>> clf.predict(X[-2:])
array([[1, 1, 0], [1, 1, 1]])
方法 | 說明 |
---|---|
fit (X, Y[, sample_weight]) |
使模型擬合數據矩陣X和目標Y。 |
get_params ([deep]) |
獲取此估計量的參數。 |
partial_fit (X, y[, classes, sample_weight]) |
使模型逐漸擬合數據。 |
predict (X) |
使用模型預測多輸出變量 |
score (X, y) |
返回給定測試數據和標簽的平均準確度。 |
set_params (**params) |
設置此估算量的參數。 |
__init__(estimator, *, n_jobs=None)
[源碼]
初始化self, 請參閱help(type(self))以獲得準確的說明。
fit(X, Y, sample_weight=None, **fit_params)
[源碼]
使模型擬合數據矩陣X和目標Y。
參數 | 說明 |
---|---|
X | {array-like, sparse matrix} of shape (n_samples, n_features) 輸入數據。 |
Y | array-like of shape (n_samples, n_classes) 目標值。 |
sample_weight | array-like of shape (n_samples,) or None 樣本權重。如果為None,則對樣本進行平均加權。僅當基礎分類器支持樣本權重時才支持。 |
**fit_params | dict of string -> object 參數傳遞給 estimator.fit 每個步驟的方法。 |
返回值 | 說明 |
---|---|
self | object |
get_params(deep=True)
[源碼]
獲取此估計量的參數。
參數 | 說明 |
---|---|
deep | bool, default=True 如果為True,則將返回此估算器和作為估算器的所包含子對象的參數。 |
返回值 | 說明 |
---|---|
params | mapping of string to any 參數名稱映射到其值。 |
partial_fit(X, y, classes=None, sample_weight=None)
[源碼]
使模型逐漸擬合數據。為每個輸出變量擬合一個單獨的模型。
參數 | 說明 |
---|---|
X | (sparse) array-like, shape (n_samples, n_features) 數據。 |
y | (sparse) array-like, shape (n_samples, n_outputs) 多輸出目標。 |
classes | list of numpy arrays, shape (n_outputs) 每個數組都是str / int中一個輸出的唯一類。可以通過via獲得 ,其中y是整個數據集的目標矩陣。第一次調用partial_fit時需要此參數,在隨后的調用中可以將其省略。請注意,y不需要包含中 [np.unique(y[:, i]) for i in range(y.shape[1])]``classes 的所有標簽。 |
sample_weight | array-like of shape (n_samples,), default=None 樣本權重。如果為None,則對樣本進行平均加權。僅當基礎回歸變量支持樣本權重時才支持。 |
返回值 | 說明 |
---|---|
self | object |
predict(X)
[源碼]
使用模型預測多輸出變量
? 針對每個目標變量進行訓練。
參數 | 說明 |
---|---|
X | (sparse) array-like, shape (n_samples, n_features) 數據 |
返回值 | 說明 |
---|---|
y | (sparse) array-like, shape (n_samples, n_outputs) 跨多個預測變量預測的多輸出目標。注意:為每個預測變量生成單獨的模型。 |
property predict_proba
概率估計。返回每個輸出的每個類的預測概率。
ValueError
如果沒有任何估算器,則此方法將引發predict_proba
。
參數 | 返回值 |
---|---|
X | array-like, shape (n_samples, n_features) 數據 |
返回值 | 說明 |
---|---|
p | array of shape (n_samples, n_classes), or a list of n_outputs such arrays if n_outputs > 1. 輸入樣本的分類概率。類的順序與屬性classes_中的順序相對應。 在版本0.19中更改:此函數現在返回一個數組列表,其中列表的長度為, 對于該特定輸出 n_outputs ,每個數組為(n_samples``n_classes )。 |
score(X, y)
[源碼]
返回給定測試數據和標簽的平均準確度。
參數 | 說明 |
---|---|
X | array-like, shape [n_samples, n_features] 測試樣本 |
y | array-like, shape [n_samples, n_outputs] X的真實值 |
返回值 | 說明 |
---|---|
scores | float self.predict(X)對y的accuracy_score |
set_params(**params)
[源碼]
設置此估算器的參數。
該方法適用于簡單的估計器以及嵌套對象(例如 pipelines)。后者具有形式的參數, <component>__<parameter>
以便可以更新嵌套對象的每個組件。
參數 | 說明 |
---|---|
**params | dict 估算量參數。 |
返回值 | 說明 |
---|---|
self | object 估算量實例。 |