自然语言理解-自底向上chart句法分析

一、建立一个chart句法分析用的待处理表和一个活动边库。

二、边扩展算法 (o表示当前位置)

添加一个从位置P1到位置P2的成分C:

1、将C加入到chart的位置P1和位置P2之间

2、对任意一条形式为X->X1...oC...Xn的活动边,如果该活动边在位置P0和P1之间,则在位置P0和P2之间添加一条活动边X->X1...Co....Xn

3、对任意一条形式为X->X1...XnoC的活动边,如果该活动边在位置P0和P1之间,则在待处理表中增加一个新的成分X,该成分在位置P0和P2之间。

三、自底向下的chart句法分析算法

1、如果待处理表为空,在词典中查找下一个输入词语的解释,并将它们都加入到待处理表中

2、从待处理表中选择一个成分。(假定该成分为C,其跨度为从位置P1到P2)

3、对语法中每条形式为X->CX1...Xn的规则,增加一条活动边X->OX1...Xn,其跨度为从位置P1到位置P2。

4、采取上述的边扩展算法将C加入到chart中

你可能感兴趣的:(C++,c,算法,C#,活动)