IBM SPSS Modeler 算法优化神器——Bagging 和 Boosting

IBM SPSS Modeler中,每一个算法都会有相应的默认参数设置,对初学者来讲,即便不是很懂算法,也能够生成模型结果,但在实际项目中,咱们为了使得模型更加的优化,提高模型的准确率,常常会对算法的参数作一些相应的调整,那么今天,咱们给你们介绍两个参数,分别是BaggingBoosting,让你们了解下它们是怎么用的,能带来什么样的模型优化结果。html

用途:算法

Bagging和Boosting都是用来提升模型准确率的方法。网络

计算逻辑:函数

Bagging是Bootstrap Aggregating的一种方式,是一种根据均匀几率分布从数据集中重复抽样(有放回的)的技术。每一个自助样本集都和原数据集同样大。因为抽样过程是有放回的,所以一些样本可能在同个训练数据集中出现屡次,而其它一些却可能被忽略。假设我设置了Bagging的次数是10,也就是说我会根据上面的重复抽样方式,抽取10份数据,分别构建10个模型,获得10个预测结果,对最后的断定,若是是分类问题采用投票方式,对回归问题采用简单平均方法。学习

Boosting主要是AdaBoost (Adaptive Boosting),初始化时对每个训练集赋相等的权重1/n,而后用该学算法对训练集训练t轮,每次训练后,对训练失败的训练例赋以较大的权重,也就是让学习算法在后续的学习中集中对比较难的训练例进行学习,从而获得一个预测函数序列h_1,⋯, h_m , 其中h_i也有必定的权重,预测效果好的预测函数权重较大,反之较小。最终的预测函数H对分类问题采用有权重的投票方式,对回归问题采用加权平均的方法对新示例进行判别。大数据

Bagging与Boosting的区别:优化

两者的主要区别是取样方式不一样。Bagging采用均匀取样,而Boosting根据错误率来取样,所以Boosting的分类精度要优于Bagging。Bagging的训练集的选择是随机的,各轮训练集之间相互独立,而Boosting的各轮训练集的选择与前面各轮的学习结果有关;Bagging的各个预测函数没有权重,而Boosting是有权重的;Bagging的各个预测函数能够并行生成,而Boosting的各个预测函数只能顺序生成。对于像神经网络这样极为耗时的学习方法,Bagging可经过并行训练节省大量时间开销。spa

Bagging和Boosting均可以有效地提升分类的准确性。在大多数数据中,Boosting的准确性比Bagging高;在有些数据集中,Boosting会引发退化------过分拟合。3d

 

IBM SPSS Modeler中的应用: htm

在IBM SPSS Modeler中,能够设置Bagging或Boosting功能的在算法包括:

Neural

Network

CHAID

QUEST

C&RT

Linear

以CHAID决策树为例:

接下来咱们经过电信流失客户分析模型的建立来体验下这两个参数的设置对预测结果的影响。

首先,咱们建立一数据流文件 ,以下图:

spss

Step1:链接数据源Excel文件,文件内容以下:

spss

Step2:类型节点设置影响因素及目标:

spss

Step3:选择CHAID决策树算法,并使用默认参数设置生成模型:

spss

Step4:生成的模型结果,能够在摘要面板查看默认的参数设置内容:

spss

Step5:经过评估节点查看模型准确率为84.49%:

spss

接下来,咱们第一次更改算法的设置内容,在构建选项的目标面板中,选中“加强模型稳定性”,在总体面板中,设置模型数量为“10”。

spss

spss

从新运行模型后,能够看到,获得10个模型结果及各自的准确率:

spss

也能够看到该算法中参数设置的内容:

spss

再用评估节点,看到新模型准确率与以前的准确率相比,增长到88.16%:

spss

一样的道理,若是咱们设置为Boosting选项,生成的模型能够看到它的准确度缓慢提高:

spss

一样的,用评估节点,能够看到模型的准确率会增长到92.03%:

spss

总结:

经过上面的例子,咱们能够看到使用Bagging和Boosting对模型带来的影响,能够在实际项目中尝试着使用,固然啦,由于使用这两个选项后,它的计算量会大大增长,好比原来要构建一个决策树模型,如今要构建N个(取决于你设置的模型个数),所以计算量是原来的N倍,因此,请耐心等待……

 

更多大数据与分析相关行业资讯、解决方案、案例、教程等请点击查看>>>

慧都控件网年终促销第一波已开启,全场6折起,豪礼抢不停>>>

截止时间:2016年10月30日

相关文章
相关标签/搜索