我想使用nltk API为我的FCFG实现Auto-Suggestion for question completion(参见第3.2节)。
E.g。 考虑以下CFG语法:
S -> NP VP
NP -> Det NN | PropN
VP -> V NP | V
V -> 'eats' | 'sleeps' | 'ate'
Det -> 'a' | 'an' | 'the'
NN -> 'police' | 'horse' | 'apple' | 'potato'
PropN -> 'Robin'
在输入的每个单词之后,我想要的是一个模块,它建议我可以跟随我当前输入的所有可能的词典。
E.g。如果我输入 Robin ,我的语法应该解析这个,我的模块应该建议子树的最左边的叶子,就在 Robin 父母的生产之后,即NP -> PropN
。由于在这种情况下,PropN
之后没有任何内容,我希望它搜索PropN
的父级,即S -> NP VP
。由于VP
跟在NP
之后,我的模块应该打印VP
最左边的叶子(对于每个VP
作品,在这种情况下只有V
})即:吃,睡,吃。
我使用的是nltk,我的语法是FCFG。任何帮助表示赞赏。