【发布时间】:2018-10-09 17:52:32
【问题描述】:
所有代码都在 python 中。我有一个名为“corpus”的 python 列表,其中包含总共 2000 条评论(+ve 和 -ve 都评论了)。 mycode 的主要/重要部分是:
from sklearn.feature_extraction.text import CountVectorizer
vectorizer = CountVectorizer(max_features=2000, max_df=0.6, min_df=3, stop_words=stopwords.words("english"))
X = vectorizer.fit_transform(corpus)
from sklearn.feature_extraction.text import TfidfTransformer
transformer = TfidfTransformer()
X = transformer.fit_transform(X)
from sklearn.cross_validation import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.20, random_state=0)
from sklearn.linear_model import LogisticRegression
logistic_reg = LogisticRegression()
logistic_reg.fit(X_train, y_train)
现在我想预测一个句子为 +ve 或 -ve('1' 或 '0')。这句话是
sample = ["you are a nice person and have a good life"]
我应该如何进行上述预测。(我知道 CountVectorizer 和 TdfidfTransformer 的作用是什么,但它让我对 TdfidfVectorizer 感到困惑)
【问题讨论】:
-
但是您没有在代码中的任何地方使用
TdfidfVectorizer?你到底想要什么。TdfidfVectorizer只是CountVectorizer和TfidfTransformer的组合
标签: python-3.x machine-learning nlp classification logistic-regression