4. Parsing, CFG and PCFG

Chilly_Rain posted @ 2014年9月04日 16:09 in Coursera_NLP , 2331 阅读

语法解析问题

语法解析问题是比词性标注更高层的问题, 它以一个完整的句子做为输入, 以一棵对应的语法解析树作为输出。语法解析树中不仅反应了各个单词的词性, 也反应出了各个词之间的关系,比如短语(动词短语,名词短语等)甚至句子中的主谓关系等。举个课程中的例子:

语法解析通常都会被表达成监督学习问题,而训练数据集可以是WSJ Treebank(for English);

语法树可以传达的信息:1. POS; 2. Phrase(VP, NP); 3. subject-verb;应用场景可以是机器翻译中,将源语言中单词间的顺序调换成目标语言中的词顺序。

上下文无关语法(Context-free grammer)

上下文无关语法对语言的一种形式化描述,具体表示为四元组\( G = (N, \Sigma, R, S) \),其中N表示非终结符,\(\Sigma\)表示终结符,S为特殊的开始符号,R则表示规则,即\(X \rightarrow Y_1 \dots Y_n, X \in N, Y_i \in (N+\Sigma), n \ge 0\)。例如:

最左推导:最左推导是一个序列\(s_1, ..., s_n\),序列的开头是\(s_1 = S\),其后的每一个元素\(s_i\)都是取前一个元素\(s_{i-1}\)中从左边数第一个非终结符,对其按照R中的某个规则进行展开而得到的结果,序列的结尾是一个全部由终结符构成的字符串,即\(s_n \in \Sigma^{*}\),例如,[S] [NP VP] [D N VP] [the N VP] [the man VP] [the man Vi] [the main sleeps]。

一个推导(derivation)实际就对应着一棵语法解析树,而推导最终的结果(终结符串)就是一个句子。一个CFG对应的所有推导结果的并集就是这个CFG所定义的语言;每个语言中的字符串有可能对应着不同的推导过程,因此一个句子可能对应着多棵语法树,这在一定程度上产生了歧义。比如,he drove down the street in the car这句话就可能有多种解析,in the car这个短语可以修饰drove形成动词短语,也可以修饰the street以形成名语短语,虽然第一种选择看起来更合理一些,但是CFG是无法区分出来的。

下面再给出几个可能出现的歧义情况

  1. POS歧义:her duck (NN, Vi)
  2. 介词短语所修饰的内容:比如前面提到的in the car
  3. 名词定语:the fast car mechanic (fast car -> mechanic, fast -> car mechanic)

PS: 这里本来还有一节是介绍英语语法的,这里先略过,后面如果有用到的话再说明。

概率上下文无法语法(Probabilistic Context-free grammer)

这个语法是为了解决上面提到的一个句子可能有多棵语法解析树的问题,这为每棵语法树赋予一个对应的概率值,而概率值最大的那个就被认为是这个句子的语法解析树。

实现上,它是对规则集R中的每条规则都赋予一个概率p,而一个推导实际就是从开始符S开始应用一系列规则最终生成非终结符串的过程,因此这个推导(或者说这棵对应的语法树)的概率就是在此过程中应用的所有规则概率的乘积,即

这个由部分概率(规则概率)到整体概率(语法树概率)的过程也是使用了独立性假设(与概率的链式规则做对比),即在推导的初始阶段应用的规则不依赖于后面应用到的规则,特别地,不依赖于最终的word。这也是后面提出lexicalized PCFG的动机。

当我们已经使用上面的方法为给定句子所对应的所有语法树都赋予了一个概率之后,下面要做的,就是取那个概率最大的语法树做为输出:

\[ opt\_tree = argmax_{t \in T(s)} p(t)\]

根据上面的流程,我们有两个问题需要解决:1. 如何为每个规则赋予一个概率值;2. 一个句子对应的可能的语法树是指数级别的,如何高效地为一个句子找到概率最大的语法树。

PCFG的参数估计

