写在最前
宋柔,北京语言大学信息科学学院教授,语言学及应用语言学博士生导师,北京工业大学计算机应用博士生导师。北京语言大学信息科学学院首任院长,特聘名誉院长。中国计算机学会自然语言处理专业委员会(NLP-CC)杰出成就奖获得者,多年来,宋柔教授一直从事自然语言处理方向的研究,曾主持多项国家 863 计划课题、国家自然科学基金等科研项目。
宋柔教授 1968 年本科毕业于北京大学数学力学系,1981 年硕士毕业于北京大学计算机专业,是我国改革开放之后的第一届硕士研究生,师从我国著名计算机科学家、语言学家、人工智能专家马希文教授。
自硕士毕业起,宋柔教授先后从事 LISP 语言、汉语分词技术、汉语文本校对技术、汉语语法分析等方向的研究。他研发的汉语分词系统和文本校对系统获得了多家科研机构和高校的广泛好评。由于一直从事交叉学科的研究,他培养了多位语言学和计算机科学两个学科的博士生和硕士生。
北京语言大学是教育部直属高校,以传播中国语言文化为特色,有很多外国留学生。在这所看似文科为主的大学里,计算机专业却是一个实力很强的工科专业。语言智能与技术是计算机专业中以人工智能和自然语言处理为基础的优势学科。宋柔教授作为信息科学学院的首任院长,在计算机专业的创建和发展中发挥了重要作用。
北大数学系的本科时光
宋柔,1946 年 9 月出生于江苏省苏州市。1949 年随父母到上海,1953 年又随父母到北京,在上海和北京,宋柔分别度过了小学低年级和高年级的生活。1957 年,宋柔小学毕业,同年考入北京师范大学附属中学,这所学校也是北京当时最好的中学。北师大附中非常注重学生基础理论的培养,宋柔在这里养成了脚踏实地的学习习惯,宋柔的班主任是数学老师,中学的学习也激发了他对数学的学习兴趣,他的数学成绩一直很好。
1963 年,宋柔考入北京大学数学系。大一的时候,专业没有细分,从大二起,北大的数学系分为三个方向:数学、力学以及计算方向。宋柔选择了数学方向。
大学前两年的专业课学习对宋柔影响很大,这些课程要求学生对数学的概念和定义有足够清晰的理解,在数学函数性质的学习过程中,学生要具备充分的质疑能力,可以正确的举出反例。两年的专业课程学习培养了宋柔严谨而精益求精的学习态度。
然而,从大学第二年开始,宋柔的学习时间就在减少。受到当时“走革命化、劳动化道路”的号召,学生要在学校进行很多劳动实践,宋柔和他的同学们在学校的食堂帮过厨,在学校的锅炉房清理过煤渣,还去邻近的养鸭场清理过鸭粪。
从 1963 年起,为了重新组织革命的阶级队伍,中国农村和少数城市基层开展了“四清”社会主义教育运动,即“清政治、清经济、清组织、清思想”。1965 年 12 月,宋柔和同学们暂停了在北京大学的学习,集体去四川省资阳县参加四清运动。1966 年 6 月他们回到北京。这时,文化大革命已经开始了。
1967 年秋天,宋柔和一些同学跟随概率教研室的马希文老师到北京橡胶总厂进行概率统计的实际应用研究。北京橡胶总厂的一个产品是胶鞋鞋底,传统的鞋码是一系列离散值,然而每个人脚的大小都不一样,人们脚的实际尺寸实际上是连续值。所以就算加上传统鞋码的半码也不能覆盖所有的人群。马老师希望带领学生设计出更合理的离散鞋码体系,以便适用于更多的人。
然而,当时还处于文革时期,受到很多事情的干扰,宋柔只在橡胶总厂工作了很短的时间,并没有解决建立新鞋码体系的问题。不过,通过这次实践,宋柔学习到了基本的概率论知识。
特殊时期的工作经历
1968 年,宋柔大学毕业,被分配到河北省邯郸地区馆陶县插队锻炼,在馆陶县,宋柔做过农民,做过社会主义教育工作队的队员。这期间,为了能到馆陶县水利局做技术工作,宋柔自学了清华大学土木建筑系的专业课程,包括结构力学、机械制图、砖石混凝土建筑和水工建筑等。
1972 年,宋柔如愿被分配到馆陶县水利局。在水利局,他独立完成了卫西干渠东广才桥和渡槽的测量和设计工作,并负责这两个项目的施工工作。一般的渡槽采用的都是双排立柱结构方案,宋柔通过结构计算,设计了单排立柱结构的渡槽,节省了人工和材料的成本。1973 年 7 月,在这一工程即将完工时,宋柔调去了他家庭所在的广西南宁工作,在《广西教育》编辑部,担任中小学理科教学资料的编辑。
《广西教育》是面向中小学教师的读物,小学主要面向的是数学老师,中学主要面向数理化老师。虽然那个年代大部分学校已经不能正常上课,但是受到时代影响,还有不少学校在进行跟实际生产相结合的课程,比如数学课上会教授如何计算一个沟渠的面积。
因为编辑要做文本样张的校对工作,这段与文字相关的工作经历,为宋柔之后文本的计算机辅助校对的研究打下了感性认识的基础。
1977 年,宋柔得知国家要恢复本科生和研究生的招生考试。很快,他就看到了北京大学的研究生招生目录,招生教师名录中有马希文老师,这是招生目录中他唯一认识的老师,招生的方向为计算机科学理论。
于是,宋柔决定报考马希文老师的研究生。他写信给大学时期的班主任汪仁官教授,希望汪老师能帮忙询问马老师,他是否可以报考。结果自然是好消息,马希文老师说宋柔可以报考他的研究生。
收到回复以后,宋柔开始复习考研。他找出了文革中多次搬家都舍不得丢弃的数学笔记和英语书,为了能够有更多的复习时间,他那段时间总是把需要编辑的稿件提前准备好,并把晚上的时间全部用来准备考试。
1978 年 6 月,北京大学进行了研究生招生考试的初试,宋柔顺利通过。研究生的复试是面试,数学专业要考近世代数(抽象代数),这是宋柔在大学里没学过的一门专业课。他从图书馆借了近世代数的教材,那时候南宁到北京的火车要 50 多个小时,他利用这个时间自学了近世代数,到北京后直接进行面试。
在北京,宋柔还参加了北京大学的回炉班考试。1963-1965 年入学的大学生在文革前只上了 1-2 年的大学课程就去参加劳动,这些人有一定基础,学校培养他们也会比培养没读过大学的人容易很多,所以国家希望这些人回到大学继续学习。回炉班学习也是那个年代的大学毕业生脱离农村、矿山等非专业环境的一个途径。
最终成绩出来后,宋柔通过了研究生复试和回炉班考试,他选择了回到北大攻读研究生。
1978 年 10 月,宋柔开始到北京大学数学系攻读硕士研究生。时任数学系副主任的丁石孙在研究生迎新会上发表讲话,讲话中让宋柔印象最深的一句话是:“文革一去不复返了。”
研究生期间的 LISP 语言研究
马希文老师招收的首届研究生有宋柔和沈弘两个人,专业名称是计算机科学与技术,具体的方向是做人工智能的相关研究。
刚刚入学,宋柔就得知马希文老师已经被列入出国进修的名单,可能很快就要出国进修。马老师让宋柔和沈弘开始学习《形式语言与自动机》和一系列其他课程,同时还要学习上机编程。
类似人类语言,在计算机科学中,形式语言是一套由字母表、字符串和语法规则组成的“语言”。而且形式语言比人类语言更加严密。自动机是一种按照特定规则处理这些字符串的“机器”。形式语言与自动机构成了计算理论和程序语言设计的基础。当时,因为马希文老师已经出国,这门课由北京师范学院(现首都师范大学)梅向明教授讲授。
为了学习计算理论,在吴允曾老师的指导下,宋柔、沈弘和哲学系逻辑专业的同学一起翻译了《可计算性和不可解性》一书,该书系统讲解了可计算性和计算复杂性理论。
可计算性是指某个问题是否能够被计算机或者更广义的“算法”解决。不可解性是指存在一些问题,我们不可能找到一些通用算法来解决。计算复杂性则研究的是各种问题在计算时所需要耗费的时间、空间等资源的多少。
燕京大学吴允曾老师英语特别好,又是数理逻辑和计算机科学的专家, 所以这本书翻译的很快。后来,吴允曾和马希文还一起组织翻译了科学奇书《哥德尔艾舍尔巴赫:集异璧之大成》。
讲集合论的老师是韩念国老师,韩念国是民国军事将领韩复榘之孙,是宋柔北师大附中的学长。编译原理的任课教师则是王永宁老师。
1980 年,马希文老师在美国购买了人工智能领域重要著作《Artificial Intelligence》(P.H.Winston 著)并寄回国内。北大组织了人工智能研讨班,在研讨班里,宋柔和沈弘边学边讲从美国寄来的这部学术专著。参加研讨班的还有中文系的汉语语言学家朱德熙、陆俭明等先生,以及心理学系的老师。虽然朱先生等老师德高望重,不过北大的校风之一是学术面前人人平等。他们在听讲的同时也提出了很多具有启发性的问题。
此外,当时宋柔还经常去中科院自动化所旁听楼启明老师讲授的人工智能课程。楼老师是中国人工智能学会的首届副理事长,他当时讲课用的教材是 Nils J.Nilsson 的著作《Principles of Artificial Intelligence》。
在读研过程中,宋柔最喜欢的是上机编程。当时还没有微型计算机,宋柔编程用的中型计算机 DJS-18(6912)是没有键盘和屏幕的。一台计算机占地整整一个大厅。编程时需要用到纸带,纸带上不同的孔代表不同的指令和数据。
输入程序时先在纸带上把孔打好,然后再把纸带放进输入机。打孔的时候难免有出错的时候,而修改错误也是最耗费时间的工作,这个过程要用到剪刀和胶水,不得不说,这也算是一种信息化与手工业的结合。
当时计算机是很稀缺的资源,宋柔的上机时间很紧张,常常被安排到午夜两三点。虽然很辛苦,但是那段经历让宋柔体会到了成功调试程序后所带来的成就感。
1980 年,清华大学引进了两台小型计算机,装有 LISP 语言。LISP 是一种高级计算机语言,也是最早用于人工智能的程序设计语言。马希文老师推荐宋柔和沈弘到清华大学学习 LISP 语言,在清华,陆玉昌、石纯一和黄昌宁老师指导他们上机操作。
1981 年,马希文教授在斯坦福大学访问结束,回到北大。他为宋柔定下了硕士论文的研究方向:实现可移植的 LISP 语言。
当时的人工智能技术大多是基于规则的方法,LISP 很擅长符号计算,所以对于人工智能的研发很适用。那时候计算机的型号很多,根据计算机的编译原理,在一种计算机上编写的 LISP 程序一般不能在另一个型号的计算机上运行。宋柔要开发一种可移植的 LISP 的解释系统,就可以让每个 LISP 程序在多种型号的计算机上都能运行。
1982 年,宋柔和沈弘开发的可移植 LISP 语言在 HP3000(惠普首款通用计算机)上成功运行,随后又移植到 Victor 9000(英国 Apricot Computers 公司研制的个人计算机) 和 IBM 计算机等设备上成功运行。他的可移植 LISP 系统当时被用于 LISP 教学和机器翻译等工作,得到了业内广泛的好评。
同年 4 月,中国电子学会计算机专业学会人工智能专业学组在杭州召开报告会,宋柔的工作得到了陆汝钤教授等老师的肯定。1983 年,宋柔的工作《LISP 语言和形式翻译》在《计算机研究与发展》上发表。
1982 年 1 月,宋柔硕士论文答辩,答辩委员会主席为吉林大学管纪文老师,答辩委员会委员为北京大学数学系的杜淑敏和马希文老师。
硕士毕业时,马希文教授已经有了招收博士研究生是资格,但是由于无法解决两地分居和住房问题,宋柔只能选择就业。就这样,他被分配到北京计算机学院(后并入北京工业大学计算机学院)人工智能实验室工作。
当时,北京计算机学院计划以计算机科学理论和人工智能技术为基础,办一座高水平大学。1981 年夏天,北京计算机学院计算机中心建成,并引入了 HP3000。北京大学洪加威教授在这里建立了理论计算机实验室,马希文教授在这里建立了人工智能实验室。
在北京计算机学院,宋柔继续他的可移植 LISP 语言研究。他将 Victor 9000 的图形处理功能嵌入 LISP 语言,使 LISP 语言可以进行图形处理工作。
此外,他还按照马希文老师的设想,进行了 LISP 动态编译的研发工作。动态编译,就是在程序运行的过程中根据运行结果实时修改程序自身,再把修改好的程序进行编译并重新运行。这不能不说是编程语言的一种智能。动态编译提高了 LISP 语言的编译效率,当时经过鉴定会的评测证明,程序的运行速度甚至超过了以效率著称的 C 语言。
之后,宋柔又带领学生将函数型语言 LISP 和逻辑型语言 PROLOG 在功能上结合起来,在这基础上开发出 INDLISP 语言。他的师弟裘宗燕还把 LISP 的符号表达式嵌入到了 C 语言中。这些工作都满足了上世纪八十年代规则驱动的人工智能对编程语言的需要。
1987 年,宋柔被评为副教授。
八十年代中后期,在马希文老师的带领下,北京计算机学院开始与黑龙江大学合作进行了英汉机器翻译的研究。黑龙江大学参与研究的有英语系的宁春岩教授和侯方教授等人。
当时的机器翻译工作还采用基于规则的算法,宋柔教授在自己研发的 LISP 语言 DCLISP 上实现了这些规则。在 IBM 的微型计算机上,他的算法平均 1 秒钟可以将 20 个英文句子翻译成中文。算法速度比当时其他的机器翻译系统快出一个数量级。
1990 年,由马希文教授和宋柔教授撰写的《LISP 语言》在高等教育出版社出版。
1990 年代之后,业内不再看好基于规则的人工智能专家系统。宋柔教授关于 LISP 语言的研究也只能告一段落。
在北京计算机学院开始计算语言学研究
也是在 1990 年,宋柔获得了教育部公派高级访问学者的资助名额,马希文教授希望宋柔去国外从事计算机和语言学相结合的研究。在马希文教授的推荐下,宋柔前往美国伊利诺伊大学香槟分校(UIUC)语言实验中心进行访问学者的研究工作,合作导师为语言实验中心主任郑锦全教授。郑教授是著名的语言学家,后来担任了台湾中央研究院语言研究所所长,并当选为台湾中央研究院院士。
郑教授建议宋柔教授进行汉语篇章分析的研究。那段时间,宋柔教授一直泡在 UIUC 的东亚图书馆里,阅读他过去一直没有时间阅读的中文小说,去分析中文句子的结构。
宋柔教授注意到了汉语标点句之间的成分共享现象。后来,宋柔把这项研究延伸到标点句的话头共享现象,就是说,在汉语中,第一句话可以作为后边若干句话的大前提。
回国后,宋柔教授也一直在做这项研究。2015 年后,宋柔教授还同他的博士生、广东外语外贸大学外语研究与语言服务协同创新中心葛诗利教授的团队合作,把汉语的这项研究扩展到英语,他们发现英语句子也有类似的结构,并建立了英汉小句对齐的语料库。这个语料库中,每个英语有一个汉语译文,英汉句子内的小句与汉语译文的小句之间建立起对应关系,对于翻译研究和比较语言学研究很有意义。
这些工作先后获得了四个国家自然科学基金和一个北京市自然科学基金的资助,发表了多篇论文。
谈到计算语言学,宋柔教授告诉我,做研究不能光靠读论文。计算语言学学者要做计算机科学和语言学的桥梁,做好语言学的形式化工作。很多好的研究是需要直觉的,有时要凭借着自己的语感去发现和解决真正的问题。
编辑职业经历催生的文本校对研究
1993 年,宋柔晋升为教授。
从上世纪九十年代初开始,与国际上的科研机构一样,中国的人工智能科研领域越来越多的采用基于统计的算法。1992 年,宋柔教授在一个计算语言学学术会议上受到统计方法的启发,在广西做编辑的工作经历让他想到了这种方法可以用于计算机的文本自动校对,校对工作对于编辑来说非常重要,如果计算机可以辅助编辑进行文本校对,校对的速度和准确率都会有很大提高。
回去后,宋柔教授做了一个实验,他把报纸上一些文章的字词故意改成错的,然后分别计算这些错误字词与其他字词跟上下文的共现频率。结果发现,与错误字词相关的共现频率远低于正常词语的共现频率,证明了统计方法用作计算机的文本辅助校对工作是可行的。
于是,宋柔教授就开始了文本自动校对的研究。计算机校对首先要解决的是汉语分词问题。英语句子中的词与词由空格区分,而中文句子中的词都是连在一起的,要找出错误的字词并给出修改提示,首先要将中文句子中的词语分开,这就是自然语言处理中的分词任务。
分词任务中还涉及到词语消歧和专有名词的识别。分词过程中,一句话的词语可能有多个划分结果,但是只有一种结果符合整体句子的语义,词语消歧就是要找到最符合句子整体语义的划分结果,比如“提高人民生活水平”中“提高 / 人民 / 生活 / 水平”, 是一种分词结果,“提 / 高人 / 民生 / 活水 / 平”也是一种分词结果,显然正确的结果是前者。这项任务需要通过特定的计算机算法来解决。
专有名词包括人名、地名、社会机构名称等特定个体事物的名称,想识别这些词语,就需要有一个数据量较大的专有名词词库作为算法的训练基础。人名的分布跟地域是相关的,比如福建省的林姓较多,而广东省的黄姓较多。想得到汉族姓名用字的概率,必须要找一个姓名分布多样性足够高的地区采集人名。
宋柔教授的团队选择了北京一个人口多样性相对较高的地区,这个地区的人口来自全国各地。他们找到了这个地区的派出所,希望能拿到这一区域的户籍名单。派出所的人理解并且支持宋柔教授的科研需求,他们给出了一个花名册,花名册中只包含这个区域人员的姓名和性别信息,隐藏了每个人的其他户籍信息。这样的数据已经可以用于人名识别算法的训练了。
宋柔教授用花名册中的数据进行人名识别,又用地名手册和电话号码黄页训练了地名和机构名称的识别算法。这些工作使他们研发的分词系统在效率和准确率方面都比较高。
分词结果可以得到待校对文本的词语,对照正常文本的词语共现频率可以发现文本是否出现错误,这是计算机文本校对系统的基本方法,分词系统是计算机文本校对系统的基础,但是还不是全部。为了得到更准确的文本校对结果,宋柔教授团队找到了中国出版协会校对委员会,拿到了常见错词表和一批以往校对过程中的正误对照记录,这些数据大幅改善了文本校对系统的性能。
基于这些研究工作,宋柔教授领衔开发的分词系统《工智分词通》和校对系统《工智校对通》在业内得到了广泛好评,先后应邀在 IBM、Intel 等公司演示,在北京大学出版社、建筑工业出版社等多家机构得到实际应用。他的团队还把这些技术转让给了微软公司中国研发中心。
1998 年,宋柔教授的分词技术同清华大学计算机系蔡莲红教授的语音合成技术结合,成功开发出《工智朗读通》系统,这个系统可以自动朗读汉语文章,还能校对汉语文章的语音朗读,可以应用于多个文本朗读场景。这个系统的语音自然流畅,准确率高。当时,国家 863 计划专家组认为这个系统达到了国内外领先水平。
同年,宋柔教授主持的项目《计算机辅助汉语校对系统》获北京市科技进步二等奖。
1999 年,微软中国研究院在北京成立,研究院的自然语言处理部主任黄昌宁教授邀请宋柔教授去做访问学者。宋柔教授的分词和校对系统在研究院内部的评测中获得好评,微软也采购了这套系统。
因为分词和校对的系统性能出色,在微软工作之后,宋柔教授又先后受邀到香港城市大学邹嘉彦教授团队和香港理工大学陆勤教授团队进行合作研究。
多年来,宋柔教授关于分词和文本校对的研究先后得到国家 863 项目、国家自然科学基金、北京市自然科学基金以及北京市教委研究开发基金的资助。在国家自然科学基金的结题考核中,宋柔教授的项目被评为特优。
北语信息科学的首任掌门人
2000 年,宋柔教授调入北京语言大学。
早在上世纪八十年代,北京语言学院(现北京语言大学)院长吕必松教授邀请马希文教授建立了语言信息处理研究所,这是国内第一个以语言信息处理为研究方向的研究所,开展了汉语信息处理、计算机辅助对外汉语教学等项研究。
2000 年,在北京语言大学领导的筹划和领导下,计算机系成立,刚调入该校的宋柔教授担任首任系主任。2003 年计算系升级为信息科学学院,宋柔教授担任首任院长,并担任语言信息处理研究所的第三任所长。
宋柔教授告诉我,信息学院的发展有一段比较曲折的经历。开始的时候,大家都觉得北京语言大学是文科院校,是学语言的学校,不愿意到这里来学计算机。
不过,学校有强大的语言教学环境,英语教学基础十分扎实。这里的毕业生不光有计算机专业能力,而且英语非常好。这样的双重优势使他们受到用人单位的欢迎,他们在单位的表现往往胜过其他名校毕业生。尤其这几年,在人工智能大潮的推动下,进入北京语言大学的学生更多地愿意选择信息科学学院的专业。
在北京语言大学,宋柔教授指导的研究生罗智勇将他们的分词系统进一步改善成汉语通用分词系统 GPWS。该系统可以在华语的不同地区、不同行业领域满足不同的分词需求,是国内外第一个通用的汉语分词系统。
2001 年,宋柔教授团队研发的《GPWS 现代汉语通用分词系统 V1.0》获得国家版权局授予的软件著作权。
2002 年,宋柔教授获得国务院政府特殊津贴。
同年,宋柔教授开始在北京语言大学招收语言学博士生。
2003 年,宋柔教授开始在北京工业大学招收计算机专业的博士生。
因为北京语言大学有很多学习汉语的外国留学生,他们会写出很多错别字。教汉语的老师希望找出写错字的原因和改进方法,但是这些错别字是无法使用通用的输入法打出来的。
一般的输入法只能支持封闭字库中正确汉字的输入和编码。历史上的异体字、多种民俗字、外族的类汉字和其他特殊的汉字(比如西安著名小吃 biang biang 面的 biang 字)是无法正常输入的。
宋柔教授认为,汉字本质上是一个开放的系统,字形是可以任意组合的,但是输入法的字库只能打出有限的汉字,这不能满足汉字所有形态的输入。为此,宋柔教授指导博士生林民对开放性的汉字形式化表示方法进行了研究,这项研究获得了国家发明专利。
宋柔教授团队还进行了基于汉语词性的文本检索的研究,这一研究加入词性信息,他们开发的《工智检索通》可以根据用户自定义的词形和词性进行更灵活准确的文本检索,
2006 年,宋柔教授主持的项目《现代汉语通用分词系统及其应用》获得教育部科技进步二等奖。
同年,宋柔教授被评为北京市优秀教师。
2021 年,宋柔教授荣获中国计算机学会自然语言处理专业委员会"杰出成就学者"奖。
2022 年,宋柔教授的专著《小句复合体的语法结构》由商务印书馆出版。
多年来,宋柔教授先后培养了工学博士 5 名,文学博士 11 名,工学硕士 11 名,文学硕士 7 名。
如今,78 岁的宋柔教授还在进行科研工作。宋柔教授告诉我,他正在帮他的学生所带的博士生修改开题报告,我们访谈结束后他们就要开一个相关的会议。宋柔教授觉得,科研最重要的价值是探索未知和服务社会,这个过程也可以得到无尽的快乐。
访谈结束后,我时常想起宋柔教授所说的研究者直觉的重要性,还有他对语言学形式化工作的执着。
现在的语言大模型发展速度飞快,看似几乎可以处理所有语言学问题。但是语言学也是不断发展的,大批的新词和新的说法可以在这个时代迅速流行,也有很多曾经的常用词逐渐不被现代人使用。大模型无法预测这种变化,而只有语言学家和计算语言学家们可以理解这种潮流的逆转,他们也能是识别出语言趋势转变后真正的沉淀。
人工智能可以解决很多问题,但是语言和语言学是属于人的。以宋柔教授的研究为例,从计算机自动分词到文本校对,从汉字的开放形式化表示到小句复合体的语法结构。因为有这些语言学家和计算语言学家的底层思考研究,我们才能更深刻的理解语言,才更明白语言不只是人类的沟通工具,更是人类关于美的伟大创造。
作者简介
秦海龙,香港科技大学社会科学部博士后研究员,中国中文信息学会社会媒体处理专业委会委员。主要研究方向为中国人工智能发展史和计算社会学。博士毕业于哈尔滨工业大学社会计算与信息检索研究中心,前自然语言处理研发工程师,曾就职于小米科技和三角兽科技。
评论