考试成绩在实际应用方面提供了什么?

数据挖掘 机器学习 数据挖掘
2022-02-13 06:12:55

最初,我想根据它们显示的应用程序模式为特定环境中的某些程序代码创建一个分类工具。我有 5 种不同的模式我想寻找,最终我的目标是提出某种关于这个编程环境的统计数据,以某种方式代表趋势(比如%40 的程序用于投票目的有一个增加上个月的交易程序, ETC)。现在,经过数月的数据标记和训练模型,我终于获得了 5 个不同的模型,每个模型都有不同的模式,在不同的指标上有不同的分数(我对每个类都有相当不平衡的训练数据,所以只是为了让事情保持一致,总是试图同时查看不同的指标,如 f1、mcc、roc auc 进行比较)。

现在,我的问题是,当我将模型应用于我无法标记或查看的数据时,我的测试分数究竟能告诉我什么关于我的真实生活数据?是否可以使用我训练过的模型得出上述不同的统计数据,或者我是否仅限于我的训练和测试数据?是否至少可以在单个程序上提及某种概率,例如预计这是一个具有 %X 概率的投票程序

如果您能帮我弄清楚如何从最终应用的角度解释测试结果,我将不胜感激。

1个回答

评估是任何严肃的 ML 项目的关键部分,但在评估选择方面,没有完美的答案。一般来说,评估一个系统是为了知道它的性能如何(即它的预测有多可靠),通常是为了知道在生产中使用时预期的质量水平(但不仅仅是)。然而,评估结果仅在一定程度上有用:

  • 应选择评估方法/措施,使其真正代表目标任务的“质量”。一般来说,这是不完美的,因为没有评估分数可以完全代表特定任务的多样性(这是假设好的评估选择)
  • 测试数据应该代表生产数据,实际上它很少来自同一分布。
  • 几乎总是有一个机会因素试图使用交叉验证或其他方法来消除,但这也是不完美的。

除了这些不可避免的简化之外,评估分数可以准确地解释它是什么。例如,X 类的精度得分为 80%,这意味着在 80% 的案例,人们应该期望一个实例预测 X 确实属于 X 类。预测特定预测的特定概率需要使用概率模型或设计预测置信度分数/概率的特定模型......但在这两种情况下,模型仍然可能错误地预测其预测的概率!