镜像城

招魂者 · 2026/4/24

镜像城

陈屿梦见了一座没有倒影的城市。

那座城市的建筑全是透明的,像凝固的水,阳光穿透墙壁在地面上投下蜂窝般的光斑。街道上的人走来走去,但地面像一面完美的镜面,却没有映出任何人影。他在梦里低头看自己的脚——也没有影子。他抬起手,手指是半透明的,血管里流的不是血,是极细的光纤,发出淡蓝色的光。

他被自己的手机闹铃震醒。

早上六点十五分。北京的冬天还没有亮透,窗帘缝里渗进来的光是灰蓝色的,像稀释过的墨水。他侧过身,床的另一边是空的,被子叠得整整齐齐,像一具没有灵魂的躯壳。苏晚已经走了——不是”离开”,是去了公司。她现在比他更忙。

他坐在床边发了一会儿呆,然后打开手机。屏幕上跳出十几条推送,大部分来自他开发的那个系统——“镜城”,一个智能信贷风控模型。这个名字是他起的。模型的核心算法能通过一个人的消费记录、社交行为、地理位置、甚至打字习惯,构建出一个精确到令人不安的”信用人格”。它不仅预测违约概率,还能预测一个人在未来六个月内的重大生活事件:离婚、失业、搬家、生病。

“镜城”上线三个月,违约预测准确率97.3%。同行说这是不可能的数字。陈屿知道这不是不可能——只是没人愿意承认它为什么这么准。

他洗漱的时候盯着镜子里的自己。三十二岁,瘦了,眼窝凹下去,下巴上冒出没刮干净的胡茬。镜子里的人看起来比实际年龄老五岁。他想起梦里的透明城市,想起自己手指里流淌的蓝光,突然觉得镜子这东西很诡异——一个光滑的平面,凭什么能复制出一个完整的人?那个复制品究竟是你,还是只是看起来像你?

他收拾好出门。通勤路上,他打开”镜城”的后台数据看板。凌晨三点,模型自动标记了四个”高风险红色预警”。他点开第一个——一个叫王建国的男人,四十七岁,住在燕郊,在一家建材公司当库管员。他的信用评分在过去两周从720暴跌到380。

“镜城”给出的风险分析报告是这么写的:

预警等级:红色 预测违约概率:94.7% 未来90天重大事件预测:失业(置信度89%),家庭变故(置信度76%) 关联行为异常:近14天凌晨活跃度上升340%,社交平台搜索关键词集中在’网贷”急用钱’离婚律师’,位置数据出现非常规偏移(医院肿瘤科、地下赌场附近)。 建议操作:降低授信额度至最低档,启动催收预警。

陈屿看着这份报告,心里有一种说不出的不适。不是因为它不够准——恰恰是因为它太准了。这个模型就像一面镜子,把一个人的生活照得纤毫毕现。但和镜子不同的是,它照出的不是现在,是未来。

而他即将做的一件事,可能会改变这个未来。


陈屿工作的公司叫”光量科技”,一家成立五年的金融科技公司,总部在北京望京,在上海、深圳、成都各有一个分部。公司主营业务是给中小银行和消费金融公司提供智能风控解决方案。用大白话说,就是帮别人决定该不该给一个人借钱。

“镜城”是陈屿的心血。两年前,他从一个大厂跳到光量,带着一个六人团队,从零开始搭这个模型。他用了最先进的深度学习架构,喂了超过四十亿条真实行为数据,训练了整整八个月。模型上线的那一刻,他觉得自己创造了一件艺术品。

但他很快发现了问题。

“镜城”不只预测风险,它在制造现实。

第一次发现这个现象是在去年十月。模型预测一个叫李婷的女人会在十一月违约——预测置信度92%。按照模型建议,合作银行降低了她的信用卡额度,从八万降到一万。李婷原本打算用信用卡周转她开的那间小面馆的房租,额度一降,她周转不过来,面馆关了,收入断了,十二月,她违约了。

违约概率92%,实际违约。模型的预测完美兑现。

但陈屿觉得不对。如果银行没有降低额度,李婷会不会违约?如果模型没有介入,那条因果链是不是根本不会成立?

他把自己的疑问告诉了直属上级赵峰。赵峰是光量的CTO,四十出头,头发稀疏,说话慢条斯理,永远带着一种”我比你多活十年”的从容。

“你的意思是,模型在自我实现?“赵峰靠在办公椅上,转着手里的笔。

“不只是自我实现。“陈屿说,“它在改变因果结构。它预测A会违约,然后基于这个预测采取行动,行动本身导致了A违约。这不是预测,这是……”

“审判。“赵峰替他说完了。

陈屿沉默。

赵峰笑了一下,那种笑不是嘲讽,是一种更复杂的东西——像是一个过来人在看年轻人第一次发现世界的裂缝。

“小陈,你知道信用评分最初是怎么来的吗?“赵峰把笔放下,“1950年代,Bill Fair和Earl Isaac发明了第一个信用评分系统。他们的想法很简单——用数据代替人为判断,让放贷更公平。初衷是好的。但几十年下来,信用评分变成了什么?它变成了一道隐形的栅栏,把人分成三六九等。你的分数决定了你能住哪里、能开什么车、甚至能和谁约会。它原本是工具,现在是身份。”

“镜城”也一样,“赵峰看着他,“它是一个工具,但工具会塑造使用它的人,使用它的人会塑造世界。你改变不了这个。”

