Разница между значениями Шепли и SHAP для интерпретируемого машинного обучения

Документ о смертиshap пакет дает формулу для значений Шепли в (4) и для значений SHAP, очевидно, в (8)

Тем не менее, я не совсем понимаю разницу между значениями Шепли и SHAP. Насколько я понимаю, для Шепли мне нужно переобучить мою модель на каждом возможном подмножестве параметров, а для SHAP я просто использую базовую модель, обученную по всем параметрам. Это оно? Итак, SHAP проще в вычислительном отношении?

2 ответа

Решение

SHAP сочетает в себе локальную интерпретируемость других агностических методов (sa LIME, где модель f(x) ЛОКАЛЬНО аппроксимируется объяснимой моделью g(x) для каждого экземпляра каждого фактора X) и теоретико-игровой подход Shapley Values. Это приводит к некоторым желательным свойствам (локальная точность, отсутствие информации, согласованность).

Напомним, что в формуле (4) отсутствует "локальный", и значения Шепли (регрессия) присваивают один балл вклада для фактора X (в целом). В формуле (8) мы видим, что SHAP теперь является функцией x. Это означает, что мы получаем вклад для каждого фактора и, в частности, для каждого реализованного экземпляра фактора Xi = xi, что делает его локально интерпретируемым И наследует желаемые свойства.

Таким образом, SHAP можно понимать как комбинацию LIME (или связанных понятий) и значений Шепли. В конце концов, значения SHAP - это просто "значения Шепли функции условного ожидания исходной модели" Lundberg and Lee (2017). По сути, значение Шепли определяется для любой функции значения, а SHAP - это просто частный случай значения Шепли посредством специального определения функции значения!

У меня был тот же вопрос, что и у вас, и это мое интуитивное понимание статьи Лундберга и Ли (2017). Надеюсь это поможет.

Ответ на ваш вопрос содержится в первых 3-х строках проекта SHAP github:

SHAP (SHapley Additive ex Planations ) — это теоретико -игровой подход к объяснению результатов любой модели машинного обучения. Он связывает оптимальное распределение кредитов с локальными объяснениями с использованием классических значений Шепли из теории игр и связанных с ними расширений.

История началась с того, что Скотт Лундеберг наблюдал за доступными методами объяснения ML и отмечал, что все они удовлетворяют аддитивному свойству ( определение 1 в вышеупомянутой статье ):

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

Кроме того, он добавил еще 3 желательных свойства:

  • Свойство 1 : локальная точность (локальные объяснения должны в сумме соответствовать предсказаниям модели, что эквивалентно исходной эффективности Шепли )

  • Свойство 2 : Отсутствие (отсутствие элемента ничего не дает, близко к исходным фиктивным свойствам)

  • Свойство 3 : согласованность (при изменении модели желаемые значения объяснения должны изменяться в том же направлении, близко к исходной аддитивности )

Оказывается, что:

  • Значения Шепли удовлетворяют всем свойствам 1,2,3 ("удовлетворение" означает, что здесь сохраняются все 4 исходных свойства Шепли, как только выполняется свойство 1,2,3)
  • Предложите уникальное решение (уникальный набор предельных вкладов), которое было математически доказано еще Янгом, 1985 г.

Затем, когда мы зафиксировали значения Шепли как решение проблемы объяснимости модели с желаемыми свойствами 1,2,3, возникает вопрос:

Как рассчитать значения Шепли с / без функции?

Каждый практикующий ML знает, что модель меняется, если мы удаляем/добавляем функцию. Кроме того, для нелинейной модели важен порядок, в котором мы добавляем функции. Таким образом, точное вычисление значений Шепли путем перебора всех возможных комбинаций функций «2^M» при переобучении моделей неэффективно (или слишком сложно для вычислений).

Теперь, чтобы ответить на ваш вопрос «Разница между значениями Шепли и»:

обеспечить вычислительно эффективный, теоретически надежный способ расчета значений Шепли для ML с помощью:

  1. Использование модели, обученной только один раз (не относится к а также )
  2. Усреднение по выпавшим функциям путем выборки фоновых данных.

В качестве примечания, решение единственно, в отличие от , но это не имеет отношения к вашему вопросу.

Другие вопросы по тегам