计算语言学(九)

这种转变从哲学的角度来看很重要,而不仅仅是一个实用的角度:它表明传统的关于语言的思考可能已经依赖了内省。 内省的限制是我们在理解或考虑语言方面的大脑中发生的事情很少(参见例如Baars 1997中的“双通道实验”的讨论)。 我们有意识地注册了我们的理解和思维的结果,显然是以象征形式,但不是理解和思维过程; 和这些象征性的抽象,在他们缺乏定量或概率维度的程度上,可以引导我们假设潜在的处理也是不清的。 但统计NLP的成功以及认知科学的最新发展(例如,Fine等,2013; Tenenbaum等,2011; Chater和Oaksford 2008)表明语言和思维不仅象征性,而且深深地定量和特别是概率。

在前二十年左右,统计NLP的主要目标是使用在大型语言使用的大型电流上培训的统计语言模型来分配标签,标签序列,语法树木或转换为语言输入。 更完整地,所处理的任务类型可以大致分组如下(附加关键字指示典型应用程序):

文本/文档分类:作者,路透社新闻类别,情感分析;

在括号或更广泛的上下文中分类所选词语或短语:词感歧义,命名实体识别,多字expression识别;

序列标签:声学特征→手机→音素→单词→POS标签;

结构分配给句子:解析,语义角色标记,量化范围;

句子转导:MT,LF计算;

多句子文本的结构分配:话语关系,安差拉,计划认可;

大规模关系提取:知识提取,释义和征用关系。

这些群体似乎与随之而异,但随着我们将进一步讨论,某些技术和区别对于许多人来说很常见,特别是

在建模中:数字和离散特征,矢量模型,Log-Linear Models,Markov模型; 生成与判别模型,参数与非参数模型;

在学习数据时:最大似然估计,最大熵,期望最大化,动态编程; 监督与无人监督的学习; 和

在输出计算中:动态编程; 独特的输出与输出的分布。

我们现在试图向上面七组任务中涉及的最重要的技术和区别提供一些直观的洞察力。 为此目的,我们不需要在量词范围(第四组中)或第六和第七组中的任何项目都不进一步发表评论,因为这是本文其他地方覆盖的大部分。 在所有情况下,两个主要要求是将语言输入与所需输出相关的概率模型以及模型在将标签或结构分配给以前看不见的输入中的算法使用的概率模型的开发(帮助)。

