数据挖掘竞赛利器-Stacking和Blending方式

一.Stacking思想简介
1.Stacking的思想是一种有层次的融合模型,比如我们将用不同特征训练出来的三个GBDT模型进行融合时,我们会将三个GBDT作为基层模型,在其上在训练一个次学习器(通常为线性模型LR),用于组织利用基学习器的答案,也就是将基层模型的答案作为输入,让次学习器学习组织给基层模型的答案分配权重。

2.下图是个简单的例子,A、B是学习器,C、D、E是进行答案再组织的次学习器,次学习器会组织利用底层模型提供的答案。

二.Stacking过程解读
       Stacking的主要思想是训练模型来学习使用底层学习器的预测结果,下图是一个5折stacking中基模型在所有数据集上生成预测结果的过程,次学习器会基于模型的预测结果进行再训练,单个基模型生成预测结果的过程是:

*首先将所有数据集生成测试集和训练集(假如训练集为10000,测试集为2500行),那么上层会进行5折交叉检验,使用训练集中的8000条作为喂养集,剩余2000行作为验证集(橙色)

*每次验证相当于使用了蓝色的8000条数据训练出一个模型,使用模型对验证集进行验证得到2000条数据,并对测试集进行预测,得到2500条数据,这样经过5次交叉检验,可以得到中间的橙色的5*2000条验证集的结果(相当于每条数据的预测结果),5*2500条测试集的预测结果。

*接下来会将验证集的5*2000条预测结果拼接成10000行长的矩阵,标记为A1,而对于5*2500行的测试集的预测结果进行加权平均,得到一个2500一列的矩阵,标记为B1。

*上面得到一个基模型在数据集上的预测结果A1、B1,这样当我们对3个基模型进行集成的话,相于得到了A1、A2、A3、B1、B2、B3六个矩阵。

*之后我们会将A1、A2、A3并列在一起成10000行3列的矩阵作为training data,B1、B2、B3合并在一起成2500行3列的矩阵作为testing  data,让下层学习器基于这样的数据进行再训练。

*再训练是基于每个基础模型的预测结果作为特征(三个特征),次学习器会学习训练如果往这样的基学习的预测结果上赋予权重w,来使得最后的预测最为准确。

以上就是Stacking的思想,进行Stacking集成同样需要基学习器尽量保持独立,效果相近。

三.Stacking特点
 使用stacking,组合1000多个模型,有时甚至要计算几十个小时。但是,这些怪物般的集成方法同样有着它的用处:

(1)它可以帮你打败当前学术界性能最好的算法

(2)我们有可能将集成的知识迁移到到简单的分类器上

(3)自动化的大型集成策略可以通过添加正则项有效的对抗过拟合,而且并不需要太多的调参和特征选择。所以从原则上讲,stacking非常适合于那些“懒人”

(4)这是目前提升机器学习效果最好的方法,或者说是最效率的方法human ensemble learning 。

四.Stacking和Blending对比

1.Blending方式和Stacking方式很类似,相比Stacking更简单点,两者区别是:

*blending是直接准备好一部分10%留出集只在留出集上继续预测,用不相交的数据训练不同的 Base Model,将它们的输出取(加权)平均。实现简单,但对训练数据利用少了。

2.blending 的优点是:比stacking简单,不会造成数据穿越(所谓数据创越,就比如训练部分数据时候用了全局的统计特征,导致模型效果过分的好),generalizers和stackers使用不同的数据,可以随时添加其他模型到blender中。

3.缺点在于:blending只使用了一部分数据集作为留出集进行验证,而stacking使用多折交叉验证,比使用单一留出集更加稳健

4.两个方法都挺好,看偏好了,可以一部分做Blending、一部分做Stacking。

原文链接:https://blog.csdn.net/maqunfi/article/details/82220115

原文地址:https://www.cnblogs.com/wisir/p/12663245.html

时间: 2024-10-09 06:52:15

数据挖掘竞赛利器-Stacking和Blending方式的相关文章

CIKM Competition数据挖掘竞赛夺冠算法陈运文

CIKM Competition数据挖掘竞赛夺冠算法陈运文 背景 CIKM Cup(或者称为CIKM Competition)是ACM CIKM举办的国际数据挖掘竞赛的名称.CIKM全称是International Conference on Information and Knowledge Management,属于信息检索和数据挖掘领域的国际著名学术会议,由ACM SIGIR分会(ACM Special Interest Group on Information Retrieval)主办.

第三届泰迪杯数据挖掘竞赛试题讲解

