Ранее я рассмотрел, как интерпретировать классические модели машинного обучения и модели черного ящика (см. Ссылку ниже). В этом посте я хочу обсудить некоторые интересные области о том, как разложить прогноз.





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

Допустим, нам нужно дать объяснение классификационной модели f:

Дана точка данных x∈X, которая состоит из отдельных значений атрибута A (i) i = 1,…, a и помечена классом y∈Y. Разница прогнозов оценивается количественно путем вычисления разницы между вероятностями, предсказанными моделью, с или без знания A (i):

Итак, здесь мы можем резюмировать две основные проблемы:

  1. Если целевая модель выводит вероятность, это прекрасно, поскольку получить p (y | x) несложно. В противном случае прогноз модели должен пройти соответствующую калибровку постфактум, чтобы перевести оценку прогноза в вероятности. Этот калибровочный слой - еще одна проблема.
  2. Если мы сможем убрать A (i), заменив A (i) пропущенным значением (например, None или NaN), нам придется ответить на внутренний механизм модели для вменения этих пропущенных значений. Ожидается, что модель, которая заменяет эти отсутствующие случаи на медианное значение, будет иметь совсем другой результат, чем модель со специальным заполнителем.

Одно из решений, представленное в документе, состоит в том, чтобы заменить A (i) всеми возможными значениями этой функции, а затем суммировать прогноз, взвешенный по тому, насколько вероятно каждое значение отображается в данных:

Где p (y | x ← A (i) = a (s)) - это вероятность получить метку y, если мы заменим признак A (i) значением a (s) в векторе признаков x. В обучающей выборке есть m (i) уникальных значений A (i).

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

В приведенных ниже примерах показаны объяснения модели Наивного Байеса и модели SVM, прогнозирующей выживание одного взрослого пассажира первого класса мужского пола в наборе данных Титаника, предложенном Kaggle. Пояснения к конкретному случаю показаны темными полосами. Средние положительные и отрицательные объяснения значений данных атрибутов представлены светлыми полосами полувысоты над ними.

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

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

Спасибо за прочтение!

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

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