位置: IT常识 - 正文

【人工智能】机器学习中的决策树(人工智能机器人)

编辑:rootadmin
【人工智能】机器学习中的决策树

目录

特征选择

特征选择

树的生成

树的剪枝

特征如何选择

计算信息增益

样本集的基尼值

决策树生成

三种算法对比

决策树剪枝

预剪枝(pre-pruning)

后剪枝(post-pruning)

案例—红酒分类

案例—带噪正弦曲线拟合


前言

推荐整理分享【人工智能】机器学习中的决策树(人工智能机器人),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:人工智能机器,人工智能机器人图片,人工智能机器人视频,人工智能机器人视频,人工智能机器人多少钱一个,人工智能机器人,人工智能机器,人工智能机械臂,内容如对您有帮助,希望把文章链接给更多的朋友!

本次实验是由python语言为基础学习网站分享给大家

点击右边链接进行学习牛客网学习python跳转链接

特征选择

决策树学习通常包括三个步骤(过程)或称三要素:特征选择、树的生成(构造)、树的剪枝。

特征选择

选择最优的划分特征与条件。父结点(根结点和中间结点)把待分数据集按照选定的特征和测试条件切分成若干数据子集分别进入若干子结点。从根结点到每个叶结点对应一个判定测试序列,如何选择每次测试采用的特征呢,优先测试哪个特征呢?

树的生成

按照特征选择标准,采用递归方式、按照一定策略生成决策树。

树的剪枝

决策树容易发生过拟合,需要采用的一定的剪枝策略来防止过拟合。

特征如何选择

一棵决策树包括一个根结点、若干内部结点、若干叶结点;叶结点对应于决策结果,其它每个结点则对应于一个属性测试;每个父结点所包含的样本集根据属性测试的结果,被划分到子结点中;根结点包含样本全集,从根结点到每个叶结点对应一个判定测试序列。 决策树学习的关键之一是如何选择最优划分特征,对于连续型特征还要找到最优切分点。随着划分过程不断进行,希望决策树的分支结点所包含的样本尽可能属于同一类别,即结点的“纯度”(purity)越来越高。 信息熵(information entropy)和基尼指数(Gini index)是度量样本集合不纯度(impurity)的常用指标。

假设当前样本集合D中第k类样本所占比例为  ( k=1,2,3,......,K ),则D 的信息熵定义为

 

上述定义中的概率由数据估计得到,故称为样本集的经验熵。样本的类别分布越均匀,熵越大,样本集越混杂,纯度越低,不纯度越高;当样本属于每个类别的比例相同时,熵值最大,当所有样本都属于同一类别时,熵值为0。

 

 使用特征A对于对样本集D进行划分所获得的信息增益定义为

计算信息增益

原始样本集共8个样本,标签“是”有3个,标签“否”有5个

 原始样本集8个样本,按照特征“拥有房产” ,可划分成2个子集

列表如下:

 

【人工智能】机器学习中的决策树(人工智能机器人)

使用房产特征划分原始样本集后所得信息增益=0.9544-0.6068= 0.3476

决策树学习算法ID3(Iterative Dichotomizer 3)就是按信息增益最大准则来选取划分特征。 信息增益最大准则倾向于选择具有大量不同取值的特征,从而产生许多小而纯的子集。例如,若把客户ID作为划分特征,切分后的条件信息熵为零,能获得最大信息增益,但是这样做毫无意义。

但信息增益比最大准则对可取值数目较少的特征有所偏好。因此,C4.5算法先从候选划分属性中找出信息增益高于平均水平的特征,再从中选择增益比最高的特征作为划分特征。

样本集的基尼值

 取V个离散值的特征A对于数据集D的基尼指数

基尼指数越大,样本的不确定性也就越大。决策树学习算法CART(Classification And Regression Tree)根据基尼指数最小来选择最优划分特征

决策树生成三种算法对比

