大规模汉语标注语料库的制作与使用

2023-10-29 11:40

本文主要是介绍大规模汉语标注语料库的制作与使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大规模汉语标注语料库的制作与使用

段慧明 松井久仁於 徐国伟 胡国昕 俞士汶

引言

富士通研究开发中心和北京大学计算语言学研究所从1999年4月起,以人民日报1998年上半年的语料为对象,合作制作大规模汉语标注语料库。富士通研究开发中心已使用这个标注语料库的部分成果,尝试研制汉语切分系统。

1999 年11月4日,富士通研究开发中心在北京举行了题为《大规模汉语标注语料库的制作与使用》的研讨会。研讨会上,北京大学俞士汶教授作了题为《大规模汉语标注语料库的制作》的报告,富士通研究开发中心松井久仁於主管研究员作了题为《基于标注语料学习的汉语切分系统的研制》的报告。本文是根据上述两篇报告整理加工而成的。

语言资源

自20世纪70年代美国开始制作语料库以来,各国制作了许多语料库。除了文本语料外,还有语音语料,语料库的规模越来越大,并且还出现了附加了很多标记的标注语料库。

全世界的语料库现状

在20世纪70年代,美国制作了著名的Brown Corpus。当时语料库的规模大约在百万词左右,语料的种类也仅限于文本。进入80年代后,英国制作了标注语料库LOB Corpus,同时还制作了语音语料库Birmingham Corpus。这一时期语料库的特征是比70年代规模大,种类也丰富得多。90年代之前的语料基本上英语的。90年代以后,英语以外的语料也出现了,比如日本的EDR语料,NHK的新闻稿语料,日本经济新闻10年语料,以及人民日报50年语料。

在笔者所了解的范围内,富士通和北京大学共同制作的半年人民日报(约1,300万汉字)标注语料库是迄今为止世界上规模最大的之一[1] 。图1表示世界上主要语料的现状。

语言资源的种类

语料库大体上有以下这些种类。

- 文本 / 语音

- 口语 / 书面语

- 单语种 / 多语种 (多语种的又分对译的与可比较的)

- 带标注 / 不带标注

已有的标注有:词性标记,短语标记,格关系,依存关系,语法树,语义。

北大与富士通合作制作的是上面各种类型中带重体的:即单语种书面语的文本语料库,对语料进行了词语切分和词性标注,并且对短语型专有名词加了标注。

世界上主要语料库的现状

图1:世界上主要语料库的现状

汉语标注语料制作的必要性

