在 R 中调整 svm 参数(线性 SVM 内核)
Posted
技术标签:
【中文标题】在 R 中调整 svm 参数(线性 SVM 内核)【英文标题】:tuning svm parameters in R (linear SVM kernel) 【发布时间】:2014-11-28 18:31:33 【问题描述】:tune.svm() 和 best.svm() 有什么区别。
当我们调整 svm 内核的参数时,我们不应该总是为我们的模型选择最佳值吗?
请原谅我是 R 和机器学习的新手。
我注意到在调整 svm 时没有线性内核选项。是否有可能使用线性内核调整我的 svm
【问题讨论】:
【参考方案1】:来自ETHZ:best.svm()
实际上只是tune.svm(...)$best.model
的包装。这
tune()
的帮助页面会告诉你更多关于可用选项的信息。
请务必查看tune()
帮助页面上的示例。 e1071::svm
提供线性、径向(默认)、sigmoid 和多项式内核,请参阅 help(svm)
。例如,要使用线性内核,函数调用必须包含参数kernel = 'linear'
:
data(iris)
obj <- tune.svm(Species~., data = iris,
cost = 2^(2:8),
kernel = "linear")
如果您是 R 新手并且想训练和交叉验证 SVM 模型,您还可以查看caret
包及其提供多个types of kernels 的train
函数。该网站上的整个“主题”部分也可能很有趣。
【讨论】:
我检查了,没有选择内核的参数。它给我抛出了一个错误 哪个函数抛出了错误?如上例所示,内核选择在tune.svm
中起作用。
认为这是一个错字。非常感谢它现在工作正常。以上是关于在 R 中调整 svm 参数(线性 SVM 内核)的主要内容,如果未能解决你的问题,请参考以下文章
译:支持向量机(SVM)及其参数调整的简单教程(Python和R)