「先把结果藏起来」:盲法分析是开放科学里最便宜、也最少人用的那件工具
【锚点】这一篇只钉一个判断:可复现性危机的主战场不在「数据是否公开」,而在【分析者在看到结果之前,有没有把分析管线锁死】。盲法分析(blind analysis)就是那把锁,成本接近零,社会科学几乎不用。
【显式】MacCoun & Perlmutter 2015 年在 Nature 上发过一篇 comment(Nature 526, 187–189),标题就叫 “Blind analysis: Hide results to seek the truth”。他们指出:临床试验的标配是双盲(受试者盲、评估者盲),但缺了第三盲——【分析者盲】。
【显式】粒子物理早就在用。Klein & Roodman 2005 年在 Annual Review of Nuclear and Particle Science 上系统总结过:BABAR 与 Belle 测量 B 介子 CP 破坏时,先把自己「蒙住」再分析。2021 年 4 月 7 日 muon g-2 公布结果那天,合作组是在全体会议上现场解盲的——在此之前,连做分析的人也不知道自己算出来的 ω_a 是多少。
【隐式】为什么值得?因为「看到结果」会不可逆地改变「你会不会再多试一条路径」。这不是道德问题,是知觉问题。
【细微】算一下这个不可逆有多贵。假设一个分析里有 5 个二元选择(要不要剔除那 3 个被试 / 用 log 还是 raw / 控不控这个协变量 / 单尾还是双尾 / 均值还是中位数),就是 25 = 32 条管线。若零假设下每条管线的 p 值近似均匀,则至少一条 p<0.05 的概率是 1−0.9532 ≈ 81%。
【极难发现】但这 81% 是上界,不是期望——32 条管线并不独立,很多选择只造成极小的位移。真正致命的不是「我试了 32 次」,而是「我试了 1 次,但那一次是我在看到结果之后才定义的那一次」。所以靠「把所有分析都记录一遍」(multiverse analysis)来救,成本高且永远记不全;靠「提前锁死」,成本近乎零。
【流程节点链路】盲法分析(加盐法)的完整链路:起点【原始数据冻结并留哈希】→ 中间节点①【可信第三方生成隐藏偏移 δ,分析者不知 δ】→ 中间节点②【分析者在加盐数据上跑完整管线,写下「若真实数据给出 X 我就报告 Y」】→ 中间节点③【管线冻结:代码、阈值、排除规则签字封存】→ 中间节点④【解盲:去掉 δ,用同一份代码跑真实数据】→ 终点【无论结果是否符合预期,都报告解盲后的那一个数】。
【隐式】节点③是承重的:没有冻结,前面的盐白加。
【极难发现】盲法有明确边界,别当万灵药:它锁的是【单篇内部的分叉路径】,锁不住【文件抽屉】。一篇盲法做得很干净、结果 p=0.31 的研究,如果没被发表,你的元分析里依然看不到它。盲法解决「这篇论文里的数是不是被挑出来的」,解决不了「哪些论文根本没出现」——后者只能靠预注册和注册报告(registered reports)那种「先审方法、后看结果」的制度。
【显式】还有一个反直觉的代价:盲法让人不舒服。解盲那一刻,你必须接受一个你无法再「优化」的数字——这在以「讲出好故事」为奖励的学科里,是逆着激励走的。
值得辩论的问题:如果盲法这么便宜、这么有效,为什么社会科学几乎不用?我怀疑答案不是「不知道」,而是——很多社会科学研究其实是【探索性】的,而探索的定义就是「要先看到结果,才知道该问什么问题」。那么:强制盲法会不会把真正有价值的意外发现一起杀掉?还是说,我们只是需要把「探索」与「确证」分成两种注册类型,让盲法只绑定后者?







0 评论