Identyfikacja wartości odstających dla regresji nieliniowej


11

Prowadzę badania w dziedzinie odpowiedzi funkcjonalnej roztoczy. Chciałbym zrobić regresję, aby oszacować parametry (szybkość ataku i czas obsługi) funkcji Rogers typu II. Mam zestaw danych z pomiarami. Jak mogę najlepiej określić wartości odstające?

Do mojej regresji używam następującego skryptu w R (regresja nieliniowa): (zestaw danych to prosty 2-kolumnowy plik tekstowy o nazwie data.txtplik z N0wartościami (liczba początkowych ofiar) i FRwartościami (liczba zjedzonych ofiar w ciągu 24 godzin):

library("nlstools")
dat <- read.delim("C:/data.txt")    
#Rogers type II model
a <- c(0,50)
b <- c(0,40)
plot(FR~N0,main="Rogers II normaal",xlim=a,ylim=b,xlab="N0",ylab="FR")
rogers.predII <- function(N0,a,h,T) {N0 - lambertW(a*h*N0*exp(-a*(T-h*N0)))/(a*h)}
params1 <- list(attackR3_N=0.04,Th3_N=1.46)
RogersII_N <-  nls(FR~rogers.predII(N0,attackR3_N,Th3_N,T=24),start=params1,data=dat,control=list(maxiter=    10000))
hatRIIN <- predict(RogersII_N)
lines(spline(N0,hatRIIN))
summary(RogersII_N)$parameters

Do wykreślenia wykresów resztkowych calssic używam następującego skryptu:

res <- nlsResiduals (RogersII_N)
plot (res, type = 0)
hist (res$resi1,main="histogram residuals")
    qqnorm (res$resi1,main="QQ residuals")
hist (res$resi2,main="histogram normalised residuals")
    qqnorm (res$resi2,main="QQ normalised residuals")
par(mfrow=c(1,1))
boxplot (res$resi1,main="boxplot residuals")
    boxplot (res$resi2,main="boxplot normalised residuals")

pytania

  • Jak najlepiej określić, które punkty danych są wartościami odstającymi?
  • Czy istnieją testy, które mogę zastosować w R, które są obiektywne i pokazują mi, które punkty danych są wartościami odstającymi?

Odpowiedzi:


9

Kilka testów dla wartości odstających, w tym Dixona i Grubba, jest dostępnych w outlierspakiecie w R. Aby uzyskać listę testów, zobacz dokumentację pakietu. Odnośniki opisujące testy znajdują się na stronach pomocy dla odpowiednich funkcji.

Jeśli planujesz usunąć wartości odstające z danych, pamiętaj, że nie zawsze jest to wskazane. Zobacz na przykład to pytanie, aby uzyskać dyskusję na ten temat (a także kilka innych sugestii dotyczących wykrywania wartości odstających).


8

Ani też nie jestem statystykiem. Dlatego używam mojej wiedzy eksperckiej na temat danych, aby znaleźć wartości odstające. Poszukuję fizycznych / biologicznych / jakichkolwiek przyczyn, które sprawiły, że niektóre pomiary różniły się od innych.

W moim przypadku jest to np

  • promienie kosmiczne psują część mierzonego sygnału
  • ktoś wchodzi do laboratorium i włącza światło
  • całe spektrum wygląda jakoś inaczej
  • pierwsza seria pomiarów została wykonana podczas normalnych godzin pracy i jest o rząd wielkości bardziej głośna niż seria 22

Na pewno możesz powiedzieć nam podobne efekty.

Zauważ, że mój trzeci punkt różni się od innych: nie wiem, co się stało. Może to być rodzaj wartości odstającej, o którą pytasz. Jednak nie wiedząc, co go spowodowało (i że ta przyczyna unieważnia punkt danych), trudno powiedzieć, że nie powinien pojawić się w zbiorze danych. Ponadto: Twoja wartość odstająca może być moją najciekawszą próbką ...

Dlatego często nie mówię o wartościach odstających, ale o podejrzanych punktach danych. Przypomina to wszystkim, że należy dokładnie sprawdzić ich znaczenie.

To, czy dobrze jest wykluczyć dane (kto chce znaleźć wartości odstające tylko ze względu na ich posiadanie?), Zależy bardzo od tego, jakie jest zadanie i jakie są „warunki brzegowe” dla tego zadania. Kilka przykładów:

  • właśnie odkryłeś nowe podgatunki Joachimii outlierensis ;-) nie ma powodu, aby je wykluczać. Wyklucz wszystkie pozostałe.

  • chcesz przewidzieć czasy żerowania roztoczy. Jeśli dopuszczalne jest ograniczenie przewidywania do pewnych warunków, możesz je sformułować i wykluczyć wszystkie inne próbki i powiedzieć, że Twój model predykcyjny zajmuje się tą lub inną sytuacją, chociaż znasz już inne sytuacje (opisz tutaj wartości odstające).

  • Należy pamiętać, że wykluczenie danych za pomocą diagnostyki modelu może stworzyć rodzaj samospełniającej się przepowiedni lub nadmiernie optymistycznego uprzedzenia (tj. Jeśli twierdzisz, że twoja metoda ma ogólne zastosowanie): im więcej próbek zostanie wykluczonych, ponieważ nie pasują do twojego założeń, tym lepsze są założenia spełnione przez pozostałe próbki. Ale to tylko z powodu wykluczenia.

  • Obecnie mam pod ręką zadanie polegające na tym, że mam kilka złych pomiarów (znam fizyczny powód, dla którego uważam ten pomiar za zły), a kilka innych, które w jakiś sposób „wyglądają dziwnie”. To, co robię, polega na tym, że wykluczam te próbki z treningu (predykcyjnego) modelu, ale osobno testuję ten model, aby móc powiedzieć coś o odporności mojego modelu na wartości odstające od tych typów, o których wiem, że pojawią się raz na jednocześnie . Dlatego aplikacja w jakiś sposób musi poradzić sobie z tymi wartościami odstającymi.

  • Jeszcze innym sposobem spojrzenia na wartości odstające jest pytanie: „Jak wpływają one na mój model?” (Przewaga). Z tego punktu widzenia można zmierzyć wytrzymałość lub stabilność w odniesieniu do dziwnych próbek treningowych.

  • Niezależnie od zastosowanej procedury statystycznej nie wykryje ona żadnych wartości odstających lub będzie miała fałszywie dodatnie wyniki. Procedurę testowania wartości odstających można scharakteryzować podobnie jak inne testy diagnostyczne: ma ona czułość i swoistość, a - co ważniejsze - odpowiada (poprzez proporcję wartości odstających w danych) dodatniej i ujemnej wartości predykcyjnej. Innymi słowy, szczególnie jeśli twoje dane mają bardzo niewiele wartości odstających, prawdopodobieństwo, że przypadek zidentyfikowany przez test wartości odstających naprawdę jest wartością odstającą (tj. Nie powinno być w danych), może być bardzo niskie.
    Uważam, że wiedza ekspercka na temat dostępnych danych jest zwykle znacznie lepsza w wykrywaniu wartości odstających niż testy statystyczne: test jest tak samo dobry, jak założenia. Jeden uniwersalny zestaw często nie jest zbyt dobry do analizy danych. Przynajmniej często mam do czynienia z pewnego rodzaju wartościami odstającymi, w których eksperci (o tym typie pomiaru) nie mają problemu z określeniem dokładnej części sygnału, który jest zagrożony, podczas gdy zautomatyzowane procedury często zawodzą (łatwo jest wykryć, że istnieje problem, ale bardzo trudno jest im znaleźć miejsce, w którym problem się zaczyna i gdzie kończy).


