Эта статья была первоначально размещена на нашем сайте компании. Платформа для разработчиков Lakera позволяет командам машинного обучения создавать отказоустойчивые модели компьютерного зрения.

На прошлой неделе компания Lakera провела свой первый веб-семинар Life vs ImageNet. У нас состоялись увлекательные дискуссии об основных проблемах создания машинного обучения (МО) для реальных приложений.

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

Вы можете получить доступ к записи вебинара на Youtube: Live vs. ImageNet — вебинар Lakera. Продолжайте чтение, чтобы ознакомиться с кратким изложением и основными выводами.

👋 Участники дискуссии

Ричард Шен (Уэйв)

Управление продуктами в Wayve, лондонском стартапе, занимающемся глубокими технологиями, который создает комплексные системы для автономного вождения.

Том Дайер (Genomics England)

Инженер по машинному обучению в Genomics England, работающий над проектом 100 000 геномов. Ранее он создавал системы искусственного интеллекта для радиологии, которые были развернуты в NHS для оказания реальной клинической помощи.

Питер Шульгин (Ковариант)

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

Пол Рубенштейн (Google)

Работал в Apple над масштабным созданием продуктов Computer Vision (CV) для устройств. Сейчас он прикладной исследователь в Google.

Матео Рохас Карулла (Лакера, модератор)

Основатель Lakera, кандидат наук в области машинного обучения, стал свидетелем быстрого роста возможностей машинного обучения за последнее десятилетие. Заинтересованы в том, как безопасно перенести это в производственные системы. Ранее работал в Google над поиском Google и узнал, как обеспечить надежную доставку в масштабе.

❓Вопросы

❓Вопросы

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

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

💡 В академических кругах основное внимание уделяется моделям. В промышленности основное внимание уделяется данным.

💡 Мир постоянно меняется, и вам необходимо убедиться, что ваши наборы данных отражают этот динамичный мир.

Метрики, определенные в академических кругах, могут не очень хорошо подходить для моделей в производстве. Как придумать метрику для реального мира? Достаточно ли одного показателя?

💡 Усреднение точности по классам для модели классификации бессмысленно, слишком много вариаций и неопределенностей.

💡 Большой выбор метрик информативен, нет необходимости смотреть на них постоянно, но есть возможность детализировать их при необходимости.

💡 Одной метрики недостаточно. Однако вам нужна метрика, которая определяет решения, слишком большое количество метрик может стать подавляющим. Вы можете создавать иерархии метрик, например, «критическую для безопасности метрику», чтобы помочь в принятии решений.

💡 Подумайте с точки зрения продукта, что можно перевести в сборники продуктов и полярную звезду. Соответствует ли ваш продукт тем вариантам использования, для которых он предназначен?

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

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

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

Насколько сложно инженерам внедрить методы, необходимые для реального машинного обучения?

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

💡 В академических кругах проблемы формулируются в виде проверочных, тестовых и тренировочных наборов, но в «реальном мире» вам не дается фиксированный тренировочный набор. У вас есть требования, и вы должны выяснить все остальное по ходу дела. Набор тестовых данных постоянно меняется. Вы хотите адаптировать и информировать свой продукт по мере его роста и появления новых требований.

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

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

💡 Очень важно заранее договориться о том, что означает успех.

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

💡 Легко попасть в ловушку непрерывного цикла итераций, так и не дойдя до конца.

💡 Как вы направляете информацию и знания для дальнейшего масштабирования?

Какие проблемы связаны с масштабированием (более крупный продукт, команда, количество пользователей)? Какие уроки и проблемы?

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

💡 «Оглядываясь назад, я удивлен дилетантским уровнем исследования кода, для меня было культурным шоком увидеть, как научные круги соотносятся с производственным проектированием».

Как лучше всего масштабировать усилия в области машинного обучения? Например от одной модели до 1000 моделей? Или от нескольких пользователей до миллионов пользователей?

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

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

💡 Чем больше вы развертываете, чем больше ошибок вы сталкиваетесь, тем больше вы можете тестировать поведение с большей степенью детализации.

Каковы проблемы более традиционных отраслей, пытающихся внедрить технологии ИИ?

Хотя не все отрасли одинаковы и имеют разные проблемы (например, строительство и медицина), у них есть общие проблемы. Скорость развертывания часто равна единице. Другая заключается в том, чтобы быть в состоянии очень прозрачно объяснить конечному пользователю, как система была протестирована для укрепления доверия.

Дополнительная проблема возникает при создании «общих» систем для нескольких вариантов использования. Например, на складе вы можете интерпретировать данный объект как одну коробку, но в другом варианте использования вы можете захотеть классифицировать его как поддон из 500 коробок. Это сложная задача, как обучить модель с таким разнообразием вариантов использования и ожиданий?

💡 Проблема с «общим» ИИ заключается в том, что одни и те же ситуации приводят к разному ожидаемому поведению в зависимости от сценария.

Как эти компании должны подготовиться к противоречащим друг другу вариантам использования?

Устоявшиеся отрасли имеют больше ориентированных на процессы задач и обеспечения качества (QA), уделяя особое внимание построению процессов и тому, как проводить успешные пилотные проекты. Затем они формулируют критерии того, что работает, и доводят это до масштаба.

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

Какие проблемы стоят перед появлением моделей фундаментов?

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

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

💡 Существует неотъемлемая предвзятость данных или базовой модели, которая может вызвать проблемы для последующих моделей.

💡 Оценка важна, вы не знаете, какое поведение усвоила модель.

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

Заключение

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

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

Очень ждем следующего вебинара! А пока не забудьте присоединиться к Momentum, нашему сообществу, чтобы обсуждать все, что связано с безопасностью ИИ.