metrics.f1_score - 未调整大小的物体的长度



新手到Python和sklearn在这里。我在以下代码上收到我不明白的"类型错误"。谁能帮忙?

vectorizer = CountVectorizer()
X = vectorizer.fit_transform(train_data)
Y = vectorizer.transform(dev_data)
print Y.shape
print dev_labels.shape
parameters = {'n_neighbors':[1,300] }
grid_search = GridSearchCV(KNeighborsClassifier(), parameters, scoring=metrics.f1_score(Y, dev_labels))
grid_search.fit(X, train_labels)
print "the score is", grid_search.score(Y, dev_labels)
print "The best value is achieved when k = ", grid_search.best_params_

train_data,dev_data是用于训练模型的基本数据。 Y.shape 为 (676, 26879),而 dev_labels.shape 为 (676,)

错误消息在 GridSearchCV 行上为"Type_error"。它说: 类型错误: 未调整大小对象的 len()

什么对象没有大小?

您只需

scoring参数更改为scoring='f1'即可。这将为您完成工作。

此外,您不正确地使用了f1_score方法。它的第一个参数是训练数据。相反,您正在向其传递不正确的转换后的特征向量。

相关内容

  • 没有找到相关文章

最新更新