Это гостевой пост, написанный в соавторстве с Тамиром Рубинским и Авиадом Араниасом из Nielsen Sports..
Нильсен Спортс формирует мировые средства массовой информации и контент как мирового лидера в области анализа аудитории, данных и аналитики. Благодаря нашему пониманию людей и их поведения на всех каналах и платформах, мы даем нашим клиентам независимый и действенный интеллект, чтобы они могли подключаться и взаимодействовать со своей аудиторией — сейчас и в будущем.
Наша миссия в Nielsen Sports — предоставить нашим клиентам — брендам и правообладателям — возможность измерить окупаемость инвестиций (ROI) и эффективность рекламной кампании спортивного спонсорства по всем каналам, включая телевидение, Интернет, социальные сети и даже газеты, а также обеспечить точную таргетинговую деятельность на местном, национальном и международном уровнях.
В этом посте мы описываем, как компания Nielsen Sports модернизировала систему, в которой работают тысячи различных моделей машинного обучения (ML), используя многомодельные конечные точки Amazon SageMaker (MME), и сократила эксплуатационные и финансовые затраты на 75 %.
Проблемы с сегментацией видео на канале
Наша технология основана на искусственном интеллекте (ИИ) и, в частности, компьютерном зрении (CV), что позволяет нам отслеживать известность бренда и точно определять его местоположение. Например, мы определяем, находится ли бренд на баннере или на рубашке. Кроме того, мы определяем расположение бренда на товаре, например, верхний угол вывески или рукав. На следующем рисунке показан пример нашей системы тегов.
Чтобы понять наши проблемы с масштабированием и затратами, давайте посмотрим на некоторые репрезентативные цифры. Каждый месяц мы определяем более 120 миллионов показов брендов по разным каналам, и система должна поддерживать идентификацию более 100 000 брендов и вариаций различных брендов. Мы создали одну из крупнейших в мире баз данных о впечатлениях от брендов, содержащую более 6 миллиардов точек данных.
Наш процесс оценки средств массовой информации включает в себя несколько этапов, как показано на следующем рисунке:
- Во-первых, мы записываем тысячи каналов по всему миру, используя международную систему записи.
- Мы транслируем контент в сочетании с расписанием трансляций (Electronic Programming Guide) на следующий этап, который представляет собой сегментацию и разделение самих игровых трансляций и другого контента или рекламы.
- Мы осуществляем мониторинг СМИ, добавляя в каждый сегмент дополнительные метаданные, такие как результаты лиг, соответствующие команды и игроки.
- Мы проводим анализ видимости брендов, а затем объединяем информацию об аудитории для расчета стоимости кампании.
- Информация доставляется клиенту с помощью информационной панели или аналитических отчетов. Аналитику предоставляется прямой доступ к необработанным данным или через наше хранилище данных.
Поскольку мы работаем в масштабе более тысячи каналов и десятков тысяч часов видео в год, нам необходима масштабируемая система автоматизации процесса анализа. Наше решение автоматически сегментирует трансляцию и умеет изолировать нужные видеоклипы от остального контента.
Мы делаем это, используя разработанные нами специальные алгоритмы и модели для анализа конкретных характеристик каналов.
В общей сложности мы запускаем в производство тысячи различных моделей для поддержки этой миссии, которая является дорогостоящей, сопряжена с операционными накладными расходами, подвержена ошибкам и медленна. На запуск в производство моделей с новой архитектурой ушли месяцы.
Именно здесь мы хотели внедрить инновации и перестроить нашу систему.
Экономичное масштабирование моделей CV с использованием MME SageMaker.
Нашу устаревшую систему сегментации видео было сложно тестировать, изменять и поддерживать. Некоторые из проблем включают работу со старой структурой машинного обучения, взаимозависимости между компонентами и трудный для оптимизации рабочий процесс. Это связано с тем, что для конвейера мы использовали RabbitMQ, который представлял собой решение с сохранением состояния. Чтобы отладить один компонент, например извлечение функций, нам пришлось протестировать весь конвейер.
Следующая диаграмма иллюстрирует предыдущую архитектуру.
В рамках нашего анализа мы выявили узкие места производительности, такие как запуск одной модели на машине, что показало низкую загрузку графического процессора на уровне 30–40%. Мы также обнаружили неэффективную работу конвейеров и алгоритмы планирования для моделей.
Поэтому мы решили создать новую мультитенантную архитектуру на основе SageMaker, которая будет реализовывать улучшения по оптимизации производительности, поддерживать динамические размеры пакетов и одновременно запускать несколько моделей.
Каждый запуск рабочего процесса нацелен на группу видео. Каждое видео длится от 30 до 90 минут, и каждой группе нужно запустить более пяти моделей.
Давайте рассмотрим пример: видео может длиться 60 минут и состоять из 3600 изображений, и на первом этапе каждое изображение должно быть выведено с помощью трех разных моделей машинного обучения. С помощью MME SageMaker мы можем запускать пакеты из 12 изображений параллельно, и весь пакет выполняется менее чем за 2 секунды. В обычный день у нас есть более 20 групп видео, а в насыщенный выходной день у нас может быть более 100 групп видео.
На следующей диаграмме показана наша новая упрощенная архитектура с использованием SageMaker MME.
Полученные результаты
Благодаря новой архитектуре мы достигли многих желаемых результатов и некоторых невидимых преимуществ по сравнению со старой архитектурой:
- Лучшее время работы – Увеличив размер пакета (12 видео одновременно) и одновременно запустив несколько моделей (пять моделей параллельно), мы сократили общее время работы конвейера на 33 %, с 1 часа до 40 минут.
- Улучшенная инфраструктура – С помощью SageMaker мы обновили существующую инфраструктуру и теперь используем новые экземпляры AWS с новыми графическими процессорами, такими как g5.xlarge. Одним из самых больших преимуществ этого изменения является немедленное повышение производительности за счет использования оптимизации TorchScript и CUDA.
- Оптимизированное использование инфраструктуры – Имея единую конечную точку, на которой может размещаться несколько моделей, мы можем сократить как количество конечных точек, так и количество компьютеров, которые нам необходимо обслуживать, а также увеличить использование одной машины и ее графического процессора. Для конкретной задачи с пятью видеороликами мы теперь используем только пять машин экземпляров g5, что дает нам 75% экономической выгоды по сравнению с предыдущим решением. Для типичной рабочей нагрузки в течение дня мы используем одну конечную точку с одним компьютером g5.xlarge с загрузкой графического процессора более 80 %. Для сравнения, предыдущее решение имело загрузку менее 40%.
- Повышенная маневренность и производительность – Использование SageMaker позволило нам тратить меньше времени на миграцию моделей и больше времени на улучшение наших основных алгоритмов и моделей. Это повысило производительность наших инженерных команд и команд по обработке данных. Теперь мы можем исследовать и развернуть новую модель машинного обучения менее чем за 7 дней вместо более чем 1 месяца, как раньше. Это улучшение скорости и планирования на 75%.
- Лучшее качество и уверенность – Благодаря возможностям A/B-тестирования SageMaker мы можем постепенно развертывать наши модели и иметь возможность безопасно откатить их назад. Более быстрый жизненный цикл производства также повысил точность и результаты наших моделей машинного обучения.
На следующем рисунке показано использование нашего графического процессора с предыдущей архитектурой (30–загрузка графического процессора 40%).
На следующем рисунке показано использование графического процессора с новой упрощенной архитектурой (загрузка графического процессора 90%).
Заключение
В этом посте мы рассказали, как компания Nielsen Sports модернизировала систему, на которой работают тысячи различных моделей, с помощью MME SageMaker, и снизила их эксплуатационные и финансовые затраты на 75%.
Для дальнейшего чтения обратитесь к следующему:
Об авторах
Эйтан Села — специалист по генеративному искусственному интеллекту и машинному обучению, специалист по архитектуре решений в Amazon Web Services. Он работает с клиентами AWS, предоставляя рекомендации и техническую помощь, помогая им создавать и использовать решения генеративного искусственного интеллекта и машинного обучения на AWS. В свободное время Эйтан любит бегать трусцой и читать последние статьи о машинном обучении.
Гэл Голдман — старший инженер-программист и старший архитектор корпоративных решений в AWS со страстью к передовым решениям. Он специализируется и разработал множество сервисов и решений распределенного машинного обучения. Гэл также помогает клиентам AWS ускорить и решить проблемы проектирования и генеративного искусственного интеллекта.
Таль Панчек — старший менеджер по развитию бизнеса в области искусственного интеллекта и машинного обучения в Amazon Web Services. Как специалист по BD, он отвечает за рост внедрения, использования и доходов от сервисов AWS. Он собирает информацию о потребностях клиентов и отрасли и сотрудничает с командами продуктов AWS для внедрения инноваций, разработки и доставки решений AWS.
Тамир Рубинский возглавляет отдел глобальных исследований и разработок в Nielsen Sports, привнося обширный опыт в создании инновационных продуктов и управлении высокопроизводительными командами. Его работа изменила оценку спонсорства спортивных СМИ с помощью инновационных решений на базе искусственного интеллекта.
Авиад Араниас — руководитель группы MLOps и архитектор Nielsen Sports Analysis, который специализируется на создании сложных конвейеров для анализа видео спортивных событий по многочисленным каналам. Он преуспевает в создании и развертывании моделей глубокого обучения для эффективной обработки крупномасштабных данных. В свободное время он любит печь вкусную неаполитанскую пиццу.