r - 如何在 R 中构建多类 SVM?

标签 r svm

我正在使用支持向量机进行手写模式识别(字母表)项目。我有 26类总的来说,但我无法在 中使用 SVM 进行分类R .只有当它是二进制类时,我才能对图像进行分类。如何将 SVM 用于 多类 SVM 在R?

我正在使用“e1071”包。

提前致谢。

最佳答案

对于多类分类器,您可以获得每个类的概率。您可以在训练模型时设置 'probability = TRUE' & 在 'predict' api 中。这将为您提供每个类的概率。下面是虹膜数据集的示例代码:

data(iris)
attach(iris)
x <- subset(iris, select = -Species) 
y <- Species
model <- svm(x, y, probability = TRUE)
pred_prob <- predict(model, x, decision.values = TRUE, probability = TRUE)

使用上面的代码,'pred_prob' 将在其他数据中具有概率。您只能使用以下语句访问对象中的概率:
attr(pred_prob, "probabilities")

         setosa  versicolor   virginica
1   0.979989881 0.011347796 0.008662323
2   0.972567961 0.018145783 0.009286256
3   0.978668604 0.011973933 0.009357463
...

希望这可以帮助。

注意:我相信当你在内部给出 'probability' 时,svm 会执行一个 vs 其余分类器,因为针对没有设置 'probability' 参数的模型设置 'probability' 参数需要更多时间。

关于r - 如何在 R 中构建多类 SVM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34328105/

相关文章:

R - 逻辑回归 - 模型预测和分割数据的情况非常糟糕。有想法吗?

r - 更改 openxlsx 工作簿中的单元格值

r - dplyr 包可以用于条件变异吗?

r - R 可以处理多少数据?

Keras:使用铰链或分类铰链实现 SVM?

python - 如何使用libsvm中svm_model的 'predict'函数?

r - 使用 dplyr、自定义函数或 purr 的多个条件 if-else

python - 实现 SVM RBF

machine-learning - 在线/增量学习分类器

python ,sklearn : Order of Pipeline operation with MinMaxScaler and SVC