Radzenie sobie z wartościami 0,1 w regresji beta


20

Mam pewne dane w [0,1], które chciałbym przeanalizować za pomocą regresji beta. Oczywiście należy coś zrobić, aby uwzględnić wartości 0,1. Nie lubię modyfikować danych, aby pasowały do ​​modelu. również nie uważam, aby inflacja zero i 1 była dobrym pomysłem, ponieważ uważam, że w tym przypadku należy uznać wartości zerowe za bardzo małe wartości dodatnie (ale nie chcę powiedzieć dokładnie, jaka wartość jest odpowiednia. Rozsądny wybór Wierzę, że byłoby wybrać małe wartości, takie jak .001 i .999 i dopasować model przy użyciu skumulowanego dystansu dla wersji beta. Więc dla obserwacji y_i prawdopodobieństwo dziennika LL byłoby

 if  y_i < .001   LL+=log(cumd_beta(.001))
 else if y_i>.999  LL+=log(1.0-cum_beta(.999))
 else LL+=log(beta_density(y_i))

W tym modelu podoba mi się to, że jeśli model regresji beta jest prawidłowy, model ten jest również prawidłowy, ale usuwa nieco wrażliwość na wartości ekstremalne. Wydaje się jednak, że jest to tak naturalne podejście, że zastanawiam się, dlaczego nie znalazłem żadnych oczywistych odniesień w literaturze. Więc moje pytanie dotyczy modyfikacji danych, dlaczego nie zmodyfikować modelu. Modyfikowanie danych wpływa negatywnie na wyniki (w oparciu o założenie, że oryginalny model jest prawidłowy), natomiast modyfikowanie modelu poprzez zbrojenie wartości ekstremalnych nie powoduje odchylenia wyników.

Może jest problem, który przeoczam?


1
Naprawdę nie jest możliwe udzielenie dobrej odpowiedzi na to pytanie bez wiedzy na temat konkretnego problemu. Kluczowym pytaniem jest, czy dokładne zera i jedynki są generowane przez inny proces niż ten, który generuje dane w (0,1). Klasycznym przykładem są opady deszczu, w których są dokładne zera odzwierciedlające dni, w których nie pada. Czy w twojej aplikacji zera i jedynki są w jakiś sposób „specjalne”?
Dikran Marsupial,

Odpowiedzi:


16

Zgodnie z tym artykułem odpowiednia jest transformacja

x=x(N.-1)+sN.

„gdzie N jest wielkością próby, a s jest stałą między 0 a 1. Z punktu widzenia Bayesa s zachowuje się tak, jakbyśmy uwzględnili wcześniej. Rozsądnym wyborem dla s byłoby .5”.

Spowoduje to ściśnięcie danych, które znajdują się w aby znaleźć się w ( 0 , 1 ) . Powyższy cytat oraz matematyczny powód transformacji są dostępne w dodatkowych uwagach do artykułu .[0,1](0,1)


1
+1 .. Ale czy mógłbyś naprawić pierwszy link lub przynajmniej zacytować artykuł, abyśmy mogli go znaleźć niezależnie?
whuber

1
Ale to nie odpowiada na moje pytanie. Mam świadomość, że dane można przekształcić. Moje pytania brzmią: dlaczego zamiast tego nie przekształcić modelu?
dave fournier

1
Dave, następnie edytuj swoje pytanie, aby to odzwierciedlić: obecnie brzmi ono tak, jakbyś szukał sposobu na przekształcenie danych . Pomoże ci to wskazać, jaka według ciebie jest różnica między transformacją danych a zmianą modelu, ponieważ jeśli taka jest, jest subtelna.
whuber

@davefournier, jeśli czytasz papierowe strony z kamerami, to częściowo odpowiada na twoje pytanie. Podają także zalecenia dotyczące alternatywnych modeli (patrz strona 69), a część zaleceń zależy od charakteru danych. Twoje skorygowane prawdopodobieństwo wygląda jak „mieszany proces dyskretny-ciągły” (wspomniany na końcu strony 69). Może się również zdarzyć, że model Tobit będzie zadowalający, biorąc pod uwagę twoje dane, chociaż najlepiej byłoby zobaczyć inne odniesienia do stosowności modelu Tobit, takie jak książka Scotta Longa na temat regresji kategorycznej.
Andy W

1
Ale nie przyjmują tego podejścia. Proponują inny model, mieszany dyskretny proces ciągły. To bardzo różni się od grupowania ekstremalnych wartości. Jak powiedziałem wcześniej, jeśli model beta jest prawidłowy, to model binowania jest ważny. Jeśli dyskretny model ciągły jest prawidłowy, wówczas model beta jest nieprawidłowy. Podejrzewam, że w swoich analizach kierowali się głównie różnymi modelami mieszanymi, które mogliby zmieścić w swoim oprogramowaniu. Binned mieszany model beta jest nieco trudniejszy do dopasowania.
dave fournier

3

Dave,

Powszechnym podejściem do tego problemu jest dopasowanie 2 modeli regresji logistycznej, aby przewidzieć, czy przypadek ma wartość 0 czy 1. Następnie regresję beta stosuje się dla tych z zakresu (0,1).


czy możesz podać przykład? czy artykuł omawiający to bardziej szczegółowo?
user1607

2

(log(x),log(1-x))

x(x,x2))

Uważam, że oba są łatwe do oszacowania w sposób bayesowski, ponieważ oba są rodzinami wykładniczymi. Jest to modyfikacja modelu, na którą liczyłeś.


1

Myślę, że faktyczną „prawidłową” odpowiedzią na to pytanie jest regresja beta zawyżona do zera jeden. Służy to do obsługi danych, które zmieniają się w sposób ciągły w przedziale [0,1], i pozwala na umieszczenie wielu rzeczywistych zer i jedynek w danych. Podejście to pasuje do trzech oddzielnych modeli w kontekście bayesowskim, podobnie jak zaproponował @B_Miner.

Model 1: Czy wartość jest dyskretna 0/1, czy jest wartością w (0,1)? Pasuje do dystrybucji bernoulli.

Model 2: Dopasuj dyskretny podzbiór z rozkładem Bernoulliego.

Model 3: Podzbiór Fit (0,1) z regresją beta.

Do prognozowania wyniki pierwszego modelu można wykorzystać do ważenia prognoz modeli 2 i 3. Można to zaimplementować w zoibpakiecie R lub przygotować w domu w BUGS / JAGS / STAN / itp.

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.