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

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

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

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

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

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

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

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

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

相关推荐
寻星探路1 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
AI_56784 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
ValhallaCoder4 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
猫头虎5 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
八零后琐话5 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
小鸡吃米…6 小时前
机器学习的商业化变现
人工智能·机器学习
青春不朽5126 小时前
Scrapy框架入门指南
python·scrapy
MZ_ZXD0017 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
全栈老石7 小时前
Python 异步生存手册:给被 JS async/await 宠坏的全栈工程师
后端·python