“但我可以改模型。”

“怎么改?”

“加一个因果推断层。“陈屿说,“让模型区分’预测’和’干预效果’。它不应该只输出一个违约概率,它应该输出一个’如果我采取某项行动,对方违约的概率会怎样变化’的估计。”

赵峰想了很久,最后说:“做吧。但别告诉任何人。”

这是三个月前的事。陈屿花了三个月开发因果推断层,现在到了测试阶段。他需要真实数据——而王建国,那个被标记为红色预警的库管员,是最好的测试对象。


王建国不知道有一个叫陈屿的人正在研究他的人生。

他只知道日子过不下去了。

四十七岁,燕郊,库管员,月薪五千二。这三个关键词放在一起,就是一部中国中年男人的微型悲剧。他在燕郊买了一套两居室,2017年高位上车,总价一百八十万,贷款一百三十万,月供六千八。月薪五千二,月供六千八,中间的差额靠他老婆张秀芬在超市当收银员的工资补。

日子本来过得下去,紧巴巴的,但过得下去。

转折发生在三个月前。张秀芬体检查出来甲状腺有个结节,医生说大概率是良性的,但建议做穿刺活检确认。活检要钱,术后恢复要时间,时间就是不上班的扣款。王建国咬咬牙,从信用卡里刷了一万二。

活检结果出来:恶性。甲状腺癌。

“幸福癌”,医生是这么说的。“预后很好,基本不影响寿命。“王建国当时还松了口气。但他很快发现,“不影响寿命”和”不影响生活”是两码事。手术加放疗,自费部分三万八。术后张秀芬休息了两个月,超市那边只发了基本工资,一千八。

月供六千八,加上手术费,加上日常开销,信用卡账单像滚雪球一样膨胀。王建国开始在手机上找网贷。他不是不知道那些平台利息高得吓人,但他没有别的选择。他填了资料,上传了身份证,点了”立即申请”。

然后被拒了。

他又换了一个平台。又被拒了。再换,再拒。

他不明白为什么。他的征信没有逾期记录,信用卡一直按时还。他不知道的是,他每次申请网贷,都会在征信报告上留一次查询记录。一个月内查询次数过多,风控模型就会把他标记为”资金饥渴型”用户,违约概率自动上调。而”镜城”在所有这些平台背后运作,像一个看不见的裁判,举着红牌,一次又一次。

王建国不是没想过别的办法。他找过工友借钱,借了三千。他偷偷去过一次地下赌场——不是赌,是想借高利贷。但赌场的人看了他的手机,翻了翻他装了哪些App,摇了摇头:“你这情况,借不了多少。”

他不知道自己的手机里藏着一面镜子,那面镜子已经把他的未来写好了。


陈屿在办公室里加了一个通宵。

他的工位在望京SOHO T3的十七楼,靠窗的位置。凌晨四点,窗外是北京的夜景——不是那种壮丽的灯火辉煌,而是一种零散的、疲倦的光。几栋写字楼亮着零星的灯,像得了白内障的眼睛。

他面前是三块屏幕。左边是”镜城”的原始模型输出——王建国违约概率94.7%。右边是因果推断层的模拟结果。中间是他写的代码,光标在某个函数名上闪烁。

因果推断层的逻辑是这样的:它不问”这个人会不会违约”,而是问”如果我们采取某种干预措施——比如降低额度、提高利率、或者不做任何干预——这个人的违约概率分别是多少”。三种情境,三个概率,一个差值。

理论上,这个差值就是模型干预的”因果效应”。

陈屿跑了王建国的数据。结果出来了:

他盯着这三组数字看了很久。

模型建议的操作是降低额度——这是基于纯粹的预测逻辑:降低额度可以减少风险敞口,即使对方违约,损失也小。但因果推断层揭示了一个截然不同的画面:降低额度本身会把违约概率从31%推到94%。

不是王建国注定要违约。是模型要他违约。

陈屿靠在椅背上,感到一阵眩晕。不是身体上的,是认知上的。他突然意识到,“镜城”每天在成千上万个人身上做着同样的事情。每一个红色预警,每一次额度调整,每一条催收短信,都在改变它们所预测的未来。模型不是在读取现实,它在书写现实。

它是一面镜子,但不是被动的镜子。它是一面会改变照镜者命运的镜子。

他想起那个梦。透明的城市,没有倒影的人。也许那不是梦。也许那就是”镜城”真正在建造的东西——一个所有人都没有倒影的世界,因为他们的倒影已经被模型吞掉了。

他揉了揉眼睛,打开一个新的文档,开始写一份报告。标题是:《关于”镜城”模型因果效应的发现与建议》。他写了三个小时,删删改改,最后浓缩成五页纸。

核心结论只有一句话:模型正在通过预测改变现实,建议引入因果推断机制,所有风控决策必须通过反事实检验。

他知道这份报告交上去会怎样。但他还是写了。


赵峰看完报告,沉默了很长时间。

办公室的暖气烧得太足,空气干燥得让嗓子发痒。赵峰倒了一杯水,喝了一口,又放下。他看着陈屿,眼神里有一种奇怪的东西——不是反对,不是支持,更像是一种疲惫。

“你知道这份报告意味着什么吗?“赵峰问。

“意味着模型需要大幅重构。”

