1、基于语料库的军事术语抽取方法初探 许汉成 国防科技大学国际关系学院 摘 要: 互联网大规模文本数据的出现, 对于语言学研究既是机遇, 更是挑战。计算语言学提出了大量基于语料库和统计的文本数据处理方法, 具有重要应用价值, 而语言学家对其了解不多。我们认为, 这类系统从人文和科学主义两个方向着手, 更有利于研发应用价值高的产品。俄语等语种的资源匮乏, 基础薄弱, 其处理需要软件工程和语言学两种知识体系, 只有学者自己走跨学科的道路, 或者构建团队, 才能有效地解决问题。关键词: 语料库; 术语; 军事术语; 自动术语抽取; 自动术语识别; 作者简介:许汉成, 博士, 教授。研究方向:俄语语言学,
2、 计算语言学。收稿日期:2017-02-08基金:国家社科基金项目“基于语料库的军事英语综合研究” (编号:11BYY12) 的阶段性成果Received: 2017-02-080.自动术语抽取的概念随着信息化时代的来临, 人们时时刻刻面临着大量的电子信息, 其中主要是以文字为载体的文本信息, 这里既有结构化的数据库和半结构化的网页, 也有数不胜数的非结构化的电子文本。如何处理大规模文本信息已经成为人类数字化生存的最现实的挑战之一。面对这样的挑战和机遇, 不同学科都会从自己的角度去解决问题, 从而丰富和完善自己的理论体系。但是, 人们也可能利用新发展阶段提供的条件, 发展出新的学科方向。应该说
3、, 语料库语言学就是在这样一个时代应运而生的新兴语言学学科方向。语料库是当代语言学和自然语言处理领域最重要的资源之一, 在语料库这片沃土之上, 我们可以开展实证主义的语言研究, 探讨词汇、语法、语用、翻译等人文科学的问题, 但是我们也可以走另外一条路, 就是把语料库看成一个松散的知识库, 让计算机从中学习各类知识, 或者把语料库看成无穷的、持续生成的文本集合的抽样代表, 研究语言信息自动化处理系统的建立、评估等问题。本文选择了最后一种态度, 研究自然处理领域的一个基本问题:自动术语抽取 (automatic term extraction) , 或者自动术语识别 (automatic term
4、 recognition) 。具体地说, 我们考虑这样一个问题, 在我们建成了一个军事领域文本语料库之后, 如何从中自动获取军事术语, 这是军事语料库的一个应用问题。自动术语抽取研究在给定特定领域语料库的条件下, 如何从该语料里自动或半自动地获取特定领域的术语的问题。术语是任何一个科学和技术领域概念载体, 代表这个领域的知识体系, 同时也与学者、研究机构、决策指挥体系密切联系。自动抽取的术语经过领域专家的确认和筛选、加工, 就可以迅速构建特定领域术语库。自动术语抽取可以是词典编纂、本体学习、文本检索、文本分类、机器翻译等系统的前期准备活动。术语抽取与关键词抽取任务相似, 算法上有一致的地方,
5、但是关键词抽取形成的词表较短, 力求用少量词语代表文本的内容, 最大程度地压缩文本, 解决用最短时间了解文本概貌的任务, 而术语抽取的文本特异性度量指标产生的侯选词表较长, 目标是能够把领域的术语尽量全地挖掘出来 (当然正确率最好也同时高) 。另外, 关键词抽取关心的一般是单个文本, 通常不需要抽取整个语料库的“关键词”, 而术语抽取的领域特异性指标就是为了抽取代表特定领域的整个语料库的术语。术语抽取把整个文本集当成一个大的文本, 因为正是这个文本集合被用来代表领域知识, 这与关键词抽取仅针对单个文本不同 (Scott 1997) 。1. 术语抽取的常见算法从组成结构的角度看, 术语可以分成单
6、字术语 (one word term) 和多字术语 (multiword term) , 这里的“字”是汉语的概念, 在英语、俄语等西方字母文字的文本, word 可以简单地定义为由词分隔符 (如空格) 隔开的基本书写单位, 比如 unexploded ordnance 是由两个 word 组成的。对于由单个字构成的术语 (如 corps) , 术语抽取的算法主要考虑后选词的领域特异性, 简单地说是在特定领域的使用频率, 除去一些停用词外, 一个实词如果在特定领域频繁地使用, 那么它是术语的可能性就高;对于由多个词构成术语, 除了考察它的领域特异性, 还需要考察它们的各组成部分之间的联系紧密程
7、度, 也就是考察一个词串序列构成一个使用单位的可能性。前者英语文献一般称之为领域特异性 (domainhood) , 后者则被称为单位性 (unithood) (Zhang et al.2008) 。无论是领域特异性, 还是紧密程度, 都需要构建一个可以从文本中统计出来的量化指标 (measure) , 有了这个测量指标, 才能用它衡量候选词序列构成术语的可能性。1.1 领域特异性测量方法术语既然表达了特定领域的知识, 是领域概念体系在语言上的体现, 那么该领域的文本必定会包含大量的相关术语, 但是术语并没有清晰的起始和终结标记, 一些通用的词语即可以用作术语, 也可以用作非术语。例如, ba
8、se 这个词意义众多, 在句子“There was a cycle path along this side of the wall, right at its base.”里, base 就是一个通用词;如果 base 在一定上下文里指air base, 那它就是一个军事术语。所以测量词语的领域特异性, 就是衡量词属于特定领域术语的概率, 自动识别术语的结果不可能百分之百正确, 如果系统能够识别出领域的多数术语, 且识别的正确率比较高, 那么算法就是成功的。测量词语的领域特异性涉及单字词语, 也涉及多字词语。如果是多字词语, 那么它在算法上被当作一个术语单位来处理。度量词语的领域特异性或者说
9、领域相关程度的算法很多, 这里给出下面几种:(1) 词语频率 (term frequency) 词语频率计算词语在整个文本语料库里的出现相对频数 (relative frequency) (Knoth et al.2009) 。对领域知识库而言, 出现频率高的词更加重要一些。系统按照特定自然语言术语的构成特点, 从文本语料库里挑选候选词语, 过滤掉停用词, 然后计算出余下词的出现频率并排序, 在词表高频词一端的词成为术语的可能性比较高。词语频率是许多算法的基础。其中 Tf (i) 为词语 wi的出现频数, 分母进行归一化处理。(2) 词语频率-逆文档频率 (Tf IDF) Tf IDf 考虑两
10、种因素, 即词频和文档频率, 词频 Tf (i) 被视为词语重要性的正面因素, 而文档因素被看成一个负面因素。逆文档频率 IDF (i) 测量的是词语在整个文本集合里的分布, 即在整个语料库里有多少个文档里出现了目标词语, 一个词语在整个文档集合里出现得少, 而在个别文档里出现多, 那么它在出现的几个文档里更加重要, 反过来说, 如果词语在整个文档集里均匀分布, 那么它的鉴别能力就没有了 (ibid.) 。Tf IDf 在信息检索系统里常被用来对词语进行加权。这里 D 是整个文本集合里文档的总数, d j:tid j是含有词 ti的文档个数, 含有词 ti的文档是整个语料库的文档集合的子集。值
11、得注意的是, 对于术语抽取这个任务来说, Tf i不再是某个词语在单个文档里的出现频率, 而应将整个文档集合看成一个大的文档, Tfi 是词语在这个想象中的大文档里的出现频率。(3) 逆文档频率残差 (residual inverse document frequency, 简称 RIDF) 逆文档频率残差由逆文档频率派生而来, 它计算文档频率与泊松分布预测频率相比异常的词语, 下面公式体现这种思想 (ibid.) :其中 p 是参数为 的泊松分布概率, f (i) 是词语 wi在整个文档集合里的出现次数, |D|是文档集合里文档的总数, 也就是说 (i) 是词语 wi的平均出现次数, 1-p
12、 (0; (i) ) 为一个文档里至少出现 1 次 wi的泊松概率。(4) 奇异程度 (weirdness) 奇异程度对比词语在领域文本语料库与通用语料库之间 (参照语料库) 的出现频率, 出现的程度越大, 越有可能是术语, 公式如下 (ibid.) :其中 fs (i) 和 fg (i) 分别是词语 i 在专业语料库和通用语料库的出现频率, ns和 ng则分别是两个语料库的总词数。对于单字词上面公式的计算比较清楚, 如果是多字词, 可以计算词语各部分奇异程度的几何平均数。(5) 似然比 (likelihood Ratio, 简称 LR) 似然比的思路与奇异程度类似, 但是纵然比采用了假设检验
13、的思想, 检测词语出现频率在领域语料库和通用语料库出现频率差异是否达到显著水平 (ibid.) 。它的零假设是在两个语料库观察到某个词语的可能性相等, 而备择假设是在领域语料库里观察到所研究词语的可能性高得多。词语的出现频率假定符合二项分布。1.2 粘合强度测量方法这里粘合强度是指组成术语的各个字 (词) 之间联结的紧密程度。既然术语表达一个整体的概念, 因此字 (词) 共同出现的机率就高, 在统计上就应该有所反应。各种统计方法都是基于这样一种考虑。(1) t 检验。t 检验最初用测量构成术语的二元 (即二个字或 word) 的独立性。它假定文本的生成是一个贝努里过程, 见到二元 t 的概率为
14、成功概率, 而见到其它二元的概率为失败概率 (Fedorenko et al.2013) 。因此, 其中 p 是假定二个词独立时的二元出现概率, 而 N 是二元在语料库里的出现频数。二个词独立时, 概率通常用如下公式计算:p=P (w 1w2) =P (w1) *P (w2) , 这里 P (w1) 是见到 w1的概率, P (w 2) 是见到 w2的概率。通常用词的相对出现频率来估算词的出现概率, 即 , N 为文档里词的总数。(2) 互信息。互信息是信息论中的重要概念, 可以用来衡量一个字符串内部结合强度, 互信息越高, x 和 y 组成术语的可能性越大;互信息越低, x 和 y 组成术语
15、的可能性越低 (梁颖红 2009) 。1.3 综合测量术语领域特异性和粘合强度的算法(1) C 值法 (C-value) C 值考虑了 3 个因素:词语的出现频率, 术语的长度 (词数或字数) , 嵌套子串 的更长词串的个数 (Frantzi et al.1999, 2000;翟笃风, 刘柏嵩 2010;梁颖红等 2009, 2010) 。具体计算公式如下:其中 a, b 都是候选术语, Ta 为包含 a 的候选词 (字) 串的集合, |Ta|表示这个集合的大小, f (b) 是其中集合元素的频率。C 值具有一个突出优势, 就是它既考虑了词频 (实际上是考虑了术语的领域特异性) , 也考虑了术
16、语的粘合强度, 可以提取单字 (词) 术语, 也可以提取多字 (词) 术语, 在术语抽取系统中得到了广泛的运用。这里就以翟笃风、刘柏嵩 (2010) 的例子, 具体说明一下 C 值的算法。假定统计政务领域的语料库得到下面数据:表 1 下载原表 这里“银监”是一个较短的术语, 即 a, 而“银监局”“银监会”“银监部门”够成嵌套 a 的更长字串的集合, 因此|Ta|=3, bT 银监 f (b) =41+57+78=176。“银监局”没有嵌套在别的字串里, 它的 C-value 就按照分段函数 (8) 的上半部分计算:C-value (“银监局”) =log 2|“银监局”|*f (“银监局”)
17、 = (log 23) *41=64.98同理可以得出“银监会”“银监部门”的 C-value 值。“银监”可以嵌入其他更长的字串里, 它的 C-value 值由分段函数 (8) 的下半部分计算:表 2 下载原表 (3) Glossex 法Glossex 法包含两个部分, 一部分测量领域特异性 (TD) , 具体算法同奇异程度, 第二部分则与候选词语的长度及其各部分的频率有关 (ibid.) 。t=n 表示术语的长度, 那粘结程度可以由下面公式计算:其中 wj为构成术语 w 的第 j 个词。最终的计算公式 Gloss Ex 为: 和 是两个用户可以调节的参数, 用来调整两部分的权重。2. 军事
18、术语抽取系统的框架军事术语识别或者抽取系统从宏观上看有下面三个主要步骤:2.1 候选术语表生成系统的输入是军事领域语料库。当然军事领域也是一个非常大的概念, 其中包含若干子领域, 如军事指挥、军事技术、武器贸易、武装冲突、演习训练、军事教育, 等等。所以, 输入的语料库也可能是一个军事子领域。有时可能还需要一个通用语料库, 如英国国家语料库或者布朗语料库之类, 以便对比词语在不同语料库里的分布特征。为了从语料库里提取出候选术语表, 一般要根据术语的语言特征, 从语料库里抽取出可能成为术语的词语。军事领域的术语可以是单个词, 如bomber、reconnaissance, 也可以是由多个词语组成
19、, 如 rule of engagement、target identification、armed services。还有一个问题就是领域缩略问题, 如 UXO (unexploded ordnance) 、CISR (Command, Control, Communications, Computers, Intelligence, Surveillance and Reconnaissance) 。多词术语是语言结构的一部分, 因而也具备一定句法特征。比如, 可以规定抽取下面句法模式的结构:(1) Noun(2) Noun+Noun(3) (Adj|Noun) +Noun既然是自动化抽取
20、术语, 这当然意味着要自动对语料进行词法标注, 只有进行过标注, 才有可能根据上述词类模式抽取术语。这是多词术语语法分析的问题。不同语言的术语组合模式不尽相同, 汉语军事术语的组合模式与英语的就不尽相同, 因此术语模式是依赖于语言的。为了建立候选术语表, 还须建立停用词表 (stop words list) , 将含有停用词的术语全部排除掉。当然, 也可以直接使用全部 n 元作为候选术语, 坏处是搜索空间大, 计算量增大, 但是召回率提高。2.2 候选术语特征抽取这是一个统计过程, 利用前面给出的统计方法或者其他算法, 计算候选术语的领域特异性 (domainhood) 和术语粘合度 (uni
21、thood) 。有了这样的量化特征值就可以对候选术语进行排序, 为最终抽取术语奠定基础。2.3 候选术语表筛选接着就是根据排序的结果, 按照需要和标准, 选择可能的术语, 选取的策略一般有:(a) 全部候选术语(b) 前 N 个术语(c) 特征值大于或小于指定域值的术语2.4 评估方法术语抽取除了上面核心步骤外, 还应考虑系统的评估方法。从评估的算法角度看, 传统上存在两种基本算法:精度 (precision) 和召回率 (recall) (梁颖红等 2010) 。精度是系统抽取术语的正确率, 可以通过下面公式计算:召回率衡量全部正确术语中被识别比率, 可以通过下面公式计算:由于精度和召回率之
22、间存在一定矛盾, 为了提高精度, 常常需要牺牲一部分召回率要求, 而要提高召回率, 则需要放弃部分精度指标。为了平衡这两方面的要求, 计算语言学中还普遍采用的一个较为综合的评估指标, 即 F 值: 是召回率和精度的相对权重: 等于 1 时, 二者同等重要; 大于 1 时, 精度更重要一些; 小于 1 时, 召回率更重要一些。 取值一般为 1、1/2、2。一般 设置为 1。上述评估算法都要求将系统抽取的结果与某一经典结果进行比较。这个经典结果可以有几种情况, 比如让专家阅读文本, 抽取一定数量的术语;建立专们术语抽取标准数据库, 形成一个黄金标准, 然后再对比系统不同算法的性能, 等等。3. 讨
23、论我们构建的军事英语语料, 从中抽取出海军相关文本, 利用 Jatetoolkit 对其进行处理, 希望从中抽取出关键词。工具支持 simple term frequency、average corpus TF、C-value、Gloss Ex、Term Ex、Tf IDF、RIDF、Weirdness 等算法。分析结果发现 C-value 给出的结果为短语, 军事术语多, 其他算法还需要改善或者深入研究。我们还觉得, 应该从形式语法的角度深入研究军事术语结构, 便精准地抽取特定结构的词串。还有, 是否可以由领域专家构建特定领域的术语集甚至 Wordnet, 然后再由统计指定术语或者术语集在文
24、本中的特异性或者粘合度?我们需要人工抽取一定规模文本的军事术语, 构建一个标准术语抽取语料库, 对各种算法进行评估。如果是要抽取汉语、日语、俄语、阿拉伯语文本的关键词, 则需要研究该语言的分词、词法、句法自动分析问题, 建立标准语料库, 用于系统评估。参考文献翟笃风, 刘析嵩.2010.政务领域本体术语的自动抽取J.现代图书情报技术 (4) :59-65. 梁颖红, 张文静, 周德富.2009.基于混合策略的高精度长术语自动抽取J.中文信息学报 (6) :26-30. 梁颖红, 张文静, 张有承.2010.C 值和互信息相结合的术语抽取J.计算机应用与软件 (4) :108-110. Fedo
25、renko, D., N.Astrakhantsev&D.Turdakov.2013.Automatic recognition of domain-specific terms:an experimental evaluation.EB/OL.2017-1-10.http:/syrcodis.ispras.ru/2013/?page_id=165. Frantzi K.&S.Ananiadou.1999.The C-value/NC-value domain independent method for multi-word term extractionJ.Journal of Natur
26、al Language Processing 6 (3) :23-27. Frantzi, K., S.Ananiadou&H.Mima.2000.Automatic recognition of multi-word terms:The C-value/NC-value methodJ.International Journal on Digital Libraries 3 (2) :115-130. Knoth, P., M.Schmit, P.Smrz&Z.Zdahl.2009.Towards a framework of comparing term recognition metho
27、ds.EB/OL.2017-1-10http:/people.kmi.open.ac.uk/petr/papers/atr_znalosti_2009.pdf. Scott, M.1997.PC Analysis of key words-and key key wordsJ.System25 (1) :1-13. Zhang, Z., J.Iria, C.Brewster&F.Ciravegna.2008.A comparative evaluation of term recognition algorithms.EB/OL.2017-1-10.http:/www.lrec-conf.org/proceedings/lrec2008/pdf/538_paper.pdf. 注释(1) (1) 该军事英语语料库包括了通用、陆军、海军、空军相关语料, 共4046847 词次, 其中海军语料共 179373 词次。 (2) (2) http:/:808/p/jatetoolkit/wiki/JATEIntro