Jak mogę poprawić swoją analizę wpływu reputacji na głosowanie?

15

Niedawno przeprowadziłem analizę wpływu reputacji na opinie (patrz blog ), a następnie miałem kilka pytań na temat być może bardziej pouczającej (lub bardziej odpowiedniej) analizy i grafiki.

Tak więc kilka pytań (i nie krępuj się odpowiadać każdemu w szczególności i ignoruj ​​pozostałe):

  1. W obecnym wcieleniu nie miałem na myśli wyśrodkowania numeru postu. Myślę, że to robi fałszywe wrażenie negatywnej korelacji na wykresie rozrzutu, ponieważ jest więcej postów w dolnej części liczby postów (widać, że nie dzieje się tak w panelu Jona Skeeta, tylko w śmiertelnych użytkownikach płyta). Czy niewłaściwe jest nie wyśrodkowywanie numeru postu (ponieważ mam na myśli wyśrodkowanie wyniku na średni wynik użytkownika)?

  2. Z wykresów powinno być oczywiste, że wynik jest mocno wypaczony w prawo (a średnie centrowanie tego nie zmieniło). Podczas dopasowywania linii regresji dopasowuję zarówno modele liniowe, jak i model wykorzystujący błędy Hubera-White'a (przez rlmw pakiecie MASS R ) i nie miało to żadnego znaczenia w szacunkach nachylenia. Czy powinienem rozważyć przemianę danych zamiast solidnej regresji? Należy pamiętać, że każda transformacja musiałaby uwzględniać możliwość 0 i negatywnych wyników. A może powinienem użyć innego typu modelu do liczenia danych zamiast OLS?

  3. Uważam, że dwie ostatnie grafiki można ogólnie ulepszyć (i jest to również związane z ulepszonymi strategiami modelowania). W mojej (zmęczonej) opinii podejrzewałbym, że jeśli efekty reputacji są prawdziwe, zostałyby one zrealizowane dość wcześnie w historii plakatów (przypuszczam, że jeśli to prawda, można je ponownie rozważyć „udzieliłeś doskonałych odpowiedzi, więc teraz będę głosować posty „zamiast efektów„ reputacja według całkowitej liczby punktów ”). Jak mogę stworzyć grafikę, aby zademonstrować, czy to prawda, biorąc pod uwagę nadmierne kreślenie? Pomyślałem, że może dobrym sposobem wykazania tego byłoby dopasowanie modelu formy;

Y=β0+β1(X1)+α1(Z1)+α2)(Z2))αk(Zk)+γ1(Z1X1)γk(ZkX1)+ϵ

gdzie jest (taki sam, jak w obecnych wykresach rozrzutu), jest , a są zmiennymi obojętnymi reprezentującymi pewien dowolny zakres numerów postów (na przykład jest równy, jeśli numer jest , jest równy, jeśli numer postu jest itp.). i są odpowiednio terminem wielkiego przechwytywania i błędu. Następnie zbadałbym szacunkowe nachylenie aby ustalić, czy efekty reputacji pojawiły się wcześnie w historii plakatów (lub graficznie je pokazały). Czy jest to rozsądne (i właściwe) podejście?X 1 Z 1Z k Z 1 Z 2 β 0 ϵ γYscore - (mean score per user)X1post numberZ1ZkZ111 through 25Z2)126 through 50β0ϵγ

Wydaje się popularne, aby dopasować jakiś rodzaj nieparametrycznej linii wygładzania do takich wykresów rozrzutu (takich jak less lub splajny), ale moje eksperymenty z splajnami nie ujawniły niczego oświecającego (jakiekolwiek dowody pozytywnych efektów na wczesnym etapie historii plakatu były niewielkie i temperamentalne do liczby włączonych splajnów). Skoro mam hipotezę, że efekty pojawiają się wcześnie, czy moje podejście do modelowania jest bardziej uzasadnione niż splajny?

Zwróć też uwagę, że chociaż pogłębiłem wszystkie te dane, wciąż istnieje wiele innych społeczności do zbadania (a niektóre takie jak administrator i błąd serwera mają podobnie duże próbki do wyciągnięcia), więc rozsądne jest sugerowanie w przyszłości analiza, w której wykorzystuję próbkę powstrzymującą do zbadania dowolnego związku.

