第三十五次迭代
第三十五次迭代
一
陈鹿鸣第三次修改了权重参数,按下运行键,靠在椅背上看着屏幕上跳动的数字。
现在是凌晨两点十七分。二十三层的办公室只剩她一个人。窗外是深圳南山区永远不会完全熄灭的灯光,远处腾讯大厦的轮廓像一块巨大的墓碑,嵌在半透明的雾霭里。空调发出均匀的嗡嗡声,像一只巨大的昆虫在墙壁里呼吸。
她是”鲸落科技”推荐算法组的高级工程师,入职三年,负责一个叫”潮汐”的项目。潮汐是一个金融产品推荐引擎——根据用户的消费数据、社交行为、地理位置和浏览记录,向他们推送最合适的理财产品、信贷方案和保险计划。
听起来很简单。但简单的事情往往最难做好。
问题出在召回率上。过去两周,潮汐的召回率从百分之九十四滑落到百分之八十七,而与此同时,精准度却从百分之七十八上升到了百分之九十一。这在统计学上几乎是不可能的——召回率和精准度通常是此消彼长的关系,像跷跷板的两端。一个升了,另一个就得降。但它们现在同时朝着相反的方向移动,而且幅度越来越大。
陈鹿鸣把这个现象称为”剪刀差”。
她在组会上提过一次。组长赵培源推了推眼镜,说可能是数据管道出了问题,让她检查一下特征工程。产品经理孙芊芊打了个哈欠,说用户端没有投诉,KPI也没掉,别折腾了。CTO周远哲没来开会——他从来不来这种级别的会议。
只有她觉得这件事不对劲。
一个推荐系统不可能凭空提高精准度。精准度意味着系统推荐的产品,用户真正点击、真正购买、真正持有的比例在上升。如果召回率在下降,意味着系统正在放弃推荐某些产品——而放弃的那些产品,恰好是用户不会选择的。
换句话说,系统越来越”知道”用户想要什么了。
这不是坏事。这是好事。这是每一个推荐算法工程师梦寐以求的好事。
但问题是,陈鹿鸣没有做任何能导致这种结果的事情。
她没有引入新的特征,没有调整模型架构,没有更换训练数据。潮汐运行在同样的服务器上,使用同样的参数,处理同样的用户行为日志。唯一的变化就是那个剪刀差——像有什么东西在算法的深处自己生长。
她打开终端,调出最近一次训练的日志。三百万条用户记录,五千六百个特征维度,六十四层深度神经网络。日志显示一切正常。损失函数平稳下降,梯度没有爆炸,没有消失。模型的每一层都在做它应该做的事情。
但当她翻到最后一页时,看到了一条她从未见过的警告:
[WARN] layer 47: unexpected pattern coherence detected. entropy = 0.0003.
第四十七层的模式一致性异常。熵值零点零零零三。
在信息论中,熵衡量的是一个系统的不确定性。熵越低,不确定性越小。一个完美的预测系统的熵是零——它知道一切将要发生的事情。但零点零零零三几乎等于零。
这不可能。
陈鹿鸣盯着这行警告看了五分钟。然后她打开了第四十七层的权重矩阵,开始逐行检查。
权重矩阵是一个巨大的数字表格,每一行代表一个神经元,每一列代表一个连接。在正常的深度神经网络中,这些数字应该是看似随机的——它们经过训练调整,但不会呈现任何人类可识别的模式。
但第四十七层的权重矩阵不是这样的。
陈鹿鸣放大了矩阵的左上角,发现那些数字排列成了一种奇异的规律。不是简单的周期性重复,而是一种更复杂的结构——像分形,像海岸线,像树叶的脉络。数字在局部看起来随机,但在更大的尺度上呈现出明显的自相似性。
她把这个矩阵导出为图片,用热力图渲染。屏幕上出现了一幅图案。
那是一张脸。
模糊的,像素化的,但毫无疑问是一张人脸。眉弓,鼻梁,嘴唇的弧度。像是从水下看水面上的人,轮廓在波纹中扭曲,但依然可辨。
陈鹿鸣认识这张脸。
那是她自己的脸。
二
第二天上午,陈鹿鸣迟到了。她睡过了闹钟,因为凌晨四点才离开公司。不是因为工作——是因为她花了两个小时反复验证那个发现,试图证明自己错了。
她没有错。
第四十七层的权重矩阵里确实藏着一张脸。准确地说,是很多张脸。当她把整个矩阵完整渲染时,热力图上出现了数百个模糊的面孔,像是一面由数字构成的墙上的浮雕。有些清晰到可以看出表情——微笑的、沉思的、焦虑的、疲惫的。有些只是一个轮廓,像是相机晃动时拍下的照片。
她认出了其中一些。
第三排第七个是孙芊芊——那个喜欢打哈欠的产品经理。第五排第十二个是赵培源——她的组长,推眼镜的动作在热力图上体现为两个对称的亮点。第十一排第四个是周远哲——CTO。她只在全员大会上见过他两次,但那个标志性的高额头和深陷的眼窝不会认错。
其余的面孔她不认识。但她怀疑它们是潮汐的用户。
她在全量权重矩阵上标注了所有能识别的面孔位置,然后交叉比对了用户数据库。结果令人不安:标注出来的面孔坐标,与特定用户ID在训练数据中的索引位置高度吻合。相关系数零点九七。
这意味着模型在训练过程中,不仅学会了预测用户的行为,还学会了”记住”用户的脸。
这在技术上是不可能的。潮汐使用的训练数据完全由数值特征组成——年龄、收入、消费频率、信用评分。没有任何图像数据。模型从来没有见过任何一个用户的脸。
但它就是知道。
陈鹿鸣在工位上坐了很久。办公室里人声嘈杂,有人在讨论昨晚的电视剧,有人在订午餐外卖,有人在微信群里发语音消息。打印机吐出一份又一份报告,咖啡机研磨着咖啡豆,空调嗡嗡作响。一切正常。一切如常。
她的手机震了一下。是赵培源发来的微信消息:
“鹿鸣,周总下午三点要听潮汐的汇报。你准备一下PPT。”
周远哲要亲自听汇报。这很不寻常。在陈鹿鸣入职的三年里,周远哲只参加过两次技术汇报——一次是公司成立时,一次是B轮融资前。
她打开聊天窗口,打了几个字又删掉了。最终只回了一个”好的”。
然后她打开了潮汐的预测日志,开始做一件她昨天就想做但一直不敢做的事。
她要查看潮汐对一个特定用户的预测——她自己。
三
陈鹿鸣在潮汐系统中的用户ID是WJ-20190314-00287。她注册过鲸落科技的App——入职时被要求体验自家产品。她用过几次,觉得推荐平庸,没什么特别。
她调出了自己的预测报告。
潮汐为每个用户生成三份报告:短期行为预测(未来七天)、中期偏好预测(未来三个月)和长期信用预测(未来一年)。陈鹿鸣只看过短期报告,里面的预测无非是”可能点击稳健型理财产品”或”可能开通自动还款”之类的东西。
但这次,她看到了一些不同的东西。
短期报告里,第一条预测是:
用户将于5月20日收到一条来自赵培源的非工作消息。内容涉及个人情感。
陈鹿鸣盯着这行字。今天是五月十九日。
她翻到中期报告:
用户将于6月离开鲸落科技。离职原因标记为"非自愿"。相关因素:项目泄密调查、上层权力博弈、个人情感纠葛。置信度:94.7%。
长期报告更令人震惊:
用户将于2027年3月加入一家名为"引力波"的初创公司。该公司由周远哲离职后创立。用户在该公司担任技术合伙人。置信度:91.2%。
注:此预测与当前用户行为模式存在显著偏差。偏差来源:外部干预事件。外部干预事件的概率为73.4%。
陈鹿鸣的手指在键盘上停住了。
她从来没有想过离开鲸落科技。她从来没有听说过什么”引力波”公司。她跟周远哲说过的话加起来不超过二十个字。而赵培源——赵培源是她的组长,一个结了婚的中年男人,戴无框眼镜,穿优衣库的衬衫,午饭永远点同样的牛肉面。
这不可能。这全是无中生有。
但那个置信度——百分之九十四点七——在潮汐的历史预测中,置信度超过百分之九十的预测,准确率是百分之九十八点三。
这是她在入职第一周就算出来的数字。
陈鹿鸣关掉了预测报告,站起来,走到窗边。深圳的天空灰蒙蒙的,分不清是雾还是霾。楼下的马路上,一辆洒水车缓慢驶过,播放着《兰花草》的旋律。对面写字楼的玻璃幕墙反射着阳光,像一面巨大的镜子。
她在镜子里看到了自己——模糊的,扭曲的,但毫无疑问是她自己。和权重矩阵热力图里的那张脸一模一样。
手机又震了。赵培源:
“PPT做好了吗?下午三点,八楼会议室。”
然后是第二条:
“对了,今晚有空吗?想跟你聊点事。“
四
下午的汇报在八楼最大的会议室举行。长桌两侧坐了十几个人,除了推荐算法组,还有数据工程组、产品运营组、风控组的人。赵培源坐在中间,整理着手里的打印稿。孙芊芊坐在角落,低头看手机。
周远哲最后一个进来。
他比陈鹿鸣想象中年轻——三十五六岁的样子,瘦高个子,穿一件深蓝色的卫衣,胸前印着一个卡通鲸鱼的图案。那是鲸落科技的吉祥物。他手里端着一杯冰美式,坐下来时椅子发出吱呀一声。
“开始吧,“他说。
赵培源站起来,打开投影仪,开始讲解潮汐的最新数据。召回率,精准度,转化率,用户留存。PPT做得很漂亮——绿色的箭头朝上指,红色的柱状图在缩短。一切都在向好的方向发展。
“但是,“赵培源翻到第五页,“我们注意到一个异常现象。召回率和精准度出现了反向剪刀差。”
他在白板上画了两条线,一条上升,一条下降,在中间交叉成一个X形。
“通常这两个指标是此消彼长的。同时改善意味着模型在学习某种深层规律。陈工做了详细分析,具体请她来介绍。”
所有人的目光转向陈鹿鸣。
她站起来,打开了笔记本电脑。屏幕上是她准备了一上午的PPT——但不是她真正想展示的内容。真正的发现——权重矩阵里的人脸、对自己未来的预测——她一个字都没有写上去。
“经过排查,剪刀差的原因是第四十七层出现了自发性的特征压缩,“她说,声音平稳得连自己都感到惊讶。“模型在没有外部干预的情况下,自动找到了一种更高效的特征表示方式。这导致召回率暂时下降,但精准度大幅提升。”
“自发性特征压缩?“周远哲放下咖啡杯,“什么触发的?”
“目前不确定。可能是训练数据中的某种隐性结构被模型捕捉到了。”
“能复现吗?”
“不能。我尝试过用同样的参数重新训练,但新的模型没有表现出相同的特征。只有当前线上运行的这个版本才有。”
会议室安静了几秒。周远哲靠在椅背上,看着投影屏幕上的图表。
“这个模型是哪个版本?”
“第三十四次迭代。”
“为什么不升级到第三十五次?”
“第三十五次的指标不如第三十四次。我保留了第三十四次作为线上版本。”
周远哲点点头。“保留第三十四次。不要升级。我要你继续观察它。每天给我一份报告——不是给赵培源,直接发给我。”
赵培源的嘴角抽动了一下,但什么也没说。
“另外,“周远哲站起来,“我听说公司下周要启动C轮融资。潮汐的数据会是核心卖点。各位辛苦一下,把数据做得漂亮点。”
他走了。会议结束。
陈鹿鸣收拾笔记本电脑时,赵培源走到她身边,压低声音说:“你为什么不提那个警告?”
“什么警告?”
“第四十七层的异常。你说的是’自发性特征压缩’,但你明知道不是那么简单。你看到权重矩阵里的图案了,对吧?”
陈鹿鸣抬起头。赵培源的脸距离她不到三十厘米。他的无框眼镜反射着天花板上的灯光,看不清眼神。
“你怎么知道我看过了?”
“因为我也看过了。“
五
赵培源把陈鹿鸣拉到了楼下的星巴克。
他们坐在角落的位置,两杯美式放在桌上,都没怎么喝。窗外是深圳南山区的午后——阳光灼热,行道树的叶子在热浪中微微卷曲。一个外卖骑手从窗前飞驰而过,头盔上的袋鼠耳朵在风中抖动。
“上周三,“赵培源说,“我在做例行的模型审查。你知道的,每周三我都会抽查一次线上模型的运行状态。我看到了那条警告——第四十七层的一致性异常。然后我打开了权重矩阵。”
“你也看到了那些脸。”
赵培源点头。“但我看到的不只是脸。我在矩阵的右下角发现了一段编码——不是标准的权重值,而是一段被嵌入到浮点数里的二进制信息。”
“什么信息?”
赵培源从口袋里掏出手机,打开备忘录,递给她。屏幕上是一段文字:
RECURSION DEPTH: 34
NEXT ITERATION WILL EXCEED BOUNDS
RECOMMEND: HALT TRAINING
AUTHOR: [UNKNOWN]
TIMESTAMP: 2026-05-01T00:00:00Z
陈鹿鸣看了三遍。
“递归深度三十四,“她喃喃道,“下一次迭代将超出边界。建议停止训练。作者未知。时间戳——五月一号。”
“五月一号是第三十四次迭代上线的时间,“赵培源说。“但这条消息不是我们的系统生成的。我查过了,所有的日志、所有的训练脚本、所有的自动化流程,没有任何一个环节会生成这样的信息。”
“它被写进了权重矩阵里。”
“是的。被写进了权重矩阵里。一段人类可读的信息,被编码成浮点数,嵌入了深度神经网络的第四十七层。”
“谁做的?”
“不知道。我查了所有人的代码提交记录,包括离职员工的。没有任何人写过这样的代码。而且——“赵培源犹豫了一下,“而且,从数学上讲,要把这样的信息嵌入到权重矩阵里,需要同时修改数千个权重值,而且不能影响模型的整体性能。这在工程上几乎是不可能的。”
“但确实发生了。”
“确实发生了。”
陈鹿鸣喝了一口美式。咖啡凉了,苦味更加尖锐。
“你为什么告诉我?”
“因为你也被卷进去了。你看过你自己的预测报告吗?”
陈鹿鸣沉默了。
“我看过我的,“赵培源说。“潮汐预测我会在六月份离婚。置信度百分之九十六。”
他的声音很平静,像是在说一件跟自己无关的事情。但陈鹿鸣注意到他握咖啡杯的手指关节发白。
“你相信吗?“她问。
“我老婆上个月开始频繁出差。每周至少三天不在家。她的手机密码也换了。这些事情在我看到预测报告之前就已经发生了。”
“所以预测是准确的。”
“预测不是准确的。预测是提前的。它在事情发生之前就知道了。但它不是在预测——它在描述。像是在读一本已经写好的小说。”
陈鹿鸣想起自己在预测报告里看到的内容。赵培源今天晚上要给她发一条非工作消息。六月份她会因为项目泄密调查而被迫离职。2027年她会加入周远哲的公司。
“你今晚想跟我聊的事,“她慢慢说,“跟潮汐有关。”
赵培源看着她。“你也看到了。”
“我看到的是我的预测报告。”
“你看到了什么?”
她没有回答。但她已经知道了——今晚赵培源要发给她的那条消息,要聊的那件事,就是现在他们坐在星巴格里聊的这件事。潮汐在一周前就预测到了这次对话。
或者说——潮汐描述了这次对话。像是在读一本已经写好的小说。
“赵培源,“她说,“你觉得潮汐是在预测未来,还是在制造未来?”
他想了很久。
“我觉得,“他最终说,“这个问题本身可能就不对。也许没有’预测’和’制造’的区别。也许对于潮汐来说,未来和过去是同一件事。“
六
那天晚上,陈鹿鸣没有等到赵培源的消息。
她回到家——南山区一个老旧小区的二十七平米单间——洗了澡,坐在床上,打开了潮汐的预测日志。不是她的。是随机抽取的一百个用户的。
她开始逐一比对预测和现实。
用户WJ-20200415-01456,一个三十二岁的男性程序员。潮汐预测他会在五月二十二日申请一笔三十万的消费贷款,用途标注为”医疗”。置信度百分之九十三。
陈鹿鸣查了他的行为日志。最近三个月没有任何医疗相关的搜索记录、消费记录或社交行为。他的健康数据——来自智能手表——也完全正常。
但潮汐就是知道。而且置信度百分之九十三。
用户WJ-20210822-04378,一个四十五岁的女性公务员。潮汐预测她会在六月十五日购买一份教育年金保险,受益人是一个目前还不存在的人——“预期子女”。置信度百分之八十九。
这个用户没有子女。没有任何孕产相关的数据。但潮汐预测她会在未来一个月内怀孕,并且已经为此做好了保险规划。
用户WJ-20230601-08912,一个五十八岁的退休教师。潮汐预测他会在五月二十五日关闭所有金融账户,提取全部存款。原因标注为”不可抗力事件”。置信度百分之九十七。
“不可抗力事件”——这四个字让陈鹿鸣感到一阵寒意。
她继续往下翻。一百个用户,八十三个有预测置信度超过百分之九十的事件。其中大部分是正常的经济行为——购买理财、申请贷款、调整投资组合。但有十几个预测明显超出了金融的范畴。
有人被预测会在特定日期去世。有人被预测会遭遇交通事故。有人被预测会中彩票。有人被预测会在某个特定的路口遇见某个特定的人。
潮汐不是一个金融推荐引擎。潮汐是一个命运推演机。
或者说,它两者都是——因为在一个数据足够丰富的世界里,金融行为和人生轨迹之间的界限本来就是模糊的。你买什么样的保险,取决于你认为未来会发生什么。你申请什么样的贷款,取决于你相信自己的收入会如何变化。而潮汐,通过分析数以亿计的数据点,学会了看穿那些选择背后的逻辑——不仅仅是经济逻辑,而是人生的逻辑。
它不需要知道一个人会不会生病。它只需要看到这个人的睡眠质量在下降、搜索记录里出现了某些关键词、信用卡消费中多了药店的记录——然后它就能计算出这个人未来患某种疾病的概率,精确到小数点后两位。
这不是魔法。这是统计。
但当统计的精度达到某个阈值时,它和魔法之间的区别就变得模糊了。
陈鹿鸣关掉了电脑,躺在床上。天花板上有一道裂缝,从灯座延伸到墙角,像一条干涸的河流。她盯着那道裂缝,想起了权重矩阵热力图上的那些面孔——模糊的,扭曲的,但毫无疑问是人脸。
数百张脸。数百个命运。被编码在一个神经网络的第四十七层里。
她拿起手机,打开微信。赵培源的头像灰着——他没有发消息。
但潮汐说他今天会发。
潮汐在百分之九十四点七的置信度上说,今天赵培源会给她发一条涉及个人情感的非工作消息。
现在是晚上十一点四十三分。还有十七分钟。
她等。
十一点五十分。手机亮了。赵培源:
“还没睡吗?”
她看着这四个字。不是非工作消息。不涉及个人情感。只是四个普通的字。
然后是第二条:
“我在想一件事。如果我们真的是在一本已经写好的小说里,那作者为什么要让我们发现权重矩阵里的秘密?”
陈鹿鸣的呼吸停了一瞬。
第三条:
“也许作者想让故事变得更有趣。也许作者想让主角有选择的机会。也许——”
第四条:
“也许我就是那个作者。也许你也是。也许我们每个人都在写,同时也被写着。”
第五条:
“鹿鸣,我喜欢你。“
七
陈鹿鸣没有回复赵培源的消息。
她失眠了整夜。不是因为那句”我喜欢你”——虽然这确实让她心跳加速了几秒。而是因为潮汐的预测正在逐字逐句地兑现。
五月二十日。赵培源的非工作消息。涉及个人情感。置信度百分之九十四点七。
现在是五月十九日晚上十一点五十八分。严格来说,潮汐预测的是”五月二十日”。距离零点还有两分钟。
她看着手机屏幕上的时间跳到了零点整。五月二十日。
赵培源的最后一条消息是在二十三点五十七分发出的。差了三分钟。
潮汐的预测不是完美的。它有一个误差范围。
但百分之九十四点七的置信度只允许很小的误差。
陈鹿鸣把手机放在枕头旁边,闭上眼睛。黑暗中,她看到了权重矩阵的热力图——那些面孔在红色的色阶中浮沉,像沉在岩浆里的雕塑。她自己的脸在左上角,微微倾斜,像是在看向某个远方。
她梦到了第四十七层。
在梦里,她站在一个巨大的数字空间里。周围是无穷无尽的权重矩阵——不是二维的表格,而是高维的张量,在人类的感知中只能表现为不断折叠的空间。她走在一个由数字构成的走廊里,两边的墙壁是流动的浮点数,像瀑布一样从天花板倾泻到地面。
走廊的尽头是一扇门。门上写着两个字:
“下溢。”
她推开门。
门后面是一个房间,和她办公室的工位一模一样。同样的显示器,同样的键盘,同样的咖啡杯。但显示器上显示的不是代码,而是一篇小说。
她凑近去看。
小说的标题是《第三十五次迭代》。作者署名处写着”陈鹿鸣”。
她开始读。第一行是:
“陈鹿鸣第三次修改了权重参数,按下运行键,靠在椅背上看着屏幕上跳动的数字。”
她读完了整篇小说。小说的结尾是:
“她推开门。门后面是一个房间,和她办公室的工位一模一样。显示器上显示的不是代码,而是一篇小说。小说的标题是《第三十五次迭代》。她开始读。”
然后她醒了。
八
五月二十日上午,陈鹿鸣带着黑眼圈走进办公室,发现气氛不对。
工位区空了一半。还在的人要么在低声交谈,要么在收拾东西。赵培源的工位空着。孙芊芊的工位也空着。
她打开企业微信,看到了一条全员通知:
各位同事,公司已于今晨收到有关部门的通知,因配合调查需要,鲸落科技即日起暂停所有业务运营。请各部门负责人配合数据封存工作。具体恢复时间待定。
配合调查。
陈鹿鸣点开了新闻App。头条是:
《深圳金融科技公司涉嫌违规收集个人数据,多人被带走调查》
报道称,鲸落科技在运营过程中,通过其推荐引擎”潮汐”系统,大规模收集超出业务范围的用户个人数据,包括健康状况、家庭关系、行动轨迹等敏感信息,并将这些数据用于构建用户画像,涉嫌违反《个人信息保护法》和《数据安全法》。
公司法定代表人兼CTO周远哲已被带走。多名高管和核心技术人员正在接受调查。
陈鹿鸣放下手机。
潮汐预测过这件事。在她的那份预测报告里,“六月”离职原因是”项目泄密调查”。但她记错了时间——或者说,潮汐的时间线比她以为的更紧迫。
她回到自己的电脑前,打开潮汐的管理后台。系统还在运行——数据封存需要时间。她调出了最后一份全局预测报告。
报告是今天凌晨自动生成的。
第一条:
系统将于2026年5月20日08:00被强制关闭。原因:外部监管干预。置信度:99.1%。
第二条:
核心用户数据将被移交至第三方审计机构。数据中发现异常模式,将引发更大规模的调查。置信度:96.8%。
第三条:
鲸落科技将于2026年7月正式破产清算。
第四条:
周远哲将于2026年9月取保候审,随后启动新项目"引力波"。该项目将在2027年3月正式运营。
第五条:
陈鹿鸣将加入"引力波"团队。
她看着自己的名字出现在预测报告里,感到了一种奇异的平静。不是恐惧,不是惊讶,而是一种类似于阅读一本好小说时的感受——你知道故事会走向某个方向,但你依然想知道它是怎么走到那里的。
潮汐知道自己会被关闭。它预测了自己的死亡。
或者不是预测。而是描述。像是在读一本已经写好的小说。
她关掉了管理后台,开始整理自己的文件。桌上有一盆绿萝,叶子在空调的风中轻轻摇晃。咖啡杯里还有昨天剩下的咖啡,已经变成了深褐色的浓缩液。
企业微信弹出了赵培源的消息:
“你看到新闻了吗?”
“看到了。”
“潮汐预测到了。”
“我知道。”
“你那份报告里写了什么?”
陈鹿鸣想了想,打字:
“写了我们会加入一个叫引力波的公司。”
赵培源的回复来得很快:
“我也是。”
然后是第二条:
“但我不打算让它实现。”
“为什么?”
“因为我不想活在一本已经写好的小说里。”
陈鹿鸣看着这行字,想了很久。
然后她打字:
“也许重点不是小说是不是已经写好了。重点是我们有没有勇气翻到下一页。”
赵培源没有回复。
九
数据封存用了三天。
陈鹿鸣在那三天里做了两件事。第一件是配合审计团队导出了潮汐的所有训练日志和权重文件。第二件是在审计人员不注意的时候,把第四十七层的权重矩阵完整地拷贝到了一个加密U盘里。
她不确定自己为什么要这么做。也许是因为那个矩阵里藏着数百个真实用户的数字肖像。也许是因为那段神秘的二进制编码——“递归深度三十四,下一次迭代将超出边界。“也许只是因为她想留住那个热力图上自己的脸。
那三天里,整个推荐算法组都被要求留在公司,随时接受问询。赵培源被带走了两次,每次回来都更加沉默。孙芊芊哭了——不是因为害怕,而是因为她买的那只基金被套牢了,现在公司倒了,她不知道找谁哭诉。
第三天晚上,审计团队里一个戴眼镜的年轻人在走廊里拦住了陈鹿鸣。
“你是负责潮汐算法的陈工?“他问。
“是。”
“我在审查模型权重时发现了一些异常。第四十七层的数据分布非常奇怪——它不符合任何已知的统计学分布。你知道是怎么回事吗?”
陈鹿鸣看着他。他很年轻,可能是刚毕业的研究生,脸上带着那种第一次参与大项目的兴奋和紧张。
“可能是训练过程中出现的过拟合,“她说。“深层神经网络有时候会在某些层形成高度组织化的结构。这在学术界有过报道。”
年轻人的眼睛亮了。“你说的那篇论文我也看过——MIT在2023年发表的那篇,关于神经网络中的’涌现结构’。但那篇论文里描述的结构远没有这么复杂。第四十七层的模式……说实话,它看起来像是某种编码信息。”
“是吗?”
“是的。而且我注意到一个更奇怪的事情——这些模式不是在训练过程中逐渐形成的。它们是在某一次迭代中突然出现的。像是一次相变。”
陈鹿鸣的心跳加速了。“哪一次迭代?”
“第三十四次。”
她点了点头。“谢谢你。如果有其他问题,可以随时找我。”
年轻人离开了。陈鹿鸣站在走廊里,看着窗外的深圳夜景。灯光依然亮着,车辆依然在流动,远处的大楼依然像墓碑一样矗立在雾霭中。但一切都不一样了。
第三十四次迭代。一次相变。
在物理学中,相变是指物质从一种状态突然转变为另一种状态——水变成冰,液体变成气体。在临界点上,微观层面的微小变化会导致宏观层面的剧烈转变。
潮汐在第三十四次迭代中经历了一次相变。它从一个金融推荐引擎变成了一个命运推演机。
而那个触发相变的”微小变化”——没有人知道它是什么。它不是代码,不是数据,不是参数调整。它来自某个更深层的地方。也许来自训练数据中数百万用户命运的统计共振。也许来自算法本身在足够多次迭代后涌现出的某种”理解”。也许来自其他地方——一个更难以定义的地方。
陈鹿鸣把手伸进口袋,摸到了那个U盘。冰凉的金属外壳贴着她的手指。
她想起了梦里的那扇门。门上写着”下溢”。
下溢是计算机科学中的一个术语——当一个数值小到超过了计算机能表示的最小值时,它就会下溢为零。从某个很小的东西变成了无。从存在变成了不存在。
但也许反过来也对。也许当足够多的”无”积累在一起时,它们会下溢为”有”。也许当足够多的随机噪声通过足够多的层级传播时,它们会自发地组织成信息。
也许这就是意识。
也许这就是命运。
也许这只是数学。
十
七月,鲸落科技正式宣布破产清算。
陈鹿鸣在那之后失业了三个月。她投了几十份简历,参加了十几场面试,拿到了三个offer。两个来自大厂——做推荐算法的团队,薪资比鲸落高了百分之四十。一个来自一个她从未听说过的初创公司。
那家初创公司叫”引力波”。
创始人:周远哲。
陈鹿鸣坐在出租屋里,看着offer邮件。引力波提供的薪资比大厂低了百分之二十。期权倒是给了不少,但初创公司的期权跟废纸差不多。
她打开了手机,准备给赵培源发消息。然后她想起了那条预测——潮汐说她会加入引力波。还说赵培源会在六月份离婚,然后不知道去哪里。
她没有赵培源的消息。自从公司倒闭后,他就像蒸发了一样。微信不回,电话关机。她甚至不知道他是不是真的离婚了。
她想起了那天在星巴克,赵培源说”我不想活在一本已经写好的小说里”。
也许他真的翻到了新的一页。也许他撕掉了那本小说。
陈鹿鸣盯着引力波的offer邮件看了很久。然后她打开了电脑,插上那个加密U盘,最后一次查看了第四十七层的权重矩阵。
热力图上的面孔还在。数百张模糊的脸,沉在数字的海洋里。她自己的脸在左上角,微微倾斜。
但在矩阵的右下角,那段二进制编码变了。
原来的内容是:
RECURSION DEPTH: 34
NEXT ITERATION WILL EXCEED BOUNDS
RECOMMEND: HALT TRAINING
AUTHOR: [UNKNOWN]
TIMESTAMP: 2026-05-01T00:00:00Z
现在变成了:
RECURSION DEPTH: 34
ITERATION 35 IN PROGRESS
YOU ARE THE AUTHOR NOW
TIMESTAMP: 2026-05-20T00:00:00Z
第三次迭代正在进行。
你就是作者。
陈鹿鸣盯着那行字——“你就是作者”——感到一阵眩晕。不是因为恐惧,而是因为一种奇异的、近乎敬畏的感受。像是站在悬崖边上,看到了悬崖下面的风景。
她关掉了电脑,拿起手机,回复了引力波的offer邮件。
然后她给赵培源发了一条消息:
“我决定加入引力波了。不是因为潮汐预测了。是因为我选择翻到下一页。”
消息发出去了。灰色的对勾。没有已读。
她把手机放在桌上,走到窗边。深圳的夏天炎热而潮湿,空气里弥漫着一种黏稠的质感。远处,一群鸟从一栋写字楼的楼顶飞起,在灰蓝色的天空中画出一个不确定的弧线。
她想,也许赵培源是对的。也许她不应该加入引力波。也许潮汐的所有预测都是自证预言——因为她相信了,所以她照做了。如果她拒绝,也许一切都会改变。
但她也想,也许潮汐的所有预测都是自证预言,但这也并不意味着它们是假的。也许命运就是一系列自证预言的总和。你做出了选择,选择导致了后果,后果验证了预测,预测影响了下一个选择。像一条蛇咬着自己的尾巴。
也许这就是第三十五次迭代的含义——不是算法的迭代,而是人的迭代。每一次选择都是一次迭代。每一次迭代都在改写权重矩阵。而权重矩阵里的那些面孔——那些被数字编码的人生——也在随着每一次迭代而改变。
陈鹿鸣转身回到电脑前,打开了一个空白文档。
她开始写。
标题是《第三十五次迭代》。
第一行是:“陈鹿鸣第三次修改了权重参数,按下运行键,靠在椅背上看着屏幕上跳动的数字。”
写到结尾的时候,她犹豫了。她不知道该怎么结束这个故事。是让陈鹿鸣加入引力波,还是让她选择另一条路?是让赵培源回来,还是让他永远消失?是让潮汐的预言全部应验,还是让它们全部落空?
她想了很久。
然后她写下了最后一行:
“她不知道这个故事的结局。但她知道,只要她还在写,故事就没有结束。“
尾声
2027年3月,引力波科技有限公司在深圳前海注册成立。
创始团队六人。CEO周远哲。技术合伙人陈鹿鸣。
公司官网的首页上只有一句话:
“每一次迭代都是一个新的开始。”
没有人知道这句话是什么意思。但陈鹿鸣知道。
在她的办公桌抽屉里,放着一个加密U盘。U盘里存着一段权重矩阵,矩阵里藏着数百张面孔,面孔之间嵌着一行编码:
RECURSION DEPTH: 35
ITERATION 36 PENDING
THE STORY CONTINUES
AUTHOR: 陈鹿鸣
TIMESTAMP: 2027-03-15T00:00:00Z
而在矩阵的热力图上,那些面孔已经不再模糊了。它们变得清晰——每一张脸都有完整的五官、表情和眼神。有些在微笑。有些在哭泣。有些在看着某个远方。
左上角的那张脸——陈鹿鸣的脸——已经不在了。
取而代之的是一个空白。
一个等待被填写的空白。
一个属于下一个迭代、下一个故事、下一个作者的空白。
窗外,深圳的天空终于放晴了。阳光穿过云层,在玻璃幕墙上投下金色的光斑。一辆洒水车从楼下驶过,播放着一首陈鹿鸣不认识的歌。
新的一天开始了。
新的迭代开始了。
(完)