惩罚SVM的输出为NULL?

时间:2019-03-22 19:52:05

标签: r svm

我对用Elastic SCAD罚款将SVM模型拟合到我的数据感兴趣。我正在尝试使用penalizedSVM library for this。问题是由于某种原因,该库输出了一个空模型,并且我不确定编码在哪里出错。

我将提供一个最小的工作示例来说明我的意思。

library("penalizedSVM")

X=matrix(c(3, 2, 4, 1, 2, 4, 4, 4, 2, 4, 4, 1, 3, 1),nrow=7 )
Y=c(-1, -1, -1, -1, 1, 1, 1)

#Note this is linearly separable
plot(X[,1], X[,2],  pch=16, col=Y+2)

#penalty weights
lambda.grid1=list(10^seq(-2,1))
lambda.grid2=lambda.grid1

scadfit1=svmfs(X,Y, fs.method="scad+L2", grid.search="discrete",
               lambda1.set = lambda.grid1 , lambda2.set = lambda.grid2, 
               bounds=NULL, parms.coding = "none", inner.val.method = "cv", cross.inner =10, show="none", calc.class.weights = TRUE, class.weights = NULL, seed=1)

#returns null
scadfit1

#is scalar
scadfit1$model$w

另外,由于某些原因,w向量是标量。 如果有人尝试过这种方法,或者可以帮助我理解我做错了什么,我将非常感激。

0 个答案:

没有答案