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

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

https://t.me/jdata_blog


Линейная регрессия — модель линейной зависимости целевой переменной y от вектора признаков x_i.

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

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

  • данные должны быть приведены к единому машстабу.
  • должна быть выполнена кодировка категориальных признаков (например, через OHE).

В этой статье собраны и приведены 5 методов для представления информации, которая заложена в весах модели:

  1. Прямое рассмотрение коэффициентов в виде барплота.
  2. Прямое рассмотрение коэффициентов виде круговой диаграммы.
  3. Рассмотрение относительного вклада коэффициентов.
  4. Анализ остатков модели.
  5. Построение регионов уверенности.

Метод 1. Визуализация коэффициентов в виде столбчатой диаграммы.

Коэффициенты линейной регрессии — это "веса", которые представляют собой для каждого признака (признаки еще называют независимыми переменными) силу и тип взаимосвязи независимой переменной по отношению к зависимой. В sklearn реализации модели они хранятся в атрибуте lr.coef_.

Если визуализировать веса в виде таблицы, то они выглядят так:

Веса линейной регрессии, обученной на наборе данных fetch California housing (https://scikit-learn.org/stable/modules/generated/sklearn.datasets.fetch_california_housing.html)

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

Первый метод представить их более визуально приятно — столбчатая диаграмма барплот. Первый вариант — сохраняя тенденции взаимосвязи:

Визуализация весов линейной регрессии в виде столбчатой диаграммы.

Второй — визуализируя абсолютные значения:

Визуализация модулей весов линейной регрессии в виде столбчатой диаграммы

Метод 2. Визуализация коэффициентов при помощи круговой диаграммы.

Круговая диаграмма (pie plot) — не менее наглядный способ визуального представления важностей. Плюс такого графика — отличное долевое представление весов. Минус — невозможно сохранить информацию о положительности/отрицательности связи.

Визуализация весов линейной регрессии в виде круговой диаграммы


Метод 3. Вычисление относительной важности признаков.

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

Её также можно потом визуализировать, барплотом или как раз круговой диаграммой выше. Но в виде таблицы, заранее отсортированной, представление также является наглядным.

Таблица с относительными значениями весов признаков.

Метод 4. Анализ распределений остатков


Анализ остатков регрессионной модели изначально применяется для оценки её качества. Подробнее про регрессионный анализ тут.

А мы сосредоточимся на интерпретации. Первый способ — рассмотреть ожидаемые и прогнозируемые значения в виде диаграммы рассеивания.

Диаграмма рассеивания прогнозируемых значений и реальных данных.

Здесь, например, видно, что на больших значениях модель ведет себя странным образом. Соответственно наша регрессия не так хорошо справляется с прогнозированием значений для квартир с большой ценой. 

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

Распределения спрогнозированных значений и реальных данных.

Метод 5. Анализ регионов уверенности на основе остатков.

Идея этого метода — рассмотреть и продемонстрировать, в каких областях признаков модель более уверена в своих предсказаниях, а в каких — менее. 

Более просто понять этот метод на задаче классификации. Пусть есть модель, которая прогнозирует для онлайн-пользователя наличие (1) или отстсвие (0) выручки. Пусть для задачи нам наиболее важно прогнозирование отсутствия выручки. Тогда мы можем выделить наблюдения класса 0 и на основе вероятностей, выдаваемых моделью, разделить данные на интервалы:

  • низкая уверенность (вероятность "0" < 0.3).
  • средняя уверенность (0.3 <= вероятность "0" < 0.7). 
  • высокая уверенность (вероятность "0" >= 0.7).

Далее рассмотрим графики, где по осям X и Y распределены некоторые признаки (пусть это будет время на сайте и число посещенных страниц). Для каждой точки будем раскрашивать область в зависимости от вероятности предсказания класса "0" — полученные визуализации помогут обнаружить, обладает ли модель регионами уверенности и, если да, то где. 

Для задачи регрессии всё тоже применимо. Мы можем разбить прогнозируемые наблюдения по квантилям абсолютных значений остатков. Например:

  • класс 0 — остатки ниже 25 квантиля
  • класс 1 - остатки больше 25, но ниже 75 квантиля
  • класс 2 - остатки от 75 квантиля

Далее наши визулазиации будут касаться распределений признаков по одной оси и целевой переменной по другой. Пример ниже:

Регионы уверенности по признаку MedInc.

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


На этом всё, друзья! Мы рассмотрели 5 методов для анализа и представления весов и прогнозов регрессии. Желаю вам продуктивной работы и учебы с данными! 

Код и примеры из статьи доступны на гитхабе.

Встретимся в новых постах,  

Ваш Дата-автор!




Report Page