于墨 赵铁军
摘 要:具有结构化输出的学习任务(结构化学习)在自然语言处理领域广泛存在。近年来研究人员们从理论上证明了数据标记的噪声对于结构化学习的巨大影响,因此为适应结构化学习任务的去噪算法提出了需求。受到近年来表示学习发展的启发,本文提出将自然语言的子结构低维表示引入结构化学习任务的样本去噪算法中。这一新的去噪算法通过n元词组的表示为序列标注问题中每个节点寻找近邻,并根据节点标记与其近邻标记的一致性实现去噪。本文在命名实体识别和词性标注任务的跨语言映射上对上述去噪方法进行了验证,证明了这一方法的有效性。
关键词:表示学习;半监督学习;去噪算法;自然语言处理;跨语言映射
中图分类号:TP181 文献标识号:A 文章编号:2095-2163(2015)06-
Noise Removing based on N-gram Representations and its Applications to Cross-Lingual Projection
YU Mo, ZHAO Tiejun
(School of Computer Science and Technology, Harbin Institute of Technology, Harbin 150001, China)
Abstract: Problems with structured predictions (structured learning) widely exist in natural language processing. Recent research found that compared to classification problems, structured learning problems were affected more seriously by label noises, suggesting the importance of noise removing algorithms for these problems. Inspired by the development of representation learning methods, the paper proposes a noise-removing algorithm for structured learning based on low-dimensional representations of sub-structures. The algorithm finds neighbors of each node in a sequential labeling task based on its associated n-gram representation, and then performs noise removing on the label of a node according to its consistency with the labels of its neighbors. Therefore the paper proves the effectiveness of the proposed algorithm on the cross-lingual projection of named entity recognition and POS tagging tasks.
Keywords: Representation Learning; Semi-supervised Learning; Noise Removing; Natural Language Processing; Cross-lingual Projection
0引 言
很多自然语言处理(NLP)技术依赖于有监督学习方法训练的模型,而有监督学习方法的性能不仅依赖于标记样本的数量,也依赖于标记样本的质量。当标记样本中发生了错误,即标记存在着噪声时,学习得到的分类器的推广能力会受到影响(相应的理论分析被称为噪声可学习性理论,见文献[1-2])。由于具有结构化输出的学习任务(结构化学习)在NLP领域的广泛存在性和重要性,于墨等人[3]将上述噪声可学习性理论推广到结构化学习问题中,证明了对同样的噪声率,学习的难度随结构的复杂性的增加而有所提升。这一理论分析结果说明了当NLP的结构化学习任务包含噪声时,一个好的去噪算法对模型性能的改进完善极为重要。
综合上述原因,本文以序列标注任务为例,提出了一种针对自然语言结构化学习问题的去噪方法。这一方法采用了基于最近邻样本的去噪策略,即假设相似的样本应该具有相似的标记,从而当一个样本的标记与其最相似的几个样本标记存在冲突时,便认为这个样本的标记存在着噪声,并可以根据其近邻样本的标记(或这些样本标记的多数投票)去对错误样本的标记进行修正。上述去噪算法的核心在于样本相似性的定义,在自然语言的序列标注问题中,重点关注了序列中每个节点(即词)的标记信息,从而每个词被看作是一个样本。然而由于词的歧义性和用法的多样性,仅使用词本身并不足以描述该词在序列中起到的作用并得出词的标记信息。因此,在序列标注问题中,研究人员往往同时使用一个词本身及其上下文词去描述该词的作用。这一思想启发本研究也可使用同样的上下文信息去定义样本的相似性。
本文提出了一种用于描述词及其上下文的n元词组的表示。这里“表示”指的是一种将n元词组映射到某个低维向量空间的方法。在自然语言处理中,表示学习方法往往用于将某些语言成分或特征通过维度约减而映射到低维向量。比如词聚类[4]和词嵌入[5]分别通过将词分配到一些离散聚类中,或者将词表示为低维的连续向量,实现了对于词汇信息的降维。这样的低维表示常常被用作有监督训练模型的输入特征,从而避免模型具有过多参数而过拟合训练集样本。而在本文中,具体是从另一个角度应用上述低维表示,即通过这些表示为原本稀疏的n元词组之间建立关系,并以此作为去噪算法的相似性度量。本文在NLP领域首次尝试将表示学习的成果应用于去噪算法,并在序列标注问题的跨语言映射上取得了巨大的成功。同时据已有研究成果所知,本文也首次在NLP领域将去噪算法引入结构化学习任务。
在本文的第一节,我们将对基于n元词组表示的去噪方法进行描述。本文的第二节将介绍实验部分,即跨语言映射问题的实验设置。第三节给出本文去噪算法的实验结果。最后在第四节中,则是对本文工作进行总结并进一步讨论未来的研究方向。
1基于n元词组表示的去噪方法
1.1序列标注问题
本文主要关注噪声对序列标注问题的影响。这里序列标注问题可以被形式化定义为给定一个输入序列X={xi},目标为输出标记序列Y={yi}的技术实现过程描述。其中xi和yi形成了一一对应。自然语言处理中的一个经典序列标注问题为词性标注研究,此时每个xi是句子中的一个单词,而yi是这个单词的词性,如名词、动词等。图1给出了使用条件随机场(CRF)[6]对上述序列标注问题建模的一个示意。该情形的任务目标是为P(Y|X)建模。我们将该模型称为1阶模型,因为模型只考虑相邻两个标记yi-1 yi的条件依赖。
1.2基于布朗聚类的n元词组表示
本文所提出的n元词组表示方法以词表示作为基础,本节中使用词表示的一种特例——布朗聚类完成这一任务。布朗聚类[4]是一种层次化的聚类算法,该算法的目标是最大化基于词聚类的二元词组之间的互信息。布朗聚类在大量的自然语言处理任务中均已得到了成功的应用,如命名实体识别[7],短语结构文法分析[8],依存句法分析[9]以及语义依存分析[10]。
1.3基于n元词组表示的去噪算法描述
已有研究的理论分析[3]说明在结构化学习问题中,类别噪声对于分类器训练的影响会由于类别在结构中的相互依赖而放大。而在很多自然语言处理任务中,标注都会存在一定的噪声。图2给出了一个跨语言映射[11]的实例。这是一个命名实体识别任务,即判断句子中某个词或词组是否为人名、地名、机构名等实体。在该例子中,源语言句子的标注会根据词对齐结果被映射到目标语言端,从而在目标语言端构建了一个自动标注数据样例。这些自动标注数据可以随后应用在目标语言端来进行命名实体识别模型训练。同时,在这个例子中,目标语言(汉语)端的“吴仪”一词因为词对齐的错误,没有被标记为命名实体,为此而成为了训练噪声。由于词对齐错误的大量存在,通过跨语言映射方法建立的目标语言训练数据必将会存在大量的噪声。
为了降低数据中的噪声从而使得训练得到的模型更加精确,本节提出了一个基于表示学习的去噪方法。该方法的基本假设是相似的词应该具有相同的类别标记,这就使得当一个词与其绝大部分近邻标记均为不同时,研究则认为该词标记错误,并将对应标记更改为其相近词的标记。
该方法的一个极端情况是对相同的词赋予相同的类别。然而数据噪声往往并非独立同分布,而是具有某些偏置(bias)。比如图2所示的噪声来自于词对齐算法的系统错误,导致在语料中,低频词“吴仪”的大部分出现都对应着词对齐错误。此时基于词本身去噪并不能解决这一问题。而词表示则可以给出具体解决办法:对于上述例子,可以观察到“吴仪”,“朱镕基”和“罗干”由于总是在相似的上下文中出现,而被分配在同一聚类中。如果这个聚类中的词大部分都是人名,研究则有理由相信“吴仪”一词的类别应被修改为“PER”。
另一方面,在序列标注任务中,一个词的类别标记往往并不仅仅取决于词自身,同时也取决于词的上下文。因此,为了更精确地进行去噪操作,即可考虑以n元词组取代词作为一个样本,从而相似的n元词组的中心词将会对应着相同的类别标记。在此设置下,最精确的去噪方式是使用n元词组自身作为相似度度量,从而与上一段中的描述得到了类似推论:相同的n元词组应该具有相同的标记。然而这一方法也同样存在着问题:相比词本身,n元词组往往更加稀疏,因此从有限的数据样本中可能难以获得充分的统计信息去确定“一个n元词组大部分情况下具有何种标记”。而上一节中的n元词组表示却恰好能够为这样的稀疏数据进行平滑,从而使得去噪过程更加准确。
2实验设置
2.1实验数据
本文以跨语言映射问题为例,对本文提出的去噪方法进行测试。实验中以英语作为资源丰富型语言,用汉语、荷兰语和西班牙语模拟资源缺乏型语言。上述数据选择即为研究提供了两种不同的应用环境:对于英语到汉语的映射任务,源语言和目标语言属于两个不同语系,从而具有较大差异;而欧洲语言对则相较而言会更为接近。本文随即在英-汉语言对上进行了命名实体识别(NER)和词性标注(POS)的跨语言映射。为了评价英语到汉语的NER的任务准确率,选择使用了人民日报语料四月份部分(1998年)作为测试集(55 177个句子)。,并且将该数据的分词标准转化成宾州中文树库[12]的风格。对于英语到荷兰语/西班牙语的任务,则使用了CoNLL 2002[13]任务所提供的标准数据划分。为了评价POS任务的准确率,主要使用了CTB的标准测试集,并将英汉词性标注类别都转换为通用词性集合[14]。
在本实验中,使用了布朗聚类作为词表示。具体就是通过使用[15]一文中提出的工具,在中文维基百科语料上训练得到1 000类的布朗聚类。在此基础上,则使用斯坦福分词器[16]对中文维基语料进行分词。对于荷兰语和西班牙语的布朗聚类,特别优化使用了OpenNLP工具获得这些语言维基百科语料的标记化文本,再使用与汉语相同的方法训练1 000类的布朗聚类。
实验中,使用了LDC2003E14语料作为英-汉双语对齐语料。该语料包含了大约200,000个对齐句对。需要说明的是目前存在着丰富的大规模中英对齐语料,本文选择该数据的原因是其规模适中,因此在其他语言对上也很容易收集到相似规模的对齐语料。这使得本文得出的结论在现实应用中更具有一般性。对于英语到荷兰语和西班牙语的映射任务,有针对性地使用了Europarl语料[17]。同样地,只为研究选取了这两个对齐语料的前200 000个对齐句对。Europara语料提供了英语到西班牙语的词对齐。对于其他语言对,则将使用GIZA++[18]产生词对齐。
2.2基线系统
实验中比较了三种基线系统,第一个系统来自于文献[19],在该方法中,源语言端训练出的布朗聚类根据词对齐被映射到目标语言端,从而为目标语言的每个词分配词聚类。在此基础上,还可以在同一个特征空间内表示源语言和目标语言样本,因此用源语言语料在该特征空间上训练得到的模型可以直接应用于目标语言。本文将这种方法称为直接映射方法。实验的第二个系统来自于对[11]一文的直接应用,在该方法中,利用源语言端的一个高质量的模型[20]来标记对齐语料中的源语言句子,并根据词对齐将标记结果传播到目标语言句子上,然后在目标语言端重新训练模型。在实现过程中,采用[21]一文提出的方法,只使用一对一词对齐进行映射,这一处理也使得映射后得到的数据质量更高(见文献[21]中的分析)。本文将上述方法称为基于词对齐的映射方法。实验的第三个系统基于第二种方法,同时使用了文献[22]提出的词表示复合特征,该方法被记为基于词对齐的映射方法+词表示。
在上述模型训练过程中,研究使用了表1中的特征模板(来自文献[22])。表中,w0代表当前词,p0代表当前词的词性,c0代表当前词的词聚类(其中使用上一节中的布朗聚类),y0为当前词的标记,wi代表相对当前词位置为i的词,w[1:i]代表词w的长度为i的前缀,w[-i:-1]代表词w的长度为i的后缀。Hyp和Cap是指示函数,分别表示当前词是否包含连字符,以及当前词第一个字母是否大写。对于汉语的实验,这里忽略了表中的形态学特征。
为了证明本文所提出的方法对于多种不同的NLP任务都能起到作用,又设计给出了英语到汉语的词性标注映射结果。在这一任务中,明确使用了与NER任务相同的特征模板。表4给出了该任务上的结果。通过本文提出的基于n元词组去噪方法的帮助,相比最好的基线系统,最终得到了大约2.7个百分点的提升。而且,在这一任务上,基于n元词组表示的去噪方法相比在NER任务上起到了更加重要的作用:加入词表示特征(3)相比系统(2)带来了1.5个百分点的提升,而本文的去噪方法在此基础上又取得了2.7个百分点的提升(相较之下前面的任务中词表示特征提升幅度更大)。一个可能的原因是本文的去噪方法在实际上就假设了每个样本标记均为词级别的。现实中,这一假设对于词性标注是合理的,然而对于NER任务却并不完全适用。
4结束语
本文提出了基于n元词组表示的训练数据去噪方法。其中的n元词组表示可以有效地描述词的上下文信息,从而更好地帮助获取每个训练样本在标记数据中的近邻,并考察训练样本标记的一致性。在多个跨语言映射任务上的实验结果证明这一去噪方法可以大幅地提升训练结果的准确率。在未来,则将考虑使用如词嵌入等连续表示,同时结合流形学习的方法进行更加精确的去噪。同时我们将研究其它子结构的表示方法(如递归神经网络[23]),并将其应用于更复杂结构学习问题的去噪算法中。
参考文献:
[1] ANGLUIN D, LAIRD P. Learning from noisy examples[J]. Machine Learning, 1988, 2(4): 343–370.
[2] Laird P D. Learning from good and bad data[M]. Berlin: Springer Science & Business Media, 2012.
[3] 于墨, 赵铁军, 胡鹏龙, et al. 结构化学习的噪声可学习性分析及其应用[J]. 软件学报, 2013, 24(10): 2340–2353.
[4] BROWN P F, DESOUZA P V, MERCER R L, et al. Class-based n-gram models of natural language[J]. Computational linguistics, 1992, 18(4): 467–479.
[5] Bengio Y, Schwenk H, Sene ?cal J S, et al. Neural probabilistic language models[M]. Berlin: Springer, 2006: 137–186.
[6] LAFFERTY J, MCCALLUM A, PEREIRA F C. Conditional random fields: Probabilistic models for segmenting and labeling sequence data[C]// ICML 2001. San Francisco: IMLS, 2001: 282-289
[7] MILLER S, GUINNESS J, ZAMANIAN A. Name tagging with word clusters and discriminative training[C]// NAACL 2004. Boston, Massachusetts: ACL,2004: 337-342.
[8] CANDITO M, CRABBE B. Improving generative statistical parsing with semi-supervised word clustering[C]// IWPT. 2009, [S.l.] ACL,2009: 138-141.
[9] KOO T, CARRERAS X, COLLINS M. Simple Semi-supervised Dependency Parsing[C]// Proceedings of ACL-08: HLT. Columbus, Ohio: ACL, 2008: 595–603
[10] ZHAO H, CHEN W, KIT C, et al. Multilingual dependency learning: a huge feature engineering method to semantic dependency parsing[C]// CoNLL 2009, Boulder, Colorado: ACL,2009: 55-60.
[11] YAROWSKY D, NGAI G, WICENTOWSKI R. Inducing multilingual text analysis tools via robust projection across aligned corpora[C]// HLT 2001, [S.l.]: ACL,2001: 1–8.
[12] XUE N, XIA F, CHIOU F, et al. The eenn Chinese treebank: Phrase structure annotation of a large corpus[J]. Natural Language Engineering, 2005, 11(2): 207.
[13] TJONG K S E. Introduction to the CoNLL-2002 shared task: Language-independent named entity recognition[C]//CoNLL 2002, Taipei, Taiwan: ACL, 2002: 155–158.
[14] PETROV S, DAS D, MCDONALD R. A universal part-of-speech tagset[J]. arXiv preprint arXiv:1104.2086, 2011.
[15] Liang P. Semi-supervised learning for natural language[D]. Massachusetts Institute of Technology, 2005.
[16] TSENG H, CHANG P, ANDREW G, et al. A conditional random field word segmenter for sighan bakeoff 2005[C]//SIGHAN 2005, [S.l.]: ACL,2005: 171.
[17] KOEHN P. Europarl: A parallel corpus for statistical machine translation[C]//MT summit. 2005, Phuket, Thailand: Citeseer,2005: 79–86.
[18] OCH F J, NEY H. A systematic comparison of various statistical alignment models[J]. Computational linguistics, 2003, 29(1): 19–51.
[19] T?CKSTR?M O, MCDONALD R, USZKOREIT J. Cross-lingual word clusters for direct transfer of linguistic structure[C]// NAACL 2012. Montréal, Canada: ACL,2012: 477-487.
[20] MANNING C D, SURDEANU M, BAUER J, et al. The Stanford CoreNLP Natural Language Processing Toolkit[C]// ACL 2014 (System Demonstrations). Baltimore, Maryland: ACL,2014: 55-60.
[21] HU P, YU M, LI J, et al. Semi-supervised Learning Framework for Cross-Lingual Projection[C]// WI-IAT 2011, Lyon, France: IEEE: 2011(3): 213–216.
[22] YU M, ZHAO T, DONG D, et al. Compound Embedding Features for Semi-supervised Learning[C]// NAACL 2013. Atlanta, Georgia: ACL,2013: 563-568.
[23] SOCHER R, BAUER J, MANNING C D, et al. Parsing with compositional vector grammars[C]// ACL 2013. Sofia, Bulgaria: ACL,2013: 455-465.