Hace algunos años escribí un artículo sobre esto para mis alumnos (en español), así que puedo intentar reescribir esas explicaciones aquí. Examinaré IRLS (mínimos cuadrados repesados de forma iterativa) a través de una serie de ejemplos de complejidad creciente. Para el primer ejemplo, necesitamos el concepto de una familia de escala de ubicación. Deje ser una función de densidad centrada en cero en algún sentido. Podemos construir una familia de densidades definiendo
donde es un parámetro de escala y f ( x ) = f ( x ; μ , σ ) = 1f0σ>0μf0N(μ,σ)
f(x)=f(x;μ,σ)=1σf0(x−μσ)
σ>0μes un parámetro de ubicación En el modelo de error de medición, donde el término de error habitual se modela como una distribución normal, en lugar de esa distribución normal podemos usar una familia de escala de ubicación como se construyó anteriormente. Cuando es la distribución normal estándar, la construcción anterior da la familia .
f0N(μ,σ)
Ahora usaremos IRLS en algunos ejemplos simples. Primero encontraremos los estimadores de ML (probabilidad máxima) en el modelo
con la densidad
la distribución de Cauchy la familia de ubicaciones (por lo que esta es una familia de ubicaciones). Pero primero alguna notación. El estimador de mínimos cuadrados ponderados de viene dado por
donde es algunos pesos. Veremos que el estimador ML de puede expresarse de la misma forma, con
Y1,Y2,…,Yni.i.d
f(y)=1π11+(y−μ)2,y∈R,
μμμ∗=∑ni=1wiyi∑ni=1wi.
wiμwialguna función de los residuos
La función de probabilidad viene dada por
y la función de verosimilitud viene dada por
Su derivada con respecto a es
donde . Escribir
ϵi=yi−μ^.
L(y;μ)=(1π)n∏i=1n11+(yi−μ)2
l(y)=−nlog(π)−∑i=1nlog(1+(yi−μ)2).
μ∂l(y)∂μ===0−∑∂∂μlog(1+(yi−μ)2)−∑2(yi−μ)1+(yi−μ)2⋅(−1)∑2ϵi1+ϵ2i
ϵi=yi−μf0(ϵ)=1π11+ϵ2 y , obtenemos
Encontramos
donde usamos la definición
f′0(ϵ)=1π−1⋅2ϵ(1+ϵ2)2f′0(ϵ)f0(ϵ)=−1⋅2ϵ(1+ϵ2)211+ϵ2=−2ϵ1+ϵ2.
∂l(y)∂μ===−∑f′0(ϵi)f0(ϵi)−∑f′0(ϵi)f0(ϵi)⋅(−1ϵi)⋅(−ϵi)∑wiϵi
wi=f′0(ϵi)f0(ϵi)⋅(−1ϵi)=−2ϵi1+ϵ2i⋅(−1ϵi)=21+ϵ2i.
Recordando que
obtenemos la ecuación
que es la ecuación de estimación de IRLS. Tenga en cuenta que
ϵi=yi−μ∑wiyi=μ∑wi,
- Los pesos son siempre positivos.wi
- Si el residuo es grande, le damos menos peso a la observación correspondiente.
Para calcular el estimador de ML en la práctica, necesitamos un valor inicial , podríamos usar la mediana, por ejemplo. Usando este valor calculamos los residuos
y los pesos
El nuevo valor de viene dado por
Continuando de esta manera, definimos
y
El valor estimado en el paso del algoritmo se convierte en
μ^(0)
ϵ(0)i=yi−μ^(0)
w(0)i=21+ϵ(0)i.
μ^μ^(1)=∑w(0)iyi∑w(0)i.
ϵ(j)i=yi−μ^(j)
w(j)i=21+ϵ(j)i.
j+1μ^(j+1)=∑w(j)iyi∑w(j)i.
Continuando hasta que la secuencia
converja.
μ^(0),μ^(1),…,μ^(j),…
Ahora estudiamos este proceso con una ubicación más general y una familia de escalas, , con menos detalles. Deje que sean independientes con la densidad anterior. Defina también . La función de verosimilitud es
Al escribir , tenga en cuenta que
y
Cálculo de la derivada de verosimilitud
f(y)=1σf0(y−μσ)Y1,Y2,…,Ynϵi=yi−μσ
l(y)=−n2log(σ2)+∑log(f0(yi−μσ)).
ν=σ2∂ϵi∂μ=−1σ
∂ϵi∂ν=(yi−μ)(1ν−−√)′=(yi−μ)⋅−12σ3.
∂l(y)∂μ=∑f′0(ϵi)f0(ϵi)⋅∂ϵi∂μ=∑f′0(ϵi)f0(ϵi)⋅(−1σ)=−1σ∑f′o(ϵi)f0(ϵi)⋅(−1ϵi)(−ϵi)=1σ∑wiϵi
e igualar esto a cero da la misma ecuación de estimación que el primer ejemplo. Luego buscando un estimador para :
σ2∂l(y)∂ν=====−n21ν+∑f′0(ϵi)f0(ϵi)⋅∂ϵi∂ν−n21ν+∑f′0(ϵi)f0(ϵi)⋅(−(yi−μ)2σ3)−n21ν−121σ2∑f′0(ϵi)f0(ϵi)⋅ϵi−n21ν−121ν∑f′0(ϵi)f0(ϵi)⋅(−1ϵi)(−ϵi)⋅ϵi−n21ν+121ν∑wiϵ2i=!0.
que conduce al estimador
El algoritmo iterativo anterior también se puede utilizar en este caso.
σ2^=1n∑wi(yi−μ^)2.
A continuación damos un ejemplo numérico usando R, para el modelo exponencial doble (con escala conocida) y con datos y <- c(-5,-1,0,1,5)
. Para estos datos, el valor verdadero del estimador ML es 0. El valor inicial será mu <- 0.5
. Una pasada del algoritmo es
iterest <- function(y, mu) {
w <- 1/abs(y-mu)
weighted.mean(y,w)
}
con esta función puedes experimentar haciendo las iteraciones "a mano". Luego, el algoritmo iterativo puede hacerse
mu_0 <- 0.5
repeat {mu <- iterest(y,mu_0)
if (abs(mu_0 - mu) < 0.000001) break
mu_0 <- mu }
Ejercicio: si el modelo es una distribución con el parámetro de escala muestre que las iteraciones están dadas por el peso
Ejercicio: si la densidad es logística, muestre que los pesos están dados por
tkσw(ϵ)=1-eϵ
wi=k+1k+ϵ2i.
w(ϵ)=1−eϵ1+eϵ⋅−1ϵ.
Por el momento lo dejaré aquí, continuaré esta publicación.