www.machinelearningmastery.ru

Машинное обучение, нейронные сети, искусственный интеллект
Header decor

Home
Занимательная история, выдающиеся люди, малоизвестные факты, находки, открытия, фальсификации. Присоединяйся!

Расшифровка вашей модели машинного обучения с использованием LIME

Дата публикации Nov 4, 2018

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

Пример объяснения с помощью LIME для бинарной модели классификации (атеизм / христианин). Слова (особенности), выделенные синим цветом, поддерживают атеизм.

Этот пост будет охватывать следующие темы:

  1. Важность доверия вашей модели
  2. Что такое ЛАЙМ?
  3. Что делает LIME хорошим объяснителем модели?
  4. Как LIME достигает объяснимости модели?
  5. Практический пример использования LIME для задачи классификации

Важность доверия вашей модели

Чтобы построить доверие к нашей модели, мы, как правило, проводим несколько перекрестных проверок и выполняем проверку заданных параметров. Эти моделирования дают агрегированное представление о производительности модели по неизвестным данным. Это не помогает понять, почему некоторые из наших прогнозов верны, а другие неверны, и мы не можем проследить путь принятия решений нашей модели. Другими словами, мы не можем понять, что это обучение, или понять, что это ложные выводы. Но что, если я скажу вам, что существует инструмент, который объясняет границы решений вашей модели понятным для человека способом. Название этой магической библиотеки - ЛАЙМ.

Что такое ЛАЙМ?

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

Что может предложить LIME для интерпретации модели?
1. Последовательная модель агностического объяснения [ЛАЙМ].
2. Способ выбора репрезентативного набора с пояснениями [SP-LIME], чтобы убедиться, что модель ведет себя последовательно при копировании человеческой логики. Этот репрезентативный набор обеспечит интуитивное глобальное понимание модели.

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

  1. интерпретируемых
    Он должен обеспечить качественное понимание между входными переменными и ответом. Это должно быть легко понять.
  2. Местная верность
    Возможно, объяснение не будет полностью точным, если оно не является полным описанием самой модели. Сказав, что он должен быть по крайней мере локально верным, то есть он должен повторять поведение модели в непосредственной близости от прогнозируемого экземпляра.
  3. Модель Агностик
    Объяснитель должен уметь объяснять любую модель и не должен делать какие-либо предположения относительно модели при предоставлении объяснений.
  4. Глобальная перспектива
    Объяснитель должен объяснить представительный набор пользователю, чтобы у пользователя была глобальная интуиция модели.

Что делает LIME хорошим объяснителем модели?

Давайте посмотрим, как ЛАЙМ измеряет эти характеристики:

1. Интерпретируемые представления данных
LIME использует представление, которое понимают люди, независимо от фактических особенностей, используемых моделью. Это придумано как интерпретируемое представление. Интерпретируемое представление будет зависеть от типа данных, с которыми мы работаем, например:
1. Для текста: представляет наличие / отсутствие слов.
2. Для изображения: представляет наличие / отсутствие суперпикселей (непрерывный участок схожих пикселей).
3. Для табличных данных: это взвешенная комбинация столбцов.

Короче, объяснение LIME интерпретируется даже не экспертами.

2. Компромисс между верностью и интерпретируемостью

Мы хотим, чтобы объяснение было верным (повторить поведение нашей модели локально) и интерпретируемым (пункт 1). Для достижения этой ИЗВЕСТИ минимизируется следующее:

Объяснение модельного уравнения

Переменные уравнения
е
: оригинальный предиктор
Икс: оригинальные функции
г: модель объяснения, которая может быть линейной моделью, деревом решений или падающими списками правил
число Пи: мера близости между экземплярами от z до x, чтобы определить локальность вокруг x. В основном это весит z ’(возмущенные экземпляры) в зависимости от их расстояния от x.
Первый срок: мера неверности g при аппроксимации f в местности, определенной Pi. Это называетсяпотеря с учетом местных условийв оригинальной статье
Последний семестр: мера сложности модели объяснения г Например, если вашей моделью объяснения является дерево решений, это может быть глубина дерева, а в случае линейных моделей объяснения это может быть число ненулевых весов.

Сокращения для дальнейшего использования
1.
Икс'(интерпретируемое представление): Этот двоичный вектор является понятной для человека версией фактических характеристик, используемых исходной моделью.
2.г»(возмущенный образец): доля ненулевых элементов x ’.
3.е (г): метка класса
4.(г»): Это модель, изученная LIME (модель объяснения).

Для того, чтобы обеспечить как интерпретируемость и локальную верностьпотеря с учетом местных условийсводится к минимуму при сохранении второго члена достаточно низким, чтобы его могли интерпретировать люди. Это будет упоминаться какОмега (г)для остальной части поста
Оптимизируя потери с учетом локальности, LIME достигает локальной точности.

