决策树CART算法、基尼系数的计算方法和含义[通俗易懂]

决策树CART算法、基尼系数的计算方法和含义[通俗易懂]决策树CART算法——基尼系数决策树的CART算法使用基尼系数来选择划分属性。一个数据集的纯度可以用基尼系数来度量Gini(D)=∑k=1∣y∣∑k′≠kpkpk′=1−∑k=1∣y∣pk2\begin{aligned}Gini(D)=\sum_{k=1}^{|y|}\sum_{k'\nek}p_kp_{k'}=1-\sum_{k=1}^{|y|}…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

决策树CART算法——基尼系数

决策树的CART算法使用基尼系数来选择划分属性。一个数据集的纯度可以用基尼系数来度量

G i n i ( D ) = ∑ k = 1 ∣ y ∣ ∑ k ′ ≠ k p k p k ′ = 1 − ∑ k = 1 ∣ y ∣ p k 2 \begin{aligned}Gini(D) = \sum_{k=1}^{|y|}\sum_{k'\ne k}p_kp_{k'} = 1-\sum_{k=1}^{|y|}p_k^2\end{aligned} Gini(D)=k=1yk̸=kpkpk=1k=1ypk2

直观来说,数据集的基尼系数反映了从数据集D中随机抽取两个样本,其类别不一样的概率。因此,基尼系数越小,数据集的纯度越高。

那么属性a的基尼系数为

G i n i _ i n d e x ( D , a ) = ∑ v = 1 V ∣ D v ∣ D G i n i ( D v ) \begin{aligned}Gini\_index(D,a) = \sum_{v=1}^{V}\frac{|D^v|}{D}Gini(D^v)\end{aligned} Gini_index(D,a)=v=1VDDvGini(Dv)

与数据集D中a属性的熵值计算类似,参考我的博文1我的博文2

于是,我们在候选属性集合A中,选择那个使得划分后的基尼指数值最小的属性作为最优划分属性

a ∗ = a r g m i n a ∈ A G i n i _ i n d e x ( D , a ) a_* = argmin_{a\in A}Gini\_index(D,a) a=argminaAGini_index(D,a)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/182588.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • ansys随机振动分析_workbench扫频振动仿真

    ansys随机振动分析_workbench扫频振动仿真随机振动(PSD)分析步骤PSD分析包括如下六个步骤:1.建造模型;2.求得模态解;3.扩展模态;4.获得谱解;5.合并模态;6.观察结果。以上六步中,前两步跟单点响应谱分析一样,后四步将在下面作详细讲解。Ansys/Professional产品中不能进展随机振动分析。如果选用GUI交互方法进展分析,模态分析选择对话框〔MODOPT命令〕中包含有是否进展模态扩展选项〔MXPAND命令〕,将其设置为YES就可以进展下面的:扩展模态。这样,第二步〔求得模态解〕和第三步〔扩展模态〕就合并到一个步

    2022年10月10日
  • laravel 开发api(里的繁体字)

    本例子使用Laravel5.2版本这里记录的是较为灵活的方案,不考虑使用swaggervel,具体使用参考一下步骤:安装依赖swagger-phpcomposer require zircote/swagger-php创建SwaggerControllerphp artisan make:controller SwaggerController在Swa

  • hook技术截取服务器信息,Windows Hook技术

    hook技术截取服务器信息,Windows Hook技术0x01简介有人称它为“钩子”,有人称它为“挂钩”技术。谈到钩子,很容易让人联想到在钓东西,比如鱼钩就用于钓鱼。编程技术的钩子也是在等待捕获系统中的某个消息或者动作。钩子的应用范围非常广泛,比如输入监控、API拦截、消息捕获、改变程序执行流程等方面。杀毒软件会用Hook技术钩住一些API函数,比如钩住注册表读写函数,从而防止病毒对注册表进行写入;病毒使用Hook技术有针对性的捕获键盘的输入,从而…

  • matlab矩阵除法「建议收藏」

    matlab矩阵除法「建议收藏」matlab中除法有四种,作除:\ .右除:/ ./对于标量的运算/与./用法一致,a/b或a./b表示a除以b\与.\用法一致,a\b或a.\b表示b除以a对于矩阵运算/:a/b表示矩阵a乘矩阵b的逆矩阵,与a*inv(b)一致\:a\b表示矩阵a的逆矩阵乘矩阵b,与inv(a)*b一致./:a./b表示矩阵a中的每个元素除矩阵b中的相对应的元素.\:a.\b表示矩阵b中的每个元素除矩阵a中的相对应的元素…

  • python判断文件后缀_Python 判断文件后缀是否被篡改

    python判断文件后缀_Python 判断文件后缀是否被篡改自己用Python写了个对文件后缀判断的脚本,目前支持的文件类型还不是很多,还有待完善。支持MicrosoftOffice(.pptx.docx.xlsx)Pyhton版本为3.6#!usr/bin/envpython#-*-coding:UTF-8-*-#@Time:2018/7/1015:16#@Author:gumguiimportstructimportos,sy…

  • 解决win10状态栏的搜索框无法搜索本地应用或无反应

    解决win10状态栏的搜索框无法搜索本地应用或无反应今天突然出现的问题,在状态栏左下角的搜索框搜索OneNote没有任何反应,对,就是这个地方。最后在另一篇博客上找到了答案,那篇博客也是在知乎找到的答案,虽然是用被人的方法解决了问题,但我还是打算记下来;1、首先,打开管理员命令窗口,win+x,可以看到弹出一个窗口,打开windowsPowershell(管理员)如图2,输入下面这行英文startpowershell然…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号