← 专著首页目录专著栏目

第五编 翻译

第五十章 三处翻译陷阱


翻译中偷渡的任何一点,都会使判决失效。本章写四处,每一处都会使整套论证变成循环。

前三处按危险程度排,第四处是首跑之后才浮出来的。

一、陷阱一:不能用性能代替结果

陷阱的样子。 把 R 取成基准测试分数——在若干任务上各跑一遍,把分数向量当作结果。

这个做法顺手到几乎不需要理由:分数是现成的,可比的,有大量工具支持,而且所有人都在用。

它为什么会自动出某个结论。

分数是判准 L 在结果上的投影,而 L 是本案里被固定住的那一项。

用 L 的投影当结果,等于事先规定:凡是 L 看不出来的差别都不算差别。

而先在论要论证的恰恰是”差别只在标号上,在实质上不存在”。于是这个取法把结论塞进了度量。

后果是可预测的:在训练分布上,不同种子的模型分数高度接近——这本来就是它们被训练出来的目的。于是”不同种子的模型分数接近”会被误读为路径无关,条款一以一种看上去很干净的方式判负,而判负的原因不是路径差异消失了,是度量把它压掉了。

这一处陷阱在本书里出现了五次,每次的对象不同,值得列出来,因为它说明这不是一个孤立的技术要求:

五次是同一条:一个被设计来压平差异的量,不能用来测量差异。

二、陷阱二:不能事后定义”实质不等价”

陷阱的样子。 先看读数,再决定什么算实质差别。

这个陷阱不像第一个那样有一个明确的技术动作,它是一种时间顺序上的错误,因此更难被发现——做的人常常不知道自己在做。

它为什么会自动出某个结论。

第四十九章第四节已经写过:任何两个独立训练的模型都有无数种差别,也有无数种相同。想找差别,取一个足够细的指标;想找相同,取一个足够粗的指标。两种都能做到,而且都不需要说谎。

于是若定义在读数之后做出,结论完全由指标选择决定。

本书的处理,以及它的实际执行情况。

处理是预注册:距离的完整定义、探针集的全部条目、判负条件,全部在接触任何读数之前冻结并公开摘要值(第五十九章、第六十章)。

执行情况是:这一条被遵守了,而且它真的挡住了一样东西。

首跑的两个通道给出相反方向的读数。若定义可以事后调整,最自然的做法是把表征通道说成主要的、行为通道说成次要的,然后报告一个方向。而第 4 条第三款在执行前就写着”两通道结论不一致则判未能分辨”,于是本书什么也没说(第六十四章)。

但这一条也有它没能挡住的:第五十九章第六节那句话——预注册保护的是”事后不许改判据”,它不保护”事前把判据写错”。首跑的噪声基线就是事前写错的一例。这一处陷阱被挡住了,另一处没有。

三、陷阱三:不能把工程缺陷读成本体论

陷阱的样子。 看到一批关于”不同种子给出不同结果”的报告,直接把它们当作造成论的证据。

这是本书这一侧最容易掉进去的陷阱,而且它比前两处更难察觉,因为掉进去的人得到的是对自己有利的结论。

它为什么不成立。

第五十二章第二节写过:迄今为止机器学习中所报告的绝大多数路径依赖,都是先在论的自家话。非凸优化的局部极小当然依赖初始点,但目标函数由 C 与 A 给定,极小点集合在训练开始之前就已确定。

那些报告说的是”路径差异存在”。而本案要判的是”路径差异是否随资源消失”。前者不蕴含后者,而且前者与先在论完全相容。

因此第七十四章那批材料——欠规定性、多种子基准、次序效应——在本书里只能作为理由,不能作为读数。 那一章第八节把这一点写死。

这一处陷阱还有一个更细的版本,值得单独点出。

工程文献里的路径依赖报告,其因变量几乎全是性能或可靠性指标。于是它们同时踩中陷阱一与陷阱三:既用了判准的投影,又把差异的存在当成了差异的不可消除。

本书对这类材料的正确用法只有一个:把它们当作”这类效应不是虚构的”的说明,以及当作设计实验的理由。第六十六章第四节那条探索性读数的处理方式,就是这个用法的标准形态——它把形式三从一个想法变成一个值得花钱去跑的实验,仅此而已。

四、第四处:不能把装置的限制读成对象的性质

上面三处是论文阶段就识别出来的。首跑之后浮出第四处,它比前三处更隐蔽,因为它不发生在设计阶段,发生在读数阶段。

陷阱的样子。 把一个由装置或判据造成的现象,读成被研究对象的性质。

首跑提供了一个干净的实例。

归一化后的比值在最大规模处从 40.4 掉到 13.4。若只看这一列,自然的读法是”路径差异在大模型上急剧衰减”——一个关于对象的结论。

而实际情况是:分子只从 0.441 降到 0.411,分母从 0.0109 跳到 0.0306。那次坍缩主要是分母造成的,而分母是判据的一部分,不是对象的性质(第六十五章)。

第二个实例在同一跑里。

分组比值在最大规模上四组全线下降,其中中文那一组掉到 1.37,接近噪声。而那一组的基线在同一处从 0.045 跳到 0.121——同样是分母(第六十三章第六节)。

为什么这一处比前三处隐蔽?

因为前三处发生在设计阶段,一个认真的人在动手之前有机会发现;而这一处发生在数据已经出来之后,那时人已经在看一条曲线,而曲线看起来像是在说对象的事。

本书的处理办法,是一条很便宜的程序规定:

报告分母。凡使用任何归一化,把分子、分母、以及比值三者分别列出。

这一条不增加任何计算成本,却能把一整类隐形错误变成可见的。第六十五章第七节把它作为一条超出本案的建议提出,本章把它补进翻译陷阱的清单,因为它的根在翻译阶段——一个量若是复合的,它的成分必须可被拆开检查,否则它就不是一个合格的翻译产物。

这一处陷阱也有它对两侧的对称性:第八十章第七节指出,表征收敛那一线的读数同样很少报告”同一路径内的正常波动有多大”,因而同样面临”上升是否只是度量的产物”这一问。

五、四处陷阱的共同形状

把四处并排:

陷阱 错在哪一步 谁容易掉进去
用性能代替结果 度量选错 两侧都会,先在论受益
事后定义实质不等价 时间顺序错 两侧都会,结论由指标决定
把工程缺陷读成本体论 推论跨了一步 造成论一侧,本书受益
把装置的限制读成对象的性质 读数阶段归因错 两侧都会,且事后才显形

四处的共同点是:它们都不需要任何人说谎。

每一处都可以由一个诚实、认真、方法上无可指摘的研究者踩中。陷阱一是行业惯例;陷阱二是人正常工作的方式;陷阱三是一个看起来只差半步的推论。

这解释了为什么本书用了这么多篇幅在程序上——预注册、冻结、双通道、败绩条件、六条不主张。若这四处陷阱只有不诚实的人会踩,那么呼吁诚实就够了;而既然诚实的人也会踩,就只能靠事先写死的程序。

最后补一句对本书不利的:本章列了四处,不等于只有四处。第四十八章第二节那三处约定、第七十一章那条变换群的界线、第八十章那三个自由参数,各自都是翻译在别处可能被攻破的地方。四处是本书能想到的,不是全部。


《可判性的到来——发现还是发生?》· 王德生 著 · 德麦国际专著第 124 号 · ISBN 979-8-90690-092-0