APP下载

科技术语自动提取技术

2022-01-12常宝宝

中国科技术语 2022年1期
关键词:机器学习

摘 要:文章简要介绍了自动术语提取任务的定义、主要方法和评价指标。针对传统的自动术语提取方法,以互信息、t值、tf-idf、C/NC-value为例介绍了单元度和术语度的概念;针对自动术语标注方法,主要介绍了基于序列标注的建模思想。从提取效果来看,现有自动术语提取技术距离期望仍有差距,文章也尝试给出了一些值得探索的方向。

关键词:自动术语提取;自动术语标注;单元度;术语度;机器学习

中图分类号:TP391;H083  文献标识码:A  DOI:10.12339/j.issn.1673-8578.2022.01.001

Techniques of Automatic Term Extraction:Current Sate and Reflections//CHANG Baobao

Abstract: This paper overviews the definition, major approaches and the evaluation metrics of the ATE task. For the traditional approaches, we mainly elaborate the measurement of the Unithood and Termhood, using pointwise mutual information, t-value, ti-idf weighting and C/NC-value as examples. For Automatic Term Labelling, we mainly present the sequence labelling modelling. We think the performance of Automatic Term Extraction/Labelling is still not satisfactory from a point of view of real application, and try to offer a few directions of further improvements.

Keywords: automatic term extraction; automatic term labelling; unithood; termhood; machine learning

引言

术语(term)是“各门学科的专门用语,在专业范围内表示单一的专门概念”[1]。术语处在专业知识体系构建的基石位置,术语的获取、整理和规范不仅对专业知识体系的构建和发展有重要作用,也会对专业领域之外的其他许多行业产生影响。

传统上,术语的收集整理主要依靠领域专家进行,这种工作方式的优点是质量高,缺点也很明显,成本高,速度慢,难以适应当今科技高速发展中术语大量急速涌现的现状。20世纪90年代前后,伴随着语料库建设的进步,利用信息技术和自然语言处理技术进行术语快速获取——自动术语提取(automatic term extraction,ATE)的想法就应运而生并成为一个重要的研究议题[2]。

术语自动提取有着不言而喻的重要意义。如果拥有可靠的术语自动提取技术,科技术语整理、审定与专业词典编纂的工作效率和质量就会得到极大提高。术语作为一种特殊词汇,在语言实践中,常有与普通语言词汇不同的处理策略和规律,可靠的术语自动提取技术也会对许多语言文字工作带来积极影响,例如,在翻译、教育等很多行业,及时、规范、全面的术语资源都是非常宝贵的资源。术语提取和识别还是专业自然语言理解的基础技术,对于自然语言处理而言,术语通常都是未登录词(out of vocabulary,OOV),术语自动提取技术的进步有助于改善自然语言处理系统未登录词的处理能力,有助于推动专业文本机器理解技术的发展。

经过研究人员近三十年的努力,自动术语提取技术取得了许多进展,也出现了一些术语提取工具。例如,在许多机器辅助翻译平台中都有相应的自动术语管理和提取工具,譬如在著名的机器辅助翻译平台SDL-Trados中就配备了术语提取组件SDL MultiTerm Extract,可用于辅助翻译工作者定位专业文档及翻译记忆库中潜在的单语或者双语术语,从而辅助翻译工作者改进术语翻译质量。不过,自动术语提取也是一个有挑战性的研究任务,总的看来,自动术语提取技术的性能还不能令人满意,还需要研究人员的持续攻关和努力。

1 自动术语提取的任务定义

自动术语提取研究从特定专业文本中提取术语的自动技术和方法。自动术语提取系统的输入是特定领域的专业文本,任务是通过对这些文本的自动分析和处理,提取其中的术语条目并以列表的形式输出。例如,从给定计算语言学文本中,提取其中的计算语言学术语。尽管自动术语提取系统在应用时面向特定的目标领域,但现有自动提取技术基本上是通用的,并不因为所处理的领域不同采用不同的方法。为了指称的统一,在本文中,我们把自动术语提取所处理的特定领域文本统称为目标领域文本,即自动术语提取系统的输入是目标领域文本,输出是目标领域文本中所使用的目标领域术语条目。

文献中,除了术语自动提取这个名称外,还有一些其他说法也指向术语提取或相关研究,例如,自动术语识别(automatic term recognition或automatic term identification)、自动术语检测(automatic term detection)、自动术语挖掘(automatic term mining)等。许多文献不加区别地使用这些术语,含义都是从目标领域文本中提取相应的术语条目。

不过,这里也想特别指出,针对目标领域文本中的术语,从语型(type)和语例(token)两个处理角度,实际上可以构思出两种既相互联系又相互区别的处理任务。在语型处理层面,旨在提取目标领域文本中的术语条目,而不关心精确标记术语条目在目标领域文本中的每个使用实例。与之不同,我们还可以界定一種语例层面的自动术语处理任务,即在目标领域文本中精确标记所有的术语实例。传统上所说的自动术语提取主要指语型层面的处理,我们在本文中称之为自动术语提取。为了与之区别,在本文中,我们把上述语例层面的术语处理任务统一称作自动术语标注(automatic term labelling,ATL)任务。二者区别如下:

a) 目标领域文本→自动术语提取ATE→术语表

b) 目标领域文本→自动术语标注ATL→标注了术语的目标领域文本

