机器学习---决策树算法
程序员文章站
2024-02-10 16:35:22
...
1. 算法中分类和预测算法评估的标准:
@准确率
@速度
@强壮性------------------有噪声污染时算法表现
@可规模性---------------当数据指数增长时,算法表现是否一致
@可解释性
2. 决策树(decision tree)
3. 熵(entropy)
又叫信息熵H(x),用来度量一条信息的信息量大小和它的不确定性有直接关系。
信息熵用来衡量信息量的大小
若不确定性越小,则信息量越小,熵越小
比如A班对B班,胜率一个为x,另一个为1-x
则信息熵为 -(xlogx + (1-x)log(1-x))
求导后容易证明x=1/2时取得最大,最大值为2
也就是说两者势均力敌时,不确定性最大,熵最大。
3.1 归纳算法ID3
信息增益(Info Gain)
Gain(A) = Info(D) - Info_A(D)
e.g. 1
9个人买电脑,5个人不买电脑
Info(D) = -(9/14)*log(9/14) -(5/14)*log(5/14)=0.940(bits)
根据年龄,可分为 年轻人 中年人 老年人
Info_age(D) = (5/14)*(-(2/5)log(2/5)-(3/5)log(3/5))+
(4/14)×(-(4/4)log(1/4)-(1/4)log(0/4))+
(5/14)×(-(3/5)log(3/5)-(2/5)log(2/5))
=0.694(bits)
Gain(age) = Info(D) - Info_age(D)=0.940-0.694=0.246bits
类似有:
Gain(income) = 0.029
Gain(student)=0.151
Gain(credit)=0.048
Gain(age)信息增益最大,所以可以选age为decision tree的root节点。
其他算法:
C4.5
CART
共同点:都是贪心算法,决策机制都是自上而下。
区别:属性选择度量方法不同。
上一篇: pyinstaller
下一篇: 菜鸟求教