「残念な賛成票」の問題はありますか?


51

これは話題から外れているように聞こえるかもしれませんが、聞いてください。

スタックオーバーフローでは、ここで投稿に対する投票を得ます。これはすべて表形式で保存されます。

例えば:

投稿ID投票者ID投票タイプ日時
------- -------- --------- --------
10 1 2 2000-1-1 10:00:01 
11 3 3 2000-1-1 10:00:01 
10 5 2 2000-1-1 10:00:01 

... 等々。投票タイプ2は投票、投票タイプ3は投票です。このデータの匿名バージョンをhttp://data.stackexchange.comで照会できます

投稿のスコアが-1以下になると、投稿される可能性が高くなるという認識があります。これは単に確認バイアスである場合もあれば、実際に根付いている場合もあります。

この仮説を確認または否定するために、このデータをどのように分析しますか?このバイアスの影響をどのように測定しますか?


1
クエリの例を入手できますか?誰もがSQLステートメントの作成に精通しているわけではありません。サンプルデータがあると、人々はそれを試してみることを奨励するかもしれません。質問の+1。
mpiktas

投票は匿名化されている@Jeffだけデータ・ダンプから部分的情報を取得することができ、それはここにかかわらず、すべての遷移を含んでいます迅速なサンプルされdata.stackexchange.com/stackoverflow/q/101738フル匿名データは、公開データダンプで利用可能です
サムサフラン

なぜ賛成票を投じるのですか?それぞれの特定の値の周りでアップまたはダウン投票が分割される確率は、どのように確かに興味深いでしょうか?
ボブデュラント

@ボブ、確かに彼らが同意する
サムサフラン

1
他の種類のサイトが投票を難読化する(つまり、表示する前にノイズを追加する)こともあります。さまざまな形式のバンドワゴン、哀れな投票、その他の「社会的」投票の要素。
Glen_b

回答:


32

マルチステートモデルまたはマルコフチェーンを使用できます(Rのmsmパッケージは、これらに適合する1つの方法です)。次に、-1から0への遷移確率が0から1、1から2などよりも大きいかどうかを確認できます。他と比較して-1の平均時間を調べて、それがより短いかどうかを確認することもできます。 。


3
+1素晴らしいリファレンス。Journal of Statistics Softwareにmsmパッケージに関する記事があります。モデルはこの種のタスクに理想的に適合しているようです。
mpiktas

3
マルコフ連鎖モデルのアイデアは良いアイデアのように見えますが、-1の平均時間では全体がわかりません。他の場所よりも-1でダウン投票される可能性が高い(そしてもっともらしい-悪い質問だと思う)。
ボブデュラント

私が最初にしたいことは、投票軌跡をクラスター化することだと思います-(ほぼ)上昇/下降のみを行う(非常に人気のある/非常に悪い質問)ものと、より議論の多いものです。その後、3つのクラスでマルコフ連鎖を行うことができます。
ジョナス

13

実験を行います。毎日特定の時間に新しい投稿の半分をランダムにダウン票します。


5
クール、私たちは「評論家」バッジが大幅に増加し、新規ユーザーのための動機ではおそらく減少を観察する必要があります:-)ベター(実験をバイアスのリスクがある!)、この場合には、高担当者のユーザーと開始します
CHLを

14
実際には、これよりもうまくいく可能性があります... ABテストを使用して、サイトで-1投票された質問の半分を0、半分を-1として表示し、どちらかのグループがより可能性が高いかどうかを確認できます賛成!独創的。
サムサフラン

4
実験のアイデアは投稿の品質を制御しますが、(1)ダウングレードされるものは事前に実験に参加することに同意する必要があり、(2)しばらくしてからダウングレードを削除する必要があります。
zbicyclist

2
+1(およびここのすべてのコメントにも+1):影響を受ける可能性のあるすべてのユーザーに事前に通知し、承認を得て実施する制御された可逆実験は、この情報を取得する最も強力な方法の1つです。
whuber

13

