随机森林算法(RandomForest,简称RF)
一、解决的问题
二、解决方法的框架/流程
1.基本思想:RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。(即先从节点的属性集合M中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性用于划分,一般k远小于M,取k= )。
2、基本的流程:
a. 从训练数据中选取n个数据作为训练数据输入,有放回的选取。这样会造成一部分数据无法被取到,这部分数据被称为袋外数据,可以使用其做误差估计;
b.选取了输入的训练数据之后,需要构建决策树,随机选取k个特征;
c.构造决策时,按照选取最小的基尼指数进行分裂节点的选取进行决策树的构建,直到该节点所有训练样例都属于同一类或达到树的最大深度;
d,重复b、c,得到随机森林;
e. 多数投票进行决策。
三、方法的创新点?
四、需要展开的部分
五、优点?
1.两个随机性的引入使得随机森林不容易陷入过拟合还具有很好的抗噪声能力。
=>两个随机过程避免了过拟合现象的出现(一是随机的从整体的训练数据中选取一部分作为一棵决策树的输入数据,而且是有放回的选取;第二个是随机特征的选取)。
2.容易做成并行化方法。
3.实现简单。
4.能够处理高纬度的数据,并且不需要做特征选择。
六、缺点?
缺点:对噪声敏感。
七、其他的技术细节
1.注意点:不需要剪枝,构建决策树时分裂点的选择是依据最小基尼系数的。
2.如何在随机森林中避免出现过拟合?
(1).对树的深度进行控制;
(2).把模型训练比较复杂,看合并节点后的子树能否降低泛化误差。
3.基尼系数是什么?
基尼系数: