【问题标题】:How to choose the optimal parameter for SVM regression?如何选择 SVM 回归的最佳参数?
【发布时间】:2015-12-28 09:29:06
【问题描述】:

我知道 e1071 包中的tune() 对于选择 SVM 回归的最佳参数很有用。但我只是不知道如何为 gammacost 等参数选择合适的范围和epsilon?

x<-tune.svm(rg~.,data=train,kernel="radial",
            gamma = c(0.01,0.03,0.1,0.3,1.3,10,30),cost=2^(2:9),epsilon =c(0.01,0.03,0.1,0.3,1.3,10,30) )

上面的参数只是随机选择的。任何建议,将不胜感激。 非常感谢!!

好的。这是我在tune.svm 之后的训练数据结果,x 轴是拟合数据,y 轴是实际数据。有没有关于如何提高 SVM 性能的想法?

以及训练集中的数据: > head(train) rg weather sex member_type annual_income Weekend age_group 1 0.035725277 6 2 3 1 2 3 2 1.693898548 6 2 1 5 2 1 3 0.009012839 1 2 3 1 1 3 4 0.014902879 6 2 3 2 2 3 6 0.003531616 6 2 3 1 1 2 7 0.001575542 6 1 3 2 1 3

【问题讨论】:

    标签: svm


    【解决方案1】:

    大多数人使用的正是您所使用的,这是一个增长 3 倍的范围。在某些情况下,我尝试了 1.5 的倍数,即 (0.01, 0.015, 0.03...)。我提高了我的表现一点,但不是太多。这完全取决于您的训练持续多长时间。

    我会尝试最小为 0.0001 等较小的数字,最大为 1000。也许 1000 太多了,但我总是尝试比我认为的最大值大一个数量级,我会说它是 100。

    【讨论】:

    • 我刚刚在tune.svm后面加上了结果,结果好像不太好。你能帮帮我吗?
    • 我会尝试自己实现优化,而不是使用自动范围 c(0.01,0.03...),我会做一个 for 循环。对于参数中的每个值,训练 svm 并对其进行测试以获得性能。然后你保留性能最高的值
    猜你喜欢
    • 2016-01-13
    • 2020-04-16
    • 2016-09-30
    • 2019-05-09
    • 2018-06-10
    • 2015-05-21
    • 2017-11-10
    • 2021-07-18
    • 2018-06-12
    相关资源
    最近更新 更多