5

Sto sviluppando uno strumento di annotazione semiautomatica per i testi medici e sono completamente perso nel trovare le terzine RDF per l'annotazione.Strumento di annotazione semiautomatica - Come trovare Tripletti RDF

Attualmente sto cercando di utilizzare un approccio basato sulla PNL. Ho già esaminato Stanford NER e OpenNLP e non hanno entrambi i modelli per estrarre i nomi delle malattie.

La mia domanda è: * Come posso creare un nuovo modello NER per estrarre i nomi delle malattie? e posso ottenere aiuto dagli OpenNLP o dai NER di Standford? * Esiste un altro approccio in totale - diverso dalla PNL - per estrarre le terzine RDF da un testo?

Qualsiasi aiuto sarebbe apprezzato! Grazie.

risposta

4

Ho fatto qualcosa di simile a quello che ti serve sia con OpenNLP che con LingPipe. Ho trovato il chunking esatto basato su dizionario di LingPipe abbastanza buono per il mio caso d'uso e l'ho usato. La documentazione disponibile qui: http://alias-i.com/lingpipe/demos/tutorial/ne/read-me.html

È possibile trovare una piccola demo qui:

Se un/approccio dizionario dizionario geografico non è abbastanza buono per voi, si può provare a creare il proprio modello, OpenNLP ha anche l'API per i modelli di allenamento. La documentazione è qui: http://opennlp.apache.org/documentation/1.5.2-incubating/manual/opennlp.html#tools.namefind.training

L'estrazione di tripli RDF dal linguaggio naturale è un problema diverso rispetto all'identificazione delle entità denominate. Il NER è un passaggio correlato e forse necessario, ma non abbastanza. Per estrarre una dichiarazione RDF dal linguaggio naturale non solo è necessario identificare entità come il soggetto e l'oggetto di una dichiarazione. Ma devi anche identificare il verbo e/o la relazione di quelle entità e anche devi mappare quelle agli URI.

+0

mmmmmmm .. ok Ho già esaminato lo strumento di formazione OpenNLP ma la mia domanda è: Posso addestrare il modello alla scoperta dei nomi di malattia quando è stato originariamente progettato per i nomi di persone? –

+0

Puoi provare e misurare quanto è bello. Qualunque strumento tu utilizzi, probabilmente hai bisogno di un set di dati per addestrarlo (a meno che non usi un approccio geografico/dizionario). Quindi, puoi utilizzare lo stesso set di dati per addestrare diversi sistemi e confrontarli. Le API di addestramento di OpenNLP sono sufficientemente semplici che fare un esperimento con esso non è costoso. Ma hai bisogno di un set di dati di formazione. – castagna

+0

Sì esattamente. Ho cercato un set di dati di allenamento/test e ne ho trovati un paio gratuiti, il migliore dei quali sembra essere il database PubMed. Conoscete altri set di dati di allenamento che posso usare? Grazie mille! –