Представляем MAPIE, пакет, совместимый с scikit-learn, разработанный Quantmetry, который позволяет легко оценивать неопределенности, связанные с вашей любимой моделью машинного обучения

После 25 лет успешной работы современное машинное обучение (ML) все еще не соответствует понятию неопределенности. Доверительные интервалы не являются модным явлением и практически отсутствуют в лучших библиотеках с открытым исходным кодом, посвященных машинному обучению. Однако с точки зрения бизнеса само понятие неопределенности глубоко укоренилось в управлении рисками и является обязательным условием для любого надежного искусственного интеллекта (ИИ) в производстве. В этой статье мы представляем MAPIE, пакет с открытым исходным кодом, разработанный в Quantmetry как научно-исследовательский проект Quantlab, вновь вводящий понятие неопределенности в ИИ, поддерживаемый независимой от модели и удобной для пользователя реализацией с открытым исходным кодом.

Прогнозы ИИ всегда неопределенны

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

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

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

Необходимость неопределенностей в ИИ

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

Оценка неопределенностей, связанных с прогнозами ИИ, уже является обязательной в таких чувствительных областях, как автономное вождение или медицинские изображения, где решения, принимаемые ИИ или основанные на нем, оказывают прямое влияние на человеческую жизнь. Количественная оценка неопределенностей скоро станет обязательной и в других областях, поскольку понятия точности и надежности модели играют центральную роль в предложении Европейского парламента и Совета по регулированию искусственного интеллекта, доступном здесь. Мы можем, например, процитировать Раздел 3.3 этого предложения: Требования будут касаться данных, документации и прослеживаемости, предоставления информации и прозрачности, человеческого надзора, надежности и точности и будут обязательными для систем искусственного интеллекта высокого риска. Таким образом, оценка неопределенностей моделей ИИ становится нормативной проблемой для всех компаний, имеющих дело с системами ИИ с высоким уровнем риска, независимо от их сферы деятельности. Помимо секторов с высоким уровнем риска, все ИИ могут использовать количественную оценку неопределенности, укрепляя доверие и поддерживая управление изменениями.

Почему мы разработали MAPIE

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

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

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

Вот почему мы разработали MAPIE, что расшифровывается как Model Agnostic Prediction Interval Estimator. MAPIE позволяет легко оценивать неопределенности, используя вашу любимую модель машинного обучения, совместимую с scikit-learn, через простой удобный API. Пакет основан на самых современных методах количественной оценки неопределенности, которые имеют серьезные теоретические гарантии. В настоящее время MAPIE может использоваться только для задач регрессии, но его расширение для классификации и других параметров находится в стадии активной разработки.

«С MAPIE я уверен в своих сомнениях»

MAPIE основан на методах повторной выборки, представленных в новейшей исследовательской статье R. Foygel-Barber et al. (2021) [1] для оценки интервалов прогнозирования в настройках регрессии и получения надежных гарантий. MAPIE реализует не менее 8 различных методов из этой статьи, в частности, Jackknife + и CV +.

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

На практике, когда вы стремитесь к доверительному интервалу, скажем, 90%, это означает, что вы хотите быть на 90% уверенным в том, что истинная ценность вашего нового наблюдения находится в пределах вашего прогнозного интервала. Исторические методы, такие как стандартные методы начальной загрузки или складного ножа, не дают вам никаких гарантий по этому поводу и могут страдать от высокой нестабильности. С помощью этого метода теоремы, описанные Foygel-Barber et al. гарантировать, что этот шанс всегда выше 80%, а на практике в большинстве случаев очень близок к 90%. Другими словами, это означает, что ~ 90% целевых значений ваших новых тестовых образцов будут лежать в интервалах прогнозирования, оцененных с помощью метода Jackknife +.

Однако стандартный метод Jackknife + является сложным в вычислительном отношении, поскольку он требует вычислить столько моделей, сколько количество обучающих выборок, поэтому можно принять более легкий подход перекрестной проверки, называемый CV +. Метод CV + действует как стандартная перекрестная проверка: обучаются K возмущенных моделей с K в диапазоне обычно от 5 до 10 на всем обучающем наборе с удалением каждой складки, и вычисляются соответствующие остатки. Что касается Jackknife +, интервалы прогнозирования основаны на прогнозах, выполняемых каждой развернутой моделью. Таким образом, такая же стабильность гарантируется теорией, хотя интервалы прогнозирования обычно немного шире, поскольку каждая возмущенная модель обучается на меньшем количестве выборок.

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

