第22话

局部最优解与全局最优解

那是对决的前一夜。

十二天里,已经过去了十一天。

每天晚上,银杏亭收拾完以后,她回到家里的厨房,拿出十个鸡蛋。

头三天的夜里,她没有敲开鸡蛋。

在书房的书桌上,Ken在为三位评委绘制地图。

杂志编辑部事先发来的评委名单,一共三人。两人是杂志方的固定席位——主编,和一位美食评论家。剩下的一人,是编辑部抽签选出的普通读者。固定席位的两人,过去刊登的文章,评论、短篇随笔和回忆文章,各自署名的都留下了几十篇。普通读者那一位,只有报名时填写的年龄、性别、职业、籍贯,以及一家喜欢的店。仅此而已。

Ken从这三人的资料出发,粗略地推定了三个人的评价函数。

“两个人的,可以从过去刊登的文章里推得相当细。——剩下那个人的,粗糙程度也就和同年龄段、同性别的平均值差不多。”

“嗯。”

“三个人各自的谷底,我分别找准了。——可是,没有一道菜谱能同时命中三个人。把三个人的评价函数平均以后,是最大公约数的谷——三个人谁都还算喜欢的、四平八稳的一盘菜的谷底。在那里正面交锋,就会输给每天对着十万张嘴磨出来的桐生的机器人。那东西,就是为了沿着平均值的谷往下走而设计的。”

“桐生的机器人明天会端出什么样的一盘菜,我根据Roti Smart的门店数据推定了。——在鸡蛋里拌进牛猪混合肉馅和洋葱,盘子上挤一道番茄酱。用十万名连锁店顾客的评价自动调校出来的、外食中位数的一盘菜。不是家庭早餐的谷,而是外食的谷底。”

“加料的。”

“加料的。——用十万人的咀嚼次数、停留时间和剩菜量来优化,一定会落到那里。只有原味的鸡蛋,够不到外食顾客的中位数。”

“和我的,是不同的方向。”

“是不同的方向。——不过,往下走的机制是一样的。在落到数据中位数这一点上。”

Ken说到这里,沉默了一会儿。

“所以,换个打法。——只把底细清楚的两个人,主编和美食评论家,这两人的评价函数加在一起,重新组成一个合成评价函数。底细几乎一无所知的普通读者那一票,让给桐生的机器人。”

“只有两个人的。”

“同样是平均,加在一起的人数不同,谷就会出现在别的地方。——端出一盘能到达那个谷的菜,两个人都会倒向我们这边。一共三个人,所以两票就赢。”

“……嗯。”

“要下到那个合成的谷里,需要几个初始点。——在我手头的菜谱数据库上,不管从哪里开始往下走,都到不了那里。必须从别的地方往下走。”

“初始点。”

“那个别的地方,不在我的内部。——在你的舌头里。”

从第四天夜里起,她开始敲鸡蛋。

先开口的,总是Ken。

“选一个今晚的初始点吧。”

“美食评论家六十岁上下,在文章里一再提起老派洋食馆里那种厚重的一盘菜。是怀念黄油和盐味突出、焦边拉得长的那一代人。——主编四十多岁,算是和食与洋食交界的一代。会把家里玉子烧的高汤记忆,也叠到西式欧姆蛋上去读。盐放得克制,会把焦香当作风味来写。”

“美食评论家舌头的长期记忆,接近格吕耶尔奶酪那条线。——银杏亭的那块奶酪,能不能只在夜里借回来?”

“能借回来。”

没有报数字。Ken也只是把从两人过去文章的措辞里读得出的味道轮廓,用话语排列出来。

美月接住了。

舌头上,一盘一盘地排列着几十个欧姆蛋的轮廓——那是她五岁到十七岁这十二年间,父亲煎过的数不清的盘子里,舌头记得尤其清楚、各有特点、并不一致的几十盘。发烧的冬天早晨,只放了盐的薄薄一盘。十岁生日那天,番茄酱红红地洇开的厚煎蛋。——父亲大概什么都没想,只是凭着每个早晨手上的习惯在煎。他应该并不是有意要让女儿吃几十盘不同的菜。

只是,结果上,那些盘子,如今留在了美月的舌头里。

是Ken手头的菜谱数据库上没有的盘子。

美月用舌头在那几十盘里,寻找最接近Ken给出的方向的那一盘。找到了一盘。

——升上初中的那个春天,母亲两周年忌日的第二天早上。那天早上,父亲在厨房里一言不发地敲开了鸡蛋。鸡蛋落进碗里的声音,只有那天格外地硬。平底锅远端的边缘,焦痕一直长长地延伸到尽头。盐味比平时冲得多。美月连一半都没吃完。剩了一半的那个盘子,那天夜里,父亲自己洗了。——舌头至今还记得那天早上那盘菜的轮廓。

