Классификация текста: ошибка значения не может преобразовать str в float - PullRequest
2 голосов
/ 28 марта 2019

Вход для обученной модели случайного классификатора леса для классификации текста

Я не могу знать, что должно быть введено для обученной модели после открытия модели из файла маринада.

with open('text_classifier', 'rb') as training_model:
    model = pickle.load(training_model)
for message in text:
    message1 = [str(message)]
    pred = model.predict(message1)
    list.append(pred)
return list

Ожидаемый результат: Неполитический

Фактический объем производства:

ValueError: не удалось преобразовать строку в число с плавающей точкой: 'RT @ScotNational The Свидетель признал, что не весь ущерб, нанесенный полицейским машинам, был вызвало

1 Ответ

1 голос
/ 28 марта 2019

Вам необходимо закодировать текст в виде чисел.Никакой машинный алгоритм не может обрабатывать текст напрямую.

Точнее, вам нужно использовать вложение слов (то же самое, что используется для обучения модели).Примером встраивания общих слов являются Word2vec, TF-IDF.

Я предлагаю вам поиграть с sklearn.feature_extraction.text.CountVectorizer и sklearn.feature_extraction.text.TfidfTransformer, чтобы ознакомиться с концепцией встраивания.

Однако, если выне используйте то же вложение, которое использовалось для обучения загружаемой модели, вы не получите хороших результатов.

...