1.1 决策树算法原理

1. 什么是决策树/判定树(decision tree)?

       判定树是一个类似于流程图的树结构:其中,每个内部结点表示在一个属性上的测试,每个分支代表一个属性输出,而每个树叶结点代表类或类分布。树的最顶层是根结点。

1.1 决策树算法原理_第1张图片

 

 

2.  机器学习中分类方法中的一个重要算法

 

 

3.  构造决策树的基本算法    

 下图是常见的一个决策树图,根据是年龄是否为youth , 身份是否为 student等,最后来预测是否购买电脑,

图主要由根节点,分支,节点,树叶来组成.

1.1 决策树算法原理_第2张图片

构成决策树的原始数据

1.1 决策树算法原理_第3张图片

 

3.1 熵(entropy)概念

         信息和抽象,如何度量?

          1948年,香农提出了 ”信息熵(entropy)“的概念

          一条信息的信息量大小和它的不确定性有直接的关系,要搞清楚一件非常非常不确定的事情,或者          

          是我们一无所知的事情,需要了解大量信息==>信息量的度量就等于不确定性的多少          

          例子:猜世界杯冠军,假如一无所知,猜多少次?

          每个队夺冠的几率不是相等的

          比特(bit)来衡量信息的多少

1.1 决策树算法原理_第4张图片

变量的不确定性越大,熵也就越大

 

3.2 决策树归纳算法 (ID3

     1970-1980, J.Ross. Quinlan, ID3算法

     选择属性判断结点

     信息获取量(Information Gain):Gain(A) = Info(D) - Infor_A(D)

      通过A来作为节点分类获取了多少信息

     以这份数据为例:

1.1 决策树算法原理_第5张图片

以age为例,14行数据中, 有9行是购买电脑,5行是不购买电脑,那么

age的信息熵为 Info(D)

而年龄分为 youth, middle,senior,根据年龄类型划分后信息熵为info_age(D)

1.1 决策树算法原理_第6张图片

那么年龄的信息获取量为Gain(age)

 

类似,Gain(income) = 0.029, Gain(student) = 0.151, Gain(credit_rating)=0.048

此时Gain(age)值最大,所以选择age作为第一个根节点

此时决策树图形为

1.1 决策树算法原理_第7张图片

以此类推,得到一个完整的决策树

 

4. 决策树的优点:

     直观,便于理解,小规模数据集有效     

 

5. 决策树的缺点:

     处理连续变量不好

     类别较多时,错误增加的比较快

     可规模性一般

 

 

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