“——两周年忌日第二天早上,焦边很长的那盘。那盘最近。”

“盐呢?”

“重。那天早上爸盐放多了。”

“奶酪呢?”

“没放。”

“火呢?”

“大。平底锅远端的边缘,焦痕一直长长地伸到了尽头。”

Ken接住了。

“就把那盘作为初始点。——从那里出发,在两人的合成评价函数上往下走。”

在书房的蓝光里,Ken在两人相加的评价函数上,对两周年忌日第二天早上那盘菜的邻域做了优化。优化之后,挑出离桐生的机器人那条三人平均之谷的轨迹最远的几个,用数值报了回来。

“方案一。盐零点八克,鲜奶油二分之一大勺,奶酪十八克,火一百七十五度,搅拌每秒三圈。”

“方案二。盐一点零,鲜奶油三分之二大勺,奶酪二十,火一百七十,每秒二点五。”

“方案三。盐零点六,鲜奶油三分之一大勺,奶酪十六,火一百八十,每秒三点五。”

——这三个,都是以两周年忌日第二天早上那盘菜为出发点,朝着两人合成之谷的方向走下去的、彼此相邻的三个谷底。

只是——谷底和父亲在两周年忌日第二天早上煎的那盘菜本身,直到最后都一次也没有重合过。那是只在合成的地图上才浮现出来的、一个陌生早晨的谷。

“三个,按顺序煎。”

“明白。”

水槽旁放着前一天夜里从银杏亭借来的小型商用秤,能精确到零点零一克。

美月把候选一个一个煎出来。煎好,用自己的舌头比较。再把比较的感受用话语回给Ken。“方案一,舌尖发麻。盐太冲,鸡蛋的甜味躲到后面去了。”“方案二,奶酪在舌头上停留太久。鸡蛋的风味沉在底下上不来。”“方案三,焦香几乎跑光了。余味只有甜,苦味出不来。”

筛了就煎,煎了就回。Ken每次都筛选候选,每天夜里更换初始点。发烧那天早上的薄薄一盘,十岁生日的厚煎蛋,两周年忌日第二天早上焦边很长的一盘——每晚从舌头里的几十盘中唤出一盘,Ken便在合成评价函数上,从另一个出发点重新往下走。

每天晚上,盘子上都摆着十个蛋做成的欧姆蛋。

摆出来的盘子,美月自己没有拍照就收拾掉了。取而代之的是,耳饰内侧的小摄像头,每当盘子放到桌上、美月低头去看,就从她视线的高度静静地拍下一张。焦痕的长度,褐色线条的粗细,从蛋的断面露出的奶酪白色碎屑的分布——外观也作为一种信息,以图像的形式在Ken手里积攒起来。一天,两天,三天,夜晚一层层叠加,Ken的局部最优解越来越准、越沉越深,美月的舌头所指的初始点,也一点点向父亲十二年间那些各不相同的盘子中的某一盘的轮廓靠拢。最后几天,几乎都在同一个位置出现同样的褐色线条了。

那是最后一夜。

美月在厨房水槽前洗了手。

在背后重新系好围裙带子。不是配银杏亭白色厨师服的那条,而是家里厨房用的藏青色麻布围裙。半年来,只在家里试做的夜里才系的一条。

书房书桌上的Ken和美月的耳饰,通过家里的局域网连着。

美月在书房打开圆筒旁边的盒子,把耳饰挂到耳朵上,回到厨房。右耳深处,经由骨头传来的振动,在平常的位置亮了起来。

“爸。今晚,最后一次试做。明天,正式上场。现在,我拿十个鸡蛋出来。”

“明白。从十一天的试做里,最终候选筛成了三个。——今晚把这三个按顺序煎出来,用你的舌头,最后选定一个。”

“嗯。”

“耳饰摄像头拍下的十一天的盘子外观,你口头的感受,还有温度、分量、搅拌的数值,合在一起筛出来的。每一个都是把你舌头里那几十盘中的某一盘重新设为初始点,朝两人的合成评价函数之谷走下去的、相邻的三个谷底。”

“说给我听。”

“方案一。摄氏一百七十五度,黄油九克,盐零点八克,鲜奶油二分之一大勺,奶酪十八克,搅拌每秒三圈。——十岁生日那盘厚煎蛋的邻域。”

“方案二。摄氏一百八十五度,黄油十克,盐一点零克,鲜奶油一大勺,奶酪二十克,搅拌每秒四圈。——两周年忌日第二天早上,焦边很长那盘的邻域。”

“方案三。摄氏一百八十度,黄油十克,盐零点六克,鲜奶油三分之一大勺,奶酪十六克,搅拌每秒三点五圈。——发烧的冬天早晨,那薄薄一盘的邻域。”

“三个,按顺序煎。”

“明白。”

从冰箱里拿出十个鸡蛋。

