Pracuję nad parserem w języku innym niż angielski ze znakami Unicode. W tym celu postanowiłem użyć NLTK.NLTK Kontekst Darmowe generowanie gramatyki
Ale to wymaga predefiniowanego bezkontekstowych gramatyki jak poniżej:
S -> NP VP
VP -> V NP | V NP PP
PP -> P NP
V -> "saw" | "ate" | "walked"
NP -> "John" | "Mary" | "Bob" | Det N | Det N PP
Det -> "a" | "an" | "the" | "my"
N -> "man" | "dog" | "cat" | "telescope" | "park"
P -> "in" | "on" | "by" | "with"
W moim app, mam podobno zminimalizować ciężko kodowania z wykorzystaniem gramatyki z reguły oparte. Na przykład, mogę ponoszą żadnej słowo kończąc -ed lub -ing jako czasownik. Powinno działać w każdym kontekście.
Jak mogę przekazać takie reguły gramatyczne do NLTK? Lub generować je dynamicznie za pomocą Finite State Machine?
Możesz przeczytać [tę odpowiedź] (http://stackoverflow.com/questions/14096237/can-someone-give-a-imple- but-non-toy-example-of-a-context- sensitiveitive -grammar/14099421 # 14099421), ponieważ piszesz CFG. –
Dzięki. Patrzyłem, ale nie mogłem tego zrozumieć. Czy istnieje sposób, w jaki można karmić zmiennych Pythona do CFG? – ChamingaD
Jeśli chcesz automatycznie nauczyć się zasad CFG, możesz spróbować wdrożyć tę www.aclweb.org/anthology/O06-1004 =) – alvas