
数学无处不在:语言、文字与数学.doc
3页数学无处不在:语言、文字与数学数学无处不在:语言、文字与数学我们每天都在说话,每天都在用语言进行交流语言文字对我们是如此的 平常,以至于绝大多数人都不会注意到语言中一些非常难以解释的现象昨天 的汉语虚词研究课上,我们就谈到了这样一个有趣的问题:在表示“仅仅”的 含义时,什么时候能够用“只”,什么时候能够用“光”?若不细想的话,大 家或许会认为两者的用法完全一样我只吃苹果”可以说成“我光吃苹果”, “光有知识还不行”也可以说成是“只有知识还不行”我们还可以举出更多 的例子来,如“别光坐着”/“别只坐着”,“光说不做”/“只说不做”等等 凭借天生的归纳性思维,一个正常人有充分的理由猜想,在表示“仅仅”的含 义时,“只”和“光”是通用的而事实上,现代汉语词典中正是把“光”字 解释为“只”有趣的是,在我们质疑只找了四个例子是否足以说明二者等价 时,殊不知这句质疑本身就成了一个反例:“只找了四个例子”不能换成“光 找了四个例子”类似地,“大会只来了 748 个人”也不能说“大会光来了 748 个人”我们继续猜想,是不是“光”不能用在数量词前面呢?也不见得 当数量词不是实指而是虚指时,我们有时也能用“光”来修饰带有数量词的名 词。
例如,在表示“只吃几个苹果”、“只吃一些苹果”的意义时,“光吃两 个苹果”的说法是很顺口的另一些例子则表明,“光”的用法似乎与它所修 饰的名词无关我只当到团长”不能说成是“我光当到团长”,但怪就怪在 “我只认识团长”却又偏偏可以说成是“我光认识团长”当到团长”和 “认识团长”有什么不同呢?仔细揣摩两者的意思,我们似乎体会到了一些微 妙的差别:“当到团长”是一个阶段性的、进度性的、里程碑性的概念,它必 须事先经过“当到连长”、“当到营长”等事件;但“认识团长”就不一样了, 没有任何规定限制我们在“认识团长”之前必须“认识连长”同样的,“找 出四个例子”是以“找了三个例子”为前提的,“来了 748 个人”也不是一下 子就能实现的问题算是想通了,但怎么来阐述它呢?在这个问题上,语言学陷入了一个 困境此时,引入数理逻辑语言对于解释这种语言现象出乎意料的方便我们 说,在副词“只”修饰的事件所处的“域”中如果存在蕴含关系,则这里的 “只”不能用“光”来替代例如,提起“吃两个苹果”,我们脑海中形成的 事件集合一定是“吃一个苹果”、“吃两个苹果”、“吃三个苹果”等等,而 后者必然蕴含前者,因此“只吃两个苹果”不能说成“光吃两个苹果”。
类似 的,“当到团长”必然推出“当到连长”,但有“认识团长”不见得有“认识 连长”,因此两者与“只”和“光”的搭配情况是不同的有人或许会说,为什么不直接说这是由“事件发生有无必然的先后顺序” 所引起的?事实上,不仅仅是事件先后顺序,在更抽象的领域里,上述理论同 样起作用例如,我们可以说“x 只是一个有理数”,但绝不会说“x 光是一个 有理数”,原因就在于,“x 是整数”、“x 是有理数”、“x 是实数”等事件 是有蕴含关系的,虽然它们之间并没有时间先后的联系在研究语言学,特别是语义学时,数理逻辑符号能够如此有效地解决问题, 以至于语言学家们完全借用了整个数理逻辑体系,开创了一个语言学分支叫做 “形式语义学”形式语义学不但把自然语言中的个体、行为、联结词、谓词 进行符号化,还引入了一些新的符号来表示会话中一些更加复杂的情形例如, “明天可能要下雨”是真的,但“昨天可能要下雨”就不见得为真了但由于 数理逻辑中没有“可能算子”,这种普遍的会话将得不到数理逻辑形式至于 一些的确存在真假但却很可能永远无法判定其真假的命题,如何确定其语义形 式就更加困难了,例如“Goldbach 猜想可能是真的”、“当初 Fermat 可能根 本就没有证到 Fermat 大定理”。
还有一种更特殊的情况:假如一个人说“微积 分的创立完全有可能提前 100 年”,虽然与事实相悖,但从会话目的上看这句 话确实为真为了解决这些问题,形式语义学引入了模态算子,将命题的“真 值”扩充为可能的、必然的、偶然的(可能但不必然的)三种,这种可能性通 常解释为“所有逻辑上可能的平行世界中是否成立”如果在某些世界中命题 成立,我们称之为“可能的”;如果在所有的世界中命题均成立,我们称之为 “必然的”;如果命题在我们所处的世界中碰巧为真,但在其它世界中不见得 为真,这就被归为“偶然的”模态算子有两个,□算子(必然算子)和◇算 子(可能算子),它们之间存在关系□p↔¬◇¬p 和◇p↔¬□¬p另一些常用的 公理有□p→p、□(p→q)→(□p→□q)、p→□◇p 等等有了这些符号,数理 逻辑便可以用于解释各种会话场合中的语句利用形式语义学,自然语言中的含混和歧义能够被非常有效地消除,便于 深入研究语义关系,也便于将其转化为计算机能够理解的语言语言学家甚至 借用数学中的公理化方法,构建了公理语义学体系,将语义推导的过程彻底地 程序化学科之间的促进作用永远是相互作用的上个世纪初,在语言学迅猛发展 之时,语言学家借用并且发展了数理逻辑符号,促使数理逻辑模态算子的产生。
但是,估计语言学家们再怎么也不会想到,随着计算机的发展,数学科学反过 来解决了语言学中的一些大问题随着网络的高速发展,搜索引擎系统急需要开发出一套中文分词技术如 何用计算机将一句话中的词语切分出来?建立一个词典并不难,难就难在当划 分方案不止一种时该如何取舍上世纪末,不少人都在这个课题上做过尝试 一种比较好想的算法是,从前往后不断匹配最长的单词很多场合下这种方案 都是可行的,但算法的反例也有不少,例如“北京大学/生活/动/中心”显然错 了,这句话其实应该划分为“北京/大学生/活动/中心”还有人曾经提出过 “最少词语切分方案”,即当一句话有多种切分方案时,取词语数最少的方案 这种方案的效果也不好,例如“我/也/考虑/过去/北京”显然不对,正确的应 该是“我/也/考虑/过/去/北京”统计语言模型出奇简单地解决了这个问题假设 x_1, x_2, ..., x_n 是一 个分词结果,我们想要计算该序列是一个合法句子的概率 P(x_1, x_2, ..., x_n),它相当于 P(x_1)·P(x_2|x_1)·P(x_3|x_1,x_2)·……·P(x_n|x_1,x_2,…,x_n-1)。
为 了使问题变得更加简单,我们采用 Markov 假设,认为一个词出现的概率仅仅与它前面那个词有关于是有 P(x_1, x_2, ..., x_n) = P(x_1)·P(x_2|x_1)·P(x_3|x_2)·……·P(x_n|x_n-1),而每个 P(x_i|x_i- 1)的值(词语 x_i 出现在 x_i-1 之后的概率)都可以在分析了大量语料之后统 计得出接下来,我们只需要在众多切分方案中选择成句概率最高的那一个即 可(这一最优化问题还可以利用动态规划进行加速)这一个模型异常简单,但实际效果出人意料的好事实上,这一模型不但 解决了分词问题,连语音识别、多音字注音、输入法智能成句输入等问题都一 并解决了,识别准确率提升了一个数量级数学思维已经不止一次帮助人们设计语言文字的机器处理算法了这里我 们还可以再看看拓扑学在文字识别方面的贡献OCR 是一种能够把以图片方式 储存的文字信息转换为文本的技术,它可以用于将打印稿成批地扫描并还原回 文本文件设计 OCR 系统的一大难点是,即使图形近似匹配算法能够非常准确 地识别出文字,若每处理一字就要与字库中的上万个字一一匹配,其处理速度 无论如何也不能投入实际应用。
一种容易想到的权宜之计便是首先匹配字库中 的常用字,若匹配成功则继续处理下一个字这种办法并不能从根本上解决问 题另一种颇具启发性的想法便是将字库中的字形按照所占平面空间的多少进 行排序分类这可以在一定程度上缩小匹配检索的范围,速度有了一些提升 此时,拓扑学再一次显示出了它强大的力量我们可以从拓扑不变量出发,寻 找字形的本质特征,把字库中的每个字进行编码分类例如,“估”字就是一 个有两个连通分量、一个环、两个度为三的点、一个度为四的点组成;或者通 俗地说,“估”字有两个相互分离的部份,有一个“洞”,有两个三叉路口, 有一个四叉路口我们就把“估”字编码为 2121对于一些模棱两可的字形, 不妨允许它存在多个编码,同属于几个不同的组识别文字时,我们只需要计 算出该字的编码,然后尝试和字库中有相同编码的字形进行匹配即可这种算 法简洁、美观而有效,并且更加神奇的是,这种算法能够直接用于各种不同的 字体,甚至当图片上的文字倾斜、颠倒、大小不一甚至扭曲时该算法仍然能够 有效地分析出文字的结构拓扑思想又一次向人们展示出了它那独特的魅力。
