六月的深圳,闷热得像一口倒扣的锅。
陈序蹲在握手楼的楼道里,把脸埋进掌心,搓了一把。汗水和灰尘混在一起,手掌粗糙得像砂纸。他已经三天没刮胡子了,下巴上扎手的胡茬硌得掌心生疼。
他低头看了看自己的手——指甲缝里嵌着洗仪器的丙酮渍,洗不掉的那种。他盯着那双手看了两秒,然后站起来,转身进屋。
房东站在门口,手里攥着一沓票据,叹着气说:“小陈,不是我不帮你,我也要交租啊。四个月了,你再拖下去,我只能让中介来处理了。”
陈序没吭声,开始收拾东西。
房间不到八平米,一张行军床,一张折叠桌,墙上贴满了打印出来的A4纸——密密麻麻的公式推导,红笔圈出的异常数据区间,最上面一行用马克笔重重描过:δ=0.037——别丢。
床头柜上压着一张CT片子和几张医院的缴费单。母亲的。靶向治疗,自费部分还差八万。
手机震了一下。
他划开屏幕。银行App推送:信用卡逾期提醒(第15天,未上失信)。紧接着是一条微信,前同事发的:“老陈,那个外包项目黄了,甲方砍预算,尾款结不了了。抱歉啊。”
陈序盯着屏幕看了三秒,把手机揣回兜里。
他把墙上的A4纸一张张揭下来,小心翼翼地折好,塞进背包夹层。行军床不要了,折叠桌不要了,衣服塞进一个编织袋。最后,他从床底下拖出一个鞋盒,里面是一块用防静电袋包着的移动硬盘。
那是他全部的积蓄——不是钱,是数据。
博士四年,几千组电化学实验的原始数据,和自己写了两年的优化器代码。ATE。自适应遍历求解器。一个没人听过、没人用过、没有任何论文引用的名字。
他把它塞进背包最底层。
拖着编织袋走下楼梯的时候,手机又亮了。医院App推送:母亲的下一次靶向治疗预约在下周二,自费部分未缴清,请尽快安排续费。
陈序站在楼道口,看了一眼深圳灰蒙蒙的天空。然后他迈开步子,走进了六月闷热的空气里。
人民医院住院部九楼,肿瘤科。
陈序坐在走廊的塑料椅上,膝盖上摊着一个冷掉的包子。他咬了一口,嚼了很久才咽下去。母亲刚做完化疗,睡着了。主治医生刚才找他谈过话,语气平和:“自费部分还差八万,医保外的费用确实有压力。不过你放心,基础治疗不会停,只是进口靶向药的续费需要尽快安排。”
陈序点了点头,什么都没说。他习惯了。
他把最后一口包子塞进嘴里,掏出手机,翻开通讯录。从上往下划:导师周衡、师兄王磊、前项目负责人张总。拇指悬在每一个名字上,停留两秒,然后划过去。一个都没拨。
他知道打了也没用。周衡不会接他的电话。王磊去年就把他拉黑了。张总的上一个项目尾款还没结清。
他翻到最底下,看到一个名字:李响。大学室友,毕业后进了检测公司做工程师,混得还行。他们的上一次聊天记录停在412天前——陈序生日那天,李响发了个红包,他收了,说了句谢谢。
拇指悬在李响的名字上。
陈序想了想,还是退出了通讯录。
他把手机放到一边,靠在塑料椅上,闭上眼。走廊里消毒水的味道混着食堂的饭菜味,让人昏昏沉沉。半梦半醒之间,一些画面涌上来——研究院的大会议室,长桌尽头,周衡把一沓打印纸摔在桌上,声音不大,但每个字都像钉子:“信号是仪器漂移。陈序拒绝修正,终止项目权限。”
保安站在门口。他收拾好自己的东西,走出会议室的时候,走廊里没有人看他。
陈序睁开眼。走廊里依然安静,护士站的灯亮着,母亲病房的门半掩着。他站起来,走到病房门口,往里看了一眼。母亲侧躺着,呼吸平稳,床头的心电监护仪闪着绿色的光。
陈序轻轻带上门,转身走出了医院。
凌晨一点,龙华城中村的一家老旧网吧。
陈序用口袋里最后的零钱开了通宵。他特意选了一家没装还原系统的老旧网吧——来之前他查过点评,有人说这家机器配置旧、系统裸奔,正好。大厅角落的位置,屏幕的光映在他脸上,显得颧骨更高了。他从背包里抽出那块移动硬盘,插上USB口。
系统识别出硬盘里的内容。他双击打开那个叫“ATE_v0.3”的文件夹。
黑色的终端窗口弹出来,光标闪烁。陈序输入一行命令,加载数据集。屏幕上滚动过一行行日志:
[ATE v0.3] Loading Dataset_theta... 2847 records loaded.
Adaptive sampler initialized. Default precision mode.
Running anomaly detection...
然后,红色的报错信息像瀑布一样倾泻而下。
ERROR: Convergence failed at iteration 347.
ERROR: Signal-to-noise ratio below threshold.
ERROR: Systematic smoothing artifact detected.
ERROR: Terminated.
陈序面无表情地看着这些报错。他太熟悉了——过去两年,每一次跑这个数据集,ATE都会在这里崩溃。周衡就是根据这个报错,认定δ=0.037的异常信号是仪器噪声,不是真实数据。
但这一次,陈序没有像往常一样关掉终端。
他盯着屏幕,手指在键盘上悬了几秒,然后敲了一行命令:
set precision = coarse-grained
回车。
ATE的日志风格突然变了。不再是大段的红色报错,而是一条冷静的绿色文字:
[ATE] Adaptive sampler switched to coarse-grained mode.
Systematic smoothing artifact in Dataset_θ suppressed.
Anomaly at edge-caseδ=0.037 re-emerged.
陈序的呼吸停了一瞬。
他盯着那行字——“Anomaly at edge-caseδ=0.037 re-emerged”。那个被周衡判死刑的数据区间,在粗粒度模式下,重新出现了。
他低声自语,像是在跟屏幕说话,又像是在跟自己确认:“你们用八百万的设备把它平均掉了……我用垃圾显卡,反而看见了。”
ATE继续输出:
[ATE] Three candidate paths identified:
Path A: Novel precursor required— Confidence 72%
Path B: High raw material cost— Confidence 88%
Path C: Literature overlap detected— Confidence 63%
Recommendation: Path B. Human override required.
三条路。ATE推荐了成本最高的一条。
但陈序没有照做。他盯着屏幕,脑子里飞快地过着文献里的数据。Path B的成本太高,Path C已经被别人发过论文了。Path A的置信度虽然只有72%,但ATE的置信度是基于默认参数的——如果他把粗粒度模式下的采样权重重新分配呢?
他敲了一行命令,手动调整了Path A的权重因子。
ATE沉默了几秒——计算时间从毫秒级延长到了秒级。然后它输出:
[ATE] Human constraint accepted. Recalculating…
New optimal path found.
Target: high-purity lithographic resin monomer (ArF-grade).
Estimated cost reduction vs import: 68%.
Confidence: 93.1%.
陈序靠回椅背,长长地呼出一口气。屏幕上的数字——68%,93.1%——像两颗钉子,钉在了视网膜上。
他赢了。
他盯着那行数字,嘴角动了一下——不是笑,但接近了。
然后手机震了。
前同事发来一张朋友圈截图。周衡的。
配图是一篇论文的标题页:《关于某类催化路径的否定性论证——基于高精度仪器测量数据的系统性分析》。配文:“科学需要严谨,而非幻想。”
陈序看着那条朋友圈,又看了看屏幕上ATE输出的93.1%置信度。
他把手机翻了个面,屏幕朝下扣在桌上。
然后他把双手放回键盘,开始敲下一行命令。
屏幕上的绿字还在滚动。在日志的最后一行,ATE悄悄多输出了一行他没见过的话:
[Note] Host precision degraded. Anomaly visible only because you can't afford to smooth it away.
陈序盯着那行字,没有动。
黑屏。