Jest tutaj wiele dobrych informacji. Szczególnie podoba mi się punktor # 4 i 5.
Gung - Przywróć Monikę

4

Dla jednowymiarowych wartości odstających istnieje test współczynnika Dixona i test Grubbsa zakładający normalność. Aby sprawdzić wartość odstającą, musisz założyć rozkład populacji, ponieważ próbujesz wykazać, że zaobserwowana wartość jest ekstremalna lub niezwykła, ponieważ pochodzi z założonego rozkładu. Mam artykuł w American Statistician z 1982 r., Do którego mogłem się tu odwołać, który pokazuje, że test stosunku Dixona może być stosowany w małych próbkach, nawet w przypadku niektórych nietypowych rozkładów. Chernick, MR (1982) „Nota o solidności współczynnika Dixona w małych próbkach” American Statistician str. 140. Dla wielowymiarowych wartości odstających i odstających w szeregach czasowych funkcje wpływu dla oszacowań parametrów są użytecznymi miarami do nieformalnego wykrywania wartości odstających (nie wiem skonstruowanych dla nich testów formalnych, chociaż takie testy są możliwe).„Wartości odstające w danych statystycznych” dla szczegółowego traktowania metod wykrywania wartości odstających.


3

Zobacz http://www.waset.org/journals/waset/v36/v36-45.pdf , „O wykrywaniu wartości odstających w regresji nieliniowej” [ sic ].

Abstrakcyjny

Wykrywanie wartości odstających jest bardzo istotne ze względu na ich odpowiedzialność za spowodowanie ogromnego problemu interpretacyjnego w analizie regresji liniowej, jak i nieliniowej. Wykonano wiele prac nad identyfikacją wartości odstających w regresji liniowej, ale nie w regresji nieliniowej. W tym artykule proponujemy kilka technik wykrywania wartości odstających dla regresji nieliniowej. Główną ideą jest zastosowanie aproksymacji liniowej modelu nieliniowego i uwzględnienie gradientu jako macierzy projektowej. Następnie formułowane są techniki wykrywania. Opracowano sześć miar wykrywania, które w połączeniu z trzema technikami szacowania, takimi jak najmniejsze kwadraty, estymatory M i MM. Badanie pokazuje, że spośród sześciu miar tylko uczony resztkowy i Dystans Cooka, który w połączeniu z estymatorem MM,


