Bagaimana saya dapat meningkatkan analisis saya tentang efek reputasi pada pemungutan suara?

15

Baru-baru ini saya telah melakukan beberapa analisis tentang efek reputasi pada upvote (lihat posting blog ), dan kemudian saya punya beberapa pertanyaan tentang analisis dan grafik yang mungkin lebih mencerahkan (atau lebih tepat).

Jadi beberapa pertanyaan (dan jangan ragu untuk menanggapi siapa pun khususnya dan mengabaikan yang lain):

  1. Dalam inkarnasi saat ini, saya tidak bermaksud memusatkan nomor pos. Saya pikir apa yang dilakukannya adalah memberikan tampilan yang salah dari korelasi negatif di sebar, karena ada lebih banyak posting ke ujung bawah jumlah posting (Anda lihat ini tidak terjadi di panel Jon Skeet, hanya di pengguna fana panel). Apakah pantas untuk tidak memusatkan nomor pos (karena maksud saya memusatkan skor per skor rata-rata pengguna)?

  2. Harus jelas dari grafik bahwa skor miring sangat benar (dan rata-rata pemusatan tidak mengubah itu). Ketika memasang garis regresi, saya cocok dengan model linier dan model yang menggunakan kesalahan pasir Huber-White (melalui rlmpaket MASS R ) dan tidak ada perbedaan dalam perkiraan kemiringan. Haruskah saya mempertimbangkan transformasi pada data alih-alih regresi yang kuat? Perhatikan bahwa setiap transformasi harus memperhitungkan kemungkinan skor 0 dan negatif. Atau haruskah saya menggunakan jenis model lain untuk menghitung data, bukan OLS?

  3. Saya percaya dua grafik terakhir, secara umum, dapat ditingkatkan (dan terkait dengan strategi pemodelan yang ditingkatkan juga). Menurut pendapat saya (letih), saya akan curiga jika efek reputasi itu nyata mereka akan terwujud cukup awal dalam sejarah poster (saya kira jika benar, ini mungkin dipertimbangkan kembali "Anda memberikan beberapa jawaban yang sangat baik sehingga sekarang saya akan mengambil alih semua dari Anda memposting efek "bukannya" reputasi berdasarkan skor total "). Bagaimana saya bisa membuat grafik untuk menunjukkan apakah ini benar, sambil memperhitungkan plot yang berlebihan? Saya pikir mungkin cara yang baik untuk menunjukkan ini adalah agar sesuai dengan model formulir;

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

di mana adalah (sama dengan di scatterplots saat ini), X 1 adalah , dan Z 1Z k adalah variabel dummy yang mewakili beberapa rentang nomor posting yang sewenang-wenang (misalnya Z 1 sama dengan jika nomor posting adalah , Z 2 sama dengan jika nomor posting adalah dll.) β 0 dan ϵ masing-masing adalah istilah intercept dan error. Maka saya hanya akan memeriksa perkiraan γYscore - (mean score per user)X1post numberZ1ZkZ111 through 25Z2126 through 50β0ϵγlereng untuk menentukan apakah efek reputasi muncul sejak awal dalam sejarah poster (atau menampilkannya secara grafis). Apakah ini pendekatan yang masuk akal (dan tepat)?

Tampaknya populer untuk mencocokkan beberapa jenis garis pemulusan non-parametrik ke plot pencar seperti ini (seperti loess atau splines), tetapi eksperimen saya dengan splines tidak mengungkapkan apa pun yang mencerahkan (bukti efek postive awal sejarah poster sedikit dan tempermental) ke jumlah splines saya sertakan). Karena saya memiliki hipotesis bahwa efeknya terjadi sejak awal, apakah pendekatan pemodelan saya di atas lebih masuk akal daripada splines?

Juga perhatikan meskipun saya sudah cukup banyak mengeruk semua data ini, masih ada banyak komunitas lain di luar sana untuk diperiksa (dan beberapa seperti superuser dan serverfault memiliki sampel yang sama besar untuk menarik dari), sehingga banyak masuk akal untuk menyarankan di masa depan analisis yang saya gunakan sampel tahan untuk memeriksa hubungan apa pun.

Andy W
sumber
Saat ini saya telah membuat beberapa catatan pada pertanyaan pertama saya, dan mereka dapat ditemukan di sini . Saya tidak yakin saat ini apakah saya harus memposting ini sebagai jawaban untuk pertanyaan saya sendiri atau membuka pertanyaan terpisah (karena ini sebagian besar difokuskan pada visualisasi data). Tetapi jangan ragu untuk meninggalkan saya komentar tentang dokumen google baik di sini atau di ruang obrolan .
Andy W