Andy W.
źródło
Obecnie zrobiłem notatki na moje pierwsze pytanie, które można znaleźć tutaj . W tej chwili nie jestem pewien, czy powinienem po prostu opublikować to jako odpowiedź na moje pytanie, czy otworzyć osobne pytanie (ponieważ jest to w dużej mierze skoncentrowane na wizualizacji danych). Ale możesz zostawić komentarz na temat dokumentu Google albo tutaj, albo na czacie .
Andy W

Odpowiedzi:

14

To odważna próba, ale przy samych tych danych odpowiedź na pytanie badawcze dotyczące „wpływu reputacji na pozytywne opinie” będzie trudna lub niemożliwa . Problem polega na oddzieleniu skutków innych zjawisk, które wymienię wraz z krótkimi wskazówkami, jak można je rozwiązać.

  • Efekty uczenia się . Wraz ze wzrostem reputacji rośnie doświadczenie; wraz ze wzrostem doświadczenia oczekujemy, że ktoś opublikuje lepsze pytania i odpowiedzi; wraz z poprawą ich jakości oczekujemy większej liczby głosów na post. Można sobie wyobrazić, że jednym ze sposobów poradzenia sobie z tym w analizie byłoby zidentyfikowanie osób aktywnych w więcej niż jednej witrynie SE . Na każdej stronie ich reputacja wzrastałaby wolniej niż ilość ich doświadczenia, zapewniając w ten sposób sposób na rozdarcie reputacji i efektów uczenia się.

  • Zmiany czasowe w kontekście. Są niezliczone, ale te oczywiste obejmowałyby

    • Zmiany liczby wyborców w czasie , w tym ogólny trend wzrostowy, trendy sezonowe (często związane z cyklami akademickimi) i wartości odstające (wynikające z reklamy zewnętrznej, takiej jak linki do określonych wątków). Każda analiza musiałaby wziąć to pod uwagę przy ocenie trendów w reputacji każdej osoby .

    • Zmiany w obyczajach społeczności w czasie . Społeczności oraz ich interakcje, ewolucja i rozwój. Z czasem mogą oni głosować częściej lub rzadziej. Każda analiza musiałaby ocenić ten efekt i uwzględnić go .

    • Czas sam w sobie. Z biegiem czasu wcześniejsze posty pozostają dostępne do wyszukiwania i nadal gromadzą głosy. Tak więc, caeteris paribus , starsze posty powinny dawać więcej głosów niż nowsze. (Jest to silny efekt: niektóre osoby konsekwentnie wysoko w miesięcznych ligach reputacji nie odwiedzały tej witryny przez cały rok!) To maskowałoby, a nawet odwracało jakikolwiek faktyczny pozytywny efekt reputacji. Każda analiza musi uwzględniać czas, przez jaki każdy post był obecny na stronie .

  • Popularność przedmiotu Niektóre tagi (np. ) są znacznie bardziej popularne niż inne. Tak więc zmiany rodzaju pytań, na które dana osoba odpowiada, mogą być mylone ze zmianami czasowymi, takimi jak efekt reputacji. Dlatego każda analiza musi uwzględniać charakter pytań, na które udzielane są odpowiedzi.

  • Widoki [dodane jako edycja]. Pytania są przeglądane przez różne liczby osób z różnych powodów (filtry, linki itp.). Możliwe jest, że liczba głosów otrzymanych w odpowiedziach jest związana z liczbą wyświetleń, choć można oczekiwać, że liczba wyświetleń spadnie wraz ze wzrostem liczby wyświetleń. (Chodzi o to, ile osób naprawdę zainteresowanych tym pytaniem faktycznie je ogląda, a nie surową liczbę. Moje własne - anegdotyczne - doświadczenie polega na tym, że mniej więcej połowa głosów, które otrzymuję na wiele pytań, przypada na pierwsze 5-15 widoki, chociaż pytania są oglądane setki razy.) Dlatego każda analiza musi uwzględniać liczbę wyświetleń, ale prawdopodobnie nie w sposób liniowy.

  • Trudności z pomiarem. „Reputacja” to suma głosów otrzymanych za różne działania: początkową reputację, odpowiedzi, pytania, zatwierdzanie pytań, edycję tagów wiki, downvoting i obniżanie głosów (w malejącej kolejności wartości). Ponieważ elementy te oceniają różne rzeczy i nie wszystkie są pod kontrolą wyborców społeczności, należy je oddzielić do analizy . „Efekt reputacji” przypuszczalnie wiąże się z głosowaniem na odpowiedziach i być może na pytania, ale nie powinien wpływać na inne źródła reputacji. Początkowa reputacja zdecydowanie powinna zostać odjęta (ale być może mogłaby być wykorzystana jako proxy dla początkowej ilości doświadczenia).

  • Ukryte czynniki. Może być wiele innych mylących czynników, których nie można zmierzyć. Na przykład istnieją różne formy „wypalenia” podczas uczestnictwa w forach. Co ludzie robią po pierwszych tygodniach, miesiącach lub latach entuzjazmu? Niektóre możliwości obejmują skupienie się na rzadkich, niezwykłych lub trudnych pytaniach; udzielanie odpowiedzi tylko na pytania bez odpowiedzi; udzielanie mniejszej liczby odpowiedzi, ale wyższej jakości; itd. Niektóre z nich mogą maskować efekt reputacji, podczas gdy inne mogą zostać pomylone z jednym. Pełnomocnikiem dla takich czynników mogą być zmiany w poziomie uczestnictwa danej osoby : mogą one sygnalizować zmiany w charakterze jej postów.

  • Zjawiska podspołeczności. Dokładne spojrzenie na statystyki, nawet na bardzo aktywnych stronach SE, pokazuje, że stosunkowo niewielka liczba osób odpowiada za większość odpowiedzi i głosowania. Klika tak mała jak dwie lub trzy osoby może mieć głęboki wpływ na wzrost reputacji. Dwuosobowa klika zostanie wykryta przez wbudowane monitory strony (i jedna taka grupa istnieje na tej stronie), ale większe kliki prawdopodobnie nie będą. (Nie mówię o formalnej zmowie: ludzie mogą być członkami takich klik nawet nie zdając sobie z tego sprawy.) Jak oddzielilibyśmy pozorny efekt reputacji od działań tych niewidzialnych, niewykrytych, nieformalnych klik? Szczegółowe dane do głosowania można wykorzystać diagnostycznie, ale nie sądzę, abyśmy mieli do nich dostęp.

  • Ograniczone dane Aby wykryć efekt reputacji, prawdopodobnie będziesz musiał skupić się na osobach z dziesiątkami do setek postów (przynajmniej). To powoduje spadek obecnej populacji do mniej niż 50 osób. Przy całej możliwej zmienności i pomieszaniu jest to zdecydowanie zbyt małe, aby wydobyć znaczące efekty, chyba że są naprawdę bardzo silne. Lekarstwem jest uzupełnienie zestawu danych o rekordy z innych witryn SE .

