正文

第74节:微软对联背后的故事(2)

揭秘微软亚洲研究院:微软的梦工场 作者:微软亚洲研究院


评论二:

我也从来没有在家门贴春联的习惯,但是老爸喜爱书法艺术,也略有小成,用着这套好玩的微软对联机,心想:赶着春节将至,不如编个春联让老爸写写,也蛮热闹喜庆的,即成上联:木土杜家喜迎吉祥鼠,对联机略做运算即成下联:车干轩户春接富贵人,横批:骏业顺风。”

我常常在思考,这个微软对联系统究竟有什么值得总结的地方。看到微软对联,再看到这么多网上的评论,我的脑海里就总象在放电影一样,把这个历程里出现的人物和有趣的事情一幕一幕地闪现出来。值此微软研究院十周年之际,我想确实应该趁现在记忆还清晰的时候,把这段历史好好地总结一下,以便让十年、二十年之后的人们还能够看到曾经发生的有趣的故事。

誓与李敖比高低

微软对联这个项目,跟前任院长沈向洋大有渊源。此事说来有点话长了。

2004年底的时候,沈向洋把我叫去,说搞个自动对联吧。所谓自动对联,就是说人出上联,由计算机对出下联。他之前跟几个人都聊过这个设想,所有的人都告诉他别想了,不可能做出来。他失望,不甘心,反复提起来。“反正你是院长,你说做就做吧。”大家说。有点像傣族的泼水节,泼的都是冷水。

他跟我说你能做也得做,不能做也得做。我说我肯定做,而且肯定能做出来。不过,要允许下联有多个候选,还要允许人机交互。另外,我需要时间。我当时可说是穷困潦倒,自然语言组不足10人,有两名骨干即将转到微软别的部门去。还有几个项目同时在做技术转移,包括搜索引擎的拼写检查。大家还要赶写很多文章。我就从清华大学中文系招了一位同学,他的名字是马艳军,听上去像一个女孩的名字,人也是彬彬有礼的。

我设计了一个简单的模型,把对联的生成过程看作是一个翻译的过程。给定一个上联,根据字的对应和词的对应,生成很多选字和候选词,得到一个从左到右相互关联的词图,然后根据一个动态规划算法,求一个最好的下联出来。一个好的下联其评价标准也很简单,第一就是它跟上联的对应程度,一般用词和词的对应概率来代表,第二就是生成对联的语言模型,就是衡量它像不像一个对联。马艳军在我的指导下,在两个多月的时间里,根据这个思路,就做了一个简单的对联生成系统出来。我于是向沈向洋报告进展,这也是沈向洋第一次审核这个项目。

在他办公室里,我给他看了这个简单的系统输出的几个结果。他看过之后,很惊讶地说,看来我们有戏呀,继续努力吧!马艳军三个月之后,导师要求他回去,我只好去找语音组帮忙提供新的学生。我曾经在语音组干过半年的经理,有点人缘。周健来很慷慨地介绍了吴法洲同学,他是清华软件学院的研究生,曾经帮助健来做了手机上的输入法。吴法洲同学来了之后不久,我又请我的实习生蒋龙同学加入。后来沈向洋让他在北航的预定将来要读他的博士的两位实验学院的大四同学加入这个研究小组。女孩子叫陶李天,男孩子叫苏昊。我当时又请了北京大学中文系的两位同学整理从网络上挖掘的对联数据以及生成的对联词典。

后来是每隔三个月,沈向洋就会安排一次评审。每一次都鼓励说,大有进步。每一次都强调“要多挖数据呀,没有数据不行啊”。为了加强数据挖掘,他特别请王坚派人帮助加强数据挖掘。王坚就派了陈伟柱来,我就请伟柱帮助从网络上挖掘更多的对联数据。伟柱果真了不起,在两个月的时间里,很快挖掘了大批的对联数据。有了更多的数据,系统的性能得到了大幅度的提升。然后大家就讨论能不能把横批做出来。蒋龙同学很聪明,在一次开会的时候提出了一个方案——通过语义距离计算来和已有的上联、下联的句子最佳匹配的横批。苏昊根据这个方案实现了横批模块。我们于是就盼望着下一次给沈向洋做汇报的时候给他一个惊喜。当时的院长助理李世鹏安排了时间。在五楼的一个会议室里面,我给沈向洋和李世鹏演示了最新的对联系统。沈向洋出了一个上联:“李敖对联强”,电脑沉思了一毫秒,对出来“鲁迅绝句多”。沈向洋说:“不错,那么横批呢”。这时候我很忐忑,鬼才知道会对出来个爷爷还是奶奶。瞬间结果出来了,系统对出来的横批是“语妙天下”。沈向洋一拍桌子,说“绝了!”。


上一章目录下一章

Copyright © 读书网 www.dushu.com 2005-2020, All Rights Reserved.
鄂ICP备15019699号 鄂公网安备 42010302001612号