Jak obliczyć miarę dokładności na podstawie RMSE? Czy mój duży zestaw danych jest zwykle dystrybuowany?


9

Mam kilka zestawów danych rzędu tysięcy punktów. Wartości w każdym zestawie danych to X, Y, Z odnoszące się do współrzędnej w przestrzeni. Wartość Z reprezentuje różnicę wysokości w parze współrzędnych (x, y).

Zazwyczaj w moim polu GIS błąd wysokości jest odniesiony w RMSE poprzez odjęcie punktu prawdziwości podłoża do punktu pomiaru (punktu danych LiDAR). Zwykle stosuje się co najmniej 20 punktów kontrolnych trakowania gruntu. Wykorzystując tę ​​wartość RMSE, zgodnie z NDEP (National Digital Elevation Guidelines) i wytycznymi FEMA, można obliczyć miarę dokładności: Dokładność = 1,96 * RMSE.

Tę dokładność określa się następująco: „Podstawowa dokładność pionowa jest wartością, o którą dokładność pionowa może być równo oceniona i porównana między zestawami danych. Podstawowa dokładność jest obliczana na 95-procentowym poziomie ufności jako funkcja pionowego RMSE”.

Rozumiem, że 95% powierzchni pod krzywą rozkładu normalnego mieści się w zakresie 1,96 * odchylenia standardowego, jednak nie dotyczy to RMSE.

Generalnie zadaję to pytanie: używając RMSE obliczonego na podstawie 2-zestawów danych, w jaki sposób mogę powiązać RMSE z pewną dokładnością (tj. 95 procent moich punktów danych mieści się w granicach +/- X cm)? Jak mogę również ustalić, czy mój zestaw danych jest zwykle dystrybuowany za pomocą testu, który działa dobrze z tak dużym zestawem danych? Co jest „wystarczająco dobre” dla normalnej dystrybucji? Czy p <0,05 dla wszystkich testów, czy powinno pasować do kształtu rozkładu normalnego?


Znalazłem bardzo dobre informacje na ten temat w następującym artykule:

http://paulzandbergen.com/PUBLICATIONS_files/Zandbergen_TGIS_2008.pdf


4
Uważaj! Twoje użycie ks.test jest nieprawidłowe. Zgodnie ze stroną pomocy musisz użyć „pnorm” zamiast „dnorm”. Co więcej, ustawienie parametrów rozkładu porównania na średnią i SD samej próbki znacznie zwiększy wartość p: „Jeżeli stosuje się badanie na pojedynczej próbce, parametry określone w ... muszą być wcześniej określone i nie można ich oszacować na podstawie dane."
whuber

3
Cóż, właściwie ta formuła nie da ci przedziału ufności: będzie na to zdecydowanie za duża. Jest to naprawdę prosty (ale standardowy) sposób oszacowania przedziału tolerancji, który stanowi średnie 95% całej populacji różnic. Istnieją dobre powody, aby przypuszczać, że różnice nie będą miały rozkładu normalnego: większe różnice bezwzględne są zwykle związane z większymi nachyleniami topograficznymi. Zakładając, że twoje 4000 punktów jest losową próbką tych różnic, dlaczego po prostu nie zgłaszasz ich percentyli 2,5 i 97,5?
whuber

4
Twoje dane stanowią statystyczną próbkę wysokości, które można zmierzyć. Mówiąc o „dokładności”, twierdzisz, jak blisko twoje DEM reprezentują całą populację wysokości. W twoim przypadku niemożliwe jest oszacowanie dokładności poprzez porównanie zestawów danych: musisz „oddać prawdę” swoich danych. Tak więc wytyczne naprawdę mówią o względnej zgodności dwóch zestawów danych. Wreszcie ich użycie „poziomu zaufania” jest błędne, jak wyjaśniłem wcześniej. Zgadzam się, że musisz pracować w ramach takich okropnych wskazówek, ale zasługujesz na to, aby wiedzieć, co jest prawidłowe.
whuber

3
To zaczyna brzmieć jak przydatne pytanie. Ponieważ nie otrzymałeś jeszcze żadnych odpowiedzi, może po prostu całkowicie edytujesz bieżące pytanie, aby uwzględnić informacje ujawnione w tych komentarzach? Proponuję nieco ją rozszerzyć: po cytowaniu wytycznych (aby pokazać, jakie metody są zwykle stosowane w twojej dziedzinie), możesz zapytać dość ogólnie, jak wykorzystać rozkład uporządkowanych par różnic wysokości do oceny dokładności (zakładając jeden zestawów danych stanowi odniesienie).
whuber

2
Wszystko: zaktualizowałem mój główny post i pytanie, aby odzwierciedlić zmiany w komentarzach.
Matthew Bilskie

Odpowiedzi:


1

Używając RMSE obliczonego na podstawie 2-zestawów danych, jak mogę powiązać RMSE z pewną dokładnością (tj. 95% moich punktów danych mieści się w granicach +/- X cm)?

Spójrz na prawie duplikat pytania: Przedział ufności RMSE ?

Czy mój duży zestaw danych jest zwykle dystrybuowany?

Dobrym początkiem byłoby obserwowanie empirycznego rozkładu zwartości. Oto powtarzalny przykład.

set.seed(1)
z <- rnorm(2000,2,3)
z.difference <- data.frame(z=z)

library(ggplot2)

ggplot(z.difference,aes(x=z)) + 
  geom_histogram(binwidth=1,aes(y=..density..), fill="white", color="black") +
  ylab("Density") + xlab("Elevation differences (meters)") +
  theme_bw() + 
  coord_flip()

wprowadź opis zdjęcia tutaj

Na pierwszy rzut oka wygląda normalnie, prawda? (w rzeczywistości wiemy, że to normalne, ponieważ rnormużyliśmy polecenia).

Jeśli ktoś chce przeanalizować małe próbki w zbiorze danych, jest test normalności Shapiro-Wilka.

z_sample <- sample(z.difference$z,40,replace=T)
shapiro.test(z_sample) #high p-value indicates the data is normal (null hypothesis)

    Shapiro-Wilk normality test

data:  z_sample
W = 0.98618, p-value = 0.8984 #normal

Można również powtórzyć test SW wiele razy na różnych małych próbkach, a następnie spojrzeć na rozkład p-values.

Należy pamiętać, że testy normalności dużych zestawów danych nie są tak przydatne, jak to wyjaśniono w odpowiedzi udzielonej przez Grega Snowa.

Z drugiej strony, przy naprawdę dużych zestawach danych wchodzi w grę centralne twierdzenie graniczne, a dla typowych analiz (regresja, testy t ...) naprawdę nie obchodzi cię, czy populacja jest normalnie rozłożona, czy nie.

Dobrą zasadą jest wykonanie qq-plotu i spytanie, czy to wystarczająco normalne?

Zróbmy więc wykres QQ:

#qq-plot (quantiles from empirical distribution - quantiles from theoretical distribution)
mean_z <- mean(z.difference$z)
sd_z <- sd(z.difference$z)
set.seed(77)
normal <- rnorm(length(z.difference$z), mean = mean_z, sd = sd_z)

qqplot(normal, z.difference$z, xlab="Theoretical", ylab="Empirical")

wprowadź opis zdjęcia tutaj

Jeśli kropki są wyrównane w y=xlinii, oznacza to, że rozkład empiryczny odpowiada rozkładowi teoretycznemu, który w tym przypadku jest rozkładem normalnym.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.