首页 百问百答 帖子详情
决策树算法的主要步骤
收藏
快速回复
百问百答 问答学习资料 815 0
决策树算法的主要步骤
收藏
快速回复
百问百答 问答学习资料 815 0

决策树的算法是,根据许多个属性的值,得到一个明确的分类。也就是n个数据-->1个数据的过程。在一个数据有n个特征维度时,你会觉得很混乱不知道怎么做出判断,衡量这种混乱程度的就称为信息熵。决策的过程就是混乱度减轻,信息熵下降的过程。

决策树有三个关键的步骤:

(1)选择最优属性(根节点)

决策树判断一个属性是不是当前数据集的最优属性,是依靠信息熵变化的程度来选择的。选择某个属性,依照这个属性的值,对训练集进行划分,划分后的子训练集的信息熵之和,相比未分割前的数据集信息熵,下降最多的,就是当前的最优属性。也就是说,根据这个属性,我们就可以对数据集进行很大程度上的区分,例如猫和狗之间用耳朵区分,非常快。

(2)生成决策树。(叶子节点的选择)

选取最优属性后,根据此属性的取值,对原始数据集划分,得到子数据集,再将每个子数据集当作完整数据集,迭代进行最优属性的选取,直到数据集中样本都是同一个分类标签时,决策树生成过程结束。

有时根据场景业务需求的不同,也不要求数据集分割到无法再分类的程度,而是指定迭代的次数,即决策树到第几层就不再分割了,直接把当前叶子数据集中数量最多的分类标签作为叶子节点。这是不同的停止规则。

而决策树的三种常见算法,则是根据选择最优属性时计算的信息熵函数不同划分的。ID3 是根据信息熵,C4.5是根据信息增益率。CART是采用了基尼Gini系数。

(3)剪枝(防止过拟合)

剪枝是把通过训练集得到的决策树,切掉一些叶子节点,一方面可以减少判决步骤,提高判决效率。但更主要的是,防决策树模型对训练集数据过拟合。

0
收藏
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户