我在使用插入符号训练SVMLinear时遇到了问题 . 尽管如此,数据与SVMRadial一样正常 .
数据可通过(2016年5月29日)访问:https://www.dropbox.com/s/ia2vc25uhxdgqn1/projetTest01.txt?dl=0
(8000行1021变量,〜10%目标)
这是代码:
projetTest01<-read.table("projetTest01.txt", sep="\t")
Test01<-list(data=projetTest01[,-c(2,3)],label=projetTest01[,3])
Test01N<-Test01
Test01N$label<-as.factor(Test01$label)
levels(Test01N$label)[levels(Test01N$label)=="0"] <- "No"
levels(Test01N$label)[levels(Test01N$label)=="1"] <- "Yes"
temp<-as.matrix(Test01$data)
storage.mode(temp) <- "numeric" #I need 'num' type
Test01N$data<-as.data.frame(temp)
svmTuneGrid_L <- data.frame(.C = 2^(-2:7))
trControl_SVML<-trainControl(method = "repeatedcv", repeats = 3, classProbs = TRUE)
svmFit_Lin <- train(Test01N$label ~ ., data = Test01N$data,method = "svmLinear",preProc = c("center", "scale"), tuneGrid = svmTuneGrid_L,trControl = trControl_SVML)
我得到了这些消息:
行搜索失败[..]
方法$ predict中的警告(modelFit = modelFit,newdata = newdata,submodels = param):kernlab类预测计算失败;返回NAs
data.frame(...,check.names = FALSE)中的警告:从一个短变量中找到行名并丢弃
我在网站/网站上查找了一些答案,但是
-
级别不是数字(=是/否)
-
ClassProb设置为TRUE
-
标签无法从另一个变量完美预测(我从其他算法中知道这一点)
-
没有空类
-
preproc(scale)与否并没有什么区别
-
使用SVMRadial可以很好地处理数据!!
-
我使用插入符号6.0-68
我真的很茫然 . 有人的想法吗?