【Task6(2天)】 模型融合
模型融合,模型融合方式任意,并结合Task5给出你的最优结果。
- 例如Stacking融合,用你目前评分最高的模型作为基准模型,和其他模型进行stacking融合,得到最终模型及评分结果。
说明:这份数据集是金融数据(非原始数据,已经处理过了),我们要做的是预测贷款用户是否会逾期。表格中 "status" 是结果标签:0表示未逾期,1表示逾期。
1.导包跑模型
这里选用stacking的方法来模型融合,自己去网上也了解来了一下基本原理,但是手动敲代码比较困难,还是安静的做个调包侠,调参侠吧~~~
数据处理和以前一样!!
from mlxtend.classifier import StackingClassifier model_list = [models_grid[model] for model in models_grid if model != 'log_clf'] stacking_clf = StackingClassifier(classifiers=model_list,meta_classifier=models_grid['log_clf']) models_ensembel = models_grid models_ensembel['stacking_clf'] = stacking_clf
2.评估模型
results_test_ensembel,results_train_ensembel = metrics(models_ensembel,X_train_scaled,X_test_scaled,y_train,y_test)
训练集:
测试集:
没有提升呢?????
我猜在模型方面,已经没有什么可以提高的了,只能从数据清洗,特征工程方面下手!