机器学习笔记8-决策树

本文探讨了决策树在机器学习中的应用,指出其在处理大量特征时可能过拟合的问题。同时,解释了决策树的分类与回归任务,以及决策树的构造过程,包括如何挑选最佳属性。ID3算法被提及,其使用信息增益作为最佳属性选择标准。文章还讨论了熵和信息熵的概念,并提出了决策树过拟合和解决办法,如剪枝和交叉验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

决策树容易过拟合,尤其是在你具有包含大量特征的数据时,复杂的决策树可能会过拟合数据


输出是连续或离散,分为回归和分类


名词:
实例:输入
函数
目标:答案

假设类:愿意考虑的所有函数

训练集:由所有的输入和与之配对的标签组成的集合

候选者:可能会使目标函数

测试集


决策树有特定的表示

决策节点:挑选一个特定的属性,提出该属性的问题,答案就是边所表示的值

顺序是由根节点到输出


构建决策树:

1.挑选一个最佳属性(将事物大致一分为二的同一特性)

2.提出问题

3.沿着答案的路径

3 返回1

直到把可能性空间缩小到一个示例


决策树可表达性:

and,or:复杂度n
xor:复杂度O(2^n)


决策树数量:2^2^n


需要用明智的算法选择合适的决策树:
ID3:

    输入:样本集合S,属性集合A
    输出:id3决策树。
    1) 若所有种类的属性都处理完毕,返回;否则执行2)
    2)计算出信息增益最大属性a,把该属性作为一个节点。
        如果仅凭属性a就可以对样本分类,则返回;否则执行3)
    3)对属性a的每个可能的取值v,执行一下操作:
        i.  将所有属性a的值是v的样本作为S的一个子集Sv;
        ii. 生成属性集合AT=A-{a};
        iii.以样本集合Sv和属性集合AT为输入,递归执行id3算法;



最佳属性标准(信息增益):

S:训练样本的集合

A:特定属性

Gain(S,A)=熵(S)-(具有特定值的每个样本集的预期或平均熵)


熵:测量随机性的一种方法

比如说将出现的红色 x 的数量和将出现的绿色 o 的数量,如果它们均匀分割 则它们的熵会是最大值。

在你可能看到的所有可能值中求和,该值的概率乘以该值的概率的对数,再乘以负一


ID3偏差:
限定偏差:集合(决策树可以在目前已提供离散变量的所有情况中表示的函数)
优选偏差:子集


偏向好的分割靠近顶部
偏向正确的答案
偏向更短的树


树过大过复杂,违反奥卡姆剃刀定律,会造成过拟合。交叉验证,剪枝等


from sklearn import tree  
from class_vis import prettyPicture, output_image
clf = tree.DecisionTreeClassifier()  
clf.fit(features_train, labels_train) 
prettyPicture(clf, features_test, labels_test)
output_image("test.png", "png", open("test.png", "rb").read())



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值