自动术语标注和提取可以独立研究,但也可以结合进行。事实上,可以将自动术语标注看作自动术语提取的前驱任务,如果可以成功识别并标记目标领域文本中的术语,那么只要将这些标记好的术语提取出来并进行去重操作就可以得到相应的术语条目列表,从而实现术语提取的目的。

这里之所以对自动术语提取和自动术语标注区别对待,除了自动术语标注可以作为术语提取的实现技术之外,更为重要的是,从专业文本机器理解这个更为一般的角度出发,自动术语标注更具基础意义,在许多专业文本的机器理解任务中,更加需要语例层级的术语标注处理,因此自动术语标注技术除可以用以支持术语提取外,也是专业文本机器理解的基础技术。

2 术语的组成和统计特性

要想利用计算机自动标注或提取目标领域文本中的术语,就需要研究和总结术语在组成和分布方面的形式特征。作为一种特殊的语言表达,术语有着与普通词语和短语不同的区别性特征。

从术语的组成来看,术语通常由一个或多个单词组成。由一个单词组成的术语通常称作简单术语(simple term)或单词术语(single-word term),由不止一个单词组成的术语通常称作复杂术语(complex term)或多词术语(multi-word term)。仅从组成单词的数量上看,术语与普通短语并没有区别。但术语与普通短语具有性质上的差异,术语是指称领域概念的,所指通常固定明确。即便是复杂术语,本质上仍是词汇层面的语言单位[3]。术语与普通短语在性质上的不同决定了术语必然具有不同于普通短语的特殊组成模式和特殊统计特性。

(1) 从语言学角度看,术语大多是名词或者名词短语,这是由术语是对概念的指称这一特点决定的。例如,根据文献[3]对四个领域术语的抽样调查,名词短语在英语术语中所占比例很高,在所调查的四个领域中比例介于92.5%和99.0%之间。

(2) 术语意义一般不是其组成单词意义的简单叠加,在使用中,变化有限。不具有一般短语所具有的(修饰词)省略、变化、替换甚至增添等灵活变化现象[3]。术语形式变化,通常会导致所指的变化,也会造成歧义,所以同一术语在使用中形式基本不发生变化。

(3) 術语组成模式相对有限。例如,根据文献[3]对四个领域中多词术语的调查,仅由名词、形容词和介词组成的名词短语型术语占比在99%以上,仅由名词和形容词组成的名词短语型术语占比可达97%,并认为英语术语的组成可用正则表达式描述如下[3]:

((A|N)+(A|N)*(NP)?(A|N)*)N

这里A、N、P分别代表形容词、名词和介词。AN、NN、AAN、ANN、NAN、NNN、NPN等常见的英语术语组成模式都可以由该表达式所生成并覆盖。

(4) 在目标领域文本中,术语通常具有较高的出现频率。而且与普通短语不同,术语在领域文本和一般文本中有较大的分布差异,集中出现在所属领域的文本中,而在其他领域文本中则较少出现。

(5) 复杂术语的组成单词之间结合紧密稳定,形成领域文本中的特有固定搭配。从统计学的角度看,复杂术语各组件的共现频度通常会显著超过一般预期。

(6) 在专业文本中,术语的上下文语境也有一定封闭性,尤其是与术语共现的实词往往因领域不同而不同。

术语的组成和统计特性是利用计算机识别和提取术语的主要依据,大多数术语自动提取方法是根据和利用上述术语特点而设计的。例如,利用术语的语言学特点,将目标领域文本中符合特定模式的名词短语视作潜在的术语候选,或者利用术语的统计特性设计不同的度量指标衡量单词和多词组合作为术语的可能性。

3 单元度和术语度

从计算机的角度出发,目标领域文本中任何一个单词或者连续几个单词的组合都有成为术语的可能。在本文中,我们把目标领域文本中任意一个由n个单词组成的连续片段称作n元组(n≥1)。理论上,任何一个长度小于术语最大长度的n元组都有成为术语的可能,我们把这些n元组称作术语候选(term candidate),计算机需要逐一评价这些术语候选,计算它们作为术语的可能性。

衡量一个n元组是否构成术语通常被归结为计算两个指标的问题,即计算单元度和术语度[4]的问题。

单元度(unithood)是针对复杂术语而言的,一个包含多个单词的n元组要成为一个术语,前提是它们需要构成一个固定搭配,组成单词间需要结合紧密并整体构成一个语言单位。单元度就是衡量一个多词n元组中词与词之间关联强度的指标。但组合紧密稳定的多词组合未必就是术语,术语需要具有领域性,术语度(termhood)就是用来衡量一个n元组与特定领域关联程度的度量指标。

因此,对于目标领域文本中的某个n元组是否构成术语,可以分别计算该n元组的单元度和术语度分值,如果单元度和术语度得分都高的话,那么这个n元组很可能是一个术语。

多年来,研究人员先后设计和使用了很多计算单元度和术语度的具体方法,这些方法形式各不相同,但原理上都是利用术语的形式和分布特点。

3.1 单元度计算

常见的单元度计算方法包括t值、χ2值、对数似然比、点式互信息、Dice系数等多种方法。一一罗列和介绍这些方法并无必要,我们这里只介绍其中两个计算指标,分别是点式互信息和t值。选择这两个指标,主要是因为点式互信息比较常见,而t值可以作为一类方法的代表。

