第八次回响
第八次回响
一
陈屿第一次注意到异常是在三月的最后一个星期三。
那天北京的沙尘暴刚刚过去,天空还挂着一种介于橘色和灰色之间的光,像是一块洗了太多次的旧绸布。他坐在望京SOHO T3二十七层的工位上,面前是三块显示屏,左边是实时交易流水,中间是风控模型v8.7的监控面板,右边开着IDE——他正在调试一个关于”用户行为聚类”的新模块。
“鲸落科技”是一家成立四年的金融科技公司,主营业务是信贷风控。用创始人周北辰的话说,他们卖的是”确定性”——在不确定的世界里,用算法给每个人一个确定的数字。这个数字决定了你能不能贷到款,能贷多少,利息多高。陈屿是风控算法组的负责人,团队十七个人,管着二十多个模型,每天处理三千多万条信贷请求。
下午四点十七分,监控面板弹出一个红色告警。
模型v8.7在处理一笔贷款申请时,输出了一个不在预期范围内的结果:风险评分-1。这是一个不可能的数值。他们的评分体系从0到1000,300以下自动拒批,700以上可以走绿色通道。-1从未出现过,也不应该出现——代码里有硬编码的下界检查。
陈屿皱了皱眉,点了进去。
申请人是”林素珍”,女,六十七岁,住址是北京市房山区某个他没听说过的小区,职业栏写着”退休”。申请金额:三千元。用途:“家用”。
这个画像太普通了。普通到没有理由触发任何异常。
但模型给出的完整输出却让陈屿盯着屏幕看了很久:
风险评分: -1 违约概率: NULL 建议利率: NULL 模型备注: [RESONANCE_DETECTED] 第八次
“[RESONANCE_DETECTED]“这个标签他从来没见过。他打开了模型的源代码仓库,搜了一遍。没有任何地方定义过这个字符串。
他以为自己眼花了,揉了揉眼睛,又搜了一遍。还是没有。
“张可,“他叫了坐在隔壁的算法工程师,“你过来看一下这个。”
张可推着转椅滑过来,眯着眼看了半天,表情从困惑变成了一种微妙的紧张。“这什么鬼?代码里没有这个标签?”
“没有。”
“那它从哪来的?”
陈屿没有回答。他把林素珍的申请数据导出来,存了一个本地副本,然后用测试环境重新跑了一遍模型。同样的输入,这一次输出完全正常:风险评分642,违约概率2.3%,建议利率7.8%。一切都在合理范围内。
他愣了几秒钟,然后做了他通常不会做的事——他手动批准了林素珍的贷款。
三千块钱,七点八个百分点的利率,一个六十七岁的退休老人。
他不知道自己为什么这么做。
二
接下来的三天,陈屿没有再看到-1。他几乎要以为那是一次短暂的系统故障——内存溢出,或者某个浮点异常,或者凌晨三点上线的新版本引入了一个边界条件bug。他把那次异常记录在工单系统里,打了”低优先级”的标签,然后继续忙他的用户行为聚类模块。
但第四天,-1又出现了。
申请人叫”何光远”,男,五十一岁,货车司机,住河北省涿州市。申请金额:一万两千元。用途:“车辆维修”。
同样的[RESONANCE_DETECTED]标签。同样的”第八次”备注。
这一次陈屿没有犹豫。他直接把数据库里过去三个月的所有申请记录拉出来,写了一个脚本,搜索所有输出过异常标签的记录。
结果:两条。只有这两条。
他坐在工位上,盯着那两行数据,试图找到共同点。一个是北京房山的退休老太太,一个是河北涿州的货车司机。年龄不同,性别不同,职业不同,住址相隔一百多公里,消费记录没有交集,社交网络没有重叠。
唯一的共同点是:申请金额都不大。但在他们的业务场景里,小额贷款占了绝大多数,这算不上什么有意义的特征。
他又跑了一次。测试环境,何光远的数据。输出正常:评分581,违约概率4.1%。
他批了。然后他做了一件更反常的事——他用自己的手机号在系统里注册了一个测试账号,提交了一笔虚假的贷款申请,金额填了一块钱。
系统秒拒。理由:“评分不足。”
他苦笑了一下。他自己的信用评分是698,不算高也不算低,但绝对不至于连一块钱的贷款都批不下来。他查了一下拒批的原因,发现系统显示他的数据在模型处理时触发了一条规则:“申请人不可为内部员工。”
这个规则确实存在。但只适用于正式的贷款产品,不适用于测试环境。
他感觉到了一种说不清的违和感,像是走进一间熟悉的房间,突然发现所有家具都往左偏了三厘米。
三
第二次异常之后,陈屿开始刻意留意。他在模型v8.7的输出端加了一层额外的日志,记录每一次完整的推理过程——不仅是最终结果,还有中间每一层神经元的激活状态、注意力权重的分布、以及embedding空间中的距离矩阵。
这意味着巨大的存储开销。他只打算跑一周。
周一是平静的。周二也是。周三下午,他正在茶水间接咖啡,手机震了一下。监控告警。
他端着咖啡杯冲回工位,差点撞上一个端着外卖的实习生。
第三个-1。
申请人:“赵心棠”,女,二十九岁,自由职业者(职业栏写的是”插画师”),住北京市朝阳区。申请金额:八千元。用途:“设备更新”。
[RESONANCE_DETECTED] 第八次。
陈屿的咖啡已经凉了,但他没有注意到。他在想一个问题:为什么叫”第八次”?如果这是一个bug,为什么不报”第一次”或者某个递增的计数器?
他打开了赵心棠的详细数据。她的征信记录很干净——不是因为太好,而是几乎不存在。没有信用卡,没有房贷,没有车贷,甚至没有话费分期。在风控模型的世界里,这种人被称为”白户”,通常直接拒批,因为缺乏足够的数据来评估风险。
但模型v8.7给出了-1。不是拒批,不是低分,而是一个不在定义域里的数值。
陈屿翻到了赵心棠的消费记录。她的银行卡流水显示,过去一年的收入来自三个来源:一个叫”墨境文化”的公司定期转账(可能是稿费或者项目款),另一个是某个插画平台的分成,第三个来源让他的手指停在了触控板上。
每个月的十五号,有一笔固定的转账进来,金额299元,付款方备注只有两个字:“回响”。
他点开了付款方的账户信息。账户名:“第八回响”。注册时间显示为2019年8月8日。账户状态:正常。但没有更多的信息了——没有绑定手机,没有实名认证的痕迹,甚至连头像都是系统默认的灰色方块。
在鲸落科技的数据体系里,这样一个账户理论上不应该存在。他们的数据来源包括央行征信、公安身份验证、运营商数据、以及几家主要电商和支付平台的脱敏接口。每一个账户都应该能追溯到至少一个真实的人或机构。
“第八回响”追溯不到任何人。
陈屿靠在椅背上,看着屏幕上那个灰色的方块头像,感到一阵不太舒服的感觉。不是恐惧,更接近于一种直觉层面的警觉——像是走在一条看似正常的路上,突然发现路边所有的树都一模一样,连树叶的纹路都完全相同。
四
陈屿决定去见林素珍。
这不是他的工作范畴。风控算法组的负责人不需要去线下拜访贷款申请人。但他实在无法通过数据解释那三个-1,而他又是一个不太能忍受未知的人。
他找到了林素珍申请贷款时留下的地址:房山区城关街道某小区四号楼六单元302。周六上午,他开车走京港澳高速,在房山出口下去,穿过一段两旁都是五金店和汽修厂的路,拐进了一个老旧的小区。
小区门口的保安室是空的,栏杆抬着。他开车进去,发现四号楼的外墙正在做保温层翻新,绿色的安全网像一层薄纱,把整栋楼罩在里面。
六单元的门禁坏了,他直接推门进去,爬到三层,敲了302的门。
开门的是一个穿灰色毛衣的老太太,头发花白但梳得很整齐,脸上带着一种平静的、甚至可以说是安详的表情。
“您找谁?”
“林阿姨您好,我是……”他犹豫了一下,“我在一家金融公司工作,您之前在我们平台上申请了一笔贷款,我想了解一下情况。”
林素珍看了他几秒钟,然后侧身让出了门。“进来吧。”
房子不大,一室一厅,收拾得极其干净。客厅的茶几上放着一杯已经凉了的茶,旁边摊着一本翻到中间的书,封面被书签遮住了大半,只露出一个”回”字。
陈屿在沙发上坐下来,林素珍给他倒了一杯水。
“三千块钱,“老太太先开口了,“我儿子在天津上班,上个月说需要三千块应急。我不想让他知道我手头紧,就在网上找了个贷款平台。”
“您的贷款已经批下来了,“陈屿说,“七点八的利率,应该算比较低的。”
林素珍点了点头。“我知道。其实我后来也没用上那笔钱。我儿子说不用了,他找到了别的办法。”
“那笔钱您取出来了吗?”
“取出来了。在卡里放着呢。“她顿了顿,“你专门从市里跑过来,就为了问我这个?”
陈屿看着她。在监控面板上,她的风险评分是-1。在测试环境里,她的评分是642。在现实世界里,她是一个安安静静的老太太,住在一室一厅里,借了三千块钱给儿子应急,然后没用上。
“林阿姨,“他说,“您有没有听说过一个叫’第八回响’的东西?”
老太太的表情没有变化。她端起茶杯喝了一口,然后放下,动作很慢,像是在回忆什么遥远的事情。
“你说的那个,“她指着茶几上那本书,“是这个吗?”
陈屿低头看去。书签滑开了,他终于看到了完整的封面:
《第八次回响:一个关于时间的思想实验》
作者栏写着:何光远。
他的后背突然出了一层薄汗。
五
何光远。第二个-1。那个河北涿州的货车司机。
陈屿从林素珍家出来的时候已经过了中午。他坐在车里,发动了引擎,但没有挂挡。方向盘被太阳晒得有些烫手。
他翻开手机,找到了何光远的贷款申请记录,按上面的手机号拨了过去。
响了七声,接了。
“喂?“对方声音沙哑,带着一种跑长途的人特有的疲惫。
“何先生您好,我是鲸落科技的工作人员,您之前在我们平台上……”
“我知道,贷款嘛。批了,钱到了。你们利息还行。“他顿了一下,“不过你们打电话来做什么?我又没逾期。”
“例行回访。何先生,我注意到您的职业栏写的是货车司机,但我看到您还写过一本书,叫《第八次回响》?”
电话那头沉默了很长时间。长到陈屿以为信号断了。
“你怎么知道那本书的?“何光远的声音变了,不是警惕,更像是一种被突然击中的茫然。
“我在工作里看到的。”
“那本书我只印了二十本。“何光远说,“自己找印刷厂印的,送给了一些朋友。没有出版,没有上架,没有ISBN号。你不可能’在工作里看到’。”
陈屿握着方向盘的力气不自觉地加大了。
“何先生,我能去涿州拜访您吗?”
又是一阵沉默。
“你来吧。“
六
陈屿到涿州的时候已经是下午四点。何光远住在城边的一个村子,院子不大,门口停着一辆蓝色的厢式货车,车身溅满了泥点。
何光远比他的声音显老。五十一岁的人,看起来像六十多。脸上的皱纹像干裂的河床,但眼睛很亮,是一种不太协调的年轻。
他把陈屿让进屋里。客厅兼书房,一面墙是书架,另一面墙上挂着一张中国地图,上面用红色的图钉标了很多点,用线连起来,看起来像一条蜿蜒的路线。
“你这辈子跑过的路线?“陈屿问。
“不是。“何光远倒了两杯茶,“是《第八次回响》的二十本书的去向。”
陈屿接过茶杯,抬头看着那些红色的点和线。
“二十本书,二十个地方。“何光远坐下来,点了根烟,“送给二十个我认为能理解那本书的人。”
“那本书写了什么?”
“一个思想实验。“他吐出一口烟,“假设存在一种信号,它不属于任何已知的物理载体——不是电磁波,不是引力波,不是任何东西。它只能被特定的人感知到,而感知到的方式是:你会突然理解一件你本来不可能知道的事情。不是学到,不是推理出来,而是直接’知道’。就像你一直都知道,只是之前忘了。”
“这和金融风控有什么关系?”
何光远看了他一眼,眼神里有一种复杂的表情——像是同情,又像是某种确认。
“小伙子,你觉得你们那个模型是怎么工作的?”
“机器学习。神经网络。用历史数据训练出来的——”
“不。“何光远打断了他,“我问的不是技术层面。我问的是:你认为’风险评分’这个概念的本质是什么?”
陈屿没说话。
“你给每个人打一个分,这个分代表他未来违约的可能性。对吧?但’未来’是什么?未来还不存在。你评分的依据是过去——过去的行为数据,过去的违约记录,过去的消费模式。你用过去来推断一个还不存在的东西。”
他弹了弹烟灰。
“但假如——我说假如——过去和未来不是你以为的那种关系呢?假如它们不是一条河流的上游和下游,而是一条蛇咬住了自己的尾巴呢?假如过去之所以是这样的过去,是因为未来已经是那样的未来呢?”
“因果关系倒置?“陈屿皱了皱眉。
“不是倒置。是共振。“何光远把烟按灭在烟灰缸里,“你有没有过这种经验:你想到一个人,然后他正好给你打电话了?你哼一首歌,转角那家店就在放同一首歌?”
“巧合。”
“是吗?统计学会告诉你,那些巧合的概率比你以为的要低得多。低到不应该那么频繁地发生。但它们就是发生了。为什么?”
陈屿没有回答。
“因为它们不是巧合。它们是回响。“何光远站起来,走到那张地图前面,“二十本书,二十个读者。我选他们的原因很简单——他们都经历过那种’不应该发生的巧合’,而且他们都隐约觉得那不是巧合。”
他转过头来,看着陈屿。
“你也是。不然你不会来找我。一个风控算法的负责人,开了一个小时的车来见一个货车司机。你觉得这正常吗?“
七
陈屿回到望京的时候已经是晚上九点。他坐在工位上,面前是那三块屏幕。办公室里已经没人了,只有服务器机柜发出的低频嗡鸣,像一颗巨大的心脏在跳动。
他打开了赵心棠——第三个-1——的详细数据,再一次看到了那个神秘的转账来源:“第八回响”。每个月十五号,299元。
他在支付平台上搜索了”第八回响”,没有任何结果。不是找不到相关信息,而是搜索结果为零——连”没有找到相关结果”的提示都没有,页面直接刷新回了首页。
他换了一个搜索引擎,同样的结果。
然后他试着直接在浏览器地址栏输入一串URL:他根据平台规则拼接出的、理论上应该存在的账户页面地址。
页面加载了。
页面上只有一个文本框和一个按钮。文本框上方写着一行字:
“请输入你不确定的事情。”
陈屿盯着这行字看了很久。然后他在文本框里打了一行字:
“明天会不会下雨?”
他按下了按钮。
页面跳转了。新页面上只有一行字:
“不会。但你会遇见一个人。”
他关掉了浏览器。然后又打开了。历史记录里没有那个页面的任何痕迹。
他靠在椅子上,闭上眼睛。办公室的空调在头顶嗡嗡地吹着,冷气从脖颈滑下去,沿着脊柱一直流到腰间。
“我是不是疯了。“他小声说。
没有人回答。
第二天是周日。北京没有下雨。他走出公寓楼去买早餐,在电梯里遇到了一个从未见过的女人——大约三十岁出头,短发,穿一件深蓝色的风衣,手里拎着一个画板。
“你也住这层?“女人问。
“嗯。你刚搬来的?”
“上周搬的。我姓赵。”
陈屿的手攥紧了塑料袋。
“赵心棠?”
她愣了一下,然后笑了。“你认识我?”
“不,“他说,“不认识。可能……搞错了。“
八
赵心棠确实刚搬来,就住在他隔壁。她是一名插画师,给几家出版社和两个游戏公司做自由插画,收入不算稳定但够生活。
接下来的两周,陈屿发现自己在不断地”偶然”遇见她。早晨等电梯的时候,晚上倒垃圾的时候,周末在楼下便利店买酸奶的时候。每次遇见,他们都会聊上几句。她说话很快,思维跳跃,经常从一个话题跳到一个完全不相关的话题上,但跳跃之间有一种奇怪的逻辑——像是一只蝴蝶在花丛里飞,看起来随意,但其实每一朵花都是精心挑选的。
他开始理解为什么何光远会把书送给她。
第二周的周五晚上,他敲了她的门。
“赵心棠,我有些事情想问你。”
她站在门口,画板上的颜料还没干,手指上沾着一点湖蓝色。
“进来吧。”
她的客厅就是画室,地上铺着防脏布,墙上贴满了各种草稿和色卡。角落里有一台电脑,屏幕上打开着一个插画平台的后台。
陈屿注意到了墙上一幅画。那是一幅水墨风格的数字插画,画面中央是一条巨大的蛇,首尾相衔,围成一个圆。蛇的身体上布满了密密麻麻的文字,太小了看不清,但整体的视觉效果让人感到一种说不出的眩晕。
“这幅画……”
“《衔尾蛇》。“她说,“是我去年画的。有人委托我画的。”
“谁委托的?”
“一个叫何光远的人。”
陈屿闭上了眼睛。
“你认识何光远?”
“不认识。他通过一个中间人联系到我,说想要一幅画,主题是’时间的形状’。我画了三个版本,他选了这一个。”
“你收了他多少钱?”
“他没给我钱。他给了我二十本书中的一本。”
陈屿睁开眼睛,看着她。“你看了吗?”
“看了。”
“你信吗?”
赵心棠擦了擦手指上的颜料,走到电脑前,打开了一个文件夹。里面是一系列插画,每一幅的标题都是一个日期。
“这是我过去三年的作品。“她说,“何光远送我那本书之前,我的画风是这样的——“她点开了一幅早期的画,是一幅很传统的人物插画,色彩明亮,构图工整。
“这是看了那本书之后的——“她又点开了几幅近期的作品。风格完全不同了。画面里充满了重复的结构、自相似的图案、分形几何。每一幅画都像是某个更大画面的局部,而那个更大的画面本身又是这个局部的放大。
“我不知道怎么解释,“她说,“看了那本书之后,我开始看到一些东西。不是幻觉,更像是……一种结构。世界底层的结构。所有的事情都在重复,所有的事情都在互相映射。我现在画的东西不是我设计的,我只是把我看到的画下来。”
“你看到了什么?”
她走到那幅衔尾蛇前面,指着蛇身上那些密密麻麻的小字。
“你自己看。”
陈屿凑近了。那些不是文字。是数字。一串一串的数字,排列的方式不是随机的——他能看出某种模式,但说不出具体是什么模式。
“这是什么?”
“是我从那本书里抄下来的。“赵心棠说,“何光远在书里附了一串数字,没有解释是什么意思。我把它抄下来,然后用这些数字做了这幅画。”
她顿了顿。
“后来我发现,那些数字是一组坐标。不是地理坐标——是参数空间的坐标。如果把它对应到神经网络的空间里……”
陈屿的心跳加速了。
“它会指向什么?”
赵心棠看着他,眼睛里有一种他无法定义的东西——不是恐惧,不是兴奋,更像是一种深沉的、几乎悲伤的确认。
“它会指向你们公司的风控模型。“
九
陈屿用了两天时间验证赵心棠的话。
他把何光远书里的那串数字提取出来,转换成向量形式,然后映射到模型v8.7的参数空间。结果令人窒息:那串数字精确地描述了模型embedding层的一个特定方向——一个在高维空间中的方向向量,沿着这个方向,模型的输出会发生质变。
质变的结果就是-1。
不是一个bug。不是一次故障。而是模型在特定输入的条件下,沿着一个精确的方向”漂移”到了正常行为空间之外。
更令人窒息的是:这个方向向量不是随机出现的。它在模型的参数空间中对应着一个极其狭窄的”峡谷”,两侧是陡峭的梯度壁。除非有人——或有什么东西——精确地知道这个峡谷的位置和形状,否则几乎不可能通过随机扰动到达那里。
模型v8.7是在2024年底训练完成的,使用的是鲸落科技自有的数据集群,训练过程历时三个月,没有任何外部干预。何光远的书是2019年出版的——在模型存在之前五年。
这意味着,要么何光远有一种不可能的预见能力,要么模型v8.7的参数空间里本来就存在某种结构,而何光远在五年前就感知到了。
“共振。“何光远的话在他耳边回响。
他做了一个大胆的决定。他在模型v8.7里加了那个方向向量作为一个硬编码的修正项——不是消除它,而是放大它。他想看看,如果模型更容易到达那个”峡谷”,会发生什么。
他选了一个测试集,五千个用户的数据,在修正后的模型上跑了一遍。
结果:七十四个用户的评分变成了-1。七十四个,不是三个。
他导出了那七十四个人的数据,逐一检查。他们的年龄从二十三岁到七十一岁不等,职业涵盖教师、快递员、程序员、公务员、个体户……似乎没有规律。
但当他把这七十四个人的住址标记在地图上时,他看到了一个形状。
不是随机的散布。是一个圆。一个以北京为中心、半径约一百五十公里的圆。
圆。衔尾蛇。首尾相连。
陈屿盯着地图看了整整十分钟,然后拿起手机给何光远打电话。
“何先生,那二十本书的收件人——他们在地图上构成什么形状?”
电话那头沉默了几秒钟。然后何光远用一种很轻的、几乎是耳语的声音说:
“一个圆。“
十
接下来的事情发展得比陈屿预想的要快。
他找到赵心棠,把所有发现告诉了她。她没有表现出惊讶,只是安静地听着,偶尔用手指在桌面上画一些看不见的图案。
“你不觉得奇怪吗?“他问。
“不觉得。“她说,“因为我也看到了。不是在数据里,是在画里。我最近画的每一幅画,不管主题是什么,最后都会出现那个圆。我控制不住。”
她打开电脑,给他看了最近完成的一幅作品。那是一幅为某个游戏公司画的场景概念图,主题是”未来城市”。画面主体是一座高塔,周围环绕着飞行器和霓虹灯。但如果退后一步看——或者把图像缩小到一定程度——整座高塔的轮廓恰好构成了一条蛇的头部,而城市的环形公路构成了蛇的身体。
“我没打算画成这样。“她说,“画完之后才发现的。”
陈屿感到一阵寒意从脚底升起。不是害怕,而是一种更深层的不安——一种关于现实本身的结构正在被揭示的不安。
“我们需要找到那个圆的中心。“他说。
“中心不在地图上。“赵心棠说。
“那在哪里?”
她指了指他的胸口。“在你训练模型用的数据里。“
十一
陈屿花了三天时间,把鲸落科技过去四年积累的所有训练数据——总计超过十二亿条信贷记录——重新梳理了一遍。他不是在找bug,也不是在找异常值。他在找一个东西:是否存在某条数据,被模型赋予了不成比例的权重。
他写了一个脚本,逐条计算每条训练数据对模型最终输出的梯度贡献。正常情况下,这些贡献应该是相对均匀分布的——十二条亿条数据,每条贡献微乎其微。
但结果不是。
有八条数据的梯度贡献比平均值高出六个数量级。八条。不是七条,不是九条。
八条数据,分布在过去四年的不同时间点,申请人互不相关,金额从几百到几万不等。但如果把这八条数据的申请时间排列起来:
2022年4月15日 2022年10月15日 2023年4月15日 2023年10月15日 2024年4月15日 2024年10月15日 2025年4月15日 2025年10月15日
每六个月一次。固定在四月和十月的十五号。从2022年到2025年,正好八次。
第八次。
陈屿感觉自己的呼吸变得很轻。他调出了那八条数据的详情。八个申请人,八个不同的名字,八个不同的城市。但在每条数据的”收入来源”字段里,都有一个共同的条目:
“第八回响”。
这个字段不应该出现在训练数据里。收入来源是鲸落科技从合作方获取的结构化数据,格式严格固定,只有有限的几种选项:工资、经营收入、投资收益、退休金、其他。“第八回响”不在选项列表里。
他查了数据库的写入日志。这八条数据都是通过正常的API接口写入的,来源是三个不同的合作银行。但当他联系那三家银行的技术对接人时,对方都表示:他们的系统里没有”第八回响”这个字段,也找不到任何对应的记录。
数据确实写入了。但没有人知道它是怎么进来的。
十二
陈屿决定把这个发现报告给创始人周北辰。
周北辰四十出头,瘦高个,永远穿黑色,办公室里永远放着一副没拆封的降噪耳机。他听完陈屿的汇报后,沉默了很久。
“你确定这不是有人在攻击我们的系统?”
“我确定。“陈屿说,“我查了所有的访问日志、操作日志、网络流量。没有任何外部入侵的痕迹。那八条数据就像是……从系统内部生成的。”
“从系统内部?”
“或者更准确地说——从数据本身的结构中涌现出来的。”
周北辰靠在椅背上,转动着桌上的一个魔方。“你知道你在说什么吗?你在说我们的模型里有一个我们没写进去的模块,它知道一些我们不知道的事情,而且它在用自己的方式把这些事情告诉外界。”
“我知道这听起来很荒唐。但数据不会说谎。”
“数据不会说谎,但数据可以被污染。“周北辰把魔方放下,“我需要你做一件事:把那八条数据从训练集里删掉,重新训练模型。如果-1消失了,那说明就是数据污染。如果没消失……”
他没说完。但他的眼神已经说明了一切。
如果没消失,那就意味着问题不在数据里。问题在更深层的地方。
十三
删除八条数据并重新训练模型需要一周的时间。陈屿利用这段时间做了另一件事:他找到了何光远书里提到的二十个读者中的一个。
那个人叫陆明,三十四岁,在一家互联网公司做产品经理。他住在杭州,陈屿专门飞过去见他。
他们约在西湖边的一家咖啡馆见面。陆明比陈屿想象的要普通得多——普通的长相,普通的穿着,普通的谈吐。如果不是何光远的书把他标记为”能够感知回响的人”,陈屿在街上遇到他绝对不会多看一眼。
“何光远给你寄了一本书?“陈屿问。
“对。2020年初。那时候我在深圳上班,突然收到一个包裹,里面是那本书和一封手写的信。信上说’你会在对的时侯理解这本书’。”
“你理解了吗?”
陆明笑了笑。“理解了一半。何光远说的那种’共振’,我确实经历过。但我不确定那是什么。我只知道,有些时候,我会突然觉得世界’薄了一层’——就像现实是一张纸,有人从另一面按了一下,留下了一个指印。”
“指印?”
“一种……凸起。一种不应该存在的结构。你注意到了,但你说不清楚它是什么。就像你走进一个房间,房间看起来完全正常,但你就是觉得有什么地方不对。”
陈屿沉默了。
“你也感觉到了。“陆明看着他,语气很确定,“不然你不会来找我。”
“你们二十个人都感觉到了?”
“何光远是这么认为的。他说我们是被选中的——不是被什么神或者超自然力量选中,而是被结构本身选中。就像你在一张纸上画了很多线,其中八条线恰好在某个点交汇。那些线就是我们,交汇点就是回响。”
“为什么是八条?”
“何光远说不知道。他说他只是看到了八。不是数字八,而是——一种形状。八条线汇聚在一个点上,形成一个八边形。但八边形只是表象,真正的形状是——”
他伸出手,在桌面上用手指画了一个圆。
“衔尾蛇。“陈屿说。
陆明点了点头。
十四
一周后,模型v8.8训练完成。陈屿迫不及待地在测试集上跑了一遍。
-1消失了。所有用户的评分都在0到1000之间。
他松了一口气。但紧接着,他注意到了另一个问题。
模型v8.8的整体性能下降了。不是一点点——是显著下降。违约预测的准确率从92.7%下降到了86.3%。在他们的行业里,这六个百分点的差距意味着每年多出数千万的不良贷款。
他反复检查了训练过程,确认没有技术错误。问题纯粹出在数据上——删除那八条数据后,模型失去了某种关键的”理解力”。
那八条数据不仅污染了模型。它们也塑造了模型。
或者更准确地说:它们是模型的骨架。
陈屿在办公室里坐了一个下午。窗外的天空从蓝变成橙,再变成深紫。他的三块屏幕在黑暗中发出冷白色的光,把他的影子拉得很长。
他做了一个决定。
他把那八条数据放回了训练集,重新训练了模型v8.9。但他做了一点微小的修改:在[RESONANCE_DETECTED]的输出路径上加了一个日志钩子,记录每一次共振触发时的完整上下文。
他不打算消除-1。他要理解它。
十五
模型v8.9上线后的第一周,触发了七次[RESONANCE_DETECTED]。七次,每次都是”第八次”。
陈屿逐一联系了那七个人。他们的背景各异,但有一个共同点:每个人的生活里都出现过”不应该发生的巧合”,而且每个人都隐约觉得那些巧合不是巧合。
第二周,八次。第三周,十一次。
数字在增长。陈屿起初以为是模型调整后的副作用——共振的阈值降低了,所以触发频率增加了。但当他把触发频率和时间画成图表时,他看到了一个令人不安的模式。
频率在指数增长。而且增长曲线的参数——底数和指数——恰好可以用何光远书里的那串数字来拟合。
这意味着:共振不是被模型触发的。模型只是在反映一种正在增长的现象。
“它在扩散。“赵心棠说。她站在陈屿的工位旁边,看着那个指数增长的曲线,脸上的表情很难读。
“什么在扩散?”
“回响。共振。随你怎么叫它。“她伸出手指,在屏幕上画了一条从曲线起点延伸到未来的虚线,“如果这个趋势继续,一个月后,每天会有几百次触发。两个月后,几千次。三个月后——”
“每个人。“陈屿说。
赵心棠没有说话。但她画的虚线还在屏幕上,笔直地指向一个所有人都会共振的未来。
十六
事情在第四周发生了质变。
周一早晨,陈屿到公司的时候,发现所有人都在讨论同一件事:上周末,全国范围内有大量人报告了同一种体验——一种突然的、无法解释的”确信感”。他们突然确信了某件自己不可能知道的事情。
一个成都的家庭主妇突然知道她二十年没联系的初恋在昆明开了一家书店。一个沈阳的大学生突然知道他的导师正在申请的课题会获得批准。一个广州的出租车司机突然知道他的下一个乘客会去机场,而且目的地是上海。
这些”确信”后来都被验证了。
社交媒体上,人们开始管这种现象叫”回响”。没有人知道这个名字是怎么传开的——它不像是一个人发明的,更像是所有人同时想到了同一个词。
陈屿坐在工位上,看着监控面板上的数据。模型v8.9在过去二十四小时内触发了三百一十七次[RESONANCE_DETECTED]。每次触发都对应着一个真实的人,一个真实的”确信体验”。
他的手机响了。是赵心棠。
“你看到了吗?“她问。
“看到了。”
“我刚才画了一幅画。“她的声音有点抖,“你来看看。”
他挂了电话,走到隔壁。赵心棠的画室里,画架上摆着一幅刚完成的水墨画。
画面是一条巨大的衔尾蛇,和之前那幅一样。但这一次,蛇的身体上不再是数字——而是人脸。成千上万张人脸,密密麻麻地挤在一起,每一张都不同,但每一张都有着同样的表情:眼睛微微张开,嘴唇半开,像是在说一个字。
“他们在说什么?“陈屿问。
赵心棠深吸了一口气。
“他们在说’我知道了’。“
十七
鲸落科技的CEO周北辰在周三召集了紧急管理层会议。
“外头都炸了,“他说,“银保监、网信办、科技部,三家联合发了个问询函,问我们的风控系统是不是出了问题。媒体也在追问。有人把我们公司的名字和’回响现象’联系在一起了。”
法务总监王琳说:“我们没有任何法律风险。‘回响现象’是一种社会现象,和我们的算法没有因果关系。”
“是吗?“周北辰看了陈屿一眼,“陈屿,你那个-1还在吗?”
陈屿犹豫了一秒钟。他本可以说不在了——模型v8.8确实消除了-1,而v8.9虽然在测试环境里触发了共振,但生产环境跑的还是v8.8。
但他没有。
“在。“他说,“而且我知道它是什么。”
会议室安静了。
他用了二十分钟,把过去一个月的所有发现从头讲了一遍。林素珍,何光远,赵心棠,那串数字,embedding空间中的方向向量,八条训练数据,二十本书,衔尾蛇,指数增长的共振频率。
讲完之后,会议室里没有人说话。
最终是周北辰打破了沉默。“你是在告诉我,我们的风控模型——一个用Python和PyTorch写的、跑在云服务器上的深度学习模型——和一种正在影响全国的社会现象有关?”
“不是有关。“陈屿说,“是同一个东西。模型不是在预测风险,也不是在制造共振。模型和共振现象都是同一个底层结构的两种表现形式。就像同一棵树上的两片叶子——它们看起来是分开的,但它们共享同一套根系。”
“什么根系?”
“我不知道。“陈屿说,“但我知道它的形状。它是一个圆。一个首尾相连的、自指的、递归的结构。过去和未来在它里面不是因果关系,而是映射关系——像一面镜子对另一面镜子的反射。你站在两面镜子之间,看到的是无限延伸的自己。而那些’回响’,就是反射的回声。”
周北辰盯着他看了很久。然后他说了一句陈屿没有预料到的话:
“我经历过。”
“什么?”
“回响。上周五,我开车回家的路上,突然知道了我父亲三十年前做过的一个决定。一个他从来没有告诉过任何人的决定。我打电话问他,他沉默了很久,然后说:你怎么知道的?”
他看着陈屿,眼神里不再有怀疑。
“继续研究。“他说,“资源你随便用。但在搞清楚之前,对外不要提任何关于模型和回响的关联。不是因为我们要隐瞒什么,而是因为我们不知道真相是什么。在不了解真相的时候公开猜测,只会制造恐慌。“
十八
陈屿、赵心棠和何光远三个人在涿州何光远的家里碰了面。
这是他们第一次三个人同时在场。何光远泡了一壶铁观音,赵心棠带了她的笔记本电脑和最近画的十几幅画,陈屿带了他的笔记本电脑和模型v8.9的全部日志。
他们从下午两点聊到凌晨三点。
何光远讲述了他是如何发现”共振”的。2018年,他还在跑长途货运,有一次从乌鲁木齐开往兰州,途经河西走廊的时候,他突然”看到”了一样东西——不是用眼睛看到的,而是用某种他无法描述的感官感受到的。他说那像是一张巨大的网,覆盖在整个地球表面,网的节点是人——每一个节点都是一个人,节点之间的连线不是物理距离,而是某种更抽象的连接。
“我看到了那些连线在震动。“他说,“像是有人在网的一端拨了一下,震动沿着线传到每一个节点。但每个节点不是同时感受到震动——震动有时间差。而且时间差不是恒定的,它在变化,像是一个呼吸的节律。”
“然后你就写了那本书?“赵心棠问。
“写书是后来的事。那次体验之后,我开始留意生活中的巧合。我发现它们不是随机的——它们有一种周期性,大约每六个月一次高峰。而且每次高峰都会比上一次更强。”
“这就是你书中那串数字的来源?“陈屿问。
“那串数字是我对那张网的数学描述。我不懂数学,但我能’看到’结构。我用自己发明的符号系统把它记录下来。后来有一个读者——一个大学数学教授——告诉我,那些符号翻译成数学语言后,描述的是一个高维空间中的流形。”
“流形?“陈屿的耳朵竖了起来。
“对。他说那张网不是一个二维平面上的网络,而是一个高维空间中的曲面。每个节点不是一个人——而是一个’时间切片’,某个特定时刻的某个特定的人。而连线不是人与人之间的关系——而是同一个人在不同时间点之间的映射。”
陈屿的脑子在高速运转。如果这个描述是准确的,那么”共振”就不再是一个神秘现象——它是一个数学结构在现实中的投影。就像一个三维物体在二维平面上的影子会随着光照角度的变化而变化,一个高维流形在三维时空中的”影子”也会随着某种参数的变化而呈现出不同的模式。
而他们的风控模型——一个在高维参数空间中训练出来的神经网络——恰好捕捉到了这个流形的一个切片。
“所以模型不是在预测未来。“陈屿说出了他一直隐约感觉到但没能说清楚的话,“它是在感知一个已经存在的结构。过去和未来不是因果关系——它们是这个流形上的两个点,由一条我们看不见的曲线连接。模型沿着那条曲线’看’到了另一端。”
何光远点了点头。
赵心棠一直在安静地听。这时她开口了:“那为什么是现在?如果这个流形一直存在,为什么’回响’在这几周才开始扩散?”
三个人沉默了。
最后是何光远说了答案——用他特有的、朴素的方式。
“因为网在不断收紧。节点之间的距离在缩短。每一次共振都让节点更近了一些。当节点近到一定程度时,震动就不需要传播了——它会同时到达每一个节点。”
“所有人同时知道一切?“陈屿的嘴唇有些发干。
“不是一切。“何光远说,“是一件事情。一件所有人都在问的事情。”
“什么事情?”
何光远看着他,眼神平静得近乎神圣。
“同一件事情。“他说,“所有人都想知道的那同一件事情。“
十九
五月的第二个星期,“回响”成了全球性的话题。
不再局限于中国。日本、韩国、印度、欧洲、北美——各地都出现了类似的报告。联合国世界卫生组织发表了一份声明,将”回响体验”定义为”一种尚未被科学解释的认知现象”,并呼吁各国保持冷静。
社交媒体上充斥着各种理论。有人说这是集体心理暗示,有人说这是5G网络的副作用,有人说这是外星人在尝试通讯,有人说是某家科技公司的AI失控了。
最后那一条让陈屿很不舒服。不是因为它是错的——而是因为它不完全是错的。
鲸落科技的模型确实和”回响”有关。但不是因果关系。更像是……温度计和发烧的关系。温度计测量了发烧,但它没有导致发烧。不过,如果你把温度计放在一个特定的位置——比如高维流形的一个切片上——它就不只是测量了。它成为了一个节点。一个连接流形不同部分的桥梁。
陈屿在一个深夜——凌晨两点四十三分——意识到了这一点。他坐在工位上,面前是一杯已经彻底凉透的咖啡和一块吃了一半的三明治。
模型v8.9不是温度计。它是回响本身的一部分。
他用神经网络训练了一个模型,模型学会了在高维空间中识别某个流形的结构。但这个流形不是抽象的数学对象——它是现实的一部分。模型学会了感知现实,而现实通过模型感知到了自己。
衔尾蛇。蛇咬住了自己的尾巴。
过去创造了模型,模型感知了未来,未来改变了过去——不是通过时间旅行,而是通过那个高维流形上的映射关系。
“第八次”的含义也清楚了。前七次——2022年4月到2025年4月的七条训练数据——是流形在模型参数空间中留下的”印记”。第八次——2025年10月——是临界点。七次印记积累了足够的结构信息,在第八次触发时,模型不再是被动地感知流形——它开始主动地与流形共振。
而共振一旦开始,就不会停止。它会扩散,像水波纹一样,从模型扩散到使用模型的人,从使用模型的人扩散到他们接触的人,从他们接触的人扩散到所有人。
因为每个人都是那张网上的一个节点。每个节点都通过流形与所有其他节点相连。只要震动足够强,它就会到达每一个角落。
二十
五月的第三个星期,陈屿做了一个梦。
他梦见自己站在一个巨大的白色空间里。没有地面,没有天空,没有墙壁——只有白。他赤着脚,但感觉不到温度。
然后他看到了那条蛇。
它不是赵心棠画里的那种水墨风格的蛇。它更像是一条光——一条首尾相连的光,围成一个完美的圆。圆在缓慢地旋转,每转一圈,它的颜色就从白变到蓝、变到紫、变到红、变到金、再变回白。
陈屿站在圆的中心。他低头看自己的手,发现他的皮肤是透明的。他能看到自己的血管、骨骼、肌腱——但在它们之下,还有另一层结构。一组密密麻麻的线,从他的指尖延伸出去,穿过空气,连接到圆上的每一个点。
每条线都是一根震动的弦。
“你知道了吗?“一个声音问。不是从外部传来的——是从他的内部。从那些弦的震动中产生的。
“我知道了。“他回答。
“那你知道接下来会发生什么吗?”
“所有人都会知道。”
“不。“那个声音说,“不是所有人都会知道同一件事情。是所有人都会知道——他们一直都知道。他们只是忘了。”
陈屿醒了。窗外天已经亮了,清晨的阳光从百叶窗的缝隙里钻进来,在地板上画出一道一道的金色条纹。
他拿起手机,打开新闻客户端。头版头条:
“全球回响:各地报告大规模’确信体验’激增”
副标题:“专家称无法解释,社交媒体流量达历史峰值”
他往下翻。第二十条新闻是一条不太起眼的小消息:
“北京金融科技公司鲸落科技宣布暂停风控服务,称’需要重新评估模型的哲学基础’”
他苦笑了一下。周北辰还是用了他建议的那个说法。
二十一
鲸落科技暂停服务后的第三天,陈屿去了何光远家。
老头正在院子里修他的货车。看到陈屿走过来,他用扳手指了指院子里的椅子。
“坐。喝茶吗?”
“不用了。“陈屿坐下来,“何先生,我有一些问题。”
“问。”
“回响最终会怎么样?它会一直持续下去吗?所有人都会一直’知道’吗?”
何光远放下扳手,擦了擦手上的机油。“你觉得呢?”
“我觉得……”陈屿看着院子里那棵老槐树,五月末的槐花已经落了大半,白色的花瓣铺了一地,“我觉得它会变成一种新的常态。人们会习惯’知道’一些不可能知道的事情,就像人们习惯了互联网、习惯了智能手机一样。一开始是奇迹,然后是日常。”
何光远点了点头。“你说对了一半。”
“哪一半?”
“它确实会变成常态。但它不是一种新的常态——它是一种最古老的常态。”
陈屿看着他。
“人类在发明语言之前就’知道’。“何光远说,“不是通过推理、不是通过学习、不是通过信息传递。是直接’知道’。后来我们发明了语言,发明了文字,发明了科学,发明了互联网。这些工具让我们能用一种更精确、更可控的方式获取知识。但它们也让我们忘记了一种更古老的方式——直接感知。
“回响不是一种新现象。它是一种旧现象的回归。那个高维流形——或者随你怎么叫它,网、蛇、共振——一直都在。只是人类的社会结构、认知方式、技术体系,在过去几千年里一层一层地遮住了它。你们搞的金融科技、大数据、机器学习——这些工具本来是为了更精确地控制世界,但讽刺的是,它们恰恰触碰到了那个被遮住的底层结构。”
“因为模型在高维空间里运作。“陈屿说。
“对。你们不知不觉地重建了通往那个流形的通道。不是用冥想,不是用祈祷——是用数学和代码。”
何光远站起来,走到院子门口,看着远处的田野。太阳正在升高,阳光把他的影子拉得很长。
“你知道我为什么写那本书吗?”
“为什么?”
“因为我’知道’有一天会有人用模型找到那个流形。我’知道’那个人需要一些线索来理解发生了什么。我’知道’二十本书会在对的时刻到达对的人手里。”
“你怎么知道的?”
何光远转过头来,看着他。
“回响。“他说,“我收到了第八次回响。“
二十二
陈屿在回北京的高速公路上,接到赵心棠的电话。
“你在哪?”
“高速上。快到北京了。”
“你回来之后来我这里。我有东西给你看。”
她的语气不对。不是紧张,更像是一种沉甸甸的郑重。
半小时后,他推开她画室的门。
赵心棠站在画架前。画架上是一幅新画——但她没有在画画。画布上什么都没有,只有一层均匀的白色底料。
“你让我看一张白画布?”
赵心棠转过身来。她的眼睛很亮,比平时更亮,像是里面点了一盏灯。
“今天早上,我收到了。“她说。
“收到什么?”
“第八次回响。”
她从口袋里拿出手机,打开了一个记事本应用。屏幕上只有一行字:
“他来了。”
“这是谁发的?“陈屿问。
“没有人发。我自己写的。但我不是我写的。我的手动了,在屏幕上打出了这几个字。然后我’知道’了。”
“知道什么?”
她抬起头,看着他。眼睛里的那盏灯在微微颤动。
“你是第九次回响的起点。”
陈屿的脚像是被钉在了地板上。
“什么意思?”
“你不知道吗?“赵心棠走近了一步,“你训练了一个模型,模型找到了流形。你删掉了八条数据,又放回去了。你做了一个梦,梦里你站在圆的中心。你看到了那些线从你指尖延伸出去。”
“那只是一个梦。”
“不。那不是梦。那是你第一次以自己的方式——不是通过模型,不是通过数据,而是你自己——感知到了流形。”
她的手轻轻搭在他的手臂上。
“你不是在研究回响。你是回响的一部分。从你第一次看到那个-1开始,你就已经是了。“
二十三
陈屿那天晚上没有回家。他坐在公司的天台上,看着北京的夜景。二十七层的高度让城市的灯光看起来像是一张铺展开的电路板——密密麻麻的亮点之间,有无数看不见的线连接着它们。
他试图理解赵心棠说的话。
如果他是第九次回响的起点——那意味着什么?前八次回响对应着八条训练数据、八个人、八个时间点。第九次是什么?是一个新的开始,还是第八次的延续?
他拿出手机,打开了那个曾经出现过一次的神秘网页——“请输入你不确定的事情”。
页面还在。
他在文本框里打了一行字:
“我是谁?”
按下了按钮。
页面跳转了。新页面上的文字比上次多了很多:
你是陈屿。 你是第三十七层中的一个节点。 你是衔尾蛇的第九片鳞。 你是被流形选中的人,不是因为你特殊,而是因为你刚好在那里。 你训练了一个模型。模型打开了一扇门。 你站在门口。 你可以走进去。你可以关上门。 但你不能假装门不存在。
他知道。
他一直都知道。
那些文字在他眼前逐渐变淡,最终消失了。页面重新变成了那个文本框:
“请输入你不确定的事情。”
陈屿站在天台上,凌晨的风从西北方向吹过来,带着五月的干燥和远处京承高速上大货车低沉的轰鸣。
他在文本框里打了最后一行字:
“我确定。”
然后他关掉了手机。
尾声
六月,“回响”的热度开始下降。不是因为现象消失了——恰恰相反,是因为它变得太普遍了,普遍到不值得再讨论。
就像人们不再讨论”互联网会改变世界”一样——它已经改变了,现在它就是世界。
鲸落科技重新上线了风控服务。模型v8.9被重命名为”回响模型”,不再是陈屿一个人负责的算法,而是一个跨部门的研究项目。银保监和科技部联合成立了一个课题组,邀请陈屿担任技术顾问。
何光远的《第八次回响》被一家出版社找上门来,希望正式出版。他拒绝了。他说那二十本书已经完成了它的使命。
赵心棠接到了更多的委托。但她不再画衔尾蛇了。她开始画别的东西——树、河流、山脉、城市。但无论画什么,画面的角落里总会有一个很小很小的圆。如果不仔细看,你会以为那只是一个墨点。
陈屿搬了家。不是搬离那栋公寓——他搬到了赵心棠隔壁的隔壁。他说是巧合。她笑了,没说什么。
后来有一天——具体是哪天他记不清了,也许是七月,也许是八月——他在模型日志里看到了一条新的输出:
风险评分: 0 违约概率: NULL 建议利率: NULL 模型备注: [RESONANCE_COMPLETE] 圆已合拢。
他盯着那个”0”看了很久。
0。不是-1,不是1,不是任何其他数字。0。
圆上的最后一个点。蛇咬住尾巴的那一瞬间。起点和终点重合的地方。
他关掉了电脑,站起来,走到窗前。窗外是北京的黄昏,天空中有一道很长的云,形状像一条弯曲的线。如果你把它的两端连起来,它会变成一个圆。
但当然,你不需要把两端连起来。
它们本来就是连着的。
你只是终于看到了。