随机森林应该这么理解

  • 随机森林是什么
  • 基本概念
  • 随机森林的理解
  • 随机森林的过程
  • 算法实现与举例


随机森林是什么

随机森林还是一种决策算法,是有多个决策树组成的集成学习方法,只是在决策树的构成中引入了随机性。

基本概念

  • 集成学习:秉承“三个臭皮匠,顶个诸葛亮”的思想,通过多个相对弱的学习器,一起参与决策,从而得到一个强的决策方案。
  • 决策树: 什么是决策树就不多说了,决策树关键的是如何选择每个节点用来判断的属性。ID3,C4.5,CART是三种典型的决策树。根据不同的指标选择最优的属性。
  • 自助采样:简单有放回的随机抽样。

随机森林的理解

  • 随机森林实际上是一种决策机制,不依赖与判决的具体算法,不同的算法实际上影响的最优决策属性的选择。
  • 随机森林既然是一种随机算法,每次运行的结果都会有所不同。
  • 随机森林的随机主要表现在,训练样本随机以及判决属性(用来选择最优属性的属性集合)选择随机。这两个扰动,使得随机森林拥有更强的泛化能力,(学习器之间的差异性增强,有利于集成学习的准确性的提高)

随机森林的过程


输入:
1. 训练数据集D(包含m个数据,每个数据n维度的向量), 
2. 数据集的标记F(m维度的向量)、
3. 决策树的个数T,属性选择个数A,决策树的深度H。
开始:
step 1 : 对数据集D自助采样为T组m个训练数据 DT 
step 2 : 对每组数据DT[for i in T], 生成一颗决策树
step2-1:     随机在所有的属性中随机选择A个属性集AT
setp2-2:     根据随机的AT属性集中通过某种判决找到最优的属性AB
setp2-3:     将属性AB作为决策树的一个节点,
setp2-4:     将左右子树分别执行2-1 到2-3,直到到推出条件
step 3 : 将上面step2中生成的T个决策树投票表决最后的判决结果(预测过程)
结束

算法实现与举例

~ 待续