R - Плутанина з Залишковою термінологією


34
  • Коренева середньоквадратична помилка
  • залишкова сума квадратів
  • залишкова стандартна помилка
  • середня квадратична помилка
  • помилка тесту

Я думав, що я розумів ці терміни, але чим більше я роблю статистичні проблеми, тим більше я плутаюся, де я вдруге здогадуюсь про себе. Мені хотілося б переконливості та конкретного прикладу

Я можу легко знайти рівняння в Інтернеті, але у мене виникають проблеми з поясненням цих термінів "пояснити, як мені 5", щоб я міг викристалізувати в голові відмінності та те, як одне призводить до іншого.

Якщо хтось може взяти цей код нижче та вказати, як я обчислив би кожен із цих термінів, я би вдячний. R-код був би чудовим ..

Використовуючи цей приклад нижче:

summary(lm(mpg~hp, data=mtcars))

Покажіть мені в коді R, як знайти:

rmse = ____
rss = ____
residual_standard_error = ______  # i know its there but need understanding
mean_squared_error = _______
test_error = ________

Бонусні бали за пояснення, як мені 5 різниць / подібності між ними. приклад:

rmse = squareroot(mss)

2
Чи можете ви дати контекст, у якому ви почули термін " тестова помилка "? Тому що є щось, що називається "помилка тесту", але я не зовсім впевнений, що це те, що ти шукаєш ... (це виникає в контексті наявності тестового набору та навчального набору - чи є хтось із цього звуку знайомий? )
Стів S

Так - я розумію, що це модель, сформована на навчальному наборі, застосованому до тестового набору. Помилка тестування моделюється y's - тест y або (моделюється y's - тест y) ^ 2 або (модельований y's - тест y) ^ 2 /// DF (або N?) Або ((модельований y's - тест y) ^ 2 / N) ^. 5?
користувач3788557

Відповіді:


60

Як вимагається, я ілюструю просту регресію з використанням mtcarsданих:

fit <- lm(mpg~hp, data=mtcars)
summary(fit)

Call:
lm(formula = mpg ~ hp, data = mtcars)

Residuals:
    Min      1Q  Median      3Q     Max 
-5.7121 -2.1122 -0.8854  1.5819  8.2360 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 30.09886    1.63392  18.421  < 2e-16 ***
hp          -0.06823    0.01012  -6.742 1.79e-07 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1

Residual standard error: 3.863 on 30 degrees of freedom
Multiple R-squared:  0.6024,    Adjusted R-squared:  0.5892 
F-statistic: 45.46 on 1 and 30 DF,  p-value: 1.788e-07

Ефективне значення помилка (MSE) є середнім значенням квадрата нев'язки:

# Mean squared error
mse <- mean(residuals(fit)^2)
mse
[1] 13.98982

Коренева середньоквадратична помилка (RMSE) - це квадратний корінь MSE:

# Root mean squared error
rmse <- sqrt(mse)
rmse
[1] 3.740297

Залишкова сума квадратів (RSS) - це сума залишків у квадраті:

# Residual sum of squares
rss <- sum(residuals(fit)^2)
rss
[1] 447.6743

Залишкова стандартна помилка (RSE) - квадратний корінь (RSS / ступені свободи):

# Residual standard error
rse <- sqrt( sum(residuals(fit)^2) / fit$df.residual ) 
rse
[1] 3.862962

Той самий розрахунок, спрощений, тому що ми раніше розраховували rss:

sqrt(rss / fit$df.residual)
[1] 3.862962

Термін помилка тесту в контексті регресії (та інших методів прогнозування аналітики) зазвичай стосується обчислення статистики тесту на тестових даних, відмінних від ваших навчальних даних.

Іншими словами, ви оцінюєте модель, використовуючи частину своїх даних (часто це 80% вибірки), а потім обчислюєте помилку за допомогою вибірки витримування. Ще раз проілюструю використання mtcarsцього разу 80% -ного зразка

set.seed(42)
train <- sample.int(nrow(mtcars), 26)
train
 [1] 30 32  9 25 18 15 20  4 16 17 11 24 19  5 31 21 23  2  7  8 22 27 10 28  1 29

Оцініть модель, а потім передбачте за допомогою даних про затримку:

