To dwa pytania: jedno o tym, w jaki sposób średnia i mediana minimalizują funkcje utraty, a drugie o wrażliwość tych oszacowań na dane. Oba pytania są ze sobą powiązane, jak zobaczymy.
Minimalizowanie strat
Podsumowanie (lub estymator) środka partii liczb można utworzyć, pozwalając na zmianę wartości podsumowania i wyobrażając sobie, że każda liczba w partii wywiera siłę przywracającą tę wartość. Kiedy siła nigdy nie wypycha wartości od liczby, to prawdopodobnie każdy punkt, w którym siły równoważą się, jest „środkiem” partii.
Kwadratowa ( ) strataL2
Na przykład, jeśli mamy dołączyć klasyczną sprężynę (zgodnie z prawem Hooke'a ) między podsumowaniem a każdą liczbą, siła byłaby proporcjonalna do odległości do każdej sprężyny. Sprężyny wyciągnęłyby podsumowanie w ten sposób i ostatecznie, osiedlając się w wyjątkowym, stabilnym miejscu o minimalnej energii.
Chciałbym zwrócić uwagę na małą sztuczkę, która właśnie się wydarzyła: energia jest proporcjonalna do sumy kwadratowych odległości. Mechanika Newtona uczy nas, że siła jest szybkością zmiany energii. Osiągnięcie równowagi - minimalizacja energii - powoduje zrównoważenie sił. Szybkość netto zmiany energii wynosi zero.
Nazwijmy to „ podsumowaniem ” lub „podsumowaniem strat kwadratowych”.L2
Absolute ( ) StrataL1
Kolejne podsumowanie można utworzyć, zakładając, że rozmiary sił przywracających są stałe , niezależnie od odległości między wartością a danymi. Same siły nie są jednak stałe, ponieważ zawsze muszą przyciągać wartość w kierunku każdego punktu danych. Zatem, gdy wartość jest mniejsza niż punkt danych, siła jest skierowana dodatnio, ale gdy wartość jest większa niż punkt danych, siła jest skierowana ujemnie. Teraz energia jest proporcjonalna do odległości między wartością a danymi. Zazwyczaj będzie cały obszar, w którym energia jest stała, a siła netto wynosi zero. Każda wartość w tym regionie możemy nazwać „ podsumowaniem ” lub „podsumowaniem strat bezwzględnych”.L1
Te fizyczne analogie dostarczają użytecznej intuicji na temat dwóch podsumowań. Na przykład, co stanie się z podsumowaniem, jeśli przeniesiemy jeden z punktów danych? W przypadku z przymocowanymi sprężynami przesunięcie jednego punktu danych albo rozciąga, albo rozluźnia jego sprężynę. Rezultatem jest zmiana obowiązująca dla podsumowania, więc musi się zmienić w odpowiedzi. Jednak w przypadku zmiana punktu danych w większości nie wpływa na podsumowanie, ponieważ siła jest lokalnie stała. Jedynym sposobem, w jaki siła może się zmienić, jest przesunięcie punktu danych w podsumowaniu.L2L1
(W rzeczywistości powinno być oczywiste, że siła netto na wartości jest podana przez liczbę punktów większą od niej - która ciągnie ją w górę - minus liczba punktów mniejszych niż - która ciągnie ją w dół. podsumowanie musi pojawić się w dowolnym miejscu, w którym liczba wartości danych przekracza ona dokładnie równa liczbie wartości danych mniej niż to.)L1
Przedstawienie strat
Ponieważ zarówno siły, jak i energie sumują się, w obu przypadkach możemy rozkładać energię netto na poszczególne wkłady z punktów danych. Wykreślając energię lub siłę w funkcji wartości podsumowującej, zapewnia to szczegółowy obraz tego, co się dzieje. Podsumowanie będzie miejscem, w którym energia (lub „strata” w języku statystycznym) jest najmniejsza. Równolegle będzie to miejsce, w którym siły się równoważą: centrum danych występuje, gdy zmiana netto straty wynosi zero.
Ten rysunek pokazuje energie i siły dla małego zestawu danych o sześciu wartościach (oznaczonych słabymi pionowymi liniami na każdym wykresie). Czarne przerywane krzywe to sumy kolorowych krzywych pokazujące wkład poszczególnych wartości. Oś x wskazuje możliwe wartości podsumowania.
Arytmetyczna to punkt, w którym jest zminimalizowane straty kwadratów: będzie on usytuowany przy wierzchołku (na dole), czarnej paraboli, w lewym górnym rogu wykresu. Jest zawsze wyjątkowy. Środkowa jest punktem, w których konieczna strata jest zminimalizowane. Jak wspomniano powyżej, musi to nastąpić w środku danych. To niekoniecznie jest wyjątkowe. Zostanie on umieszczony na dole złamanej czarnej krzywej w prawym górnym rogu. (Dno faktycznie składa się z krótkiej płaskiej sekcji między a ; każda wartość w tym przedziale jest medianą).−0.23−0.17
Analiza wrażliwości
Wcześniej opisałem, co może się stać z podsumowaniem, gdy punkt danych jest zmienny. Warto wykreślić, jak zmienia się podsumowanie w odpowiedzi na zmianę dowolnego pojedynczego punktu danych. (Te wykresy są zasadniczo empirycznymi funkcjami wpływu . Różnią się one od zwykłej definicji tym, że pokazują rzeczywiste wartości szacunków, a nie to, jak bardzo te wartości się zmieniają.) Wartość podsumowania jest oznaczona „Szacunek” na y - przypomina, że w tym podsumowaniu oszacowano, gdzie znajduje się środek zestawu danych. Nowe (zmienione) wartości każdego punktu danych są pokazane na ich osiach x.
Ta rycina przedstawia wyniki różnicowania każdej wartości danych w partii (ta sama analizowana na pierwszej ). Dla każdej wartości danych jest jeden wykres, który jest podświetlony na swoim wykresie długim czarnym pasemkiem wzdłuż dolnej osi. (Pozostałe wartości danych są pokazane za pomocą krótkich szarych .) Niebieska krzywa śledzi podsumowanie - średnia arytmetyczna - a czerwona krzywa śledzi podsumowanie - mediana. (Ponieważ często mediana jest zakresem wartości, przestrzegana jest tutaj konwencja wykreślania środka tego zakresu).−1.02,−0.82,−0.23,−0.17,−0.08,0.77L2L1
Ogłoszenie:
Czułość średniej jest nieograniczona: te niebieskie linie rozciągają się nieskończenie daleko w górę iw dół. Czułość mediany jest ograniczona: górne i dolne granice czerwonych krzywych.
Tam, gdzie mediana się zmienia, zmienia się znacznie szybciej niż średnia. Nachylenie każdej niebieskiej linii wynosi (ogólnie jest to dla zestawu danych o wartości ), podczas gdy wszystkie nachylenia przechylonych części czerwonych linii wynoszą .1 / 61 / nn1 / 2
Średnia jest wrażliwa na każdy punkt danych i ta czułość nie ma granic (jak wskazują niezerowe nachylenia wszystkich kolorowych linii na lewym dolnym wykresie pierwszej cyfry). Chociaż mediana jest wrażliwa na każdy punkt danych, czułość jest ograniczona (dlatego kolorowe krzywe na prawym dolnym wykresie pierwszej figury znajdują się w wąskim pionowym zakresie wokół zera). Są to oczywiście jedynie wizualne powtórzenia podstawowego prawa siły (straty): kwadratowe dla średniej, liniowe dla mediany.
Przedział czasu, w którym można zmienić medianę, może się różnić w zależności od punktów danych. Jest zawsze ograniczony przez dwie bliskie środkowe wartości wśród danych, które się nie zmieniają . (Granice te są oznaczone słabymi pionowymi liniami przerywanymi).
Ponieważ szybkość zmian mediany jest zawsze The kwota przez które może się zmieniać w związku z tym jest określona przez długość tej szczeliny pomiędzy wartościami niemal pośrodku zestawu danych.1 / 2
Chociaż powszechnie odnotowuje się tylko pierwszy punkt, wszystkie cztery punkty są ważne. W szczególności,
To zdecydowanie nieprawda, że „mediana nie zależy od każdej wartości”. Ta liczba stanowi kontrprzykład.
Niemniej jednak mediana nie zależy „materialnie” od każdej wartości w tym sensie, że chociaż zmiana poszczególnych wartości może zmienić medianę, wielkość zmiany jest ograniczona przez luki między wartościami bliskimi środkowymi w zbiorze danych. W szczególności wielkość zmiany jest ograniczona . Mówimy, że mediana jest podsumowaniem „opornym”.
Chociaż średnia nie jest odporna i będzie się zmieniać za każdym razem, gdy zmieni się dowolna wartość danych, szybkość zmian jest stosunkowo niewielka. Im większy zestaw danych, tym mniejsza szybkość zmian. Odpowiednio, aby spowodować istotną zmianę średniej dużego zbioru danych, co najmniej jedna wartość musi podlegać stosunkowo dużej zmienności. Sugeruje to, że brak oporności średniej dotyczy tylko (a) małych zestawów danych lub (b) zestawów danych, w których jedna lub więcej danych może mieć wartości bardzo dalekie od połowy partii.
Te uwagi - mam nadzieję, że liczby te staną się oczywiste - ujawniają głęboki związek między funkcją straty a wrażliwością (lub opornością) estymatora. Aby uzyskać więcej informacji na ten temat, zacznij od jednego z artykułów Wikipedii na temat M-estymatorów, a następnie realizuj te pomysły, o ile chcesz.
Kod
Ten R
kod wygenerował liczby i można go łatwo modyfikować, aby badać każdy inny zestaw danych w ten sam sposób: po prostu zastąp losowo utworzony wektor y
dowolnym wektorem liczb.
#
# Create a small dataset.
#
set.seed(17)
y <- sort(rnorm(6)) # Some data
#
# Study how a statistic varies when the first element of a dataset
# is modified.
#
statistic.vary <- function(t, x, statistic) {
sapply(t, function(e) statistic(c(e, x[-1])))
}
#
# Prepare for plotting.
#
darken <- function(c, x=0.8) {
apply(col2rgb(c)/255 * x, 2, function(s) rgb(s[1], s[2], s[3]))
}
colors <- darken(c("Blue", "Red"))
statistics <- c(mean, median); names(statistics) <- c("mean", "median")
x.limits <- range(y) + c(-1, 1)
y.limits <- range(sapply(statistics,
function(f) statistic.vary(x.limits + c(-1,1), c(0,y), f)))
#
# Make the plots.
#
par(mfrow=c(2,3))
for (i in 1:length(y)) {
#
# Create a standard, consistent plot region.
#
plot(x.limits, y.limits, type="n",
xlab=paste("Value of y[", i, "]", sep=""), ylab="Estimate",
main=paste("Sensitivity to y[", i, "]", sep=""))
#legend("topleft", legend=names(statistics), col=colors, lwd=1)
#
# Mark the limits of the possible medians.
#
n <- length(y)/2
bars <- sort(y[-1])[ceiling(n-1):floor(n+1)]
abline(v=range(bars), lty=2, col="Gray")
rug(y, col="Gray", ticksize=0.05);
#
# Show which value is being varied.
#
rug(y[1], col="Black", ticksize=0.075, lwd=2)
#
# Plot the statistics as the value is varied between x.limits.
#
invisible(mapply(function(f,c)
curve(statistic.vary(x, y, f), col=c, lwd=2, add=TRUE, n=501),
statistics, colors))
y <- c(y[-1], y[1]) # Move the next data value to the front
}
#------------------------------------------------------------------------------#
#
# Study loss functions.
#
loss <- function(x, y, f) sapply(x, function(t) sum(f(y-t)))
square <- function(t) t^2
square.d <- function(t) 2*t
abs.d <- sign
losses <- c(square, abs, square.d, abs.d)
names(losses) <- c("Squared Loss", "Absolute Loss",
"Change in Squared Loss", "Change in Absolute Loss")
loss.types <- c(rep("Loss (energy)", 2), rep("Change in loss (force)", 2))
#
# Prepare for plotting.
#
colors <- darken(rainbow(length(y)))
x.limits <- range(y) + c(-1, 1)/2
#
# Make the plots.
#
par(mfrow=c(2,2))
for (j in 1:length(losses)) {
f <- losses[[j]]
y.range <- range(c(0, 1.1*loss(y, y, f)))
#
# Plot the loss (or its rate of change).
#
curve(loss(x, y, f), from=min(x.limits), to=max(x.limits),
n=1001, lty=3,
ylim=y.range, xlab="Value", ylab=loss.types[j],
main=names(losses)[j])
#
# Draw the x-axis if needed.
#
if (sign(prod(y.range))==-1) abline(h=0, col="Gray")
#
# Faintly mark the data values.
#
abline(v=y, col="#00000010")
#
# Plot contributions to the loss (or its rate of change).
#
for (i in 1:length(y)) {
curve(loss(x, y[i], f), add=TRUE, lty=1, col=colors[i], n=1001)
}
rug(y, side=3)
}