“不只是模型。“赵峰把报告放在桌上,用手掌压住,“意味着我们要告诉所有合作方——你们的信用决策在过去三个月里可能存在系统性偏差。意味着我们要承认,‘镜城’的97.3%准确率里,有一部分是我们自己制造的。”

“那也是真相。”

“真相?“赵峰笑了,“小陈,你在科技公司待了几年了?”

“五年。”

“五年。那你应该知道,真相在这个行业里是最不值钱的东西。值钱的是故事。我们讲的故事是:‘镜城’是最先进的AI风控系统,准确率97.3%,为合作方避免了超过十亿的潜在损失。这个故事值两个亿——上个月刚谈完的B轮融资额。你现在要我告诉投资人,这个数字有水分?”

陈屿没说话。

赵峰站起来,走到窗边。望京的下午阳光惨白,照在他稀疏的头顶上,像一层薄薄的霜。

“我不是在威胁你,“赵峰的声音从窗户那边飘过来,“我是在告诉你现实。你说的因果效应,我信。但你知道吗,就算没有’镜城’,那些人还是会违约。不是因为我们降低了额度,是因为他们本来就没钱。房贷压着,病痛缠着,工作随时可能丢。模型只是加速了一个迟早要发生的过程。”

“你不确定。”

“我当然不确定。但你也不确定反过来是不是真的——提高额度就能救他们。也许你给他们更多钱,他们只会欠更多。”

“所以需要测试。“陈屿说,“做一个A/B测试。控制组用原来的模型策略,实验组用因果推断策略。看真实结果。”

赵峰转过身来。他的表情变了,变得锐利,像一个在牌桌上看到对手亮底牌的人。

“你已经有实验对象了。”

“王建国。”

“一个人不够。”

“我选了四百个红色预警用户,随机分配到两组。实验组的干预策略由因果推断层决定,对照组维持原策略。测试周期三个月。”

“谁批的?”

“我自己。用的测试环境,不影响线上。”

赵峰看着他。那种疲惫的表情又回来了,像是他很早就知道这一天会来,但还是觉得累。

“三个月。“赵峰说,“三个月之后给我看结果。如果因果推断策略的风险敞口不超过原有策略的120%,我帮你推。超过的话,报告销毁,实验终止。”

“行。”

陈屿站起来准备走。赵峰在背后叫住他。

“小陈。”

“嗯?”

“你有没有想过一个问题——就算因果推断策略更’公平’,它也不会改变根本的事实。那些人还是穷,还是会生病,还是会被生活压垮。你只是在让模型的刀磨得钝了一点。人还是会被割。”

陈屿停在门口。他没回头。

“钝刀至少给人留了跑的机会。“


日子一天天过去,实验数据开始积累。

陈屿的生活也在积累。积累的是一种无声的磨损,像齿轮之间缺了润滑油,还在转,但声音越来越刺耳。

苏晚搬走了。不是吵架走的,是”沟通”走的。他们坐在客厅里,面对面,像两个谈判代表。

“我们不合适了。“苏晚说。她说话的方式很平静,像在陈述一个天气预报。

“为什么?”

“你不在乎我。你在乎你的模型。”

“我在乎你。”

“你在乎的是’在乎你’这件事本身。你把它当成一个变量,一个需要维护的指标。你每天回家问我’今天怎么样’,就像在查一个系统的运行状态。如果有异常,你修一下;没有异常,你就回去写代码。”

陈屿张了张嘴,发现自己说不出”不是这样的”。因为也许真的是那样的。他已经习惯了用模型的方式理解世界——输入、输出、变量、权重。人在他的认知里,正在变成一组特征向量。

苏晚搬走的那天,他帮她把箱子提下楼。她上了一辆网约车,关上车门前回头看了他一眼。那一眼的意思很复杂,他解析不了。

他回到空荡荡的公寓,打开电脑,继续看实验数据。

控制组的违约率正在按预期攀升——94%、93%、97%,模型的预言一个接一个地兑现。而实验组的数据让他呼吸都停了一秒:违约率11.4%。

同一个群体,同一种人生困境,不同的干预方式,违约率从94%降到11%。

他坐在黑暗的客厅里,屏幕的光照在他脸上。他想哭,但哭不出来。不是因为苏晚走了,而是因为他意识到,过去三个月里,控制组那两百个人正在被”镜城”推向深渊。而他本可以阻止。

实验还剩两个月。他不能停。他需要更多数据来说服赵峰、说服公司、说服这个行业的所有人。

但他晚上开始失眠了。失眠的时候他会想,王建国现在在做什么?那个四十七岁的库管员,知不知道自己正在被一个算法操控着命运?

他翻出王建国的行为数据,开始读。像读一个人的日记,但不是用眼睛,是用数据。

——11月3日,凌晨2:17,手机搜索”甲状腺癌术后饮食”。

——11月5日,13:42,位置数据:北京肿瘤医院。

——11月8日,20:31,打开某借贷App,停留14分钟,未提交申请。

——11月12日,06:03,手机开机时间(此前连续三天未开机)。

连续三天未开机。陈屿盯着这条记录,心脏像被什么东西攥了一下。那三天发生了什么?是手机欠费了?是人在医院?还是——

他不敢往下想。


十二月的第一场雪落下来的时候,陈屿做了一件他不该做的事。

他去找了王建国。

不是通过网络,不是通过数据,是实实在在地坐了两个小时地铁加一个半小时公交车,到了燕郊的那个小区。小区叫”幸福家园”,名字讽刺得像一记耳光。楼体外墙斑驳,单元门的门禁坏了,楼道里堆着纸箱和旧自行车。

