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
" 테스트 오류 " 라는 용어를 들었던 상황을 설명해 주 시겠습니까? 이 때문에 되는 일이 '테스트 오류'라고하지만 난 꽤 확신 그것은 당신이 (그것이 가지고있는 상황에서 발생 찾고있는 무엇을 테스트 세트트레이닝 세트를 소리의 친숙한 혹시 .... 너 ....? )
Steve S

예-테스트 세트에 적용된 훈련 세트에서 생성 된 모델입니다. 테스트 오류는 y로 모델링됩니다-테스트 y 또는 (모델화 된 y-테스트 y) ^ 2 또는 (모델 된 y-테스트 y) ^ 2 /// DF (또는 N?) 또는 ((모델화 된 y-테스트 y)) ^ 2 / N) ^. 5?
user3788557

답변:


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 ( root mean squared error )는 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 % 샘플)를 사용하여 모델을 추정 한 다음 홀드 아웃 샘플을 사용하여 오류를 계산합니다. 이번에도 mtcars80 % 샘플을 사용하여

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에 대한 것과 다른 공식을 설명합니다. 내가 발견 구글 검색 후 페이지를. RMSE에 제공 한 공식은 직관적이며 이해하기 쉽습니다. RMSE에 대한 계산에는 분모의 자유도가 포함됩니다. 또한 게시물을 올바르게 읽으면 R이 RMSE를 잔류 표준 오류라고 부르지 만 답변에서 이들은 고유 한 평가 지표입니다. 생각?
Doug Fir

21

원래의 포스터는 "나처럼 5 명"이라고 답했습니다. 학교 선생님이 선생님과 학생의 친구를 초대하여 선생님의 테이블 너비를 추측한다고 가정 해 봅시다. 수업에 참여하는 20 명의 학생들은 각각 장치 (룰러, 스케일, 테이프 또는 척도)를 선택할 수 있으며 테이블을 10 번 측정 할 수 있습니다. 동일한 번호를 반복해서 읽지 않도록 장치에서 서로 다른 시작 위치를 사용해야합니다. 그런 다음 시작 판독 값을 끝 판독 값에서 빼서 최종적으로 하나의 폭 측정 값을 얻습니다 (최근에 해당 유형의 수학을 수행하는 방법을 배웠습니다).

수업에서 총 200 개의 폭 측정을 수행했습니다 (20 명, 각 10 개 측정). 관찰 내용은 교사에게 전달되어 교사는 숫자를 위기에 처하게됩니다. 기준값에서 각 학생의 관측 값을 빼면 편차 라는 또 다른 200 개의 숫자가 생성됩니다 . 교사의 평균은 각 학생의 샘플 별도로, 20 개 취득 수단을 . 개별 평균에서 각 학생의 관측치를 빼면 잔차 라는 평균에서 200 편차가 발생합니다 . 경우 평균 잔류는 각 샘플에 대해 계산했다, 당신은 항상 0입니다 알 것입니다. 대신 각 잔차를 제곱하고 평균을 구한 다음 마지막으로 제곱을 취소하면 표준 편차를 얻습니다.. (그런 식으로, 우리는 마지막 계산 비트를 제곱근이라고 부릅니다 (주어진 제곱의 밑면 또는 측면을 찾는 것을 생각하십시오). 전체 연산을 간단히 root-mean-square 라고 합니다 . 관찰의 표준 편차는 잔차의 제곱 평균 제곱근)

그러나 교사는 공장에서 설계 및 제작 및 확인한 방법에 따라 실제 테이블 너비를 이미 알고있었습니다. 따라서 errors 라고하는 또 다른 200 개의 숫자 는 실제 너비에 대한 관측치의 편차로 계산할 수 있습니다. 평균 오차는 각 학생의 샘플에 대해 계산 될 수있다. 마찬가지로 관측치에 대해 오차의 20 표준 편차 또는 표준 오차 를 계산할 수 있습니다. 20 평균 제곱근 오류값도 계산할 수 있습니다. 20 개의 값으로 구성된 3 가지 세트는 모양 순서대로 sqrt (me ^ 2 + se ^ 2) = rmse로 관련됩니다. rmse를 기준으로 교사는 학생이 테이블 너비에 가장 적합한 추정치를 제공 한 것으로 판단 할 수 있습니다. 또한 교사는 20 개의 평균 오류와 20 개의 표준 오류 값을 개별적으로 살펴봄으로써 각 학생에게 독해력을 향상시키는 방법을 가르 칠 수 있습니다.

확인으로, 교사는 각각의 오류를 각각의 평균 오류에서 빼고, 또 다른 200 개의 숫자를 가져 왔으며, 우리는 잔여 오류 (종종 그렇지 않은) 라고 부릅니다 . 위와 같이 평균 잔차 오차 는 0이므로 잔차 오차표준 편차 또는 표준 잔차 오차표준 오차 와 동일하며, 사실상 제곱 평균 잔차 오차 도 마찬가지입니다. (자세한 내용은 아래를 참조하십시오.)

이제 선생님에게 관심있는 것이 있습니다. 각 학생의 평균을 나머지 수업과 비교할 수 있습니다 (총 20 개 평균). 이 포인트 값 이전에 정의한 것처럼 :

  • m : 관측치의 평균
  • s : 관측치의 표준 편차
  • 나 : (관측의) 평균 오차
  • se : 표준 오차 (관측 값)
  • rmse : (평균 관측 값의 제곱근 오차)

우리는 또한 지금 정의 할 수 있습니다 :

  • mm : 평균의 평균
  • sm : 평균의 표준 편차
  • mem : 평균의 평균 오차
  • sem : 평균의 표준 오차
  • rmsem : 평균의 제곱근 오차

학생들의 수업이 편견이 없다고 말한 경우에만, 즉 mem = 0이면 sem = sm = rmsem; 즉, 평균의 표준 오차, 평균의 표준 편차 및 제곱 평균 오차는 평균의 평균 오차가 0 인 경우 평균은 동일 할 수 있습니다.

우리가 단 하나의 표본 만 취한 경우, 즉 수업에 학생이 한 명 뿐인 경우 관측치의 표준 편차를 사용하여 평균의 표준 편차 (sm)를 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-mm.
  • 평균의 오차 : "진실"로부터 평균의 편차, EM = Mt.
  • 평균의 잔류 오차 : 평균의 평균 오차 편차, REM = EM-MEAN (EM)

인터 샘플 (가능) 포인트 (표 2 참조) :

  • mm : 평균의 평균
  • sm : 평균의 표준 편차
  • mem : 평균의 평균 오차
  • sem : 표준 오차 (평균)
  • rmsem : 평균의 제곱근 오차

표 2


0

또한 모든 용어가 매우 혼란 스럽다고 생각합니다. 왜 이러한 많은 측정 항목이 필요한지 설명 할 필요가 있다고 생각합니다.

다음은 SSE 및 RMSE에 대한 참고 사항입니다.

첫 번째 측정 항목 : SSE (Sum of Squared Errors). 다른 이름, 잔류 잔차 제곱 (RSS), 제곱 잔차의 합 (SSR).

우리가 최적화 커뮤니티에 있다면 SSE가 널리 사용됩니다. 최적화의 목표이기 때문에 최적화가

최소화β 엑스β와이2

이자형=엑스β와이이자형2=이자형이자형

두 번째 메트릭 : RMSE (root-mean-square error) . 다른 이름은 제곱 평균 편차입니다.

RMSE는

1(엑스β와이)=1이자형이자형

와이

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.