В прошлом статья Мы уже писали о том, как в Dentsu мы прогнозируем телесмотрение рекламы на ТВ и какие алгоритмы для этого используем.
В этой статье мы расскажем, как этот прогноз используется для автоматического размещения рекламы на ТВ, как возникла идея Programmatic TV, с какими трудностями мы столкнулись при его реализации и как он живет и работает сейчас, в непростой год. со всех точек зрения в 2020 году.
Фото: Полимерек/Викимедиа
Немного истории
Задумываться об автоматизации процессов, с которыми сталкивается рекламная группа агентства при закупке телерекламы, мы начали еще в 2014 году.Мы всегда стараемся использовать индивидуальный подход к нашим клиентам, в том числе и по отчетности по ТВ-размещениям, поэтому менеджерам по закупкам рекламы (закупщикам) приходилось тратить много времени на подготовку детальных отчетов.
Мы решили, что это отличная возможность для автоматизации, и с этой идеей пришли к крупнейшему продавцу ТВ-рекламы, на тот момент это была компания Video International. В России с 2016 года практически вся телереклама стала продаваться через единого продавца (мегасселлера) — Национальный рекламный альянс (НРА), основанный крупнейшими медиахолдингами, владеющими телеканалами.
НРА поддержало идею, и вместе они создали первую версию API для своей рекламной системы Vimb. API позволил получить сетку рекламных блоков (аналог знакомой программы передач для телеканалов, но только с указанием времени выхода рекламных блоков в программах на каналах) и сетку наших рекламных размещений в этих блоках.
С помощью API нам удалось полностью автоматизировать процесс оформления заказа клиента и формирования отчетности по нему.
Но время не стоит на месте, появились новые идеи и API стало активно развиваться.
Будучи на тот момент эксклюзивным пользователем API, мы всячески способствовали развитию и развитию этого продукта и подталкивали рынок к развитию подходов Programmatic TV к управлению ТВ-рекламой.
Логичным шагом стала программная оптимизация текущего заказа для более эффективного охвата необходимой целевой аудитории и целый набор инструментов, позволяющий менеджерам по закупкам рекламы автоматизировать часть рутинных действий.
Мы разработали инструменты, которые отслеживают свободные места в популярных программах, делают плейсменты по необходимому объёму и заданным настройкам, меняют видео в уже сделанных плейсментах и многое другое.
В 2018 году у нас возникла идея полностью автоматизировать процесс покупки телевизоров.
Погружение в домен
Для начала попробуем разобраться, как вообще осуществляется покупка рекламы на ТВ, что такое рекламная кампания, как она контролируется и каких показателей необходимо достичь в ходе кампании.Введем несколько определений из области медиа и рекламного рынка:
- Целевая аудитория - аудитория потенциальных потребителей, представляющая интерес для рекламодателя и обладающая определенными характеристиками (обычно речь идет о социально-демографических характеристиках, таких как пол, возраст, доход и т. д.), но психографических и поведенческих характеристиках, таких как лояльность к бренду или лояльность.
также может быть использовано потребление каких-либо продуктов или услуг)
- Покупающая аудитория - аудитория, определенная телеканалом как его целевая аудитория.
То есть канал определяет свою целевую аудиторию и показывает контент, соответствующий этой целевой аудитории.
- ТВР рекламного блока — рейтинг рекламного блока, который рассчитывается как отношение суммы телезрителей определенной целевой аудитории к сумме телезрителей всей целевой аудитории.
- GRP рекламного блока — покупательский рейтинг блока равен TVR, рассчитанному для покупательной аудитории канала.
Именно через GRP закупается основная часть телерекламы в России.
- Привязка рекламного блока (аффинити) - отношение рейтинга рекламного блока, рассчитанного для целевой аудитории бренда, к рейтингу блока, рассчитанному для покупательной аудитории канала (Целевая аудитория ТВР / Покупающая аудитория ТВР)
- CPP (стоимость за балл) — стоимость одного рейтинга в покупательской аудитории канала.
Может быть больше для трансляций в прайм-тайм (вечером и выходными).
На основании CPP и накопленного покупательского рейтинга рассчитывается стоимость рекламной кампании.
- ПРАЙМ-тайм — временной интервал с 19:00 до 24:00 в будние дни и с 8:00 до 24:00 в выходные и праздничные дни
- Байер — Менеджер по закупкам телерекламы
- Рекламный блок - определенное место в сети вещания телеканала (внутри телепрограммы или между ними), отведенное для рекламы.
- Рекламное место — конкретный вывод рекламного видеоролика, помещенного в блок.
Несколько спотов могут быть размещены в одном блоке
- Медиаплан – документ, включающий подробную структурированную информацию о предстоящих рекламных кампаниях с указанием сроков и выделенного бюджета.
Для приобретения рекламы существует специальное программное обеспечение Vimb, предназначенное для размещения и отслеживания рекламных кампаний, электронного документооборота и выгрузки отчетности.
В Vimb создается паспорт сделки со всеми параметрами и условиями будущих рекламных кампаний клиента.
В ходе сделки менеджеры агентства (покупатели) создают медиапланы необходимых рекламных мероприятий.
В Vimb медиапланы создаются для каждого канала отдельно, их продолжительность не превышает месяца.
Рекламная кампания на телевидении представляет собой набор медиапланов с местами их размещения.
Далее, в соответствии с условиями сделки и медиапланом, агентство-байер размещает рекламу в блоках каналов.
У каждой рекламной единицы есть покупательский рейтинг, рассчитываемый NRA. В соответствии с этим рейтингом после выхода ролика в эфир будет рассчитан окончательный бюджет кампании и выставлены счета за кампанию.
Для Vimb есть API доступа к системе, который позволяет загружать информацию о рекламных блоках, роликах, медиапланах, а также размещать, удалять и заменять ролики.
Реклама делится на несколько видов:
- Суперфиксированный тип размещения (Суперфикс) — ручное размещение спотов в выбранных клиентом блоках, с повышенным приоритетом и возможностью выбора фиксированного типа размещения.
- Фиксированный тип размещения (Fix) — ручное размещение спотов в выбранных клиентом блоках, в конкретных программах, на определенные даты.
Этот тип размещения отличается сверхфиксированным типом размещения.
- Плавучее жилье (Купание) – автоматическое размещение рекламных роликов в произвольных блоках с учетом заданных условий размещения.
Доступно только на орбитальных каналах.
НРА самостоятельно размещает заданный объем спотов и контролирует показатели.
- Запас – низкоприоритетное автоматическое размещение спотов в произвольных блоках с учетом заданных условий размещения по принципу «остатка инвентаря».
Этот тип размещения выгодно отличается от других типов размещения.
- Гибкий — гибкость между каналами, автоматическое размещение спотов в произвольных блоках с учетом заданных условий размещения с возможностью перетекания объемов из канала в канал.
После размещения видеороликов в сети происходит ежедневный контроль размещения, могут меняться требования, определенные при планировании, может корректироваться сеть эфирных каналов (замена одной программы на другую, сдвиг времени вещания, появление новых эфирных каналов).
события, например, обращение президента или специальный выпуск новостей), выбивание роликов более приоритетных типов размещения.
Все эти события требуют вмешательства в текущее размещение, пересчета показателей кампании и корректировки размещения.
При ручном управлении без средств автоматизации этот процесс может занять у покупателя около 60-80% рабочего времени.
Учитывая, что крупные агентства обычно имеют внушительный портфель клиентов, на эти процессы тратится большое количество времени и денег.
Программатик ТВ призван автоматизировать эти процессы, взяв на себя львиную долю задач по закупкам и мониторингу рекламных кампаний, освободив время покупателей для более интеллектуальной работы.
Задача
Необходимо разработать систему, которая будет автоматически размещать рекламные кампании на ТВ, постоянно оптимизировать эффективность размещения 24х7 и отслеживать все медийные и немедийные показатели.В данном случае под эффективностью мы подразумеваем максимизацию средней аффинити рекламной кампании при фиксированном бюджете размещения.
Для системы необходимо разработать понятный и удобный пользовательский интерфейс, позволяющий быстро создавать рекламные кампании и производить соответствующие настройки.
Быстрое решение, или первое блин комом
Казалось бы, покупка рекламы на ТВ, если перевести на язык математики и численных методов, — это, по сути, стандартная рюкзакская задача, для решения которой существуют «стандартные» алгоритмы.Мы немедленно позвонили нашим математикам и специалистам по обработке данных и попытались решить все в лоб, используя метод ветвей и границ.
Действительно, если представить, что TVR (Affinity) — это стоимость, GRP — вес, а вместимость рюкзака равна нашему общему весу, указанному для кампании на одном канале, то мы получим типичный рюкзак, а точнее несколько — по количеству каналов в рекламной кампании.
И на тестовом наборе данных мы получили, как нам тогда казалось, быстрое, а главное математически точное решение задачи покупки.
Обрадованные успехом, мы пришли с результатом на место покупки и получили от них «порцию холодного душа».
Помимо суммы весов GRP для рекламной кампании нужно учитывать десятки различных параметров и характеристик, некоторые из которых носят не совсем математический, а скорее эмпирический характер.
При определенных условиях, используя наш алгоритм, мы вообще могли получить рекламную кампанию, состоящую из одного дня и идущих друг за другом видеороликов (просто они могли быть наиболее близкими из всего предложенного набора и подходящими по весу).
Естественно, такая кампания не устроит ни покупателя, ни клиента, хотя с математической точки зрения это правильно.
Получив новый ввод от покупки, мы поняли, что выбранный алгоритм нам совершенно не подходит, точнее, может подойти для решения части задачи.
Можно как-то работать с такими параметрами, как прайм-доля (доля рейтингов, выходящих в прайм-тайм телеканалов, обычно от 19 до 23) или список запрещенных программ, но скорость алгоритма, конечно, существенно уменьшенный.
А как насчет такого параметра, как равномерное распределение рекламных выходов по дням кампании или характеристики: «желательно не размещать одновременно в одной и той же программе несколько дней подряд, если есть другие подходящие блокирует, но когда больше ничего нет, тогда это возможно»? Ищем решение дальше.
Мы учим компьютер работать как человек.
Или даже немного лучше?
Умные люди – лучшая энциклопедия (Гете И.Если невозможно подобрать существующие алгоритмы решения задачи, которые удовлетворяли бы по качеству и времени расчета, то можно попытаться научить алгоритм действовать по аналогии с человеком-экспертом в этой области.)
Получается своеобразный гибрид экспертной системы и системы автоматизации принятия решений.
Нам нужно собрать много данных, много данных от экспертов в этой области – покупателей.
После этого объединим эти данные и начнем обучение нашей «умной» системы.
Для этой задачи нам идеально подошли методики, используемые при проведении кастомизации (Customer Development).
Во-первых, мы получили наиболее острые проблемы, которые необходимо решить в первую очередь и которые принесут нам максимальный результат. Во-вторых, мы отталкиваемся от потребностей пользователя и сразу внедряем в продукт тот функционал, который ему нужен, который решит именно его проблемы и поможет именно в тех местах, где «болит» больше всего, а не тот функционал, который мы придумали.
для него мы сами.
а возможно, ему это вообще не нужно.
А самое главное, в ходе многочисленных тематических интервью мы собрали и объединили практически все актуальные проблемы и проработали пути их решения.
В результате мы получили полный перечень характеристик рекламной кампании, которые необходимо контролировать, и смогли формализовать в виде алгоритмов описания действий и практически все закономерности, необходимые для принятия решений при проведении рекламной кампании.
Вот некоторые ключевые контролируемые характеристики и ограничения:
- Бюджет кампании
- Поддержание доли эфира кампании в прайм-тайм в заданных пределах для каждого канала.
- Соблюдение распределения веса на роликах
- Соответствие объёму рейтингов по каждому из каналов кампании
- Учет приоритетных и запрещенных программ
- Учет приоритетных временных интервалов, заданных для канала
- Учет заданных ограничений по дням/периодам
- Поддержание единообразия по дням заданного периода
- Поддержание однородности в течение дня
- Сохранение единообразия в смежные дни
- Учет средней аффинити канала с целью предварительного отбора убыточных для покупки плейсментов; для них количество потраченных рейтингов покупки дает небольшое количество целевых рейтингов, по сравнению с аналогичными блоками на этом канале
- Соответствие минимальному указанному сходству для прайм- и оффпрайм.
- Выходы мониторинга в одной и/или разных передачах с заданным минимальным интервалом
- Учет динамики изменения рейтингов покупки рекламного блока для максимизации фактических рейтингов, т.е.
принятия размещения в тех блоках, в которых фактический рейтинг будет больше текущего.
- Учет максимального количества выходов в сутки на канале
- Учет выхода конкурирующих брендов одного и того же рекламодателя, чтобы не занимать одни и те же рекламные блоки своими конкурирующими товарами или услугами.
- Учет позиций рекламных выходов в блоке при заданном объеме позиционирования.
Позиционирование дает возможность за дополнительную плату выбрать порядок размещения рекламного ролика в занимаемом блоке, в начале блока или в конце.
Обычно устанавливается в процентах от общего объема размещения на канале.
Ведь нам важно не только правильно ее решить, но и постараться сделать это, пока выбранные рекламные места доступны, а если они уже заняты, то дополнительно оптимизировать кампанию с учетом текущих изменений.
Мы решили перевести все заданные ограничения в набор функций и логических условий, разбить нашу оптимизацию на этапы и использовать жадный алгоритм выбора рекламных блоков на каждом этапе.
При этом сам алгоритм должен работать как с новой настройкой кампании, когда блоки ставятся с нуля, так и с ранее настроенной кампанией.
В результате получается примерно следующий дизайн, который применяется к каждому из медиапланов рекламной кампании:
- ЭНажмите 1 – Подготовительный На этом этапе мы загружаем все необходимые данные о текущей сетке блоков и настройках для оптимизации рекламной кампании.
- ЭШаг 2 – Отметить ранее неудачные места размещения для удаления Здесь мы проверяем текущую договоренность (если она уже существует) на соответствие заданным условиям.
Исходя из характера несоответствия, мы отмечаем неподходящие места как обязательные и рекомендуемые к удалению.
- ЭШаг 3 – Размещение новых роликов или «Базовая оптимизация» На этом этапе мы размещаем споты в соответствии с заданными настройками, выбирая наиболее близкие позиции для заданного объема и сохраняя равномерность размещения.
- ЭШаг 4 – Настройка базовой оптимизации На этом этапе мы пытаемся более точно подогнать полученное на этапе базовой оптимизации размещение к заданному плану, выбирая возможные варианты перестановок или замен.
Прежде всего, корректировки касаются бюджета, родства, основной доли и единообразия.
- ЭШаг 5 – Проверка правильности оптимизации На этом этапе мы оцениваем качество и правильность оптимизации с помощью логических и оценочных функций.
Если новое размещение хуже текущего, мы пытаемся провести дополнительную оптимизацию или возвращаемся к текущему размещению.
Одного алгоритма недостаточно, его еще нужно правильно использовать
Для удобства работы с системой мы унифицировали все подходы, которые используем к рекламе на телевидении, и пришли к парадигме рекламной кампании в Интернете, когда мы делаем базовые настройки, запускаем кампанию и потом только контролируем ее реализацию; система берет на себя всю рутинную работу.Баер вводит в систему рекламную кампанию и запускает ее на автопилоте.
Автопилот — автоматическое управление рекламной кампанией с целью максимальной эффективности и соблюдения заданных настроек и ограничений.
В связи со спецификой российского телевидения рекламная кампания логически разделена на несколько частей в соответствии с типами размещения.
Автопилот использует разные стратегии для работы с разными типами мест размещения.
Например, достаточно пару раз в день оптимизировать суперфикс, а в оставшееся время следить за освобождением мест в самых популярных программах, тогда как фиксированное размещение требует постоянного контроля и дополнительной оптимизации из-за выбивания суперфиксом.
При этом, когда мы оптимизируем один тип размещения, необходимо учитывать показатели и размещение других типов, иначе вы можете не достичь плана или расположить три точки в одинаковых рекламных блоках, что не добавит рекламы.
эффективность кампании.
Дополнительно стоит отметить, что в реальной жизни наличие свободного места для размещения постоянно меняется и часто можно получить ошибку API «В выбранном вами блоке недостаточно свободного места», поэтому после оптимизации и размещения новых блоков , проверяем, все ли удачно разместилось, и только после этого избавляемся от блоков, помеченных на удаление.
А если что-то не получается — отправляем медиаплан на дополнительную оптимизацию.
Если автопилота недостаточно и необходимо быстро внести изменения в плейсмент, то предусмотрен ручной режим работы: с визуализацией предлагаемых новых плейсментов и корректировкой старых, с визуализацией оптимизированных медийных и немедийных характеристик кампании.
.
Например, это запланированная после оптимизации близость, количество целевых оценок или бюджет. Если кампания размещается впервые, то можно запустить так называемую первоначальную настройку кампании; в этом режиме все кампании оптимизируются 24х7, набирая объёмы для заданного плана.
Что под капотом?
Исторически сложилось так, что в большинстве случаев мы используем решения на базе линейки продуктов Microsoft. Платформа Programmatic TV не стала исключением.Программное ТВ — это набор сервисов, клиентское приложение и база данных.
Для хранения всех необходимых данных была выбрана СУБД MS SQL. В качестве технологии реализации сервиса была выбрана технология gRPC. Клиентская часть представляет собой настольное приложение WPF. Аутентификация всех сервисов и клиентской части происходит через SSO. Логгирование реализовано как отдельный сервис, который позволяет не только сохранять логи в эластике, но и собирать определенные метрики, сохраняя их в собственной базе данных.
Основные сервисы и их работа:
- Служба доступа к API Vimb - основная цель - единая точка взаимодействия с NRA, контроль всех ограничений на каждый метод, налагаемых NRA, таких как максимальное количество одновременно вызываемых потоков, контроль максимально допустимого объема данных, получаемых в определенном время, максимальное количество вызовов методов за определенное время
- Служба синхронизации и загрузки данных Vimb. По заданному расписанию загружает и синхронизирует данные из Vimb через сервис доступа к API Vimb.
- Служба доступа к данным.
Включает в себя предоставление всех необходимых данных для работы клиентской части.
- Сервис расчета медиапоказателей, рассчитывающий фактические и прогнозируемые показатели рекламных кампаний.
Фактические показатели рассчитываются на базе СУБД ClickHouse.
- Набор сервисов для автоматизации рекламных кампаний.
Среди основных функций — автономное управление кампаниями, включая оптимизацию и постановку рекламных кампаний, уведомления клиентов о статусе и показателях рекламной кампании, а также ряд других функций, облегчающих жизнь Дж.
Сухие цифры о работе системы TV Programmatic
Среднее количество кампаний в месяц, управляемых системой | 249 рекламных кампаний |
Среднее количество действий с рекламными роликами в контролируемых рекламных кампаниях в день | 24 000 добавлений, 19 000 удалений, 265 000 оставшихся мест, подходящих для участия в кампании.
|
Количество фиксированных мест размещения в год | 4 732 657 роликов, из которых 3 535 984 были показаны через Programmatic TV. Примерно 75% от общего объема фиксированных размещений на Национальном ТВ, Региональном ТВ и Тематическом ТВ.
|
Количество персонажей в годовом бюджете кампаний, контролируемых через TV Programmatic | 11-значный бюджет, управляемый системой |
Ээффективность Programmatic TV по сравнению с ручным производством, выполняемым человеком в идентичных кампаниях с той же целевой аудиторией, набором параметров и бюджетом | Увеличение на 5 - 10% средней посещаемости рекламной кампании |
Сокращение трудозатрат, связанных с размещением и мониторингом рекламных кампаний при использовании Пторгамматик ТВ | Снизить трудозатраты на 40-50% |
-
Основные Этапы Гибких Методологий
19 Oct, 24 -
Отслеживание Мобильных Активов Стало Проще
19 Oct, 24 -
Реклама Хочет Быть Полезной
19 Oct, 24