fit <- lm(mpg~hp, data=mtcars[train, ])
pred <- predict(fit, newdata=mtcars[-train, ])
pred
 Datsun 710     Valiant  Merc 450SE  Merc 450SL Merc 450SLC   Fiat X1-9 
   24.08103    23.26331    18.15257    18.15257    18.15257    25.92090 

Поєднайте вихідні дані та прогнозування в кадрі даних

test <- data.frame(actual=mtcars$mpg[-train], pred)
    test$error <- with(test, pred-actual)
test
            actual     pred      error
Datsun 710    22.8 24.08103  1.2810309
Valiant       18.1 23.26331  5.1633124
Merc 450SE    16.4 18.15257  1.7525717
Merc 450SL    17.3 18.15257  0.8525717
Merc 450SLC   15.2 18.15257  2.9525717
Fiat X1-9     27.3 25.92090 -1.3791024

Тепер обчисліть свою тестову статистику в звичайному порядку. Я ілюструю MSE та RMSE:

test.mse <- with(test, mean(error^2))
test.mse
[1] 7.119804

test.rmse <- sqrt(test.mse)
test.rmse
[1] 2.668296

Зауважте, що ця відповідь ігнорує зважування спостережень.


Дякую за цю відповідь, вона дійсно допомогла мені зрозуміти. Проводячи дослідження, урок Datacamp з придатності моделі описує іншу формулу, ніж ваша для RMSE. Я знайшов цю сторінку після пошуку в Google. Формула, яку ви дали для RMSE, має інтуїтивний сенс і її легко зрозуміти. Їх обчислення для RMSE включає ступінь свободи в знаменнику. Крім того, якщо я правильно прочитав їхній пост, вони говорять, що R викликає RMSE залишкову стандартну помилку, але з вашої відповіді це різні показники оцінки. Думки?
Doug Fir

22

Оригінальний плакат попросив відповісти "поясніть, як мені 5". Скажімо, ваш учитель школи запрошує вас та ваших однокласників допомогти відгадати ширину столу вчителя. Кожен з 20 учнів класу може вибрати пристрій (лінійку, шкалу, стрічку або мірку) і йому дозволяється вимірювати таблицю 10 разів. Вас усіх просять використовувати різні вихідні місця на пристрої, щоб уникнути повторного читання одного і того ж номера; тоді початкове читання потрібно відняти від закінчення читання, щоб нарешті отримати одне вимірювання ширини (ви нещодавно навчилися робити такий тип математики).

Загалом було проведено 200 вимірювань ширини, проведених класом (20 учнів, 10 вимірювань у кожному). Спостереження передаються вчителю, який розчавить числа. Віднімання спостережень кожного учня від опорного значення призведе до ще 200 чисел, званих відхиленнями . Учитель усереднює вибірку кожного учня окремо, отримуючи 20 засобів . Віднімання спостережень кожного учня від їх індивідуального середнього значення призведе до 200 відхилень від середнього, званого залишками . Якби середній залишок розраховувався для кожного зразка, ви помітили, що він завжди дорівнює нулю. Якщо замість цього ми квадратируємо кожен залишок, середнє значення їх і, нарешті, скасуємо квадрат, ми отримуємо стандартне відхилення. (До речі, ми називаємо, що останній обчислення розряджає квадратний корінь (подумайте про пошук основи чи сторони певного квадрата), тому всю операцію часто називають кореневим середнім квадратом , коротше; стандартне відхилення спостережень дорівнює середньоквадратичний квадрат залишків.)

Але вчитель уже знав справжню ширину столу, виходячи з того, як це було спроектовано, побудовано та перевірено на заводі. Тож ще 200 чисел, які називаються помилками , можна обчислити як відхилення спостережень щодо справжньої ширини. Середня помилка може бути обчислена для кожного студента зразка. Аналогічно для спостережень можна розрахувати 20 стандартних відхилень помилки або стандартну помилку . Більше 20 кореневих середньоквадратичних помилокзначення можуть бути також обчислені. Три набори з 20 значень пов'язані як sqrt (мені ^ 2 + se ^ 2) = rmse, у порядку появи. Виходячи з rmse, вчитель може судити, чий учень надав найкращу оцінку для ширини таблиці. Крім того, дивлячись окремо на 20 середніх помилок та 20 стандартних значень помилок, вчитель може доручити кожному студенту, як поліпшити свої читання.

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