(1) 基于点式互信息的单元度计算

点式互信息(point-wise mutual information)源自信息论,用于衡量两个具体事件所共有的信息量。点式互信息值可以区分三种不同的事件依赖关系:若两个事件高度依赖,总是相伴出现,则其点式互信息通常为较大的正值;若两个事件相互独立,则其点式互信息为0;若两个事件互相排斥,则其点式互信息为负值。以二元组wawb为例,wa和wb间的点式互信息计算如下:

Iwa,wb=log2Pwa,wbPwaPwb

这里,P(wa,wb)、P(wa)和P(wb)分别代表二元组wawb、wa和wb在目標领域文本中出现的概率,它们均可以通过目标领域文本加以估计。

若在目标领域文本中,wa和wb总是结伴出现,此时二者之间联系紧密,其点式互信息为正值;若wa和wb相互独立或者在语料中互相排斥,则点式互信息为0或者负值。所以互信息值可以作为单元度的一种度量值,互信息值越大,说明单词之间结合稳定紧密。而互信息为0或者为负值,即使二者相伴共现,也是偶然共现,wa出现不会提升wb出现的可能性或者会降低wb出现的可能性。

点式互信息会有低频偏执问题,当wa和wb在文本中出现稀疏时,容易得到虚高的点式互信息,习惯上,人们通常采用下面的方式减缓低频偏执问题:

I-wa,wb=fwa,wb×Iwa,wb

其中,fwa,wb是二元组wawb在目标领域文本中出现的频率,Iwa,wb是未加改进的点式互信息,I-wa,wb是改进后的点式互信息。

(2) 基于t值的单元度计算

在单元度计算中,有一类方法脱胎于数理统计中的假设-检验法,是对假设-检验法的简化使用,用t值作为单元度计算指标就是这样一种方法,同样基于假设-检验原理的单元度计算方法还包括χ2值、对数似然比等计算方法。

用假设-检验的方法确定n元组组成单词之间结合是否紧密,首先需要预设两个假设:原假设(null hypothesis)和备择假设(alternative hypothesis)。原假设假定组成单词之间结合不紧密,这些单词之所以共现完全是偶然所致。而备择假设假定这些单词之间结合紧密。

假设-检验法采用一种类似反证法的逻辑来论证n元组组成单词之间结合是否紧密。首先假定原假设成立,那么基于原假设,可根据统计学知识推断该n元组在目标领域文本中应该具有的统计特性,然后与目标领域文本中观察到的真实统计特性做比对,如果推断得到的统计特性和真实统计特性有较大差异,以至于大到在假定原假设成立的前提下不大可能发生的程度,那么我们就可以有较大的信心确定作为推断基础的原假设不成立,而转向承认认为单词间结合稳定紧密的备择假设成立;反过来,如果根据原假设推断得到的统计特性和真实统计特性差异较小,在原假设成立的前提下发生的概率很大,那此时就需要承认认为单词之间结合不紧密的原假设。不同的假设-检验方法对数据分布和差异度量有不同的规定,但道理基本一样。在利用假设-检验方法计算单元度时,通常并不完整使用假设-检验的完整流程,而只关心统计特性的差异值,差异值越大,则认为单词间结合越紧密,t值就是一种这样的差异值,具体而言,t值是反映样本均值和原假设成立前提下推断值的差异程度的统计量,一般形式如下:

t=x-μSE

这里x代表样本均值,μ代表原假设成立前提下的推断值,SE是均值估计的标准误差(standard error),t值以标准误差为单位衡量样本均值和推断值的差异程度。

这里,我们仍以计算二元组wawb的单元度为例,说明t值的计算过程。原假设是wa与wb结合不紧密,也就是说wa与wb在文本中出现时相互独立,按照独立性的判定原则,可以推断二元组wawb在目标领域文本中出现的概率Pwa,wb为:

P0=Pwa·Pwb

同时利用目标领域文本,也可得到二元组wawb在目标领域文本中出现概率Pwa,wb的估值P1。t值即可用来衡量二者间的差异:

t=P1-P0SE

由于估算P1采用均值估算,若用N代表目标领域文本的长度,依据大数定律,估值P1的标准误差为:

SE= P11-P1N

因此,只要给定目标领域文本,就能计算出给定二元组的t值。t值越大,表明P1与P0之间的差异越大,说明wawb在目标领域文本中结伴出现的概率远大于二者独立出现的概率,也就说明二者组合可视作结合稳定紧密的整体。在假设检验的实践中,通常还需要计算置信区间并进一步做出推翻原假设和接受原假设的结论,但对于单元度计算而言,通常只考虑t值的相对大小,t值越大,单元度越大;t值越小,单元度越小,无须明确做出接受原假设和推翻原假设的结论。

在上面的介绍中,我们以二元组为例进行说明,若对一般的n元组可以进行计算方式的推广或者采用迭代方式进行[5]。

3.2 术语度计算

术语度计算术语候选和领域的关联程度。术语度计算的出发点依然是充分利用术语的统计特性。术语具有领域分布不平衡的特点,在计算术语度时要利用这一特点,单纯使用目标领域文本是不够的,需要引入目标领域文本之外的其他领域文本或不具备领域色彩的普通文本作为比对参照,这样的文本称作参照文本(reference text)。