Jawaban:

14

Ini adalah upaya yang berani, tetapi dengan data ini saja, akan sulit atau tidak mungkin untuk menjawab pertanyaan penelitian Anda mengenai "efek reputasi pada upvotes." Masalahnya terletak pada memisahkan efek dari fenomena lain, yang saya daftarkan bersama dengan indikasi singkat tentang bagaimana mereka ditangani.

  • Efek belajar . Seiring dengan meningkatnya reputasi, pengalaman pun meningkat; seiring dengan meningkatnya pengalaman, kami berharap seseorang akan mengajukan pertanyaan dan jawaban yang lebih baik; karena kualitasnya meningkat, kami mengharapkan lebih banyak suara per pos. Dapat dibayangkan, satu cara untuk menangani ini dalam analisis adalah mengidentifikasi orang yang aktif di lebih dari satu situs SE . Di situs mana pun, reputasi mereka akan meningkat lebih lambat daripada jumlah pengalaman mereka, sehingga memberikan pegangan untuk memisahkan reputasi dan efek pembelajaran.

  • Perubahan temporal dalam konteks. Ini banyak sekali, tetapi yang jelas akan mencakup

    • Perubahan dalam jumlah pemilih dari waktu ke waktu , termasuk tren naik secara keseluruhan, tren musiman (sering dikaitkan dengan siklus akademik), dan pencilan (yang timbul dari publisitas eksternal seperti tautan ke utas tertentu). Analisis apa pun harus memperhitungkan faktor ini ketika mengevaluasi tren reputasi untuk setiap individu .

    • Perubahan adat-istiadat komunitas dari waktu ke waktu . Komunitas, dan bagaimana mereka berinteraksi, berkembang dan berkembang. Seiring waktu mereka cenderung cenderung untuk memilih lebih atau kurang sering. Setiap analisis harus mengevaluasi efek ini dan memfaktorkannya .

    • Waktu itu sendiri. Seiring berjalannya waktu, posting sebelumnya tetap tersedia untuk mencari dan terus mengumpulkan suara. Dengan demikian, caeteris paribus , posting lama harus menghasilkan lebih banyak suara daripada yang lebih baru. (Ini adalah efek yang kuat : beberapa orang yang secara konsisten tinggi pada liga reputasi bulanan belum mengunjungi situs ini sepanjang tahun!) Ini akan menutupi atau bahkan membalikkan efek reputasi positif yang sebenarnya. Setiap analisis perlu memperhitungkan lamanya waktu setiap posting telah ada di situs .

  • Popularitas subjek. Beberapa tag (misalnya, ) jauh lebih populer daripada yang lain. Dengan demikian, perubahan dalam jenis pertanyaan yang dijawab seseorang dapat dikacaukan dengan perubahan temporal, seperti efek reputasi. Karena itu, setiap analisis perlu mempertimbangkan sifat pertanyaan yang dijawab.

  • Tampilan [ditambahkan sebagai edit]. Pertanyaan dilihat oleh jumlah orang yang berbeda karena berbagai alasan (filter, tautan, dll.). Ada kemungkinan jumlah suara yang diterima oleh jawaban terkait dengan jumlah pandangan, meskipun orang akan mengharapkan proporsi yang menurun ketika jumlah pandangan meningkat. (Ini masalah berapa banyak orang yang benar-benar tertarik dengan pertanyaan yang benar-benar melihatnya, bukan angka mentah. Pengalaman saya sendiri - anekdotal - adalah bahwa sekitar setengah dari upvote yang saya terima pada banyak pertanyaan datang dalam 5-15 pertama pandangan, meskipun akhirnya pertanyaan dilihat ratusan kali.) Oleh karena itu, setiap analisis perlu memperhitungkan jumlah pandangan, tetapi mungkin tidak secara linear.

  • Kesulitan pengukuran. "Reputasi" adalah jumlah suara yang diterima untuk kegiatan yang berbeda: reputasi awal, jawaban, pertanyaan, menyetujui pertanyaan, mengedit wiki tag, downvoting, dan mendapatkan downvoted (dalam urutan nilai yang menurun). Karena komponen-komponen ini menilai hal-hal yang berbeda, dan tidak semua berada di bawah kendali pemilih masyarakat, mereka harus dipisahkan untuk dianalisis . "Efek reputasi" mungkin diasosiasikan dengan kenaikan pada jawaban dan, mungkin, pada pertanyaan, tetapi seharusnya tidak mempengaruhi sumber reputasi lainnya. Reputasi awal harus dikurangi (tetapi mungkin dapat digunakan sebagai proksi untuk sejumlah pengalaman awal).

  • Faktor tersembunyi. Mungkin ada banyak faktor pembaur lain yang tidak mungkin untuk diukur. Misalnya, ada berbagai bentuk "kelelahan" dalam partisipasi di forum. Apa yang dilakukan orang setelah beberapa minggu awal, berbulan-bulan, atau bertahun-tahun antusiasme? Beberapa kemungkinan termasuk fokus pada pertanyaan yang jarang, tidak biasa, atau sulit; memberikan jawaban hanya untuk pertanyaan yang tidak terjawab; memberikan lebih sedikit jawaban tetapi dengan kualitas lebih tinggi; dll. Beberapa di antaranya bisa menutupi efek reputasi, sedangkan yang lain bisa keliru dikacaukan dengan satu. Proksi untuk faktor-faktor tersebut dapat berupa perubahan tingkat partisipasi oleh seorang individu : mereka dapat menandakan perubahan dalam sifat posting orang itu.

  • Fenomena subkomunitas. Melihat statistik dengan susah payah, bahkan pada halaman SE yang sangat aktif, menunjukkan bahwa sejumlah kecil orang melakukan sebagian besar menjawab dan memberikan suara. Sebuah klik sekecil dua atau tiga orang dapat memiliki pengaruh besar pada pertumbuhan reputasi. Klik dua orang akan dideteksi oleh monitor bawaan situs (dan ada satu grup di situs ini), tetapi klik yang lebih besar mungkin tidak. (Saya tidak berbicara tentang kolusi formal: orang bisa menjadi anggota kelompok seperti itu tanpa menyadarinya.) Bagaimana kita memisahkan pengaruh reputasi yang tampak dari kegiatan klik tidak resmi yang tidak terdeteksi ini? Data suara terperinci dapat digunakan secara diagnostik, tetapi saya tidak yakin kami memiliki akses ke data ini.

  • Data terbatas. Untuk mendeteksi efek reputasi, Anda mungkin perlu fokus pada individu dengan lusinan hingga ratusan pos (setidaknya). Itu menurunkan populasi saat ini menjadi kurang dari 50 individu. Dengan semua kemungkinan variasi dan perancu, itu terlalu kecil untuk menghilangkan efek signifikan kecuali mereka memang sangat kuat. Obatnya adalah menambah dataset dengan catatan dari situs SE lainnya .

