R-Квадрат
Що таке R-квадрат
Ми вже розглянули MSE, RMSE та MAE. Вони допомагають порівнювати моделі, але окремий показник важко оцінити без контексту. Може бути незрозуміло, чи є значення «достатньо хорошим» для вашого набору даних.
R-квадрат вирішує це, вимірюючи, яку частину дисперсії цільової змінної пояснює модель. Його значення знаходиться в діапазоні від 0 до 1, що робить інтерпретацію простою.
Проблема полягає в тому, що ми не можемо одразу обчислити пояснену дисперсію. Але ми можемо обчислити непояснену дисперсію, тому перетворимо наведену вище формулу так:
Загальна дисперсія
Загальна дисперсія — це просто дисперсія цільової змінної, яку можна обчислити за допомогою формули вибіркової дисперсії зі статистики (ȳ — це середнє значення цільової змінної):
У цьому прикладі різниці між фактичними значеннями та середнім цільовим значенням (помаранчеві лінії) підносяться до квадрату та підсумовуються, після чого діляться на m−1, що дає загальну дисперсію 11.07.
Не пояснена дисперсія
Далі обчислюється дисперсія, яку модель не пояснює. Якщо б передбачення були ідеальними, всі точки лежали б точно на лінії регресії. Для обчислення використовується та ж формула дисперсії, але замість ȳ підставляються передбачені значення.
Ось приклад із візуалізацією:
Тепер ми знаємо все необхідне для обчислення коефіцієнта детермінації R-квадрат:
Ми отримали значення R-квадрат 0.92, що близько до 1, отже, наша модель є дуже якісною. Також обчислимо R-квадрат для ще однієї моделі.
Значення R-квадрат нижче, оскільки модель дещо недонавчає дані.
R-квадрат у Python
Клас sm.OLS обчислює для нас значення R-квадрат. Його можна знайти у таблиці summary() тут.
R-квадрат має діапазон від 0 до 1, і чим вище значення, тим краще (якщо модель не перенавчається). Вивід summary() для sm.OLS містить оцінку R-квадрат.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain what a good R-squared value is?
How does R-squared compare to MSE, RMSE, and MAE?
Can you show how to interpret R-squared in real-world scenarios?
Чудово!
Completion показник покращився до 5.26
R-Квадрат
Свайпніть щоб показати меню
Що таке R-квадрат
Ми вже розглянули MSE, RMSE та MAE. Вони допомагають порівнювати моделі, але окремий показник важко оцінити без контексту. Може бути незрозуміло, чи є значення «достатньо хорошим» для вашого набору даних.
R-квадрат вирішує це, вимірюючи, яку частину дисперсії цільової змінної пояснює модель. Його значення знаходиться в діапазоні від 0 до 1, що робить інтерпретацію простою.
Проблема полягає в тому, що ми не можемо одразу обчислити пояснену дисперсію. Але ми можемо обчислити непояснену дисперсію, тому перетворимо наведену вище формулу так:
Загальна дисперсія
Загальна дисперсія — це просто дисперсія цільової змінної, яку можна обчислити за допомогою формули вибіркової дисперсії зі статистики (ȳ — це середнє значення цільової змінної):
У цьому прикладі різниці між фактичними значеннями та середнім цільовим значенням (помаранчеві лінії) підносяться до квадрату та підсумовуються, після чого діляться на m−1, що дає загальну дисперсію 11.07.
Не пояснена дисперсія
Далі обчислюється дисперсія, яку модель не пояснює. Якщо б передбачення були ідеальними, всі точки лежали б точно на лінії регресії. Для обчислення використовується та ж формула дисперсії, але замість ȳ підставляються передбачені значення.
Ось приклад із візуалізацією:
Тепер ми знаємо все необхідне для обчислення коефіцієнта детермінації R-квадрат:
Ми отримали значення R-квадрат 0.92, що близько до 1, отже, наша модель є дуже якісною. Також обчислимо R-квадрат для ще однієї моделі.
Значення R-квадрат нижче, оскільки модель дещо недонавчає дані.
R-квадрат у Python
Клас sm.OLS обчислює для нас значення R-квадрат. Його можна знайти у таблиці summary() тут.
R-квадрат має діапазон від 0 до 1, і чим вище значення, тим краще (якщо модель не перенавчається). Вивід summary() для sm.OLS містить оцінку R-квадрат.
Дякуємо за ваш відгук!