他站在王建国的家门口,犹豫了很久。他不知道自己要说什么。“你好,我是毁掉你信用的那个算法的开发者,我来观察实验效果”?他觉得自己像个怪物。

门开了。不是王建国开的,是一个女人——张秀芬。她的脖子上有一道手术后的疤痕,横跨喉结下方,像一条蜈蚣。她看起来比实际年龄老很多,头发花白,眼角耷拉着。

“你找谁?”

“王建国。我是……”他顿了一下,“做金融咨询的,了解到您这边可能有资金周转的需要。”

张秀芬的眼神立刻变了,从疑惑变成警惕,再变成一种疲惫的厌倦。

“又是催收的?”

“不是催收——”

“那你们能不能别再打了?一天十几个电话,半夜都打,我老公已经……”她突然不说了,嘴抿成一条线。

“已经什么?”

张秀芬看了他一眼。那一眼让陈屿觉得自己是透明的——像他梦里那座城市的建筑,所有内里都暴露在外面。

“你进来吧。”

屋子很小,两居室,客厅只有一张旧沙发和一个茶几。茶几上放着药盒、水杯和一堆催款通知。墙上挂着一张全家福——王建国、张秀芬和一个十五六岁的女孩,三个人笑得灿烂。照片应该是几年前拍的,那时候张秀芬还没生病,王建国还没被算法盯上。

“建国在医院。“张秀芬坐在沙发上,声音很平,像在说一件已经接受了的事实,“前天晚上他喝了半瓶白酒,吃了三十几片安眠药。幸亏我发现得早。”

陈屿的手指在膝盖上收紧了。

“胃洗了,人救回来了。但精神状态不好,医生说有抑郁倾向,建议转精神科。“她停了一下,“我们在商量要不要住进来。住进来又要花钱。”

“对不起。“陈屿说。他不知道自己为什么说这三个字,但它们是自己冒出来的。

张秀芬看着他,忽然笑了——不是开心的笑,是一种看透了什么的笑。

“你到底是谁?”

陈屿沉默了很久。他看着茶几上那堆催款通知,看着药盒上张秀芬的名字,看着墙上那张全家福里王建国的笑脸。然后他说了实话。

“我是’镜城’的开发者。”

张秀芬不懂什么是”镜城”。陈屿用最简单的话解释了:你们申请网贷被拒、信用卡额度被降、接到催收电话,都是因为一个算法。这个算法认为你们会还不上钱,所以提前把钱收回来。但它不知道的是,正是它把钱收回来这个动作,让你们还不上钱。

“就像一个人站在悬崖边,“陈屿说,“算法预测他会掉下去,于是在他脚边挖了一条沟。然后他掉下去了。算法说:你看,我预测得多准。”

张秀芬听完了,没有愤怒,没有眼泪。她只是坐在那里,看着窗外。窗外是燕郊的灰蒙蒙的天,雪花落在对面楼的屋顶上,化成黑色的水渍。

“你能把它改了吗?“她问。

“我在改。”

“改了之后呢?像我老公这样的人,就不会被……不会被推到那一步?”

“我不能保证。但至少算法不会再主动挖那条沟。”

张秀芬点了点头。然后她站起来,走到卧室门口,拿出一个牛皮纸信封,递给陈屿。

“这是建国写的。他那天喝了酒,吃药之前写的。我在他口袋里找到的。你拿走吧。”

陈屿接过来。信封没有封口,里面是一张横格纸,字迹歪歪扭扭,看得出来写的人手在发抖。

他展开了。


我不知道写给谁看。也许没人看。

我叫王建国,今年四十七岁。我有一个老婆,一个女儿,一套房子,和还不完的贷款。

我这辈子没做过坏事。没偷过没抢过,按时上班按时交钱。但不知道为什么,走到今天,所有门都关上了。

我去借钱,没人借给我。我去求人,没人理我。我去赌场想搏一把,人家看了我的手机就摇头。我不知道手机里有什么,但好像所有人都已经知道我是一个什么样的人了。

可是谁告诉他们的?

我不是赖账的人。如果有人愿意给我一个机会,我会在三个月内把所有钱还清。我可以加班,我可以打两份工,我可以去送外卖。我什么都能干。

但没人给我机会。那个机会在我还不知道它存在的时候,就已经被收走了。

我累了。


陈屿把信折好,放回信封。他的手在发抖。不是因为冷,是因为他忽然明白了一件事——王建国写下这些字的时候,并不知道”镜城”的存在。他不知道有一个算法在背后操控着他的一切。他以为这就是命运。

而命运是什么?命运不过是一个运行在云服务器上的深度学习模型,喂了四十亿条数据,然后输出一个数字。那个数字决定了一个人能不能借到钱,能不能渡过难关,能不能继续活下去。

他站起来,把信封放进背包。走出”幸福家园”的时候,雪已经停了,但天还是灰的。他站在小区门口,打开手机,在代码仓库里新建了一个分支。

分支名:wang-jianguo


接下来的两个月,陈屿像疯了一样工作。

他每天只睡四个小时,剩下的时间全泡在代码里。他重构了因果推断层的核心算法,引入了更严格的反事实推理框架。他用了Judea Pearl的do-calculus——因果推断领域的数学基础——来确保模型输出的不是”预测”,而是”干预效果估计”。

