0

次のような一連の文法生成物を nltk.cfg にフィードして、CNF 文法を使用しようとしています。

 NN -> 'rubble' | 'slope' | 'Jake'
 VP -> V NP | VP PP 

しかし、プロダクションの左側にパイプがあるプロダクションには問題があります (エラーが発生します: 矢印が必要です)。例:

VP | <VBP-SBAR> -> VBP SBAR

nltk には、左側のパイプで問題のない文法メソッドはありますか?

そうでない場合、最初のグループのようにすべてのプロダクションを使用可能なプロダクションに変更するにはどうすればよいですか? 例:

VP  -> VBP SBAR    
<VBP-SBAR> -> VBP SBAR
4

1 に答える 1

1

プロダクションの左側に複数のオプションがあるプロダクション ルールは、文脈自由文法ではなくなりました。すべてのルールの LHS には、非終端記号が 1 つだけ存在する必要があります。

まぁ、そもそもルール割り切れたら意味ないよね

VP | <VBP-SBAR> -> VBP SBAR

2つのルールに

VP -> VBP SBAR
<VBP-SBAR> -> VBP SBAR
于 2014-11-14T00:42:18.050 に答える