3. Отбор проб для локальной разведки
Просто чтобы повторитьгэто модель для изучения,г»является одним из примеров данных обучения иf (z)это они. Чтобы создать полный обучающий набор, мы выполняем случайную равномерную выборку изИкс'.Другими словами, мы создаем нескольког»из одного рядаИкс(оригинальный учебный пример).
Затем они взвешиваютсяPi (х)сосредоточиться больше наг»которые ближе к х.
Учитывая этот набор данных и метки, уравнение 1 оптимизировано для изучения модели объяснения. Подводя итог, нет никакой зависимости от типа исходной модели для LIME для предоставления объяснений (независимой от модели).

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

4. Запасное линейное объяснение
Давайте предположим
1.g (z ’) = w. г»(Делая модель объяснения линейной)
2, местная потеря= квадратная потеря
3.Pi (z):exp (-D (x, z) (2) / сигма (2)) (бесконтактное взвешивание для образцов)
4.Д (х, г): Функция расстояния

Локально осведомленная квадратная потеря

Понимание алгоритма ЛАЙМ

Кявляется пределом количества переменных, которые следует учитывать для объяснения. Например, для текста K - это количество слов, которые необходимо учитывать, для изображения - количество суперпикселей, а для табличных данных - количество столбцов. Для достижения этого мы делаемОмегастремиться к бесконечности, еслиразмер (ш)> к.Для подведения итогов LIME использует линейные объяснения для аппроксимации границы решения исходной модели.

Часть 2: Субмодульный выбор (SP-LIME) для объяснения моделей

LIME стремится приписать предсказание модели понятным человеку особенностям. Чтобы сделать это, нам нужно запустить модель объяснения на разнообразном, но репрезентативном наборе экземпляров, чтобы вернуть не избыточный набор объяснений, который является глобальным представлением модели. Прежде чем вводить алгоритм, давайте рассмотрим предпосылки:
1.В(Бюджет): количество объяснений, которые пользователь желает проверить
2.Шаг выбора:Задача выбора экземпляров B из всех экземпляров
3.W(Матрица объяснений):N(количество образцов)* d ’(понятные человеку черты) матрица
4.Я (j):Глобальное значение компонента j в пространстве объяснения
5.В: Особенности учтеныдля объяснения
6.C (V, W, I):Вычисляет общую важность функций, которые появляются по крайней мере в одном случае в наборе V. (уравнение 3)

Интуиция без избыточного покрытия
Максимизация взвешенной функции покрытия

Алгоритм 2 шага
1. Запустите модель объяснения для всех экземпляров (все x)
2. Рассчитать глобальную важность отдельных компонентов
3. Максимизируйте функцию покрытия, итеративно добавляя экземпляр с наибольшим максимальным усилением покрытия.
4. Вернуть V (репрезентативный набор излишних объяснений)

При этом мы видим, что LIME обладает всеми 4 желательными свойствами идеального объяснения модели.

Практический пример использования LIME для задачи классификации

Ниже приведен код для запуска объяснения модели для классического случая классификации Титаника. В этом случае я использовал LightGBM для обучения модели (Нажмите, чтобы узнать оLightGBMбиблиотека и здесь для егооптимизация).

Вот как выглядят объяснения для строки 1 в данных обучения

класс поддержки оранжевого цвета 1, класс поддержки синего цвета 0

Вы можете запустить последние 2 строки для нескольких строк, чтобы проверить результаты.

Объяснение состоит из трех частей:

  1. левая большая часть дает вероятности предсказания для класса 0 и класса 1.
  2. средняя часть дает 5 самых важных функций. Так как это пример бинарного класса, мы смотрим на 2 цвета Атрибуты, имеющие оранжевый цвет, поддерживают класс 1, а атрибуты, имеющие синий цвет, поддерживают класс 0. Sex_le ≤0 означает, что когда значение этого объекта удовлетворяет этому критерию, оно поддерживает класс 0. Число с плавающей точкой на горизонтальных столбцах представляет относительную важность этих объектов.
  3. Правая большая часть соответствует той же цветовой кодировке, что и 1 и 2. Она содержит фактические значения для первых 5 переменных.

Используйте приведенный ниже код для запуска SP-LIME

Результаты бега SP-LIME

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

Ссылки

  1. Ссылка на оригинал статьи:https://arxiv.org/abs/1602.04938
  2. Github ссылка:https://github.com/marcotcr/lime
  3. Блог автора статьи:https://homes.cs.washington.edu/~marcotcr/blog/lime/

Пожалуйста, не стесняйтесь поделиться своими мыслями, отзывами или предложениями ниже.

Оригинальная статья

Footer decor

© www.machinelearningmastery.ru | Ссылки на оригиналы и авторов сохранены. | map