Подробное введение в интерпретацию моделей логистической регрессии и деревьев решений.

Модель машинного обучения от Amazon выбрала только мужчин из кучи резюме¹. Другая модель увольняла учителей, которые, согласно модели², не получали должных результатов. Такие модели являются дискриминационными и могут навредить обществу. Они могут принимать неправильные решения и негативно влиять на жизнь людей. Чтобы решить эту проблему, вы можете начать интерпретацию своих моделей. Интерпретируемость означает, что человек может понять причину решения.

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

Набор данных

Область, в которой вы можете использовать интерпретируемость модели, - это здравоохранение. Чтобы узнать, как модель определяет, есть ли у человека болезнь сердца, мы используем набор данных из базы данных Кливленда со следующими характеристиками:

Мы попытаемся предсказать цель с помощью логистической регрессии и дерева решений и интерпретировать модели, которые мы построили. Вы можете найти Набор данных Heart Disease UCI на Kaggle.

Код

Код для этой статьи об интерпретируемых моделях (и для статьи о модельно-независимых методах) можно найти на GitHub.

Интерпретируемые модели

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

Линейная регрессия

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

Логистическая регрессия

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

Согласно первым двум уравнениям, мы можем заменить b на ln (a), чтобы получить a. Итак, если мы возведем e в степень натурального логарифма отношения шансов (равного коэффициенту, который мы получаем из модели логистической регрессии), мы получим отношение шансов.

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

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

Теперь мы можем приступить к интерпретации модели:

  • Тип боли в груди имеет большое значение. Когда это значение увеличивается на единицу, вероятность наличия сердечного заболевания увеличивается на 120,1 процента.
  • Если переменная наклона увеличивается на единицу, вероятность увеличивается на 94,2 процента.
  • Уровень сахара в крови натощак - это бинарная переменная. Если это значение равно единице (истина), шансы на наличие сердечного заболевания на 13,9% выше, чем когда это значение равно нулю (ложь).
  • Внизу мы видим переменную пола. Это отношение шансов ниже 1, около 1/4. Это означает, что у женщин вероятность сердечных заболеваний почти в четыре раза выше!

Когда такие результаты кажутся странными, лучше всего исследовать свои данные. Вам может быть интересно, почему возраст и уровень холестерина так мало влияют. Эта модель говорит нам, что более высокий уровень холестерина немного лучше, чем более низкий. Это правда? Большая разница между мужчинами и женщинами также вызывает вопросы! Чтобы исследовать это, мы могли бы использовать целевой сюжет, вы можете найти его для гендерной особенности в записной книжке на GitHub.

Деревья решений

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

Ниже вы можете увидеть изображение дерева решений, основанное на наборе данных о сердечных заболеваниях.

На каждом узле решения вы видите четыре строки с текстом. Первая строка представляет правило принятия решения. Если для записи условие выполняется, вы следуете за левой ветвью, если ложно, вы следуете за правой. Джини, во второй строке, представляет собой значение примеси Джини, чем ниже это значение, тем лучше разделение⁴. Третья и четвертая строки показывают, сколько выборок из обучающего набора находится в текущем узле и как они делятся. Вы можете задаться вопросом, что означают цвета. Если узел оранжевый или синий, это означает, что для большей части выборок в этом узле целевая переменная (наличие болезни сердца) равна нулю или единице соответственно. Чем темнее цвет, тем однороднее узел.

Итак, давайте возьмем запись из набора тестов и проследим за узлами дерева, чтобы увидеть, каким будет окончательный прогноз. Это новый рекорд:

Начнем с корневого узла дерева решений. Правило принятия решения: признак X₂ (cp, тип боли в груди) меньше или равен 0,5. Для нашей новой записи значение равно 0, поэтому меньше 0,5. Это утверждение верно, и мы следуем левой ветви. Следующая характеристика - X₁₁ (ca, количество крупных сосудов, окрашенных при рентгеноскопии), это значение больше 0,5, поэтому утверждение неверно, и мы продолжаем проверять, меньше или равно 109 X₃ (trestbps, артериальное давление в состоянии покоя). Это не тот случай, поскольку он равен 150. Итак, снова ложь. Следующий узел проверяет, меньше ли X₁ (пол) 0,5. Нет, это 1 для этого рекорда, он мужчина. Теперь мы нашли листовой узел для этой записи, прогноз равен 0. Этот прогноз верен! Таким образом, для этой записи модель использует только четыре функции: cp, ca, trestbps и sex.

Хорошо, это способ узнать, почему одна запись имеет определенный прогноз. Имея только изображение дерева, трудно понять, какие функции важны для модели. Мы можем извлекать важность признаков из деревьев по-разному. Самый простой способ - использовать важные функции scikit-learn. Важность характеристики вычисляется как (нормализованное) общее сокращение критерия, приведенного этой функцией. Он также известен как важность Джини.

Стоит ли доверять важности этих функций? Можно сказать, что такие характеристики, как CP, CA, chol и возраст, действительно важны для прогнозирования сердечного заболевания. Возможно, они это сделают, но сначала проверьте свою модель! Имейте в виду, что важность этих функций основана только на обучающем наборе и текущем дереве. Способ вычисления важности функций в scikit-learn не самый лучший. Лучше использовать один из методов, не зависящих от модели, например, важность перестановки признаков. Любопытный? Об этом читайте в следующей статье о модельно-независимых методах!

[1] Дж. Дастин, Amazon отказывается от секретного инструмента найма искусственного интеллекта, который продемонстрировал предвзятость в отношении женщин (2018), Reuters

[2] К. О’Нил, Оружие математического разрушения (2016), Crown New York

[3] Как интерпретировать отношения шансов в логистической регрессии?, UCLA: Statistical Consulting Group