Серия наблюдаемости ML

Модель отправлена; Что могло пойти не так?

Часть 2: Режимы отказа модели

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

Это приводит нас к естественному вопросу: что я должен отслеживать в производственной среде? Ответ, конечно, зависит от того, что может пойти не так.

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

Дрейф модели / концепции

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

Пример изменения концепции

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

Например, представьте, что вы пытаетесь предсказать настроение определенного обзора фильма, и ваша модель была обучена на обзорах начала 1970-х годов. Если ваша модель в чем-то хороша, она, вероятно, усвоила, что обзор «Ух ты, этот фильм был плохой» несет в себе негативные настроения; как бы то ни было, перенесемся в мир сленга 1980-х, и тот же самый отзыв может означать, что фильм был фантастическим.

Итак, исходные данные модели не изменились, но изменился результат - что произошло? Фундаментальная задача сопоставления естественного языка с настроениями изменилась с тех пор, как модель была обучена, в результате чего модель начала совершать ошибки там, где раньше она правильно предсказывала.

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

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

Дрейф данных / характеристик

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

Функция, уходящая от обучения

Представим, что вы только что развернули модель, которая предсказывает, сколько потоков будет транслироваться в первый день альбома в Spotify или Apple Music. Теперь, когда ваша модель была запущена в производство и правильно предсказывала метеорные удары Дрейка, вы начинаете замечать, что ваша модель начинает допускать серьезные ошибки.

Дрейф функций, вызывающий проблемы с производительностью модели

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

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

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

Учебно-производственный перекос

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

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

Каскадные отказы моделей

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

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

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

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

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

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

Выбросы

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

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

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

Выброс: отображение нижних измерений

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

Дрейф: группа прогнозов - одномерная статистика по выходным данным объекта или модели.

Выбросы: индивидуальный прогноз или небольшая группа прогнозов - многомерный анализ по функциям.

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

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

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

Противники

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

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

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

Резюме

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

Связаться с нами

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