学习目标 深入了解第三届泰迪杯大学生数据挖掘竞赛试题(基于电商平台家电设备的消费者需求及产品数据挖掘分析.基于数据挖掘技术的市财政收入分析预测模型.城市供水处理混凝投药过程的建模与控制)的出题背景.项目需求及解题思路. 课程目标:深入了解第三届泰迪杯大学生数据挖掘竞赛试题的出题背景.项目需求及解题思路.课程特色:出题者在线答疑,以类似项目案例分析试题适用人群:所有数据挖掘竞赛参赛人员及指导老师优惠方式:免费课程详情:深入了解第三届泰迪杯大学生数据挖掘竞赛试题(基于电商平台家电设备的消费者需求及产

数据挖掘竞赛kaggle初战——泰坦尼克号生还预测

1.题目 这道题目的地址在https://www.kaggle.com/c/titanic,题目要求大致是给出一部分泰坦尼克号乘船人员的信息与最后生还情况,利用这些数据,使用机器学习的算法,来分析预测另一部分人员最后是否生还.题目练习的要点是语言和数据分析的基础内容(比如python.numpy.pandas等)以及二分类算法. 数据集包含3个文件:train.csv(训练数据).test.csv(测试数据).gender_submission.csv(最后提交结果的示例,告诉大家提交的文件长什

【数据分析&数据挖掘】三种数据标准化方式——离差标准化、标准差标准化&小数定标标准化

1 import pandas as pd 2 import numpy as np 3 4 5 # 标准化----去除量级的影响 6 7 # 3种方式 8 # (1)离差标准化 9 # 将数据做线性变化,将数据映射到[0,1]范围内, 10 # x = (x - min) / (max - min) 11 # 过大或者过小的异常值都会对结果产生影响 12 # 容易受到异常值影响 13 def max_min_sca(data): 14 """ 15 借助离差标准化 来标准化

cdmc2016数据挖掘竞赛题目Android Malware Classification

http://www.csmining.org/cdmc2016/ Data Mining Tasks Description Task 1: 2016 e-News categorisation For this year, the dataset is sourced from 6 online news media: The New Zealand Herald (www.nzherald.co.nz), Reuters(www.reuters.com), The Times (www.t

kaggle数据挖掘竞赛初步--Titanic<数据变换>

缺失值填充之后,就要对其他格式有问题的属性进行处理了.比如Sex Embarked这些属性的值都是字符串类型的,而scikit learn中的模型都只能处理数值型的数据,需要将这些原始的字符串类型的数据转为数值型数据.所有数据通常可以分成两种类型:定量与定性.定量的属性(数值属性)通常蕴涵着可排序性,比如在泰坦尼克号数据集中,年龄就是一个定量属性.定性属性(标称 序数 二元属性)的值是一些符号或事务的名称,每个值代表某种类别编码或状态,不是可测量量,是不具有排序意义的,比如Embarked(登船

kaggle数据挖掘竞赛初步--Titanic<原始数据分析>

Titanic是kaggle上的一道just for fun的题,没有奖金,但是数据整洁,拿来练手最好不过啦. 这道题给的数据是泰坦尼克号上的乘客的信息,预测乘客是否幸存.这是个二元分类的机器学习问题,但是由于数据样本相对较少,在当时慌乱的情况下幸存者有一定的随机性,还是有一定挑战的. 首先,我们要先看一看数据,分析数据的一些较为直观的特征.代码使用numpy pandas和scikit-learn. 1 import numpy as np 2 import pandas as pd 3 #r

机器学习竞赛技巧

Kaggle 是目前最大的 Data Scientist 聚集地.很多公司会拿出自家的数据并提供奖金,在 Kaggle 上组织数据竞赛.我最近完成了第一次比赛,在 2125 个参赛队伍中排名第 98 位(~ 5%).因为是第一次参赛,所以对这个成绩我已经很满意了.在 Kaggle 上一次比赛的结果除了排名以外,还会显示的就是 Prize Winner,10% 或是 25% 这三档.所以刚刚接触 Kaggle 的人很多都会以 25% 或是 10% 为目标.在本文中,我试图根据自己第一次比赛的经验和

阿里、腾讯、京东、微软,各家算法&数据挖掘岗位面经大起底!

阿里.腾讯.京东.微软,各家算法&数据挖掘岗位面经大起底! 2016-02-24 36大数据 36大数据 作者: 江少华 摘要: 从2015年8月到2015年10月,花了3个月时间找工作,先后通过内推参加了美团.阿里蚂蚁金服.京东.腾讯.今日头条.Growing IO.微软这7个公司的面试,同时参加了网易游戏.LinkedI In中国这2个公司的笔试,拿到比较优 … 从2015年8月到2015年10月,花了3个月时间找工作,先后通过内推参加了美团.阿里蚂蚁金服.京东.腾讯.今日头条.Growin