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

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

Независимые от модели методы

Модельно-независимый метод может быть применен к любой модели. При использовании методов, не зависящих от модели, после обучения модели ее можно рассматривать как черный ящик. Другими словами, этот метод не требует, чтобы мы изучали внутреннюю работу модели. Если мы хотим использовать этот метод на другой модели, нам просто нужно поменять их местами. Но методы что делать?

Во-первых, большинство показателей оценки не зависят от модели. Возьмем расчет точности на рис. 1. Мы начнем с использования модели для прогнозирования тестового набора. Тогда точность — это процентная доля фактических значений, которые были правильно предсказаны. Чтобы сделать этот расчет, нам нужно только сравнить тестовые данные с прогнозами. Некоторые модели могут быть более точными, чем другие, но расчет будет таким же. Другие показатели оценки, такие как точность, полнота и MSE, не зависят от модели.

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

Интерпретируемое машинное обучение

На практике не принято называть метрики оценки независимыми от модели. Этот термин наиболее заметен, когда мы говорим о интерпретируемом MLили объяснимом ИИметодах. Они используются, чтобы понять, как модель делает прогнозы. Мы обсудим несколько примеров этих методов и то, как их можно классифицировать/сгруппировать. В завершение раздела мы обсудим, почему некоторые методы независимы в теории, но не всегда на практике.

Глобальные и локальные методы

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

Чтобы лучше понять это, у нас есть пример графика частичной зависимости (PDP) на рис. 2. Это распространенный глобальный метод интерпретируемости. Этот график был создан для модели, используемой для прогнозирования цен на подержанные автомобили. По оси абсцисс указано количество ремонтов автомобиля. Ось Y (частичный yhat) дает среднюю прогнозируемую цену. Из этого мы можем видеть, что цена автомобиля имеет нелинейную зависимость от количества ремонтов. Однако мы не можем сказать то же самое о каждом отдельном автомобиле.

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



Для локальныхинтерпретаций SHAP – распространенный метод. На рисунке 3 вы можете увидеть каскадный график SHAP для отдельного прогноза. Это из модели, используемой для прогнозирования количества колец в раковине морского ушка. Здесь мы сравниваем прогноз модели f(x) со средним прогнозом E[f(x)]. Мы можем видеть, как каждая функция способствовала прогнозу. Например, значение убранного веса увеличило прогнозируемое количество колец на 1,81.

Итак, мы видим, как SHAP можно использовать для объяснения индивидуальных прогнозов. Мы также можем агрегировать значения SHAP, чтобы понять, как модель делает прогнозы в целом. В этом смысле грань между локальными и глобальными интерпретациями может быть размыта. Вы можете увидеть пример этого на графике beeswarm на рисунке 4. Здесь мы нанесли значения SHAP для всех прогнозов, сделанных моделью.

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

Перестановка против суррогатных моделей

Второй способ, которым мы можем классифицировать методы интерпретации, заключается в том, как они рассчитываются. Методы перестановки включают изменение входных данных и измерение изменений в прогнозах модели. Вот как был создан приведенный выше PDP. Для каждого автомобиля мы изменили/переставили значение функции ремонт и записали прогноз модели. Затем мы взяли средний прогноз для каждого значения repairs. Другие методы, такие как графики ICE, важность функций и SHAP, являются методами перестановки.

В другом подходе используются суррогатные модели, и вы можете увидеть обзор на рис. 5. Здесь модель сначала обучается и используется для прогнозирования. Затем суррогатная модель обучается с использованием прогнозов исходной модели. То есть вместо целевой переменной. Важно, чтобы суррогатная модель была по своей сути интерпретируемой моделью. Это модели, такие как линейная регрессия или деревья решений, которые не нуждаются в таких методах, как SHAP/PDP. Их можно интерпретировать, глядя непосредственно на структуру или параметры модели.

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

Независимая от модели в принципе и на практике

Все методы, которые мы обсуждаем, теоретически не зависят от модели. Чтобы на самом деле их использовать, нам нужно их реализовать. Реализация не обязательно будет поддерживать все пакеты моделирования. Например, h-статистика Фридмана — это метод, используемый для выделения важных взаимодействий в вашей модели. В Python нет независимой от модели реализации для этого метода. Насколько мне известно, существует только реализация моделей повышения градиента scikit-learn.

Когда дело доходит до SHAP, еще одно соображение заключается в том, что существуют разные методы аппроксимации значений. KernelSHAP — это действительно независимый от модели метод. Однако он значительно медленнее, чем TreeSHAP. Недостатком является то, что TreeSHAP можно использовать только с древовидными алгоритмами. Это означает, что если вы хотите сэкономить время, вам придется ограничиться этими алгоритмами.

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

Неагностические методы

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

Пример этого можно найти в статье ниже. Здесь мы построили модель для прогнозирования настроения твитов. Это было сделано с использованием подхода «мешок слов» и метода опорных векторов (SVM). В процессе обучения SVM каждому N-грамму в обучающем наборе присваивается вес. Мы заканчиваем статью интерпретацией SVM, глядя на эти веса.



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

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

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

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



Вы можете найти меня на | Твиттер | Ютуб | Информационный бюллетень — подпишитесь на БЕСПЛАТНЫЙ доступ к Курсу Python SHAP

Источники изображений

Все изображения мои собственные или взяты с www.flaticon.com. В случае последнего у меня есть Полная лицензия, как определено в их Премиум-плане.

Рекомендации

М.Т. Рибейро, С. Сингх и К. Гестрин, Модельно-независимая интерпретируемость машинного обучения (2016 г.) https://arxiv.org/abs/1606.05386

К. Молнар, Интерпретируемое машинное обучение (2021) https://christophm.github.io/interpretable-ml-book/shap.html

Хенни де Хардер Независимые от модели методы интерпретации любой модели машинного обучения (2020)https://towardsdatascience.com/model-agnostic- методы-интерпретации-любой-модели-машинного-обучения-4f10787ef504