我将可用的数据库分为 70% 的训练、15% 的验证和 15% 的测试。我已经对模型进行了训练,得到了以下结果:训练准确率 100%,验证准确率 97.61%,测试准确率 96.74%
在另一个训练模型的试验中,我得到了以下结果:训练准确率 100%,验证准确率 97.61%,测试准确率 98.91%
尽管两种情况下的训练和验证准确率相同,但测试准确率不同。
我应该选择哪种模型,第一种测试准确度低于验证的情况?还是测试高于验证的第二种情况?
我将可用的数据库分为 70% 的训练、15% 的验证和 15% 的测试。我已经对模型进行了训练,得到了以下结果:训练准确率 100%,验证准确率 97.61%,测试准确率 96.74%
在另一个训练模型的试验中,我得到了以下结果:训练准确率 100%,验证准确率 97.61%,测试准确率 98.91%
尽管两种情况下的训练和验证准确率相同,但测试准确率不同。
我应该选择哪种模型,第一种测试准确度低于验证的情况?还是测试高于验证的第二种情况?
这些试验中的每一个都是一个点估计。每次运行您所描述的过程时,模型都会在略有不同的基础数据集版本上进行训练、验证和测试,并将为您提供不同的性能数据。
但是,如果您将所有这些性能数据收集在一起,您将形成一个点估计“总体”,然后您可以使用它来推断给定模型的最佳情况/最差情况性能数据。
这种在略有不同的训练和验证数据集(当然基于百分比分割)下的性能采样正是k 折验证所做的。
在此过程结束时,您将获得能测量值,作为“数字总体”,它们将具有均值和标准差,可用于更好地衡量模型的性能。(见这里一个非常简单的例子)。
然而,仅仅使用 k 折验证并不能解决数据集质量有限或质量差的问题。
有关更多详细信息,请参阅本书的第 5 章。
希望这可以帮助。
基于 A_A 关于点估计的内容——如果您有一个固定大小的数据库,并且您想真正确定哪种候选训练方法效果最好,您可能应该进行多次试验,每次试验都有自己的数据库随机拆分。
然后看看哪种方法最常成功,成功率是多少。