第148章 小时极限优化(1 / 2)

咖啡机吐出最后几滴黑色液体。

陈默端起杯子,没加糖也没加奶。焦糊味冲进鼻腔,他闭眼咽下一大口。烫,从喉咙一路烧到胃里。

办公区的键盘声比平时密集。

像暴雨砸在铁皮屋顶上。他端着咖啡走过去,玻璃隔断后面人影晃动。沈清澜的白板已经写满了公式,黑色马克笔的字迹叠在一起,有些地方被擦过又重写,留下灰蒙蒙的痕迹。

张锐趴在桌子上,脸几乎贴在屏幕上。

他的眼镜滑到鼻尖,没去推。手指在键盘上敲得飞快,敲完一段,停住,盯着代码看几秒,又删掉重来。旁边的空咖啡罐倒了三个。

王浩在打电话。

声音压得很低,但语气很急。“对,温度传感器的数据流要实时……延迟不能超过五毫秒,超过算法就废了。”他另一只手在纸上画流程图,线条因为用力而穿透纸背。

陈默没进去。

他站在走廊里,看着这片灯火通明的区域。空气里有汗味,有外卖盒子的油腻味,还有电子设备发热的塑料味。显示器蓝光照在一张张脸上,那些脸都很年轻,但眼袋很重。

沈清澜从白板前转过身。

她手里拿着半截粉笔,指尖沾满了白色粉末。看见陈默,她点了点头,没说话。眼神是聚焦的,但焦点不在现实世界里,像在看某个存在于空气中的结构。

“进度?”陈默问。

“百分之三十。”沈清澜说,“主干逻辑改完了,正在调参数。硬件接口那边还没对接上。”

“李贺在楼下实验室。”

“我知道。”她抬手揉了揉太阳穴,在皮肤上留下一点白印,“让他半小时内把测试数据发过来。没有实测温度曲线,优化就是瞎猜。”

陈默拿出手机发消息。

打字的时候,他看见沈清澜衬衫的领口歪了。最上面的扣子没扣,露出一截锁骨。她平时不会这样。但她现在没注意,或者说没精力注意。

消息发出去,李贺秒回:“在测,二十分钟。”

陈默把手机屏幕转向沈清澜。她扫了一眼,又转回去看白板。粉笔在黑板上点了点,点在一个复杂的积分符号旁边。

“这里。”她说,“如果散热效率能再提百分之五,我就可以把卷积层加深。识别精度能追回两个点。”

“我去跟李贺说。”

“不用。”沈清澜摇头,“你先处理客户那边。赵志刚开了发布会,创源园区的人肯定坐不住。他们现在需要定心丸。”

陈默顿了顿。

咖啡杯沿抵在嘴唇上,已经凉了。他喝掉最后一口,苦味在舌根停留很久。“项目经理刚给我发了邮件,问演示会不会受影响。”

“你怎么回?”

“我说不会。”陈默说,“但没说细节。”

沈清澜终于看了他一眼。真正的,把焦点拉回现实的一眼。她的眼睛里有很多血丝,眼白泛着淡红色,但眼神很锐。

“撒谎了。”她说。

“善意的。”陈默把空杯子放在旁边的桌上,“如果告诉他们芯片没了,算法在重写,散热方案还没验证——他们会直接取消演示。”

“然后呢?”

“然后赵志刚会笑到最后。”陈默说,“他的发布会抢了先机,我们再丢演示,市场就会认为我们不行。后续的二期三期,全都没了。”

窗外的天还是黑的。

但东边天际线开始泛出一点点灰白。快凌晨四点了。走廊里的灯管发出轻微的嗡鸣,像某种昆虫在叫。

沈清澜放下粉笔。

粉笔断成两截,掉在地上。她没捡,用鞋尖碾了一下。白色粉末散开,在地砖上晕开一小片。

“你去睡会儿。”陈默说。

“睡不着。”沈清澜走到饮水机边,接了一杯冷水。没喝,只是握着。塑料杯壁被捏得轻微变形,“脑子里全是矩阵。一闭眼,满屏都是数字在跳。”

“那就躺会儿。”

“躺不住。”她喝了一口水,喉结滚动,“陈默,这次如果失败了……”

“不会失败。”陈默打断她。

话说得很轻,但很硬。像石头扔进水里,咚的一声,沉底。沈清澜看着他,看了几秒,然后很浅地笑了一下。嘴角只动了动,没到眼睛里。

“我也觉得。”她说。

电话响了。

