机器学习(二十三):决策树和决策树学习过程

一、决策树

下面是数据集,输入特征是耳朵形状、脸形状、是否有胡子,输出结果是是否为猫

下图是决策树,根据耳朵形状、脸形状、是否有胡子这几个特征,建立决策树,从根节点一步步预测结果。

上图中,每一个椭圆形和矩形是树的节点。最顶上的节点是树的根节点。除了最底下一层的节点外,其余节点(椭圆形)为决策节点。最底下一层的节点为叶节点。

  • 决策节点:看到一个特定的特征,然后根据特征的值决定是向左还是向右下树
  • 叶节点:做出预测

也可以建立不同类型的决策树:

二、决策树学习过程

第一步:决定根节点使用什么特征

第二步:决定下一节点等节点使用什么特征

2.1 选择什么特征来分裂节点?

根据最大化纯度原则选择特征

例子:以预测输入是否为猫为例,需要挑选什么样的特征,使得按特征分类的子集里尽可能都是猫或者都不是猫。

如果以猫的DNA为特征,分裂节点,那么分裂出来的两个子集分别全为猫,全不为猫。这样的特征就满足最大化纯度。

如果以耳朵形状分,尖耳朵子集里大多数是猫,下垂耳朵子集里大多数不是猫。选取这样的特征也是不错的。

2.2 什么时候停止分裂?

1、当一个节点上全部是一个种类时,停止分裂。

2、当继续分裂,会超过树的最大深度时,停止分裂,这样可以确保树不会太大,使它不会过拟合。树的深度定义如下:

3、当纯度提高率低于阈值时,停止分裂。如果此时继续增加节点,取得的收益很小,有可能导致过拟合。

4、当子集的数据量低于阈值时,停止分裂。

学习来源:吴恩达机器学习,15.1-15.2节

相关推荐
信马堂5 小时前
WorkBuddy 接入第三方模型 API 全流程:安装与配置实录
人工智能·大模型·token·ai算力·workbuddy
朝朝辞暮i6 小时前
VLA 系统学习第 4 课:一个 Batch 进入神经网络后,模型到底是怎么“学会”的?
人工智能·python·神经网络·vla
IT古董6 小时前
《FDE前沿部署工程师实战教程》33 - Enterprise AI Observability:从Agent Trace到全链路智能运维
数据库·人工智能
xsd202411187 小时前
地网腐蚀AI识别算法全解析:从锈蚀图像到地下腐蚀快速定位
人工智能
oooost7 小时前
pytorch学习笔记2(transformer)
人工智能·机器学习
云杂项7 小时前
Exploring Model Inversion Attacks in the Black-box Setting(个人笔记)
人工智能
还卿一钵无情泪8 小时前
Unsloth 微调 构建自己的大模型 没有GPU也能微调
linux·开发语言·人工智能·python·大模型·nlp·unsloth
冬奇Lab8 小时前
LLM 驱动的自动化测试系列(06):移动端自动化(二)——DroidRun/Mobilerun 的角色级模型拆分
人工智能·测试
冬奇Lab9 小时前
一天一个开源项目(第230篇):HandRaw-Style —— 把 327 种手绘风格、165 种排版、36 种配色编号化,让 AI 画图不再每次都飘
人工智能·开源·资讯
罗西的思考9 小时前
从陶哲轩的访谈看:AI 数学研究方法论 & 给其它行业的启示
人工智能