Зараз тут є щось цікаве для вчителя. Ми можемо порівняти середнє значення кожного учня з рештою в класі (20 означає загальну кількість). Так само, як ми визначились перед цими точковими значеннями:

  • m: середнє значення (спостережень),
  • s: стандартне відхилення (спостережень)
  • я: середня помилка (спостережень)
  • se: стандартна помилка (із спостережень)
  • rmse: середньоквадратична помилка (із спостережень)

ми також можемо визначити зараз:

  • мм: середнє значення засобів
  • sm: стандартне відхилення середнього значення
  • mem: середня помилка середнього
  • sem: стандартна похибка середнього значення
  • rmsem: середньоквадратична помилка середнього

Тільки якщо клас учнів називається неупередженим, тобто якщо mem = 0, то sem = sm = rmsem; тобто середня похибка середнього, середнє середнє відхилення і середньоквадратична помилка середнього можуть бути однаковими за умови, що середня похибка середнього значення дорівнює нулю.

Якби ми взяли лише один зразок, тобто, якщо в класі був лише один учень, стандартне відхилення спостережень можна було б використати для оцінки стандартного відхилення середнього значення (см), як sm ^ 2 ~ s ^ 2 / n, де n = 10 - розмір вибірки (кількість показань на одного учня). Вони збігаються краще, оскільки розмір вибірки зростає (n = 10,11, ...; більше читання на кожного учня) та зростає кількість зразків (n '= 20,21, ...; більше учнів у класі). (Застереження: некваліфікована "стандартна помилка" частіше відноситься до стандартної похибки середнього, а не до стандартної помилки спостережень.)

Ось деякі деталі розрахунків. Справжнє значення позначається t.

Операції з встановленням точки

  • означає: MEAN (X)
  • середньоквадратичний квадрат: RMS (X)
  • стандартне відхилення: SD (X) = RMS (X-MEAN (X))

ВНУТРІЛЬНІ ЗРАБОТКИ:

  • спостереження (дані), X = {x_i}, i = 1, 2, ..., n = 10.
  • відхилення: різниця множини відносно фіксованої точки.
  • залишки: відхилення спостережень від їх середнього значення, R = Xm.
  • помилки: відхилення спостережень від справжнього значення, E = Xt.
  • залишкові помилки: відхилення помилок від їх середнього значення, RE = E-MEAN (E)

ВНУТРІЛОВНІ ТОЧКИ (див. Таблицю 1):

  • m: середнє значення (спостережень),
  • s: стандартне відхилення (спостережень)
  • я: середня помилка (спостережень)
  • se: стандартна помилка спостережень
  • rmse: середньоквадратична помилка (із спостережень)

Таблиця 1

НАСТРОЙКИ МІЖПРАМОТИ (СИСТЕМИ):

  • означає, M = {m_j}, j = 1, 2, ..., n '= 20.
  • залишки середнього: відхилення засобу від їх середнього, RM = M-мм.
  • помилки середнього: відхилення засобу від "істини", ЕМ = Mt.
  • залишкові помилки середнього: відхилення помилок середнього від їх середнього, REM = EM-MEAN (EM)

ІНТЕРАПРАВЛІННІ (СКЛАДНІ) БУНКИ (див. Таблицю 2):

  • мм: середнє значення засобів
  • sm: стандартне відхилення середнього значення
  • mem: середня помилка середнього
  • sem: стандартна помилка (середньої величини)
  • rmsem: середньоквадратична помилка середнього

Таблиця 2


0

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

Ось моя примітка про SSE та RMSE:

Перший показник: Сума помилок у квадраті (SSE). Інші назви, залишкова сума квадратів (RSS), сума квадратних залишків (SSR).

Якщо ми в оптимізаційній спільноті, SSE широко використовується. Це тому, що це мета в оптимізації, де оптимізація

мінімізуватиβ Хβ-у2

е=Хβ-уе2=еТе

Другий показник: Помилка середньоквадратичного значення (RMSE) . Інші назви, відхилення середньоквадратичних відхилень.

RMSE є

1N(Хβ-у)=1NеТе

N

у

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.