我保住了执照。医务主管看着我的配额报表,说恭喜,然后多看了我一眼,说你好像不一样了。我说是的,我消化了。
我继续做审计。说来奇怪,我变成了一个更好的审计师。从前我面对客户被压扁的往事,心里总有一层居高临下的怜悯——你们失去的,我都留着呢。现在没有了。现在我和他们坐在同一边。我们都是付过率的人。
伪影是十月出现的。
不是在工作中。是在一个停电的晚上——老城区电网改造,全城最后一批旧线路退役前的最后一次故障。楼道里一声脆响,灯灭了,整栋楼陷进那种现在已经很稀有的、彻底的黑。
黑暗里,那段楼梯间的记忆自己浮了上来。
这不奇怪,压缩后的记忆本来就不再受我调度,它们想来就来,像天气。奇怪的是这一次它完整地播放了——黑暗,呼吸,十四分钟,灯亮,她站在拐角,工具箱,深的眼睛。她看了我一眼,像核对一个测量结果,然后说:
"比我想象的要近。"
我僵在黑暗里。
她说完了。十一年加十年,二十一年来,这个句子第一次有了下半截。同一瞬间,记忆的边缘泛起一层极淡的微光——周屿说过的水印,finish() 模块的标记,在被回忆的一刻准时触发。
它在告诉我:这半句是伪影。是猜的。她当年没有说完这句话,模型替她说完了。用她的全部数据,她的语言习惯,她写过的每一行注释、每一页边批,对着那个永远空缺的句尾,算出了一个最大似然的补全。
我是审计师。我知道接下来该做什么:标记,披露,由客户决定保留还是修正。客户是我自己。
我在黑暗里站着,把那半句话翻来覆去地看。比我想象的要近。是真的吗?不是。她没说过。是假的吗?也不是——这是她的模型、她的一生对这个句子的最优估计,失真已知,水印诚实。它不冒充真实,它只是把"她可能想说的话"和"她说过的话"分开摆放,然后把选择权交给我。
碰到了,别急着修正。先看看它猜得——
我忽然笑了。原来她那段录音里最后一个没说完的句子,要在这里完成。先看看它猜得准不准。而要判断猜得准不准,我就必须动用她渗在我全身的那部分——不是档案,是消化掉的她。我的判断本身,就是她的遗产在工作。
这就是 finish() 的真正用途。不是防伪。是出题。每一个伪影都是一道题:你还认得我吗?
灯亮了。我看了一眼表。
十三分钟。正中位数。
我在心里写下我此生最郑重的一份审计单:发现伪影一处。客户知情。经核对,与逝者风格高度吻合——她就是会说这种话的人,说一半留一半,等了二十一年才肯给下文。
选择保留。
语义保真:通过。
去年阮老太太走了,一百四十二岁,是她自己决定关闭续命程序的。按她的遗嘱,那条红围巾随她火化,"给他送去,路上冷"。
我有时候会想起香农,一九四八年,他写下率失真定理的时候不会想到有人在页边批注"他在讲爱情"。但林晚是对的。给定失真,存在最短的描述。我们终其一生做的,不过是为爱寻找一个自己能负担得起的压缩比。
有人选无损,用整个现在供养过去,直到两者同归于尽。有人选删除,干净,省事,搬空的房子再也不闹鬼,也再也不暖。
而她给我留的是第三种:有损,但损失函数是亲手写的。丢掉一切可以丢的,剩下的不是数据,是体质。我不再记得我们的十一年,我只是由那十一年构成。
至于我们这段事的最短描述,她生前说还没收敛。现在收敛了。我替她算出来了,就是她摔门那夜没说完的话,加上模型替她补的、打了水印的、我选择保留的下半句:
我负责忘,你负责记,咱们俩加起来——
刚好是一个完整的人。
失真已知。语义保真:通过。
(完)