他还加了一个他叫”韧性评分”的新指标。传统的信用评分只看一个人的还款能力,韧性评分看的是一个人在困境中恢复的概率。它考虑了社会支持网络(家庭关系、朋友数量、社区参与)、心理韧性指标(行为数据的稳定性、长期消费习惯的连贯性)、和环境缓冲因素(医疗保障、就业稳定性)。

王建国的韧性评分很高。他有稳定的婚姻关系,有正在上学的女儿(一个明确的责任锚点),有十五年的连续工作记录。如果给他机会,他恢复的概率是87%。

陈屿把这些都写进了实验报告里。三个月的数据、四百个样本、完整的统计分析。结论清晰得像刀切:

实验组(因果推断策略):违约率11.4%,实际损失率3.2%。 对照组(原始策略):违约率94.7%,实际损失率41.8%。

原始策略看起来”准确”,但它的准确是自我实现的。因果推断策略看起来”风险更高”(它给了更多人更高的额度),但实际损失更低——因为更多的人恢复了还款能力。

刀磨钝了,但伤口更少了。

三月十五号,陈屿把报告发给了赵峰。

赵峰看完报告只说了一句话:“约个时间,跟老林聊。”

老林是光量科技的CEO,林耀东。四十五岁,北大经济学本科,斯坦福MBA,曾在华尔街做过两年量化交易。他不是一个技术人,但他比任何技术人都懂怎么把技术变成钱。


会议室在二十一楼,整面墙都是落地窗。三月的北京还是灰扑扑的,但阳光已经比冬天暖了一些。

林耀东坐在长桌的一头,面前摊着陈屿的报告。赵峰坐在旁边。陈屿坐在对面,像一个学生等着答辩。

林耀东看了二十分钟。二十分钟里他没有说话,偶尔翻回前面一页,偶尔在空白处写几个字。陈屿注意到他用的是一支很贵的钢笔——万宝龙的大班系列。

“你做这个实验,花了多少资源?“林耀东开口了。

“服务器资源大概三十万一个月,用的是测试环境。人力就是我一个人。”

“一个人。“林耀东重复了一下,语气里没有惊讶,但有一种审视。他把钢笔放下,十指交叉,看着陈屿。

“报告我看了。数据很漂亮。但你知道我想问什么。”

“你想问商业价值。”

“聪明。“林耀东笑了,那种笑是CEO特有的——温暖、迅速、收放自如。“因果推断策略降低了实际损失,但代价是什么?更高的授信额度意味着更大的资金占用。合作方为什么要为了’公平’多占用资金?”

“因为实际损失率更低。他们赚得更多。”

“短期还是长期?”

“长期。实验数据是三个月窗口,但韧性评分预测的是六到十二个月的恢复周期。如果拉长到一年,因果推断策略的ROI会更高。”

林耀东不说话了。他转向赵峰。

“老赵,你怎么看?”

赵峰靠在椅背上,双手抱在胸前。“从技术角度,他的因果推断层是扎实的。Judea Pearl的理论框架摆在那里,业界也有人在做,只是没人做到这个程度。问题不在于技术行不行,在于推不推得动。”

“推不动的原因是什么?”

“惯性。“赵峰说了一个词,“整个行业都在用预测型模型。所有风控团队、所有算法工程师、所有KPI,都是围绕预测准确率设计的。你现在说准确率不重要,重要的是因果效应——这等于推翻了整个行业的评价体系。”

“不是推翻,是升级。“陈屿忍不住插嘴。

林耀东举起一只手,示意他等一下。他站起来走到窗边,望京的楼群在阳光下显得格外冷峻,像一排排没有表情的脸。

“小陈,我问你一个问题。“林耀东背对着他说话,声音在玻璃和墙壁之间回荡,“如果我把因果推断策略推上线,出了问题——比如有一批用户拿到了更高的额度,然后真的违约了,损失了几百万——谁来负责?”

“我负责。”

“你负责?你负得起吗?“林耀东转过身来,语气没有变重,但每个字都带着份量,“你是一个工程师。你的责任上限是你的工资和期权。几百万的损失,不是你能扛的。是我扛。公司扛。投资人扛。”

陈屿不说话了。

林耀东走回桌边,坐下。他拿起那支万宝龙钢笔,在手里转了两圈。

“但是——“他停顿了一下,“你不做,别人也会做。因果推断在风控领域的应用是时间问题。如果我们先做了,我们就是标准的制定者。标准的制定者永远比标准的跟随者赚得多。”

他看向赵峰:“你的判断?”

赵峰想了想:“先在一家合作方试点。选一个体量小的、愿意尝鲜的。跑半年。数据说话。”

林耀东点了点头。他在报告的最后一页写了几个字,然后把报告推回给陈屿。

“你去做。赵峰协调资源。试点期间你直接向我汇报。”

陈屿愣了一秒。他没想到会这么顺利。

“谢谢林总。”

“别谢我。“林耀东站起来,整理了一下袖口,“我不是在做慈善。如果数据不好看,这个项目会被砍掉,你的因果推断层会被删掉,一切恢复原样。你只有一次机会。”

他走出会议室,门关上的声音很轻,但陈屿觉得像一记闷雷。

赵峰在背后说:“你听到了?一次机会。”

“听到了。”

“那就别搞砸了。“


