Компании, впервые применившие ИИ в больших масштабах, сделали это с помощью собственных платформ машинного обучения (facebook, uber, LinkedIn и т. д.). Эти возможности теперь доступны в готовых продуктах. Стремление к MLOps привело к слишком большому выбору. Доступны сотни инструментов и не менее 40 платформ:
Это очень сложный ландшафт для навигации. Давайте разберемся с большими проблемами, а затем представим новый бесплатный материал, направленный на решение этих проблем.
Задача № 1: ошеломляющий выбор
Чип Хьюен собрал данные об сцене инструментов машинного обучения в 2020 году. Чип обнаружил 284 инструмента, и их число продолжает расти. При оценке не обязательно подробно рассматривать все эти инструменты, если можно сузить их до тех, которые наиболее важны для начала. Однако это непросто, потому что для этого нам нужны четкие категории, а категории MLOps не ясны…
Задача № 2: Размытые категории
Обычно мы получаем представление о том, что делает программное обеспечение, разбивая продукты по категориям. Есть попытки сделать это с помощью диаграммы ландшафта LFAI, ландшафта MAD и списков github. Но часто программное обеспечение машинного обучения делает несколько вещей и может подпадать под любую из нескольких категорий. Платформы особенно сложно классифицировать, поскольку они явно нацелены на выполнение более чем одной задачи.
Поскольку программное обеспечение, которое выполняет несколько функций, трудно классифицировать, все платформы машинного обучения, как правило, попадают в одну категорию «платформы». Это затемняет акцент каждой платформы, а также теряет все нюансы того, как разные платформы делают одни и те же вещи по-разному.
Задача № 3: меняющийся ландшафт
Категории машинного обучения трудно отслеживать отчасти потому, что постоянно появляются новые категории. Например, специализированные магазины существуют не так давно, но сейчас они составляют важную категорию. Это влияет и на платформы, поскольку платформы вводят большие новые функции и меняют акцент (частично в ответ на появление новых инструментов).
Вызов № 4: Сложные проблемы
МЛ сложный. Тоже большое поле. Платформы делают широкий спектр вещей, что означает понимание регрессии, классификации, nlp, обработки изображений, обучения с подкреплением, объяснимости, AutoML и многого другого.
Задача № 5: Диапазон ролей и заинтересованных сторон
Мало того, что проблемы разнообразны и сложны, существует также ряд ролей, участвующих в жизненном цикле машинного обучения. Специалисты по данным, инженеры по машинному обучению, инженеры по данным, SRE, менеджеры по продуктам, архитекторы, разработчики приложений, разработчики платформ, конечные пользователи и т. д. Разные роли имеют разные точки взаимодействия с программным обеспечением и разные потребности в нем.
Задача № 6: «Создать или купить» и другие противоречия
В сфере машинного обучения ведется много дискуссий о компромиссах между сборкой и покупкой. Насколько необходим организациям контроль над своим стеком? Сколько стоит этот контроль? «Строить против покупки» часто представляют как «или-или», но это скорее спектр. Это всего лишь один из запутанных споров в области машинного обучения (подумайте, насколько спорным является AutoML).
Как нам справиться со всем этим?
Давайте отдельно рассмотрим специализированные инструменты и платформы.
Что касается специализированных инструментов, то в сообществе mlops.com есть несколько отличных профилей, которые вы можете изучить на веб-сайте. Инструменты разбиты по категориям, а веб-сайт предлагает списки функций, ознакомительные видеоролики и функцию для сравнения инструментов бок о бок.
Для понимания ландшафта платформ и поиска компромиссов Thoughtworks выпустила Руководство по оценке платформ MLOps:
https://www.thoughtworks.com/what-we-do/data-and-ai/cd4ml/guide-to-evaluating-mlops-platforms
Это доступно бесплатно без какой-либо регистрации. В нем рассматривается, как различать платформы MLOps. Руководство рассматривает платформы MLOps с разных точек зрения и предлагает категории для их разбивки. Например, вот картинка из руководства, показывающая разницу между платформами и инструментами MLOps:
Это спектр с некоторыми универсальными платформами, пытающимися охватить весь жизненный цикл ML, специализированными инструментами, касающимися отдельных частей жизненного цикла, и между ними есть множество специализированных платформ, которые охватывают несколько элементов жизненного цикла, но не весь жизненный цикл. В другом месте руководства мы рассматриваем другие вопросы, такие как стратегии для платформ с низким кодом и AutoML,роли и персонажи, участвующие в MLOps, и как структурировать оценку в соответствии с потребностями ваша организация.
Понимание ландшафта платформ высокого уровня — это только часть оценки. Нам также необходимо применить эти знания и посмотреть, как сравнивать платформы друг с другом. Для этого мы выпустили сравнительную матрицу с открытым исходным кодом:
https://github.com/thoughtworks/mlops-платформы
Матрица структурирована таким образом, чтобы показать, как поставщики действуют по-своему, а также указать более подробную информацию в документации по продукту. Мы также включили в репозиторий ряд профилей, которые кратко и без маркетинга описывают направления продуктов популярных платформ.
Мы надеемся, что вы найдете этот материал полезным и приветствуете вклад в github. Не стесняйтесь задавать любые вопросы в slack mlops.community (и отметить там Райана Доусона, чтобы я это увидел).