R - Confuso com Terminologia Residual

34
  • Erro quadrático médio da raiz
  • soma residual de quadrados
  • erro padrão residual
  • erro quadrático médio
  • erro de teste

Eu achava que costumava entender esses termos, mas quanto mais eu faço problemas estatísticos, mais me confundei com o que acho. Gostaria de alguma garantia e um exemplo concreto

Posso encontrar facilmente as equações on-line, mas estou tendo problemas para obter uma explicação desses termos para 'explicar como se eu tivesse 5', para poder cristalizar na minha cabeça as diferenças e como uma leva à outra.

Se alguém puder pegar esse código abaixo e apontar como calcularia cada um desses termos, eu o apreciaria. Código R seria ótimo ..

Usando este exemplo abaixo:

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

Mostre-me no código R como encontrar:

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

Pontos de bônus por explicar como eu tenho 5 diferenças / semelhanças entre elas. exemplo:

rmse = squareroot(mss)
user3788557
fonte
2
Você poderia dar o contexto em que ouviu o termo " erro de teste "? Porque não é algo chamado 'erro de teste', mas eu não estou muito certo que é o que você está procurando ... (ela surge no contexto de ter um conjunto de teste e um conjunto de treinamento --does nada disso soa familiar? )
Steve S
Sim - entendo que é o modelo gerado no conjunto de treinamento aplicado ao conjunto de teste. O erro de teste é y modelado - teste y ou (y modelado - teste y) ^ 2 ou (y modelado - teste y) ^ 2 /// DF (ou N?) Ou ((y modelado - teste y) ^ 2 / N) ^ .5?
user3788557

Respostas:

60

Conforme solicitado, ilustro usando uma regressão simples usando os mtcarsdados:

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

O erro quadrático médio (MSE) é a média do quadrado dos resíduos:

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

O erro quadrático médio da raiz (RMSE) é a raiz quadrada do MSE:

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

A soma residual dos quadrados (RSS) é a soma dos resíduos quadrados:

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

O erro padrão residual (RSE) é a raiz quadrada de (RSS / graus de liberdade):

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

O mesmo cálculo, simplificado porque já calculamos anteriormente rss:

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

O termo erro de teste no contexto de regressão (e outras técnicas de análise preditiva) geralmente se refere ao cálculo de uma estatística de teste nos dados de teste, diferente dos dados de treinamento.

Em outras palavras, você estima um modelo usando uma parte de seus dados (geralmente uma amostra de 80%) e depois calcula o erro usando a amostra de espera. Novamente, eu ilustro usando mtcars, desta vez com uma amostra de 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

Estime o modelo e preveja com os dados de espera:

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 

Combine os dados originais e a previsão em um quadro de dados

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

Agora calcule suas estatísticas de teste da maneira normal. Ilustro MSE e RMSE:

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

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

Observe que esta resposta ignora a ponderação das observações.

Andrie
fonte
Obrigado por esta resposta que realmente me ajudou a entender. Ao pesquisar, a lição do Datacamp sobre ajuste de modelo descreve uma fórmula diferente da sua para o RMSE. Encontrei esta página após uma pesquisa no Google. A fórmula que você deu para o RMSE faz sentido intuitivo e é fácil de entender. Seu cálculo para o RMSE envolve os graus de liberdade no denominador. Além disso, se eu ler o post corretamente, eles dizem que R chama RMSE de erro padrão residual, mas, na sua resposta, essas são métricas de avaliação distintas. Pensamentos?
Doug Fir
22

O pôster original pedia uma resposta "explique como se eu tivesse 5 anos". Digamos que seu professor convida você e seus colegas para adivinhar a largura da mesa do professor. Cada um dos 20 alunos da turma pode escolher um dispositivo (régua, balança, fita ou critério) e pode medir a tabela 10 vezes. Todos são convidados a usar diferentes locais de partida no dispositivo para evitar a leitura repetida do mesmo número; a leitura inicial deve ser subtraída da leitura final para finalmente obter uma medição de largura (você aprendeu recentemente como fazer esse tipo de matemática).

No total, foram realizadas 200 medidas de largura realizadas pela classe (20 alunos, 10 medidas cada). As observações são entregues ao professor que analisará os números. Subtrair as observações de cada aluno de um valor de referência resultará em outros 200 números, chamados desvios . O professor calcula a média da amostra de cada aluno separadamente, obtendo 20 médias . Subtrair as observações de cada aluno de sua média individual resultará em 200 desvios da média, chamados resíduos . Se o resíduo médio fosse calculado para cada amostra, você notaria que é sempre zero. Se, em vez disso, quadrado cada resíduo, calculá-lo pela média e, finalmente, desfazer o quadrado, obtemos o desvio padrão. (A propósito, chamamos esse último cálculo de raiz quadrada (pense em encontrar a base ou o lado de um determinado quadrado); portanto, toda a operação é chamada de raiz quadrada média , para abreviar; o desvio padrão das observações é igual a raiz quadrada média dos resíduos.)