PCFG的参数就是每个规则的概率,当给定一个treebank之后,我们要做的实际跟N-gram类似:计数+MLE

\[ q_{ML}(\alpha \rightarrow \beta) = \frac{Count(\alpha \rightarrow \beta)}{Count(\alpha)}\]

如果训练数据确实是由PCFG生成的,那么当训练数据足够多时,MLE给出的结果将收敛于true PCFG。

PCFG解析

为了能多项式复杂度解决这个为给定句子找出最佳语法树的任务,还需要对PCFG加一些额外的约束,即要求语法G满足Chomsky Normal Form,简单来说就是要求四元组中的R只能取以下两种形式之一

  1. \(X \rightarrow Y_1 Y_2, X \in N, Y \in N\)
  2. \(X \rightarrow Y, X \in N, Y \in \Sigma\)

然后,使用一种称为CKY的算法来做这个解析工作,它的本质也是一种动态规划算法,如下

其中定义\(\pi (i, j, X)\)表示以非终结符X为root的覆盖word[i...j]的最佳语法树所对应的概率是多少。动态规划的过程是从长度最短的子句(单词,长度为1)开始,自底逐步向上,直至开始符S覆盖整个句子作为终结。每一步需要考虑覆盖的字句的长度以及对应的非终结符,计算复杂度为\(O(n^3N^3)\)。

Avatar_small
code6 说:
2014年9月11日 18:48

我最近也在 fo coursera 上的一些课,NLP 完全不懂啊

Avatar_small
Chilly_Rain 说:
2014年9月14日 12:27

@code6: 我看的是这个课的视频 https://www.coursera.org/course/nlangp, 感觉讲的很挺好的, 讲的很细致很实在, 讲师的个人主页上也有很好的资料 http://www.cs.columbia.edu/~mcollins/; 个人感觉比stanford那个nlp课更能学到东西 (肯定也比我在blog上写的这堆东西要好懂, 我这儿是当笔记写的......)

Avatar_small
Meghalaya Board 10th 说:
2022年8月18日 14:28

MBOSE SSLC Guess Paper 2023 Download, Meghalaya Board of School Education MBOSE first started or established in 1973, Meghalaya Board 10th Model Paper 2023 PDF Head Quarters at Tura, to conduct Examination, frame syllabus, and evaluation & certification of SSLC Examination for the first time in 1974. Higher Secondary Section was then called PU Pre-University And its examination process was handled by NEHU-North East Hills University, head office at Shillong.

Avatar_small
BSNL Broadband Plans 说:
2023年2月02日 17:44

ISP provides unlimited calls to any network round the clock in all the BSNL broadband plans over fiber and DSL networks, and Here we update the latest BSNL broadband unlimited plans daily across India as and when the update released for home and business tariff, BSNL Broadband Plans So check each plan in detail to opt for best tariff. BSNL broadband plans over DSL and Bharat Fiber technologies are available, we categorize each plan and provide the updated information of all the circles with new plans and tariff.

Avatar_small
SEBA 7th Class Syll 说:
2023年7月14日 16:19

SEBA 7th Class Syllabus 2024 will help Students to Prepare for pass Marks in All Exams the All Subjects, Assam Students to get a Clear idea of the Topics and Subtopics and According to it they can Decide on which topic to Focus more, SEBA 7th Exam Conducted Every Year Month of March and April Months, This 6th Date Sheet 2024 Available at Official Website.as it helps Students to Plan their Preparations SEBA 7th Class Syllabus 2024 Accordingly to Meet their Expectations, we Provide Students with All the Necessary Support and Allow them to Prove their Talent by performing best in their examination, The Students skill Profile Should move From being Predominantly Receptive to Productive.

Avatar_small
civaget 说:
2024年1月11日 23:12

You lost me, friend. I am talking about, I imagine I purchase what youre saying. I’m sure what you’re saying, nevertheless, you just appear to have forgotten that you will find a few other folks from the world who view this trouble for it is really and could perhaps not agree with you. You could be turning away many people that was lovers of the website. how do i make google docs dark mode


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter