统计剖析
PCFG 概率上下文无关语法
N: 非终结符
∑ 终结符
R: A → β[p],A是单个非终结符号,β是从无限的符号串(∑ U N)* 中的符号构成的符号串,p = P(β|A)
S :指定的初始符号
∑ β P(A→β |A) = 1
如果一种语言概率之和为1,则PCFG是坚固的 e.g. S→S会导致概率量的丧失
因为剖析包含了句子中的所有单词,所有P(S|T) = 1, 因此 P(T,S) = P(T) P(S|T) = P(T)
argmax s.t.S=yield(T)P(T|S) = argmax P(T,S)/P(S) = argmaxP(T)
概率版本的CKY算法
for j in range(1,len(words)+1):
for all{A | A → words[j] ∈ grammar }
table[j-1,j,A] → P(A→words[j])
for i in range(j-2,0)
for k in range(i+1,j-1)
for all{A|A→BC ∈ grammar,
and table[i,k,B] > 0 and table[k,j,A] > 0}
if(table[i,j.A] < P(A→BC) x table[i,k,B] x table[k,j,C])
table[i,j,A] ← P(A→BC) x table[i,k,B] x table[k,j,C]) back[i,j,A] ← {k,B,C}
PCFG规则概率的学习途径
EM
PCFG的问题
- 糟糕的独立性假设忽略了规则之间的结构依存关系
e.g. 在主语和宾语位置的名词短语展开式的概率不同,虽然在语料库中的统计概率是相同的, NP→DT NN , NP→PRP 0.25 - 缺乏词汇制约条件
e.g.介词短语附着歧义 NP附着 vs VP附着 优先关系来自动词、名词和介词本身,词与词之间的亲和力
总之,CFG 缺失了结构依存和词汇依存的关系建模
概率词汇化的CFG
句法成分可以跟一个词汇中心词联系起来,定义一个词汇化的语法,树形图的每一个非终结符号都标注上它的词汇中心词,再将中心词标记(中心词的词类标志)与非终极符号联系起来 e.g. VP →VBD NP PP = > VP(dumped) →VBD(dumped) NP(sacks) PP(into) => VP(dumped,VBD) → VBD(dumped,VBD) NP(sacks, NNS) PP(into, IN)
Collins 剖析器
h: 中心语及其标记(head + tag)
l:中心语左侧的单词及其标记(word + tag)
r:中心语右侧的单词及其标记(word + tag)
hw:单词 ht:标记
生成短语H(hw, ht) 的 中心语的概率为PH(H(hw,ht)| P, hw, ht)
生成左侧的修饰语概率
∏1-n+1PL(Li(lwi,lti)|P,H,hw,ht)使得Ln+1(lwn+1,ltn+1) = STOP
右侧同理
实际的Collins模型加入距离特征作为条件 PL(Li(lwi,lti)|P,H,hw,ht,distancei(i-1))通过回退模型进行平滑处理