Mengingat semua komplikasi ini, harus jelas bahwa grafik eksplorasi dalam artikel blog memiliki sedikit kesempatan untuk mengungkapkan apa pun kecuali itu sangat jelas. Tidak ada yang keluar dari kita: seperti yang diharapkan, datanya berantakan dan rumit. Terlalu dini untuk merekomendasikan perbaikan pada plot atau analisis yang telah disajikan: perubahan tambahan dan analisis tambahan tidak akan membantu sampai masalah mendasar ini telah diatasi .

whuber
sumber
Terima kasih atas tanggapannya. Mengingat luasnya kritik, saya tidak akan dapat dengan tepat menanggapi semua saran dalam komentar (saya harus memikirkan tempat lain, mungkin hanya memposting dokumen google lain). Tetapi saya akan mengatakan sekarang saya pikir tidak mungkin untuk menjawab (sejauh bahwa siapa pun dapat menjawab apa pun dengan data pengamatan seperti ini). Paling tidak, mengingat keterbatasan potensi yang membingungkan, orang dapat melihat apakah efek reputasi konsisten dengan bukti yang tersedia.
Andy W
@Andy Saya pikir perancu adalah substansial dan meresap, sehingga bahkan jika itu tampak seperti efek reputasi ada, itu bisa menjadi artefak: Anda tidak akan dapat menarik kesimpulan yang valid kecuali Anda telah mengatasi masalah ini. Tentu saja saya bisa saja salah, tetapi beban pembuktian ada pada Anda.
whuber
"jika terlihat seperti efek reputasi ada" adalah pernyataan kunci (seperti yang saya lihat). Sebagian besar kekacauan yang Anda sajikan akan secara ambigu terkait dengan reputasi poster / nomor pos / sejarah atau secara teoritis diharapkan untuk meningkatkan skor poster pada jawaban di kemudian hari dalam sejarah mereka. Jika saya tidak menemukan bukti efek reputasi, banyak potensi yang membingungkan tidak dapat digunakan untuk menjelaskan ketidakhadirannya.
Andy W
@Andy Tapi setidaknya satu bisa, dan itu sudah cukup. Ini termasuk faktor tersembunyi, popularitas subjek, dan perubahan temporal dalam konteks. Jika Anda tidak secara eksplisit menangani semua ini dalam analisis, kesimpulan Anda akan dicurigai. Sekilas catatan menunjukkan bahwa popularitas subjek dan perubahan temporal sangat besar; pengaruh potensial mereka membanjiri apa yang bisa kita perkirakan sebagai dampak reputasi.
whuber
2
@ cardinal, bahkan tanpa definisi formal, akan mungkin bagi sejumlah kecil orang untuk memiliki dampak yang cukup besar pada pola pemungutan suara (yang saya anggap merujuk pada whuber dalam konteks ini). Posting rata-rata Jon Skeet hanya 5 sesuatu yang naik. Jika tiba-tiba satu orang memutuskan untuk membatalkan semua jawabannya, itu bisa memiliki dampak yang cukup besar mengingat skor rata-rata yang rendah untuk memulai.
Andy W
5