ID3决策树:使用信息增益作为特征选择标准 C4.5决策树在ID3决策树基础上有三点改进,其它部分相同。 (1)ID3容易偏向于优先选取取值种类较多的特征。为此,C4.5先从候选划分特征中找出信息增益高于平均水平的特征,再从中选择信息增益比最高的特征作为划分特征。 (2)ID3不能处理连续型特征。为此,C4.5对连续型特征的取值排序后按区间和阀值进行离散化。 (3)ID3决策树容易过拟合。决策树分叉过细会导致最后生成的决策树模型对训练集数据拟合特别好,但是对新数据的预测效果较差,即模型泛化能力不好。为此,C4.5引入了正则化系数进行初步的剪枝来缓解过拟合问题。

CART(Classification And Regression Tree分类回归树) (1)ID3和C4.5计算熵值时需要计算对数,CART采用基尼系数,简化了计算。 (2)ID3和C4.5采用多叉树进行特征划分,即特征有几种类别取值就划分几棵子树,并且该特征在后续算法执行过程中被排除在候选特征之外,这种划分方式过于粗糙,特征信息的利用率较低;C4.5对连续值采用区间离散化,或多或少会损失一部分信息。CART采用二叉树对每个特征进行划分       例如某离散特征取值{1,2,3},则分别对{1}和{2,3},{2}和{1,3},{3}和{1,2}三种情况计算,从中选择基尼系数最小的组合进行二切分,生成两个二叉子树。

        对于连续特征,对其n个取值排序后,依次取每两个相邻值的中间值作为划分点,比较这n-1次划分对应的基尼系数,选最小基尼系数对应的划分点生成二叉子树。因此,每次进行特征选择的最小单位是某个特征下的某个最优二切分点,使得CART可以对同一特征进行多次利用。 (3)ID3和C4.5只能用于分类任务。CART则可用于分类和回归。CART用于回归预测时,采用平方误差最小的划分为最优划分     给定数据集D,m个样本,每个样本n个特征。对于每个特征,计算每种二叉划分对应的平方误差,取最小者对应的划分点;在所有特征上,选择最小者,从而得到最佳划分特征及其划分点。

(4)CART预测输出     分类预测:每个叶子结点所含全部样本中标签类别占多数者作为它对应的标签类别预测输出。     回归预测:每个叶子结点所含全部样本对应标签值的平均值或中位数作为它对应的标签值预测输出。

决策树剪枝

如果不限制树的规模,决策树将会一直分裂下去,直到每个叶子结点只包含一个样本为止。在理想情况下,这样做能够把训练集中的所有样本完全分开,因为每个样本各自占据一个叶子结点。这样的决策树出现完全过拟合,在测试集上的效果会很差。 剪枝策略对决策树影响巨大,是优化决策树算法的核心。有两种常见方法

预剪枝(pre-pruning)

在生成决策树的过程中提前停止树的增长。

预剪枝思想:在树中结点进行分裂之前,先计算当前划分是否能够带来模型泛化能力的提升,如果不能,则不再继续生长。此时结点中可能包括不同类别的样本,按照多数投票的原则判断该结点所属类别。停止决策树生长的常用判断条件有:树达到一定深度;当前结点的样本数量小于某个阀值;计算每次分裂对测试集的准确率提升,当小于某个阀值时,不再继续扩展。

后剪枝(post-pruning)

在已生成的过拟合决策树上进行剪枝,得到简化版的剪枝决策树。

后剪枝思想:生成一颗完全生长的决策树后,从最底层向上计算是否剪枝。剪枝过程就是把子树删除,用一个叶结点替代,该结点的类别同样按多数投票原则确定。若剪枝后在测试集上准确率有所提升,则进行剪枝。

案例—红酒分类

 

 

 

 

调参没有固定方法,一切都是看数据本身。 如果数据集非常巨大,你已经预测到无论如何都是要剪枝的,那提前设定这些参数来控制树的复杂性和大小会比较好。

案例—带噪正弦曲线拟合