陈默接起来,是创源园区项目经理。对方的声音很清醒,显然也没睡。“陈总,我看新闻了。赵志刚那边的新方案,跟你们之前报备的功能很像啊。”

“像而已。”陈默走到窗边,用肩膀夹着手机,“功能描述谁都会写。能不能实现,实现得怎么样,是另一回事。”

“你们演示的版本……”

“比他们的强。”陈默说,“强很多。具体强多少,下周五您亲眼看看。”

电话那头沉默了一会儿。

能听见翻纸的声音,还有键盘敲击声。然后对方说:“行,我信你。但丑话说前头,如果演示出岔子,后续合作就难了。”

“明白。”

“另外。”对方顿了顿,“赵志刚那边的人,昨天来拜访过我们管委会主任。带了很厚的方案书,还有报价单。”

陈默握紧手机。

指尖压得发白。窗玻璃上凝结了一层水雾,外面路灯的光晕成模糊的黄色光团。“主任怎么说?”

“主任没表态。”对方说,“但让我转告你,市场欢迎竞争,但讨厌恶性竞争。你们之间的事,别把项目拖下水。”

“不会。”

电话挂了。

陈默放下手机,掌心有汗。他在裤子上擦了擦,转身走回办公区。沈清澜已经回到白板前,正在和张锐讨论什么。

张锐的表情很痛苦。

他抓着自己的头发,把本来就乱的头发抓得更乱。“沈总,这个损失函数我调了八遍了,收敛速度还是上不去。”

“数据给我看。”

张锐把笔记本电脑转过去。屏幕上是密密麻麻的曲线图,红绿蓝三条线交织在一起。沈清澜俯身,鼻尖几乎碰到屏幕。

她看了十秒钟。

然后伸手,在触摸板上划了一下。放大某个区域,又划一下。再放大。最后她直起身,从张锐手里拿过鼠标。

点了几个参数框。

删掉原来的数字,输入新的。敲回车。屏幕上的曲线开始重新绘制。红色线缓慢下降,绿色线开始爬升,蓝色线剧烈抖动了几下,然后趋于平缓。

张锐眼睛瞪大了。

“这……怎么想到的?”

“经验。”沈清澜把鼠标还给他,“还有,你刚才用的优化器不对。这个结构的网络,得用自适应学习率。”

“我试过,效果不好。”

“那你试错了。”沈清澜转身走开,“接着调,天亮前我要看到训练结果。”

张锐盯着屏幕,嘴里喃喃自语。然后他突然站起来,冲到自己的储物柜前,翻出一本厚厚的笔记本。哗啦哗啦翻页,找到某一页,盯着看了半天。

然后狠狠拍了下大腿。

“原来是这样!”

他坐回去,手指在键盘上飞舞。这次敲得比刚才更有力,每个按键都按到底,发出清脆的咔哒声。

陈默走回自己办公室。

他没开大灯,只开了台灯。黄光照在桌面上,照出一圈温暖的光晕。但光晕之外,房间是暗的。

他打开电脑。

邮箱里有四十七封未读邮件。有供应商的正式延期函,有客户的各种询问,有媒体的采访请求,还有几封猎头的信——问他考不考虑换个环境。

他全选了,标记为已读。

然后点开项目管理系统。硬件组的进度条更新了,散热方案的三维模型已经完成,李贺留言说:“样品在打样,上午十点能拿到第一版。”

他回复:“测试数据尽快给算法组。”

回完,他靠在椅背上。脖子很酸,肩膀僵硬得像两块石头。他抬手揉了揉后颈,指尖能摸到绷紧的肌肉。

闭上眼睛。

黑暗里浮现出很多东西。赵志刚的脸,林薇薇转身离开的背影,法庭上法官敲法槌的声音,还有系统界面第一次出现时的淡蓝色光芒。

那些光现在还在。

在意识深处,像深海里的水母,缓慢地起伏。数据流无声滚动,但他没去调用。推演需要精力,而他现在需要每一分精力来处理现实。

手机又震了。

是苏晴。“陈总,我查到了。赵志刚发布会用的演示视频,里面有几个场景的监控录像,是从创源园区流出去的。”

陈默坐直身体。

“确定?”

“确定。”苏晴发来一张截图。画面对比,左边是赵志刚发布会上的片段,右边是创源园区某个走廊的实拍。角度、灯光、甚至墙上的标识牌都一样。

“录像怎么流出去的?”

“园区内部有人给了。”苏晴说,“我还在查是谁。但可以肯定,赵志刚在园区里有内线。不只是供应商层面。”

陈默盯着截图。

