Intervalo de confianza de RMSE


20

He tomado una muestra de puntos de datos de una población. Cada uno de estos puntos tiene un valor verdadero (conocido por la verdad básica) y un valor estimado. Luego calculo el error para cada punto muestreado y luego calculo el RMSE de la muestra.norte

¿Cómo puedo inferir algún tipo de intervalo de confianza alrededor de este RMSE, basado en el tamaño de muestra ?norte

Si estuviera usando la media, en lugar de la RMSE, entonces no tendría problemas para hacerlo, ya que puedo usar la ecuación estándar

metro=Zσnorte

pero no sé si esto es válido para RMSE en lugar de la media. ¿Hay alguna manera de que pueda adaptar esto?

(He visto esta pregunta , pero no tengo problemas con la distribución normal de mi población, que es de lo que trata la respuesta)


¿Qué estás computando específicamente cuando "calculas el RMSE de la muestra"? ¿Es el RMSE de los valores verdaderos, de los valores estimados o de sus diferencias?
whuber

2
Estoy calculando el RMSE de las diferencias, es decir, calculando la raíz cuadrada de la media de las diferencias al cuadrado entre los valores verdaderos y estimados.
robintw

Si conoce la 'verdad fundamental' (aunque no estoy seguro de lo que eso realmente significa), ¿por qué necesitaría la incertidumbre en RMSE? ¿Estás tratando de construir algún tipo de inferencia sobre casos en los que no tienes la verdad básica? ¿Es este un problema de calibración?
Glen_b -Reinstalar Monica

@Glen_b: Sí, eso es exactamente lo que estamos tratando de hacer. No tenemos la verdad fundamental para toda la población, solo para la muestra. Luego estamos calculando un RMSE para la muestra, y queremos tener los intervalos de confianza en esto ya que estamos usando esta muestra para inferir el RMSE de la población.
robintw

1
Posible duplicado de SE de RMSE en R
Curioso

Respuestas:


15

Con un razonamiento similar al de aquí , podría dar una respuesta a su pregunta bajo ciertas condiciones.

Vamos ser tu verdadero valor para el i t h punto de datos y x i el valor estimado. Si suponemos que las diferencias entre los valores estimados y verdaderos tienenxiithx^i

  1. media cero (es decir, el x i se distribuyen alrededor de x i )x^ixi

  2. seguir una distribución normal

  3. y todos tienen la misma desviación estándar σ

en breve:

X^yo-Xyonorte(0 0,σ2),

entonces realmente quieres un intervalo de confianza para .σ

Si las suposiciones anteriores son verdaderas sigue unadistribuciónχ 2 n conn(non-1) grados de libertad. Esto significa

norteRMSE2σ2=norte1norteyo(Xyo^-Xyo)2σ2
χnorte2nn1

P(χα2,n2nRMSE2σ2χ1α2,n2)=1αP(nRMSE2χ1α2,n2σ2nRMSE2χα2,n2)=1αP(nχ1α2,n2RMSEσnχα2,n2RMSE)=1α.

Por lo tanto, es su intervalo de confianza.

[nχ1α2,n2RMSE,nχα2,n2RMSE]

Aquí hay un programa de Python que simula su situación.

from scipy import stats
from numpy import *
s = 3
n=10
c1,c2 = stats.chi2.ppf([0.025,1-0.025],n)
y = zeros(50000)
for i in range(len(y)):
    y[i] =sqrt( mean((random.randn(n)*s)**2))

print "1-alpha=%.2f" % (mean( (sqrt(n/c2)*y < s) & (sqrt(n/c1)*y > s)),)

Espero que ayude.

Si no está seguro de si se aplican los supuestos o si desea comparar lo que escribí con un método diferente, siempre puede intentar el arranque .


1
σ

1
MSE=σ^2=1norteyo=1norte(Xyo-X^yo)2nortenorte-1ya que no estás restando la muestra significa aquí. El RMSE correspondería entonces aσ. Por lo tanto, la población RMSE esσy quieres un CI para eso. Eso es lo que deduje. De lo contrario, debo entender completamente su problema.
fabee

10

El razonamiento en la respuesta de fabee parece correcto si se aplica al STDE (desviación estándar del error), no al RMSE. Usando una nomenclatura similar,yo=1,...,norte is an index representing each record of data, xi is the true value and x^i is a measurement or prediction.

The error ϵi, BIAS, MSE (mean squared error) and RMSE are given by:

ϵi=x^ixi,BIAS=ϵ¯=1ni=1nϵi,MSE=ϵ2¯=1ni=1nϵi2,RMSE=MSE.

Agreeing on these definitions, the BIAS corresponds to the sample mean of ϵ, but MSE is not the biased sample variance. Instead:

STDE2=(ϵϵ¯)2¯=1ni=1n(ϵiϵ¯)2,
or, if both BIAS and RMSE were computed,
STDE2=(ϵϵ¯)2¯=ϵ2¯ϵ¯2=RMSE2BIAS2.
Note that the biased sample variance is being used instead of the unbiased, to keep consistency with the previous definitions given for the MSE and RMSE.

Thus, in my opinion the confidence intervals established by fabee refer to the sample standard deviation of ϵ, STDE. Similarly, confidence intervals may be established for the BIAS based on the z-score (or t-score if n<30) and STDE/n.


2
You are right, but missed a part of my answer. I basically assumed that BIAS=0 (see assumption 1). In that case, RMSE2=STDE2 as you derived. Since both RMSE2 and BIAS2 are χ2 and there exists a close form solution for the sum of two χ2 RVs, you can probably derive a close form confidence interval for the case when assumption 1 is dropped. If you do that and update your answer, I'll definitely upvote it.
fabee

0

Following Faaber 1999, the uncertainty of RMSE is given as

σ(RMSE^)/RMSE=12n
where n is the number of datapoints.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.