Обучающие данные преобразуются в векторы объектов, но тестовые данные являются строками или текстом - PullRequest
0 голосов
/ 14 октября 2019

clean_train_reviews является list из strings.

Каждая строка является рецензией, пример приведен ниже:

Классические военные миры Тимоти Хайнз Развлекательный фильм, очевидно, идет на большие усилия, добросовестно воссоздавая роты Уэллса. Классическая книга Мистер Хайнс успешно смотрит фильмПризнанный факт: стандартная предсказуемая голливудская плата за проезд поступает каждый год, например, версия Спилберга Том Круиз. Малейшая книга сходства. Очевидно, что все смотрят на вещи по-разному. Представляют себе, как критики-любители смотрят, критикуют все остальные, оценивают такие важные фильмы, как развлеченные люди, никогда не соглашаются с тем, что критики наслаждаются усилиями, мистер Хайнс, верный Х.Г. Уэллс, классический романнайденные занимательными, легко упускаемые из виду критики воспринимают недостатки

Используя vectorizer, инициализированный ниже, приведенная выше строка преобразуется в вектор признаков в форме:

(фразе_индекса,feature_index) count

Например:

(0, 1905) 3

Это означает «предложение с идентификатором 0 иособенность с идентификаторомили индекс 1905 встречается 3 раза в этой строке.

vectorizer = CountVectorizer(analyzer = "word",   \
                             tokenizer = None,    \
                             preprocessor = None, \
                             stop_words = None,   \
                             max_features = 5000)

train["sentiment"] - строка из 1 и 0 (1 = положительное настроение, 0 = отрицательное настроение)

train_data_features = vectorizer.fit_transform(clean_train_reviews)
forest = RandomForestClassifier(n_estimators = 100)
forest = forest.fit( train_data_features, train["sentiment"] )

Мой вопрос:

Случайный лес обучается на вектор признаков (все числовые значения) и настроения (который снова числовой). Но набор тестовых данных - простой текст на английском языке. Когда обученная модель запускается на тестовых данных, как модель узнает, что делать с открытым текстом в тестовых данных, потому что модель обучалась только по векторам признаков, которые были только числами? Или объект forest сохраняет информацию об обычном тексте в данных обучения?

1 Ответ

0 голосов
/ 14 октября 2019

Тестовые данные также должны быть преобразованы в векторы признаков с использованием того же векторизатора (используется для создания обучающих векторов). Только тогда он может служить входом для модели.

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