gpt4 book ai didi

r - 从 kernlab 调整 ksvm

转载 作者:行者123 更新时间:2023-12-01 21:57:46 27 4
gpt4 key购买 nike

我想使用 R 中的 SVM 实现来进行一些回归。我已经尝试使用 e1071 中的 svm 但我受到那里的内核功能的限制。因此,我从 kernlab 转向 ksvm。但我有一个主要缺点,就是 kernlab 中没有提供调优功能(例如 e1071 中的 tune.svm)。有人可以解释一下如何调整不同内核的参数吗?

PS。我想特别使用 rbfdot 内核。因此,如果至少有人可以帮助我了解如何调整 sigma,我将非常感激。

PPS。我完全知道 kpar 的“自动” 值可以用于“计算一个好的西格玛”。但我需要一些更具体、更符合 tune.svm 风格的东西。

最佳答案

要么您编写自己的包装器(说实话,这并不难),要么您可以尝试已经经过验证的实现解决方案,例如 mlrcaret

<小时/>

mlr 教程有 an example about it .

ps = makeParamSet(
makeDiscreteParam("C", values = 2^(-2:2)),
makeDiscreteParam("sigma", values = 2^(-2:2))
)

ctrl = makeTuneControlGrid()

rdesc = makeResampleDesc("CV", iters = 3L)

res = tuneParams("classif.ksvm", task = iris.task, resampling = rdesc, par.set = ps, control = ctrl)

这将执行三重交叉验证,以从网格中选择参数并评估虹膜数据集的准确性。当然,您可以更改重采样策略(留一法、蒙特卡罗 CV、CV、重复 CV、引导验证和保留都已实现)、搜索策略(网格搜索、随机搜索、广义模拟退火和迭代 F -race 均受支持)和评估指标。

关于r - 从 kernlab 调整 ksvm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26459650/

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