私の答えの要約。私はマルコフ連鎖モデリングが好きですが、「時間的」側面が欠けています。一方、時間的側面(例:平均時間)に焦点を合わせると、「遷移」側面が失われます。私は、次の一般的なモデリングに入ります(適切な仮定を使用すると、[markovプロセス] [1]につながります)。また、この問題の背後には多くの「検閲された」統計があります(これは確かにソフトウェアの信頼性の古典的な問題ですか?)。私の答えの最後の方程式は、特定の投票状態に対する投票強度の最尤推定量(「+」で最大、「-」でダウ)を提供します。方程式からわかるように、これは、遷移確率のみを推定する場合と、特定の状態で費やされた時間のみを測定する場合の中間です。この助けを願っています。1

一般的なモデリング(質問と仮定を再度述べるため)。 してみましょうとそれぞれの投票日と関連投票記号(upvoteのための+1、-1 downvote用)をモデル化し、ランダムな変数です。投票プロセスは単純です(VDi)i1(Si)i1

Yt=Yt+Yt
ここで

Yt+=i=01VDit,Si=1 and Yt=i=01VDit,Si=1

ここで重要な量は、 -jump ここで、はまたはあり、 は適切なフィルターです。 : 。ϵ

λtϵ=limdt01dtP(Yt+dtϵYtϵ=1|Ft)
ϵ+Ft
Ft=σ(Yt+,Yt,VD1,,VDYt++Yt,S1,,SYt++Yt)

しかし、あなたの質問の行に沿って、 これは、に決定論的シーケンスよう。

P(Yt+dtϵYtϵ=1|Ft)=P(Yt+dtϵYtϵ=1|Yt)
ϵ=+,(μiϵ)iZλtϵ=μYtϵ

この形式では、「」(または少なくとも差がa所定のしきい値)。μ1+μ0+>0

この仮定の下で、あることを示すことは容易である上の[均質マルコフ過程] [3]ジェネレータとによって与えられますYtZQ

i,jZQi,i+1=μi+Qi,i1=μiQii=1(μi++μi)Qij=0 if |ij|>1

質問に答える(統計問題の最尤推定法を提案することにより) この再定式化から、を推定し、その値を上回るテストを構築することで問題を解決します。一般性を失うことなく、インデックスを修正して忘れましょう。(および)の推定は、(μi+)iμ+μ

(T1,η1),,(Tp,ηp)ここで、は状態費やされた周期のの長さです。(とすなわち回連続)とある質問は、upvotedれた場合は、それがdownvotedとされた場合は、それは観察の最後の状態だった場合。TjjthpiYt=iηj+110

最後の観測状態のケースを忘れた場合、言及されたカップルはおよび依存する分布からなります:(Expは指数分布からのランダムな変数で、は誰が最大値を実現するかに応じて+または-1です)。次に、次の簡単な補題を使用できます(証明は簡単です)。μi+μi(min(Exp(μi+),Exp(μi)),η)η

補題もし及び、その後、及び。 X+Exp(μ+)XExp(μ)T=min(X+,X)Exp(μ++μ)P(X+1<X)=μ+μ++μ

これは、密度のことを意味しの次式で与えられる。 ここでは指数確率変数の密度関数ですパラメータ。この式から、およびの最尤推定量を簡単に導出できます。f(t,ϵ)(T,η)

f(t,ϵ)=gμ++μ(1(ϵ=+1)μ++1(ϵ=1)μμ++μ)
gaa>0aμ+μ

(μ^+,μ^)=argminln(μ+μ+)((μ+μ+)i=1pTi+p)pln(μ)p+ln(μ+)
ここでおよび。p=|i:δi=1|p+=|i:δi=+1|

より高度なアプローチに対するコメント

が最後に観察された状態である場合(を通過するとき、それは多くの場合あなたの最後のスコアであるため、より賢くなります)の ケースを考慮したい場合、少し推論を変更する必要があります。対応する打ち切りは比較的古典的です...i1

考えられる他のアプローチには、

  • 時間とともに減少する強度を持つ
  • 最後の投票以降に費やした時間とともに減少する強度を持つ(私はこれを好む。この場合、密度がどのように減少するかをモデル化する古典的な方法がある...
  • は滑らかな関数であると仮定することができます。μi+i
  • ....他のアイデアを提案できます!
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.