本文簡要介紹python語言中 sklearn.ensemble.VotingClassifier
的用法。
用法:
class sklearn.ensemble.VotingClassifier(estimators, *, voting='hard', weights=None, n_jobs=None, flatten_transform=True, verbose=False)
未擬合估計器的軟投票/多數規則分類器。
在用戶指南中閱讀更多信息。
- estimators:(str, estimator) 元組列表
在
VotingClassifier
上調用fit
方法將適合將存儲在類屬性self.estimators_
中的那些原始估計器的克隆。可以使用set_params
將估計器設置為'drop'
。- voting:{‘hard’, ‘soft’},默認='硬'
如果‘hard’,使用預測的類標簽進行多數規則投票。否則,如果 ‘soft’,則根據預測概率之和的 argmax 預測類標簽,推薦用於 well-calibrated 分類器的集合。
- weights:形狀類似數組 (n_classifiers,),默認=無
權重序列(
float
或int
)在平均之前對預測的類標簽(hard
投票)或類概率(soft
投票)的出現進行加權。如果None
使用統一權重。- n_jobs:整數,默認=無
fit
並行運行的作業數。None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有處理器。有關詳細信息,請參閱詞匯表。- flatten_transform:布爾,默認=真
僅當voting='soft'時影響變換輸出的形狀如果voting='soft'且flatten_transform=True,則transform方法返回形狀為(n_samples,n_classifiers * n_classes)的矩陣。如果flatten_transform=False,則返回 (n_classifiers, n_samples, n_classes)。
- verbose:布爾,默認=假
如果為 True,則在擬合完成時將打印經過的時間。
- estimators_:分類器列表
在
estimators
中定義的不是 ‘drop’ 的擬合 sub-estimators 的集合。- named_estimators_:sklearn.utils.Bunch
按名稱訪問任何適合的sub-estimators 的屬性。
- le_:sklearn.preprocessing.LabelEncoder
Transformer 用於在擬合期間對標簽進行編碼,在預測期間用於解碼。
- classes_:ndarray 形狀 (n_classes,)
類標簽。
n_features_in_
int擬合期間看到的特征數。
- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當基礎估計器在合適時公開此類屬性時才定義。 .. 版本添加::1.0
參數:
屬性:
例子:
>>> import numpy as np >>> from sklearn.linear_model import LogisticRegression >>> from sklearn.naive_bayes import GaussianNB >>> from sklearn.ensemble import RandomForestClassifier, VotingClassifier >>> clf1 = LogisticRegression(multi_class='multinomial', random_state=1) >>> clf2 = RandomForestClassifier(n_estimators=50, random_state=1) >>> clf3 = GaussianNB() >>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]]) >>> y = np.array([1, 1, 1, 2, 2, 2]) >>> eclf1 = VotingClassifier(estimators=[ ... ('lr', clf1), ('rf', clf2), ('gnb', clf3)], voting='hard') >>> eclf1 = eclf1.fit(X, y) >>> print(eclf1.predict(X)) [1 1 1 2 2 2] >>> np.array_equal(eclf1.named_estimators_.lr.predict(X), ... eclf1.named_estimators_['lr'].predict(X)) True >>> eclf2 = VotingClassifier(estimators=[ ... ('lr', clf1), ('rf', clf2), ('gnb', clf3)], ... voting='soft') >>> eclf2 = eclf2.fit(X, y) >>> print(eclf2.predict(X)) [1 1 1 2 2 2] >>> eclf3 = VotingClassifier(estimators=[ ... ('lr', clf1), ('rf', clf2), ('gnb', clf3)], ... voting='soft', weights=[2,1,1], ... flatten_transform=True) >>> eclf3 = eclf3.fit(X, y) >>> print(eclf3.predict(X)) [1 1 1 2 2 2] >>> print(eclf3.transform(X).shape) (6, 6)
相關用法
- Python sklearn VotingRegressor用法及代碼示例
- Python sklearn VarianceThreshold用法及代碼示例
- Python sklearn jaccard_score用法及代碼示例
- Python sklearn WhiteKernel用法及代碼示例
- Python sklearn CalibrationDisplay.from_predictions用法及代碼示例
- Python sklearn gen_batches用法及代碼示例
- Python sklearn ExpSineSquared用法及代碼示例
- Python sklearn MDS用法及代碼示例
- Python sklearn adjusted_rand_score用法及代碼示例
- Python sklearn MLPClassifier用法及代碼示例
- Python sklearn train_test_split用法及代碼示例
- Python sklearn RandomTreesEmbedding用法及代碼示例
- Python sklearn GradientBoostingRegressor用法及代碼示例
- Python sklearn GridSearchCV用法及代碼示例
- Python sklearn log_loss用法及代碼示例
- Python sklearn r2_score用法及代碼示例
- Python sklearn ndcg_score用法及代碼示例
- Python sklearn ShrunkCovariance用法及代碼示例
- Python sklearn SelfTrainingClassifier用法及代碼示例
- Python sklearn load_svmlight_file用法及代碼示例
- Python sklearn make_pipeline用法及代碼示例
- Python sklearn MultiTaskLasso用法及代碼示例
- Python sklearn KBinsDiscretizer用法及代碼示例
- Python sklearn power_transform用法及代碼示例
- Python sklearn PowerTransformer.inverse_transform用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.ensemble.VotingClassifier。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。