关于模型融合stacking的一些改进思路

卖山楂啦prss 卖山楂啦prss     2022-11-20     231

关键词:

Stacking模型融合

Stacking是一种嵌套组合型的模型融合方法,其基本思路就是在第一层训练多个不同的基学习器,然后把第一层训练的各个基学习器的输出作为输入来训练第二层的学习器,从而得到一个最终的输出。

具体的构建思路如下:

用一个基础模型进行5折交叉验证,对于训练集先拿出4折作为训练数据,另外一折作为测试数据,每一次交叉验证我们都会基于训练数据训练生成的模型对测试数据进行预测,这部分预测值最后拼接起来就是第二层模型的训练集。同时每次交叉验证我们还要对数据集原来的整个测试集进行预测,最后将各部分预测值取算术平均,作为第二层模型测试集,在此之后,我们把第一层模型的训练集预测值并列合并得到的矩阵作为训练集,第一层模型的预测集预测值并列合并得到的矩阵作为测试集,带入第二层的模型,再基于它们进一步训练,从而得到最终预测结果。

可参考之前的博客,关于融合模型的一些简单整理(Stacking、Blending)

其流程图如下所示:


简化一下,可以画成这样

(1)加入原始训练集的Stacking融合模型构建

标准的Stacking融合模型第二阶段模型训练使用的数据集是由第一阶段各模型训练集的输出值组合而成的,一般有几个初级学习器就有几个输入特征,这种方式虽然能有效避免模型过拟合,提高模型效果,但使用新的组合训练集可能会丢失部分原始训练集中的信息。

因此,为了探索Stacking融合模型效果是否可以进一步有所提高,这里将原始数据集也作为次级学习器训练的一部分,即次级学 习器的训练集由原始训练集和第一阶段形成的新数据集组合得到,使得次级学习 器学习到原始训练集与新训练集之间的隐含关系,从而提升模型预测效果。

(2)加权Stacking融合模型构建

由于初级学习器中的模型的性能各有差异,为了更好地得到初级学习器中的有效信息,可以基于第一层中每个学习器性能的好坏,对第一层中每个学习器输出的结果进行加权平均(这里初级学习器的权重可以设定为每个模型输出的AUC值)。

过程如下:

(3)加入原始训练集+加权的Stacking融合模型构建

第三个改动是综合了前面两种改动,即对标准Stacking模型加入原始数据集的同时还对标准Stacking模型进行加权处理,既要挖掘原始训练集与新训练集之间的隐含关系,又要对每个学习器设置不同的权重,突出模型预测性能好坏。模型框架如下图:


至此,以上为对模型融合Stacking的一些小改动思路,具体可以在实践中去验证改进效果,不一定说进行了改进后模型效果就会有提升,有时候可能反而效果降低~具体问题具体分析。

关于融合模型的一些简单整理(stackingblending)

目前,模型融合的方式有很多,比较常用的包括Voting法、Stacking法以及Blending法。一、VotingVoting是模型融合策略中最简单的一种方法,其融合过程不需要建立新的模型,只需要在单一模型的输出结果上完成融合。Vot... 查看详情

关于融合模型的一些简单整理(stackingblending)

目前,模型融合的方式有很多,比较常用的包括Voting法、Stacking法以及Blending法。一、VotingVoting是模型融合策略中最简单的一种方法,其融合过程不需要建立新的模型,只需要在单一模型的输出结果上完成融合。Vot... 查看详情

模型融合之blending和stacking(代码片段)

