你有多随机?Show HN 上那个能打败大多数人的数字预测游戏

《你有多随机?》是一款浏览器游戏,它试图预测你接下来要说的数字,而且能打败大多数人。 该页面由用户 vunderba 以 Show HN 的形式发布到 Hacker News,地址为 lab.specr.net/rigged-draw,获得了 158 分和 80 条评论。该游戏展示的核心发现是:人类无法生成独立的随机数字——他们会回避最近用过的数字,而这种回避正是预测器利用的机制。

游戏要求你做什么

游戏要求你大声说出 1 到 9 的数字,一个接一个,尽可能随机,不要停下来思考。同时也可以选择用键盘输入。

在每个数字之前,庄家会把它的猜测封在信封里。你说出数字后,信封才会打开。你的前 10 个数字是热身:庄家会猜测,但这些不计入你的得分。最后,你的票据会显示你与一项心理学研究中的 206 人相比表现如何。

网站自己的说明明确指出,数量比谨慎更重要:“你说出的数字越多,你的结果就越准确。”它还警告说,听错的数字不应打断你——“如果庄家偶尔听错,不要停下来。”

预测器的工作原理

庄家同时运行十个小预测器,并信任最近表现最准的那个。根据网站自己的描述,这个集成包括:

  • 统计哪个数字倾向于跟在哪个数字后面的预测器(转移或二元组风格模型)。
  • 跟踪你连续数字之间上下步长的预测器。
  • 寻找你上次连续说出相同几个数字的预测器。
  • 注意你有一段时间没说过哪些数字的预测器。

网站声明最后一种承担了大部分工作,因为“人们总是去触碰他们忽略的数字”。其基本的统计观点在页面上被明确陈述:“在真正随机的序列中,每个数字都独立于它之前的数字。”

模型并非针对每个玩家从头训练。它先基于一项心理学研究中的 418 人每人从 1 到 9 中选择的 200 个数字获得先验,然后在游戏过程中根据个人玩家进行调整。

什么样的分数算好

网站将盲目猜测作为基线:随机猜测大约有 11% 的命中率。评论者报告了在该基线之上的各种结果:

  • steve_adams_86 使用 Math.random() 自动化了游戏,在 190 个计分数字中答对 18 个,即 9%,而盲目猜测的平均正确数约为 21.1(11%)。网站告诉他:“在一项心理学研究的 206 人中,只有 1 个人比你更随机。庄家发现你极难解读。”
  • ehwa37 报告在 117 个计分数字中答对 9 个,即 8%,网站称 206 名研究对象中没有人更随机。
  • tchalla 报告在 32 个计分数字中答对 1 个,即 3%。
  • kykat 报告在 87 个中答对 10 个,即 11%,只有 5/206 的研究对象更随机。
  • riffraff 报告第一次尝试在 27 个中答对 3 个(11%),第二次在 118 个中答对 14 个(12%),并指出打字可能比说话更容易做得好。
  • floorsthelimit 报告庄家猜中了 0/50。
  • vorticalbox 报告在 30 个中答对 2 个后,庄家从第 30 到 50 个数字中正确猜中了 7 个。

较低的命中率更好。网站的框架奖励那些序列让庄家无法解读的玩家。

Aaronson 预言机的传承

评论者立即认出该游戏是 Aaronson 预言机的变体,这是一个著名的演示,表明人类无法随机打字。用户 costco 引用了 Scott Aaronson 本人对原始实验的描述:

在我在伯克利教的一门课上,我做了一个实验,写了一个简单的小程序,让人们输入“f”或“d”,并预测他们接下来会按哪个键。编写一个能做出约 70% 正确预测的程序其实非常容易。大多数人并不真正知道如何随机打字。他们会有太多的交替,等等。会有各种各样的模式,所以你只需要构建某种概率模型。即使是非常粗略的模型也能表现良好。我甚至无法打败我自己的程序,即使我完全知道它是如何工作的。我挑战人们尝试这个,程序的预测率在 70% 到 80% 之间。然后,我们发现一个学生,程序对他预测的准确率恰好是 50%。我们问他秘诀是什么,他回答说“他只是在运用他的自由意志”。