汉语书面语文本和其它语言相比,有以下特点:

  • 基本上都是汉字,词与词之间没有间隔。这一点与英语显然不同。日语中虽然也有大量汉字,词与词之间也没有间隔,但日语文本除汉字外同时也有平假名、片假名,甚至也有较多的罗马字。不同的字种为词语的切分提供了较多的信息。
  • 汉语没有日语那种黏着于实词的助词(Postpositional),这些助词为词语切分和词性标注提供了较多的信息。汉语当然也有介词(Prepositional)、连词、助词(Auxiliary)等虚词,但这些虚词的词形往往又是实词,对计算机自动处理来说,不像日语助词那样有明显的区分作用。
  • 汉语的词没有形态变化。英语和日语的动词、形容词都有词尾变化。这些词尾变化为词性标注提供了较多的信息。
  • 汉语的词在使用时既没有形态变化,又表现出多功能性(如动词呈优势分布的主要功能虽然是担任主谓结构中的谓语和述宾、述补结构中的述语,但也可以担任主语和宾语,而且形态没有任何变化。汉语中的兼类词(如名词的“锁”与动词的“锁”,区别词的“共同”和副词的“共同”)在使用时也没有形态上的变化(如“门锁”与“锁门”,“共同利益”与“共同奋斗”),这个特点给词性标注带来本质性的困难。

正是由于汉语有以上特点,由人工编写适用于大规模文本的词语切分规则和词性标注规则几乎是不可能的。目前汉语词语切分和词性标注软件的精度尚不能完全满足实用的要求,影响了汉语自然语言处理技术的发展和应用。

制作大规模汉语标注语料库的目的之一是从中抽取词的频度信息和细粒度的语法规则,把这些基于大规模语料统计的知识放入词语切分和词性标注系统中,制作高精度的汉语处理软件。由于富士通已有适用于日语的软件,其算法是独立于具体的语言的,通过同汉语知识的结合,探讨制作多语种词切分系统的可能性。

大规模汉语标注语料库的制作

规范的制订

制作大规模汉语标注语料库的最基础的工作是制订语料库加工规范。北大同富士通协商后,制订“现代汉语语料库加工(词语切分与词性标注)规范”的基本思路如下:

  • 词语切分的规范尽可能同中国国家标准 GB13715 “信息处理用现代汉语分词规范” (以下简称为“分词规范”)[2] 保持一致。由于现在词语切分与词性标注是结合起来进行的,而且北大又有了一部《现代汉语语法信息词典》[3] ,可作为词语切分与词性标注的基本参照。在新的条件下,适应新的应用需求,有必要对“分词规范”作必要的调整和补充。
  • 词性标注使用小标记集。除了《现代汉语语法信息词典》中的 26 个词类标记(名词 n 、时间词 t 、处所词 s 、方位词 f 、数词 m 、量词 q 、区别词 b 、代词 r 、动词 v 、形容词 a 、状态词 z 、副词 d 、介词 p 、连词 c 、助词 u 、语气词 y 、叹词 e 、拟声词 o 、成语 i 、习用语 l 、简称 j 、前接成分 h 、后接成分 k 、语素 g 、非语素字 x 、标点符号 w )外,增加了以下 3 类标记:
    • ①专有名词的分类标记,即人名 nr ,地名 ns ,团体机关单位名称 nt ,其他专有名词 nz ;
    • ②语素的子类标记,即名语素 Ng ,动语素 Vg ,形容语素 Ag ,时间语素 Tg ,副语素 Dg 等;
    • ③动词和形容词的名词用法标记 vn ,an 和副词用法标记 vd , ad 。合计约 40 个左右。同汉语信息处理学界的某些研究相比,这是一个小标记集 [4,5] 。
  • 与已有资源的配合。尽管使用的是小标记集,但由于规范及据此加工的语料库同《现代汉语语法信息词典》是紧密联系的,当这些基础研究成果同应用研究(中文信息检索、中文信息提取、汉外机器翻译等)相衔接时,以语料中的词语及词性为入口,可以快速、准确地检索到词典中词语的丰富的语法属性信息。这就是说,经过切分、标注的语料库同《现代汉语语法信息词典》相结合,可以形成一个超文本的语言知识库。利用这样的语料库又可以验证和丰富词典中词语的语法属性,并向词语的概率语法属性研究发展。同时小标记集缓解了 n 元语法所固有的数据稀疏问题。
  • 针对新闻语料的特点,对专有名词进行了细致的标注。
  • 规范的多元性。既要适应语言信息处理与语料库语言学研究的需要,又要能为传统的语言学研究提供充足的素材;既要适合计算机自动处理,又要便于人工校对。

切分标注软件的开发

大规模语料的加工不可能单靠人力完成。从1992年起,北大计算语言所就开始了语料库多级自动加工的研究 [6]。从1993年开始开发基于《现代汉语语法信息词典》的“词语切分与词性标注”软件 [7],经3届博士研究生的改进与发展,并经很多用户检验,现在已相当成熟:速度快,精度高。这些基本资源和工具的存在使得本项工程所需投入的人力、费用减少到可以承受的程度。

工程的实施

整个工程的工作流程大致如下安排。

第一步:制订了《现代汉语语料库加工——词语切分与词性标注规范》。

第二步:以《规范》为基准,改进了“词语切分与词性标注”工具软件。

第三步:人工校对由“词语切分与词性标注”软件加工的一天语料。在实践的基础上,制订了详细解释《规范》的《现代汉语语料库加工(词语切分与词性标注)手册》。《手册》列举了大量实例和典型错例,对统一对《规范》的理解很有帮助。

第四步:以《规范和手册》为教材,对参加工作的人员进行培训。

第五步:全面铺开,同时对几个月的语料并行地进行加工和校对。

第六步:反馈机器加工与人校对的结果,既增加软件功能,又改进软件性能。当用改进后的软件加工新的语料时,效果更好。人工校对的相对工作量逐步减少。

第七步:为了强化参加人员对《规范》认识的一致性,并对《规范》的局部遗漏进行补缺,将校对中发现的一个个具体问题及解决方案整理成《通报》,发送给参加者。已发布了5个《通报》。

第八步:完成一部分,验收一部分。及时整理成果。

基于标注语料库的汉语切分系统

基本原理

富士通研究所已经开发了精度相当高的日语词切分系统 [8]。现在以日语切分系统为基础,加上从大规模汉语标注语料库中抽取的语法规则和单词的频度信息,试作了汉语词切分系统。抽取方法采用隐马尔可夫模型。

设文本S由单词串W=w1,w2, …,wn和标记集T=t1,t2, …,tn 组成,汉语的词切分就是求使单词串和表记集的联合概率P(W,T)为最大的词切分和词性标注的组合。P(W,T)可由如下隐马尔可夫模型近似求得 [9]。

其中,

P(wi|ti)的意思是在整个语料中,在词性ti的条件下,单词wi出现的概率;P(ti|ti-1)的意思是词性ti-1与词性ti连着出现的概率。P(wi|ti)放入词典,而P(ti|ti-1)则作成语法规则。

切分句子时,切出所有的可能的切法,用词典中单词出现的概率和语法规则中词性和词性的连接概率,计算所有切法的概率总值,概率值最大的为第一候选。下面是例句「我去北京」的所有切分结果。但「我 /r 去 /v 北京 /ns 」的值最大,是第一候选。其中 r 是代词, v 是动词, vn 是动名词, ns 是地名, f 是方位词, j 是缩略语, Vg 是动语素。

注:“北”不可能是Vg,“去”也几乎不可能是vn。但大规模语料标注,难以保证绝对不出现“瑕疵”,但偶然出现的“瑕疵”,其概率值是非常小的,不会影响第一候选「我/r 去/v 北京/ns」。

词典的制作

从标注语料中把单词和词性抽取出来,再标上该词在整个语料中以这个词性出现的概率。下面是切分词典的例子:

孤立 v 223
孤零零 z 141
关帝庙 n 229

汉字是单词表记,英文字母是单词词性,数字是规范化后的单词出现频度。

切分规则的制作

从标注语料中计算出两个词性的相邻的概率,并作为词性的接续值放入语法规则。下面是语法规则的例子:

(defconnect
((b))
((p)) 151)

这个例子表示区别词 b 和介词 p 以接续值151接续。接续值是规范化的。

试验

通过对10天的人民日报标注语料进行学习,并制作了词切分系统所需的词典和语法规则,对中文句子进行切分。切分速度为每秒1.3万词。

试验分封闭试验和开放试验。封闭试验是测试对象包含在学习对象中;开放试验是测试对象不包含在学习对象中。学习了10天语料后,封闭试验的正确率为93%,开放试验的正确率为82%。下面图2和图3分别表示封闭试验和开放试验的结果。

图 2. 封闭测试结果

图 2. 封闭测试结果

图 3. 开放测试结果

图 3. 开放测试结果

从图 2 可以看出,随着学习语料量的增加,封闭测试的正确率有所下降。另外,标注错误值比切分错误值要大。从图 3 可以看出,随着学习语料量的增加,开放测试的正确率上升。另外标注错误略有上升,但切分错误大幅度下降。原因是因为语料量增加后,未定义词就减少了,而多词性的词也增加了。

提高精度

仅仅学习10天的语料,开放试验的正确率就达到82%。当然随着语料量的增加,正确率会有大幅度的提高。除了依赖语料量的增加以外,还必须考虑其它提高准确率的方法,最终目标是研制一个准确率为99%的汉语词切分系统。目前考虑以下方法来提高正确率。

  • 把单词放入语法规则
    现在语法规则中只有词性信息,这样作出来的规则比较粗,因此必须分析标注语料,找出一些有特点的词(如助词“的”、“地”、“了”、“着”等),把这些词放到规则中,使规则更细,以此提高词切分的准确性。
  • 错误驱动型学习方式
    不断进行反馈,自动调整规则,以得到最佳的切分结果。
  • 使用 Tri-gram
    汉语的多词性词很多,仅使用前后两个词(二元语法)的信息可能不够,打算试验Tri-gram(三元语法)。使用Tri-gram则需要更多的标注语料库。

标注语料库的应用

除了上述富士通利用标注语料库试作汉语切分软件、探索独立于语种的词语切分工具的开发外,大规模汉语标注语料库的应用是多方面的。应该说,《人民日报》语料是当代汉语的宝藏。不过,原始语料只是矿山和矿石。经过深加工的语料才能充分体现其价值。词频统计是任何一种语言的基础工程。然而汉语的原始语料只适合字频统计,却使词频统计变成一道难题。如果只切分不标注,可以做词频统计了,仍不能把名词“锁”和动词“锁”分开统计。显然,带词性的词频信息无论对信息处理、词典编纂还是对外汉语教学都有重要的意义。

又如,在原始语料只能计算任意两个汉字c1,c2的互信息M1(c1,c2)。

它暗示了c1,c2构成词的可能性,不过现在大容量电子词典已经普及,“词”的发现显得不那么重要了。如果在标注语料库上计算任意两个单词w1,w2的互信息:

M1(w1,w2)给出了w1,w2的同现关系,暗示了 之间的某种语法、语义联系,为研究词的搭配规律和短语结构规则提供了线索。

利用标注语料库可以获取未定义词以及未定义词识别的知识。无论是机器翻译还是文献检索或信息提取,中文文本中的未定义词(指计算机系统配备的词典中没有的词)都是拦路虎。如果能解决未定义词的识别问题,机器的智能就有明显的提高。

语料库中特别标明了人名、地名、团体机构名称等,就是为总结这些专有名词的命名规律及用字特点提供资料。标注语料库中的这些资料还是“动态”的,有上下文的环境可以利用。例如,孤立地考察“都胜利”,很难判定它是不是人名。如果“都胜利”出现在“北京灵通信息公司总经理都胜利先生”的环境中,则十分有把握判定它是人名,而且这里的“都”读“ du1” 。

非专有名词的新词语的识别更为困难。人工收集新词语也不是一件轻而易举的事。利用标注语料库至少可以辅助专家发现和整理新词语。 1998 年全年语料加工好了之后,可以整理出 1998 年《人民日报》的总词表。利用 1998 年《人民日报》的总词表,先用切分标注软件粗加工 1999 年的《人民日报》并计算互信息,可以比较容易地发现 1999 年的新词语。有了 1999 年的总词表,再重新加工 1999 年的语料,则可以提高精度,人工校对的工作量相对减少,如此进化,可以得到逐年的《人民日报》总词表和标注语料库,应该说这是中国文化建设的大事。

自然语言处理技术应用系统的种类很多,如文献检索、信息提取、文本分类、文本校对、自动文摘和机器翻译等。这些系统虽然已在实际生活中发挥了作用,但毕竟还不能令人满意。以文献检索为例,以字符串匹配为基础的全文检索技术容易实现,也有较高的查全率。这在文献资源不太多的年代可以满足用户的需求。如今,文献资源排山倒海般涌来,牺牲一些查全率、努力提高查准率则是明智的抉择。以了解海外“华人”状况为目的的检索策略中肯定要包含检索词“华人”,如果对原始语料应用字符串匹配技术,则会把凡是含有“中华人民共和国”字样的文献全部囊括了进来。如果待检索的文献库实现了切分,“中华人民共和国”无论是作为一个切分单位还是作为 3 个切分单位(中华 / 人民 / 共和国 / ),检索时,采用“词匹配”技术,则“中华人民共和国”不会同“华人”匹配,这样便大幅度地提高了查准率。又如,要检索同学生穿的“制服”有关的文献,就知道“制服”是名词 n ,如果待检索的文献库不仅实现了切分,而且标注了词性,那么就不会把含有“制服 /v ” 的文献检索出来,这些文献很可能同警察抓罪犯有关。

现在的加工(词语切分和词性标注)还只是初步的。还可以进行更深入的加工,如短语标注,依存关系标注,句法功能标注,句型标注,义项标注等等。但这些深加工都必须在词语切分和词性标注的基础上进行。

总结

富士通研究开发中心和北京大学计算语言学研究所合作,对1998年半年的人民日报语料制作标注语料,总共约1,300万字,是目前世界上最大的汉语标注语料库。使用了人民日报10天语料,试作了汉语切分系统,探讨了不依赖语种的词切分系统的研制。试验说明制作这样大规模标注语料库所花费的代价是值得的。北大计算语言学研究所承担的中国国家社科基金语言学科“九五”重大课题子课题“现代汉语词的语法属性描述研究(项目号:97@yy001-6)”是推动本项语言工程的原动力之一。感谢《人民日报》社新闻信息中心的理解和支持。

除北大计算语言学研究所的师生外,还有北大中文系、上海师范大学语言研究所、烟台师范学院中文系、南京师范大学文学院、中国语文现代化学会、北京语言文化大学语言信息处理研究所、国家语委语言文字应用研究所等单位的师生和朋友为本项工程贡献了力量。


★ 作者简介

俞士汶,段慧明:北京大学计算语言学研究所

松井久仁於:现富士通研究所,原富士通研究开发中心兼职

徐国伟:富士通研究所

胡国昕:富士通研究开发中心

★ 参考文献

[1] 长尾真编,《自然语言处理》,岩波书店,1996 年

[2] 中国国家标准 GB13715 《信息处理用现代汉语分词规范》,见刘源等著《信息处理用现代汉语分词规范及自动分词方法》,北京:清华大学出版社,第 1 版, 1994 年

[3] 俞士汶、朱学锋、王惠、张芸芸,《现代汉语语法信息词典详解》,北京:清华大学出版社,第 1 版, 1998 年 4 月

[4] 白栓虎等,汉语语料库词性标注方法研究,见陈肇雄主编《机器翻译研究进展》,408-418 ,北京:电子工业出版社, 1992 年

[5] 刘开瑛等,语料库词类自动标注算法研究,见陈肇雄主编《机器翻译研究进展》,378-386 ,北京:电子工业出版社, 1992 年

[6] 周强,俞士汶,一种切词和词性标注相融合的汉语语料库多级加工方法,见陈力为主编《计算语言学研究与应用》, 126—131 ,北京:北京语言学院出版社,1993

[7] 周强,段慧明,现代汉语语料库加工中的切词与词性标注处理,《中国计算机报》,1994 年 5 月 31 日,第 85 版

[8] 飒飒野学、斋藤由香梨、松井久仁於, アプリケーションのための日本語形態素解析システム ,言语处理学会第 3 回年次大会发表论文集,C4-7, pp.441-444, 1997 年

[9] 北研二等合著,《音声言语处理》,森北出版株式会社, 1996 年


 

这篇关于大规模汉语标注语料库的制作与使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/300394

相关文章

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

C#中lock关键字的使用小结

《C#中lock关键字的使用小结》在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时,其他线程无法访问同一实例的该代码块,下面就来介绍一下lock关键字的使用... 目录使用方式工作原理注意事项示例代码为什么不能lock值类型在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时