我们有“可怜的投票”问题吗?


51

我知道,这听起来像是题外话,但请听我说。

在Stack Overflow上,我们在这里对文章进行投票,所有信息都以表格形式存储。

例如:

帖子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 2011年

@Jeff投票已匿名,您只能从数据转储中获取部分信息,尽管这里提供了一个快速示例数据,但它确实包括所有转换。stackexchange.com/ stackoverflow / q / 101738完整的匿名数据可在公共数据转储中找到
Sam Saffron

为什么只投票?确定围绕每个特定值进行向上或向下投票的概率肯定会如何有趣?
Bob Durrant

@Bob,肯定同意,他们会这么做
Sam Saffron

1
我见过其他类型的网站会混淆选票(即在显示选票之前先加点噪点),有时甚至在短时间内完全隐藏上下选票,以避免各种形式的团团争吵,可怜的选票和其他“社会”投票投票要素。
Glen_b

Answers:


32

您可以使用多状态模型或Markov链(R中的msm包是适合这些条件的一种方式)。然后,您可以查看从-1到0的过渡概率是否大于从0到1,1到2的过渡概率,依此类推。您还可以查看-1的平均时间与其他时间相比是否更短。


3
+1参考。Journal of Statistics Software中有一篇有关msm软件包的文章。该模型似乎非常适合这种任务。
mpiktas 2011年

3
马尔可夫链模型的想法看起来不错,但平均时间为-1并不能说明全部情况。(在合理的范围内,请考虑不好的问题)一个人在-1投票的可能性比其他地方都低。
Bob Durrant

我猜想首先要做的是将投票轨迹归类-那些投票(几乎)只会(最多)/否决(非常受欢迎/非常不好的问题),以及那些更有争议的投票。然后,您可以在这三个类上进行马尔可夫链。
乔纳斯(Jonas)

13

进行一项实验。每天在特定时间随机将一半的新帖子降级。


5
太酷了,我们应该观察到“批评”徽章的显着增加,并且可能会减少新用户的使用动机:-)在这种情况下,最好从高重复率的用户入手(有可能使实验产生偏差!)
chl

14
实际上,我们可以做得更好……使用AB测试,我们可以选择将网站上-1投票的问题的一半显示为0,而将-1的一半显示为-1 ...然后查看这两个组中是否更有可能赞!巧妙。
山姆番红花

4
实验思路控制着帖子的质量,但是(1)降级的帖子应事先同意参加实验,(2)短暂的时间后,应删除降级的帖子。
zbicyclist 2011年

2
+1(此处也是所有评论的+1):一种可逆的可控实验,事先与所有可能受到影响的用户交流,并得到他们的批准,这是获取此信息的最强方法之一。
ub

13

我的答案摘要。我喜欢马尔可夫链建模,但是错过了“时间”方面。另一方面,专注于时间方面(例如平均时间)会错过“过渡”方面。我将进入以下一般建模(在适当的假设下,这可能会导致[markov过程] [1])。这个问题(当然是软件可靠性的经典问题?)背后还有很多“审查”统计数据。对于给定的投票状态,我的答案的最后一个等式给出了投票强度的最大似然估计值(向上为“ +”,向下为陶氏,为“-”)。从等式中我们可以看到,它只是您仅估计过渡概率的情况和仅衡量在给定状态下花费的时间的情况的中间结果。希望能有所帮助。1

通用建模(重述问题和假设)。 令和是分别模拟投票日期和相关投票符号的随机变量(+1代表赞成,-1代表反对)。投票过程很简单(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ϵ

在这种形式主义中,您的问题可以重申为:“可能性”(或至少差异大于给定阈值)。μ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)其中是在状态花费的周期中的的长度(即连续时间),如果问题被赞成,为如果问题被反对为如果它是最后的观察状态,则为。TjjthpiYt=iηj+110

如果您忘记了最后一个观察状态的情况,则及的对是来自依赖于和的分布的iid :它的分布为(其中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
  • ....您可以提出其他想法!
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.