Модель прогнозирования для маркетинга потенциальным клиентам (с использованием pandas)
-
16-10-2019 - |
Вопрос
В настоящее время я работаю над проектом с частичной занятостью, который включает в себя прогнозирование вероятности того, что клиенты купят продукт, с помощью анализа данных.Компания, в которой я стажируюсь, предоставила мне CSV-файл customer со всеми текущими клиентами и их атрибутами, и мне необходимо создать модель прогнозирования, чтобы классифицировать, возможны ли потенциальные клиенты или нет.
Однако, поскольку они предоставили мне список всех своих успешных клиентов или потенциальных клиентов, с точки зрения маркетинга, возможно ли обучить модель типа K-means с помощью PCA (и k-кратной перекрестной проверки?) и получить результаты?Мне нужно обучить свою модель, чтобы она соответствовала значению, скажем, 10, которое я добавлю в CSV, и дополнительно протестировать его.
Я использую pandas.Другая проблема заключается в том, что существует много демографических данных, но мне удалось преодолеть ее с помощью get_dummies()
.Однако количество столбцов увеличилось примерно с 10 до 47.
Я только вступаю в мир анализа данных, поэтому немного не представляю, какой путь выбрать и правильно ли то, что я делаю.
Точный анализ в маркетинговой терминологии называется Прогностическим подсчетом лидов.
ПРАВКА 1
Я следил за тем, что делал @HonzaB, и, следовательно, получил дерево решений.Однако, поскольку у меня было 40 столбцов, это выглядит примерно так
Мне пришлось сделать скриншот, так как он занимал более 2 МБ.
Очевидно, что оно действительно большое, и мне нужно как-то подрезать дерево, но я не уверен, как это сделать с пандами.Кроме того, есть ли какой-нибудь способ, которым я могу просто сгенерировать наилучшие характеристики в виде текстового файла или чего-то такого, что можно понять без помощи специалиста по обработке данных?
ПРАВКА 2
Я прочитал об одном вопросе, который очень похож на то, что мне нужно сделать. Прогнозное моделирование на основе показателей оценки RFM.В нем есть ссылка на статью ([Интеллектуальный анализ данных с использованием RFM-анализа] [3]), в которой говорится о классификация на основе правил.В идеале это то, что мне нужно сделать, и то, что наиболее соответствует потребностям компании.
Я хочу знать, возможно ли это сделать на Python / pandas.Или возможно ли пройти по дереву решений и сгенерировать правила?
ПРАВКА 3
Я нашел другой сайт Снова деревья принятия решений в python, перекрестная проверка который использует перекрестная проверка и оптимизация гиперпараметров чтобы получить лучшее решение.Также они включили код Python, чтобы получить читаемый код.Это осуществимое решение, однако оно довольно сложное, и я не могу понять, как оно работает.Сработает ли это?
PS Я решил проблему "действительно большого дерева решений" из правки 1, уменьшив максимальную глубину.Я вообще ничего не знал.
Решение
Во-первых, я бы спросил компанию, есть ли дополнительная информация о клиенте.Вы упомянули, что у вас есть 10 исходных столбцов, которых может быть недостаточно для хорошего прогноза.То же самое относится и к количеству строк.Обычно, чем больше данных, тем лучше модель, до определенного предела.
Во-вторых, полезно кодировать категориальные признаки (в вашем случае демографические данные).Увеличенное количество столбцов не должно беспокоить вас в вашем случае.
Что касается самой задачи, то да, это выполнимо.Начните с простого, просто проверьте важность каждой функции (я бы оставил PCA на потом), выберите несколько моделей и протестируйте их.
Также рассмотрим простое дерево решений train.Ваши результаты могут быть легко визуализированы в понятном деловым людям виде.В отличие от методов черного ящика в качестве K-средних.