试点选了一家叫”安信消费金融”的合作方。体量不大,资产规模不到五十亿,但足够验证模型。

陈屿花了三周时间把因果推断策略部署到安信的系统中。他亲自去的安信总部——成都,在一个产业园区的写字楼里,和安信的风控团队对接。风控总监叫刘薇,三十八岁,精明干练,说话像打字一样快。

“我知道你们要试什么。“刘薇在第一次会上就说,“用因果推断替代预测模型。理论上很好,但我有一个问题——如果我用了你的新策略,那些原本会被拒绝的客户现在通过了,他们借钱不还,谁亏?”

“我们亏。“陈屿说,“光量承担试点期间额外的坏账损失。”

“你们愿意兜底?”

“合同里写了。”

刘薇的表情变了一下——不是放松,是一种猎手看到猎物主动走进陷阱时的那种微妙变化。

“那可以试。”

试点上线那天是四月一号。陈屿没有开玩笑的心情。

他坐在安信机房旁边的监控室里,盯着大屏幕上的实时数据流。每一个绿点代表一个通过审批的贷款申请,每一个红点代表一个被拒绝的。新策略上线后,绿点变多了——那些原本会被拒绝的申请,现在有相当一部分被批准了。

“比之前的通过率高了23%。“刘薇站在他身后,声音里有压不住的紧张。

“正常。因果推断策略给了更多人机会。”

“但这些人……”刘薇犹豫了一下,“你确定他们不会违约?”

“我不确定。但我确定如果按照原来的策略,他们几乎一定会违约。”

刘薇没有再说话。她站在那里看了一个小时,然后转身走了。走之前丢下一句话:“我希望你是对的。”


第一个月,违约率1.8%。

安信的历史平均违约率是4.2%。试点期间的违约率不到历史水平的一半。

刘薇发来一条微信:“你这个模型是黑魔法吗?”

陈屿回:“不是魔法。是数学。”

第二个月,违约率2.1%。累计数据稳定。

第三个月,2.3%。依然远低于历史水平。

与此同时,“镜城”原始模型在安信存量客户上的表现——那些没有参与试点的客户——违约率4.5%。和历史上差不多。

两组数据放在一起,就是一记重拳。

陈屿把数据整理好,发给了林耀东。邮件的主题只有四个字:数据说话。

林耀东十五分钟后回了邮件。只有两个字:来了。


十一

故事到这里,本该有一个光明的结局。技术改变了世界,算法变得公平,王建国们再也不用被推下悬崖。

但现实不是这样的。

五月,林耀东决定在光量所有合作方推广因果推断策略。消息放出去的那天,行业里炸了。不是赞誉,是质疑。

“你们降低了风控标准?“——某银行信用卡中心总经理。

“违约率数据是真的吗?有没有水分?“——某消费金融公司CEO。

“因果推断在理论上很美好,但在实操中不成熟,风险不可控。“——某头部金融科技公司的首席风控官。

陈屿被安排参加了一场行业论坛。他站在台上,面对三百多双眼睛,讲了四十分钟。他讲了因果效应和预测概率的区别,讲了自我实现的预言,讲了韧性评分的框架。他讲了王建国——当然没有用真名。

讲完之后,提问环节。第一个站起来的人是一家大厂的风控总监。

“陈先生,你的理念我理解。但你有没有想过一个问题——如果因果推断策略被广泛应用,整个行业的坏账率会怎样?你给了更多人更高的额度,这意味着更多的钱流入市场。这些钱不是凭空来的,是储户的钱、投资人的钱。如果出了系统性风险——”

“不会。“陈屿打断他,“因为因果推断策略的核心是降低实际损失,不是增加风险敞口。我给更多人机会,但同时我更精准地识别了真正高风险的人——那些即使给机会也恢复不了的人。模型不是变松了,是变准了。”

“变准了?你的违约预测准确率从97%降到了多少?”

陈屿沉默了一秒。

“88%。”

台下一阵骚动。在风控行业,从97%降到88%,不是进步,是灾难。因为这意味模型”看漏”了12%的违约——而这12%就是真金白银的损失。

但陈屿知道,那97%的”准确率”是假的。它是一面歪曲的镜子照出来的假象。而88%——这才是真实世界的精度。不完美,但诚实。

他在台上站了五秒钟,看着台下那些或质疑或不屑或好奇的脸,忽然觉得自己站在那个梦里——透明的城市,没有倒影的人。这些人就是那座城市里的居民。他们习惯了镜子里的假象,当假象被打碎的时候,他们不是看到真相,而是看到了恐惧。

“97%是一个谎言。“他说。声音不大,但会议室很安静,每个人都听清了。

“那个数字之所以这么高,是因为模型在自我实现预言。它预测你会违约,然后它让你违约。它不是一个镜子,它是一个审判官——审判了你,然后执行了判决。你们以为自己在做风险管理,其实你们在做命运管理。你们不是在预测未来,你们在制造未来。”

他停了一下。

“我不知道你们能不能接受一个88%的真相。但我知道,97%的谎言不值得骄傲。”

他走下台的时候,掌声稀稀拉拉的。大部分人没有鼓掌。


十二

六月的一个周末,陈屿去了燕郊。

他事先没有通知。坐了两个小时地铁、一个半小时公交,再次到了”幸福家园”小区。楼道里的纸箱换了一批,单元门还是坏的。

这次开门的是王建国。