Sklearn回归树衡量最佳结点和分枝的指标有 (1)criterion= “ mse ” ,使用均方误差MSE,父节点和子节点之间的均方误差的差额被用来作为划分特征选择的标准,这种方法通过使用叶子节点的均值来最小化L2损失。(不填该参数,则默认mse) (2)criterion= " friedman_mse " ,使用费尔德曼均方误差(针对潜在分枝中的问题改进后的均方误差) (3)criterion= " mae "使用平均绝对误差MAE,使用叶节点的中值来最小化L1损失。

 

 

跟博主一起来学习吧点击跳转

本文链接地址:https://www.jiuchutong.com/zhishi/300739.html 转载请保留说明!

上一篇:OpenAI发布ChatGPT:程序员瞬间不淡定了(openai发布企业版)

下一篇:JavaScript基础总结---重点(javascript基础类型)

  • 所得税损益类科目包括
  • 工人工伤误工费赔偿多少一天
  • 其他收益是什么类
  • 职工教育经费8%怎么算
  • 租赁的土地被征迁
  • 付城镇土地使用税是多少
  • 成本暂估跨年度要怎么处理?
  • 调财务报表怎样调整
  • 预收账款多了好还是少了好
  • 利润表的企业所得税怎么查询
  • 福利费用计入
  • 第三方投资入股
  • 普通增值税发票查询结果不一致是什么原因?
  • 出差餐费报销怎么报销
  • 资产评估溢价部分如何处理?
  • 不用开票的收入有哪些
  • 建设单位管理费费率
  • 怎么让自己的电脑有网吧认证
  • linux系统怎么安装网卡驱动
  • win10 21h1正式版怎么样
  • 屏幕颜色怎么变
  • Linux Kernel 4.5在3月15日发布最终版
  • 跨年度发票的发票要报销应该怎么办
  • 入门易学
  • 城市维护建设税计入什么会计科目
  • 前端跨域的方法
  • php通用分页类
  • 库存现金要设置明细科目吗
  • 三维重建的主要步骤
  • axure rp 9视频教程
  • 爱上源码,重学Spring IoC深入
  • 个人独资为什么不能叫公司
  • 行政事业单位固定资产划拨账务处理
  • mongodb介绍
  • 企业汇兑收益所得税税率
  • 预收的贷方余额表示什么
  • 清算汇缴报表填写范本
  • 自然人代开经营所得汇算清缴怎么做
  • 所有者权益包括哪些会计科目
  • 基金管理公司是什么意思
  • 企业的预付账款属于金融资产吗
  • 企业弥补亏损的会计分录
  • 公司注销前怎么平账需要提前多久
  • 个税年终奖计算方法2022税率表
  • 财务管理考试时间不够怎么办
  • 外经证预缴的附加税税率
  • 捐赠支出税前扣除标准
  • 代发工资入哪个科目
  • 非税收入一般缴款书是什么意思
  • 保险返点返20怎么算
  • 增值税涉及的税目有哪些
  • 计提工资的核算流程
  • 年底本年利润结转错了怎么调
  • 购买材料发生商损怎么算
  • 自产自销的免税票
  • 长期股权投资成本法会计处理
  • 股东预分配利润后如何返还
  • 中介费可以要求退吗
  • 房屋租赁公司装修费会计分录
  • mysql详细介绍
  • sql server 批量删除
  • win10预览版和正式版区别
  • fedora linux安装教程
  • win传统桌面
  • mac如何中文输入法
  • freelibrary 程序崩溃
  • 如何win10
  • iptables防火墙规则
  • three.js加载glb文件
  • android kotlin开发
  • Android游戏开发教程
  • ftp命令操作
  • Node.js中的construct
  • 下载python教程
  • 浙江国税电子税务局
  • 手机银行如何查询明细
  • 教育培训行业的发展前景
  • 贵州税务机关
  • 如何安装金税三期app
  • 国税系统公务员调动
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设