Остатки – это разница между фактическим целевым и спрогнозированным значением, ключевое понятие в задачах Регрессии (Regression). Это элемент формул ее метрик: Cреднеквадратической ошибки (MSE), Cредней абсолютной ошибки (MAE), средней абсолютной процентная ошибка (MAPE).
График остатков, соответственно, – это тип графика, который отображает сопоставленные значения с остаточными в регрессионной Модели (Model). Такой способ визуалиации часто используется для оценки способности модели линейной регрессии описать зависимости в Датасете (Dataset) и для проверки Гетероскедастичности (Heteroscedasticity) – изменчивости распределения точек данных относительно прямо.
Посмотрим, какими бывают графики остатков. Для этого импортируем необходимые библиотеки:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import statsmodels.api as sm
from statsmodels.formula.api import ols
Создадим небольшой Датафрейм (DataFrame), содержащий данные о результативности баскетболистов и протянем модель линейной регрессии, чтобы подтвердить или опровергнуть линейную зависимость между рейтингом игрока и количеством принесенных очков:
df = pd.DataFrame({'rating': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86],
'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19],
'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5],
'rebounds': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]})
# Применим к данным модель линейной регрессии
model = ols('rating ~ points', data = df).fit()
Теперь настало время визуализировать отношения между этими метриками. Функция sm.graphics.plot_regress_exog()
предлагает четыре вида остаточных графиков, и в некоторые из них стоит вглядеться, прежде чем наступит понимание:
# Зададим размер графика
fig = plt.figure(figsize = (12, 8))
# Создадим графики
fig = sm.graphics.plot_regress_exog(model, 'points', fig = fig)
На субграфике слева сверху мы видим восемь "поплавков", причем красным обозначается фактический рейтинг игрока, а синим – предполагаемый моделью. Таких поплавков на два меньше общего числа записей, поскольку число очков двух пар игроков совпадают:
График частичной регрессии (Partial Regression Plot) снизу слева пытается показать эффект добавления другой переменной в модель, которая уже имеет одну или несколько независимых переменных.
Его сосед справа сверху дает возможность акцентировать внимание на Дисперсии (Variance) – отклонения точек относительно прямой.
Последний субграфик "компоненты и компоненты плюс остатки" (Component and Component-Plus-Residual – CCPR) справа снизу позволяет судить о влиянии одного предиктора на целевую переменную, принимая во внимание влияние других независимых переменных. Два оставшихся Признака (Feature) также в немалой степени влияют на рейтинг:
Ноутбук, не требующий дополнительной настройки на момент написания статьи, можно скачать здесь.
Автор оригинальной статьи: Pararawendy Indarjo, Zach
© Лена Капаца. Все права защищены.