我在许多文章和书籍中观察到,模型选择是在模型调整之前完成的。
模型选择通常使用某种形式的交叉验证(例如 k 折)来完成,其中计算多个模型的指标并选择最好的一个。
然后调整所选模型以获得最佳超参数。
但我的问题是,未选择的模型在使用正确的超参数时可能会表现得更好。
那么为什么我们不调整所有感兴趣的模型以获得正确的超参数,然后通过交叉验证选择最佳模型。
最佳答案
这取决于每篇文章/书籍中遵循的实验设置,但简而言之,在同一实验中执行模型选择+超参数优化的正确方法是使用嵌套交叉验证:
- 评估模型性能的外循环(像往常一样)
- 内部循环(再次分割由外部循环的 N-1 个训练分区形成的数据集),在每个折叠中执行超参数优化。
您可以查看this other question了解有关此验证方案的更多信息。
但请注意,在某些情况下,只对所有模型进行一般比较,然后仅优化表现最好的模型是可以接受的。但是,经过严格的研究,这远非理想。
关于machine-learning - 为什么模型选择之前不进行模型调整?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49211997/