与单元度计算类似,现有术语度计算方法也有很多,这里介绍两种较为常见的计算方法:

(1) 基于项频率-逆向文档频率的术语度计算方法

项频率(term frequency,tf)、文档频率(document frequency,df)、逆向文档频率(inverse document frequency,idf)等概念源自信息检索研究。项频率-逆向文档频率(tf-idf)计算方法是一种为文档中项(term)赋以权值的方法,项是信息检索中用以表征文档内容的词或者短语,项的tf-idf权值用来代表项对于文档的重要程度。在英文中,项与术语均用term指称,含义不完全相同,但也有共性,项是一个文档中最具信息意义的词或者短语,而术语则是一个目标领域中最具信息价值的词或短语。鉴于这种共性,tf-idf计算方法常被术语提取研究作为术语度计算方法。

设D为一个文档集合,D=d1,d2,…,dD,其中,d1,d2,…,dD代表集合中所包含的文档,在术语度计算的语境下,可以将这些文档看作领域文本,这里我们把其中的di看作目标领域文本,其余的文本看作普通文本或者其他领域文本,起参照文本的作用。

对于给定的n元组tc,基于上述文档集合D,可以得到两个统计数据,一是tc在目标领域文本di中的频率,称作项频率,记作tfi(tc);另一个是tc所出现过的所有文本的数量,称作文档频率,记作df(tc)。项频率高意味着tc在目标领域文本中频率高,可能是术语,而文档频率底,则意味着tc只在少量文本中出现,区别于在所有文本中都大致均匀出现的非术语词汇,组合这两个因素,即可形成一种集项频率和文档频率的术语度度量指标:

tf-idfitc=tfitc·log2Ddftc

在上述计算公式中,文档频率是以倒数形式出现的,因文档频率的倒数形式被称作逆向文档频率,这种计算方法被称作基于项频率和逆向文档频率的计算方法。可以看出,对于一个候选术语tc而言,它在目标领域文本中频率越高,且出现在其他參照文本中的数量越少,则其tf-idf值就越大,tc是术语的可能性就越高,这与术语分布的统计特性是一致的。

(2) 基于C-value和NC-value的术语度计算方法

C-value与NC-value[7-8]也是自动术语提取研究中常见的术语度计算方法。

C-value在计算时考虑了术语候选之间的嵌套关系。综合而言,对于一个候选术语tc而言,其C-value可通过下面的公式加以计算:

C-value(tc)=

log2|tc|·f(tc),若tc不被嵌套

log2|tc|·(f(tc)-1|Ttc|∑b∈Ttcf(b)),若tc被嵌套

在上面的式子中,f(tc)代表术语候选tc在目标领域文本中出现的频率,tc代表术语候选tc的长度,即tc中包含单词的数量。可以看到,术语候选tc在目标领域文本中出现的次数越多,其C-value就会越大,tc就越可能是一个术语。C-value将术语候选的长度因素也纳入考虑范围,可以看出,若频率相同,一个较长的n元组比一个较短的n元组更可能是术语。

C-value的一个主要创新在于将术语候选之间的嵌套关系考虑在内。在计算一个术语候选tc的C-value时,tc可能会作为一个组成部分嵌套在其他更长的n元组中,而在统计tc的频率时,会将嵌套在其他n元组中的tc的频率也计算在内,从而高估了tc作为术语的可能。因此,在评价tc作为术语的可能性时,需要将嵌套在其他n元组的这部分tc频率做折减处理。一般而言,当tc被其他n元组嵌套时,会有两种可能,一种可能为tc是术语,另一种可能为tc不是术语。若tc是术语,那么完全折减嵌套在其他n元组中的频率又会引起低估tc作为术语的可能,因此需要根据tc是术语的可能性大小做不同的折减处理。那么如何判断一个处在嵌套中的tc作为术语的可能性呢?一个可行的办法是评判tc的独立性。通常而言,若tc可以被很多不同的n元组所嵌套,说明tc可以出现在很多不同的语境中,具有较强的独立性,此时tc更可能是一个术语,在频率折减时,应该折减少一些;但若tc只能被很少其他的n元组所嵌套,甚至只能被一个n元组所嵌套时,这说明tc具有较强的黏着性,只是包含它的n元组的组成部分,此时更应该考虑包含它的n元组是否为术语,这种情况下,在折减频率时,可以折减得多一些,降低tc作为术语的可能性。C-value在计算时通过按照包含tc的n元组个数对折减频率总和取平均的方式体现了这一思想。在上面的公式中,Ttc代表由所有包含tc的n元组组成的集合,b代表其中的n元组,fb代表n元组b在目标领域文本中的频率。式中首先累加包含tc的所有n元组的频率,然后按照包含tc的n元组个数Ttc对频率和取平均作为最终折减频率。

需要补充说明的是,上述的C-value计算公式只能计算多词术语候选的术语度。原因在于对于单词术语候选而言,公式中的系数log2tc恒为0,使得所有单词术语候选的术语度计算结果均为0。针对这一问题,文献[9]提出将公式中的系数部分修改为1+log2tc,从而将单词术语候选术语度计算问题涵盖在内。

