Мне часто задают вопрос руководители, изучающие машинное обучение в своих организациях: «Какова минимальная жизнеспособная команда машинного обучения?». Иными словами, на самом деле они спрашивают: «Сколько мне нужно вложить, чтобы увидеть начальную рентабельность инвестиций?».

Это отличный вопрос (и на самом деле два отдельных вопроса, но об этом позже), который относительно недостаточно изучен. Как сообщество, мы проводим много времени, говоря обо всех способах, которыми программное обеспечение поглощает мир, и о том, как ИИ поедает программное обеспечение; недостаточно нашего разговора о том, как эффективно и практически начать работу в качестве руководителя в этой области.

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

  1. Менеджер продукта ИИ/Владелец продукта ИИ
  2. Инженер данных
  3. ML инженер
  4. Исследователь машинного обучения

Относительно немногим организациям нужны все четыре, и уж точно не одновременно. Я считаю, что найм в таком порядке позволит вам добавить ясности и снизить риск с каждым наймом, а также максимизирует возможность увидеть положительную рентабельность инвестиций.

Наем не по порядку — распространенная основная причина многих неэффективных действий, которые мы часто наблюдаем в командах прикладного машинного обучения в отрасли.

Другая распространенная первопричина — непонимание роли или ожидание того, что один человек будет носить слишком много очень разных шляп. У нас нет стандартных названий в отрасли, поэтому может быть полезно пояснить, что я имею в виду под каждой из этих ролей.

Менеджер по продуктам ИИ

Под этим я не подразумеваю менеджера по продукту, который думает, что машинное обучение может помочь их продукту. Я имею в виду кого-то с глубоким опытом работы с продуктом и с глубоким опытом машинного обучения. ИМХО, это самый важный пункт найма, который нужно правильно организовать.

Вам нужен кто-то, кто переведет проблемы вашего бизнеса/продукта/пользователя в разрешимую проблему машинного обучения. Чтобы сделать это эффективно, требуется глубокое сочувствие к проблемам продукта/пользователя, а также ясное представление о том, что могут и чего не могут достичь методы машинного обучения.

Например:

  • Им необходимо глубоко понимать стоимость продукта/пользователя при ложном срабатывании по сравнению с ложноотрицательным, а также приемлемый порог для каждого из различных способов, которыми система машинного обучения может быть включена в более крупный продукт. Что безопаснее для гипотетической системы обнаружения рака: следует ли агрессивно выявлять области, которые отдаленно могут быть раковыми? Или следует выявлять только области, которые определенно являются злокачественными?
  • Они должны понимать путь пользователя — от потенциального клиента до промоутера — и быть в состоянии помочь более крупной команде понять компромиссы между точностью, интерпретируемостью и предвзятостью. Для гипотетической системы контроля качества виджетов: вы бы предпочли, чтобы система точно помечала меньшее количество виджетов (без объяснения причин) или чтобы она могла объяснить предполагаемые проблемы с контролем качества, но для потенциально большего количества виджетов, чем необходимо? Что полезнее: более производительная система или более интерпретируемые решения?
  • Они должны быть в состоянии построить дорожную карту продукта, которая понимает, что будущие итерации системы могут вести себя совсем иначе, чем текущая итерация, и что, тем не менее, опыт работы с продуктом должен быть плавным и стабильным. Приемлемо ли общее повышение производительности вашей системы, если оно повышает производительность для подавляющего большинства ваших клиентов, но полностью портит впечатление от небольшой части ваших клиентов?
  • Насколько прозрачными должны быть ваши службы поддержки клиентов? Что должна сказать служба поддержки, когда клиент хочет узнать, почему законная транзакция была отмечена как мошенническая? Прозрачность — это хорошо?
  • …и так далее.

Правильные ответы не являются алгоритмическими или даже отдаленно техническими, но сильно влияют на подходы, которые использует остальная часть команды. Что еще более важно, если ваш менеджер продукта ИИ не обдумал эти вопросы и не согласовал ответы, остальная часть вашей команды будет индивидуально делать свои собственные предположения, несовместимость которых вы обнаружите только во время запуска.

Инженер данных

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

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

ML инженер

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