窗户玻璃上的水雾凝成了水珠,一滴一滴往下滑。外面天亮了,但亮得灰蒙蒙的,像罩了一层脏纱布。

“先别声张。”他打字,“收集证据。等演示结束,一起算账。”

“明白。”

放下手机,陈默站起来。腿有点麻,他跺了跺脚。血液重新流动,带来针扎似的刺痛。他走到窗边,推开窗户。

冷空气涌进来。

带着清晨特有的味道,潮湿的,清冽的,混着远处早餐摊的油烟味。街道上有环卫工在扫地,竹扫帚划过地面,沙沙沙,很有节奏。

楼下有车灯亮起。

是李贺的越野车。他停好车,从后备箱搬出一个大纸箱。纸箱很重,他搬得有点吃力,走了几步又放下,喘了口气。

陈默关窗下楼。

走到一楼时,李贺正好进门。纸箱放在地上,他蹲在旁边拆胶带。看见陈默,他抬头,咧嘴笑了笑。

“样品来了?”

“来了。”李贺撕开胶带,打开纸箱。里面是银灰色的金属部件,散热片密密麻麻,像蜂巢。“第一版,按极限尺寸做的。装上去可能有点挤。”

陈默蹲下,拿起一块。

很沉。边缘有加工留下的毛刺,摸上去有点扎手。散热片的鳍片很薄,对着光能看见透明的边缘。

“效果怎么样?”

“还没测。”李贺从箱子里拿出温度传感器和数据线,“但我算过了,理论上散热效率能提百分之八。前提是风扇转速够。”

“噪音呢?”

“会很大。”李贺诚实地说,“像飞机起飞。演示的时候,可能需要观众离远点。”

陈默把散热片放回去。

金属碰金属,发出清脆的叮当声。“先装一套,跑压力测试。算法组在等温度数据。”

“给我半小时。”

李贺抱起箱子,走向实验室。他的背影很宽,但走路有点晃,显然也熬了一夜。皮鞋后跟在地上拖出沙沙的摩擦声。

陈默没跟进去。

他走到茶水间,又冲了一杯咖啡。这次加了糖,但糖没化开,沉在杯底,喝到最后一口才尝到甜味。

太甜了,甜得发腻。

他皱皱眉,把杯子洗干净。水流冲过杯壁,带走褐色的残渍。水槽边缘有前一天留下的咖啡渍,已经干了,变成深褐色的一圈。

张锐从办公区冲出来。

他手里拿着平板电脑,屏幕亮着,脸上有压抑不住的兴奋。“陈总!陈总!训练结果出来了!”

陈默擦干手。

“怎么样?”

“损失值降了百分之四十!”张锐把平板递过来,“而且收敛速度提了一倍。沈总改的那个参数组合,神了!”

平板上是训练曲线。

红色的线一路向下,几乎没有波动,稳稳地降到了很低的数值。旁边的准确率曲线则一路向上,已经突破了之前的瓶颈。

陈默看着那些曲线。

看了很久。然后他抬起头,问:“实际效果测了吗?”

“测了!”张锐调出另一张图,“用昨天的测试集跑了一遍。识别精度……追回来了!不仅追回来了,还比原方案高了半个点!”

声音很大。

在安静的清晨走廊里回荡。几个从洗手间出来的程序员停下脚步,凑过来看。有人发出低低的惊呼。

陈默把平板还给他。

“去告诉沈清澜。”

“她知道了。”张锐说,“刚才就在旁边盯着。现在在改下一个模块。”

“下一个模块?”

“嗯。”张锐压低声音,“她说,既然突破了,不如再往前推一步。把多目标追踪的模块也优化了。如果成功,演示效果能再提一个档次。”

陈默看向办公区。

透过玻璃,他看见沈清澜又站在白板前。这次她在画新的结构图,线条更复杂,箭头更多。但她的手很稳,每一笔都画得清晰果断。

“让她做。”陈默说。

“可时间……”张锐看了眼手表,“只剩六十二小时了。”

“够。”陈默说,“告诉她,需要什么资源直接提。硬件,数据,算力,人要人,要钱给钱。”

张锐愣了下,然后用力点头。

他跑回办公区,脚步轻快得像换了个人。陈默站在走廊里,能听见里面传来的欢呼声。虽然很快被压低,但那种兴奋感,像火星落在干草上,瞬间燃起一片。

窗外的天彻底亮了。

阳光穿过云层,很薄,但毕竟是阳光。照在走廊尽头的绿植上,叶片上的灰尘被照亮,浮在空气里,缓慢旋转。

陈默走回办公室。