我想使用执行多类分类svm
的函数e1071
包裹。但据我从文档中了解到svm
,只能进行二元分类。插图文档讲述了多类分类的情况:“为了允许多类分类,libsvm
通过拟合所有二元子分类器并通过投票机制找到正确的类,使用一对一技术".
我仍然不明白的是我们是否可以执行多类分类svm
of e1071
在 R 中?如果是,请解释我们如何重做iris
数据集。
鸢尾花数据集包含三个类别标签:“Iris setosa”、“Iris virginica”和“Iris versicolor”。要使用 svm 采用平衡的一对一分类策略,您可以训练三个二元分类器:
第一个分类器的训练集仅包含“Iris setosa”和“Iris virginica”实例。第二个分类器的训练集仅包含“Iris setosa”和“Iris versicolor”实例。第三个分类器的训练集(我想现在您已经知道了)仅包含“Iris virginica”和“Iris versicolor”实例。
要对未知实例进行分类,您可以应用所有三个分类器。然后,简单的投票策略可以选择最常分配的类标签,更复杂的投票策略还可以考虑每个分配的类标签的 svm 置信度得分。
编辑(这个原则开箱即用svm
):
# install.packages( 'e1071' )
library( 'e1071' )
data( iris )
model <- svm( iris$Species~., iris )
res <- predict( model, newdata=iris )
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)