我现在使用 libsvm 来实现具有高斯核的支持向量机分类器。在 its website ,它提供了一个python脚本grid.py来选择最好的C和gamma。
我只是想知道训练时间和过拟合/欠拟合如何随 gamma 和 C 变化?
以下说法是否正确:
假设C从0变为+无穷大,训练出来的模型会从欠拟合变成过拟合,训练时间增加?
假设gamma从几乎0变化到+无穷大,训练后的模型会从欠拟合变成过拟合,并且训练时间增加?
在grid.py中,默认的搜索顺序是C从小到大,但gamma从小到小。是为了训练时间从小到大,训练模型从欠拟合到过拟合吗?那么我们也许可以节省选择 C 和 gamma 值的时间?
感谢和问候!
最佳答案
好问题,但我没有确定的答案,因为我自己也想知道。但回答这个问题:
So we can perhaps save time in selecting the values of C and gamma?
...我发现,使用 libsvm,C 和 gamma 肯定有一个高度依赖于问题的“正确”值。因此,无论搜索 gamma 的顺序如何,都必须测试 gamma 的许多候选值。最终,我不知道有什么捷径可以解决这个耗时的问题(取决于您的问题)但必要的参数搜索。
关于machine-learning - libsvm 中 gamma 和 C 的训练时间和过度拟合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2275761/