C-value计算综合考虑了n元组的频率、n元组的长度和n元组间的嵌套关系,根据这些因素计算n元组作为术语的可能性。但在C-value的计算中,没有考虑到术语候选语境中的词对术语度计算的影响。一般而言,术语对其语境中的词有选择限制作用,一些词比另外一些词更容易出现在术语的语境中,换句话说,如果某个术语候选的语境中出现了这样的词,那么这个术语候选就更有可能是术语。这也就是说,语境中出现的词对判定术语候选是否为术语有指示作用。NC-value计算正是基于这一动机,在C-value计算的基础上增加了语境影响因素。

并非所有出现在术语候选语境中的词对术语判定都有指示作用,即使有指示作用,不同词指示能力的强弱也不尽相同。因此,计算NC-value之前需要事先确定哪些词对术语判定有指示作用,若有指示作用,还要确定表征它们指示能力强弱的权重。这些对术语判定有指示作用的词称作术语语境词(term context word)。术语语境词包含哪些词与处理的目标领域有关,在一个领域中是目标语境词,在另一个目标领域中未必是目标语境词。

为给定的目标领域选择语境词,需要首先准备一个包含一定条目的种子术语表。这个术语表可以从现有的术语词表中选择一些术语组成。如果没有这样的术语表,也可以基于C-value,选择C-value靠前的若干术语候选组成目标领域术语表。

确定一个词w是否为术语语境词,可以统计w曾经在多少种子术语的语境中出现过,w在越多的种子术语语境中出现过,就越可能是一个术语语境词,因而其权重可用与其共现过的种子术语的比例来衡量:

weight(w)=|T(w)||T|

其中,T代表种子术语集合,T(w)是语境中出现过w的所有种子术语的集合。

NC-value在C-value的基础上增加了对术语语境词影响的考虑,术语候选tc作为术语的可能性由其C-value和语境词影响两个部分按照不同的比例综合计算得到:

NC-value(tc)=0.8C-value(tc)+0.2∑b∈Ctcftc(b)weight(b)

上式中,Ctc是出现在tc语境中的所有术语语境词的集合,在计算这些语境词的影响时,一个语境词b对tc是否为术语的影响由其权重weight(b)与其出现在tc语境中的次数ftc(b)共同决定。

4 术语提取的一般流程

术语提取系统通常采用两阶段的流水线架构,其中第一阶段生成术语候选,第二阶段对术语候选进行单元度和术语度评分,整体流程如下:

目标领域文本→提取术语候选①→评分和排序②→术语条目列表

4.1 提取术语候选

提取术语候选的目的是从目标领域文本中选择可能是术语的单词或者多词组合,这些选择出的单词或者多词组合未必是术语,它们是否为术语需要交给后续阶段进一步评估。从这一阶段的目的和在整个提取流程中的作用来看,理想的结果应该是既不漏掉真正的术语也不应该生成太多的术语候选。生成太多的术语候选会增加第二阶段的工作负担,降低效率,但漏掉真正术语会影响术语提取任务的准确率,造成提取质量下降。

术语的长度有限,对术语提取系统而言,长度在一定范围内的连续n元词串都有可能是术语,因此生成术语候选最简单的办法是首先设定一个术语的长度上限MaxLen,然后穷尽列出目标领域文本中长度不超过MaxLen的所有n元组(1≤n≤MaxLen),然后将所有这些n元组作为术语候选提供给第二阶段进行评判。

当然这种方法会生成大量的术语候选,通常可以选择利用下面的策略对候选做进一步的裁剪和筛选:

(1)引入停用词表(stop list),列出所有不可能在术语中出现的单词;应用停用词表,将其中含有或特定位置含有停用词的n元组剔除,从而减少术语候选的数量。

(2)引入语言学知识,如前文所述,多词术语绝大多数由名词、形容词按照一定的模式构成,可以利用预定义的词类模式对术语候选进行过滤筛选,如可把能与第2节中正则表达式成功匹配的n元组作为术语候选。这种策略是一种常见的将语言学知识引入术语提取过程中的做法。不过,由于模式匹配建立在词类模式的基础上,需要事先对目标领域文本进行词类标注处理,由于现有词类标注程序并不完美,存在错误标注的情况,也会对术语候选生成产生一定的影响。

(3)鉴于术语多为名词短语,也有研究限定只处理名词短语,规定术语候选需要是名词短语。这会对目标领域文本处理提出更高的要求,需要对目标领域文本进行句法或者名词组块分析处理。同样自动句法或组块分析的效果也会对术语候选质量产生影响。

4.2 评分和排序

评分和排序阶段的任务是通过评分的方式对第一阶段生成的术语候选逐一评价,按照一定的准则评判术语候选作为术语的分值,并根据分值对术语候选排序,截取得分较高的术语候选条目作为最终结果输出给用户。用户通常可以指定输出术语候选条目的数量,如可以设定提取条目数量,输出得分排序靠前的r个术语候选条目;也可以设定得分阈值,输出得分超过阈值的术语候选条目;还可以采用相对比例的方式,选取得分排在前x%的术语条目作为最终术语提取结果。

术语候选评分是自动术语提取的核心环节,评分方法主要是统计方法,如可以从上面介绍的单元度和术语度两个角度进行评判,再将二者得分进行综合排序。当然在具体系统实现中,未必需要专门的单元度和术语度评分组件,但评分一般应能体现出对术语候选在这两个方面的考量。

