Bagging和RandomForest学习

其实Bagging和随机森林的思想都是可以普适性的用在其他的分类器上的,思想其实都是可以通用的,只不过有的合适有的不合适而已,决策树就是一种比较合适用Bagging和随机森林来提升的分类器之一。

Bagging

BootStrap Aggregation:从样本中重采样(有重复的)选出n个样本,在所有的属性上,对这n个样本建立分类器(ID3、C4.5、CART、SVM、Logistic回归等)。
重复上述步骤m次,得到m个分类器,将所有数据放在这m个分类器上,最后根据这m个分类器的投票结果决定属于哪一类。

有论文证明,BootStrap 采样,大约会有63%是不重复的:
这里写图片描述
里边的具体证明咱就不管了,知道这么个事情就可以了。
这里写图片描述
这幅图是说明了Bagging的这个过程以及投票。

随机森林

随机森林在Bagging的基础上做了修改:
(1): 从样本中用BootStrap 采样了n个样本。
(2): 从所有属性中随机选择K个属性,选择最佳分割属性作为结点建立CART决策树。
(3): 重复上边2步m次,即建立m棵CART决策树。
(4): 这m棵CART树形成随机森林,通过投票表决结果属于哪一类。

我们介绍的是使用决策树作为基本分类器,当然也可以是别的分类器。

当然了,除了分类问题,回归问题也可以尝试使用:
这里写图片描述
显然红色曲线基本上优于每一条灰色的,其实红色曲线就是灰色曲线取平均得来的,这样的红色曲线是比较稳定的并且不容易过拟合。

最后介绍一下投票机制,可能你会觉得投票还不简单,少数服从多数呗,此言差矣啊。

简单投票机制:

(1): 一票否决
(2): 少数服从多数(可以加权)
(3): 阈值表决(就像美国选总统那样,但是Trump还是赢了)

贝叶斯投票机制:

假定有N个用户可以为X个电影投票(假设某位投票者不可对同一电影重复投票),投票有1,2,3,4,5个档。
根据用户投票可以对电影排序:
本质是分类问题,对于某电影,有N个决策树,每棵树对电影有一个分类(1,2,3,4,5),求这电影属于哪一类?(如果可以是小数,就变成了回归问题)

一种可能:
这里写图片描述
WR:加权得分(weighted rating)
R: 该电影的用户投票的平均得分(Rating)
C: 所有电影的平均得分
v: 该电影的投票人数(votes)
m: 排名前250名电影的最低投票数
我们现在来分析一下这个公式,假设现在有一个电影,没人投票,那么也就是v = 0,那么也就是说该电影的得分就是所有电影的平均分。假设m这个超参数是0,那么也就是说最后的得分就是用户的投票啊。
还是很有道理的吧,还是很喜欢贝叶斯思维的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值