Biorąc pod uwagę wszystkie te komplikacje, powinno być jasne, że grafika eksploracyjna w artykule na blogu ma niewielkie szanse na ujawnienie czegokolwiek, chyba że jest to rażąco oczywiste. Nic nas nie wyskakuje: zgodnie z oczekiwaniami dane są nieuporządkowane i skomplikowane. Przedwczesne jest zalecanie ulepszeń wykresów lub przedstawionej analizy: zmiany przyrostowe i dodatkowa analiza nie pomogą, dopóki te podstawowe problemy nie zostaną rozwiązane .

Whuber
źródło
Dziękuję za odpowiedź. Biorąc pod uwagę zakres krytyki, nie będę w stanie odpowiednio odnieść się do wszystkich sugestii w komentarzach (będę musiał pomyśleć o innym miejscu, może po prostu opublikować inny dokument google). Ale powiem teraz, że nie sądzę, że odpowiedź jest niemożliwa (w zakresie, w jakim każdy może odpowiedzieć na wszystko za pomocą danych obserwacyjnych takich jak ten). Co najmniej, biorąc pod uwagę ograniczenia potencjalnych nieporozumień, można sprawdzić, czy efekty reputacji są zgodne z dostępnymi dowodami.
Andy W
@ Andy Myślę, że zamieszanie jest znaczne i wszechobecne, więc nawet jeśli wygląda na to, że istnieje efekt reputacji, może to być artefakt: nie będziesz w stanie wyciągnąć żadnych ważnych wniosków, dopóki nie rozwiążesz tych problemów. Oczywiście mogę się mylić, ale ciężar dowodu spoczywa na tobie.
whuber
„jeśli wygląda na to, że istnieje efekt reputacji” jest kluczowym stwierdzeniem (tak, jak ja to widzę). Większość przedstawionych przez ciebie pomyłek byłaby albo niejednoznacznie związana z reputacją plakatu / numerem postu / historią, albo teoretycznie oczekuje się, że zwiększy wynik plakatu na odpowiedziach później w ich historii. Jeśli nie znajdę żadnych dowodów na wpływ reputacji, wiele potencjalnych nieporozumień nie może zostać wykorzystanych do wyjaśnienia jego braku.
Andy W
@Andy Ale przynajmniej jedna może i to wystarczy. Należą do nich ukryte czynniki, popularność przedmiotu i zmiany czasowe w kontekście. Jeśli nie poradzisz sobie wyraźnie z nimi wszystkimi w analizie, twoje wnioski będą podejrzane. Rzut oka na zapisy pokazuje, że popularność tematu i zmiany czasowe są ogromne; ich potencjalne wpływy zalewają to, czego moglibyśmy oczekiwać, że efekty reputacji sięgają rzędu wielkości.
whuber
2
@ cardinal, nawet bez formalnej definicji, możliwe byłoby, aby niewielka liczba osób miała znaczący wpływ na wzorce głosowania (do czego, jak zakładam, w tym kontekście odnosi się whuber). Przeciętny post Jona Skeeta miał tylko 5 pozytywnych opinii. Jeśli nagle jedna osoba zdecyduje się głosować na wszystkie swoje odpowiedzi, może to mieć dość znaczący wpływ, biorąc pod uwagę niski średni wynik na początku.
Andy W
5

