2012-12-15 13 views
13

Desidero estrarre la relazione completa tra due entità utilizzando Stanford CoreNLP (o forse altri strumenti).Estrazione della relazione tra entità in Stanford CoreNLP

Ad esempio:

di Windows è più popolare di Linux.

Questo strumento richiede Java.

Il calcio è il gioco più popolare in il mondo.

Qual è il modo più veloce? E qual è la migliore pratica per questo?

Grazie in anticipo

+0

hey, ci sono librerie NLP in grado di convertire un testo in tripli soggetto-predicato-oggetto? –

risposta

5

Probabilmente stai cercando relazioni di dipendenza tra i nomi. Stanford Parser fornisce tale output. Dai uno sguardo allo here. È possibile combinare ciò che Pete ha detto (vale a dire il grafico POS) con il grafico delle dipendenze per identificare quale relazione (ad esempio, oggetto diretto o soggetto nominale, ecc.) Una coppia di nomi (o frasi di nomi) condivide.

3

Così si sta cercando il verbo frase che collega sintagmi nominali. Questo è in realtà morto semplice in Stanford CoreNLP. Basta correre attraverso la pipeline e attraversare il grafico POS per ottenere quello che vuoi. Dovrai escogitare metodi per gestire frasi complesse e, naturalmente, vorrai utilizzare il sistema di co-referenza per gestire l'anafora.

Non è banale, quindi puoi rivolgere la domanda a una domanda a cui è possibile rispondere? Se la tua domanda è, è possibile farlo? Quindi la risposta è sì. Se è "come posso farlo?" quindi ti suggerisco di iniziare a usare il sistema e rispondere a questa domanda da solo.

+0

Come si chiama un grafico POS? – mbatchkarov

+0

(ROOT (S (NP (PRP $ My) (NN cane)) (ADVP (RB anche)) (VP (VBZ piace) (S (VP (VBG mangiare) (S (ADJP (Banane NNS)))))) (..))) –

+6

Non è un albero di analisi? – mbatchkarov

8

ReVerb si concentra su Aperto IE. È possibile iniziare leggendo il loro documento "Identifying Relations for Open Information Extraction" e controllando il sito demo.

+0

il link per la carta potrebbe essere morto, puoi pls controllare di nuovo? – Bhashithe

+0

Fatto aggiornare il collegamento. –

+0

Ho fatto un semplice esempio, in Python, su come usare quei tag PoS per estrarre le relazioni: http://davidsbatista.net/blog/2017/05/08/ReVerb/ –

0

C'è lo Stanford Relation Extractor che fa parte della pipeline coreNLP. È specificato da "relazione" e per lo meno ha dipendenze da "ner" e "parse", gli annotatori di riconoscimento di entità nominate e parser.

Problemi correlati