Wyciągam zdania przyczynowe z raportów o wypadkach na wodzie. Używam tutaj NLTK jako narzędzia. Ręcznie stworzyłem gramatykę regExp, biorąc 20 przyczynowych struktur zdań [patrz przykłady poniżej]. Skonstruowany gramatyka jest typuEkstrakcja zdań zderzeniowych przy użyciu pytka NLTK
grammar = r'''Cause: {<DT|IN|JJ>?<NN.*|PRP|EX><VBD><NN.*|PRP|VBD>?<.*>+<VBD|VBN>?<.*>+}'''
Teraz gramatyka posiada 100% przywołanie na zbiorze testowym (zbudowałem własną zabawkę zbioru danych z 50 i 50 niezarejestrowanych przyczynowym zdań przyczynowych), ale niską precyzją. Chciałbym zapytać:
- Jak trenować NLTK zbudować gramatyki regexp automatycznie wydobycia szczególny rodzaj zdań.
Czy ktoś kiedykolwiek próbował wydobywać zdania przyczynowe. Przykład zdania przyczynowe są:
Nie było złe warunki sanitarne w miejscowości, w konsekwencji, miała problemy zdrowotne.
Woda była nieczysta w jej wiosce, Z tego powodu cierpiała na od pasożytów.
Miała problemy zdrowotne z powodu złych warunków sanitarnych w wiosce. Chciałbym wyodrębnić tylko powyższy typ zdania z dużego tekstu .