YtZtYt=a0+a1Yt1+a2Zt1+ϵtZt=b0+b1Yt1+b2Zt1+δta2ZYZYtΔYt=YtYt1YtFχ2T1T1/2YtZta0a1a2

W punkcie 1: jeśli robiłeś ręcznie efekty stałe, powinieneś wyśrodkować zarówno zmienną odpowiedzi, jak i zmienne objaśniające. Pakiet regresji danych panelowych zrobiłby to za ciebie, ale oficjalny ekonometryczny sposób patrzenia na rzeczy polega na odjęciu regresji „pomiędzy” od regresji „pula” (patrz czarna księga Wooldridge ; nie sprawdziłem drugiego wydania, ale ogólnie uważam, że pierwsze wydanie jest najlepszym opisem ekonometrycznym danych panelowych typu podręcznika).

W punkcie 2: oczywiście błędy standardowe Eicker / White nie wpłyną na twoje oszacowania punktów; jeśli tak, oznaczałoby to niepoprawną implementację! W kontekście szeregów czasowych jeszcze bardziej odpowiedni estymator ma Newey i West (1987) . Pomóc mogą próby transformacji. Osobiście jestem wielkim fanem transformacji Box-Cox, ale w kontekście analizy, którą przeprowadzasz, trudno jest to zrobić czysto. Po pierwsze, potrzebujesz parametru przesunięcia na szczycie parametru kształtu, a parametry przesunięcia są niezwykle trudne do zidentyfikowania w takich modelach. Po drugie, prawdopodobnie potrzebujesz różnych parametrów przesunięcia / kształtu dla różnych osób i / lub różnych postów i / lub ... (piekło rozpada się). Zliczanie danych jest również opcją, ale w kontekście modelowania średniego regresja Poissona jest tak samo dobra jak transformacja logarytmiczna, ale narzuca nieporęczne założenie wariancji = średnia.

PS Prawdopodobnie możesz to oznaczyć „danymi wzdłużnymi” i „szeregami czasowymi”.

