“数学之美”系列一:统计语言模型

前言

也许大家不相信,数学是解决信息检索和自然语言处理的最好工具。它能非常清晰地描述这些领域的实际问题并且给出漂亮的解决办法。每当人们应用数学工具解决一个语言问题时,总会感叹数学之美。我们希望利用 Google 中文黑板报这块园地,介绍一些数学工具,以及我们是如何利用这些工具来开发Google 产品的。

系列一: 统计语言模型 (Statistical Language Models) Google 的使命是整合全球的信息,所以我们一直致力于研究如何让机器对信息、语言做最好的理解和处理。长期以来,人类一直梦想着能让机器代替人来翻译语言、识别语音、认识文字(不论是印刷体或手写体)和进行海量文献的自动检索,这就需要让机器理解语言。但是人类的语言可以说是信息里最复杂最动态的一部分。为了解决这个问题,人们容易想到的办法就是让机器模拟人类进行学习 - 学习人类的语法、分析语句等等。尤其是在乔姆斯基(Noam Chomsky 有史以来最伟大的语言学家)提出 “形式语言” 以后,人们更坚定了利用语法规则的办法进行文字处理的信念。遗憾的是,几十年过去了,在计算机处理语言领域,基于这个语法规则的方法几乎毫无突破。

其实早在几十年前,数学家兼信息论的祖师爷 香农 (Claude Shannon)就提出了用数学的办法处理自然语言的想法。遗憾的是当时的计算机条件根本无法满足大量信息处理的需要,所以他这个想法当时并没有被人们重视。七十年代初,有了大规模集成电路的快速计算机后,香农的梦想才得以实现。

首先成功利用数学方法解决自然语言处理问题的是语音和语言处理大师贾里尼克 (Fred Jelinek)。当时贾里尼克在 IBM 公司做学术休假 (Sabbatical Leave),领导了一批杰出的科学家利用大型计算机来处理人类语言问题。统计语言模型就是在那个时候提出的。

给大家举个例子:在很多涉及到自然语言处理的领域,如机器翻译、语音识别、印刷体或手写体识别、拼写纠错、汉字输入和文献查询中,我们都需要知道一个文字序列是否能构成一个大家能理解的句子,显示给使用者。对这个问题,我们可以用一个简单的统计模型来解决这个问题。

如果 S 表示一连串特定顺序排列的词 w1, w2,⋯, wn ,换句话说,S 可以表示某一个由一连串特定顺序排练的词而组成的一个有意义的句子。现在,机器对语言的识别从某种角度来说,就是想知道S在文本中出现的可能性,也就是数学上所说的S 的概率用 P(S) 来表示。利用条件概率的公式,S 这个序列出现的概率等于每一个词出现的概率相乘,于是P(S) 可展开为:

P(S) = P(w1)P(w2|w1)P(w3| w1 w2)⋯P(wn|w1 w2⋯wn-1)

其中 P (w1) 表示第一个词w1 出现的概率;P (w2|w1) 是在已知第一个词的前提下,第二个词出现的概率;以次类推。不难看出,到了词wn,它的出现概率取决于它前面所有词。从计算上来看,各种可能性太多,无法实现。因此我们假定任意一个词wi的出现概率只同它前面的词 wi-1 有关(即马尔可夫假设),于是问题就变得很简单了。现在,S 出现的概率就变为:

P(S) = P(w1)P(w2|w1)P(w3|w2)⋯P(wi|wi-1)⋯

(当然,也可以假设一个词又前面N-1个词决定,模型稍微复杂些。)

接下来的问题就是如何估计 P (wi|wi-1)。现在有了大量机读文本后,这个问题变得很简单,只要数一数这对词(wi-1,wi) 在统计的文本中出现了多少次,以及 wi-1 本身在同样的文本中前后相邻出现了多少次,然后用两个数一除就可以了,P(wi|wi-1) = P(wi-1,wi)/ P (wi-1)。

