Koreferenzierung mit OpenNLP

7

Ich möchte "Coreference-Auflösung" mit OpenNLP machen. Die Dokumentation von Apache ( Koreferenzierungslösung ) behandelt nicht, wie "Koreferenz-Lösung" . Hat jemand irgendwelche Dokumente / Tutorial wie man das macht?

    
Khairul 25.12.2011, 13:11
quelle

2 Antworten

9

Im Moment gibt es für OpenNLP nur eine kleine Dokumentation zur Koreferenzlösung, mit Ausnahme von eine sehr kurze Erwähnung, wie es in der Readme-Datei ausgeführt wird .

Wenn Sie nicht in die Verwendung von OpenNLP investiert haben, sollten Sie das Stanford CoreNLP-Paket in Betracht ziehen, das ein Java-Beispiel, wie es ausgeführt wird, einschließlich der Durchführung der Coreference-Auflösung mit dem Paket. Es enthält auch eine Seite, auf der die Leistung zusammengefasst ist, und die auf dem Coreference-Paket veröffentlichten Artikel .

    
Chris 27.02.2012, 04:56
quelle
11

Ich bin kürzlich auf dasselbe Problem gestoßen und habe einige Blog-Notizen für die Verwendung der OpenNLP 1.5.x-Tools geschrieben. Es ist ein bisschen dicht, in seiner Gesamtheit zu kopieren, also Hier ist ein Link mit mehr Details .

Auf einer hohen Ebene müssen Sie die entsprechenden OpenNLP-Coreference-Modellbibliotheken und auch die WordNet 3.0-Wörterbuch . Angesichts dieser Abhängigkeiten ist das Initialisieren des Linker-Objekts ziemlich einfach:

%Vor%

Die Verwendung des Linkers ist jedoch etwas weniger offensichtlich. Sie müssen:

  1. Zerlege den Inhalt in Sätze und die entsprechenden Token
  2. Erstellen Sie ein Parse-Objekt für jeden Satz
  3. Umbrechen Sie jeden Satz, um die Satzordnung anzuzeigen:

    %Vor%
  4. Iterate über jeden Satz parse und benutze den Linker, um die Erwähnungsobjekte von jedem Parse zu erhalten:

    %Vor%
  5. Verwenden Sie abschließend den Linker, um die verschiedenen Entitäten für alle Erwähnungsobjekte zu identifizieren:

    %Vor%
dpdearing 06.12.2012 18:38
quelle

Tags und Links