算法进阶day3模型融合Stacking

算法进阶day3--模型融合Stacking

任务

用你目前评分最高的模型作为基准模型,和其他模型进行stacking融合,得到最终模型及评分果。

Stacking

对于Stacking我也是个刚刚接触,翻看了很多材料,发现这篇文章写得比较详细,此处贴上引用地址:(https://blog.csdn.net/u011630575/article/details/81302994)
Stacking是模型融合的一种方法,对于StackingCVClassifier的参数说明:

classifiers : 基分类器,数组形式,[cl1, cl2, cl3]. 每个基分类器的属性被存储在类属性 self.clfs_.
meta_classifier : 目标分类器,即将前面分类器合起来的分类器
use_probas : bool (default: False) ,如果设置为True, 那么目标分类器的输入就是前面分类输出的类别概率值而不是类别标签
average_probas : bool (default: False),当上一个参数use_probas = True时需设置,average_probas=True表示所有基分类器输出的概率值需被平均,否则拼接。
verbose : int, optional (default=0)。用来控制使用过程中的日志输出,当 verbose = 0时,什么也不输出, verbose = 1,输出回归器的序号和名字。verbose = 2,输出详细的参数信息。verbose > 2, 自动将verbose设置为小于2的,verbose -2.
use_features_in_secondary : bool (default: False). 如果设置为True,那么最终的目标分类器就被基分类器产生的数据和最初的数据集同时训练。如果设置为False,最终的分类器只会使用基分类器产生的数据训练。

代码实现

from mlxtend.classifier import StackingCVClassifier
from sklearn import metrics
# 基分类器3个:DecisionTreeClassifier, GradientBoostingClassifier,RandomForestClassifier
# 目标分类器:LogisticRegression
# 使用3折交叉验证
basemodel1 = tree.DecisionTreeClassifier()
basemodel2 = GradientBoostingClassifier()
basemodel3 = RandomForestClassifier()
lr = LogisticRegression()
sclf = 
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值