1.blending需要得到各个模型结果集的权重,然后再线性组合。"""Kagglecompetition:PredictingaBiologicalResponse.BlendingRandomForests,ExtraTrees,GradientBoosting+stretchingto[0,1].TheblendingschemeisrelatedtotheideaJoseH.Solor 查看详情

模型融合方法最全总结!

本文是模型融合的经验方法总结。包含了投票法、平均法、排序法、Stacking和Blending.一、背景之前有段时间打数据挖掘类比赛,看到很多选手用模型融合的技巧,特别是比赛后期的时候,很多选手开始找队友,多... 查看详情

机器学习模型的泛化能力不足,有啥改进思路

参考技术A首先你要知道为什么自己模型的泛化能力不足,一般来说有两个方面吧:1:在训练集上效果不错,然后在测试集上发现效果不好,这种很大的情况是过拟合问题,也就是说你的模型过多的去拟合训练集去了,利用一些... 查看详情

【论文笔记】融合标签向量到bert:对文本分类进行改进

参考技术A随着BERT等预先训练模型获得越来越多的关注,从数据增强实验到改进模型数学原理,大量的研究已经进一步提高了它们的性能。在本文中,作者提出了一种简洁有效的方法,在保持几乎相同的计算成本的情况下,利用... 查看详情

关于模型优化的思考

1、提高深度学习模型识别率的准确率的思考(1)数据增强技术(图像翻转、白化),对训练数据做一些处理增加数据的抗造性能(2)模型改进,尝试多种模型(3)调整学习率首先使用较大的学习率进行训练,观察目标函数值... 查看详情

多模型融合推荐算法

常见的多模型融合算法多模型融合算法可以比单一模型算法有极为明显的效果提升。但是怎样进行有效的融合,充分发挥各个算法的长处?这里总结一些常见的融合方法: 1.线性加权融合法线性加权是最简单易用的融合算法... 查看详情

文本分类《融合注意力和剪裁机制的通用文本分类模型》

...出了双通道注意力机制与长文本裁剪机制来改进文本分类模型,最终提高了精度。·参考文献:  [1]融合注意力和剪裁机制的通用文本分类模型参考论文信息  论文名称:《融合注意力和剪裁机制的通用文本分类... 查看详情

一些关于canny边缘检测算法的改进

传统的Canny边缘检测算法是一种有效而又相对简单的算法,可以得到很好的结果(可以参考上一篇Canny边缘检测算法的实现)。但是Canny算法本身也有一些缺陷,可以有改进的地方。1.Canny边缘检测第一步用高斯模糊来去掉噪声,... 查看详情

模型融合

结合/融合/整合(integration/combination/fusion)多个机器学习模型往往可以提高整体的预测能力。这是一种非常有效的提升手段,在多分类器系统(multi-classifiersystem)和集成学习(ensemblelearning)中,融合都是最重要的一个步骤。 举个实... 查看详情

在keras下实现多个模型的融合

...合小风风125802019-09-3010:42:001105收藏7展开在网上搜过发现关于keras下的模型融合框架其实很简单,奈何网上说了一大堆,这个东西官方文档上就有,自己写了个demo:#Function:基于keras框架下实现,多个独立任务分类#Writer:PQF#Time:2019... 查看详情

在keras下实现多个模型的融合

...合小风风125802019-09-3010:42:001105收藏7展开在网上搜过发现关于keras下的模型融合框架其实很简单,奈何网上说了一大堆,这个东西官方文档上就有,自己写了个demo:#Function:基于keras框架下实现,多个独立任务分类#Writer:PQF#Time:2019... 查看详情

文本分类《融合注意力和剪裁机制的通用文本分类模型》

...出了双通道注意力机制与长文本裁剪机制来改进文本分类模型,最终提高了精度。·参考文献:  [1]融合注意力和剪裁机制的通用文本分类模型参考论文信息  论文名称:《融合注意力和剪裁机制的通用文本分类... 查看详情

python基于融合spd-conv改进yolov5与原生yolov5模型实践路面裂痕裂缝检测

...术,可以用于目标检测任务,能够一定程度提升模型的检测效果,今天正好有时间就想基于SPD融合yolov5s模型来开发路面裂痕裂缝检测模型,同时与原生的yolov5s模型进行对比分析,首先看下效果图。接下来看下... 查看详情

关于采集用户页面停留时长的一些思路

关于 记录用户在页面停留时长的一些思路客户端=====================================================================(全部采用ajax后台发送数据)进入页面时,开始计时,发送的数据为:{id:"",type:"startTime",url="当前浏览的页面地址"}响应的数据:... 查看详情

文本分类《融合知识感知与双重注意力的短文本分类模型》(代码片段)

·阅读摘要:  本文主要提出基于TextRCNN模型使用知识图谱、双重注意力感知来改进短文本分类,最终提高了精度。·参考文献:  [1]融合知识感知与双重注意力的短文本分类模型参考论文信息(很牛) ... 查看详情

基于深度学习的图异常检测如何改进

...改进。以下是几种可能的改进方法:1.数据增强:在训练模型之前,可以使用数据增强技术来扩充训练数据集。这可以帮助模型更好地学习数据的特征,并提高模型的准确性。2.增加正常数据:在训练模型时,可以增加正常数据... 查看详情