Реализация PDP, ICE ELI5, LIME, SHAP на табличном наборе данных

Что такое интерпретируемость модели?

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

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

Иногда достаточно, если единственное, что нас интересует, это сделать эффективную автоматизированную систему прогнозирования. Однако наши модели часто выявляют новые скрытые закономерности в данных и действуют как часть положительной обратной связи, которую можно использовать для улучшения/корректировки предсказания нашей модели. Таким образом, интерпретируемость дает нам этот инструмент, чтобы заглянуть в нашу модель и ответить на вопрос «ПОЧЕМУ» для одного варианта использования / любопытства.

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

Существует множество методов, используемых для интерпретации модели, как указано ниже:

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

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

В этой статье мы сосредоточимся на таких методах, как PDP, ICE ELI5, LIME, SHAP с реализацией в наборе табличных данных для интерпретации различных моделей. Набор данных, который мы собираемся использовать, — это набор данных о кредитных рисках от Kaggle. Этот набор данных состоит из следующих функций:

  • Название функции Описание
  • person_age — Возраст
  • person_income — Годовой доход
  • personhomeownership — домовладение
  • personemplength — Стаж занятости (в годах)
  • кредит_интент — намерение ссуды
  • кредит_градус — Оценка кредита
  • кредит_амнт — Сумма кредита
  • кредитинтрейт — Процентная ставка
  • кредит_статус — Статус кредита (0 не по умолчанию 1 по умолчанию)
  • credit_percent_income — Доход в процентах
  • cb_person_default_on_file — исторический дефолт
  • cb_preson_cred_hist_length — Длина кредитной истории

Теперь, когда у нас есть набор данных, давайте погрузимся в методы MI.

PDP: графики частичной зависимости

Создатели Scikit-Learn описывают графики частичной зависимости следующим образом:

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

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

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

Оформить заказ Реализация кода

Преимущества ПДП -

  • Вычисление графиков частичной зависимости интуитивно.
  • Прост в реализации.
  • Расчет для графиков частичной зависимости имеет причинно-следственную интерпретацию.

Недостатки ПДП -

  • Реальное максимальное количество признаков в функции частичной зависимости равно двум.
  • На некоторых графиках PD не отображается распределение признаков.
  • Неоднородные эффекты могут быть скрыты, так как графики PD показывают только средние предельные эффекты.

ICE:индивидуальное условное ожидание

Создатели Scikit-Learn описывают графики частичной зависимости следующим образом:

График индивидуального условного ожидания (ICE) показывает зависимость между целевой функцией и интересующей функцией.

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

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

Преимущества ДВС -

  • Кривые понятны интуитивно
  • Кривые могут выявлять разнородные отношения

Недостатки ДВС -

  • Кривые ICE могут осмысленно отображать только одну функцию
  • Если нарисовано много кривых ICE, график может стать переполненным, и вы ничего не увидите.
  • На графиках ICE может быть непросто увидеть среднее значение.

ELI5: Объясни, как будто мне 5 лет

ELI5 — это библиотека Python, которая позволяет визуализировать и отлаживать различные модели машинного обучения с использованием унифицированного API. Он поддерживает все алгоритмы scikit-learn (алгоритм, поддерживающий методы .fit и .predict). Он имеет встроенную поддержку нескольких платформ машинного обучения и предоставляет способ объяснить модели белого ящика (линейная регрессия, деревья решений) и модели черного ящика (Keras, XGBoost, LightGBM). Он работает как для моделей регрессии, так и для моделей классификации.

Существует два основных способа взглянуть на классификацию или регрессионную модель:

  1. Глобальная интерпретация: проверьте параметры модели и попытайтесь выяснить, как модель работает глобально.
  2. Локальная интерпретация: проверьте индивидуальный прогноз модели, попытайтесь выяснить, почему модель принимает решение, которое она принимает.

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

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

Оформить заказ Реализация кода

Преимущества ЭЛИ5 -

  • Легко понять и хорошо визуализировать.
  • ELI5 предоставляет унифицированный API для доступа к информации оважности характеристик.
  • ELI5 обеспечивает независимую реализацию алгоритма для XGBoost.

Недостатки ЭЛИ5 -

  • Не поддерживает истинные модели-независимые интерпретации
  • Поддержка моделей в основном ограничивается древовидными и другими параметрическими\линейными моделями.

LIME:локальные интерпретируемые объяснения, не зависящие от модели.

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

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

Оформить заказ Реализация кода

Преимущества ИЗВЕСТИ

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

ИЗВЕСТЬ недостатки

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

SHAP: аддитивные объяснения Шепли

Отличный способ повысить прозрачность модели — использовать значения SHAP. SHAP (Shapley Additive ExPlanations), предложенный Лундбергом и Ли (2016), представляет собой единый подход к объяснению результатов любой модели машинного обучения путем измерения важности функций для прогнозов. SHAP (Shapley Additive exPlanations) — это теоретико-игровой подход к объяснению результатов любой модели машинного обучения. Он связывает оптимальное распределение кредитов с локальными объяснениями с использованием классических значений Шепли из теории игр и связанных с ними расширений.

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

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

Реализация кода в Наборе данных о сердечных заболеваниях

Внедрение Кодекса по кредитному риску

Преимущества ШАП -

  • Прогноз справедливо распределяется между значениями характеристик.
  • SHAP соединяет ценности LIME и Shapley. Это очень полезно для лучшего понимания обоих методов. Это также помогает унифицировать область интерпретируемого машинного обучения.
  • В SHAP глобальные интерпретации согласуются с локальными объяснениями.

Недостатки ШАП -

  • Расчет значения SHAP занимает очень много времени, поскольку он проверяет все возможные комбинации.
  • KernelSHAP игнорирует зависимость функций.

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

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

Ссылки





https://eli5.readthedocs.io/en/latest/overview.html