机器学习课次29~30-boosting算法_第1页
机器学习课次29~30-boosting算法_第2页
机器学习课次29~30-boosting算法_第3页
机器学习课次29~30-boosting算法_第4页
机器学习课次29~30-boosting算法_第5页
已阅读5页,还剩16页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

彭辉94031097(QQ)机器学习MachineLearningboosting算法任务目标能力目标理解装袋法、随机森林集成学习原理理解集成学习基本原理理解Boosting集成学习原理使用Sklearn进行集成学习算法应用开发任务目标素质目标团队协作学会学习实践创新Boosting1990年,R.Schapire给出了肯定的答案,通过组合三个弱学习器实现了一个强学习器,促进了提升(Boosting)算法的极大发展。Boosting简介BoostingBoosting算法分为如下两个阶段。训练阶段。给定一个大训练集X,随机地将其划分为3个子集X={X1,X2,X3}。首先,使用X1训练d1;接着,提取X2并将它作为d1的输入,将d1错误分类的所有实例以及X2中被d1正确分类的一些实例一起作为d2的训练集;然后,提取X3并将它输入给d1和d2,其中用d1和d2输出不一致的实例作为d3的训练集。检验阶段。给定一个实例,首先将其提供给d1和d2,如果二者输出一致,这就是输出结果,否则d3的输出作为输出结果。Boosting的优化boosting的缺点:

尽管Boosting非常成功,但是需要一个非常大的训练样本集,将样本集一分为三。(很多场合不太现实)1996年,YoavFreund和RobertSchapire提出了提升的一个变种,即自适应提升(AdaptiveBoosting,AdaBoost),它重复使用相同的训练集,而不再要求很大的数据集。AdaBoostAdaBoostAdaBoost算法的工作机制首先,训练集用初始权重训练出一个弱学习器1,根据弱学习的学习误差率表现来更新训练样本的权重,使得之前弱学习器1学习误差率高的训练样本点的权重变高,使得这些误差率高的点在后面的弱学习器2中得到更多的重视。然后,基于权重调整后的训练集来训练弱学习器2,如此重复进行,直到训练到指定的弱学习器数量。最后,将这些弱学习器通过集合策略进行整合,得到最终的强学习器。AdaBoostAdaBoost算法的工作机制AdaBoostAdaBoost算法描述

使得被基分类器hm错误分类样本的权值增大,而正确分类的样本权重值变小。Zm规范化因子

AdaBoostAdaBoost

在AdaBoost中,尽管不同的基学习器使用稍有差异的训练集,但是这种差异不像Bagging那样完全依靠偶然性,而是它前一个基学习器误差的函数。提升对一个特定问题的实际性能显然依赖于训练数据集和基学习器。为此,需要有足够的训练数据,并且学习器应当是弱的但又不是太弱,而且提升对噪声和离群点尤其敏感。AdaBoost特点分析AdaBoost

Sklearn提供的AdaBoost分类器实现了SAMME和SAMME.R算法,原型如下:classsklearn.ensemble.AdaBoostClassifier(base_estimator=None,n_estimators=50,learning_rate=1.0,algorithm=’SAMME.R’,random_state=None)

SAMME和SAMME.R算法的主要参数base_estimator:对象,默认值为决策树。该基础分类器必须支持带样本权重的学习。n_estimators:整型,默认值为50。设定基分类器数量的上限值,如果训练集已经完全训练好了,算法会提前终止。learning_rate:浮点型,默认值为1。用于减少每一步的步长,防止步长太大而跨过极值点。通常在learning_rate和n_estimators之间会有一个折中。algorithm:{‘SAMME.R’,’SAMME’},默认值为‘SAMME.R’。GradientBoosting梯度提升(GradientBoosting)是一种用于回归和分类问题的机器学习方法,生成一个由弱预测模型(通常是决策树)组成的集成预测模型(强学习器)。通过迭代选择一个指向负梯度方向上的函数(弱假设),优化函数空间上的成本函数,拟合一棵决策树。在回归问题中,这称为梯度提升回归树GBRT;在分类问题中,这又被称为提升决策树GBDT。

GradientBoosting

GradientBoosting

GradientBoostingGradientBoosting

GBDT可用于回归问题,相对LogisticRegression仅能用于线性回归,GBDT能用于线性回归和非线性回归,GBDT的适用面更广。GBDT也可用于二分类问题(设定阈值,大于阈值为正例,反之为负例)。

Sklearn提供的GBDT的实现类原型如下:

classsklearn.ensemble.GradientBoostingClassifier(loss=‘deviance’,learning_rate=0.1,n_estimators=100,subsample=1.0,criterion=‘friedman_mse’,min_samples_split=2,min_samples_leaf=1,min_weight_fraction_leaf=0.0,max_depth=3,min_impurity_decrease=0.0,min_impurity_split=None,init=None,random_state=None,max_features=None,verbose=0,max_leaf_nodes=None,warm_sta

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论