Bagging
bagging的集成方式是:
- 用1个模型(元模型)
- 然后将这个元模型分成多个相同模型,每个模型使用训练集的一部分进行训练,得到多个基模型
- 最后测试时分别跑每个模型,平均结果得出这个集成模型的最终预测结果
案例代码
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.ensemble import BaggingClassifier
from sklearn.datasets import make_classification
from sklearn.metrics import accuracy_score
# ============= 准备数据 =============
x, y = make_classification(n_samples=10000, n_classes=4, n_informative=5)
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.3, random_state=100)
# ============= 集成模型 =============
bagging_clf = BaggingClassifier(DecisionTreeClassifier(), n_estimators=500, max_samples=100, bootstrap=True)
bagging_clf.fit(x_train, y_train)
print("acc:", accuracy_score(bagging_clf.predict(x_test), y_test))
参考文章