校准与信任调优:Rexfin 如何决定什么会阻止导出
并非每一次检查失败都应该阻止一份董事会材料导出。这是决定哪些检查会阻止导出的、经过测量、基于证据的流程,以及为什么这条界线不是凭空猜测的。
作者 The Rexfin team
一个什么都不阻止的核验器只是摆设。一个什么都阻止的核验器,不到两周就会被停用。真正有趣的设计问题,并不在于要不要检查资产是否等于负债加所有者权益,或者现金流是否与现金变动额对得上,而在于要精确决定这项检查该有多严格,才能被允许阻止某人导出一份董事会材料。
如果设得太松,一份真正有问题的资产负债表就会原封不动地滑过去。如果设得太严,一份恰好四舍五入到千位的正确报表就会被标记为错误,你的财务团队到中午就会不再信任这个工具了。这两种失败模式毁掉的是同一件事:当 Rexfin 说一个数字没问题时,人们确信它真的没问题。
这条界线不是开发者凭感觉决定的
我们不是凭感觉决定这条界线的位置,而是靠测量。这个流程从一组真实的、经过审计的申报文件开始,其中每一行报表数据都由一个人独立手工录入,而不是从提取流水线本身推导出来的,这样它就无法给自己的作业打分。之后,每份申报文件会与刻意破坏过的变体配对:一个被放大或缩小一千倍的数字、一个被调换位置的数位、一张不再平衡的资产负债表、一张不再对得上的现金流量表。其中有一个变体是对照组,它本不应该触发任何警报,一份正确四舍五入的报表,其各组成部分相加后与总数之间只存在一个舍入单位的微小差异。如果某项容差设置连这个对照组都通不过,那它就太严了,毫无疑问。
针对这组数据,我们会遍历每项检查的候选容差设置,测量两件事:它能否捕捉到人为植入的缺陷,以及它是否会错误地标记出某个本来正确的数字。只有让零个正确报表被误判为失败、同时又能捕捉到绝大多数植入错误的设置,才有资格成为候选。
为什么这个测试不能自己给自己打分
这里有一点很容易被忽略,但忽略了会很危险:手头只有少量真实申报文件用于校准时,人们很容易挑一个恰好在这些具体文件上表现最好的容差,然后就此收工。那样得出的数字看起来漂亮,却毫无意义,那只是调优误差,不是对该检查在从未见过的申报文件上表现的真实衡量。因此,每一个候选设置都要经过留一法测试:完全留出一份申报文件,用其余文件调优,然后只针对那份从未参与调优的文件打分。这才是真正决定一切的数字。
从建议性提示升级为硬性阻断
一项检查只有在从未参与训练的申报文件上达到那个门槛后,才会从“建议性”(只发出警告,但从不阻止导出)升级为“硬性阻断”:零误判,并且能捕捉到绝大多数植入的缺陷。没能达标的检查会保持建议性状态。这也不是一次性的永久降级,如果之后一批新的申报文件让某项已经升级过的检查再次跌破门槛,它就会被重新降级。升级绝不允许脱离支撑它的证据而独立存在。
所有这些工作的结果,会被冻结进核验器启动时读取的一个版本化文件中。每一个容差、每一个升级决定,以及背后的证据,都存放在这一个地方,绝不会作为一个硬编码的数字埋在应用逻辑里。当一份已导出的董事会材料事后受到质疑时,当时批准这些数字的确切校准版本可以被调出并检查。校准一旦改变,就会以可审阅的差异形式出现,而不是一次悄无声息的编辑。
这一切都发生在申报文件已经通过了一道粗得多的门槛之后:每一行提取出的数据都必须在容差范围内与手工录入的原始数据完全匹配,之后才会被允许被下游的任何环节(包括回答、审计或核验)所信任。
诚实的局限
校准并不能让 Rexfin 变得万无一失。它做到的是,把“我们有足够信心去阻止你”和“我们不确定,所以只是标记一下”这两者之间的界线,变成一个经过测量的决定,而不是一个猜测,并且让这个决定变得可见、可复现,而不是悄悄埋进代码里。这也意味着,有些检查,比如某些现金流对账,由于现实世界的证据较少,会长期停留在“建议性”阶段,这是正确、诚实的结果,而不是一种取巧。
如果你想了解某项检查一旦触发之后会发生什么,请参阅核验是如何运作的。至于这种基于证据的思维方式如何延伸到 AI 本身给出的回答,请参阅Rexfin 如何衡量回答质量。两者都遵循Rexfin 平台内部这个主题下的同一个原则:任何东西都不能凭空宣称自己值得信任,必须靠证据去赢得。