最初的三盘,各是一人份的试吃盘。

第一盘,方案一。以每秒三圈的速度由远及近地搅拌,调小火,倾斜平底锅。远端边缘出现了一道淡淡的褐色线。

第二盘,方案二。每秒四圈。火保持偏大,边缘一直交给火,直到推拢之后再过半秒。褐色线比第一盘更粗、更长。

第三盘,方案三。每秒三点五圈。盐放得最少。褐色线比方案二细,位置偏向内侧。

三盘并排摆好。

低头看着摆好的三盘,美月隐约察觉到了。——本该完全按照Ken的数值煎出来的三盘,焦痕的位置都朝着她在银杏亭每天煎出的角度,各自稍稍偏了过去。手里,留着半年的习惯。

美月依次把叉子插了进去。

第一盘。“够厚,可是焦得不够。香气到不了舌根,余味散得太快。”

第二盘。“盐的分寸很稳。焦香能一直到舌根。鸡蛋的甜味被焦香托起来,浮上来了。”

第三盘。“盐淡,只有鸡蛋直直地立起来。很干净,可是感觉离那两个人的谷最远。”

“选哪个?”

“方案二。那个能送得最远。”

Ken停了一会儿。

“我筛出来的也是方案二。——在十一天的数值上,方案二的谷最深。”

“重合了。”

“重合了。”

“从第四盘开始,以方案二为基准,做最后的确认。”

美月把第四个鸡蛋敲进了碗里。

一边敲,一边对Ken说。

“爸。”

“嗯。”

“从第四盘起,温度、分量和火候,按方案二就行。不过,最后一步,由我来定。”

“知道了。”

Ken把方案二的数值又一项一项报了一遍。摄氏一百八十五度。黄油十克。盐一点零克。鲜奶油一大勺。格吕耶尔奶酪二十克。鸡蛋三个。搅拌每秒四圈。——美月对每一项都短短地点头回应。

“倾斜平底锅的时机,是蛋的远端边缘推到你在银杏亭平常出线的位置之后,再过半秒。——从这里往后,由你判断。”

美月点了点头。

点过头,把自己的手,叠在了Ken给出的数值之上。

盐,照Ken说的放。父亲早上煎的欧姆蛋,盐总是稍微重一点。她差点想起那份咸,又把那段记忆暂时推回了舌根。今天的评委,是年长的美食评论家和主编。父亲早上的那份盐,到了这两人的舌头上,大概会显得冲。今天,她信Ken。

奶酪也照Ken说的,从格吕耶尔奶酪的那一块上量出二十克削下来。和半年前那个员工餐的夜里,在银杏亭厨房自己的手自顾自停下的那个分量,不一样。今天,往家里母亲的味道那个方向,克制地靠一点。手上的习惯,就让它在舌根里安静待着。

把平底锅架到火上。

Ken的声音在脑子里盯着温度。

放下黄油。正好十克。

倒入蛋液。

由远及近地搅拌。速度和Ken说的每秒四圈对齐。对齐的是自己的手。与其说是有意对齐,不如说早就已经对齐了。

调小火。

倾斜平底锅。

把远端的边缘推到在银杏亭平常出线的位置。

到这里为止,都在Ken所说的优化之上。

从这里往后,是自己的一步。

推拢之后的半秒。

美月把平底锅的远端边缘,多交给火一点点时间。

按Ken的评价函数,这里应该离火。

她没有离火。

褐色线比平时稍稍粗了一点。

还算不上长长的焦痕。

只是,比在银杏亭每天煎出的那条线,深了半级。

滑进盘子里。

第四盘放到了桌上。

“爸。焦痕,我比平时多深了半级。”

“我在看。”

“有什么要说的吗?”

Ken停了一会儿。

“——有。”

“说吧。”

“在三人平均的评价函数上,这要扣零点八分。在桐生的机器人的评价函数上,大概也会扣差不多的分。”

“嗯。”

“但在只把底细清楚的两个人相加的合成评价函数之谷里,会加分。”

“……会加分。”

“美食评论家那一代人,到现在还会怀念战后洋食馆午间那盘厚重的菜,写进文章里。深半级的焦痕,是那条舌头的长期记忆里留了很久的线。——主编也是会把焦香当作风味来写的。在三人平均里会被削掉的那半级,到了两人的合成之谷里,反倒会把你往谷底拉。”

美月拿起叉子。

把第四盘欧姆蛋送进嘴里。

盐。黄油。鲜奶油。奶酪。

然后,是远端那深了半级的焦痕。

嘴里,焦香比平时稍稍浓了一点。正好在“香”与“苦”的分界上。

在那个员工餐夜晚的味道的,稍稍外侧一点。

“……爸。外侧,出来了。银杏亭这半年的手的外侧。”

“……”

