Как предсказать конкретный текст или группу текста с помощью библиотек анализа текста nltk после необходимой предварительной обработки - PullRequest
0 голосов
/ 29 апреля 2018

Весь код в Python. У меня есть список Python с именем " corpus ", который содержит обзоры в общей сложности 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)

1 Ответ

0 голосов
/ 01 мая 2018

То, чего вы достигли CountVectorizer и TfidfTranformer, может быть достигнуто только TfidfVecorizer.

Ответ на ваш вопрос:

sample = ["you are a nice person and have a good life"]

Это ваши примерные данные, которые вы хотите предсказать. Здесь я использовал метод преобразования на векторизаторе (CountVectorizer)

Count_sample = vectorizer.transform(sample)

После преобразования CountVectorizer мы должны использовать метод преобразования на трансформаторе (TfidfTranformer)

Tfidf_sample = transformer.transform(Count_sample)

После завершения всех преобразований данных используйте функцию прогнозирования LogisticRegression

predicted = logistic_reg.predict(Tfidf_sample)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...