一文全解:ID3,CART和C4.5的区别与联系

文章目录

  • ID3
  • C4.5
  • CART

ID3

ID3是最早的决策树,它的特点如下:

  • 输入的是离散型变量,如果数据中有连续变量,应进行分箱操作。

  • 使用计算不纯度的公式是交叉熵Entropy
    E n t r o p y ( t ) = − ∑ i = 1 c p ( i ∣ t ) l o g 2 p ( i ∣ t ) Entropy(t) = -\sum_{i=1}^c p(i|t)log_2p(i|t) Entropy(t)=i=1cp(it)log2p(it)

  • 生长的过程是每次都对最能够下降不纯度的特征进行切分。

  • 每次切分就是按照特征中的离散值的个数进行切分,特征中有多少个离散值,就切分成为多少个子集。每次生长,都会消耗一个特征。

  • 使用Information Gain来对切分点和切分特征进行判断,每次选择最能减小不纯度的方案。

  • ID3总是会选择离散值多的特征进行优先切分,容易造成过拟合。

  • 没有有效的剪枝方案。

C4.5

C4.5是对ID3的优化,防止它过拟合,他的特征如下:

  • C4.5引入了一个 I n f o r m a t i o n V a l u e Information Value InformationValue指标来衡量特折的混乱程度,计算公式与Entropy相同。 P ( v i ) P(v_i) P(vi)表示该特征中第 i i i个离散值下的样本数量占总体样本的比值,该特征离散值越多, I n f o r m a t i o n V a l u e Information Value InformationValue就越大。
    I n f o r m a t i o n   V a l u e = − ∑ i = 1 K P ( v i ) l o g 2 P ( v i ) Information\ Value = -\sum^K_{i=1}P(v_i)log_2P(v_i) Information Value=i=1KP(vi)log2P(vi)

  • 使用 I n f o r m a t i o n V a l u e Information Value InformationValue修正 I n f o r m a t i o n G a i n Information Gain InformationGain,得到C4.5的不纯度衡量公式 I n f o r m a t i o n R a t i o Information Ratio InformationRatio
    G a i n   R a t i o = I n f o r m a t i o n   G a i n I n f o r m a t i o n   V a l u e Gain\ Ratio = \frac{Information\ Gain}{Information\ Value} Gain Ratio=Information ValueInformation Gain

CART

CART是目前使用最广的决策树,也是sklearn集成的DecisionTree的基本树。它的特征如下:

  • 输入可以是离散值和连续值。

  • 使用Gini来计算不纯度的计算。
    G i n i ( t ) = 1 − ∑ i = 1 c p ( i ∣ t ) 2 Gini(t) = 1-\sum_{i=1}^c p(i|t)^2 Gini(t)=1i=1cp(it)2

  • 生长的过程是每次对某一个样本进行一次切分(将节点的样本一分为二)。对比ID3是将样本一分为n。所以CART可以对同一个样本进行多次切分,(ID3则是消耗了某一个特征,不再进行同一个特征的切分。)

  • 也是使用Information Gain来对切分点和切分特征进行判断,每次选择最能减小不纯度的方案。

  • 可以使用:1、限制叶子节点的数目;2、限制树的深度;3、限制最小叶子节点的样本数量;4、限制最小不纯度的切分前提;等方法来防止过拟合。

你可能感兴趣的:(决策树,算法)