Реальный кейс: как с помощью аналитики прокачать перформанс-маркетинг 🔥
Какое-то время назад мы делали крутой проект на стыке аналитики, ML и маркетинга - мы анализировали объявления в рекламных сетках (например, ВК Реклама), раскладывали их на признаки и пытались ответить на вопрос: «А какой баннер надо сделать следующим, чтобы он разорвал рынок и показал супер-показатели?»
Мы протестировали десятки алгоритмов и в итоге сделали из этого крутой автоматизированный процесс. А сейчас давайте декомпозируем его на отдельные шаги.
1. Сбор данных
Самый первый этап, где нужно собрать кучу данных об объявлении (картинку, текст, кнопку, таргетинги, статистику перформанса и т.д.) через API рекламной площадки.
Это стандартный автоматизированный ETL, который можно сделать с помощью скриптов на Python + cron/airflow.
2. Составление карты признаков
Для начала мы сели и составили карту признаков. Потом начали работать по этой карте. Потом поняли, что получилась дичь и переделали. Этот цикл мы повторили раза 3.
В итоге у нас получили фичи в духе: главный цвет на картинке, вспомогательные цвета на картинке, существительные/прилагательные/глаголы на картинке, словосочетания на картинке, наличие триггера FOMO, наличие упоминания акции, главные объекты на картинке, вспомогательные объекты на картинке, контекст картинки и еще штук 30.
3. Выделение признаков
Карту составили - круто. А теперь, когда тебе подается на вход очередное объявление, тебе нужно его разложить на эти самые признаки - вот тут и начинается веселье.
Давайте возьмем один из самых простых примеров - выделение цвета. У тебя есть картинка, которая представляет из себя многомерную матрицу пикселей. Логичный шаг тогда - выделить цвет у каждого пикселя по RGB.
Ок, но не так все просто. Если 2 соседних пикселя отличаются на 1 хотя бы в одном компоненте цвета, то это будут 2 разных цвета, хотя для глаза они не отличимы. Есть ли в этом смысл? Нет - у нас в итоге у картинки может получится 1000 цветов.
Хорошо, давайте попробуем классификацию. Заранее создадим N цветов, которые нас интересуют и будем классифицировать каждый цвет в какую-то группу.
Нормальный вариант, но все еще с нюансами - для одной картинки может получится 50 цветов, а для другой - 1. А хочется всегда получать плюс-минус однородный ответ, чтобы это можно было адекватно обрабатывать.
И это я еще не говорю про то, какие страшные штуки приходится использовать, чтобы выделять объекты, работать с текстами и так далее.
4. Выделение ключевых признаков
Когда все фичи для каждого объявления проработаны, на горизонте начинает маячить алгоритм создания волшебного баннера. Но т.к. признаков очень много, нужно выделить только те, что реально влияют на результат (раскрывал подробно это в посте).
Простой пример - на нашем опыте мы заметили, что главный цвет практически всегда влияет на перформанс (например, итоговую стоимость лида), а условное наличие триггера FOMO может иногда не работать вообще или даже давать обратный эффект.
Чтобы выделить 4-5 ключевых признаков мы использовали замес из дисперсионного анализа, корреляций (писал про это тут, почитайте), ANOVA и еще всяких штук.
5. Предиктивка
Последний этап - сделать "прогноз": какие фичи должны быть у баннера, который будет круто перформить. Какого он должен быть цвета, что на нем должно быть изображено и на кого это таргетировать.
Тут мы тоже перепробовали кучу всего: от генетических алгоритмов до самописного алгоритма на основе условных вероятностей. В итоге на последнем и остановились.
Заключение
Рассказать про эту штуку в формате поста - очень сложно. Но в этом году я постараюсь глубоко раскрыть эту тему на крупнейшей конфе для аналитиков - Матемаркетинг. Буду выступать в офлайне, так что подходите, понетворкаемся))
А еще наша команда вместе с Матемаркетингом замутили крутую активность: если до конца сентября вы приходите к нам учиться на курс-симулятор «Аналитик данных», то вы гарантированно получаете билет на конфу!
Оставляйте заявку, ребята все подробно расскажут, а потом увидимся в студенческом чатике и на конфе 🔥