StasK
źródło
dziękuję za odpowiedź i kilka komentarzy / pytań. Zgadzam się, że powinienem był przynajmniej zbadać bardziej wyraźne podejście do szeregów czasowych w tych danych (nawet nie sprawdziłem, czy istnieją jakieś dowody autokorelacji w pozostałościach). Jest jeszcze kilka komplikacji w modelowaniu szeregów czasowych tych danych (co to jest t ?, a sam wynik jest dynamiczny i nie jest ustalany według liczby postów), nie byłoby też potrzeby regresji przewidującej Z_t, doskonale wiem, co Z_t jest funkcją!
Andy W
Również bardzo wątpię, czy wynik jest niestacjonarny, co sprawia, że ​​tak myślisz?
Andy W
Przynajmniej jest to prawdopodobnie heteroskedastyczne: niektóre posty są interesujące, mają dużo hitów i wiele pozytywnych opinii, podczas gdy inne są drobnymi wyjaśnieniami lub pytaniami / odpowiedziami typu „Przeczytaj ten link”. To samo z siebie sprawiłoby, że technicznie byłoby niestacjonarne. Oczywiście stacjonarność jest testowalnym założeniem, ale przy takich szalonych danych prawdopodobnie powinieneś być po bardzo bezpiecznej stronie zbyt zachowawczej w metodach analizy (lub, jak wspomniałem, mieć świadomość, że wyniki mogą być dziwne).
StasK,
Jestem nieco zdezorientowany ostatnim komentarzem. W jaki sposób czynniki egzogenne, które wpływają na wynik odpowiedzi, czynią serię heteroskedastyczną (zakładam, że masz na myśli, że wariancja wyniku staje się większa / mniejsza wraz z liczbą postów?) I jakie ma to znaczenie dla danego pytania?
Andy W
Szeregi czasowe są nieruchome, jeśli rozkłady krańcowe we wszystkich punktach czasowych są takie same. Więc nawet ty możesz mieć ten sam środek, zmieniająca się wariancja sprawi, że seria nie będzie stacjonarna. Przykładem są modele (G) ARCH, za które na początku 2000 roku przyznano nagrodę Nobla. Ale w tych danych spodziewałbym się również pewnych zmian średniej. Jeśli wzrośnie liczba odbiorców witryny, to przy danej jakości odpowiedzi prawdopodobnie zobaczysz więcej głosów, co prawdopodobnie podniesie zarówno średnią, jak i wariancję wyników.
StasK
3

Kilka innych zmian w działkach:

  1. Pasma kwantylowe dla wyniku odpowiedzi w porównaniu do poprzedniej reputacji. (Wykresy 1 i 3)
  2. Wykresy gęstości dla Skeet kontra inne, stratyfikowane według postu (Wykres 3)
  3. Rozważ stratyfikację według # konkurujących postów
  4. Rozwarstwienie według czasu (punkty można zdobywać jeszcze długo po zadaniu pytania)

Modelowanie tego będzie trudniejsze. Możesz rozważyć regresję Poissona. Szczerze mówiąc, opracowywanie dobrych fabuł jest znacznie lepszą metodą rozwijania spostrzeżeń i umiejętności. Rozpocznij modelowanie po lepszym zrozumieniu danych.

