Знание того, как клиент реагирует на рекламную кампанию, важно для оценки ее развертывания — отправили они запрос или нет? Завершили последнюю покупку? Стоимость приобретения? Однако было бы еще полезнее, если бы это можно было сделать упреждающе: зная вероятность того, что клиент отреагирует на кампанию, еще до того, как мы развернули ее для них. Это именно то, что мы собираемся сделать через Hazlo.

Получение и загрузка набора данных

Как всегда, мы получим файл .csv и загрузим его в Hazlo. На этот раз мы будем использовать общедоступный набор данных, доступный на странице наборов данных GitHub Hazlo — https://bit.ly/3bM1gmg (.csv доступен как marketing-dataset.csv). Здесь вы также найдете конкретную информацию о наборе данных: он включает информацию о клиентах с их привычками на платформе электронной коммерции и о том, ответили ли они на маркетинговую кампанию или нет.

После загрузки набора данных мы можем просто загрузить его в Hazlo. Перейдите на страницу «Наборы данных» и просто нажмите «Загрузить».

Понимание данных

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

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

Создание проекта

Итак, мы загрузили наш набор данных, пришло время для интересной части — создания нашей модели. Мы перейдем на страницу проектов, нажмем «Развернуть», выберем «Ответ» в качестве целевой функции и поместим «ID» в качестве невыбранного столбца (хотя вы можете не делать этого).

Оценка нашей модели

Наша модель имеет точность чуть более 95 % на неутечек тестовых данных — с аналогичными значениями для других показателей, таких как точность, полнота и F-оценка. Журналы кластера показывают, что Hazlo сделал некоторую избыточную выборку, чтобы сбалансировать набор данных, и модель была всесторонне обучена на обоих результатах. Точно так же аналогичные тесты и точность обучения также указывают на то, что переобучение было сведено к минимуму.

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

И наоборот, «Недавность» имела самые большие негативные отзывы — чем дольше пользователь посещал сайт, тем меньше вероятность того, что он купит. Это, опять же, верно интуитивно.

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

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

Прогнозирование

Hazlo уже создала интерактивную форму для заполнения данных на случай, если мы сначала захотим сделать некоторые прогнозы вручную; мы всегда можем подключить API для промышленного использования позже. Мы можем переключать различные входные данные и смотреть, как выглядят прогнозы для всех из них.

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

Машинное обучение

Hazlo также позволяет пользователям управлять развертыванием своей модели. От записи прогнозов до отслеживания времени вывода — все это можно делать на странице ML Ops.

Вот об этом. Теперь вы подготовили данные, оптимизировали модель и разместили ее в облаке для использования в режиме реального времени. Проект работает в верхнем процентиле кодов Kaggle, связанных с набором данных, так что вы в хорошей компании.

Вы можете подключать API, делать массовые прогнозы с загрузкой файлов и многое другое. Вы также можете поделиться проектами со ссылкой: вот тот, который мы только что построили!