TF-IDF + задача прогнозирования множественной регрессии

1

У меня есть набор данных ~ 10000 строк автомобилей, проданных на портале, похожем на Craigslist. Столбцы включают цену, пробег, нет. о предыдущих владельцах, о том, как скоро автомобиль будет продан (в днях), и, что наиболее важно, текст, который описывает автомобиль (например, "безаварийный, регулярно обслуживается").

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

Использование TfidfVectorizer в scikit-learn привело к очень низкой точности прогноза. Не уверен, стоит ли мне пытаться включить цену, пробег и т.д. В регрессионную модель, так как это кажется довольно сложным. В настоящее время я рассматриваю возможность повторения регрессии TF-IDF для определенного сегмента данных, который достаточно велик (возможно, по цене Toyotas $10k- $ 20k).

В крайнем случае следует построить две гистограммы: одну из списков транспортных средств, содержащих определенное слово/фразу, а другую для тех, которые этого не делают. Ограничением здесь будет то, что слова, которые я выберу изобразить, будут основаны на моем субъективном мнении.

Существуют ли другие способы выяснить, какие ключевые слова потенциально могут быть важными? Заранее спасибо.

  • 0
    Какой классификатор вы использовали в sklearn ? Большинство линейных классификаторов должны иметь атрибут _coef который говорит вам кое-что об информативности функции stackoverflow.com/questions/11116697/…, но обратите внимание, что если классификатор не линейный, он становится сложным, например medium.com/usf-msds/…
  • 0
    Я использую линейный регрессор. Вы подняли хорошую мысль - отношения могут быть не линейными. Попробуем полиномиальный регрессор и посмотрим, улучшатся ли результаты.
Теги:
nlp
scikit-learn
prediction
regression

1 ответ

0
Лучший ответ

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

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

Включите фразы в свой векторизатор tfidf, установив ngram_range параметра ngram_range значение (1,2) Это может дать вам небольшое представление о том, какие фразы влияют на продажи автомобиля.

Если бы вы также предложили установить параметр norm tfidf как None, чтобы проверить, имеет ли влияние. По умолчанию применяется норма l2.

Разница может прийти на основе модели классификации, которую вы используете. Попробуйте изменить модель также как последний вариант.

  • 1
    Спасибо за предложения! Исходный метод (значения по умолчанию ngram_range и norm ) дал MSE 165,15. Это огромно, учитывая, что большинство автомобилей продаются в течение 10 дней. Конфигурирование ngram_range и norm вернуло MSE с величиной e22, но train_test_split пару раз дал цифры в диапазоне 155. Я полагаю, что нет никакого значимого отношения между текстом и скоростью продажи. Перегруппируйте регрессор на подмножестве данных (японские автомобили). Параметры по умолчанию дали 171,45; с ngram_range и norm было 166.57. Дадим снимок другим моделям сейчас.
  • 0
    какую модель используете? получить награду за особенность
Показать ещё 6 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню