相同的决策树,不同的结果

     2023-03-13     162

关键词:

【中文标题】相同的决策树,不同的结果【英文标题】:Same decision tree, different results 【发布时间】:2015-07-09 19:25:40 【问题描述】:

我在做一个机器学习应用,使用 Weka 进行测试,比较分类算法等。在 Weka 上进行测试操作后,我决定使用 J48 决策树。我解析了 Weka 生成的修剪树并将其实现为 C 中的 if-then 格式。但是,如果我测试了在我的程序中用作 Weka 输入的数据,结果与 Weka 的混淆矩阵不同。在 Weka 的测试选项中,我选择了“使用训练集”并使用了该决策树。这是混淆矩阵和我的结果:

=== 混淆矩阵 ===

    a    b    c    d    e    f    g   <-- classified as
  178    1    0    1   13    2    7 |    a = InstantMessaging
    4   29   11    1   14   46   25 |    b = Mail
    1    3 1051    4   32  921   54 |    c = Music
    4    0   14 9596   10    4   10 |    d = P2P
   10    1   46    6  607  263   59 |    e = SocialMedia
    4    1  230    2   44 7619   63 |    f = VideoStream
    5    0   57    1   57  167 1016 |    g = WebBrowsing

我的程序结果:

 "instantMessaging" => 210,
             "mail" => 33,
            "music" => 4933,
              "p2p" => 9886,
      "socialMedia" => 1220,
      "videoStream" => 4958,
      "webBrowsing" => 1054,
            "total" => 22294,

虽然一切都相同(决策树、数据、特征值、函数等),但为什么我会得到这些不同的结果? Weka 是否有可能产生/显示错误的决策树?

【问题讨论】:

你能分享你的代码吗? 【参考方案1】:

通过更深入的搜索,我找到了答案。问题是由创建功能的更改功能引起的。由于此功能已更改,因此功能集中的功能结果不等于 arff 文件。现在所有结果都是合乎逻辑的。

【讨论】:

决策树分析问题

...据集,但结果似乎是错误的,因为我已经使用Weka解决了相同的问题,但得到了不同的结果.我得到了一个包含在csv文件中的数据集,如下所示:age,menopause,tumor.size,inv.nodes,node.caps,deg.malig,bre 查看详情

决策树产生不同的输出

】决策树产生不同的输出【英文标题】:DecisionTreeproducesdifferentoutputs【发布时间】:2016-06-2817:20:39【问题描述】:我目前正在使用决策树(使用ScikitLearn)来预测某些值。我面临的问题是算法的输出不一致。这是决策树的属性吗... 查看详情

规则提取和决策树之间的区别

...规则提取和决策树之间虽然形式上不一样,感觉本质上是相同的,比如决策树完全可以转化为一条条规则,而规则提取也完全可以转化为决策树的形式。但是《数据挖掘导论》这本书确实把两个分成两个不同的内容来讲的,那么... 查看详情

10、决策树集成--随机森林

...一个样本,共抽取n次,这样会创建一个与原数据集大小相同的数据集,但有些数据会缺失(大约三分之一),有些会重复。二每棵树随机选择特征,选择部分特征而不是全部。输出在没有调节任何参数的情况下,随机森林的精... 查看详情

如何检查决策树和朴素贝叶斯的准确性?

...】:在具有不同症状的决策树和朴素贝叶斯算法中表现出相同的准确性我试图获得不同的准确度,但所有结果都保持不变这个项目是关于疾病预测的#decision_treefromsklearnimporttreefromsklearn.metricsi 查看详情

决策树

什么是决策树决策树是帮助探索所有决策备选方案及其可能结果的流程图或图表。树的每个“分支”表示做出决策时可用的可能选项之一。当一个备选结果导致必须做出的另一个决定时,分支可以扩展。在每个分支中添加与每个... 查看详情

决策树之c4.5算法学习

决策树<DecisionTree>是一种预測模型,它由决策节点,分支和叶节点三个部分组成。决策节点代表一个样本測试,通常代表待分类样本的某个属性,在该属性上的不同測试结果代表一个分支;分支表示某个决策节点的不同取... 查看详情

决策树

...达不同的叶节点。根节点包含了样本全集,叶节点对应了决策结果,从根节点到每个叶节点的路径对应了一个判定测试样本。对于一棵用于分类的决策树来说,关键就是若干个内部结点的确定。针对数据集$D=(fx_1,y_1),(fx_2,y_2 查看详情

决策树算法(代码片段)

...递归函数返回的三种情况,第一种情况是训练集的标签都相同,直接把结果标为该标签就可以了,。第二种情况是属性集为空和相同这两种情况。第三种情况属于训练集为空,训练集当中没有这种数据。下面我用一个例子来说明... 查看详情

《机器学习》西瓜书习题第4章(代码片段)

习题4.1  试证明对于不含冲突数据(即特征向量完全相同但标记不同)的训练集,必存在与训练集一致(即训练误差为0)的决策树.  既然每个标记不同的数据特征向量都不同,只要树的每一条(从根解点到一个叶节点算一条)枝干代... 查看详情

数据挖掘中决策树的探讨2

前言数据挖掘概念 又称为数据库中的知识发现。决策树概念决策树方法是利用信息论中的信息增益寻找数据库中具有最大信息量的属性字段,建立决策树的一个节点,再根据该属性字段的不同取值建立树的分支。每个分支子... 查看详情

决策树(decisiontree)的理解及优缺点

决策树的理解  决策树是一种机器学习的方法。决策树的生成算法有ID3,C4.5和CART等。决策树是一种树形结构,其中每个内部节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结果。... 查看详情

基于决策树的简单验证码识别(代码片段)

...选择第一个特征进行划分,使每个子表中该特征的值全部相同(比如第一个特征是男女,则可以划分出两个子表,男表和女表),然后再在每个子表中选择下一个特征按照同样的规则继续划分更小的子表(比如第二个特征是年龄,我... 查看详情

数模预测模型那些

...间的差异最小,选择影响结果的最佳变量的基本原理大致相同,你只是换了一个标准来做。04、随机森林由于决策树对超参数和简单假设的敏感性,决策树的结果相当有限。当你深入了解后,你会明白决策树很容易过度拟合,从... 查看详情

西瓜书第四章--决策树

...需划分(2)当前属性集为空,或所有样本在所有属性上取值相同,无法划分(3)当前结点包含的样本为空,不能划分对各种情形的处理方式:情形(2):属性集为空或所有样本属性上取值相同把当前结点标记为叶结点,其类别设定为该... 查看详情

西瓜书决策树笔记

...那一类2当前属性集为空,或是所有样本在属性上取值相同,无法划分, 查看详情

决策树、随机森林

...之前,自然想到树模型和线性模型,他们有什么区别呢?决策树与逻辑回归的分类区别也在于此。树形模型更加接近人的思维方式,可以产生可视化的分类规则,产生的模型具有可解释性。树模型拟合出来的函数其实是分区间的... 查看详情

机器学习-集成学习gbdt(代码片段)

...、总结前言​ GBDT(GradientBoostingDecisionTrees)是一种基于决策树的集成学习算法,它通过逐步地训练多个决策树模型来提高预测性能。具体来说,GBDT采用加法模型(additivemodel)的思想,每次训练一个新的决策树来拟合残差(预... 查看详情