【Python机器学习】理论知识:决策树

决策树是广泛用于分类和回归任务的模型,本质上是从一层层if/else问题中进行学习,并得出结论。这些问题类似于"是不是"中可能问到的问题。

决策树的每个结点代表一个问题或一个包含答案的终结点(叶结点)。树的边奖问题的答案与将问的下一个问题连接起来。

用机器学习的语言来说,,为了得到预测结果,利用多个特征构建一个模型,可以利用监督学习从数据中学习模型,而不需要人为构建模型。

学习决策树,就是学习一系列if/else问题,使我们能够最快的速度得到正确答案。在机器学习中,这些问题就叫做测试。数据通常不具有二元特征(是/否),而是表现为连续特征。为了构造决策树,算法搜遍所有可能得测试,找到对目标变量来说信息量最大的一个。

顶结点(也叫根结点)表示整个数据集,包含属于类别0的所有点和类别1的所有点,通过测试的真假来对数据集进行区分。递归生成二元决策树,其中每个结点都包含一个测试。

对数据反复进行递归,直到划分后的每个区域都只包含单一目标值(单一类别或单一回归值)。如果树中某个叶结点包含的数据点的目标值都相同,那么这个叶结点就是纯的。

想要对新的数据点进行预测,首先要查看这个点位于特征空间划分的哪个区域,然后将该区域的多数目标值作为预测结果。从根结点开始对树进行遍历就可以找到这个区域,每一步向左还是向右取决于是否满足相应的测试。

决策树也可以用于回归任务,使用的方法相同。预测的方法是基于每个结点的测试对树进行遍历,最终找到新数据点所属的叶结点,这个数据点的输出也就是这个叶结点中所有训练点的平均目标值。

相关推荐
BK贝壳14 分钟前
亿级用户签到位图选型复盘:用 bool-hybrid-array 扛冷启动打卡,也把它和 Roaring/Redis 的边界测清楚了
数据结构·python·性能优化·numpy
2601_966949652 小时前
如何根据研究的起止时间截取分钟级行情?Python 实战与 QuantDash 数据处理指南
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash
罗西的思考6 小时前
AI 时代的 “房谋杜断”:如何培养能力、品味与判断力
人工智能·算法·机器学习
在世修行6 小时前
智学文枢:页面切换与跨页数据预填
python·桌面应用·signal·1024程序员节·pyside·跨页跳转·状态预填
2601_962885726 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
打工仔折腾 AI7 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
信誓旦旦的程序猿7 小时前
【Python量化实战宝典 #21】北向资金跟随手册:聪明钱择时信号(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
严谨的麻辣烫8 小时前
静态 ISP 代理请求超时怎么排查?Python 与 curl 实战
python·http·requests·1024程序员节·网络排障
KeepRobots9 小时前
11-01 温哥华不回拨:用 60 行 Python 查你的工单系统会不会差一小时(KeepRobots 工程笔记)
python
xiao77mwq9 小时前
你以为 OCR 慢?实测 81.3 s 里全是故障代价:如何把「定格态」消掉,让耗时从 6.5 s 到 13 倍差距显出原形
python