斯坦福大学-自然语言处理入门 笔记 第十三课 统计语言句法分析(prasing)

课程来源:Introduction to NLP by Chris Manning & Dan jurafsky 关于专用名词和概念:刚接触NLP领域,所以有些专有名词的翻译和专有概念可能会存在一定的偏误,随着学习的深入,我会随时更新改正。

一、关于句法结构的两种看法

1、成分(constituency)分析

  • 句法结构将句子组成了嵌套的成分(nested constituents)
  • 什么是成分(constituency)?
    • 成分是句子中可以出现在不同位置的单元。(下面的例子中第三个例子是不成立的,所以talked drug不是成分(constituency))
      在这里插入图片描述
    • 同时这些成分在句子中也可以被替代和拓展。下面的例子中on the box可以被替代为there,或者被拓展为right on top of the box
      在这里插入图片描述
    • 句法分析树(如下图):可以看到成分是相互嵌套的。
      在这里插入图片描述
  • 头词组结构(headed phrase structure)
    • 对句法分析树中的成分结构,我们可以按照成分中中心词(即其他部分都是用来修饰它)的词性来对其分类,如果中心词是名词那么就是名词词组(NP),中心词是动词那么就是动词词组(VP)。
    • 另外还有一些其他的成分类型:S(句子),QP(名词短语中的量词短语),INTJ(感叹词)等等

2、依存分析

  • 依存分析展示的是哪些词是依附于(修饰或者是参数arguments)其他的词存在的。比如下面图中的句子中,put有三个参数(boy,tortoise以及on)
    在这里插入图片描述

二、句法分析:数据和统计的崛起

1、经典的NLP句法分析(1990s)

  • 手工编写一些语法和单词的规则,然后分析出输入句子所有可能的句法结构
    在这里插入图片描述
  • 这种方法存在的问题是手工编写的规则难以覆盖大领域所有的复杂语言,句子所有的句法结构的数量是非常巨大的。如下面的第三个情况在真实规模广覆盖度的语法的情况下,有百万级的可能的句法结构。
    在这里插入图片描述
    • 为了解决这个问题,可以去给语法加一些类别的限制(categorical constraints)以去掉一些不可能或者是奇怪的句法结构选项。但是这可能会导致规则不够稳健。这样的系统这会导致,即使是精心编辑过的文档也有30%无法进行句法分析。
    • 更少限制的语法规则会导致更多的句法结构选项,会导致即使是最简单的句子,我们也无法找出最好那个句法结构选项。
    • 我们需要一个机制来帮助我们找到最有可能的句法结构。统计句法分析(statistical prasing)帮助我们在一个限制比较少的语法下,在百万级的句法结构选项中快速找到最好的那个。
    • 这一部分有参考 宗成庆《统计自然语言处理》

2、注释数据(annotated data)的兴起:the Penn Treebank

  • the Penn Treebank,将成分句法分析结果用树结构表示,基于此进行分析
    在这里插入图片描述
  • 虽然构建一个树库(treebank)相比于直接使用语法规则而言,会慢很多并且没有那么有用,但是它有很多的优点:
    • 可以进行复用,对语言学而言是很有用的资料:句法分析、词性标注
    • 广覆盖
    • 可以提供频率和分布信息
    • 一种评估系统的方法
  • 统计句法分析现在十分稳健并被广泛应用在大型NLP应用中
    在这里插入图片描述

三、指数增长的附属(attachments)

1、附属(attachments)问题

  • 句法分析的一个主要问题是我们怎么把各种成分(constituents)链接附属起来。从下面的例子来看,approved是动词,its acquisition是名词词组,by Royal Trustco Ltd,of Toronto, for $27 a share, at its monthly meeting是四个修饰成分。
    在这里插入图片描述
  • 上面的例子有很多种附属的可能性。举例而言,by Royal Trustco Ltd可以修饰approved和its acquisition,这里它修饰的是its acquisition。of Toronto可以修饰approved,its acquisition以及by Royal Trustco Ltd,这里修饰的是by Royal Trustco Ltd。但是当我们做更远的附属的时候,我们就会有修饰的限制。当已知for $27 a share是修饰its acquisition时,at its monthly meeting就只能修饰approved,its acquisition或者for $27 a share,但是不能修饰by Royal Trustco Ltd和of Toronto。
  • 抽象而言,附属规则是一个介词短语(PP)可以修饰动词和名词,并且组成一颗句法分析树。(等价于不能发生交叉依附,如果d2依附于的d1,d3依附于d2,那么d2-d3的连线开始于d2并且实在d1-d2连线的下方。
  • 这种可能的修饰组合的个数是卡特兰数得到Cn = (2n)!/[(n+1)!n!],是按指数级增长的

2、指数增长的问题

  • 问题一:指数增长可能会带来运算速度很慢的问题,如下图一个简单的句子却有五种修饰组合。解决方法是,找到其中重复使用的部分(下图中相同颜色圈出的部分),把一个指数增长的时间复杂度的算法,转化为多项式增长的时间复杂度的算法。
    在这里插入图片描述
  • 问题二:如何选择正确的句法。
    • 在某些时候是很困难的,比如She saw the man with a telescope,机器很难判断 with a telescope修饰的是man还是saw。
    • 但是在其他时候,单词会给出很好的指示。比如Moscow sent more than 100,000 soldiers into Afghanistan …中, into Afghanistan(阿富汗) 不可能修饰人,所以只能修饰sent。我们可以建立基于单词组合的统计模型来帮助我们进一步作出判断。

猜你喜欢

转载自blog.csdn.net/kunpen8944/article/details/83242970