我知道,tune()
在包e1071
是选择的SVM regression.But我的最优参数有用只是不知道该如何选择合适的范围为参数的喜欢gamma
,cost
和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
大多数人完全使用您正在使用的内容,该范围会增长3倍。在某些情况下,我尝试使用1.5的倍数,即(0.01,0.015,0.03 ...)。我的表现有所改善,但并不过分。这完全取决于您的培训持续多长时间。
我会尝试最小的最小数,例如0.0001,最大为1000。也许1000太多了,但是我总是尝试比我认为的最大值大一个数量级,即100。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句