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

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

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

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

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

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

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

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

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

相关推荐
惜.己9 分钟前
使用python读取json数据,简单的处理成元组数组
开发语言·python·测试工具·json
都叫我大帅哥2 小时前
Python的Optional:让你的代码优雅处理“空值”危机
python
曾几何时`3 小时前
基于python和neo4j构建知识图谱医药问答系统
python·知识图谱·neo4j
石迹耿千秋5 小时前
迁移学习--基于torchvision中VGG16模型的实战
人工智能·pytorch·机器学习·迁移学习
写写闲篇儿6 小时前
Python+MongoDB高效开发组合
linux·python·mongodb
杭州杭州杭州7 小时前
Python笔记
开发语言·笔记·python
Wendy14418 小时前
【线性回归(最小二乘法MSE)】——机器学习
算法·机器学习·线性回归
路人蛃8 小时前
通过国内扣子(Coze)搭建智能体并接入discord机器人
人工智能·python·ubuntu·ai·aigc·个人开发
qiqiqi(^_×)9 小时前
卡在“pycharm正在创建帮助程序目录”
ide·python·pycharm
Ching·9 小时前
esp32使用ESP-IDF在Linux下的升级步骤,和遇到的坑Traceback (most recent call last):,及解决
linux·python·esp32·esp_idf升级