← 专著首页目录专著栏目

第六编 三条款

第五十五章 条款一的三条硬规定,与首跑之后补上的第四条


条款一全部压在一个量上:结果距离 d。上一章的每一个数字都是 d 的产物,换一个 d,全部数字都会变,甚至结论都可能反转。

d 是本书最大的一处自由参数。处理自由参数的办法不是假装它不存在,而是把它可能被滥用的方式一一点名,然后事先堵上。本章堵四条。前三条在首跑的预注册里就写下了:两条防止本书赢得太脏,一条防止本书输得冤枉。第四条是首跑之后补上的,它的来处是一次真实的险情。

一、不得用任务分数

做坏的样子。 最顺手的 d 是用基准分数:在若干任务上各跑一遍,把分数向量的差当作结果差异。这个做法有工具、有先例、有现成的数据,几乎不需要额外工作。

为什么这样做会自动出某个结论。 因为基准分数是判准 L 在结果上的投影,而 L 是本案里被固定住的那一项。用 L 的投影当结果,等于事先规定”凡是 L 看不出来的差别都不算差别”;而先在论要论证的恰恰是”差别只在标号上,在实质上不存在”。这等于把待判的命题塞进了度量里。

后果是可预测的:在训练分布上,不同种子的模型分数高度接近——这本来就是它们被训练出来的目的。用分数做 d,Δ(N) 会天然地小,而且会随规模变得更小,因为规模越大模型越接近判准的上限。条款一会以一种看上去很干净的方式判负,而判负的原因不是路径差异消失了,是度量把它压掉了。

本书的堵法。 任务分数不进入 d。它只能作为附属读数报告,用来回答”这些模型在常规意义上是否可比”这个前提性的问题。附属读数与判决读数分开摆放,不合并计算。

堵法的代价。 代价是本书放弃了与既有工程文献最容易对接的那个接口。大量关于种子方差的报告都是以分数为单位的,本书不能直接引用它们作为条款一的读数,只能引用它们作为动机。这个代价是值得付的,但要写明。

二、必须消去已知对称性

做坏的样子。 直接比较两个模型的内部状态——逐个参数比,或者逐个神经元比。这样量出来的距离必然很大,而且会大得很稳定。

为什么这样做会自动出某个结论。 因为神经网络有一组已知的对称性:同一层内的神经元可以任意置换,某些结构下整层可以乘一个正数再在下一层除回来,某些表示可以整体旋转。经过这些变换的两个网络,计算的是同一个函数,只是内部编号不同。编号不同不是实质差别。

如果不消去这些对称性,条款一会以一种极其廉价的方式通过:任意两个独立训练的网络,编号必然不同,距离必然很大,而且这个距离不会随规模衰减——因为它压根不是由路径造成的,是由编号的任意性造成的。

这是本书最不愿意赢的赢法。它会让整条论证变成一个度量伪影,而且是一个一眼就能被对手识破的伪影。第八编第七十一章会说明,先在论在这一点上的工作做得相当彻底,“消去置换之后两个解其实在同一个盆地里”正是他们的强读数之一。

本书的堵法。 d 必须在消去已知对称性之后计算。具体做法有两类:一类是显式对齐,先求一个最优置换把两个网络的内部单元配对,再算距离;另一类是采用对这些对称性本身就不变的相似度度量,从构造上避开对齐这一步。

首跑采用的是第二类。它使用的表征相似度度量对神经元置换、正交变换与各向同性缩放三者都不变,因此上一章那四个表征通道的数字——0.352、0.445、0.441、0.411——不是标号差异。这一点必须写在正文里,因为它是那组读数能不能被采信的前提。这里也顺带记一条工程教训:既然度量本身已经具有这些不变性,就不应当再加一层显式对齐;多加的那一层不会让结果更干净,只会引入新的自由参数。

堵法的代价。 代价是”已知对称性”这个清单本身是开放的。今天知道的对称性被消去了,明天有人发现一类新的对称性,本书的读数就要重算,而且很可能变小。本书接受这个风险,并把它明确写成一条:若有人指出一类此前未被消去的对称性,且消去之后条款一的读数落入噪声水平,条款一判负。 这是本书为自己写下的一条额外败绩条件,不在第五十八章那四条之内。

三、必须包含分布外行为

前两条防的是赢得太脏,这一条防的是输得冤枉。

做坏的样子。 只在训练分布上测量结果差异。这同样顺手——训练分布上的数据现成,模型行为稳定,噪声小。

