我有4个标记的组,我想使用支持向量机进行分类。
Class-A, Class-B, Class-C, Class-D现在,如果我需要训练我的分类器来识别,我将把A,B,C,D中的所有文本复制到一个文件"A-against-all“中。B、C和D as的SImilarly
"B-against-all" CLass B :1 , Rest all :-1
"C-against-all" CLass C :1 , Rest all :-1
"D-against-all" CLass D :1 , Rest all :-1现在,如果我在"A-against-all“上运行支持向量机,那么我会得到一个分类器作为输出。同样,我又得到了B,C和D的三个分类器。
现在我的问题是:-我如何集成这4个分类器,以便统一操作?
发布于 2014-11-29 23:30:32
我不知道如何将2个或更多的支持向量机合并成1个,但对于你的特定问题,你可以通过创建一个包含A,B,C和D的所有数据的文件来获得所需的支持向量机,并分别为A, B, C & D创建标签为1,2,3 & 4。在这个组合文件上运行SVM,生成的分类器将正确地识别数据点为A类、B类、C类或D类。
虹膜数据的支持向量机。虹膜数据有0,1,2.0,0-50三类,50-100是1类,100-150是2类。
>>> from sklearn import datasets as DS
>>> iris = DS.load_iris()
>>> from sklearn import svm
>>> clf=svm.SVC()
>>> clf.fit(iris.data,iris.target)
SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0, degree=3, gamma=0.0,
kernel='rbf', max_iter=-1, probability=False, random_state=None,
shrinking=True, tol=0.001, verbose=False)
>>> clf.predict(iris.data[25])
array([0])
>>> clf.predict(iris.data[75])
array([1])
>>> clf.predict(iris.data[125])
array([2])正如你所看到的,支持向量机已经用三个类别标签对数据进行了分类并进行了准确的预测。
看一下这个问题:Prepare data for text classification using Scikit Learn SVM.这就是你需要做的。
https://stackoverflow.com/questions/27202854
复制相似问题