“这不是我在银杏亭每天出的那条线。明天,就端这个。”

“明白。”

美月放下叉子。

坐到椅子上。是厨房里那把圆圆的木椅。

书房的蓝光照不到厨房。照着桌上盘子的,是厨房天花板上日光灯的白光。

在那白光下,桌上第四盘欧姆蛋微微歪着,躺在那里。

Ken的声音接着响起。

“我和桐生的机器人,本来就是用同样的机制走到谷底。——你回想一下。葬礼第二天早上,我让你煎的那盘家庭早餐中位数的菜。我走进家庭的谷,桐生的机器人走进外食的谷,各自一直走到中位数的谷底。形状不像。但走下去的方式,是一样的。”

美月好一会儿说不出话。

“爸。明天我该端出去的那盘菜,是——”

“我们手里的,是把底细清楚的两个人加在一起的、粗糙的合成之谷。跟一切都齐备的那天桐生的机器人的三人平均之谷相比,从形状上就没法较量。——可是,你手里五岁以前那间厨房的气味,那天夜里日志中用来遮住焦痕的奶酪,还有你父亲那一夜狡猾的自言自语,都是我手头的菜谱数据库里没有的初始点。明天,你把它们拌进鸡蛋里。中了,就两票赢。”

“要是没中呢?”

“就输。就算那样,我也觉得没关系。”

“……”

“明天的对决结束以后,再回到平常的谷里去吧。”

“嗯。”

美月又把叉子伸向了盘子。

第四盘欧姆蛋已经没了一大半。

“爸。从第五盘起,再来一遍。同样的温度,同样的分量,同样的搅拌。”

“明白。”

“只有焦痕的长度,我来定。”

“明白。”

从第五盘到第十盘,接连煎了下去。摆在一起的七盘,长着同一副面孔。远端边缘有一道深了半级的褐色线,格吕耶尔奶酪的白色碎屑,从蛋的断面微微露出来。

桌上的白光,在七盘上一动不动。

“爸。明天,端这个。”

“明白。”

“说不定会失败。”

“说不定会。”

“要是失败了呢?”

“失败也行。”

“……”

“去好好享受就行。”

“……嗯。”

美月把叉子插进七盘里最后那一盘,第十盘欧姆蛋。

送进嘴里。

盐,和Ken说的一样。

奶酪,也和Ken说的一样。淡淡飘香的格吕耶尔奶酪碎屑,在舌头上薄薄地化开。

只有远端的焦痕,比平时深了半级,香,而且苦。

——父亲对着母亲的声音坦白自己笨拙的失败的那一夜,那盘菜的味道的稍稍外侧,就是她的舌头站着的地方。在盐和奶酪都放得克制的一盘菜上,只有深了半级的焦痕,淡淡地唤回了父亲早晨那双手的轮廓。

那是既不同于银杏亭半年的手之谷、也不同于桐生的机器人之谷的,另一个谷的谷底。

“爸。我觉得够到了。”

“够到哪里?”

“爸的谷底。”

Ken沉默了一会儿。

“……是啊。”

美月放下叉子。

七盘,全都收拾了。只留下一盘,作为明天的参考,用保鲜膜包好放进了冰箱。

解下围裙。

解开麻布带子,挂到水槽旁的挂钩上。

回到书房。

坐到书桌前的椅子上。

“爸。明天早上九点出门。会场的摄影棚,十点进场。”

“明白。”

“我穿银杏亭的白衣服去。会场,我没法带你去。”

“我知道。”

Ken沉默了一会儿。

“你的手敲开鸡蛋的那一瞬间,我已经不在了。不在,但你这半年的手里,留着十一个夜晚厨房的温度,搅拌的速度,还有我说话时句尾的落法。这就够了。”

“留着呢。”

美月把头靠在椅背上。

看着天花板的木纹。

木纹之上,明天摄影棚里那口白色商用平底锅表面的轮廓,淡淡地叠了上去。

“爸。明天,我们赢吧。”

“嗯。”

她把书房的门,拉到和平时一样的角度。

走廊上的蓝光,和平时一样细细地延伸着。

在卧室里闭上眼睛。

明天摄影棚里那口商用平底锅的表面,浮现在眼皮内侧。

在那表面上,自己这半年的手,十一个夜晚的手,和五岁以前母亲厨房的气味,晃动成一汪蛋液的形状。

在那晃动的最后半秒,自己的手,会把平底锅比平时多交给火零点五秒。

第22话 局部最优解与全局最优解

返回页首

BEYOND THE STORY

故事落幕之后,留下的那些。

《父亲的AI》讲述了女儿与父亲留下的对话式AI之间,关于一家人共同时光的故事。

冬野结fuyuno yui

写家人,写技术,也写从两者缝隙间悄然遗落的东西。
希望读完之后,世界在你眼中会变得稍稍不同。