位置: 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基础类型)

  • 博客推广-怎么让你的博客出名(博客推广平台)

    博客推广-怎么让你的博客出名(博客推广平台)

  • vivo手机怎么改时间日期(vivo手机怎么改锁屏壁纸)

    vivo手机怎么改时间日期(vivo手机怎么改锁屏壁纸)

  • 在医院做了核酸检测手机上怎么查(在医院做了核酸在哪里看结果)

    在医院做了核酸检测手机上怎么查(在医院做了核酸在哪里看结果)

  • 微信仅聊天对方还能看到我的朋友圈吗(微信仅聊天对方还能看到我评论共同朋友的微信吗)

    微信仅聊天对方还能看到我的朋友圈吗(微信仅聊天对方还能看到我评论共同朋友的微信吗)

  • 微信号多久不登录会注销(微信号多久不登陆会被回收)

    微信号多久不登录会注销(微信号多久不登陆会被回收)

  • 手机碎屏裂纹处发黄(手机屏幕裂碎)

    手机碎屏裂纹处发黄(手机屏幕裂碎)

  • 充电不显示双引擎(充电不显示双引闪电)

    充电不显示双引擎(充电不显示双引闪电)

  • 为什么微信发现里面没有视频号(为什么微信发现里没有朋友圈)

    为什么微信发现里面没有视频号(为什么微信发现里没有朋友圈)

  • 小米CC9怎样删除相册里的照片和视频(小米cc9怎样删除应用)

    小米CC9怎样删除相册里的照片和视频(小米cc9怎样删除应用)

  • 教育云平台密码忘了怎么办(教育云平台密码重置)

    教育云平台密码忘了怎么办(教育云平台密码重置)

  • 苹果耳机3代怎么充电(苹果耳机3代怎么切换到下一首歌)

    苹果耳机3代怎么充电(苹果耳机3代怎么切换到下一首歌)

  • 闲鱼直播怎么删除回放(闲鱼直播如何删除)

    闲鱼直播怎么删除回放(闲鱼直播如何删除)

  • 抖音的评论为什么没有了(抖音的评论为什么有的看不到)

    抖音的评论为什么没有了(抖音的评论为什么有的看不到)

  • qq显示timi中是什么意思

    qq显示timi中是什么意思

  • 平板第一次充电充多久(华为平板第一次充电)

    平板第一次充电充多久(华为平板第一次充电)

  • 戴尔蓝屏进不去系统(戴尔蓝屏进不去桌面)

    戴尔蓝屏进不去系统(戴尔蓝屏进不去桌面)

  • qq删除了好友对方还能看到聊天记录吗(qq删掉好友之后对方还有我吗)

    qq删除了好友对方还能看到聊天记录吗(qq删掉好友之后对方还有我吗)

  • 电源适配器输出电流大小是否对电器有影响(电源适配器输出电压不稳定怎么修)

    电源适配器输出电流大小是否对电器有影响(电源适配器输出电压不稳定怎么修)

  • vivo手机手电筒不亮了怎么回事(vivo手机手电筒在哪里打开)

    vivo手机手电筒不亮了怎么回事(vivo手机手电筒在哪里打开)

  • qq音乐如何关闭dj音效(qq音乐如何关闭动态封面)

    qq音乐如何关闭dj音效(qq音乐如何关闭动态封面)

  • word怎么做简历表格(word怎么做简历视频)

    word怎么做简历表格(word怎么做简历视频)

  • 手机怎么看淘宝几颗星(手机怎么看淘宝订单回收站)

    手机怎么看淘宝几颗星(手机怎么看淘宝订单回收站)

  • 淘宝黑搜是什么做的(淘宝搜索黑话)

    淘宝黑搜是什么做的(淘宝搜索黑话)

  • 苹果x多重(苹果xr多重)

    苹果x多重(苹果xr多重)

  • 华为p30pro能隐藏虚拟按键吗(华为p30怎样隐藏)

    华为p30pro能隐藏虚拟按键吗(华为p30怎样隐藏)

  • cad鼠标的十字光标如何设置大小(cad鼠标的十字光标方框怎么调大小)

    cad鼠标的十字光标如何设置大小(cad鼠标的十字光标方框怎么调大小)

  • Mac怎么分区加密?Mac磁盘分区加密设置教程(mac怎么分区硬盘分区)

    Mac怎么分区加密?Mac磁盘分区加密设置教程(mac怎么分区硬盘分区)

  • 诺曼底入侵后的桑树港遗址,法国诺曼底Arromanches les Bains (© Javier Gil/Alamy)(诺曼底作战)

    诺曼底入侵后的桑树港遗址,法国诺曼底Arromanches les Bains (© Javier Gil/Alamy)(诺曼底作战)

  • as命令  汇编语言编译器(汇编语言a命令怎么用)

    as命令 汇编语言编译器(汇编语言a命令怎么用)

  • 调研费用怎么写
  • 税盘抵扣的会计分录
  • 临时人员劳务费有哪些?
  • 固定资产账面价值公式
  • 购买方已认证未抵扣,发票用退回吗
  • 增值税留抵退税政策2022
  • 企业公益性捐赠支出税前扣除标准
  • 有限合伙企业如何分红
  • 无形资产要入账吗
  • 工程安装公司是干嘛的
  • 计提附加税的会计分录
  • 俱乐部会员有什么用
  • 出售二手车税率3%减按2%征收的政策
  • 企业短期投资的计划和管理过程叫做资本预算
  • 农产品收购抵扣税额可以申请留抵退税
  • 如何生成公司开票信息二维码
  • 来料加工原材料计入什么科目
  • 考后审核是什么时候
  • mac复制文件路径后怎么粘贴
  • PHP:xml_set_processing_instruction_handler()的用法_XML解析器函数
  • wcu.exe是什么
  • 主营业务收入明细账图片
  • 招财树的养殖方法
  • linux怎么设置读写权限
  • win10开始菜单磁贴设置
  • pniopcac.exe是什么进程
  • 购买材料支出属于资本性支出吗
  • 孕妇不能吃哪些水果?
  • 提取的盈余公积是所有者权益吗
  • 保理业务的会计记账
  • 融资性售后回租是什么意思
  • js编写一个标准的单例模式类
  • 基于改进yolov4论文
  • 在php中使用mysql
  • mysql刷新数据
  • 微信小程序游戏手游排行榜
  • vue的ref怎么用
  • swoole扩展安装
  • 支付应付账款的文章怎么写的
  • 结转成本相关内容有哪些
  • 借预收账款贷其他应付款什么意思
  • 股东撤资要交什么税
  • 个人利息收入怎么计算个税
  • sql的where条件怎么写
  • 出售无形资产科目
  • 个税代扣代缴需要什么
  • 当月没生产有生产费用怎么结转
  • 财务费用为什么是向债权人支付的现金流量
  • 应交税费期初数调整
  • 电子发票已开出客户退款会计处理是怎样的?
  • 公司借款给个人400万合法吗
  • 中标违约保证金怎么退
  • 丢失的发票怎么查询
  • 工人的工资占企业的比例
  • 其他综合收益属于什么科目借贷方向
  • centos7.9命令
  • Windows Server 2008故障转移群集简介
  • mac无法开机怎么办
  • macos邮件
  • win8系统怎么搜索软件
  • Win7登录密码
  • win8无法打开ie
  • win7系统更新显卡驱动后黑屏无法启动
  • 3d网络游戏开发方法
  • javascript definitive guide
  • 一些实用性较高的东西
  • 怎样屏蔽锁屏广告
  • vue中使用类class
  • Unity3D实现Billboard效果
  • jquery on()
  • js基于什么
  • js中的类和对象
  • eclipse项目导入后有红叉
  • 税务系统运维应急预案范文
  • 国家税务总局通知公告
  • 因公出差伙食补助标准
  • 消费税的征收范围口诀
  • 企业代扣代缴个税
  • 广州哪里有餐饮费发票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设