Qual è il chunker predefinito per NLTK toolkit in Python?
Domanda
Sto usando la loro etichettatura POS di default e di default tokenization..and sembra sufficiente. Mi piacerebbe loro chunker di default troppo.
Sto leggendo il libro NLTK toolkit, ma non sembra avere un chunker predefinita?
Soluzione
Si può uscire dalla scatola di nome dell'entità suddivisione in blocchi con il metodo nltk.ne_chunk (). Ci vuole un elenco di POS tagged tuple:
nltk.ne_chunk([('Barack', 'NNP'), ('Obama', 'NNP'), ('lives', 'NNS'), ('in', 'IN'), ('Washington', 'NNP')])
Risultati in:
Tree('S', [Tree('PERSON', [('Barack', 'NNP')]), Tree('ORGANIZATION', [('Obama', 'NNP')]), ('lives', 'NNS'), ('in', 'IN'), Tree('GPE', [('Washington', 'NNP')])])
Si identifica Barack come persona, ma Obama come organizzazione. Quindi, non perfetto.
Altri suggerimenti
Non ho potuto trovare un difetto chunker / parser superficiale sia. Anche se il libro descrive come costruire e formare una con caratteristiche di esempio. Venendo con funzionalità aggiuntive per ottenere buone prestazioni non dovrebbe essere troppo difficile.
sezione di vedere il capitolo 7 sul Formazione Chunkers basato su classifier .