В январе 2021 года команда Glovo Machine Learning Platform приняла участие в одном из крупнейших мероприятий в сфере Machine Learning Operations (MLOPs): конференция TWIML Con AI Platforms.

Есть разные мнения о конференциях, которые длятся больше недели (TWIML — двухнедельная конференция), и особенно о тех, которые проходят онлайн (что по понятным причинам является стандартом в этом году). Однако это конкретное мероприятие, несмотря на некоторые чисто коммерческие разговоры, которые в силу своей субъективности имели сомнительную ценность, оказалось очень полезным источником информации для команды Glovo ML Platform. Неудивительно, что основное внимание на конференции было уделено самым «горячим» компонентам MLOps в наши дни: компонентам Feature Stores и управлению рабочим процессом машинного обучения.

В этом отчете мы хотели бы дать обзор 4 самых интересных докладов и поделиться нашими знаниями и мыслями:

Как Spotify масштабирует машинное обучение?

Вариант использования Spotify для машинного обучения во многом похож на вариант использования Glovo, однако он работает в большем масштабе. Как и в Glovo, они имеют в основном децентрализованную структуру обработки данных (DS) и пытаются связать проекты DS с целями компании и продукта.

Они самостоятельно обрабатывают отдельные компоненты и посвящают время созданию собственных инструментов для решения общих проблем, таких как:

  • Магазин функций, представляющий собой специально созданный репозиторий функций машинного обучения. Spotify разработал собственный инструмент — Jukebox. Это интересный инструмент для анализа, так как мы медленно, но неуклонно приближаемся к планированию Feature Store как части предложения Glovo ML Platform.
  • Kubeflow Pipelines, инструмент, который мы тестировали в качестве оркестратора рабочих процессов машинного обучения, однако, в конце концов, мы решили выбрать альтернативное решение (рабочие процессы Argo) по разным причинам (используя SDK Kubeflow Pipelines SDK для создания конвейеры с использованием Python могут использоваться в качестве альтернативы, упрощающей создание конвейеров для специалистов по обработке и анализу данных Glovo).
  • Собственный компонент обслуживания. Он реализует простую и интуитивно понятную парадигму: пользователь отправляет входные данные компоненту (модель или набор функций), и он возвращает интуитивно ожидаемый результат (конечную точку или модель).
  • Главная страница ML, централизованное хранилище внутренних проектов машинного обучения с удобным пользовательским интерфейсом. Spotify рассматривает его как средство для совместной работы в команде и инструмент для обнаружения проектов машинного обучения. Интересно, что не так давно у нас была похожая идея, и мы, возможно, вернемся к ней в долгосрочной перспективе, чтобы предоставить бесшовное централизованное решение.

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

Унифицированные хранилища функций MLOps и развертывание моделей (машина для сращивания)

Splice Machine — это инструмент с открытым исходным кодом, основанный на одной базе данных. Концептуально их идея настолько проста, что кажется удивительным, как они могут так много сделать на ее основе. Используя единый механизм базы данных, они могут обеспечить задержку, близкую к одноразрядной миллисекунде, быть ACID-совместимыми и обрабатывать не только онлайновые, но и предварительно вычисленные модели унифицированным способом.

Их решение предлагает ряд функций: от развертывания модели до хранилища функций. В целом, с точки зрения варианта использования, Splice Machine является репрезентативным инструментом, который появится в 2020/2021 гг., охватывающим полный цикл MLOps от создания функций до мониторинга моделей. Возможным путем с низким уровнем риска было бы начать экспериментировать с этим инструментом на основе их бесплатной версии сообщества.

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

TwimlCon: создайте сквозной рабочий процесс машинного обучения для вашей организации

С этим докладом выступил Mohamed Elgendy, вице-президент по инженерным вопросам в Rakuten. В своем выступлении Мохамед попытался проанализировать сквозной рабочий процесс машинного обучения и обозначил текущие основные проблемы, связанные с внедрением машинного обучения в компаниях среднего размера.

По его мнению, основными проблемами, с которыми сталкиваются организации при масштабировании операций машинного обучения, являются:

  • Ограниченный доступ к данным
  • Ограниченная инфа по машинному обучению
  • Отключенный рабочий процесс машинного обучения
  • Несоответствие технологии
  • Ограниченная видимость
  • Инженеры машинного обучения тратят слишком много времени на решение технического долга
  • Компании-гиганты создают собственную платформу машинного обучения

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

  • Есть ли у нас оптимизированный рабочий процесс для обработки всех этапов рабочего процесса машинного обучения?
  • Воспроизводятся ли наши эксперименты?
  • Достаточно ли у нас автоматизированных сборок, обучения и развертывания?
  • Наши системы машинного обучения выходят из строя бесшумно?

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

Взгляд Algorithmia на тенденции 2021 года

Диего Оппенгеймер, генеральный директор Algorithmia, рассказал о своем взгляде на наиболее значимые тенденции машинного обучения в 2021 году, обозначив 10 тенденций, над которыми мы можем поразмышлять:

  • Несмотря на все инструменты и усилия, которые должны ускорить развертывание модели машинного обучения, совокупный технический долг, сложности в управлении и проблемы интеграции по-прежнему увеличивают время развертывания.
  • DS по-прежнему тратят слишком много времени на развертывание. По словам Диего, 38% организаций тратят более 50% времени специалистов по данным на развертывание, создание и настройку моделей машинного обучения.

Он также перечислил 5 проблем, которые приводят к неэффективности жизненного цикла машинного обучения:

  • Застрял в лаборатории
  • Отключенные команды
  • Несоответствие технологии
  • Участие заинтересованных сторон
  • Скрытый технический долг

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

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

Команда Glovo ML Platform: Лоренцо Аррибас, Амир Хоссейн, Мигель Фагундес и Максим Халилов