文本和文档分类:在分类实质性文档中,所使用的功能可能是特定单词(或Word类)和标点符号的标准化发生频率。 特别是对于较短的文本,也可以包括各种离散特征,例如0,1值函数,其指示存在或不存在某些关键词或结构特征。 以这种方式,文档被表示为数字向量,其中具有高维空间中的值,其中具有单独的类,其单独的类别在该空间中形成有些分开的簇。 各种经典模式识别技术适用于学习将新文件(作为向量)分配给适当的类(例如,Sebestyen 1962; Duda和Hart 1973)。 也许最简单的方法(当特征是二进制时最容易应用的方法)是一个天真贝贝西亚人,它假设每个类生成彼此独立的特征值。 从训练数据估计生成频率,并且通过贝叶斯的规则(可以使用先前类概率的连续更新来计算未知文档(向量)的类成员资格概率。 选择具有最高结果后概率的课程然后提供决策标准。 用于实值特征的常见生成模型,允许特征交互,将任何给定类的已知成员视为多变量普通(高斯)随机变量的样本。 在这种情况下学习包括估计每个类的平均值和协方差矩阵(最大似然估计的一个例子)。

一种传统的歧视方法,在任何生成模型上之前不在,涉及计算从彼此分区已知类实例的群集的超平面(优化涉及课程和级别方差之间的某些度量); 新实例被分配给它们落下的分区的类。 Perceptrons提供了一个相关的技术,只要他们根据特征值的线性组合决定课程成员资格; 他们的特殊优势是,随着越来越多的训练数据可用,它们可以逐步学习(通过调整特征权重)。 另一种耐用的判别方法 - 不依赖于类的线性可分离性 - 是K最近邻居(KNN)方法,其将未知文本或文档分配给载体中的k(例如,1-5)最近邻居中最普遍的类别空间。 虽然所有先前提到的方法依赖于参数估计(例如,生成概率,高斯参数或分离平面的系数),但是KNN使用这种参数 - 它是非参数; 然而,找到合适的邻近或相似度量可能是具有挑战性的,并且难以避免在特征空间中占用的局部数据点配置引起的错误。 另一种值得一提的非参数鉴别方法是使用决策树,可以使用信息 - 理论技术来学习; 它们通过遵循根到叶路径来选择类,通过测试给定输入向量的特征选择分支。 一个潜在的有用的财产是,学习决策树可以提供深入了解最重要的特征(这种洞察也可以通过维度减少方法提供)。 然而,决策树倾向于融合到农民阶最佳(全局优化是NP-Hard),并且通过分裂数据,倾向于阻止特征相互作用的建模; 通过使用决策林,可以在一定程度上缓解这种缺陷。

前面提到了一些传统的分类方法,现在我们来概述两种自 20 世纪 90 年代以来在统计自然语言处理 (NLP) 领域尤为突出的技术。第一种是最大熵 (MaxEnt),其数学根源可以追溯到 20 世纪 50 年代,也称为(多项式)逻辑回归(例如,Ratnaparkhi 1997)。在这种情况下,特征可以是给定语言输入和可能类别的任何所需的 0 值或 1 值(二元)函数。(对于连续特征,可以应用监督或无监督的离散化方法,例如基于熵将其划分为若干个区间。)训练数据提供这些特征的出现频率,并根据给定的语言输入推导出某个类别的条件概率分布。(因此,它是一种判别方法。)顾名思义,这个条件概率函数是一个最大熵分布,其约束条件与训练数据中观察到的二元特征频率相符。它的形式(除了常数乘数)是一个指数,其指数是给定输入和给定类的二进制特征值的线性组合。因此,它是一个对数线性模型(对数在特征上是线性的分布)——一种现在在许多统计 NLP 任务中流行的模型类型。注意,由于它的对数是任何给定输入和任何给定类的二进制特征值的线性组合,因此为给定输入选择最大概率类相当于线性决策,就像在某些经典方法中一样;然而,MaxEnt 通常提供更好的分类性能,并且它提供的分类概率可用于进一步的计算(例如,预期效用)。

。统计 NLP 的出现和成功的另一个重要方法是支持向量机 (SVM) 方法(Boser 等人,1992 年;Cortes 和 Vapnik,1995 年)。该方法的巨大优势在于,它原则上可以区分任意配置的类别,方法是将原始向量隐式投影到更高(或无限)维的空间中,其中类别是线性可分的。投影由核函数介导——核函数是向量对的相似性度量,例如两个向量点积的多项式。粗略地说,如果将高维向量展开为原始未展开向量对特征的乘积之和,则其分量对应于核函数的项。但实际上并未进行展开,而且从给定训练语料库获得的分类标准仅需要计算给定特征向量(表示待分类文档)的核函数,并将其与某些特殊的“支持向量”配对,并将所得值的线性组合与阈值进行比较。支持向量属于训练语料库,并定义两个平行的超平面,以尽可能地(在展开的空间中)分离所讨论的类别。 (因此这是一种“最大间隔”判别方法。)SVM 通常提供出色的准确率,部分原因是它们允许非线性特征交互(在原始空间中),部分原因是最大间隔方法侧重于类分离,而不是类的条件概率建模。另一方面,MaxEnt 分类器比 SVM 训练得更快,并且通常提供令人满意的准确率。我们概述的分类方法的一般参考文献是(Duda et al. 2001; Bishop 2006)。

在句子或更广泛上下文中对选定单词或短语进行分类:如前所述,示例包括 WSD、命名实体识别和句子边界检测。与文本/文档分类的唯一区别在于,它不是对整个文本块进行分类,而是对这种文本块上下文中的单词或短语进行分类。因此,特征的选择既要反映目标词或短语的特征(例如形态),也要反映其与上下文的关系,例如,周围的词或词类、(可能的)局部句法依存关系,以及范围更广的特征,例如词频或文档类别。除了特征选择方式的差异之外,可以应用上述相同的(监督)学习和分类方法。然而,构建足够大的训练语料库可能并非易事。例如,在统计词义分离 (WSD) 中(例如 Yarowsky 1992;Chen et al. 2009),由于在 WordNet 等来源中,数千个词具有多种含义,因此很难构建一个包含所有这些含义的足够多出现次数以进行统计学习的带含义注释的训练语料库。因此,注释通常仅限于少数多义词的含义,并且统计词义分离已被证明适用于所选词汇,但覆盖范围广泛的词义分离工具仍然难以找到。

。序列标注:前一项任务与序列标注之间存在某种随意的界限。例如,完全可以将词性标注视为一项根据上下文对文本中的单词进行分类的任务。然而,这种方法未能充分利用相邻单词的分类相互依存这一事实。例如,在句子“I don't fish like most people”(来自网络)中,“don't”的出现应该倾向于将fish归类为动词,而动词的出现又应该倾向于将like归类为介词。(至少这种偏好对于陈述句来说是合理的;将“I”替换为“why”会改变情况——见下文。)这种级联影响很难通过连续的独立分类来捕捉,它们激发了诸如隐马尔科夫模型(HMM)之类的生成序列模型。对于词性标注,一个带标签的训练语料库可以在给定当前单词的词性的情况下,提供下一个单词任何词性概率的估计。如果语料库足够大,它还可以提供文本中大量常见词汇的“出现”概率估计,即给定词性标签的情况下它们出现的概率。(对于给定词性标签的未知词汇,可以使用平滑技术填充非零概率。)我们之前提到过,维特比算法是一种高效的动态规划算法,它能够将隐马尔可夫模型(HMM)(按上述方法训练)应用于为文本中的词汇分配最大概率词性标签序列的任务。前向算法和后向算法这两种相关的算法可以用来推导每个词汇位置 i 处可能标签的概率,这可能比“最佳”标签序列对后续更高级别的处理更有用。前向算法实际上(通过动态规划)将到位置 i 的所有标签序列的概率相加,这些标签序列在词汇位置 i 处以指定的标签 X 结尾,并生成到(包括)该词汇的输入。后向算法将所有以位置 i 处的标签 X 开头的标签序列的概率相加,并生成从位置 i+1 到末尾的输入。前向和后向概率的乘积经过归一化,使得位置 i 处备选标签的概率之和为 1,从而得出基于整个输入的 X 在 i 处的概率。

。到目前为止,所有提到的学习方法都是监督学习方法——假设有正确标记的文本语料库可用于推断模型参数。但是,也已经开发出用于无监督(或半监督)学习的方法。一种用于发现序列标记的 HMM 模型的重要无监督方法是前向-后向(或 Baum-Welch)算法。在 POS 标记的情况下,该算法的一个简单版本依赖于包含每个单词可能标记的词典(可以从标准词典中轻松获取)。然后,基于训练语料库,对 HMM 转换和发射概率的一些初始值(或多或少是任意选择的)进行迭代细化。迭代过程的示意图如下:我们使用当前对 HMM 参数的猜测来标记训练语料库;然后重新估计这些参数,就像语料库是手动标记的一样。重复这两个步骤,直到收敛。实际使用的方法在使用当前 HMM 参数的方式上更加巧妙。(它是 EM(期望最大化)的一个特例。)它不是根据当前“最佳”标记序列中的出现频率重新估计参数,而是使用特定连续状态(标签)对的预期出现次数,并将其除以该对中第一个成员的预期出现次数。这些预期值由给定训练语料库和当前HMM参数的标签序列的条件概率分布决定,可以使用如上所述的前向和后向概率获得(因此,以整个语料库为条件)。任何X→w的修正发射概率可以计算为:语料库中单词w出现的所有位置上X标签的概率之和,除以所有位置上X标签的概率之和,同样使用前向和后向概率的乘积。

不幸的是,EM不保证找到全球最佳模型。 因此,只有通过以“合理的”初始HMM开始,可以实现良好的结果,例如将非常低的概率分配给某些转换(例如确定器→确定器,确定器→动词,形容词→动词)。 半监督学习可能从一个相对较小的标记训练语料库开始,并使用相应的HMM参数估计作为从进一步的未标记文本的无监督学习的起点。

HMMS本身的弱点是马尔可夫假设(非邻居的独立性,鉴于邻居)被文本中的更长范围依赖性侵犯。 例如,在一个相对条款的上下文中(由该子句的名词发出信号),传递动词可能很好地缺乏NP补充(“我收集了他扔在桌子上的钱。结果,可以标记动词后面的单词错误地(作为名词)。 一种克服这种困难的判别方法是使用条件随机字段(CRF)。 与HMMS(它们已集成)一样,这些允许隐藏状态的本地相互依赖,但使用不仅依赖于这些状态的相邻对的特征,还依赖于整个输入的任何所需属性。 在数学上,该方法非常类似于MaxEnt(如上所述)。 特征系数可以通过梯度上升或通过与BAUM-Welch算法相关的增量动态编程方法来学习,称为改进的迭代缩放(IIS)(Della Pietra等,1997; Lafferty等。2001)。 CRF在POS标记之外的许多应用中取得了成功,例如句子和字边界检测(例如,用于中文),WSD,从文本中提取表,命名实体识别,以及NLP中的基因预测和计算机视觉之外。

对句子的结构分配:在第2节简要讨论了使用概率的无内容语法(PCFG)。PCFG的监督学习可以很多像POS标记的HMMS的监督学习。 如果使用短语包围(TreeBank)注释的大语料库(虽然POS→Word扩展概率的估计最佳补充有附加数据,则容易估计短语扩展的所需条件概率。 一旦了解到,PCFG可用于使用第2节中提到的图表解析方法为句子分配概率上加权短语结构。

此外,可以使用EM方法无法监督PCFG的学习。 这很重要,因为它相当于语法发现。 我们唯一从理论上开始的假设,就是存在一些最大数量的非缘符号,并且每个可以扩展到任何两个非终端或进入任何字(Chomsky正常形式)。 我们还与这些规则联系了一些或多或少的任意初始扩展概率。 基于当前PCG模型,使用可能扩展的发生频率的预期值来迭代地修改概率。 用于计算这些期望的前后算法的模拟是内外算法。 内部概率指定了从指定的非符号符号派生给定句子的某个适当段的概率。 外部概率指定了所有但是给定句子的某个段的概率将从开始(句子)符号中派生,其中“缺少”段仍然是从指定的非符号符号生成的。 内部和外部概率分别为嗯学习中的后向和前向概率进行类似的角色。 在概念上,他们需要对给定句子的令人指示的许多可能的解析树的总和,但实际上可以通过CYK算法(第2部分)有效地计算概率,并且还可以使用自上而下的递归“划分有效地计算外部概率。并征服使用先前计算的内部概率的算法。

以这种方式在学习语法中取得了适度的成功。 复杂性很高(训练语料库的大小的立方时间以及非终端数量),并且如上所述,EM通常找不到全局最佳模型。 因此,重要的是在初始语法上放置一些约束,例如,允许非态度生成任一对的非终端或单词,但不是两者,并且还严重限制了允许的非终端的数量。 优先于大型规则集的方法,而无需设置固定的上限,是使用Dirichlet进程,其将概率分布提供在无限数量的规则的概率上。 (此方法是非参数,从此没有提交到建模中的任何固定数量的构建块或参数。)如果要学习合理的,有意义的规则集,则必须仔细选择初始PCG的任何方法。 一种方法是从语言上动机的语法开始,并使用“符号分割”(也称为“状态分割”)以生成在其扩展规则和概率中不同的非终端的变体。 最近的频谱算法提供了一个相对较高的和全球最佳的替代品到EM(Cohen等,2013),它们可以与符号分裂组合。

像HMMS一样,PCFG是生成模型,并且喜欢它们遭受本地选择的敏感性不足到更大的背景。 CRF可以提供更大的上下文敏感性(如在POS标记和其他类型的序列标记中); 虽然它们并不直接适用于文本结构,但它们可用于学习浅扫描器,其将短语类型分配给非持久性短语(核心NPS,PPS,VPS等)(SHA和Pereira 2003)。

在当前的语法学习背景下,我们还应该再次提及连接主义模型。 这些模型已经显示出一些能力从一组训练示例进行解析,而是以这种方式实现全面解析仍然是一个挑战。 争议问题也是非敏捷NNS在无监督的学习中表现出系统性的能力,即,证明了从未经发布的例子概括的能力。 这需要例如接受或生成句子的能力,其中动词参数出现在与培训集中看到的位置不同的位置。 根据Brakel和Frank(2009)的说法,通过简单的经常性网络(SRN)可以实现系统的。 然而,计算演示通常被限制为非常简单,英语样的人造语言,至少当输入是未被公开的字流。

可以被视为朝向语义解释的步骤的结构分配任务是语义角色标记(Palmer等,2010)。 目标是将主题角色(如代理,主题,收件人等)分配给与动词相关的核心短语或短语头(也许是其他补码的单词)。 虽然这可以作为序列标记问题接近,但是实验证据表明,计算解析树并使用产生的角色分配的结构特征(或共同计算解析树木和角色)提高了精度。 用于此类工作的常用培训语料库是PenBank,Penn TreeBank的版本用“中性”角色arg0,arg1,arg2等。

句子转导:迄今为止,研究最深入的统计句子转导类型是统计机器翻译 (SMT)(例如,Koehn 2010;2012 年 5 月)。它在 20 世纪 80 年代末 90 年代初取得的成功,令自然语言处理 (NLP) 界颇感意外。自从 Bar-Hillel (1960) 的报告和 ALPAC 报告(Pierce 等人 1966)发布以来,自然语言处理界一直对机器翻译的前景持悲观态度,并对美国政府在二战后大力资助机器翻译的结果做出了负面评价。机器翻译被视为一项大型工程,除非能够与语义和基于知识的推理充分结合,否则不会产生广泛的影响。统计方法兴起于 20 世纪 70 年代末和 80 年代“噪声通道”模型成功应用于语音识别之后,并受到机器学习新进展以及大型机器可读语言语料库(包括多种语言的平行文本)日益普及的推动。

(本章完)

相关推荐