【问题标题】:Meaning of correctly classified instances weka正确分类的实例 weka 的含义
【发布时间】:2012-08-28 10:48:23
【问题描述】:

我最近开始使用 weka,并尝试使用朴素贝叶斯将推文分类为正面或负面。所以我有一个训练集,其中包含我为其标记的推文和一个测试集,其中包含所有标签为“正面”的推文。当我运行朴素贝叶斯时,我得到以下结果:

正确分类的实例:69 92% 错误分类实例:6 8%

然后,如果我将测试集中推文的标签更改为“否定”并再次运行朴素贝叶斯,则结果相反:

正确分类的实例:6 8% 错误分类实例:69 92%

我认为正确分类的实例显示了朴素贝叶斯的准确性,并且无论测试集中推文的标签如何,它都应该是相同的。我的数据有问题还是我没有正确理解正确分类的实例的含义?

非常感谢您的宝贵时间,

南蒂亚

【问题讨论】:

    标签: weka


    【解决方案1】:

    根据您的训练集,您的实例中有 69.92% 被归类为阳性。如果测试集的标签(即正确答案)表明它们都是肯定的,那么这使得 69.92% 的正确率。如果测试集(因此分类)相同,但您切换正确答案,那么正确的百分比当然也会相反。

    请记住,为了评估分类器,您需要测试集的真实标签。否则,您无法将分类器的答案与真实答案进行比较。在我看来,您可能误解了这一点。如果这是您想要的,您可以获得未见数据的标签,但在这种情况下,您无法评估分类器的准确性。

    【讨论】:

      【解决方案2】:

      测试集上的标签应该是实际正确的分类。性能是通过要求分类器对测试集中每个实例的分类给出其最佳猜测来计算的。然后将预测的分类与实际分类进行比较以确定准确性。因此,如果你翻转你给它的“正确”值,结果也会被翻转。

      【讨论】:

      • 非常感谢@Junnux & Antimony 的快速解答!测试集是这样创建的:我给我的程序一个搜索词,twitter api 返回包含这个词的推文,这些推文组成我的测试集,然后朴素贝叶斯运行。所以我无法为测试集添加正确的标签。如果我理解你,在这种情况下,我将能够获得分类器对测试集标签的答案,但我将无法评估准确性。我做对了吗?
      • 你是对的,假设你至少有训练集的标签。如果你连这个都没有,那么你就走错了路。朴素贝叶斯是一种监督学习算法。如果您没有标签,那么您正在寻找的是无监督学习,它需要一组不同的算法,并且通常会产生更糟糕的结果。我建议要么找到一种方法来标记您的数据或谷歌进行无监督学习。
      • 是的,我的目的是监督学习,所以我的训练集有标签。再次非常感谢!你真的帮我解决了一些问题。 :)
      • @user1644316:尝试在训练和测试集中拆分您的标记数据,或使用交叉验证,以了解您的分类器的效果如何。之后,您可以在整个标记数据集上进行训练,以对新的未见数据进行分类,并假设准确度相似。锑:+1。
      猜你喜欢
      • 2019-12-08
      • 2015-07-02
      • 2017-12-28
      • 2018-05-21
      • 2012-03-25
      • 2013-05-13
      • 2017-04-18
      • 2012-06-30
      • 2015-02-01
      相关资源
      最近更新 更多