决策树及其拓展 吴恩达课程

看到了个关于决策树很好的文章:链接

决策树

在所有可能的决策树中,选择一个在训练集上表现良好,并能很好的推广到新数据(即交叉验证集和测试集)的决策树。
参考文章


信息增益

信息增益越大,表示该特征对数据集划分所获得的"纯度提升"越大。所以信息增益可以用于决策树划分属性的选择,即选择信息增益最大 的属性。


关于信息增益的另一篇参考文章

构建决策树的过程

计算所有可能的信息增益,并选择最高的信息增益,根据选择的特征拆分数据集,并创建左右节点。继续递归调用以上拆分过程,直到达到阈值标准为止:

1.当某个节点的纯度为100%,即该节点的所有样本都属于一个类

2.当拆分节点后,导致树的深度超过最大深度

3.当拆分节点后,信息增益小于阈值时

4.当节点中的样本个数小于阈值时

参考文章

另一篇详细讲解构建决策树的文章

独热编码

独热编码用来解决 类别型数据的离散值问题

  • 优:独热编码解决了分类器不好处理属性数据的问题,在一定程度上也起到了扩充特征的作用。它的值只有0和1,不同的类型存储在垂直的空间。
  • 缺:当类别的数量很多时,特征空间会变得非常大。在这种情况下,一般可以用PCA来减少维度。而且one hot encoding+PCA这种组合在实际中也非常有用。
    独热编码详细解说

连续值处理

吴恩达讲解视频里是设定阈值。

另一篇文章不一样的方法:离散化策略------二分法

决策树不仅可以用来分类,也可以用于回归问题(连续的值):

参考文章
分类树与回归树的区别

从根节点开始,一步一步划分,直到到达叶子节点,最后输出预测特征值

决策树集合

单个决策树可能会对数据的微小变化高度敏感,即鲁棒性(意思稳定性差)很差。所以使用多个决策树。

对每个决策树分别进行预测,最后统计结果,选择多数的结果作为最终预测结果。
参考文章

相关推荐
老鼠只爱大米1 分钟前
LeetCode经典算法面试题 #295:数据流的中位数(双堆法、有序列表、平衡树等多种实现方案详解)
算法·leetcode·优先队列··数据流·中位数·java 面试题
x_xbx4 分钟前
LeetCode:215. 数组中的第K个最大元素
数据结构·算法·leetcode
黎阳之光10 分钟前
AI数智筑防线 绿色科技启新篇——黎阳之光硬核技术赋能生态安全双升级
大数据·人工智能·算法·安全·数字孪生
2501_9249526911 分钟前
C++中的过滤器模式
开发语言·c++·算法
2401_8732046512 分钟前
C++中的组合模式实战
开发语言·c++·算法
西野.xuan14 分钟前
内存布局(堆vs栈)一篇详解!!
java·数据结构·算法
2401_8318249618 分钟前
高性能压缩库实现
开发语言·c++·算法
2401_8747325325 分钟前
C++中的策略模式进阶
开发语言·c++·算法
大熊背28 分钟前
ISP离线模式应用(二)-如何利用 ISP 离线模式 加速 3DNR 收敛
linux·算法·rtos·isp pipeline·3dnr
zhangfeng113332 分钟前
`transformers` 的 `per_device_train_batch_size` 不支持小于 1 的浮点数值,llamafactory 支持
人工智能·算法·batch