Jednym z przykładów, który przychodzi mi na myśl, jest estymator GLS, który waży obserwacje w różny sposób, chociaż nie jest to konieczne, gdy spełnione są założenia Gaussa-Markowa (które statystycy mogą nie wiedzieć, że tak jest i dlatego mają zastosowanie, nadal stosują GLS).
Rozważmy przypadek regresji yi , i=1,…,n na stałym na rysunku (łatwo uogólnia ogólnym estymatorów GLS). Tutaj przyjmuje się , że {yi} jest losową próbką z populacji o średniej μ i wariancji σ2 .
Wtedy wiemy, że OLS jest tylko β = ˉ y , średnia próbka. Podkreślić, że każdy punkt obserwacyjny ważona masy 1 / n , zapis ten jako
β = n Ď i = 1, 1β^=y¯1/nβ^=∑i=1n1nyi.
Jest dobrze wiadomo, żeVar(β^)=σ2/n.
β~=∑i=1nwiyi,
∑iwi=1E(∑i=1nwiyi)=∑i=1nwiE(yi)=∑i=1nwiμ=μ.
wi=1/ni
L=V(β~)−λ(∑iwi−1)=∑iw2iσ2−λ(∑iwi−1),
wi2σ2wi−λ=0i∂L/∂λ=0∑iwi−1=0λwi=wjwi=1/n minimizes the variance, by the requirement that the weights sum to one.
Here is a graphical illustration from a little simulation, created with the code below:
EDIT: In response to @kjetilbhalvorsen's and @RichardHardy's suggestions I also include the median of the yi, MLE parametru lokalizacji pf przy rozkładzie (4) (dostaję ostrzeżenia, In log(s) : NaNs produced
że nie sprawdziłem więcej) i estymator Hubera na wykresie.
Zauważamy, że wszystkie estymatory wydają się być obiektywne. Jednak estymator, który wykorzystuje wagiwja= ( 1 ± ϵ ) / nponieważ wagi dla każdej połowy próbki są bardziej zmienne, podobnie jak mediana, MLE rozkładu t i estymator Hubera (ten ostatni tylko nieznacznie, patrz także tutaj ).
To, że trzy ostatnie są lepsze od rozwiązania OLS, nie jest natychmiast sugerowane przez NIEBIESKĄ właściwość (przynajmniej nie dla mnie), ponieważ nie jest oczywiste, czy są to estymatory liniowe (ani nie wiem, czy MLE i Huber są obiektywne).
library(MASS)
n <- 100
reps <- 1e6
epsilon <- 0.5
w <- c(rep((1+epsilon)/n,n/2),rep((1-epsilon)/n,n/2))
ols <- weightedestimator <- lad <- mle.t4 <- huberest <- rep(NA,reps)
for (i in 1:reps)
{
y <- rnorm(n)
ols[i] <- mean(y)
weightedestimator[i] <- crossprod(w,y)
lad[i] <- median(y)
mle.t4[i] <- fitdistr(y, "t", df=4)$estimate[1]
huberest[i] <- huber(y)$mu
}
plot(density(ols), col="purple", lwd=3, main="Kernel-estimate of density of OLS and other estimators",xlab="")
lines(density(weightedestimator), col="lightblue2", lwd=3)
lines(density(lad), col="salmon", lwd=3)
lines(density(mle.t4), col="green", lwd=3)
lines(density(huberest), col="#949413", lwd=3)
abline(v=0,lty=2)
legend('topright', c("OLS","weighted","median", "MLE t, 4 df", "Huber"), col=c("purple","lightblue","salmon","green", "#949413"), lwd=3)