随机森林RF、XGBoost、GBDT和LightGBM的原理和区别
[TOC] 1、基本知识点介绍 RandomForest、XGBoost、GBDT和LightGBM都属于集成学习。 集成学习通过构建并结合多个分类器来完成学习任务,也称为多分类系统,集成学习的目的是通过结合多个机器学习分类器的预测结果来改善基本学习器的泛化能力和鲁棒性。 集成学习方法大致分为两类: 基本学习器之间存在强依赖关系、必须串行生成的序列化方法,即Boosting提升方法。 基本学习器之间不存在强依赖关系、可同时生成的并行化方法,即Bagging方法。 2、各个算法原理 2.1 随机森林 -- RandomForest RF原理 :RF是Bagging的扩展变体,它在以决策树为基础学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机特征选择,其流程大概分为四个步骤: 随机选择样本(放回抽样)。 随机选择特征属性。 构建决策树。 随机森林投票(平均)。 因此防止过拟合能力更强,降低方差。 Bagging,即套袋法,算法过程如下: 从原始样本集中抽取训练集。每轮从原始样本集中使用Bootstraping的方法抽取n个训练样本,共进行k轮抽取,得到k个训练集。 每次使用一个训练集得到一个模型,k个训练集共得到k个模型。(模型可以根据具体问题具体选取,如决策树,SVM,感知机。) 对于分类问题:将上面得到的k个模型采用投票的方式得到分类结果; 对于回归问题