2014-03-03 7 views
17

Ich benutze jetzt einige NLP-Bibliotheken, (Stanford und Nltk) Stanford Ich sah den Demo-Teil, aber möchte nur fragen, ob es möglich ist, damit mehr Entitätstypen zu identifizieren.Ist es möglich, das Stanford NER-System so zu trainieren, dass mehr benannte Entitätstypen erkannt werden?

So derzeit Stanford NER-System (wie die Demo zeigt) kann Entitäten als Person (Name), Organisation oder Standort erkennen. Aber die anerkannten Organisationen sind auf Universitäten oder einige große Organisationen beschränkt. Ich frage mich, ob ich seine API verwenden kann, um Programm für mehr Entitätstypen zu schreiben, als ob meine Eingabe "Apple" oder "Square" ist, kann es es als eine Firma erkennen.

Muss ich meinen eigenen Trainingsdatensatz erstellen?

Des Weiteren, wenn ich jemals Entitäten und ihre Beziehungen zwischen einander extrahieren möchte, sollte ich den Stanford-Abhängigkeitsparser verwenden. Ich meine, extrahiere zuerst die benannten Entitäten und andere Teile, die als "Nomen" gekennzeichnet sind, und finde Beziehungen zwischen ihnen.

Bin ich richtig.

Danke.

Antwort

8

Ja, du brauchst dein eigenes Trainingset. Die vortrainierten Stanford-Modelle erkennen das Wort "Stanford" nur als benannte Entität, weil sie auf Daten trainiert wurden, die dieses Wort hatten (oder sehr ähnliche Wörter entsprechend dem Feature-Set, das sie verwenden, ich weiß nicht, was das ist) als benannte Entität gekennzeichnet.

Sobald Sie mehr Daten haben, müssen Sie es in das richtige Format setzen, das in this question und dem Stanford-Tutorial beschrieben wird.

+1

Danke. Nachdem ich mein Training so eingerichtet habe, dass ich die genannten Entitäten erkenne, ist es möglich, es zu extrahieren? Wie "Produkt von Microsoft", ist es möglich, dass ich die "Microsoft" hier als eine Organisation und "Produkt" als eine andere Sache erkenne, um sie zusammen zu verbinden? – JudyJiang

+0

Wissen Sie, ob die vortrainierten Modelle mit zusätzlichen Beispielen trainiert werden können? –

+0

@ bones.felipe Laut der FAQ können Sie nicht. https://nlp.stanford.edu/software/crf-faq.shtml#extend – JamesFrost

4

Sie könnten leicht Ihr eigenes Korpus von Daten trainieren.

In der Stanford NER FAQ die erste Frage ist, wie für NER

Der Link unser eigenes Modell zu trainieren ist http://nlp.stanford.edu/software/crf-faq.shtml

So zum Beispiel Sie Trainingsdaten wie

Produkt geben könnte OBJ
von O
Microsoft ORG

Ebenso könnten Sie Ihre eigenen Trainingsdaten erstellen und ein Modell erstellen und dann verwenden, um die gewünschte Ausgabe zu erhalten

Verwandte Themen