За последнее десятилетие то, как мы создаем программное обеспечение, изменилось. По мере того, как использование искусственного интеллекта (ИИ) становится массовым явлением, данные становятся новой нефтью. И хотя машинное обучение сосредоточилось на методах и алгоритмах обнаружения закономерностей в данных, важность сбора правильных данных привела к новой парадигме — ориентированному на данные подходу к ИИ. Это означает, что нам нужен свежий взгляд на то, как мы обучаем машины — включая понимание того, что означают правильные данные, как мы их получаем, как фиксируются знания в предметной области, как мы преодолеваем предубеждения и как мы гарантируем, что создаем правильный продукт.
Хотя в этой статье представлен свежий взгляд на обучающую сторону машинного обучения, если вам нужно краткое введение в ML, ознакомьтесь с этой статьей Сэма Дроздова, предназначенной для дизайнеров, и отличной отправной точкой для методов обучения. Еще одна близкая по духу статья — эта Джоэла ван Бодегравена, в которой рассказывается о принципах проектирования UX на основе ИИ. Наконец, в этой статье Punchcut рассказывается о том, как спроектировать сбор данных со стороны ML UX.
Краткое введение в то, как создается ИИ
Сегодня ИИ используется в продуктах и услугах, которые мы используем ежедневно для автоматизации рутинных задач, упрощения взаимодействия за счет помощи пользователям и предоставления удовольствия от персонализации. Лучшие приложения обеспечивают тонкое, но важное улучшение пользовательского опыта, которое подсознательно мешает нам переключиться на менее интеллектуальную альтернативу.
Google Mail — отличный пример этого (я уверен, что другие почтовые клиенты также имеют подобные функции). Он обеспечивает потрясающий пользовательский опыт, отчасти благодаря невероятной инженерной работе переднего и заднего плана, а отчасти за счет предоставления интеллектуальных функций, таких как следующие:
- Автоматизация. За последние несколько лет я редко видел спам в своем основном почтовом ящике. Вероятно, где-то в облаке сидит классификатор, который изучил шаблоны рассылки спама с использованием массивных наборов данных электронной почты.
- Помощь. Набирать электронные письма стало проще, чем когда-либо, благодаря функции автозаполнения. Он даже знает контекст письма, помогая мне печатать любезности с именами получателей. Компания научилась делать это, находя закономерности в том, как люди составляют электронные письма с семьей, друзьями, коллегами и т. д.
- Персонализация: она помечает важные для меня вещи и сортирует почту по личным, социальным обновлениям, рекламным акциям, обновлениям и форумам, чтобы мне было легче узнать, где что находится. Из нескольких примеров, которые я привел, я узнал, какие электронные письма я считаю важными.
Я широко использовал слово «узнал» выше. У Google Mail нет собственного разума. Чтобы создать такие искусственно интеллектуальные функции, специалисты по данным используют алгоритмы машинного обучения для экспериментов, создания и итерации моделей, которые обнаруживают закономерности во входящих данных и генерируют идеи или выполняют такие задачи, основанные на знаниях, как человек. Затем команды разработчиков работают вместе, чтобы создать этот опыт, разрабатывая внешний и внутренний интерфейсы. Чтобы поддерживать модель в актуальном состоянии, команды MLOps создают конвейеры для поиска данных, подготовки обучающих примеров, а также обучения и развертывания моделей.
Очевидно, что усилия, необходимые для запуска модели машинного обучения в производство, велики.
Почему нужно говорить об обучающих машинах?
В долгосрочной перспективе нам всем нужно будет знать, как научить машины делать то, что нам нужно. Думайте о машинном обучении как о способе настройки программного обеспечения под себя. ИИ, в конце концов, существует, чтобы помогать нам. Нам нужно знать, когда он работает хорошо для нас, какие у него есть недостатки, как он реагирует на то, что мы его тренируем, и как это исправить, когда он обрел собственное мнение и не работает так, как нужно. мы этого хотим. Этот навык понадобится почти всем — от исследователя-биолога, который хочет, чтобы интеллектуальный микроскоп обнаруживал и анализировал конкретные клетки, которые они ищут, до фермера, который использует интеллектуальные тракторы на своих полях. пациент и врач, которые оба полагаются на результаты теста на рак, проведенного с использованием ИИ. Хорошо, может быть, это не так долго, как я упомянул в начале этого абзаца.
Хорошая новость в том, что мы уже знаем, как обучать машины. Мы научили алгоритм Netflix рекомендовать нам фильмы, которые нам нравятся, оценивая их. Даже подростки знают, как получить нужный контент, который они ищут в TikTok, ставя лайки и просматривая то, что они хотят видеть больше, и быстро прокручивая то, что чудище.
В краткосрочной перспективе продуктовые команды, поставляющие функции ИИ, наиболее остро нуждаются в том, чтобы убедиться, что они используют правильные данные для создания своих продуктов и услуг. В конце концов, модель, обученная на плохих данных, будет плохо работать. В рамках этого нового подхода им необходимо предпринять целенаправленные усилия для создания правильного набора данных для обучения модели, сохраняя при этом модель/код постоянными (по крайней мере, до тех пор, пока не будет больше улучшения производительности, которое можно было бы выжать из данных).
Эта парадигма называется Data-Centric AI.
В этом случае фокус ИИ, ориентированного на данные, должен быть на «обучающей» стороне (в отличие от «обучающей» стороны машинного обучения). Это необходимо:
- Правильные учителя
- Правильная курсовая работа
- Правильные тренировочные программы
Правильные учителя
В то время как специалисты по обработке и анализу данных до сих пор полностью отвечали за запросы данных и создание моделей, для ориентированного на данные подхода требуется сильная команда, которая понимает нюансы данных, варианты использования и то, как ИИ реагирует на них. что они могут научить машину правильно. Это создает возможность для создания новых ролей с новыми навыками обращения с обучающейся машиной как с черным ящиком и ее эффективного обучения.
Менеджер по продукту должен определить, что должна делать модель. Только в нескольких компаниях, с которыми я разговаривал, я обнаружил, что менеджер по продукту определяет, какую модель нужно построить. Чаще всего специалист по данным определяет требования к модели, создает спецификации и управляет задачами аннотирования. Они также далеки от конечного потребителя. Если вы хотите, чтобы функции искусственного интеллекта, которые вы создаете, увидели свет, менеджер по продукту, который понимает влияние на бизнес и улучшение взаимодействия с пользователем, должен определить, что должна делать модель.
Эксперт в предметной области должен оценивать данные. Если вы не контролируете данные, эксперт в предметной области привлекается в качестве консультанта по домену. Однако для подхода, ориентированного на данные, экспертом в предметной области должен быть тот, кто предоставляет начальные примеры того, как выглядят хорошие обучающие данные и насколько хорошо модель работает на невидимых данных. В то время как команды аннотаторов и специалисты по данным должны сыграть здесь свою роль, почти во всех командах, с которыми я разговаривал, окончательным арбитром в вопросе о том, какие данные являются хорошими, являются только один или два человека.
Операционный менеджер должен следить за тем, чтобы обучение проходило в нужное время. Важно передать вашу функцию в руки пользователя, чтобы вы получили правильную обратную связь о пользовательском опыте. Это означает, что, хотя специалисты по данным сосредоточены на улучшении модели, нам нужен кто-то, кто сосредоточится на том, чтобы убедиться, что мы собираем разнообразные данные для различных вариантов использования, особенно когда модель возвращается с некоторыми областями, которые нуждаются в улучшении. Предполагая, что часть обучения модели (полу)автоматизирована, эта роль гарантирует, что модель хорошо обучается для повторения данных.
Борец за достоверность данных должен гарантировать, что данные представляют разнообразие и разнообразие в реальном мире. Поскольку учителя — люди, мы склонны привносить свои человеческие предубеждения в модели, которые мы строим. Слушая различных участников дискуссии на конференции по здравоохранению в декабре прошлого года, я не мог не задаться вопросом, что, если самые передовые решения ИИ создаются больницами с богатыми пациентами, данные, на которых основана модель, могут не иметь примеров. из малообеспеченных районов или недостаточно представленных расовых/этнических групп. Предвзятость часто является непреднамеренной, но также может быть результатом предвзятой группы аннотаторов и рецензентов данных. Устранение предвзятости необходимо для создания этических решений ИИ. К счастью, движение за избавление обучающих данных от предвзятости набирает обороты.
Есть и другие заинтересованные стороны (например, спонсор проекта, аннотаторы данных, менеджеры проекта аннотирования и т. д.), но, возможно, я смогу подробнее остановиться на них позже. Это действительно занимает деревню.
Правильная курсовая работа
Вы могли видеть в разделе выше, что роль преподавателей заключается в создании правильной «курсовой работы» для модели. Подумайте об управлении данными.
Вообще говоря, чтобы убедиться, что модель хорошо работает в реальном мире, данные, на которых она обучается, должны соответствовать этому. Это накладывает некоторые ограничения на то, с какими данными мы можем обучать модель и как они получаются. Наилучшие данные берутся из конкретной реализации, где будет развернута конечная функция ИИ. Например, в нашем случае с Google Mail это были сами электронные письма. Для модели, развернутой внутри завода, это может быть камера, установленная на верхней части конвейерной ленты. Для автономного вождения — настоящие улицы в разных погодных условиях.
Правильные данные также зависят от типа модели, которую мы строим. То есть чему мы учим модель. При обучении машин видеть (т. е. компьютерному зрению) устройство захвата и условия освещения должны соответствовать условиям развертывания. При обучении машин чтению (то есть обработке естественного языка) нам нужно понимать, что данные будут поступать с шумом, поэтому нам может потребоваться автоматическая очистка данных при обучении модели, а также при ее развертывании. Аналогичные соображения возникают при обучении машин персонализации (т. е. рекомендациям), прослушиванию (т. е. обработке звука) и т. д.
Также важно знать, когда курсовая работа должна быть изменена и улучшена. Данные могут смещаться после развертывания моделей в рабочей среде. Отображение концепций также может меняться в зависимости от изменения поведения пользователя.
Правильные тренировочные программы
В то время как правильные учителя могут гарантировать, что курсовая работа будет правильной, необходимы правильные процессы, чтобы убедиться, что модель хорошо учится и приносит предполагаемый UX.
Источники данных и аннотации могут очень быстро стать дорогими. Для специалистов по данным доступны инструменты, которые помогают выбрать подмножество данных для аннотирования модели, помощь маркировщикам при аннотировании, обнаружение дрейфа данных и выявление предвзятости (гиперссылки — это просто примеры, есть и другие инструменты). там же). Нам нужно больше инструментов, чтобы помочь вышеперечисленным учителям лучше преподавать, не разбираясь в сложностях на уровне специалистов по данным. Это та область, где могут проявить себя решения без кода, такие как AI Hero.
После того, как вы обучили модель, план обучения на этом не останавливается. Вместо этого это итеративный процесс, в котором вы выполняете рутинные обновления в зависимости от производительности модели. Например, вы можете обнаружить, что некоторые похожие данные на самом деле помечены по-разному. Или, возможно, вы обнаружите несоответствия в аннотациях и вам нужно изменить инструкции по аннотации, и в результате повторно аннотировать некоторые старые данные.
Обновление онтологий и управление ими также попадают в это ведро — когда вы решаете, что вам нужен новый класс или атрибут в классе, и решаете запросить частичные аннотации для обновленного класса или атрибута.
Если из этой статьи вы начали думать о своем ИИ как о маленьком боте, которому нужно учиться и добиваться высоких результатов в реальном мире, позвольте мне лопнуть ваш пузырь и показать вам, как на самом деле выглядит классная комната. Вместо того, чтобы иметь только одну модель ИИ, подумайте о разных версиях модели, которые развиваются в классе. У вас всегда будет «модель-чемпион». По мере того, как ваши учителя собирают больше данных, очищают больше данных и повторяют их, ваша команда по науке о данных может создать одну или несколько моделей-претендентов, которые должны получить больше баллов, чем эта модель, чтобы стать новым чемпионом. Если правильные данные означают изменение тестов для недавно обнаруженных вариантов использования, то, возможно, более старая модель может работать лучше и стать новым чемпионом. Вам нужна сильная платформа MLOps для поддержки этого процесса искусственного интеллекта, ориентированного на данные.
Я, возможно, только царапаю поверхность здесь тем, что на самом деле идет на создание моделей, которые работают в реальном мире. Я буду писать серию сообщений в блоге, которые помогут копнуть глубже. Если вам интересно узнать больше, подпишитесь на меня, чтобы увидеть больше таких статей, как эти. Если вам интересно поделиться своими мыслями и точками зрения, я бы хотел поговорить. Я надеюсь, что, сосредоточив внимание на том, как мы обучаем машины помимо машинного обучения, мы сможем ускорить развертывание функций ИИ, которые помогают людям. До скорого.
Если вам понравилась статья, подпишитесь на me на Medium, чьи изменения в партнерской программе затрагивают таких авторов, как я.