Python 中的集成方法
Román de las Heras
Data Scientist, Appodeal
异质集成函数
het_est = HeterogeneousEnsemble(
estimators=[('est1', est1), ('est2', est2), ...],
# additional parameters
)
同质集成函数
hom_est = HomogeneousEnsemble(
est_base,
n_estimators=chosen_number,
# additional parameters
)
Bagging 分类器示例:
# 实例化基学习器("弱"模型)
clf_dt = DecisionTreeClassifier(max_depth=3)
# 构建含 5 个基学习器的 Bagging 分类器
clf_bag = BaggingClassifier(
clf_dt,
n_estimators=5
)
# 拟合训练集
clf_bag.fit(X_train, y_train)
# 在测试集上预测
y_pred = clf_bag.predict(X_test)
Bagging 回归器示例:
# 实例化基学习器("弱"模型)
reg_lr = LinearRegression()
# 构建含 10 个基学习器的 Bagging 回归器
reg_bag = BaggingRegressor(
reg_lr
)
# 拟合训练集
reg_bag.fit(X_train, y_train)
# 在测试集上预测
y_pred = reg_bag.predict(X_test)
clf_bag = BaggingClassifier(
clf_dt,
oob_score=True
)
clf_bag.fit(X_train, y_train)
print(clf_bag.oob_score_)
0.9328125
pred = clf_bag.predict(X_test)
print(accuracy_score(y_test, pred))
0.9625
Python 中的集成方法