gpt4 book ai didi

python - CountVectorizer 不适用于 sklearn 中的测试字符串

转载 作者:行者123 更新时间:2023-11-28 18:31:35 27 4
gpt4 key购买 nike

我一直在使用 sklearn 进行情绪分析。我有一个包含 3000 条奇怪评论的 csv 文件,我正在根据其中 60% 的评论训练我的分类器。当我尝试对分类器进行自定义审查以使用 CountVectorizer.transform() 预测标签时,它会抛出以下错误:

    Anaconda\lib\site-packages\sklearn\feature_extraction\text.py", line 864, in transform
raise ValueError("Vocabulary wasn't fitted or is empty!")
ValueError: Vocabulary wasn't fitted or is empty!

请帮助我,这是拟合训练集的代码:

    def preprocess():
data,target = load_file()
count_vectorizer = CountVectorizer(binary='true',min_df=1)
data = count_vectorizer.fit_transform(data)
tfidf_data = TfidfTransformer(use_idf=False).fit_transform(data)
return tfidf_data

这是预测自定义评论情绪的代码:

    def customQuestionScorer(question, clf):
X_new_tfidf = vectorizer.transform([question]).toarray()
print (clf.predict(X_new_tfidf))
q = "I really like this movie"
customQuestionScorer(q,classifier)

最佳答案

  1. 我在这里没有看到分类器,您只使用了转换器(CountVectorizer、TfidfTransformer)。要获得预测 - 您必须根据 TfidfTransformer 的输出训练分类器。
  2. 不清楚您是使用相同的 CountVectorizer 和 TfidfTransformer(之前在训练集上训练过)来转换测试集文本,还是使用一些新的。要为以前安装的分类器提供正确的输入 - 您必须从以前安装的变压器(不是新的)提供给它。

在这里查看文本处理的好例子 http://scikit-learn.org/stable/auto_examples/model_selection/grid_search_text_feature_extraction.html#example-model-selection-grid-search-text-feature-extraction-py

关于python - CountVectorizer 不适用于 sklearn 中的测试字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36723786/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com