Классификация текста - PullRequest
       38

Классификация текста

0 голосов
/ 22 апреля 2019

У меня есть данные с двумя важными столбцами: Название продукта и Категория продукта.Я хотел классифицировать поисковый запрос по категории.Подход (в Python с использованием Sklearn & DaskML) для создания классификатора заключался в следующем:

  1. Столбец «Чистое имя продукта» для стоп-слов, чисел и т. Д.
  2. Создание 90% 10% обучающего тестаsplit
  3. Преобразование текста в вектор с помощью OneHotEncoder
  4. Создание классификатора (Наивного Байеса) на данных обучения
  5. Проверка классификатора

Я понял,OneHotEncoder (или любой кодировщик) преобразует текст в числа, создавая матрицу, учитывающую, где и сколько раз встречается слово.

Q1.Нужно ли конвертировать из Word в Векторы до разделения на поезд или тест?

Q2.Когда я буду искать новые слова (которых, возможно, уже нет в тексте), как я буду их классифицировать, потому что, если я закодирую поисковый термин, он не будет иметь отношения к кодировщику, используемому для обучающих данных.Кто-нибудь может мне помочь с таким подходом, чтобы я мог классифицировать поисковый термин по категории, если этот термин отсутствует в данных обучения?

1 Ответ

0 голосов
/ 22 апреля 2019

Q1. Нужно ли конвертировать из слов в векторы перед разделением тест-поезда?

Ответ: Каждый алгоритм принимает входные данные в виде некоторого числового представления входных данных, поэтому вам необходимо преобразовать слова в векторы. Альтернативы этому нет. Помимо OneHotEncode, есть и другие подходы, такие как CountVectorizer и TfIdf-Vectorizer, которые рекомендуется использовать вместо OneHotEncoding. Подробнее о них можно прочитать здесь .

...