【问题标题】:Getting overall accuracy of n different confusion matrices by averaging accuracy of all n confusion matrices通过平均所有 n 个混淆矩阵的准确度来获得 n 个不同混淆矩阵的整体准确度
【发布时间】:2020-02-25 00:14:58
【问题描述】:

我想测试一个 cforest 分类模型的准确性。我运行了 50 次,每次运行我得到不同的分类。我也有基本事实,即要测试的真实分类。

对于每个分类,我计算了一个混淆矩阵(总共 50 个混淆矩阵)。我现在可以计算从各个混淆矩阵中获得的所有 50 个准确度值的平均值,以获得模型的整体准确度吗?这会是测试模型(平均)准确性的准确方法吗?

【问题讨论】:

    标签: r confusion-matrix


    【解决方案1】:

    正如您所说,您在同一数据集上运行模型(森林分类模型)50 次,每次都得到不同的结果,这是可能的,因为模型每次运行时使用不同的 hyperparameter 值,顾名思义,它是一个树模型,所以树的切割会有所不同。

    有两种解决方案:

    第一种方法,正如你建议的取平均值,更具体地说,因为这是一个分类模型,你可以取 majority voteconfusion matrix,然后最终确定你的结果。这将为您提供相当准确的结果。

    第二种更合乎逻辑的方法是将模型中的 nfold cross validation 参数设置为 50 或类似的参数,使用 50 个不同的数据切割自动重新训练模型 50 次,然后这将为您提供一个模型和比 50 平均模型更好的性能。

    【讨论】:

    • 感谢您的回答!至于第一个解决方案,我对这个话题还很陌生,所以对我来说,我并不完全清楚我如何计算所有 50 个混淆矩阵的多数票(或者这到底是什么)?您能否详细说明一下?我理解的第二种方法。 - 明确一点,您认为简单地平均所有 50 个准确度值以对我的分类模型的平均性能做出假设不是一个好主意?
    猜你喜欢
    • 2016-08-13
    • 2013-12-02
    • 2019-01-11
    • 2012-11-12
    • 2021-05-17
    • 2014-08-12
    • 2010-10-09
    • 1970-01-01
    • 2020-08-29
    相关资源
    最近更新 更多