№2. Разнообразие навыков: создание правильной команды машинного обучения

Это рассказ №2 из серии Летные проверки любого (большого) проекта машинного обучения.

Большой! у вас есть четкие KPI и более четкое понимание проблемы.

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

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

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

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

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

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

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

Бизнес-аналитик (BA):

Я отвечу на потребности бизнеса, чтобы убедиться, что мы решаем правильную бизнес-задачу.

Специалист по данным (DS):

Я переведу потребности бизнеса в математическую модель и модель машинного обучения

Инженер по машинному обучению (MLE):

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

Инженер по данным (Германия)

Я буду нести ответственность за создание конвейеров данных, чтобы сделать данные доступными, объединенными и для использования в автономном и онлайн-режиме.

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

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

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

Некоторые рабочие сценарии, которые я видел:

Небольшой проект или Proof of Concept (POC):

  • 1 DS или Backend, или MLE, или BA с курсами машинного обучения (единорог данных).
  • Они делают все возможное, чтобы создать доказательство концепции и внедрить его в производство, даже если оно «подключено».
  • Если проект будет успешным и будет расти, добавляются более жесткие инженерные профили.
  • В этот момент может оказаться, что с организационной точки зрения «естественным» будет для DS взять на себя руководство проектом. Тем не менее, это не всегда может соответствовать их карьерным целям. Возможно, они заинтересованы в переходе между проектами, создавая POC и обучая тех, кто позже будет отвечать, но не будет напрямую руководить проектом.

Малый или средний проект:

  • 1 BA + 1 DS + 1 MLE или Backend Engineer
  • DS определяет проблему, модели, генерирует тесты и делится метриками. Они работают вместе с бакалавром, который лучше понимает проблему.
  • Backend подключает все, что вам нужно для работы.

Средний или большой проект:

  • 1 BA + 1 DS + 1 MLE + 1 DE
  • DS определяет проблему, модели, генерирует тесты и делится метриками. Они работают вместе с бакалавром, который лучше понимает проблему.
  • Инженер по данным фокусируется на том, как добиться устойчивого управления данными, необходимыми для решения проблемы, и советует DS относительно компромиссов.
  • Инженер машинного обучения помогает DS автоматизировать отвод модели и обеспечивать ее мониторинг в реальном времени, а также подключает все необходимое для производства.

Большой проект:

  • 1 BA + 1 DS + 1 MLE + 2 DE
  • По мере роста проекта узкое место обычно больше связано с конвейером данных, чем с моделированием. Добавление людей к этой части проблемы обычно является хорошим решением.

Некоторые настройки, которые я видел, терпят неудачу:

Малый или средний проект:

  • 1 DS + 1 BE (без BA, который поддерживает и помогает).
  • В целом, и особенно на ранних этапах, наличие полных бизнес-аналитиков, назначенных для реализации инициативы, необходимо для успеха, чтобы гарантировать, что вы решаете правильную проблему.

Средний или большой проект:

  • 2 BA + 4 DS + 1 MLE + 1 DE
  • Добавление большего количества DS обычно быстро создает узкое место в способности производить эти новые тесты и идеи, в результате чего DS вынуждены либо смириться с тем, что не видят быстрого эффекта, либо выходить из своей желаемой роли построить бэкэнд.

Большой проект:

  • 1 BA + 2 DS + 2 MLE
  • Без учета экспертов, которые работают с конвейером данных, в среднесрочной перспективе возникнут проблемы с устойчивостью.

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