Ahli ekonometrika telah melihat masalah serupa dalam kerangka kerja kausalitas Granger . Jika Anda memiliki dua seri,Yt dan Zt, Anda dapat menjalankan model autoregresif vektor , yang dalam bentuk paling sederhana dengan tampilan lag tunggal sepertiYt=a0+a1Yt1+a2Zt1+ϵt, Zt=b0+b1Yt1+b2Zt1+δt. If you see that say a2 is significant, then you can claim that Z (Granger-)causes Y: adding information about Z improves the precision of your model for Y. Here, your time t would be the post number, and the variables are obviously reputation and the score. Both are non-stationary, so a more serious fiddling with the data, like taking the increments ΔYt=YtYt1 in place of Yt in the above equations will be called for. (Note that you may lose the normal and normal-based F or χ2 distributions with non-stationary data, and the rate of convergence with trend variables, if you include them into analysis, may be T1 or even faster, rather than T1/2 that most of us are used to from the Central Limit Theorem. You need to be super-careful with these.) So I guess if Yt is the answer score, and Zt is reputation, then clearly a0 is the average score, a1 is how the person learns to write better answers, and a2 is how their reputation precedes their word (provided the model assumptions are satisfied, etc.)

On point 1: if you were doing fixed effects by hand, you should've centered both the response variable and the explanatory variables. The panel data regression package would've done this for you, but the official econometric way of looking at things is to subtract the "between" regression from the "pooled" regression (see Wooldridge's black book; I have not checked the second edition, but I generally view the first edition as the best textbook-type description of econometric panel data).

On your point 2: of course Eicker/White standard errors won't affect your point estimates; if they did, that would indicate an incorrect implementation! In the context of time-series, an even more appropriate estimator is due to Newey and West (1987). Trying transformations might help. I am personally a big fan of the Box-Cox transformation, but in the context of the analysis that you are undertaking, it is difficult to do it cleanly. First, you would need a shift parameter on top of the shape parameter, and the shift parameters are notoriously difficult to identify in models like this. Second, you would probably need different shift/shape parameters for different people, and/or different posts, and/or... (all the hell breaking loose). Count data is an option, too, but in the context of mean modeling, a Poisson regression is just as good as the log transformation, yet it imposes an unwieldy assumption of variance = mean.

P.S. You could probably tag this with "longitudinal-data" and "time-series".

StasK
sumber
thank you for the response, and a few comments/questions. I agree I should have at least explored a more explicit time series approach in this data (I did not even check to see if there was any evidence of autocorrelation in the residuals). There are a few more complications though in time series modelling of this data (what is t?, and score itself is dynamic and not fixed per post number), also there would be no need for a regression predicting Z_t, I know perfectly what Z_t is a function of!
Andy W
Also I highly doubt score is non-stationary, what makes you think it is?
Andy W
At the very least, it is probably heteroskedastic: some posts are interesting, get a lot of hits and a lot of upvotes, while others are small clarifications or RTFM-"Read this link" type of questions/answers. That of itself would technically make it non-stationary. Of course stationarity is a testable assumption, but with crazy data like these, you'd probably want to be on a very safe side of being overly conservative in the analysis methods (or, as I mentioned, to be aware that the results may be weird).
StasK
I'm a bit confused by the last comment. How do exogenous factors that affect the score of an answer make the series heteroskedastic (I assume you mean that the variance of score gets larger/smaller with post number?), and of what relevance is this to the question at hand?
Andy W
A time series is stationary if the marginal distributions at all time points are the same. So even you might have the same mean, a changing variance will make the series non-stationary. An example are (G)ARCH models for which a Nobel prize was given in the early 2000s. But in these data, I would expect some shifts in the mean, as well. If the audience of the website grows, then for a given quality of an answer, you would likely to see more votes on it, which will likely raise both the mean and the variance of the scores.
StasK
3

Several other changes to plots:

  1. Quantile bands for the answer score versus previous reputation. (Plots 1 & 3)
  2. Density plots for Skeet versus others, stratified by post # (Plot 3)
  3. Consider stratifying by # of competing posts
  4. Stratify by time (one may continue to gain points long after the question has been asked)

Modeling this will be harder. You might consider Poisson regression. Frankly, though, developing good plots is a much better method of developing insights and skills. Begin modeling after you have a better understanding of the data.

Iterator
sumber
(+1) After letting the post sit for awhile, I realized that visualizing the density of the points appears to be a much better solution than trying to visualize the points themselves (although I'm not quite sure what you mean by "stratify by the post #"). I also think plotting the estimated quantiles sounds like a good idea, although for plot 1 & 2 it will likely just be in the massive cloud. Again I don't know what "stratify by time" in this context means either, see Brad Larson's comment on the blog post and my response in regards to this.
Andy W
Also I highly doubt competing posts has anything to do with the observed relationships. Do you think people whom have high reputation posted in threads with more competing answers earlier in their history? Your suggestions about including other covariates seem to be conflicting with the suggestion to avoid modelling and focus on plots.
Andy W
The idea behind the competing posts is exploratory in nature. Motivation to answer has nothing to do with it. Regarding modeling, it's not that I'm against modeling per se, but that you're not yet ready to do it until you have a better understanding of the data. If you don't understand the data, you won't understand the models.
Iterator
By stratify by post #, I am suggesting that you bin the posts. It can be on an interval scale, such as 0-100 posts, 101-200, etc. Or on a quantile scale: split the users by those in the bottom 10%ile of total posts, 20%ile, etc. Because Skeet has so many posts, it is best to compare him to his peer group, but it's hard to compare him to a peer group of those with precisely the same # of posts - binning the data may help.
Iterator
Btw, for the stratification, you can use coplot().
Iterator
1

Whoa there. (And I mean that in a good way ;-)) Before going further with models, you need to address what's going on with the data.

I don't see an explanation for the very peculiar curve in the middle of this plot: http://stats.blogoverflow.com/files/2011/07/Rep_Correlated_With_Upvotes.png

Seeing such a curve makes me think that there's something very weird about those points - that they're not independent from each other and instead reflect some sequence of observations of the same source.

(Minor note: titling that plot "Correlation..." is misleading.)

Iterator
sumber
5
That curve looks weird because of the weird choice of scales on the axes. It reflects replies that have contributed the majority of a user's reputation: the one-post wonders. It's exponential because the y axis is linear while the x axis is logarithmic. You really should ignore everything associated with log reputations less than 2 because for many users that's where their reputations start and you should consider almost anything for log reputations less than 3 to be just noise. As such, 99% of this graphic is devoted to displaying that noise: there's not much information there.
whuber
That curve can be explained by the nature of how reputation is related to upvotes, and is likely people whom have posted one answer and gained all reputation from that sole answer (I can go into more detail on why that is likely the case if needed). If I had plotted current reputation minus the reputation from the most current post this would have taken care of that for the most part (also those observations don't have anything to do with the subsequent analysis). Do you care to elaborate on the correlation being misleading?
Andy W
@whuber , I don't think I would say anything below 10^3 is just noise. Surely a theory of reputation effects should be applicable to when reputation is absent. I also welcome any suggested improvements to the plots (there is not much info in any of the plots!)
Andy W
Thanks. For the title, there is no calculation of the correlation. It's just a scatter plot of marginal score versus reputation. Except, as you and @whuber mention, it's not really the marginal score: it should be deltaRep (or Rep(t) - Rep(t-1)) versus Rep(t-1).
Iterator
1
@Iterator , correct for the last statement (10 points per upvote), but it still appears you may be confused what I am plotting with the other statement. The Y axis is not reputation, but the number of upvotes for the most recent post (this is not necessarily Rep(t) - Rep(t-1) as users can gain reputation from other places), the X axis is the current reputation (including reputation gained from that post). The X axis is what I suggested should be replaced (subtracting the upvotes gained from the answer in question I plotted on the Y axis).
Andy W