为什么这样做会自动出某个结论。 因为训练分布正是路径差异被压平的地方。关于欠规定性的那批文献最重要的发现就是这个形状:同一套训练规格、仅随机种子不同的模型,在训练分布上表现相同,而在分布外行为上系统地不同。差异不是不存在,是躲在判准看不见的地方。

如果 d 只在训练分布上测量,条款一会假判负:读数很小、衰减很快、结论干净利落地倒向先在论,而这个结论不是关于世界的,是关于测量位置的。

本书的堵法。 d 是一个组合量:消去对称性之后的内部表征距离,加上在预先指定的一组分布外探针上的行为距离。探针集合必须在看到任何读数之前冻结。

堵法的代价,以及本书最脆弱的一处。 探针集是本书全部自由参数中最脆弱的一个,本章现在就正面承认,不留到第八十章去。

理由在首跑里有直接的读数。首跑把探针分了组,分布内一组、分布外若干组,分组读数如下:分布内一组在四个规模点上是 0.184、0.174、0.141、0.105;两组分布外探针中,归纳类在四个规模点上是 0.459、0.344、0.316、0.146,中文类是 0.496、0.312、0.193、0.166。

这张表说了两件事,两件都要写,而且要同等分量地写。

第一件对本书有利:种子差异在分布外始终大于分布内。在最小规模上,中文类探针的读数是分布内的约 2.7 倍。这与欠规定性文献的核心发现一致,也直接证明了第三条硬规定的必要性——若只测分布内,这一列差异根本不会出现。

第二件对本书不利:这个差距随规模收窄。到最大规模上,分布外与分布内的比值已经明显下降。这是先在论方向的读数,本书不予淡化。

两件都成立,而且它们共同指向同一个结论:条款一的读数对分布内与分布外探针的配比高度敏感。 换一个配比,数字会变,趋势的陡缓会变,某些情形下结论本身会变。

还有一处必须写进正文而不是脚注的事实:首跑所用的中文类探针由本实验自行构造,不是第三方公开基准。自造探针的风险是显然的——构造者知道自己想看到什么。首跑在构造时把探针冻结并公开了哈希,这能防住事后修改,但防不住事前的无意识偏好。下一跑必须改用第三方基准,这一条已列入第七编第六十六章的清单。

四、第四条:两通道必须分别报告,不得合成

前三条是预注册时就写下的。第四条是首跑之后补上的,它的来处是一次真实的险情。

做坏的样子。 结果距离由两部分构成——消去对称性之后的表征距离,加上分布外探针上的行为距离。最自然的下一步是把它们合成一个数:各取一半权重,加起来,得到一个单一的结果距离,然后用它做全部判断。首跑的预注册就是这样定的,权重冻结为各一半。

为什么这样做会自动出某个结论。 因为合成的权重没有任何理由。一半对一半不是从原理推出来的,它是一个默认值。而这个默认值会在两个通道给出不同方向时,悄悄地替作者做出裁决——它把”哪个通道更能代表结果”这个本案最核心的问题,交给了一个随手取的数字。

更麻烦的是这种裁决完全不可见。合成之后只剩一个数,读者看到的是一条曲线,而那条曲线是两条方向相反的曲线按某个比例混出来的。改一下比例,结论可以反转,而文本里没有任何地方提示这件事。

首跑正好落在这种情形上:表征通道不衰减,行为通道单调下降。若按冻结的权重合成,会得到一条有方向的曲线,而那个方向是权重给的,不是数据给的。

本书的堵法。 两个通道必须分别报告、分别对照各自的判负条件、分别出结论。两者不一致时,结论是”未能分辨”,不是加权折衷。合成距离即使在预注册中被定义过,也不进入判决。

堵法的代价。 代价有两条,都要写明。

其一,判据变复杂了。一条条款现在有两个读数口,因此有四种可能的组合状态,而不是两种。这使判决不那么干净。

其二,它提高了”未能分辨”出现的概率——两个通道同时同向的概率,总是低于一个合成量落在某一侧的概率。也就是说,这条规定让本书更不容易赢,也更不容易输。 本书接受这个代价,理由在第六十四章。

还要写明一处不足。 这条规定回答了”不许合成”,但没有回答”哪个通道更能代表结果”。那个问题本书答不了,第六十三章末尾把它原样提出来,第九编第七十七章处理它的哲学形态。一条硬规定能做的只是不让这个问题被一个默认权重悄悄绕过去。

由此得到本章的结语,它同时也是条款一的一处限制:

在噪声基线与探针配比这两处未定之前,条款一的任何单次读数都不足以判案。

首跑正是一次这样的单次读数。它的价值不在于它判了什么——它什么也没判——而在于它把这两处未定暴露了出来。第七编写的就是这件事。


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