有时会进行不止一次的评分和排序处理,这样的策略被称作重排序(reranking)策略。之所以这样,通常是希望在前一种评分策略的基础上增加新的关注因素,在第一次排序所得到的结果中使用改进的或新的评分策略重新评分并排序,以达到改进术语提取质量的目标。例如,首先使用C-value对术语候选进行评分并排序,选取C-value得分最高的若干提取结果选择术语语境词,在选定语境词后,计算候选术语的NC-value,并再次基于NC-value的大小对术语候选进行排序。由于在计算NC-value时,考虑了候选术语的语境特征,新的排序结果会更加准确合理。

5 自动术语标注和机器学习

在本文第1节,我们对自动术语提取和自动术语标注两个任务进行了区分,也指出自动术语标注可作为自动术语提取的实现技术。例如,对于下面的文本片段:

进行词法分析的程序或者函数叫作词法分析器

自动术语标注的结果是:

进行[词法分析]的[程序]或者[函数]叫作[词法分析器]

自动术语标注程序需要把文本中的術语实例标记出来(方括号括起来的部分)。

经过自动术语标注处理目标领域文本,其中出现的术语实例均已明确标记,提取汇集这些术语即可实现术语提取的目的。例如,根据标注结果,从上面的例子中,可以提取得到“程序”“词法分析”“词法分析器”和“函数”四个术语条目。

5.1 序列标注模型

作为一种语例层级的标注任务,在模型构建层面,自动术语标注展现出与自动分词、词类标注、命名实体识别等众多自然语言处理任务类似的特性,可被视作一个典型的序列标注型机器学习任务。序列标注任务的输入是一个序列X,输出是一个长度相等的标记序列Y:

X=x1x2…xn→Y=y1y2…yn

这里xi和yi分别是输入序列和输出序列的组成元素,且xi和yi一一对应,yi可视作xi的类别标记,这种任务称作序列标注(sequence labeling)任务,是一种给序列中每个元素赋以类别标记的机器学习任务。

利用序列标注模型解决自动术语标注问题,输入X是单词序列,序列中每个基本元素xi是单词。汉语、日语等语言中词和词之间没有空格,任务的输入也可是字符序列,序列中每个基本元素xi是单个字符(汉字或字母)。在序列标注任务中,标记的种类、数量和含义通常会因任务不同而有所差异。对于自动术语标注而言,一个较为简单的选择是采用BIO标记集。BIO标记可用于标记序列中的目标片段,对于自动术语标注而言,这个目标片段就是术语。BIO标记有三个基本标记,B标记术语中的首字(或词),I标记术语中除首字(或词)之外的其他字(或词),O标记非术语组成部分的字(或词)。所以自动术语标注任务的输出是由BIO三个标记组成的序列。下面是一个标记示例:

OOBIIIOBIOOBI…

↑↑↑↑↑↑↑↑↑↑↑↑↑…

进行词法分析的程序或者函数…

在这个例子中,输入是字符序列“进行词法分析的程序或者函数…”,输出序列是“OOBIIIOBIII BI…”。如“进”和“行”被标注O标记,表明“进行”两字不是术语或术语的组成部分,“词”被标注B标记,表明“词”是一个术语的首字,“法”“分”“析”被标注I标记,表明这三个字是术语的组成部分。可以看到,如果可以成功给输入字符序列加注这样的标记序列,根据标记序列就可以确定其中的术语,任何一个由B开始并接续若干I的标记序列片段对应的字符序列片段就是术语,如在上例中,由标记序列片段“BIII”可得知“词法分析”是一个术语。

序列标注模型是自然语言处理中使用最为频繁的模型之一,现有多种不同的序列标注模型可供使用,在经典模型中,使用最多的是条件随机场(CRF)模型。 条件随机场模型是一种基于特征的模型,模型要确定某个字的正确标记,需要根据这个字在句子中的上下文特征做出决策,因此构建基于CRF的自动术语标注模型需要进行人工特征工程(feature engineering),需要人工事先设定特征模板或特征。文献[10]和[11]都是使用CRF模型解决自动术语标注问题的示例。

近年来,深度学习(deep learning)技术的应用为自然语言处理等领域带来很多进展。深度学习在多个方面推进了经典机器学习技术,主要体现在:从(对数)线性模型升级为非线性模型,提升了模型容量,改善了模型的表达能力;从高维离散型特征升级为低维连续型特征表示,实现了处理对象间关联关系的表示和建模;实现了特征的自动学习和分层学习,消除或减少了对人工特征工程的依赖,也为机器决策提供了从具体到抽象的多层特征表示;灵活的预训练机制,提供了利用大数据改善性能的可能。深度学习中常见的序列处理模型,例如长短期记忆网络模型(LSTM)、变换器模型(transformer)、基于编码-解码架构的序列到序列(seq2seq)模型,原則上都可以用来建模自动术语标注任务。在自动术语标注任务中利用深度学习技术的研究目前并不多见,文献[12]提出一种基于自注意力机制的自动术语标注模型,可作为运用深度学习技术处理自动术语标注问题的一个示例。

5.2 术语标注语料库

总体而言,自动术语标注研究不够充分,相关研究在顶级学术会议和学术期刊上鲜有展现。原因有可能是多方面的,但是缺乏大规模术语标注语料库应是主要原因之一。