用户 cubefox 指向了同一想法的独立实现,网址为 aaronsonoracle.com。用户 DylanMerigaud 用一句话总结了失败模式:“太多的交替正是人们暴露自己的方式。”

评论者发现的行之有效的策略

几位评论者报告说,通过刻意模拟模型而不是试图随机,他们打败了庄家。

  • 滞后机器的猜测。 christophilus 写道:“我开始只是滞后机器的猜测,它似乎从未察觉。”他的结果是 7/206 的研究对象比他更随机。
  • 对抗性地避免重复的猜测。 alwa 描述注意到庄家重复了一个猜测,然后长时间避开那个数字:“站在老虎机骗局机器的角度玩,挺有趣的!”
  • 凭本能挑选,然后偏移一位。 maidaman 报告第一次尝试表现不佳,然后通过本能地决定一个数字并选择它旁边的数字,表现变好了:“也许我们本能地选择相似的数字,但如果我们对抗本能,我们最终会得到真正随机的数字。”
  • 交替并从两端推进。 akshitgaur2005 报告,当之前的猜测是 n 时,这种方法能正确调用 n-1 和 n+1,但在像 1, 8, 3, 7, 4, 7, 1, 7, 3, 8 这样的序列上却没有正确调用。
  • 毒化热身。 malfist 建议利用不计分的热身反复说同一个数字,然后放弃它:“利用你的热身反复猜同一个数字,然后一段时间不用它。”
  • 算术混合(未测试)。 Trusteando 提议想一个 1 到 9 的随机整数 n1,再想一个 n2,然后说出 (n1 + n2) mod 9 + 1,并邀请其他人报告结果。
  • 用已知常数作弊。 shric 说知道 pi 的小数点后 100 位让作弊变得容易,kps 报告网站也同意 pi 的数字是随机的。
  • 自动化。 steve_adams_86 用 setInterval 循环每秒点击一个随机球来驱动游戏,产生了上面描述的 9% 的结果。

批评、错误和未解问题

测量结果可能与研究不可比。 kykat 提出了最尖锐的方法论反对意见:玩家可以实时看到庄家的预测,而原始心理学研究的参与者可能无法做到这一点。“在我的下一个数字被正确预测后,我改变了我的‘策略’以增加随机性(降低可预测性)。所以我不知道这个结果是否与研究的可比。”

结果文本中的错误。 nightpool 标记了一个似乎将某个值与其自身比较的句子:“你的数字分布比随机抽取更均匀。你使用最多的数字占你选择的 23%,而随机抽取中最频繁的数字大约占 23%。”

语音数据和隐私。 pavel_lishin 询问语音模式是否用于训练模型:“有没有人足够偏执,第一反应是‘你要用我的声音训练模型吗?’”该网站确实提供了打字替代方案,nico 称赞这是良好的设计选择。coolThingsFirst 询问网站使用哪种语音识别模型。

文案的来源。 yesitcan 声称看到“sealed”(密封)这个词就足以识别出网站文本是 Claude 生成的。该网站确实在 lab.specr.net/rigged-draw/licenses.txt 发布了来源和许可证文件。

相关项目和先前作品

  • aaronsonoracle.com,被 cubefox 引用,是 f/d 预测实验的直接实现。
  • humanrandomness.com,由 tibbar 构建,颠倒了前提:不是试图随机,而是试图选择其他人最不可能选择的数字。tibbar 指出该项目帮助他从南方的失业状态转变为在旧金山工作。
  • xkcd 1210,被 andai 引用,是关于自以为随机的人其实不随机的经典漫画。
  • 关于会计部门的随机数生成器的呆伯特漫画被 m463 和 exabrial 独立引用。

结语

《你有多随机?》是一个有效的演示,表明人类生成数字是可预测的,而非随机的。预测器声称的优势来自一个单一而强大的行为规律——人们回避最近用过的数字——结合一组较弱的转移和步长模型。该游戏是可以被击败的,但击败它的策略(滞后机器、对抗性避免重复猜测、毒化热身)都需要建模预测器,而不是更努力地试图随机。讨论中最可信的警告是,实时反馈会改变玩家行为,因此网页游戏中的得分不能直接与它所引用的 206 人心理学研究相比。

Sources

関連

  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch