Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте R-квадрат | Вибір Найкращої Моделі
Лінійна регресія з Python

R-квадрат

Свайпніть щоб показати меню

Що таке R-квадрат

Ми вже розглянули MSE, RMSE та MAE. Вони допомагають порівнювати моделі, але окремий показник важко оцінити без контексту. Можливо, ви не знаєте, чи є значення «достатньо хорошим» для вашого набору даних.

R-квадрат вирішує цю проблему, вимірюючи, яку частину дисперсії цільової змінної пояснює модель. Його значення лежить у межах від 0 до 1, що спрощує інтерпретацію.

RSquaredFormulaSimple

Проблема полягає в тому, що ми не можемо одразу обчислити пояснену дисперсію. Але ми можемо обчислити непояснену дисперсію, тому перетворимо наведену вище формулу так:

RSquaredFormula

Загальна дисперсія

Загальна дисперсія — це просто дисперсія цільової змінної, і ми можемо обчислити дисперсію цільової змінної за допомогою формули вибіркової дисперсії зі статистики ( — це середнє значення цільової змінної):

Загальна дисперсія

У цьому прикладі різниці між фактичними значеннями та середнім цільовим значенням (помаранчеві лінії) підносяться до квадрату та підсумовуються, після чого діляться на m−1, що дає загальну дисперсію 11.07.

Графік загальної дисперсії

Нез'ясоване відхилення

Далі обчислюється відхилення, яке модель не пояснює. Якщо б передбачення були ідеальними, всі точки лежали б точно на лінії регресії. Використовується та сама формула для відхилення, але замість підставляються передбачені значення.

UnexplainedVariation

Приклад із візуалізацією:

UnexplainedVariationGraph

Тепер у нас є все необхідне для обчислення коефіцієнта детермінації R-квадрат:

R2Example

Ми отримали коефіцієнт детермінації R-квадрат 0,92, що близько до 1, отже, маємо чудову модель. Також обчислимо R-квадрат для ще однієї моделі.

R2Example2

Значення R-квадрат нижче, оскільки модель трохи недонавчається на даних.

R-квадрат у Python

Клас sm.OLS обчислює для нас R-квадрат. Його можна знайти у таблиці summary() тут.

Зведена таблиця

R-квадрат змінюється від 0 до 1, і чим вище значення, тим краще (якщо модель не переобучена). Вивід summary() для sm.OLS містить значення R-квадрат.

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 3

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

R-квадрат

Що таке R-квадрат

Ми вже розглянули MSE, RMSE та MAE. Вони допомагають порівнювати моделі, але окремий показник важко оцінити без контексту. Можливо, ви не знаєте, чи є значення «достатньо хорошим» для вашого набору даних.

R-квадрат вирішує цю проблему, вимірюючи, яку частину дисперсії цільової змінної пояснює модель. Його значення лежить у межах від 0 до 1, що спрощує інтерпретацію.

RSquaredFormulaSimple

Проблема полягає в тому, що ми не можемо одразу обчислити пояснену дисперсію. Але ми можемо обчислити непояснену дисперсію, тому перетворимо наведену вище формулу так:

RSquaredFormula

Загальна дисперсія

Загальна дисперсія — це просто дисперсія цільової змінної, і ми можемо обчислити дисперсію цільової змінної за допомогою формули вибіркової дисперсії зі статистики ( — це середнє значення цільової змінної):

Загальна дисперсія

У цьому прикладі різниці між фактичними значеннями та середнім цільовим значенням (помаранчеві лінії) підносяться до квадрату та підсумовуються, після чого діляться на m−1, що дає загальну дисперсію 11.07.

Графік загальної дисперсії

Нез'ясоване відхилення

Далі обчислюється відхилення, яке модель не пояснює. Якщо б передбачення були ідеальними, всі точки лежали б точно на лінії регресії. Використовується та сама формула для відхилення, але замість підставляються передбачені значення.

UnexplainedVariation

Приклад із візуалізацією:

UnexplainedVariationGraph

Тепер у нас є все необхідне для обчислення коефіцієнта детермінації R-квадрат:

R2Example

Ми отримали коефіцієнт детермінації R-квадрат 0,92, що близько до 1, отже, маємо чудову модель. Також обчислимо R-квадрат для ще однієї моделі.

R2Example2

Значення R-квадрат нижче, оскільки модель трохи недонавчається на даних.

R-квадрат у Python

Клас sm.OLS обчислює для нас R-квадрат. Його можна знайти у таблиці summary() тут.

Зведена таблиця

R-квадрат змінюється від 0 до 1, і чим вище значення, тим краще (якщо модель не переобучена). Вивід summary() для sm.OLS містить значення R-квадрат.

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 3
some-alt