数学之美 系列十五 繁与简 自然语言处理的几位精英

我在数学之美系列中一直强调的一个好方法就是简单。但是,事实上,自然语言处理中也有一些特例,比如有些学者将一个问题研究到极致,执著追求完善甚至可以说完美的程度。他们的工作对同行有很大的参考价值,因此我们在科研中很需要这样的学者。在自然语言处理方面新一代的顶级人物麦克尔·柯林斯 (Michael Collins) 就是这样的人。

柯林斯:追求完美

柯林斯从师于自然语言处理大师马库斯 (Mitch Marcus)(我们以后还会多次提到马库斯),从宾夕法利亚大学获得博士学位,现任麻省理工学院 (MIT) 副教授(别看他是副教授,他的水平在当今自然语言处理领域是数一数二的),在作博士期间,柯林斯写了一个后来以他名字命名的自然语言文法分析器 (sentence parser),可以将书面语的每一句话准确地进行文法分析。文法分析是很多自然语言应用的基础。虽然柯林斯的师兄布莱尔 (Eric Brill) 和 Ratnaparkhi 以及师弟 Eisnar 都完成了相当不错的语言文法分析器,但是柯林斯却将它做到了极致,使它在相当长一段时间内成为世界上最好的文法分析器。柯林斯成功的关键在于将文法分析的每一个细节都研究得很仔细。柯林斯用的数学模型也很漂亮,整个工作可以用完美来形容。我曾因为研究的需要,找柯林斯要过他文法分析器的源程序,他很爽快地给了我。我试图将他的程序修改一下来满足我特定应用的要求,但后来发现,他的程序细节太多以至于很难进一步优化。柯林斯的博士论文堪称是自然语言处理领域的范文。它像一本优秀的小说,把所有事情的来龙去脉介绍的清清楚楚,对于任何有一点计算机和自然语言处理知识的人,都可以轻而易举地读懂他复杂的方法。

柯林斯毕业后,在 AT&T 实验室度过了三年快乐的时光。在那里柯林斯完成了许多世界一流的研究工作诸如隐含马尔科夫模型的区别性训练方法,卷积核在自然语言处理中的应用等等。三年后,AT&T 停止了自然语言处理方面的研究,柯林斯幸运地在 MIT 找到了教职。在 MIT 的短短几年间,柯林斯多次在国际会议上获得最佳论文奖。相比其他同行,这种成就是独一无二的。柯林斯的特点就是把事情做到极致。如果说有人喜欢“繁琐哲学”,柯林斯就是一个。

布莱尔:简单才美

在研究方法上,站在柯林斯对立面的典型是他的师兄艾里克 · 布莱尔 (Eric Brill) 和雅让斯基,后者我们已经介绍过了,这里就不再重复。与柯林斯从工业界到学术界相反,布莱尔职业路径是从学术界走到工业界。与柯里斯的研究方法相反,布莱尔总是试图寻找简单得不能再简单的方法。布莱尔的成名作是基于变换规则的机器学习方法 (transformation rule based machine learning)。这个方法名称虽然很复杂,其实非常简单。我们以拼音转换字为例来说明它:

第一步,我们把每个拼音对应的汉字中最常见的找出来作为第一遍变换的结果,当然结果有不少错误。比如,“常识”可能被转换成“长识”;

第二步,可以说是“去伪存真”,我们用计算机根据上下文,列举所有的同音字替换的规则,比如,如果 chang 被标识成“长”,但是后面的汉字是“识”,则将“长”改成“常”;

第三步,应该就是“去粗取精”,将所有的规则用到事先标识好的语料中,挑出有用的,删掉无用的。然后重复二三步,直到找不到有用的为止。

布莱尔就靠这么简单的方法,在很多自然语言研究领域,得到了几乎最好的结果。由于他的方法再简单不过了,许许多多的人都跟着学。布莱尔可以算是我在美国的第一个业师,我们俩就用这么简单的方法作词性标注 (part of speech tagging),也就是把句子中的词标成名词动词,很多年内无人能超越。(最后超越我们的是后来加入 Google 的一名荷兰工程师,用的是同样的方法,但是做得细致很多)布莱尔离开学术界后去了微软研究院。在那里的第一年,他一人一年完成的工作比组里其他所有人许多年做的工作的总和还多。后来,布莱尔又加入了一个新的组,依然是高产科学家。据说,他的工作真正被微软重视要感谢 Google,因为有了 Google,微软才对他从人力物力上给于了巨大的支持,使得布莱尔成为微软搜索研究的领军人物之一。在研究方面,布莱尔有时不一定能马上找到应该怎么做,但是能马上否定掉一种不可能的方案。这和他追求简单的研究方法有关,他能在短时间内大致摸清每种方法的好坏。

由于布莱尔总是找简单有效的方法,而又从不隐瞒自己的方法,所以他总是很容易被包括作者我自己在内的很多人赶上和超过。好在布莱尔很喜欢别人追赶他,因为,当人们在一个研究方向超过他时,他已经调转船头驶向它方了。一次,艾里克对我说,有一件事我永远追不上他,那就是他比我先有了第二个孩子 :)

在接下来了系列里,我们还会介绍一个繁与简结合的例子。