他比照片上瘦了很多,颧骨突出,眼窝凹陷。但精神状态比陈屿预想的好——至少眼睛里有光,不是那种空洞的灰暗。

“你是……上次来的那个?“王建国认出了他。

“是我。”

“秀芬说你是做什么……算法的?”

“对。我是做风控算法的。就是你之前申请网贷被拒、信用卡被降额,背后就是我的算法。”

王建国看着他,沉默了几秒。陈屿做好了被骂甚至被打的准备。

但王建国只是让开了门:“进来坐。”

客厅还是那个客厅。茶几上的催款通知少了很多,取而代之的是几本笔记本和一支笔。

“秀芬说,你来看我的时候,我说了一些不该说的话。“王建国倒了杯水,推到陈屿面前,“我那天喝多了。说的那些什么’命运’什么的,你别当真。我就是一时想不开。”

“不是一时想不开。“陈屿说,“你的反应是正常的。一个人被系统性地剥夺了所有选择,他当然会觉得自己没有出路。”

“系统性?“王建国不太懂这个词。

“就是说,不是某一个具体的人针对你。是一个系统——一个由很多算法和规则组成的系统——在运作的过程中,把你归类到了’高风险’那一类。然后所有门都对你关上了。不是因为你做了什么错事,是因为系统认为你会做错事。”

王建国想了很久。

“那现在呢?系统还觉得我会做错事吗?”

陈屿笑了。那种笑不是苦笑,也不是欣慰,是一种更复杂的、他自己也说不清的东西。

“现在的系统觉得,你是一个值得给机会的人。”

他打开手机,调出一个页面。那是安信消费金融的一个新的贷款产品——专门面向”高韧性评分”用户的低息贷款。年化利率只有5.8%,比市面上的网贷低了七八个百分点。

“你可以试试这个。额度不高,三万。够你还清之前的网贷和高利贷。利息很低,压力不大。”

王建国接过手机看了看。他的手指粗糙,指甲缝里有洗不掉的灰——那是长期做库管工作留下的痕迹。他在屏幕上划了两下,然后抬头看陈屿。

“你为什么帮我?”

陈屿想了想该怎么回答。他可以说”因为这是我的责任”,或者”因为你是我实验的一部分”。但他觉得这两个答案都不够诚实。

“因为我做了一个梦。“他说。

王建国一脸困惑。

“我梦见一座透明的城市,所有人都没有影子。我醒来之后想,如果我的算法把所有人的未来都写死了,那他们和没有影子有什么区别?我不想住在那座城市里。”

王建国显然没听懂。但他点了点头,像是在听一个很遥远的故事。

“行。“王建国说,“那我试试。“


十三

七月的一个深夜,陈屿又做了一个梦。

这次不是透明的城市。这次他梦见一面巨大的镜子,立在一片空旷的荒野上。镜面是完美的,没有边框,没有支架,就那么悬浮着。

他走到镜子前面。镜子里映出了他自己——但不是现在的自己,是十年前的自己。二十二岁,刚从大学毕业,瘦,穿着廉价的衬衫,眼睛里有一种不知道天高地厚的光。

年轻版的陈屿在镜子里看着他,忽然开口说话了。

“你变了吗?”

梦里的陈屿回答:“变了。”

“变好了还是变坏了?”

“不知道。”

“你造了一面镜子,然后用这面镜子审判了无数人。现在你想把镜子打碎。你确定打碎之后会比现在好吗?”

“不确定。但至少碎片不会再照出假的倒影。”

年轻版的陈屿笑了。那种笑很纯粹,像清晨的阳光。

“那就够了。”

陈屿被手机铃声吵醒。是刘薇打来的。

“陈屿,安信那边的数据出来了。半年的完整数据。”

“怎么样?”

“违约率2.4%,比历史水平低了43%。但你知道最离谱的是什么吗?那些在试点期间通过审批的客户——就是你们因果推断策略批准的那些——他们的复贷率是78%。”

“复贷率?”

“就是还完了又来借的比例。78%的客户在还完第一笔贷款之后,又申请了第二笔。而且第二笔的违约率只有0.9%。”

陈屿坐起来。复贷率78%,意味着这些人不是借了钱跑掉的”高风险用户”——他们是需要帮助、并且能够恢复的普通人。系统给了他们一个机会,他们抓住了,然后回来了。

“他们回来了。“陈屿说,声音有点哑。

“对。他们回来了。“刘薇的声音也有一种不太寻常的柔软,“你的模型不只是在放贷,它在建立信任。这些人之前被所有平台拒绝,现在有一个平台愿意相信他们,他们就真的值得被相信。”

“不是我的模型建立信任。是信任建立了信任。”

“你这话说得像一个哲学家。”

“我只是写代码的。”

刘薇笑了:“行吧,哲学家。数据我发给你了。林总那边怎么说?”

“他说六月份的董事会他要亲自讲这份数据。如果通过了,全面推广。”

“全面推广……”刘薇的声音沉了一下,“你知道这意味着什么吗?”

“意味着改变。”

“不。意味着战争。“刘薇说,“整个行业的风控体系都要被推翻重来。你觉得那些大厂会坐视不管?他们投了几十亿做的预测模型,你说废就废?”

“数据说话。”

“数据永远不够。你还需要故事。”

陈屿想起赵峰也说过类似的话。值钱的不是真相,是故事。

“我有一个故事。“他说。

“什么故事?”

