什么参数传递给scikit的svm函数学习库用于文档分类

时间:2016-10-06 06:35:30

标签: python-2.7 scikit-learn svm text-classification document-classification

我是机器学习的新手。我正在研究文件分类。 为此,我试图在" 20新闻组"的一部分上训练SVM。数据集。 我正在使用scikit为此学习。 链接:SVM - Scikit Learn 作为一个训练集,我在每个类别中采用了3类新闻和40个文档。 对于每个文档,到目前为止我已完成以下操作: - 标记化 - 删除停用词(即''' on''' in'等) - 词义化(词干词)(即'运行''运行''运行' ='运行') - 计算剩余单词的tf-idf分数

(labels []:包含每个文档的类别标签的列表)

(final_list []:包含每个文档的单词列表及其tf-idf分数的列表

i.e. final_list=[
[['run',0.16544],['ground',0.1224]...]
[['disk',0.9677],['pc',0.8888]....]
.....
.....
])

=============================================== ======================== 与其他分类器一样,SVC,NuSVC和LinearSVC将两个数组作为输入: 一个大小为[n_samples,n_features]的数组X,其中包含训练样本, 和 类标签(字符串或整数)的数组y,size [n_samples]:

Scikit Learn网页的示例代码:(对于数字数据)

>>> from sklearn import svm
>>> X = [[0, 0], [1, 1]]
>>> y = [0, 1]
>>> clf = svm.SVC()
>>> clf.fit(X, y)  
SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,
decision_function_shape=None, degree=3, gamma='auto', kernel='rbf',
max_iter=-1, probability=False, random_state=None, shrinking=True,
tol=0.001, verbose=False)

在拟合之后,该模型可用于预测新值:

>>> clf.predict([[2., 2.]])
array([1])

=============================================== ======================== 现在,当我使用以下行时:

>>> from sklearn import svm
>>> clf = svm.SVC()
>>> clf.fit(final_list, labels)

它正在给予,

ValueError:使用序列设置数组元素。

我不确定将什么参数传递给我的问题陈述的svm函数。

0 个答案:

没有答案