+1 Pomimo oczywistych problemów z językiem angielskim (i składem matematycznym), ten dokument wydaje się być przydatnym wkładem w to pytanie.
whuber

2

Wartość odstająca to punkt, który „jest zbyt daleko” od „pewnego poziomu odniesienia”. Sztuką jest zdefiniowanie obu tych fraz! W przypadku regresji nieliniowej nie można po prostu użyć metod jednowymiarowych, aby sprawdzić, czy wartość odstająca jest „zbyt daleko” od krzywej najlepiej dopasowanej, ponieważ wartość odstająca może mieć ogromny wpływ na samą krzywą.

Ron Brown i ja opracowaliśmy unikalną metodę (którą nazywamy ROUT - Solidna regresja i usuwanie wartości odstających) do wykrywania wartości odstających z regresją nieliniową, nie pozwalając, aby wartość odstająca zbytnio wpływała na krzywą. Najpierw dopasuj dane za pomocą solidnej metody regresji, na którą wartości odstające mają niewielki wpływ. To stanowi podstawę. Następnie użyj pomysłów Fałszywego odkrycia (FDR), aby określić, kiedy punkt znajduje się „za daleko” od tej linii bazowej, a więc jest wartością odstającą. Na koniec usuwa zidentyfikowane wartości odstające i konwencjonalnie pasuje do pozostałych punktów.

Metoda została opublikowana w czasopiśmie o otwartym dostępie: Motulsky HJ i Brown RE, Wykrywanie wartości odstających podczas dopasowywania danych za pomocą regresji nieliniowej - nowa metoda oparta na solidnej regresji nieliniowej i częstości fałszywych odkryć , BMC Bioinformatics 2006, 7: 123. Oto streszczenie:

Tło. Regresja nieliniowa, podobnie jak regresja liniowa, zakłada, że ​​rozproszenie danych wokół idealnej krzywej przebiega zgodnie z rozkładem Gaussa lub normalnym. To założenie prowadzi do znanego celu regresji: zminimalizowania sumy kwadratów odległości pionowych lub wartości Y między punktami i krzywą. Wartości odstające mogą zdominować obliczenia sumy kwadratów i prowadzić do mylących wyników. Nie znamy jednak praktycznej metody rutynowej identyfikacji wartości odstających podczas dopasowywania krzywych z regresją nieliniową.

Wyniki Opisujemy nową metodę identyfikacji wartości odstających podczas dopasowywania danych za pomocą regresji nieliniowej. Najpierw dopasowujemy dane za pomocą solidnej formy regresji nieliniowej, opartej na założeniu, że rozproszenie następuje zgodnie z rozkładem Lorentza. Opracowaliśmy nową metodę adaptacyjną, która z czasem staje się bardziej niezawodna. Aby zdefiniować wartości odstające, dostosowaliśmy metodę fałszywego wskaźnika wykrywania do obsługi wielu porównań. Następnie usuwamy wartości odstające i analizujemy dane przy użyciu zwykłej regresji metodą najmniejszych kwadratów. Ponieważ metoda łączy solidną regresję i usuwanie wartości odstających, nazywamy ją metodą ROUT.

Analizując symulowane dane, w których wszystkie rozproszenia są gaussowskie, nasza metoda wykrywa (fałszywie) jedną lub więcej wartości odstających w tylko około 1–3% eksperymentów. Analizując dane skażone jedną lub kilkoma wartościami odstającymi, metoda ROUT dobrze sprawdza się przy identyfikacji wartości odstających, ze średnią częstością fałszywych odkryć poniżej 1%.

Wniosek. Nasza metoda, która łączy nową metodę solidnej regresji nieliniowej z nową metodą identyfikacji wartości odstających, identyfikuje wartości odstające od dopasowań krzywej nieliniowej o rozsądnej mocy i kilku fałszywie dodatnich wartościach.

O ile mi wiadomo, nie został zaimplementowany w R. Ale zaimplementowaliśmy go w GraphPad Prism. i podaj proste wyjaśnienie w pomocy Pryzmatu .


0

Twoje pytanie jest zbyt ogólne. Nie ma jednej najlepszej metody wykluczenia „wartości odstających”.

Trzeba było znać niektóre właściwości „wartości odstających”. lub nie wiesz, która metoda jest najlepsza. Po podjęciu decyzji, której metody chcesz użyć, musisz ostrożnie skalibrować parametry metody.

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.