Iterator
źródło
(+1) Po pozostawieniu postu przez jakiś czas zdałem sobie sprawę, że wizualizacja gęstości punktów wydaje się znacznie lepszym rozwiązaniem niż próba wizualizacji samych punktów (chociaż nie jestem całkiem pewien, co masz na myśli przez „stratyfikuj przez Poczta #"). Myślę też, że wykreślanie oszacowanych kwantyli brzmi jak dobry pomysł, chociaż dla wykresu 1 i 2 prawdopodobnie będzie to po prostu ogromna chmura. Znów nie wiem, co oznacza „rozwarstwienie czasowe” w tym kontekście, zobacz komentarz Brada Larsona do posta na blogu i moją odpowiedź w tej sprawie.
Andy W
Również bardzo wątpię, aby konkurencyjne posty miały coś wspólnego z zaobserwowanymi relacjami. Czy uważasz, że osoby o wysokiej reputacji zamieszczały wątki z bardziej konkurencyjnymi odpowiedziami we wcześniejszej historii? Twoje sugestie dotyczące uwzględnienia innych zmiennych towarzyszących wydają się być sprzeczne z sugestią unikania modelowania i koncentrowania się na wykresach.
Andy W
Idea stojąca za konkurującymi stanowiskami ma charakter eksploracyjny. Motywacja do odpowiedzi nie ma z tym nic wspólnego. Jeśli chodzi o modelowanie, to nie jest tak, że jestem przeciwny modelowaniu jako taki, ale że nie jesteś jeszcze gotowy, aby to zrobić, dopóki nie zrozumiesz lepiej danych. Jeśli nie rozumiesz danych, nie zrozumiesz modeli.
Iterator,
Przez stratyfikację przez post # sugeruję, że binujesz posty. Może być w skali interwałowej, takiej jak 0-100 postów, 101-200 itp. Lub w skali kwantylowej: podziel użytkowników przez tych z dolnej 10% wszystkich postów, 20% ile itd. Ponieważ Skeet ma tak wiele postów, najlepiej porównać go do swojej grupy rówieśniczej, ale trudno jest porównać go do grupy rówieśniczej z dokładnie taką samą liczbą postów - binowanie danych może pomóc.
Iterator,
Btw, do rozwarstwienia, możesz użyć coplot().
Iterator,
1

Zaraz tam. (I mam na myśli to w dobry sposób ;-)) Przed pójściem dalej z modelami, musisz zająć się tym, co się dzieje z danymi.

Nie widzę wyjaśnienia bardzo osobliwej krzywej pośrodku tego wątku: http://stats.blogoverflow.com/files/2011/07/Rep_Correlated_With_Upvotes.png

Widząc taką krzywą, myślę, że w tych punktach jest coś bardzo dziwnego - że nie są od siebie niezależne, a zamiast tego odzwierciedlają pewną sekwencję obserwacji tego samego źródła.

(Drobna uwaga: tytuł tego wątku „Korelacja ...” wprowadza w błąd.)

Iterator
źródło
5
23 jako zwykły hałas. W związku z tym 99% tej grafiki jest poświęcone wyświetlaniu tego szumu: nie ma tam zbyt wiele informacji.
whuber
Krzywą tę można wyjaśnić charakterem powiązania reputacji z pozytywnymi opiniami i prawdopodobnie ludzie, którzy opublikowali jedną odpowiedź i zyskali całą reputację na podstawie tej jedynej odpowiedzi (w razie potrzeby mogę bardziej szczegółowo wyjaśnić, dlaczego tak się dzieje) . Gdybym wykreślił obecną reputację minus reputację z najnowszego postu, w większości by to załatwił (również te obserwacje nie mają nic wspólnego z późniejszą analizą). Czy zależy ci na tym, by korelacja była myląca?
Andy W
@ whuber, nie sądzę, żebym powiedział, że cokolwiek poniżej 10 ^ 3 to tylko hałas. Z pewnością teoria skutków reputacji powinna mieć zastosowanie w przypadku braku reputacji. Z zadowoleniem przyjmuję również wszelkie sugerowane ulepszenia wykresów (na żadnym wykresie nie ma zbyt wielu informacji!)
Andy W
Dzięki. W tytule nie ma obliczenia korelacji. To po prostu wykres punktowy marginalnego wyniku w stosunku do reputacji. Tyle że, jak wspominacie ty i @whuber, nie jest to tak naprawdę marginalna ocena: powinna to być deltaRep (lub Rep (t) - Rep (t-1)) w porównaniu do Rep (t-1).
Iterator,
1
@Iterator, poprawne dla ostatniego zdania (10 punktów za głosowanie), ale nadal wydaje się, że możesz pomylić to, co knuję z innym stwierdzeniem. Oś Y nie jest reputacją, ale liczbą pozytywnych opinii na temat najnowszego postu (niekoniecznie, Rep(t) - Rep(t-1)ponieważ użytkownicy mogą zyskać reputację z innych miejsc), oś X to bieżąca reputacja (w tym reputacja uzyskana z tego postu). Oś X jest tym, co zasugerowałem, że należy ją zastąpić (odejmując głosy poparcia uzyskane od odpowiedzi, którą narysowałem na osi Y).
Andy W