Привет, Хабр!На связи Сергей и Григорий - Data Scientist'ы.    Сегодня расскажем, как заняли 2 место в общем зачете AI Generative Product Hackathon, инициированного Napoleon IT,  и 1 место в кейсе по анализу рекламных креативов для крупной российской фармацевтической компании. Компания, занимающаяся промышленным производством и продажей медицинских препаратов, представила на хакатон кейс ”Медиа корреляции”, в котором требовалось проводить анализ рекламных креативов. Даже самые лучшие креативы перестают приносить конверсии, если крутятся слишком долго. Отслеживание “выгорания” креатива позволяет маркетологу грамотно распределить бюджет и заблаговременно подготовить вариант на смену. Для компании важно анализировать медиакомпании, выбирать лучше кампании (CTR), которые откликаются у аудитории и использовать эти практики в разработке новых ключевых баннеров по всей России. Кейс включал в себя две разные задачи: Проанализировать ход рекламной кампании и предоставить рекомендации для маркетолога. Предложить, основываясь на прошлом опыте, реализацию определенного способа коммуникации. К примеру, текст сообщения для рассылки. По итогу мы остановились на первом варианте, в котором стояла задача предоставить маркетологу компании дополнительный способ анализа его медиапроектов. Показ рекламы осуществлялся исключительно для уже сформированных баз данных, включающих в себя врачей различных направлений. У нас не было информации о количестве повторных показов для одного пользователя, однако было понятно, что со временем их так или иначе станет больше. Маркетологи люди занятые, поэтому нам необходимо было забрать у них пару обязанностей, и выкатить решение, которое позволило бы сворачивать уже идущие к своему финалу кампании в идеальное для этого время. Исходные данные состояли из csv-файла с данными о предыдущих рекламных кампаниях различных препаратов. Данные были разделены по дням, и для каждого было известно общее количество показа данного типа рекламы (“impressions”) и количество кликов (“clicks”). Дополнительную информацию о препарате, ЦА и типе рекламы мы получали из столбца “campaign_name”.  В качестве целевой метрики использовался CTR, как единственно возможный. Для эффективного отслеживания изменений CTR было испробовано несколько кастомных оценок основанных на скользящих средних, среди которых наиболее эффективным и устойчивым к выбросам оказалось значение скользящего среднего по 3 последним значениям скользящего среднего CTR по последним пяти дням. Вот так выглядел код для преобразования данных: Финальный набор новых признаков выглядел примерно так: На протяжении всего хакатона мы работали над проектом  в тесном сотрудничестве с представителем фармацевтической компании Максимом Кочержинским, руководителем проектов омниканального продвижения. В ходе работы было принято решение по разработке бота для Телеграм, так как данный вариант, в отличие от первоначальной идеи с сайтом или приложением, предполагал легкое взаимодействие с системой без необходимости скачивать дополнительный софт и возможность получать автоматические уведомления при существенных изменениях в показателях рекламной кампании. Начало взаимодействия с ботом. Как видно, бот умеет парсить Google Sheets и для каждого юзера записывать их в небольшую бд-шку. В процессе работы работы с данными пользователя система анализирует показатели рекламной кампании на наличие существенных изменений: взлетов или падений и при их наличии формирует автоматический отчёт на основе сравнения данных в рамках текущей рекламной кампании с историческими данными, результаты данного сравнения передаются для в языковую модель для формирования гипотез. Также в боте предусмотрена возможность формирования мгновенного отчёта по запросу пользователя. Вот так примерно выглядел код для формирования отчета: В окончательный отчет входят: Шаблонная часть с текущими показателями рекламной кампании. Гипотезы и рекомендации, сгенерированные языковой моделью. Визуализация динамики показателей на фоне средней динамики по соответствующей группе. Ниже приведен пример отчета, полученного от бота в автоматическом режиме: Отчет по креативу: Название препарата: - Целевая группа: pharmacy Тип креатива: banner Показатель CTR за последние дни упал на -3.45%. Рекомендуется ознакомиться с графиком общей тенденции CTR, чтобы принять решение. Общее количество показов: 355187, это больше чем у 84.6% кампаний для данных препарата/ца/формата креатива, а также больше чем у 84.9% всех предыдущих рекламных кампаний. СTR кампании за всё время составил 0.365%. Для данных препарата/ца/формата креатива средний показатель CTR составляет 0.441% Средний показатель CTR для всех предыдущих рекламных кампаний составляет 0.372% На данный момент кампания длится 38 дней.Обычно кампания для данных препарата/ца/формата креатива длится 126 дня/дней, а средняя длительность всех рекламных кампаний составляет 47 дня/дней. В ходе этой кампании значение CTR росло 11 дня/дней, падало 19 дня/дней и стабилизировалось, либо было стабильно 8 дня/дней. Гипотеза 1: Кампания находится на этапе спада. За: CTR кампании в данный момент находится ниже среднего показателя как для данного препарата/формата, так и для всех проведенных кампаний. Также за последние дни наблюдается падение этого показателя, что свидетельствует о том, что кампания может быть менее эффективной. Против: Длительность кампании для данного препарата/формата обычно составляет около 126 дней, кампания длится только 38 дней, что говорит о том, что она еще не достигла своего среднего срока жизни и есть потенциал для роста. Гипотеза 2: Кампания имеет перспективы на улучшение показателей. За: CTR кампании уже превышает средний показатель по всем проведенным кампаниям. Большое количество показов говорит о хорошей достигаемости и масштабируемости кампании. Против: В течение длительного периода (19 дней) значение CTR падало и текущий показатель является относительно низким. Это может говорить о неэффективности кампании в текущих рамках. Целостный вывод: В целом, кампания показывает средний уровень показателя CTR по сравнению со всеми проведенными кампаниями, однако относительно данного препарата/формата креатива показатель ниже среднего. Это, вместе с тем, что кампания находится в стадии спада, говорит о том, что возможно стоит пересмотреть стратегию кампании или принять решение о ее сворачивании. Малое количество дней роста CTR кампании (11 дней) по сравнению с днями падения (19 дней) также свидетельствует о возможности пересмотра выбранной стратегии. Полный код решения посмотреть здесь. В рамках реализации проекта мы тесно сотрудничали с экспертами и представителями компании,  обсуждая множество идей реализации функционала.  Наша команда постаралась представить максимально подходящее кейсодержателю решение, поэтому в конечном продукте для хакатона не было обучено какой-либо предсказательной модели, весь упор делался на расчёт понятных и хорошо интерпретируемых метрик, которые будут полезны в анализе любому маркетологу. Думаем, что  именно длительное и основательное выявление желаний и требований кейсодателя и принесло нам в результате 1 место по кейсу и 2 по всему хакатону).     IT-компания