Stacking模型融合
概念:Stacking简单理解就是讲几个简单的模型,一般采用将它们进行K折交叉验证输出预测结果,然后将每个模型输出的预测结果合并为新的特征,并使用新的模型加以训练。
参考链接如下:概念介绍
目标
Stacking融合,用你目前评分最高的模型作为基准模型,和其他模型进行stacking融合,得到最终模型及评分结果。
代码实现
# 构建 Stacking 模型,使用 svm 作为最后的融合模型
s_clf = StackingClassifier(classifiers=[lr_model, svm_model, dt_model],
meta_classifier=svm_model, use_probas=True, verbose=3)
s_clf.fit(X_train, y_train)
model_evaluate(lr_model, X_train, X_test, y_train, y_test)
运行结果
accuracy:
训练集: 0.7974
测试集: 0.8080
precision:
训练集: 0.7196
测试集: 0.7484
recall:
训练集: 0.3238
测试集: 0.3371
F1-score:
训练集: 0.4466
测试集: 0.4648
AUC:
训练集: 0.8015
测试集: 0.8010