无论是CRF等经典机器学习模型还是目前流行的深度学习模型,都属有指导的机器学习(supervised learning)技术,都需要以大规模术语标注语料库作为学习素材,对于深度学习模型而言,由于模型容量大的原因,理论上需要更大规模的术语标注语料库才能产生更具推广能力的术语标注效果。

针对术语标注语料库缺乏的现象,除人工构建外,似乎并无省时省力的快捷办法,但远程指导(distant supervision)技术或不失为一种权宜解决办法。远程指导技术最早被用于关系提取研究[13],是一种通过知识库回标方式产生弱标注数据的技术。文献[12]在自动术语标注研究中使用了这一技术,基本思想是利用现有术语词表,将术语词表中的术语回标至目标领域文本,简单地说,就是将目标领域文本中出现的术语表中的术语标注为术语实例并作为术语标注语料库用作机器学习模型的训练数据。远程指导技术存在错误标注和漏标的问题,文本中出现了术语表中没有的术语时,就会出现漏标现象。如果文本中出现术语的非术语用法(这种情况尽管很少出现),也会导致错标的现象。远程指导技术的优点是无须人工干预、速度快,可以在短时间内产生大规模术语标注语料,用以支持基于经典机器学习技术和深度学习技术的自动术语标注研究。例如,文献[12]利用一个包含7万多个条目的计算机领域中文术语表应用远程指导技术回标了6万多个论文摘要文本作为术语标注语料,以支持术语标注研究,并取得了一定的自动术语标注效果。

6 自动术语提取与标注的评价

与其他很多研究一样,方法的好和坏、改进方向、应用意义都需要通过评价来体现和基于评价来做出判断,自动术语提取研究也不例外。与很多自然语言处理任务评价类似,在自动术语标注和提取任务中,最常用的评价指标是F值。

测试术语提取系统的性能,需要引入目标领域的测试文本。对于给定的目标语料测试文本,其中包含的术语条目理论上是确定的,如果由领域专家把这些术语条目提取出来,就可以作为自动方法评判的标准答案。通过比对术语提取系统返回的术语条目和标准答案,会有三种情况出现:

(1) 正确提取,也就是在标准答案中的术语被术语提取系统正确提取的情况。这里用nA代表术语自动提取系统正确提取的术语的数量。

(2) 漏提,也就是正确答案中有但未能被术语提取系统提取的情况。这里用nB代表被术语自动提取系统漏提的术语的数量。

(3) 错提,也就是并非术语但被自动术语提取系统误认作术语的情况。这里用nC代表自动提取结果中这种被错认的术语数量。

基于上述三種不同情况和对应的统计数据,可以分别定义精确率(precision)和召回率(recall)两个评价指标。其中精确率用来评判自动提取系统提取结果的准确程度,定义为自动提取结果中正确结果所占的百分比,即:

precision=nAnA+nC×100%

召回率用来评判自动提取结果对正确结果的覆盖情况,定义为正确的提取结果占标准答案的百分比,即:

recall=nAnA+nB×100%

而F值是结合精确率和召回率的综合评价指标,定义为精确率和召回率的调和平均值,即:

F-measure=2·precision·recallprecision+recall

对于术语提取而言,最终输出的术语条目数量会受用户预设的数量或得分阈值的影响,因而设定不同,评价结果也会不同。对同一个术语提取系统而言,提取的准确率通常会随着输出条目数量的增加而降低,而召回率则会随着输出条目数量的增加而升高。

对于自动术语标注而言,通常也采用F值来评价效果,只不过术语标注是标注文本中所有的术语实例,因此是在语例层次进行评价。评价时需要事先准备正确标注了所有术语实例的目标领域测试文本作为标准答案,与自动术语标注系统的标注结果做比对,计算标注的精确率、召回率及相应的F值。

7 结语

自动术语提取研究取得了不少进展,但距离人们的期望还有不小的差距。这表现在,现有术语提取结果中存在大量的噪声,人工核校剔除需要花费大量成本;术语漏提现象也普遍存在,尤其是现有术语提取技术大多基于统计技术,限于长尾效应,一些低频术语很难被识别和提取。如何减少噪声和漏提现象仍是术语提取研究要解决的核心问题。

从方法层面而言,形成了基于术语评分统计量的提取策略和基于机器学习的术语标注策略两大类方法。基于术语评分统计量的办法无需大规模术语标注语料库,因而得到了较多的关注和研究。基于机器学习的术语标注技术由于需要大规模术语标注语料库,限于缺乏这样的标注数据,效果和潜力仍未充分体现。尤其值得指出的是,近年来深度学习技术在自然语言处理的许多任务中有突出表现,但在自动术语提取和标注任务上的深入探索仍不多见。在基于深度学习技术的自动术语提取和标注研究中,至少有两个方面值得进一步关注:一是许多神经网络架构已被证实在自然语言处理的许多任务中可以带来效果提升,诸如CNN、LSTM、Transformer等,这些模型可为术语提取技术带来何种影响需要实践验证,研究人员也需要在此基础上探索并提出适于自动术语提取问题的新型模型架构;二是大规模预训练语言模型发展如火如荼,BERT、GPT、XLNet、T5等众多大规模预训练语言模型在许多自然语言处理任务中的价值已得到证实,但在自动术语提取方面的价值仍有待探索和关注。

