既然甜甜要我讲这个IT界的 Jeeves story,我还是讲得完整一些吧,尽管她现在也许听不懂。
Ask Jeeves 成为华尔街的宠儿是在上个世纪末,正是dot.com网络泡沫经济最红火的时候。成也萧何,败也萧何,网络泡沫让它一夜窜红,泡沫破灭又使它万劫不复,非理性的经济震荡在倒洗澡水的时候,连孩子也给扔掉了。
Ask Jeeves 打的招牌是自然语言,他们研制出一个网络问答系统 Jeeves(一个有问必答的管家兼老仆的形象),能够回答客户(主人)的任何问题。可以用日常英语提问并直接得到答案,这在当时是很超前的思想,被广泛认为要取 Google 而代之。比起传统搜索利用关键词搜索相关网页,Jeeves 的答问,听上去是多么先进啊,简直就象跑步进入了科学幻想世界。更有意思的是,在 AskJeeves 上市的那些日子,无数人跑去测试这个神奇的问答系统,不少人感觉非常满意,更多的人(包括笔者)虽然发现Jeeves并非万能,有不少问题可以难倒Jeeves,但至少对其友好新颖的用户界面印象深刻。多数人相信随着时间和金钱的投入,问题会逐步解决,很少有人怀疑 Ask Jeeves 的美好前景。没想到好景不长就遭遇Nasdaq股市崩盘,从此便走上了衰败的不归路。
我是做自然语言的,当然对这个奇迹的技术基础更感兴趣。Ask Jeeves 上市当天,眼看着它的股票狂升至70多美元,我与另一位自然语言朋友都兴奋不已。我一边与朋友闲聊自然语言的前景,一边跑到 askjeeves.com 网站耗了一整天,拿各式各样的问题测试它。测试不久,就发现原来自然语言技术很大程度上只是它的一个金字招牌,他们其实没用多少技术,更多的是靠无法真正 scale up的人力在背后支撑。
然而,即便是泡沫时代,牛皮也不是完全靠吹出来的,Ask Jeeves 闹出那么大动静,里面确实有绝活儿。这绝活儿并非其声称的自然语言技术,说白了就是一个用户界面的金点子(所谓 million-dollar idea)。这个公司昙花一现的走红就是建立在这个点子上。
这是一个一说就破不说没人能想到的真正天才的创意。可惜的是,这个创意已经成为历史陈迹,虽然在合适的应用场合它应该还有活力。为了撰述此文,我搜寻网络,想找到体现这个金点子的用户界面的高清截屏,居然苦寻不得,不由不感叹世事变迁之快,这样天才的创意也没能留下清晰的脚印。还好,反复搜寻还是得到了几张清晰度不佳的比较后期的用户界面的示意,附于后聊胜于无吧。
故事是这样的。从实际应用角度,自然语言技术直到今天也还只是曙光初现,问答系统也还没有成为搜索引擎的核心 feature,NLP(Natural Language Processing)远远没有达到业界可以成熟自如使用的黄金时期(the day will come, believe me, but it needs some time)。因此,除非是实验室的玩具系统,企图利用自然语言技术自动回答问题,有难以逾越的障碍。一个真正的自然语言技术支撑的问答系统至少需要两个关键部分:第一是对问题的理解,知道问的是什么;第二是对海量网页文字的语言分析,从中抽取答案。而 Ask Jeeves 出现在1996年(launch),走红在1999年(上市),恰好处于应用层面的问答(QA)系统诞生的前夜(参见:【立委科普:问答系统的前生今世】,严格地说,1999年第一届TREC QA的竞赛才标志了问答系统在学界的诞生),不可能具有超出时代的技术背景来支持它的系统。创意可以超越时代,但是技术永远是时代的产物,没有人可以超越(时代的局限)。既然如此,这个所谓自然语言技术的奇迹 Ask Jeeves 是怎样诞生的呢?
俗话说:戏不够,人来凑。真是一点儿不假。原来,在智叟 Jeeves 背后,藏着千军万马,在最鼎盛的时期,光资料员他们就招了好几百。问答系统的关键部分,对于海量网页信息的自动分析和抽取,Jeeves 系统根本就没有。幕后的几百个资料员每天忙碌的就是手工更新问答数据库,把含有常见问题答案的网页不断补足更新到数据库去。因为是手工作业,质量是可以保证的。可是,网民的问题千千万万,一个手工蛮力更新的数据库怎么可以应付呢?实际上是应付不了,这也就是 Ask Jeeves 最终衰落的技术原因,人工干预无法真正 scale up. 有意思的是,至少在相当一段时间里,Jeeves 给人的印象是可以解答用户的多数问题,Jeeves 仿佛一个无所不知的神仙。这是怎么回事呢?
谈到这里,就到了这个 million-dollar 创意的核心了。Jeeves 确实用了一些自然语言技术,主要是在对用户问题的分析上(some type of question parsing),在这一点上,称它是应用型问答系统的先驱也不为过,尽管它所用到的技术并没有超出当年NLP领域的平均水平。好在它懂得何时使用,使用在何处。我们知道,相比起对海量网页的自动分析,问题分析具有相当的可行性。首先,问题都是一句一句的,即便在线分析也对系统负担有限。第二,从语言现象来看,问题相当于整个语言海洋的一个子集(sub-language),其句型是有限的(wh-question,yesno-question 等),根据统计调查,常用的问题及其格式在很大程度上是可以预测的。尽管有这些有利的因素,面对因特网千千万万用户的五花八门的问题,完全靠技术解构问题,以便到数据库搜寻相应的答案,也还是不可实现的梦想。Jeeves 创意的奥妙就是,技术只是一个引子,一个敲门砖,并不指望它对问题分析理解,而只是利用它对问题重新归类。理解(understanding)与归类(classification)相差何止以里计,后者是粗浅而鲁棒(shallow but robust)的自然语言技术可以胜任的。用户一个问题出来以后,根据问题中用到的关键词加上自然语言的浅层分析,Jeeves 把它映射到预制的问题模板(question templates)上去,诱导用户点击以确认其真正的问题。用户一旦点击其中的一个模板,问题也就确定了,歧义在用户的协助下自动消失,然后在查询数据库中对应问题模板的答案及其链接,岂有不成之理?
就是说,技术所做的就是把 unlimited open questions 映射到 predefined question templates 上去。这种两步走的策略,利用系统向用户求证消歧,真正做到了以不变应万变。这是何等、何等天才的创意啊。这样的创意千金难买,不怪华尔街一度对 Jeeves 宠幸有加。下面的两个图示(貌似年代久远而泛黄模糊了)展示了Jeeves当年倾国倾城的迷人风采。