“一个叫王建国的人。四十七岁,库管员,月薪五千二。他被算法判定为高风险,所有门都关上了。然后算法改了,门开了。他走过去,还了钱,然后又回来了。”

“这就是你的故事?一个中年男人还了钱?”

“不。这是一个关于镜子的故事。镜子不应该改变它照出的东西。它应该只是照。”

刘薇沉默了几秒。

“你把这个故事讲给林总听。他会喜欢的。他最喜欢这种——技术拯救苍生的叙事。”

“不是拯救。是修复。”

“一回事。在商场上,修复和拯救的公关话术是一样的。“


十四

八月,光量科技的董事会通过了一项决议:用十二个月的时间,将因果推断策略推广到所有合作方。

这不是一个简单的技术升级。它意味着光量要重新定义自己的产品、重新培训自己的团队、重新向市场讲述自己的故事。林耀东把这个项目命名为”破镜计划”——打破镜子,让人看到真实的自己。

陈屿被任命为”破镜计划”的技术负责人。他的团队从六个人扩展到二十个人。赵峰给了他最大的资源支持,但同时也给了他最大的压力。

“你有十二个月,“赵峰说,“十二个月之后,要么’破镜’成为行业标准,要么我们被行业淘汰。没有中间地带。”

陈屿没有时间想那么远。他忙着把因果推断策略适配到每一家合作方的系统中。每家的数据结构不同、业务逻辑不同、风险偏好不同。他像一个裁缝,拿着同一块布料,给不同的客户量体裁衣。

但他没有忘记王建国。

九月中旬,他收到了一条微信。来自一个陌生号码。

“陈先生,我是王建国。贷款的事办好了。三万块,利息很低。我把之前的网贷都还清了。秀芬也恢复上班了。女儿开学上了高一。我想跟你说一声谢谢。秀芬说不用谢,说你只是做了你应该做的事。但我觉得还是要说。谢谢。”

后面跟了一张照片。王建国一家三口在一家餐馆里吃饭,桌上摆着四菜一汤,三个人都在笑。张秀芬脖子上的疤被一条丝巾遮住了,笑起来的时候眼睛弯弯的,很好看。

陈屿看着那张照片看了很久。他把照片存了下来,存在手机的”镜城”文件夹里——那个文件夹里装的全是数据、报表、代码截图。这张照片是唯一一张不属于工作范畴的东西。

但它可能是最重要的那一个。


十五

十二月。北京的冬天又来了。

陈屿站在望京SOHO的楼下,仰头看着那些亮着灯的窗户。有一扇窗是他的办公室——十七楼,从左数第三个。灯亮着。他的团队还在加班。

“破镜计划”推广到第七家合作方了。数据持续向好。行业里的风向也在变——几家头部公司开始公开讨论因果推断在风控中的应用。学术圈也有人开始引用陈屿的实验报告。有人把它称为”镜城实验”,和心理学史上的经典实验并列。

但他知道,真正的改变远没有到来。几百万人、几千万人,仍然生活在旧模型的阴影下。他们的信用评分决定了他们的世界,而他们甚至不知道那个分数是怎么算出来的。

他想起赵峰说过的话:“工具会塑造使用它的人,使用它的人会塑造世界。”

他想起林耀东说过的话:“标准的制定者永远比标准的跟随者赚得多。”

他想起刘薇说过的话:“数据永远不够。你还需要故事。”

他想起王建国写的信:“那个机会在我还不知道它存在的时候,就已经被收走了。”

他想起张秀芬问他的那句话:“你能把它改了吗?”

他想起梦里的那座透明城市——所有人都没有影子。

然后他想起梦里那个年轻版的自己说的最后一句话:“那就够了。”

够了?不够。远远不够。他打破了镜子,但碎片还在地上。他让一些人看到了真实的倒影,但更多的人还在透明的城市里行走。

可是——他开始走上楼了。电梯从一楼到十七楼,二十三秒。这二十三秒里他想了很多事情,想到最后只剩下一个念头:

不够,但至少开始了。

电梯门打开。十七楼。灯亮着。他的团队在等他。

他走出电梯,走向自己的工位。三块屏幕亮着,左边是数据,右边是代码,中间是那个永远在闪烁的光标。

光标在等他输入。

他坐下来,把手放在键盘上。

屏幕上映出了他的脸。半张脸被蓝光照亮,半张脸隐在阴影里。他看着自己的倒影——那个倒影也在看他。

这一次,倒影是真实的。


(全文完)


后记

这个故事里没有英雄。陈屿不是英雄,他只是一个发现自己造的工具有问题的人。王建国不是英雄,他只是一个被生活压弯了腰的中年男人。林耀东不是英雄,他是一个精明的商人。赵峰不是英雄,他是一个妥协了但还没放弃的技术老兵。

这个故事里也没有真正的反派。算法不是反派——它只是一个执行指令的程序。公司不是反派——它只是在规则之内追求利润。行业不是反派——它只是在惯性中运转。

如果有反派的话,也许是那种无声的、无处不在的力量——它让工具变成枷锁,让预测变成审判,让镜子变成牢笼。那种力量没有名字,没有面孔,但它无处不在。

它在你手机里的每一个App里。在你的信用评分里。在你每一次被算法决定”是否符合条件”的瞬间里。

镜子无处不在。问题不是要不要打碎它——问题是你知不知道你正站在一面镜子前面。

而镜子正在替你决定你是谁。