Интерпретация результатов модели

Обобщённые линейные модели в Python

Ita Cirovic Donev

Data Science Consultant

Оценка коэффициента бета

  • Метод максимального правдоподобия (MLE)
  • Оцениваемый коэффициент $\hat\beta$
    • логарифмическое правдоподобие достигает максимума

Функция правдоподобия

Обобщённые линейные модели в Python

Оценка коэффициента бета

  • Итерационный метод взвешенных наименьших квадратов (IRLS)

Сводный вывод подогнанной модели

Обобщённые линейные модели в Python

Проверка значимости

Сводный вывод подогнанной модели с выделенной статистикой оценки коэффициентов.

Обобщённые линейные модели в Python

Стандартная ошибка (СО)

  • Более пологий пик
    $\rightarrow$ Максимум труднее определить
    $\rightarrow$ Большее СО

Визуализация функции правдоподобия при большей стандартной ошибке.

  • Более острый пик
    $\rightarrow$ Максимум определяется точнее
    $\rightarrow$ Меньшее СО

Визуализация функции правдоподобия при меньшей стандартной ошибке.

Обобщённые линейные модели в Python

Вычисление стандартной ошибки

# Extract variance-covariance matrix
print(model_GLM.cov_params())
           Intercept    weight
Intercept   0.774762 -0.325087
weight     -0.325087  0.141903
# Compute standard error for weight
std_error = np.sqrt(0.141903)
0.3767

Матрица дисперсий-ковариаций

Иллюстрация матрицы дисперсий-ковариаций

Обобщённые линейные модели в Python

Проверка значимости

  • z-статистика $$ \color{#2485F2}{z=\hat\beta/SE} $$

  • $\color{#2485F2}{z}$ велико $\Rightarrow$ коэффициент $\ne0$ $\Rightarrow$ переменная значима

  • Практическое правило: пороговое значение равно 2

Пример: модель краба-подковы
y ~ weight

$z = 1{,}8151/0{,}377 = 4{,}819$

Обобщённые линейные модели в Python

Доверительные интервалы для бета

  • Неопределённость оценок
  • 95%-е доверительные интервалы для $\beta$

$$ [\color{#5A5AF3}{lower},\color{#D8498E}{upper}] $$

$$ [\color{#5A5AF3}{\hat\beta - 1.96 \times SE},\color{#D8498E}{\hat\beta+1.96 \times SE}] $$

Обобщённые линейные модели в Python

Вычисление доверительных интервалов

Пример: модель краба-подковы

                 coef    std err   
<hr />-------------------------------
Intercept     -3.6947      0.880  
weight         1.8151      0.377  

Обобщённые линейные модели в Python

Извлечение доверительных интервалов

print(model_GLM.conf_int())
                  0         1
Intercept -5.419897 -1.969555
weight     1.076826  2.553463
Обобщённые линейные модели в Python

Извлечение доверительных интервалов

print(model_GLM.conf_int())
              lower         1
Intercept -5.419897 -1.969555
weight     1.076826  2.553463
Обобщённые линейные модели в Python

Извлечение доверительных интервалов

print(model_GLM.conf_int())
                  0     upper
Intercept -5.419897 -1.969555
weight     1.076826  2.553463
Обобщённые линейные модели в Python

Доверительные интервалы для шансов

  1. Извлеките доверительные интервалы для $\beta$

  2. Экспоненцируйте граничные значения

print(np.exp(model_GLM.conf_int()))
                  0          1
Intercept  0.004428   0.139519
weight     2.935348  12.851533
Обобщённые линейные модели в Python

Давайте потренируемся!

Обобщённые линейные модели в Python

Preparing Video For Download...