Как справиться с проблемами классификации текста, когда задействованы несколько функций - PullRequest
0 голосов
/ 26 декабря 2018

Я работаю над проблемой классификации текста, которая связана с несколькими текстовыми функциями, и мне необходимо построить модель для прогнозирования диапазона заработной платы.Пожалуйста, обратитесь к Образцу набора данных Большинство ресурсов / учебных пособий посвящены извлечению объектов только в одном столбце, а затем прогнозированию цели.Мне известны такие процессы, как предварительная обработка текста, извлечение функций (CountVectorizer или TF-IDF), а затем алгоритмы применения.

В этой задаче у меня несколько функций ввода текста. Как справиться с проблемами классификации текста, когда задействованы несколько функций? Это методы, которые я уже попробовал, но я не уверен, что это правильные методы.Пожалуйста, предоставьте ваши входные данные / предложения.

1) Прикладная очистка данных для каждой функции в отдельности, затем TF-IDF и затем логистическая регрессияЗдесь я попытался понять, могу ли я использовать только одну функцию для классификации.

2) Применили очистку данных для всех столбцов в отдельности, затем применили TF-IDF для каждого объекта, а затем объединили все векторы объектов, чтобы создать только один вектор объектов.Наконец логистическая регрессия.

3) Применили очистку данных для всех столбцов отдельно и объединили все очищенные столбцы, чтобы создать одну функцию 'merged_text'.Затем применил TF-IDF к этому merged_text с последующей логистической регрессией.

Все эти 3 метода дали мне точность 35-40% при перекрестной проверке и наборе тестов.Я ожидаю не менее 60% точности в тестовом наборе, который не предоставляется.

Кроме того, я не понял, как использовать 'company_name' & 'опыт' с текстовыми данными.в имени компании более 2000 уникальных значений.Пожалуйста, предоставьте ввод / указатель на то, как обрабатывать числовые данные в задаче классификации текста.

1 Ответ

0 голосов
/ 26 декабря 2018

Попробуйте выполнить следующие действия:

  1. Примените предварительную обработку текста к «описанию работы», «назначению должности» и «ключевым навыкам».Удалите все стоп-слова, отделяйте каждое слово, удаляя знаки препинания, строчные буквы, затем применяйте TF-IDF или Count Vectorizer, не забудьте масштабировать эти функции перед тренировкой модели.

  2. Преобразование опыта вФункции «Минимальный опыт» и «Максимальный опыт 2» и обработка - это дискретная числовая функция.

  3. Компания и местоположение могут рассматриваться как категориальная функция и создавать фиктивную переменную / одно горячее кодирование перед обучением модели..

  4. Попробуйте объединить тип задания и ключевые навыки, а затем выполните векторизацию, посмотрите, как это работает лучше.

  5. Используйте Random Forest Regressor, настройтегиперпараметры: n_estimators, max_depth, max_features с использованием GridCV.

Надеемся, что они повысят производительность модели.

Дайте мне знать, как она работает с ними.

...