法抄了些人做决策时神经元会有的反应。这和实际的递质物没什么关系,你只需要知道在这个系统里活跃的部分怎么关联和分配权重就行了。不过我也听说过可能涉及到解剖学的神经网络模型……我记不太清楚了,有一个神经网络模型是用了猫的脑神经来模拟。”
“哦?”罗彬瀚说。不知不觉间他已经忘记了话题的开头,直起身子聚精会神地盯着对面。
“怎么了?”安东尼敏感地问,“我用错了什么词?”
“你用错了我也不会知道的。”罗彬瀚说,“我可不懂你们这些技术上的事情。不过你不妨再说说那个猫的模型,它琢磨事情也像猫一样吗?”
他自认为没露出什么不对劲的地方,可是安东尼还是怀疑地偷瞥了好几眼。“我没仔细研究过那个模型。”他说,“不过我听说有团队拿它来做决策训练,它们搞了个捉耗子的游戏——你每抓到一只耗子就会得分,而你花费的时间则会导致扣分,撞到墙壁也会扣分,而撞到狗窝则会直接结束游戏。这样一来,算法如果想拿到最高的分数,就得研究出最佳行动路线。他们想通过这个训练让算法变得更聪明。”
“然后呢?”
“这算法学会了每次开局都直接自杀。”安东尼说,“直奔狗窝而去。这样一来,至少它不会损失时间消耗和撞墙扣掉的那些分数。这就是从它的神经网络里考虑出来的最佳方案。”
“清清白白的一生呀。”罗彬瀚说。他这话并没带什么情绪,只不过是随口搭腔。安东尼却突然若有所思地打量起他来。
“你不会也用了这个算法模型来塞你女朋友的数据吧?”罗彬瀚问,“然后它开始劝你去跳楼?”
“我没用这个模型。但是……”
“真的劝你去跳楼了?”
“它给我发了一条不应该有的消息。”
罗彬瀚不明所以地望着他。安东尼考虑了好半天,最后突然又垮了。“我一直在训练它说话的口吻。我让它回答问题的语言习惯更像她,然后再是回答问题的思路。”
“你怎么能让一个程序的思路更像某个人呢?”
“这还是修剪枝叶的问题。你只要有足够的训练集让它自己去形成内部路径。”安东尼不耐烦地说,“本质上还是个人工活儿,所以我其实也不指望自己能做出个什么东西来……我只是在打发时间,找找思路——”
“找找你前女友跟你分手的思路。”罗彬瀚多少有点坏心地补充。
安东尼假装没听见他的话。他的脸早就因为酒精而开始发红,因此罗彬瀚看不出什么究竟来。他一鼓作气地说:“两个星期以前我给它和我的其他程序做了个接口,让它能做点更复杂的运算和联想,但数据集仍然是闭合的——我不想让它去网上连抓消息,就让它用我提供的学习资料——然后我给了它几个简单的拼字谜题,就是让它设法在有限的字母表里凑出一句话来。我,我们以前经常做这个游戏……”
“你们情侣之间就玩这个?”罗彬瀚震惊地问。
“这有什么不对?”
罗彬瀚不好说。他暗自在心底更新了一些对于外国人刻板印象。这当然是没道理的,可先前他总觉得外国人谈对象都会和马尔科姆一样腻乎。他感到自己不应该继续大惊小怪,难免会显得缺乏经验。这是很不符合他眼下的人设的。
“你做的程序表现如何呢?”他问道,“它能找出所有的句子吗?我猜它做这件事得比人容易点吧?”
“你为什么这么觉得?”
“这不该是常识吗?”
安东尼似乎想说点什么,但是放弃了。他果断地宣布这问题无关紧要,只是他自己做这个程序没那么“聪明”。拥有的计算资源不足,字词库也很有限。前者是财力所限,而后者则是他有意为之。他不希望这个程序因为拥有未经筛选的网络语库而拼出一些不该有的词来。它也不应该有本事拼出不该有的句子,因为它的训练模型根本没成熟到能理解语法的程度。
就在一周前的某个日子,当安东尼·肯特从餐厅走回自己的客房时,发现屏幕上已经弹出了一个带笑脸的窗口。
这窗口是他自己设置好的,用以通知训练集的完成进度。当程序自认为找到字母表中所有隐藏的语句后,它就会发一个笑脸给他,然后则是一个写有全部答案的文档附件、花费的总时间和由此得到的评分。由于时间系数的影响,综合评分往往是负数,他对此也习以为常,不准备去调整计算规则。他只是觉得它今天结束任务的速度要比平时早些。而紧接着他看到了评分。9分。
他又认真地瞧了瞧。的确是正数的9分,一个他还从没在训练里遇到过的高分。这不太合理,多半是搞错了什么。于是他打开记录全部语句的附件,在本该记录有至少六个答案的位置只找到孤零零的一行自:
凡事皆有定时。生有时,死有时。
起初,安东尼疑惑地盯着这行字,以为是他自己设置的条件参数出了问题。游戏本该在至少拼出六句话,并且再也找不出新结果时才结束,可是现在这儿只有一句话,这句话甚至还不在他准备的标准答案里。他又把这句话读了一遍,认出它无疑援引自《传