Mas o professor já sabia a verdadeira largura da tabela, com base em como ela foi projetada, construída e verificada na fábrica. Portanto, outros 200 números, chamados de erros , podem ser calculados como o desvio das observações em relação à largura real. Um erro médio pode ser calculado para cada amostra de aluno. Da mesma forma, 20 desvios padrão do erro , ou erro padrão , podem ser calculados para as observações. Mais 20 erros de raiz quadrada médiaos valores também podem ser calculados. Os três conjuntos de 20 valores estão relacionados como sqrt (me ^ 2 + se ^ 2) = rmse, em ordem de aparência. Com base no rmse, o professor pode julgar qual aluno forneceu a melhor estimativa para a largura da tabela. Além disso, analisando separadamente os 20 erros médios e os 20 valores de erro padrão, o professor pode instruir cada aluno sobre como melhorar suas leituras.

Como verificação, o professor subtraiu cada erro de seu respectivo erro médio, resultando em mais 200 números, que chamaremos de erros residuais (isso geralmente não é feito). Como acima, o erro residual médio é zero, portanto o desvio padrão dos erros residuais ou do erro residual padrão é o mesmo que o erro padrão e, de fato, também é o erro residual da raiz quadrada da média quadrada . (Veja abaixo para detalhes.)

Agora, aqui está algo de interesse para o professor. Podemos comparar a média de cada aluno com o restante da turma (20 significa total). Assim como definimos antes desses valores de ponto:

  • m: média (das observações),
  • s: desvio padrão (das observações)
  • eu: erro médio (das observações)
  • se: erro padrão (das observações)
  • rmse: erro da raiz quadrada da média (das observações)

também podemos definir agora:

  • mm: média das médias
  • sm: desvio padrão da média
  • mem: erro médio da média
  • sem: erro padrão da média
  • rmsem: erro raiz quadrático médio da média

Somente se a classe dos alunos for considerada imparcial, ou seja, se mem = 0, então sem = sm = rmsem; isto é, erro padrão da média, desvio padrão da média e erro da raiz quadrada da média, a média pode ser a mesma desde que o erro médio da média seja zero.

Se tivéssemos tirado apenas uma amostra, ou seja, se houvesse apenas um aluno em sala de aula, o desvio padrão das observações poderia ser usado para estimar o desvio padrão da média (sm), como sm ^ 2 ~ s ^ 2 / n, onde n = 10 é o tamanho da amostra (o número de leituras por aluno). Os dois concordam melhor à medida que o tamanho da amostra aumenta (n = 10,11, ...; mais leituras por aluno) e o número de amostras cresce (n '= 20,21, ...; mais alunos na sala de aula). (Uma ressalva: um "erro padrão" não qualificado se refere mais frequentemente ao erro padrão da média, e não ao erro padrão das observações.)

Aqui estão alguns detalhes dos cálculos envolvidos. O valor verdadeiro é denotado t.

Operações de ponto a ponto:

  • mean: MEAN (X)
  • raiz quadrada média: RMS (X)
  • desvio padrão: SD (X) = RMS (X-MEAN (X))

CONJUNTOS INTRA-AMOSTRA:

  • observações (dadas), X = {x_i}, i = 1, 2, ..., n = 10.
  • desvios: diferença de um conjunto em relação a um ponto fixo.
  • resíduos: desvio das observações em relação à sua média, R = Xm.
  • erros: desvio das observações do valor verdadeiro, E = Xt.
  • erros residuais: desvio dos erros em relação à sua média, RE = E-MEAN (E)

PONTOS INTRA-AMOSTRA (consulte a tabela 1):

  • m: média (das observações),
  • s: desvio padrão (das observações)
  • eu: erro médio (das observações)
  • se: erro padrão das observações
  • rmse: erro da raiz quadrada da média (das observações)

tabela 1

CONJUNTOS INTER-AMOSTRA (CONJUNTO):

  • significa, M = {m_j}, j = 1, 2, ..., n '= 20.
  • resíduos da média: desvio das médias de sua média, RM = M-mm.
  • erros da média: desvio da média da "verdade", EM = Mt.
  • erros residuais da média: desvio dos erros da média em relação à média, REM = EM-MEAN (EM)

PONTOS INTER-AMOSTRA (ENSEMBLE) (consulte a tabela 2):

  • mm: média das médias
  • sm: desvio padrão da média
  • mem: erro médio da média
  • sem: erro padrão (da média)
  • rmsem: erro raiz quadrático médio da média

mesa 2

Felipe G. Nievinski
fonte
0

Eu também sinto que todos os termos são muito confusos. Eu sinto fortemente que é necessário explicar por que temos essas muitas métricas.

Aqui está minha nota sobre SSE e RMSE:

Primeira métrica: soma dos erros quadráticos (SSE). Outros nomes, Soma dos quadrados residuais (RSS), Soma dos resíduos quadrados (SSR).

Se estamos na comunidade de otimização, o SSE é amplamente usado. É porque é o objetivo da otimização, onde a otimização é

minimizarβ __Xβ-y__2

e=Xβ-y__e__2=eTe

Segunda métrica: erro de raiz quadrada média (RMSE) . Outros nomes, desvio da raiz média dos quadrados.

RMSE é

__1 1N(Xβ-y)__=1 1NeTe

N

y

Haitao Du
fonte