[机器学习算法]决策树CART和随机森林模型

目录

一、决策树CART

1.1分类决策树

1.2回归决策树

1.3 决策树优点与缺点

1.4 决策树剪枝算法

二、随机森林RF

2.1随机森林的生成

2.2 随机森林的特点


、决策树CART

        CART分类回归树是一种典型的二叉决策树,可以处理分类或者回归问题。如果待预测结果是离散型数据,则CART生成分类决策树;如果待预测结果是连续型数据,则CART生成回归决策树。

1.1分类决策树

       选择GINI系数作为分裂节点的依据。

       对于给定的样本集合D,其基尼指数为

      Gini系数表示该数据集中样本属于某一类的不确定程度,Gini系数越小,样本类别的不确定性越小。如样本集合D中只有一个类别,gini系数为0,样本类别不确定性为0。

       对含有N个样本的样本集S,根据属性A的第i个属性值,将样本集分为S1和S2,Gini系数为:

       对于属性A,计算所有属性值将数据集分为两部分后的Gini系数,选取其中的最小值,作为属性A得到的最优二分方案:

        对于数据集中的所有属性,计算最优二分方案,选取最小值,作为样本S的最优二分方案:

       对数据子集调用上述过程,直到满足停止条件:1)样本属于同一类别;2)树的深度达到用户指定的深度;3)样本个数达到用户指定的个数。

1.2回归决策树

       选择最小方差作为分裂节点的依据。

       对于属性A,计算所有属性值将数据集S分为两部分后的方差,选取其中的最小值,作为属性A得到的最优二分方案:

       对于数据集中的所有属性,计算最优二分方案,选取最小值,作为样本S的最优二分方案:

       对数据子集调用上述过程,直到满足停止条件。

1.3 决策树优点与缺点

优点:

  1. 从模型中得到的规则能得到非常直观的解释。
  2. 为判断属性变量的重要性提供依据。
  3. 模型在面对缺失值、变量数多等问题,依然显得非常稳健。
  4. 既可以处理离散值,也可以处理连续值。

缺点:

  1. 决策树算法容易过拟合,导致泛化能力不强。
  2. 寻找到的决策树是局部最优,而非全局最优。

1.4 决策树剪枝算法

        剪枝是避免决策树过拟合的有效方法,包含预剪枝和后剪枝两种算法。

       1、预剪枝

            在决策树训练过程中(只用到训练集),若分裂节点后的信息增益小于阈值,则停止划分。

        2、后剪枝

            用训练集构建好一颗决策树后,利用测试集进行修正。后剪枝算法包括:

            Reduced-Error Pruning(REP,错误率降低剪枝),自底向上对非叶结点进行考察,分别计算剪枝前后,测试集的预测精度,若剪枝后,预测精度提高,则进行剪枝,否则不进行剪枝。

二、随机森林RF

2.1随机森林的生成

        1、如果训练数据集大小为N,对于每棵树而言,随机且有放回地从训练集中抽取N个训练样本,作为该树的训练集。

        2、如果每个样本的特征维度为M,随机地从M个特征中选取m(sqrt(M))个特征子集,每次树分裂时,从这m个特征中选择最优的。

        3、每棵树都尽最大程度的生长。

        我们要将一个输入样本分类,需要将输入样本输入到每棵树中进行分类,森林中的每棵树都是独立的,99%不相关的树做出的预测结果涵盖所有情况,这些预测结果将会彼此抵消,少数优秀的树的预测结果将会超脱于“噪音”,做出一个好的预测。将若干个弱分类器的分类结果进行投票选择,从而组成一个强分类器,这是随机森林Bagging的思想。

2.2 随机森林的特点

  1. 由于每棵树都是独立的(任两棵树的相关性低),且精度最优,所以随机森林具有极好的准确率。
  2. 随机森林不容易发生过拟合。(样本数据随机抽样,以及特征子集随机抽样,稀释了噪音)
  3. 每棵树并行化训练,该模型可以有效地运行在大数据集上。
  4. 可以得到变量的重要性排序。(决策树)
  5. 既能处理离散型变量,又能处理连续型变量。(决策树)
  6. 面对数据缺失、高维特征等问题依然具有较高的稳健性。(决策树)

 

 

参考文献

https://blog.csdn.net/zhihua_oba/article/details/72230427

https://blog.csdn.net/xiongchengluo1129/article/details/78485306

https://www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm#inter

你可能感兴趣的:(机器学习算法)