首页 > 编程语言 >决策树算法上篇

决策树算法上篇

时间:2024-09-13 12:24:55浏览次数:10  
标签:tree DecisionTreeClassifier 算法 构建 import model 决策树

决策树概述

决策树是属于有监督机器学习的一种,起源非常早,符合直觉并且非常直观,模仿人类做决策的过程,早期人工智能模型中有很多应用,现在更多的是使用基于决策树的一些集成学习的算法。

示例一:

上表根据历史数据,记录已有的用户是否可以偿还债务,以及相关的信息。通过该数据,构建的决策树如下

比如新来一个用户:无房产,单身,年收入55K,那么根据上面的决策树,可以预测他无法偿还债务(蓝色虚线路径)。从上面的决策树,还可以知道是否拥有房产可以很大的决定用户是否可以偿还债务,对借贷业务具有指导意义。

示例二:

女孩母亲要给她介绍对象,年龄是多少,母亲说24。长得帅吗?挺帅的。收入高吗?中等收入。是公务员吗?母亲说,是的。女孩:好,我去见见。

根据实力构建决策树:

问题:图片是二叉树吗?

决策树是标准的二叉树,每个节点只有两个分支~

  • 上面那棵树中,属性:绿色的节点(年龄、长相、收入、是否是公务员)

    • 属性叫做,data,数据,一般使用X表示

    • 跟属性对应,目标值(橘色节点),一般使用y表示

  • 构建这棵树时,先后顺序,每个人,标准不同,树结构不同

  • 计算机,构建树,标准一致的,构建出来的树,一致

决策树算法特点

相关文章

  • Python与Go语言中的哈希算法实现及对比分析
    哈希算法是一种将任意大小的数据输入转化为固定大小的输出(通常为一个散列值)的算法,在密码学、数据完整性验证以及数据索引等场景中广泛应用。本文将详细介绍Python和Go语言如何实现常见的哈希算法,包括MD5、SHA-1、SHA-256等。文章不仅提供代码示例,还会详细解释每个算法的特点、应用......
  • 复合Simpson求积算法-C++【可直接复制粘贴/欢迎评论点赞】
    背景复合Simpson求积算法是基于Simpson1/3法则的推广。Simpson1/3法则是一种数值积分方法,它通过将积分区间划分为多个小区间,并在每个小区间上采用一个二次多项式来逼近原函数,进而求得积分的近似值。复合Simpson求积算法则是将这种方法应用于整个积分区间,即将整个区间划分为......
  • C# 开源教程带你轻松掌握数据结构与算法
    前言在项目开发过程中,理解数据结构和算法如同掌握盖房子的秘诀。算法不仅能帮助我们编写高效、优质的代码,还能解决项目中遇到的各种难题。给大家推荐一个支持C#的开源免费、新手友好的数据结构与算法入门教程:Hello算法。项目介绍《HelloAlgo》是一本开源免费、新手友好的数......
  • 数据结构和算法之基本概念
    原文出处:数据结构和算法之基本概念  关注码农爱刷题,看更多技术文章!!其他文章:Java基础之数组    在计算机领域中,数据元素都不是孤立存在的,而是在它们之间存在着某种关系,这种数据元素相互之间的关系称为结构(Structure)。数据结构是相互之间存在一种或多种特定关系的数......
  • 降维算法 0基础小白也能懂(附代码)
    降维算法0基础小白也能懂(附代码)原文链接啥是降维算法在互联网大数据场景下,我们经常需要面对高维数据,在对这些数据做分析和可视化的时候,我们通常会面对「高维」这个障碍。在数据挖掘和建模的过程中,高维数据也同样带来大的计算量,占据更多的资源,而且许多变量之间可能存在相关性......
  • 算法备案的一个流程是什么?
    一、备案系统注册及登录    算法备案填报人员在初次进入互联网信息服务算法备案系统时,需点击首页右下方的“填报人员入口”进行注册登录系统。二、主体信息填报    算法备案填报人员点击主页的“主体信息”,进行主体信息填报。按照备案主体的实际情况准确......
  • 算法思想之概率算法
    概率算法概率算法的基本概念概率算法是一种算法,它利用概率论的原理来解决问题。这种算法通常用于解决复杂的问题,特别是在确定性算法难以求解或者效率较低的情况下。概率算法的一个重要特点是它不总是保证得到正确的结果,而是以一定的概率得到正确的结果。概率算法可以分为两类:蒙......
  • 操作系统实验——存储器的分配与回收算法实现
    1.实验内容:Exercise1:本实验是模拟操作系统的主存分配,运用可变分区的存储管理算法设计主存分配和回收程序,并不实际启动装入作业。Exercise2:采用最先适应法、最佳适应法、最坏适应法分配主存空间。Exercise3:当一个新作业要求装入主存时,必须查空闲区表,从中找出一个......
  • 0910-0911 shell编程与基础算法(leetCode )
    栈的定义栈(Stack),也称为堆栈,它是一种特殊的线性表,只允许在表的一端进行插入和删除操作。允许在表操作的一端称为栈顶(Top),另一端称为栈底(Bottom)。栈顶是动态变化的,它由一个称为栈顶指针(top)的变量指示。当表中没有元素时,称为空栈。栈的插入操作称为入栈或进栈,删除操作称为出栈或......
  • 从0开始的算法(数据结构和算法)基础(十)
    重新开始更新了,回学校处理事情半个月没有更新,大家勿怪啊。分治算法什么是分治的思想分治的字面意思是分而治之,将问题进行分化,从而进行处理,最后将结果进行合并。尽量的将问题分的不可以再分,分到和操作系统里面的原语是一样的,用较为多空间进行多线程的并行,节省时间运行。递......