Sto estrapolando frasi causali dalle segnalazioni di incidenti sull'acqua. Sto usando NLTK come strumento qui. Ho creato manualmente la grammatica regExp prendendo 20 strutture di frasi causali [vedi esempi sotto]. La grammatica costruita è di tipoEstrazione di frasi causali con Python NLTK
grammar = r'''Cause: {<DT|IN|JJ>?<NN.*|PRP|EX><VBD><NN.*|PRP|VBD>?<.*>+<VBD|VBN>?<.*>+}'''
Ora la grammatica ha il 100% di richiamo sul set di prova (ho costruito il mio giocattolo insieme di dati con 50 causale e 50 frasi non causali), ma una bassa precisione. Vorrei chiedere:
- come addestrare NLTK per costruire automaticamente la grammatica regexp per estrarre particolare tipo di frasi.
Qualcuno ha mai provato a estrarre le frasi causali. Esempio frasi causali sono:
C'era scarsa igiene in paese, di conseguenza, aveva problemi di salute.
L'acqua era impura nel suo villaggio, per questo motivo ha sofferto di da parassiti.
Ha avuto problemi di salute a causa della scarsa igiene nel villaggio. Vorrei estrarre solo il tipo di frasi sopra da un testo grande .