Sono nuovo di Python e del mondo della PNL. Il recente annuncio di Google Syntaxnet mi ha incuriosito. Tuttavia sto avendo un sacco di problemi a capire la documentazione in giro sia syntaxnet e strumenti correlati (NLTK, etc.)SyntaxNet che crea il verbo dell'albero al root
Il mio obiettivo: dato un input come "Wilbur calciato la palla" Vorrei estrarre il verbo radice (calciato) e l'oggetto che riguarda "la palla".
Mi sono imbattuto in "spacy.io" e this visualization sembra incapsulare quello che sto cercando di realizzare: tag POS una stringa, e caricarlo in una sorta di struttura ad albero in modo che possa iniziare al verbo di root e attraversare il condanna, frase.
Ho giocato con syntaxnet/demo.sh e come suggerito in this thread ho commentato le ultime due righe per ottenere l'output di conll.
ho quindi caricato questo ingresso in uno script python (kludged insieme io, probabilmente non corretta):
import nltk
from nltk.corpus import ConllCorpusReader
columntypes = ['ignore', 'words', 'ignore', 'ignore', 'pos']
corp = ConllCorpusReader('/Users/dgourlay/development/nlp','input.conll', columntypes)
vedo che ho accesso a corp.tagged_words(), ma nessuna relazione tra le parole. Ora sono bloccato! Come posso caricare questo corpus in una struttura di tipo ad albero?
Qualsiasi aiuto è molto apprezzato!
Per me sembra che tu abbia perso la parte di parsing. Una volta preordinati i dati, cioè il tokenize del testo non elaborato, il tag POS e convertendolo in formato conll, è necessario passarlo al parser (SyntaxNet nel tuo caso). Quindi puoi fare qualsiasi tipo di estrazione, che vuoi, sull'output del parser. – Riyaz