也许很多人不相信用这么简单的数学模型能解决复杂的语音识别、机器翻译等问题。其实不光是常人,就连很多语言学家都曾质疑过这种方法的有效性,但事实证明,统计语言模型比任何已知的借助某种规则的解决方法都有效。比如在 Google 的中英文自动翻译中,用的最重要的就是这个统计语言模型。去年美国标准局(NIST)对所有的机器翻译系统进行了评测,Google 的系统是不仅是全世界最好的,而且高出所有基于规则的系统很多。

现在,读者也许已经能感受到数学的美妙之处了,它把一些复杂的问题变得如此的简单。当然,真正实现一个好的统计语言模型还有许多细节问题需要解决。贾里尼克和他的同事的贡献在于提出了统计语言模型,而且很漂亮地解决了所有的细节问题。十几年后,李开复用统计语言模型把 997 词语音识别的问题简化成了一个 20 词的识别问题,实现了有史以来第一次大词汇量非特定人连续语音的识别。

我是一名科学研究人员 ,我在工作中经常惊叹于数学语言应用于解决实际问题上时的神奇。我也希望把这种神奇讲解给大家听。当然,归根结底,不管什莫样的科学方法、无论多莫奇妙的解决手段都是为人服务的。我希望 Google 多努力一分,用户就多一分搜索的喜悦。

原文发布于微信公众号 - PPV课数据科学社区(ppvke123)

原文发表时间:2014-10-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据挖掘DT机器学习

如何通过自学,成为数据挖掘“高手”?

问题: 求教各位对数据挖掘有一定了解的达人,如何从“零”开始学习数据挖掘?需要掌握哪些基本的技能?(比如是不是一定要会用R进行简单编程、掌握哪些基本的数学知识...

3555
来自专栏机器之心

让人工智能发明自己的语言:OpenAI语言理解研究新方向

选自OpenAI 作者:Igor Mordatch 等 机器之心编译 参与:李泽南、蒋思源、微胖、黄小天 在本文中,OpenAI 展示了自己的新研究,让人工智能...

3367
来自专栏人工智能头条

【AI每日播报】推荐系统老司机的10条经验 深度学习应用大盘点

1524
来自专栏大数据文摘

学界 | 马里兰大学研究:人脑神经网络的动态变化和声音感知

1793
来自专栏AI科技评论

业界 | 黄仁勋亲自撰文怼上 TPU:P40速度比你快 2 倍,带宽是你的 10 倍

AI科技评论按:前不久谷歌发布了关于TPU细节的论文,称“TPU 处理速度比当前 GPU 和 CPU 要快 15 到 30 倍”。当时就有人对此种“比较”表示质...

3656
来自专栏PPV课数据科学社区

作为一名大一新生专业是大数据专业, 应该从哪里开始入门学习?

首先你要有自己职业规划,知道数据分析和大数据是做什么的、能解决什么问题,给自己定一个小目标。一个有经验的数据科学家:最少要有2到3年工作经验,而工作经验体现在运...

3678
来自专栏新智元

【免费】5本机器学习电子书推荐(附简介与下载)

【新智元导读】 这五本精心挑选的电子书,可以帮助你更全面地了解机器学习,掌握进入这个行业必备的技能。 需要注意的是,虽然有关机器学习的免费电子书成千上万,而且其...

40110
来自专栏AI科技评论

哈工大秦兵:机器智能中的文本情感计算 | CCF-GAIR 2018

AI 科技评论按:2018 全球人工智能与机器人峰会(CCF-GAIR)在深圳召开,峰会由中国计算机学会(CCF)主办,雷锋网、香港中文大学(深圳)承办,得到了...

1582
来自专栏编程

NLP秘笈,从入门到进阶

自然语言处理(NLP)作为人工智能研究的核心领域之一,长久以来都受到广泛关注。微软全球执行副总裁沈向洋博士曾表示“ 懂语言者得天下,人工智能对人类影响最为深刻的...

3469
来自专栏数据科学与人工智能

【统计学习】为什么同一问题统计专家、机器学习专家解决方法差别那么大?

乍一看,机器学习和统计似乎是非常相似的,大家几乎不强调这两个学科之间的差异。机器学习和统计有着相同的目标 ——它们都关注数据建模,但他们的使用方法却因为它们文化...

2826

扫码关注云+社区

领取腾讯云代金券