术语提取和标注主流技术仍是数据驱动的技术,术语标注资源的建设至关重要。但术语标注语料构建耗时费力,在这种情况下,有效利用远程指导等弱指导技术和有效应对远程指导技术的噪声问题值得研究和探索。术语标注资源的建设还有利于形成统一基准评测语料,为准确有效评价不同术语提取或标注方法提供基础资源,有利于术语提取和标注技术的持续发展。

随着科学技术的进步,新术语层出不穷,从术语整理和审定的角度看,新术语提取效果更具应用价值,如何在方法、评价层面考虑新术语提取能力也是有待关注的问题。

参考文献

[1] 语言学名词审定委员会.语言学名词[M]. 北京:商务印书馆,2011.

[2] CABR CASTELLV M T , BAGOT R E , PALATRESI J V. Automatic term detection: a review of current systems[M]//BOURIGAULT D, JACQUEMIN C, L’HOMME M-C. Recent Advances in Computational Terminology. Amsterdam:John Benjamins Publishing Company, 2001:53-88.

[3] JUSTESON J,KATZ S. Technical Terminology: Some Linguistic Properties and an Algorithm for Identification in Text[J]. Natural Language Engineering, 1995,1(1):9-27.

[4] KYO K,BIN U. Methods of automatic term recognition:a review[J]. Terminology, 1996,3(2):1-23.

[5] CHANG B B, DANIELSSON P, TEUBERT W. Extraction of Translation Unit from Chinese-English Parallel Corpora[C]//Proceedings of The First SIGHAN Workshop on Chinese Language Processing, 2002.

[6] CHURCH K W,GALE W A. Inverse document frequency (idf): A measure of deviations from poisson[C]//Proceedings of the ACL 3rd Workshop on Very Large Corpora, 1995:121-130.

[7] FRANTZI K, ANANIADOU S, MIMA H. The C-value/NC-value method of automatic recognition for multi-word terms[C]//Proceedings of the Second European Conference on Research and Advanced Technology for Digital Libraries (ECDL),1998:585-604.

[8] FRANTZI K, ANANIADOU S, MIMA H. Automatic recognition of multi-word terms: the C-value/NC-value method[J]. International Journal on Digital Libraries,2000, 3(2):115-130.

[9] BARRN-CEDEO A, SIERRA G, DROUIN P, et al. An improved automatic term recognition method for Spanish[C]//International Conference on Intelligent Text Processing and Computational Linguistics, 2009:125-136.

[10] 王海雄,郭剑毅,余正涛,等. 基于CRFs的中文领域术语自动抽取研究[C]//第六届全国信息检索学术会议论文集,北京:中国中文信息学会,2010:505-512.

[11] ZHANG X, SONG Y, FANG A C. Term recognition using Conditional Random fields[C]//International Conference on Natural Language Processing and Knowledge Engineering, IEEE, 2010:1-6.

[12] 趙颂歌,张浩,常宝宝. 基于自注意力机制的科技术语自动提取技术研究[J]. 中国科技术语,2021,23 (2):20-26.

[13] MINTZ M, BILLS S, SNOW R, et al. Distant supervision for relation extraction without labeled data[C]//Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th International Joint Conference on Natural Language Processing of the AFNLP, 2009:1003-1011.

[14] KIM J-D,OHTA T,TATEISI Y,et al. GENIA corpus:a semantically annotated corpus for bio-textmining[J]. Bioinformatics, 2003,19(1):i180-i182.

[15] ZADEH B Q,HANDSCHUH S. The ACL RD-TEC: A Dataset for Benchmarking Terminology Extraction and Classification in Computational Linguistics[C]//Proceedings of the 4th International Workshop on Computational Terminology (Computerm),2014:52-63.

[16] 冯志伟. 一个新兴的术语学科:计算术语学[J]. 术语标准化与信息技术,2008(4):4-9.

[17] ZHANG Z Q,GAO J,CIRAVEGNA F. JATE 2.0: Java Automatic Term Extraction with Apache Solr[C]//Proceedings of the Tenth International Conference on Language Resources and Evaluation (LREC’16), 2016:2262-2269.

[18] KANG B, CHANG B B, CHEN Y R, et al. Extracting Terminologically Relevant Collocations in the Translation of Chinese Monograph[C]//International Joint Conference on Natural Language Processing, 2005:1017-1028.

[19] KANG B, CHANG B B, CHEN Y R, et al. Translating multi word terms into Korean from Chinese documents[C]//International Conference on Natural Language Processing and Knowledge Engineering, 2005:449-454.

作者简介:常宝宝(1971—),博士,北京大学信息科学技术学院副教授,主要研究领域为自然语言处理。先后主持多个国家自然科学基金和国家社会科学基金等项目,在包括ACL、EMNLP、COLING、IJCAI、AAAI等国际顶级会议在内的国内外学术会议及期刊上发表论文近百篇。作为主要成员,先后获得教育部科技进步一等奖、中国电子学会科技进步一等奖、国家科技进步二等奖等。通信方式:chbb@pku.edu.cn。

猜你喜欢

机器学习
前缀字母为特征在维吾尔语文本情感分类中的研究
下一代广播电视网中“人工智能”的应用