gpt4 book ai didi

r - 线搜索在训练 ksvm prob.model 时失败

转载 作者:行者123 更新时间:2023-12-03 22:45:18 25 4
gpt4 key购买 nike

关注 Invalid probability model for large support vector machines using ksvm in R :

我正在使用 R 中 kernlab 包中的 ksvm 训练 SVM。我想使用概率模型,但在 sigmoid 拟合期间,我收到以下错误消息:

line search fails -1.833726 0.5772808 5.844462e-05 5.839508e-05 -1.795008e-08 
-1.794263e-08 -2.096847e-12

发生这种情况时,结果值 prob.model(m)是所有概率的向量,而不是拟合这些概率的 sigmoid 函数的预期参数。导致此错误的原因是什么,我该如何预防?搜索错误消息没有结果。

可重现的例子:
load(url('http://roelandvanbeek.nl/files/df.rdata'))
ksvm(label~value,df[1:1000],C=10,prob.model=TRUE)->m
prob.model(m) # works as it should, prints a list containing one named list

# the below, non-working problem, unfortunately takes an hour due to the large
# sample size
ksvm(label~value,df,C=10,prob.model=TRUE)->m # line search fails
prob.model(m) # just a vector of values

最佳答案

看源码,this is the line that throws that error .

它在方法上 .probPlatt使用牛顿法优化函数,在本例中为 Platt 缩放。如果您检查 line 3007尽管您会看到一些与该方法有关的参数。

其中一个参数是 minstep基本上是方法应该不断尝试优化函数的最小数字步骤。你看,这正是第 3090 行错误的条件:if (stepsize < minstep) .因此,基本上,即使达到最小步长,该函数也不会收敛。

您可以尝试更改 minstep降低值以规避它。 Alexandros 甚至评论说这些参数可能应该在界面中。

关于r - 线搜索在训练 ksvm prob.model 时失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15895897/

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