智能信息导论之决策树

本文介绍了决策树算法中的几种关键概念,包括GINI指数、交叉熵、误分类误差等纯度度量方法。详细解释了ID3、C4.5及CART算法如何选择最优属性进行划分,并讨论了它们各自使用的纯度指标。

纯度的度量方法

GINI index
交叉熵
misclassification error

hunt ID3决策树算法

信息增益作为属性的选择标准
信息熵越大,她的可能性越多
找信息增益最大的属性

C4.5算法

split考虑了信息增益和信息量
它是分裂的信息熵,即按某属性分类的复杂性
再算information gain,再计算信息增益率(id3是计算信息增益)
找信心增益率最大的属性
且把连续性数据一分为二变为离散型
采用概率填充缺失值

CART算法试用GINI系数作为纯度的衡量标准(c4.5

纯度用信息增益率)
找最大的GINI系数比率最大的属性

### 决策树算法原理 决策树是一种基于树结构进行决策的模型,广泛应用于分类和回归任务中。该算法通过一系列规则对输入数据进行分割,最终达到分类或预测的目的[^1]。 #### 基本思想 决策树的基本思想是从根节点开始,根据某个属性测试将数据集划分为若干子集,再针对每个子集重复这一过程直到满足停止条件为止。此过程中形成的树形结构可以用来表示不同条件下应采取的动作或做出的决定[^3]。 #### 数学基础 为了衡量划分的好坏程度,在构建决策树时引入了熵的概念。熵是用来度量集合纯度的一个指标;对于给定的数据集D来说,其经验熵H(D)定义如下: \[ H(D)=-\sum_{k=1}^{|\mathcal{Y}|} p_k \log_2 p_k \] 其中\(p_k\)表示类别k在当前数据集中所占的比例。当一个结点完全纯净(即只含有一种类型的样本),此时的经验熵为0;反之则越大说明混合得越厉害[^5]。 #### 构建流程 构建决策树的过程主要包括特征选择、树的生成以及剪枝三个阶段。首先是选取最优分裂标准——一般采用信息增益最大原则来确定最佳切分变量及其阈值;接着按照选定的标准不断递归创建新的分支直至无法继续细分或者达到了预设的最大深度/最小样本数等终止准则;最后为了避免过拟合现象的发生还需要执行适当水平上的修剪操作以简化模型复杂度并提高泛化能力[^4]。 ```python from sklearn.datasets import load_iris from sklearn.tree import DecisionTreeClassifier, plot_tree import matplotlib.pyplot as plt # 加载鸢尾花数据集 data = load_iris() X, y = data.data, data.target # 创建并训练决策树分类器 clf = DecisionTreeClassifier(random_state=42) clf.fit(X, y) plt.figure(figsize=(12,8)) plot_tree(clf, filled=True, feature_names=data.feature_names, class_names=data.target_names); ``` 上述代码展示了如何利用`scikit-learn`库中的`DecisionTreeClassifier`类快速搭建一个简单的决策树模型,并可视化展示出来以便更好地理解其内部结构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值