2.5 语料库
词语不会凭空出现。我们研究的任何一段文本,都是由一名或多名特定说话者或作者,在特定时间、特定地点,使用某种特定语言的特定变体,为某种特定功能而产生的。
也许最重要的变异维度是语言。NLP 算法能够跨多种语言应用时最有用。在线 Ethnologue 目录显示,在撰写本文时,全世界共有 7,097 种语言(Simons and Fennig, 2018)。在多种语言上测试算法非常重要,尤其应当选择性质不同的语言;相比之下,目前 NLP 算法往往只针对英语开发或测试,这是一种令人遗憾的倾向(Bender, 2019)。即使算法的开发范围超出英语,也往往只面向大型工业化国家的官方语言(汉语、西班牙语、日语、德语等),但我们并不希望把工具限制在这少数几种语言上。此外,大多数语言还包含多个变体,通常由不同地区或不同社会群体使用。例如,如果要处理包含非裔美国人英语(African American English,AAE)或非裔美国人白话英语(African American Vernacular English,AAVE)特征的文本——这些英语变体为非裔美国人社群中的数百万人所使用(King, 2020)——就必须使用能够处理这些变体特征的 NLP 工具。Twitter 帖子可能包含非裔美国人英语使用者常用的形式,例如 iont(对应主流美国英语(Mainstream American English,MAE)的 I don’t)或 talmbout(对应 MAE 的 talking about);这两个例子都会影响词语切分(Blodgett et al., 2016; Jones, 2015)。
说话者或作者在同一话语中使用多种语言也十分常见,这种现象称为语码转换(code switching)。语码转换在世界各地极为普遍;下面分别展示西班牙语和(转写后的)印地语与英语进行语码转换的例子(Solorio et al., 2014; Jurgens et al., 2017):
(2.12) Por primera vez veo a @username actually being hateful! it was beautiful:) [For the first time I get to see @username actually being hateful! it was beautiful:) ]
(2.13) dost tha or ra- hega ... dont wory ... but dherya rakhe
[“he was and will remain a friend ... don’t worry ... but have faith”]
本章关注文本(第 15 章将转向语音),但需要注意,许多语言主要甚至完全以口语形式使用。这些语言的使用者往往以一种特殊方式呈现双言现象(diglossia):他们在家庭或本地交流中使用口语方言,而在参与更大范围的经济、社会或民族国家活动时,则使用另一种通常具有书面形式的通用语(Bird, 2020)。
另一个变异维度是体裁(genre)。算法需要处理的文本可能来自通讯社新闻、虚构或非虚构书籍、科学论文、维基百科或宗教文本,也可能来自电话交谈、商务会议、警察执法记录仪、医疗访谈、电视节目或电影转写等口语体裁,还可能来自工作场景中的医生病历、法律文本、议会或国会记录。
文本还反映作者(或说话者)的人口统计属性:年龄、性别、种族和社会经济阶层都可能影响待处理文本的语言属性。
最后,时间同样重要。语言会随时间变化;对于某些语言,我们拥有来自不同历史时期的良好文本语料库。
由于语言总是处于具体情境之中,在基于语料库开发语言处理计算模型时,必须考虑语言由谁产生、产生于何种情境、服务于什么目的。数据集的使用者如何了解所有这些细节?最佳做法是由语料库创建者为每个语料库制作数据表(datasheet)(Gebru et al., 2020)或数据声明(data statement)(Bender et al., 2021a)。数据表应说明数据集的以下属性:
**动机:**为什么收集该语料库?由谁收集?谁为其提供资金?
**情境:**文本在何时、何种情境下写成或说出?例如,当时是否有特定任务?语言最初是口语对话、编辑过的文本、社交媒体交流,还是独白或对话?
**语言变体:**语料库使用什么语言,包括何种方言或地区变体?
**说话者人口统计信息:**例如,文本作者的年龄或性别是什么?
**收集过程:**数据规模有多大?如果它是一个子样本,采用什么方法抽样?收集数据时是否取得同意?数据经过怎样的预处理?有哪些元数据可用?
**标注过程:**包含哪些标注?标注者具有怎样的人口统计构成?他们接受了何种培训?数据采用什么方式标注?
**分发:**是否存在版权或其他知识产权限制?