NLTK контекстно-свободные грамматики - PullRequest
2 голосов
/ 21 декабря 2011

Мне просто интересно, как бы вы добавили необязательный грамматик в правило

>>> import nltk
>>> nltk.app.rdparser()

Например, обычный способ добавить необязательный грамматик - это поставить его в скобки: NP -> NP (PP)

а в программе как бы вы это сделали?Скобки не работают.

S   Þ NP VP
NP  Þ NP PP | Det N
VP  Þ V NP PP
PP  Þ P NP

Det Þ 'the' | 'a'
N   Þ 'man' | 'park' | 'dog' | 'boy' | 'girl'
V   Þ 'was' | 'saw' 
P   Þ 'in' | 'under' | 'with'

Спасибо,

Луч

1 Ответ

2 голосов
/ 21 декабря 2011
NP -> NP | NP PP

Но учтите, что с этим правилом вы можете бесконечно укладывать NP узлы в дерево разбора.

...