检查准确性是否显着提高


14

假设我有一种算法可以将事物分为两类。我可以在1000个测试对象上测量算法的准确性-假设80%的对象被正确分类。

假设我以某种方式修改了算法,以便对81%的事物进行正确分类。

统计资料能否告诉我有关我对该算法的改进是否具有统计意义的信息?在这种情况下,是否具有统计意义意义的概念?请向我指出一些可能有用的资源。

非常感谢。

Answers:


3

简而言之,是的。统计意义在这里很重要。您正在查看分类错误(或者,如此处所给,精度= 1-分类错误)。如果在不同的1000个样本上比较分类器,则可以仅使用二项式检验,如果相同,则需要使用McNemar检验的1000个样本。请注意,仅以这种方式测试分类错误是次优的,因为您假设分类错误与真实类无关,或者在潜在应用程序中真实类的比例相同。

这意味着您应该查看诸如真阳性率,假阳性率或AUC之类的量度。使用哪种度量以及如何对其进行测试,取决于您的分类器的输出。它可能只是一个类,也可能是一个连续的数字,给出了属于某个类的可能性。


太好了,谢谢。我实际上是在查看文本文档的情感分析-将它们分为“正”或“负”-发表了很多工作,人们以某种​​微妙的方式更改了特征选择,比如说准确度提高了1%-然后编写关于此的论文。我想知道在许多情况下,作者是否未能提供证据证明分类准确性在统计学上有显着提高。
2012年

McNemar的测试可以告诉您模型是否存在显着差异,但这并不总是意味着精度差异显着(不同模型可以具有相同的精度)。要直接检查准确性提高的显着性,您需要进行许多准确性估算,以绘制精度分布,从而估算出它们是否不同。这意味着需要多次训练模型。
drevicko

3

正如Erik所说,是的,您可以检查其统计显着性。但是,请仔细考虑一下您要检查的内容。我认为一个更有趣的问题可能是,考虑到观察到的数据差异为1%,所谓的“改进”算法比原始算法更好(或有意义地更好)的可能性是多少。用“统计显着性”来提问往往会导致相反的问题:鉴于两种算法是相同的,观察到至少有这么多的改善的机会少于5%吗?

对我来说,后一个问题是倒退的,但是它已经成为标准。您可以查看有关统计假设检验中争议的 Wikipedia 。随后,您可能会对贝叶斯推理感兴趣。如果您真的想进行贝叶斯数据分析,则可以查看Gelman等人的“贝叶斯数据分析”或解决此问题


2

Erik的答案应用于Michael的答案 :

选择性能度量时,您可以做Erik所指的同样的想法。

我发现通过它们回答的问题来引用不同的措施很有帮助(这里是我最熟悉的医学诊断语言-但也许您可以用文本代替患者,而用垃圾邮件代替疾病;-)):

  • 敏感性:鉴于患者确实患有该疾病,分类器实现该疾病的可能性有多大?

  • 特异性:给定患者确实没有疾病,分类器实现该疾病的可能性有多大?

  • 积极的预测价值:鉴于分类器声称患者患病,患者真正患病的可能性有多大?

  • 负预测价值:鉴于分类器声称患者未患病,患者真正没有疾病的可能性有多大?

如您所见,预测值是医生和患者真正感兴趣的。但是,几乎每个人都通过敏感性和特异性来表征其分类器。原因是预测值需要考虑到疾病的发生率,并且对于不同类型的患者可能会有很大的差异(数量级!)。

有关您的问题的更多主题:

我敢打赌,您在担心中是对的。

以两种Erik场景为例:

以下是独立的测试样本:

> binom.test (x = 810, n = 1000, p = 0.8)

    Exact binomial test

data:  810 and 1000 
number of successes = 810, number of trials = 1000, p-value = 0.4526
alternative hypothesis: true probability of success is not equal to 0.8 
95 percent confidence interval:
 0.7842863 0.8338735 
sample estimates:
probability of success 
                  0.81 

(请注意,此测试是双向的,假设即使结果相反,两个分类器也会被发布...)

最好的情况是:配对测试,新分类器适用于所有样本,旧分类器也适用,再加上10个样本:

> ## mc.nemar: best possible case
> oldclassif <- c (rep ("correct", 800), rep ("wrong", 200))
> newclassif <- c (rep ("correct", 810), rep ("wrong", 190))
> table (oldclassif, newclassif)
          newclassif
oldclassif correct wrong
   correct     800     0
   wrong        10   190
> mcnemar.test (oldclassif, newclassif)

    McNemar's Chi-squared test with continuity correction

data:  oldclassif and newclassif 
McNemar's chi-squared = 8.1, df = 1, p-value = 0.004427

(只要两个分类器以不同的方式预测了1000个样本中的不超过10个样本,则p值将保持在神奇的0.05以下)。

即使p值是错误问题的正确答案,也有迹象表明,这是一个比较狭小的地方。

但是,考虑到通常的科学实践,即测试了一个未知数量(未发布)的新功能,并且仅发布了效果更好的功能,该位置变得更加紧凑。然后,80%的分类器可能只是79%的分类器的后继产品...

如果您喜欢阅读德语,Beck-Bornhold和Dubben会写一些非常好的书。如果我没记错的话,Mit a Wahrscheinlichkeit grenzender Sicherheit对这些问题进行了很好的讨论。(我不知道是否有英文版,标题的字面意思是“确定性与可能性接壤”)


1

我强烈不鼓励使用任何不连续的不正确评分规则(如准确性,敏感性,特异性,按正确的比例分类的正确评分,当优化结果为假模型时),而应使用似然比检验或部分F检验作为新产品的附加值变量。

查看正确分类的问题的几种方法之一是,如果一个类别中的总比例为0.9,则通过忽略数据并将每个观察结果归类为该类别,您将在0.9的时间内正确。


2
是的,有时精度是一个糟糕的指标,有时却是一种了不起的方法。这取决于。但这似乎与问题的实质完全相切。问题是关于根据已知指标确定新算法是否更好,而不是首先选择指标。
Michael McGowan

我认为我们需要仔细地描述目标和效用函数,如果我们不想提供效用函数,则需要针对执行分类时有效假定的效用函数进行反求解。
弗兰克·哈雷尔

有那么多匿名匿名投票的理由吗?
chl 2012年

2
@chl我以为我解释说我对没有真正回答所提出的问题感到不满。
Michael McGowan

@MichaelMcGowan公平。
chl 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.