转自:http://googlechinablog.com/2006/08/blog-post_115634657041368311.html

数学之美 系列十五 繁与简 自然语言处理的几位精英相关推荐

  1. 数学之美 系列十六 (下)- 不要把所有的鸡蛋放在一个篮子里 最大熵模型

    数学之美 系列十六 (下)- 不要把所有的鸡蛋放在一个篮子里 最大熵模型 我们上次谈到用最大熵模型可以将各种信息综合在一起.我们留下一个问题没有回答,就是如何构造最大熵模型.我们已经所有的最大熵模型都 ...

  2. 数学之美 系列十六 (下)- 不要把所有的鸡蛋放在一个篮子里 最大熵模型...

    数学之美 系列十六 (下)- 不要把所有的鸡蛋放在一个篮子里 最大熵模型 我们上次谈到用最大熵模型可以将各种信息综合在一起.我们留下一个问题没有回答,就是如何构造最大熵模型.我们已经所有的最大熵模型都 ...

  3. 数学之美 系列十六(上) 不要把所有的鸡蛋放在一个篮子里 -- 谈谈最大熵模型

    数学之美 系列十六(上) 不要把所有的鸡蛋放在一个篮子里 -- 谈谈最大熵模型 [我们在投资时常常讲不要把所有的鸡蛋放在一个篮子里,这样可以降低风险.在信息处理中,这个原理同样适用.在数学上,这个原理 ...

  4. 数学之美 系列十 有限状态机和地址识别

    数学之美 系列十 有限状态机和地址识别 地址的识别和分析是本地搜索必不可少的技术,尽管有许多识别和分析地址的方法,最有效的是有限状态机. 一个有限状态机是一个特殊的有向图(参见有关图论的系列),它包括 ...

  5. 数学之美系列16(转帖)

    数学之美 系列十六(上) 不要把所有的鸡蛋放在一个篮子里 -- 谈谈最大熵模型2006年10月8日 上午 07:27:00 发表者:Google 研究员,吴军 [我们在投资时常常讲不要把所有的鸡蛋放在 ...

  6. 数学之美系列五 -- 简单之美:布尔代数和搜索引擎的索引

    数学之美系列五 -- 简单之美:布尔代数和搜索引擎的索引 [建立一个搜索引擎大致需要做这样几件事:自动下载尽可能多的网页:建立快速有效的索引:根据相关性对网页进行公平准确的排序.我们在介绍 Googl ...

  7. 数学之美 系列二十 -自然语言处理的教父 马库斯

    数学之美 系列二十 -自然语言处理的教父 马库斯 2007年4月13日 下午 07:03:00 <script language=javascript> uT("time1176 ...

  8. 数学之美系列14(转帖)

    数学之美 十四 谈谈数学模型的重要性2006年8月9日 上午 09:12:00 发表者:吴军,Google 研究员 [注:一直关注数学之美系列的读者可能已经发现,我们对任何问题总是在找相应的准确的数学 ...

  9. 数学之美 系列十一 - Google 阿卡 47 的制造者阿米特.辛格博士

    数学之美 系列十一 - Google 阿卡 47 的制造者阿米特.辛格博士 枪迷或者看过尼古拉斯.凯奇(Nicolas Cage)主演的电影"战争之王"(Lord of War)的 ...

最新文章

  1. win7清除系统托盘图标的方法
  2. mysql多实例(mysqld_multi方式)
  3. MYSQL中用正则筛选一定的数据
  4. mysql 日期时间类型 自动转型 及 运算
  5. 腾讯云ubuntu18安装图形化界面
  6. 滚动模式_违停车辆有可能被强制拖车!嘉兴交警开启滚动式兵团化作战模式
  7. 安装oracle12c之前,centos7安装oracle12c数据库的坑
  8. Command(命令)
  9. html双人可悔棋五子棋源码,MATLAB实现五子棋游戏(双人对战、可悔棋).pdf
  10. lol走砍e源码_【精选】某LOL走砍E盾+VMP卡登陆解决办法
  11. 分析virtio-blk+qemu+spdk环境中virtio-blk不用执行virtqueue_kick操作通知后端处理IO的原因
  12. redis 系列——5、跳跃表
  13. 第一次用 PHPUnit 写测试就上手(上)
  14. re 正则表达式匹配中文
  15. Unity-Live2d(表情系统,姿势动作与口型功能的实现)
  16. Spark SQL_JZZ158_MBY
  17. opengl 教室 地球仪 模型
  18. c++ windows网络编程底层涉及库
  19. 如何配置TeXstudio+SumatraPDF+Texlive
  20. vue oss 上传图片

热门文章

  1. 【Python】sort 和 sorted 的用法区别
  2. 12 月机器学习新书:《可解释机器学习方法的局限》,免费下载!
  3. 2018 最好的机器学习实用指南书籍来了!
  4. ubuntu mysql 改密码_ubuntu——mysql的安装(1)
  5. 用SQL语句添加删除修改字段及一些表与字段的基本操作 .
  6. linux文件-access函数
  7. JZ2440学习总结1
  8. BugkuCTF-reverse:入门逆向
  9. 常用DOS系统功能调用(INT 21H)一览表
  10. 动态规划——01背包问题