Если у вас есть проприетарные модели, ваш инженер по машинному обучению — это тот, кто переводит результаты исследований в лаборатории в улучшения продукта в реальном мире. Как минимум, это включает в себя создание, развертывание и масштабирование API-интерфейсов, но, скорее всего, это также включает каталогизацию и модели регрессионного тестирования, а также создание инфраструктуры для A/B-тестирования или постепенного развертывания новых моделей. Некоторые формы систем машинного обучения, такие как системы рекомендаций или системы активного обучения, требуют глубокой интеграции между структурой развертывания и структурой модели. Другие производственные требования, такие как низкая задержка или ограниченный объем памяти, могут потребовать от инженера по машинному обучению помощи в повышении производительности модели (путем квантования или обрезки нейронной сети, предварительной обработки изображений в соответствии с распределением вашего набора данных или чего-то еще). полностью). Со временем ваш инженер по машинному обучению также создаст инструменты для мониторинга ваших производственных систем на предмет дрейфа наборов данных.

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

Интерлюдия: Data Engineer vs ML Engineer

Нужны ли нам оба? Чем они отличаются?

Исторически сложилось так, что эти роли используют разные наборы навыков и имеют разные карьерные пути. Конечно, есть способные инженеры, которые могут делать и то, и другое, но они могут не найти обе задачи в равной степени мотивирующими.

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

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

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

Исследователь машинного обучения

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

Вы не знаете, какой исследователь вам нужен. Кто-то, кто только что получил докторскую степень в области машинного обучения, вероятно, очень успешен в крошечной области. Мало того, что исследователи компьютерного зрения полностью отличаются от исследователей НЛП, в каждой области есть широкий спектр специальностей, которые не пересекаются. Тот, кто фокусируется на методах SLAM, будет иметь мало общего с тем, кто последние несколько лет работал над распознаванием лиц. Пока вы не узнаете, какие варианты использования могут реально обеспечить рентабельность инвестиций для вашего продукта с вашими данными, вам может понадобиться широта, а не глубина.

Возможно, ваша организация не подходит для них. У опытного кандидата наук в области машинного обучения есть множество вариантов карьеры. Если ваша организация только начинает заниматься машинным обучением, можете ли вы на законных основаниях предоставить им прекрасную возможность карьерного роста? Будет ли у них сообщество сверстников, наставничество, возможности роста? Исследования (как и дизайн) — это совместный спорт: многие прорывные моменты происходят в результате обсуждения проблем с вашими коллегами, опробования различных идей и поддержки в строгом следовании обоснованной линии исследования, даже если первоначальные результаты разочаровывают. Если вы еще не можете создать атмосферу сотрудничества, возможно, вы не настраиваете их на успех.

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

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

Недавний выпускник PhD имеет опыт в:

  • Ведение фундаментальной науки, так как прикладная работа менее интересна в академическом плане
  • Публикация статей в этом пространстве
  • Быть яростно настойчивым в решении одной узкой проблемы
  • Решение проблем новым и принципиальным способом

И наоборот, минимально жизнеспособная команда машинного обучения в отрасли:

  • Применяет машинное обучение «достаточно», чтобы повлиять на бизнес
  • Ориентирован на влияние, а не на публикацию. Публикации рассматриваются как способ привлечения и удержания лучших специалистов, но не являются целью
  • Необходимо адаптировать по мере развития требований, имеющихся данных, правил (и т. п.)
  • Ориентирован на надежность и эксплуатационную надежность, а не на новизну
  • Уравновешивает прагматизм и ограничения продукта с принципиальными подходами

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

Другие мысли

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

Ничто из этого не касается других значимых вопросов (как найти и нанять этих людей, как настроить команду, чтобы добиться успеха, как оценить работу команды), но это уже гораздо более длинный пост, чем я предполагал.

Наконец, это, естественно, всего лишь мнение одного человека, полученное из нашего с Хопом опыта. Я хотел бы узнать от других участников сообщества — какое еще сочетание ролей, по вашему мнению, было эффективным в минимально жизнеспособной команде прикладного машинного обучения? Дайте мне знать: @AnkurHop

Мне очень нравится думать о том, как создать эффективную команду с учетом уникальных ограничений организации. Если вы активно работаете над этим и могли бы воспользоваться советом или вторым мнением, не стесняйтесь протянуть руку.

Благодарим Chris W, Deepna D, Eleanor J, Kelly D, Scott Y, Michael B, Sarah A, Greg N и многих других за отзывы о предыдущих черновиках этой статьи.

Первоначально опубликовано на https://www.hoplabs.com 29 июля 2021 г.