Python 3.x 如何解决多标签分类中的不良输入形状

Python 3.x 如何解决多标签分类中的不良输入形状,python-3.x,scikit-learn,svm,multilabel-classification,Python 3.x,Scikit Learn,Svm,Multilabel Classification,我正在尝试使用TfIdfVectorizer对形状为(218,5)的标签上的形状为(2181861)的数据进行多标签分类 我得到一份工作 ValueError:输入形状不正确(218,5) 我通过下面的功能管道传递我的标签: self.q_matrix = tf_idf.fit_transform(question_features) y = MultiLabelBinarizer().fit_transform(tags) clf.fit(self.q_matrix,y) 其中clf是L

我正在尝试使用TfIdfVectorizer对形状为(218,5)的标签上的形状为(2181861)的数据进行多标签分类

我得到一份工作

ValueError:输入形状不正确(218,5)

我通过下面的功能管道传递我的标签:

self.q_matrix = tf_idf.fit_transform(question_features)

y = MultiLabelBinarizer().fit_transform(tags)

clf.fit(self.q_matrix,y)

其中
clf
LinearSVC

看起来您正在尝试安装5个分类器(因为
y
有5列)。您不能使用
LinearSVC
执行此操作。正如您在函数的文档中所看到的,您的目标(
y
)应该只有一列:

y:类似数组,形状=[n_samples]相对于X的目标向量


因此,如果你想拟合5个分类器(每个
y
列对应一个),你需要分别拟合它们。

self.q_矩阵的形状是什么,y是什么?@MiriamFarber self.q_矩阵的形状是(2181861),y的形状是(218,5)。参见本例: