gpt4 book ai didi

machine-learning - libsvm 收缩启发法

转载 作者:行者123 更新时间:2023-11-30 08:22:17 26 4
gpt4 key购买 nike

我在 C-SVC 模式下使用 libsvm,具有 2 次多项式内核,并且需要训练多个 SVM。在训练期间,我训练的一些 SVM 会收到以下一个或什至两个警告:

WARNING: using -h 0 may be faster
*
WARNING: reaching max number of iterations
optimization finished, #iter = 10000000

我找到了 h 参数的描述:

-h shrinking : whether to use the shrinking heuristics, 0 or 1 (default 1)

我尝试阅读 libsvm 文档中的解释,但这对我来说有点太高了。任何人都可以提供外行的解释,也许一些建议(例如设置此选项)将是有益的,因为......?此外,了解为我训练的所有 SVM 设置此参数是否会对那些未明确发出此警告的 SVM 的准确性产生负面影响也会很有帮助。

我不知道如何看待另一个警告。

仅提供更多详细信息:我的训练集有 10 个属性(特征),它们由 5000 个向量组成。

<小时/>

更新:

如果其他人得到“达到最大迭代次数”,这似乎是由数字稳定性问题引起的。此外,这会导致训练时间非常慢。多项式核确实受益于使用交叉验证技术来确定正则化的最佳值(C 参数),并且在多项式核的情况下,对我来说,它有助于使其保持小于 8。此外,如果核是非齐次的\sum(\gamma x_i s_i + coef0)^d (抱歉,SO 不支持 LaTeX),其中 coef0 != 0,则可以使用 gamma 和 C 的网格搜索技术来实现交叉验证,因为,在此在这种情况下,gamma 的默认值 (1/number_of_features) 可能不是最佳选择。不过,根据我的实验,您可能不希望 gamma 太大,因为它会导致数字问题(我正在尝试将其最大值设置为 8)。

为了进一步了解 gamma 和 C 的可能值,应该尝试查看 grid.py。

最佳答案

收缩启发式是为了加速优化。正如常见问题解答中所述,它们有时有帮助,有时则没有帮助。我相信这是运行时的问题,而不是收敛的问题。

不过,优化达到最大迭代次数这一事实很有趣。您可能想要调整容差(成本参数),或者查看导致此问题的各个问题。数据集大吗?

关于machine-learning - libsvm 收缩启发法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12500261/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com