我正在寻找R中的SVM软件包,该软件包接受为每个数据实例指定权重。我找到了e1071包,它提供了带有 class.weights 参数的类加权选项,但是它不提供实例加权的任何选项。我还找到了wsvm软件包,但都没有提供该功能。我正在寻找R中的libsvm-weights-3.17之类的东西。
答案 0 :(得分:2)
尝试使用此软件包:https://CRAN.R-project.org/package=WeightSVM
它使用'libsvm'的修改版本,并且能够处理实例加权。
例如。您已经模拟了数据(x,y)
x <- seq(0.1, 5, by = 0.05)
y <- log(x) + rnorm(x, sd = 0.2)
这是未加权的SVM:
model1 <- wsvm(x, y, weight = rep(1,99))
所以我们可以使用加权SVM:
model2 <- wsvm(x, y, weight = seq(99,1,length.out = 99))
Green dots is the weighted SVM and fit the first instance better.