集成学习2——bagging

本博客仅用于记录学习知识,如有雷同请联系我

参考:https://blog.youkuaiyun.com/qq_34106574/article/details/82016442  清华大学 数据挖掘课程

1.Bagging——BootStrap Aggregation

    bagging是有放回的取出样本中的部分样本,进行多次这种操作得到多组样本,用这些样本训练多个分类器,然后在预测的时候,用这些分类器进行预测,用这些预测值进行投票。比如7个预测为1,3个预测为0,则总的预测值就为1。

2.典型算法

随机森林——Random Forest

随机森林就是将多个(500 <= M <= 5000)决策树集合起来得到一个森林进行决策,根据上面的定义,就是用不同的决策树进行预测,然后用这些预测进行投票。

假设有N个样本,有放回的取N个样本,这种随机抽取的方法最终1-\lim(1-\frac{1}{n})^{n}的极限是\frac{2N}{3},而剩下的数据可以用于测试集。

当然对于这M个决策树,在测试的时候可以用到的测试集的数据是要在训练中没有用的高的数据(训练集不一样,测试集也不一样)。

如果每个样本的特征维度为K,指定一个常数k<<K,随机地从K个特征中选取k个特征子集,每次树进行分裂时,从这k个特征中选择最优的,这和决策树的特征有关

3.算法步骤

  • 用有抽样放回的方法(bootstrap)从样本集中选取n个样本作为一个训练集
  • 用抽样得到的样本集生成一棵决策树。在生成的每一个结点:随机不重复地选择d个特征
  • 利用这d个特征分别对样本集进行划分,找到最佳的划分特征(可用基尼系数、增益率或者信息增益判别)
  • 重复步骤1到步骤2共k次,k即为随机森林中决策树的个数。
  • 用训练得到的随机森林对测试样本进行预测,并用票选法决定预测的结果
     

优点:

1.不需要人为的去讲数据分成测试集验证集

2.不需要担心过拟合问题,在随机森林中有多个决策树,即使有一部分树过拟合了,但是在将所有分类器combine之后,过你华将被大大削弱,不用剪枝

3.不需要人为的特征选择,只需要设置数目。

4.可以进行特征选择,计算每个特征的重要性。查看每个特征在不同决策树中起到的作用,也就是基尼系数或增益率等评价值的大小,然后在森林中对所有树中的该特征的值做一下平均。就可以得到不同特征的排名,这样就知道哪些特征比较重要,哪些特征不重要。

 

分类错误的两类因素:

1.树之间的相关性,相关性越大,错误率越大

2.树的分类能力越强,错误率越低

特征选择个数↑--相关性和分类能力↑

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值