Natural Language Processing - Konvertiert unstrukturierte Bibliografie in strukturierte Metadaten

9

Derzeit arbeite ich an einem Projekt zur Verarbeitung natürlicher Sprache, in dem ich den unstrukturierten Bibliografieabschnitt (der am Ende des Forschungsartikels steht) in strukturierte Metadaten wie "Jahr", "Autor", "Journal", "Datenträger-ID" umwandeln soll , "Seitennummer", "Titel", etc.

Zum Beispiel: Eingabe

%Vor%

Erwartete Ausgabe:

%Vor%

Verwendetes Werkzeug: CRFsuite

Datensatz: Dieser enthält 12000 Referenzen

  1. Enthält Journaltitel,
  2. Enthält die Wörter des Artikeltitels,
  3. Enthält Ortsnamen,

Jedes Wort in einer gegebenen Zeile wird als Token betrachtet und für jedes Token leite ich folgende Features ab

  1. BOR am Anfang der Zeile,
  2. EOR für Ende
  3. digitFeature: wenn Token Ziffer ist
  4. Jahr: wenn Token im Jahrformat wie 19 ** und 20 **
  5. ist
  6. verfügbar im aktuellen Datensatz,

Von oben Werkzeug und Datensatz habe ich nur 63,7% Genauigkeit. Genauigkeit ist sehr gering für "Titel" und gut für "Jahr" und "Volumen".

Fragen:

  1. Kann ich zusätzliche Funktionen zeichnen?
  2. Kann ich ein anderes Tool verwenden?
Somnath Kadam 26.08.2015, 08:55
quelle

2 Antworten

2

Ich würde vorschlagen, die Lösung auf bestehende Ansätze zu stützen. Schauen Sie sich zum Beispiel das Whitepaper

an
  

Park, Sung Hee, Roger W. Ehrich und Edward A. Fox. "Ein Hybrid   zweistufiger Ansatz für disziplinunabhängige kanonische Repräsentation   Auszug aus Referenzen. "Proceedings des 12. ACM / IEEE-CS Joint   Konferenz über digitale Bibliotheken. ACM, 2012.

In den Abschnitten 3.2 und 4.2 finden Sie Beschreibungen von Dutzenden von Funktionen.

Wie für CRF-Implementierungen gibt es andere Tools wie dieses , aber ich denke nicht, dass es eine Quelle von geringer Genauigkeit ist .

    
Nikita Astrakhantsev 28.08.2015 16:57
quelle
2

Ich stimme Nikita generell zu, dass ein bestimmtes CRF-Toolset nicht die Ursache für die geringe Genauigkeit ist und dass es sich um ein Lösungsansatzproblem handelt. Ich bin mir nicht sicher, ob der zweistufige Ansatz, obwohl sehr genau und effektiv, wenn er abgeschlossen ist, von Park, et al. ist ein praktischer Ansatz für Ihr Problem.

Für den einen sind die "zwei Stufen", auf die in dem Papier Bezug genommen wird, ein paariges SVM / CRF, das nicht so einfach zu erstellen ist, wenn dies nicht Ihr Hauptforschungsgebiet ist. Sie beinhalten jeweils Training auf gekennzeichneten Daten und einen Grad der Abstimmung.

Zweitens ist es unwahrscheinlich, dass Ihr tatsächlicher Datensatz (basierend auf Ihrer obigen Beschreibung) so unterschiedlich strukturiert ist, wie diese spezielle Lösung entwickelt wurde, um mit einer hohen Genauigkeit zu arbeiten. In diesem Fall ist dieses Niveau des überwachten Lernens nicht notwendig.

Wenn ich eine domänenspezifische Lösung mit vielen der gleichen Funktionen vorschlagen kann, die viel einfacher in dem von Ihnen verwendeten Werkzeug implementiert werden können, würde ich einen (eingeschränkten) Semantic-Tree-Ansatz versuchen, der speziell überwacht wird Ausnahme (Fehler) empfohlen.

Anstelle eines englischen Satzes als Datenmolekül haben Sie einen bibliographischen Eintrag. Die Teile dieses Moleküls, die da sein müssen, sind der Autorenteil, der Titelteil, der Datumsteil und der Verlagsteil, es können auch andere Datenteile (Seitenzahl, Vol. Id, etc.) vorhanden sein.

Da einige dieser Teile ineinander verschachtelt sein können (z. B. Seite # im Publisher-Teil), untereinander oder in unterschiedlicher Anordnung, aber immer noch funktional gültig, ist dies ein guter Indikator für die Verwendung semantischer Bäume.

Außerdem ist die Tatsache, dass jeder Bereich, obwohl Variable hat einzigartige Eigenschaften: Author Teil (persönliche Namen Formate wie Blow, J. oder James, et alle, etc.); Titel Teil (zitiert oder kursiv, hat Standardsatzstruktur); Datumsteil (Datumsformate, eingeschlossen in () usw.) bedeutet, dass Sie insgesamt weniger Training benötigen als für die tokenisierte und unstrukturierte Analyse. Am Ende dieses weniger lernen für Ihr Programm.

Zusätzlich gibt es strukturelle Beziehungen, die gelernt werden können, um beispielsweise die Genauigkeit zu verbessern: Datumsteil (oft am Ende oder trennende Schlüsselabschnitte), Autoteil (oft am Anfang oder auch nach dem Titel) usw. Das ist unterstützt durch die Tatsache, dass viele Verbände und Verleger ihre Art und Weise haben, solche Verweise zu formatieren, können diese einfach durch Beziehung ohne viel Trainingsdaten erlernt werden.

Um also zusammenzufassen, indem man die Teile segmentiert und strukturiertes Lernen durchführt, reduziert man die Mustererkennung in jedem Unterteil und das Lernen wird relationalen Mustern zugerechnet, die zuverlässiger sind, da wir solche Einträge als Menschen konstruieren .

Außerdem gibt es eine Menge Werkzeuge für diese Art von domänenspezifischem semantischem Lernen

Ссылка Ссылка

Hoffe das hilft:)

    
J-Boss 04.09.2015 03:52
quelle

Tags und Links