我有一个多类问题,我正在为其构建分类器。我有 N 个我想预测的总数据点。如果我改为在 n < N 个数据点上进行预测并获得准确度分数,有没有办法我可以说(有一定程度的信心)我认为同一模型在剩余数据点上的准确度得分是多少?
有人可以给我指出一篇讨论这个的文章,或者建议一个研究公式吗?
我有一个多类问题,我正在为其构建分类器。我有 N 个我想预测的总数据点。如果我改为在 n < N 个数据点上进行预测并获得准确度分数,有没有办法我可以说(有一定程度的信心)我认为同一模型在剩余数据点上的准确度得分是多少?
有人可以给我指出一篇讨论这个的文章,或者建议一个研究公式吗?
通常在处理分类问题时,会尝试拥有 3 个数据子集:
为了使其正常工作,重要的是所有子集都代表可用数据。例如,每个类别的比例在子集中大致相同。
鉴于这种广泛使用的过程,我们可以看到大多数算法都在一小部分可用数据上进行了调整和测试。只要使用的测试集以类似于训练集和验证集的方式进行平衡,并且在模型的训练/调整过程中根本没有使用它,那么性能分数就没有理由不能泛化以及测试集中使用的 N > n 个样本。
使用交叉验证。在这里,您将数据拆分为 K 个子集,并每次使用不同的数据子集对所有数据进行 K 次训练和测试以进行验证。与您在训练、验证和测试最终模型时使用的标准 80/10/10 拆分相比,平均交叉验证分数通常可以更好地估计模型在看不见的数据上的性能。
许多机器学习库,例如 Python 的 scikit-learn,都有一个用于此目的的模块。