我手头有一个两类问题,160 个数据样本用线性支持向量机分类。获得的分类准确率(测试准确率)为 71%(这是 70 倍以上的平均值)。我现在想计算这个结果的 p 值,即这个结果纯粹是偶然的概率。但是,我还没有找到关于如何做到这一点的清晰(并且在我的水平上是可以理解的)描述,并且不确定我是否需要有关数据集的更多信息才能执行这样的测试。任何帮助表示赞赏
测试分类显着性
机器算法验证
分类
统计学意义
2022-03-22 03:22:11
1个回答
在分类器上执行显着性测试是非常不寻常的(在 160 个数据集上使用 70 倍也是非常不寻常的 - 最常见的是 5 或 10 倍。对于您使用的倍数,您可以选择离开- 单出程序)
问题是零假设。您可能想知道您的分类器是否明显优于随机分类器——随机分类器并没有真正从数据中学到任何东西。
让我们假设数据集是二元的(只有两个类,+ 和 -),其中 p+ 是数据集中正类的比例。让我们假设分类器以 50% 的概率随机回答 +。数据为+的机会是p+。最后,由于分类器输出与数据值本身无关,因此分类器在 a+ 预测上正确的概率为 0.5*p+。类似地,在 - 预测上正确的概率是 0.5*p-。
如果 p+ 是 0.5,那么分类器的正确率是 0.5。这就是 p+=0.5 情况下的零假设。
但是如果 p+=0.9,以 0.5 的概率猜测 + 的分类器仍然会有
0.5*0.9+0.5*0.1 = 0.5
正确的概率。但是一个“更聪明”的随机分类器,以 0.9 的概率进行 + 猜测,其准确度为
0.9*0.9+0.1*0.1 = 0.82
正确的概率,这是随机分类器的最大概率。
因此,具有 p+ 比例正数的 daaset 的原假设是
acc_null = p+^2 + p-^2
因此,您需要收集数据集的 p+ 和 p- 并计算 acc_null。
现在的问题是您的 71% 准确率是否与 acc_null 有显着差异。只有当您知道您的分类正确的次数并且您知道时,才能回答这个问题。在 160 个数据点中,分类器正确 0.71*160 = 133.6 = 134 次。
因此,您需要进行二项式检验来确定生成“正确”或 1 或具有概率 acc_null 的“成功”的随机过程将产生 160 次尝试的 134 次“正确”或“成功”的概率。这是您正在寻找的 p 值。