【问题标题】:How to omit empty Model errors in tune.svm()?如何在 tune.svm() 中省略空模型错误?
【发布时间】:2015-06-07 07:26:47
【问题描述】:

我正在尝试使用 tune.svm 函数,因为我真的不知道哪些参数会产生一个好的模型(因为训练数据将由用户选择)我需要涵盖广泛的值.目前我有这种行为

tune(svm, value ~ . , data= data_l, ranges=list(cost = 10^(0:5), epsilon = 10^(-1:0)))

Parameter tuning of ‘svm’:
- sampling method: 10-fold cross validation 
- best parameters:
 cost epsilon
  100     0.1
- best performance: 277.5491

tune(svm, value ~ . , data= data_l, ranges=list(cost = 10^(0:5), epsilon = 10^(-1:1)))
Error in predict.svm(ret, xhold, decision.values = TRUE) : Model is empty!

(epsilon最大值的差异)

我知道 svm 不适用于 epsilon =10,但我对这个调整函数的直觉是,它可以处理不会生成模型的参数。 为什么不选择可以生成的模型? 有没有一种“简单”的方法可以忽略这种错误行为? (我尝试了 tryCatch(tune()) 和我发现的许多其他东西,但我想我必须深入挖掘听起来不再“容易”的 tune/svm/predict-codes)

【问题讨论】:

    标签: svm


    【解决方案1】:

    我对“模型为空!”的理解错误在于它表示将singular 训练矩阵输入到 SVM。请参阅 R 邮件列表中 Salvy 的 answerthis 相关帖子和 Oldrich Kruza 相关 message

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-28
      • 2020-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-19
      • 2019-09-06
      相关资源
      最近更新 更多