От новейшего исследования до ультрасовременного пакета услуг

Мы взялись за разработку MAPIE в рамках проекта SimAI R&D. Этот проект является результатом сотрудничества между Quantmetry, консалтинговой компанией в области искусственного интеллекта, расположенной в Париже, Мишлен, и ENS Paris-Saclay в рамках финансовой поддержки региона Иль-де-Франс. Ключевым моментом этого проекта была разработка пакета Python, который позволял специалистам по обработке данных легко оценивать неопределенности с помощью любой модели, совместимой с scikit-learn, в качестве базовой оценки. Поэтому пакет был написан с использованием самых современных стандартов разработки: модульные тесты со 100% покрытием, непрерывная интеграция в нескольких средах с действиями Github, подробная документация по readthedocs и публикация пакетов как на PyPi, так и на conda.

MAPIE на практике

Теперь мы проиллюстрируем, как можно легко оценить неопределенности с помощью MAPIE, на примере одномерного набора данных, созданного из простой функции x*sin(x) с нормальным гомоскедастическим (т.е. который остается постоянным с x) шумом. Данные показаны на следующем рисунке.

Как упоминалось ранее, MAPIE можно использовать с любым типом регрессора, совместимого с sklearn. Здесь мы сравниваем интервалы прогнозирования, оцененные методом CV +, с использованием трех моделей:

  • простая полиномиальная функция, определенная с помощью scikit-learn.
  • XGBRegressor модель, основанная на известном алгоритме увеличения параллельного дерева, поставляемая с API scikit-learn.
  • простая нейронная сеть, здесь Многослойный персептрон с тремя плотными слоями, определенная с помощью Tensorflow-Keras и сделанная совместимой с помощью KerasRegressor оболочки.

Давайте теперь используем MAPIE для оценки интервалов прогнозирования с помощью метода CV + и сравнения их интервалов прогнозирования. С этой целью объект MapieRegressor может использоваться как любой регрессор scikit-learn со стандартным последовательным процессом fit и predict. Нам просто нужно определить базовую модель, метод и количество складок для оценки остатков при инициализации объекта. Затем мы подбираем наш регрессор на обучающих данных и оцениваем прогнозы и интервалы прогнозирования на тестовом наборе. Здесь мы устанавливаем альфа-значение 0,05, чтобы достичь 95% уверенности для наших интервалов прогноза. Нижняя и верхняя границы интервала прогнозирования сохраняются в отдельном массиве numpy.

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

Можно видеть, что интервалы прогнозирования, оцененные с помощью MAPIE, действительно очень близки к истинным доверительным интервалам. Фактически, эффективный показатель охвата, а именно количество тестовых выборок, истинные значения которых лежат в интервалах прогнозирования, составляет 97% при целевом показателе охвата 95%.

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

Ключевые вехи и выводы

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

MAPIE можно легко установить через pip или conda, и теперь он является частью экосистемы scikit-learn в качестве проекта scikit-learn-contrib. Мы представили MAPIE на семинаре ICML, посвященном количественной оценке неопределенности без распределения.

На данный момент MAPIE можно использовать только для задач регрессии с одним выходом. Но MAPIE только в начале пути! Мы активно работаем над расширением MAPIE на другие параметры, такие как временные ряды, регрессия с несколькими выходами, классификация по нескольким классам или сегментация изображений. Не стесняйтесь сообщать о проблемах или предлагать новые проекты, которые подходят для MAPIE, на веб-странице Github MAPIE.

Принадлежность

Я работаю в Quantmetry. Quantmetry, пионер и независимая с момента своего создания в 2011 году, является ведущей французской консалтинговой компанией в области искусственного интеллекта. Стремясь предложить превосходное управление данными и современные решения в области искусственного интеллекта, 120 сотрудников и исследователей-консультантов Quantmetry посвятили себя служению компаниям во всех секторах для достижения высоких результатов в бизнесе.

использованная литература

[1] Рина Фойгель Барбер, Эммануэль Дж. Кандес, Адитья Рамдас и Райан Дж. Тибширани, Прогнозирующий вывод с складным ножом + (2021). Анна. Статист., 49 (1): 486–507.