Skip to content
Cette page n'est pas encore disponible dans votre langue. La version anglaise est affichée.

Koreferenzketten

Textspannen, die auf dieselbe Entität verweisen, für Koreferenzauflösungsaufgaben gruppieren.

Koreferenzketten

Die Koreferenzannotation ermöglicht es Annotatoren, Textspannen zu gruppieren, die auf dieselbe Entität verweisen. Dies ist wesentlich für Entitätsauflösung, Pronomenauflösung und Diskursanalyse.

Überblick

Eine Koreferenzkette ist eine Sammlung von Erwähnungen (Textspannen), die sich alle auf dieselbe reale Entität beziehen. Zum Beispiel:

Marie Curie war Physikerin. Sie gewann den Nobelpreis. Die Wissenschaftlerin veränderte ihr Fachgebiet für immer."

Die Spannen „Marie Curie", „Sie", „Die Wissenschaftlerin" und „ihr" beziehen sich alle auf dieselbe Person und bilden eine einzelne Koreferenzkette.

Schnellstart

Koreferenzannotation erfordert zwei Schemakomponenten:

  1. Ein Spannen-Schema zur Erstellung von Erwähnungen
  2. Ein Koreferenz-Schema zur Gruppierung von Erwähnungen in Ketten
yaml
annotation_schemes:
  - annotation_type: span
    name: mentions
    description: Highlight all entity mentions
    labels:
      - name: MENTION
        tooltip: "Any reference to an entity"
    sequential_key_binding: true
 
  - annotation_type: coreference
    name: coref_chains
    description: Group mentions that refer to the same entity
    span_schema: mentions
    allow_singletons: true

Konfigurationsoptionen

FeldTypStandardBeschreibung
annotation_typestringErforderlichMuss "coreference" sein
namestringErforderlichEindeutiger Bezeichner für dieses Schema
descriptionstringErforderlichAnweisungen für Annotatoren
span_schemastringErforderlichName des Spannen-Schemas, das Erwähnungen liefert
entity_typeslist[]Liste der Entitätstypkategorien
allow_singletonsbooleantrueKetten mit nur einer Erwähnung erlauben
visual_display.highlight_modestring"background"Visueller Stil: "background", "bracket" oder "underline"

Beispiele

Mit Entitätstypen

Ketten nach Entitätstyp klassifizieren:

yaml
annotation_schemes:
  - annotation_type: span
    name: ner
    description: Mark named entities
    labels:
      - name: ENTITY
        tooltip: "Any named entity mention"
 
  - annotation_type: coreference
    name: coref
    description: Create coreference chains
    span_schema: ner
    entity_types:
      - name: PERSON
        color: "#6E56CF"
      - name: ORGANIZATION
        color: "#22C55E"
      - name: LOCATION
        color: "#3B82F6"
      - name: OTHER
        color: "#F59E0B"

Ohne Singletons

Für Aufgaben, bei denen jede Erwähnung mit mindestens einer anderen verknüpft sein muss:

yaml
annotation_schemes:
  - annotation_type: span
    name: mentions
    description: Highlight co-referring mentions
    labels:
      - name: MENTION
 
  - annotation_type: coreference
    name: strict_coref
    description: All mentions must be part of a chain with at least 2 mentions
    span_schema: mentions
    allow_singletons: false

Benutzerdefinierte visuelle Darstellung

yaml
annotation_schemes:
  - annotation_type: coreference
    name: coref
    description: Link coreference chains
    span_schema: mentions
    visual_display:
      highlight_mode: "underline"  # Options: background, bracket, underline

Benutzeroberfläche

Ketten erstellen

  1. Erwähnungen erstellen: Das Spannen-Annotationswerkzeug verwenden, um alle Entitätserwähnungen hervorzuheben
  2. Erwähnungen auswählen: Auf die hervorgehobenen Spannen klicken, die verknüpft werden sollen
  3. Kette erstellen: Auf „Neue Kette" klicken, um die ausgewählten Erwähnungen zu gruppieren

Ketten verwalten

  • Zur Kette hinzufügen: Weitere Erwähnungen auswählen und „Zur Kette hinzufügen" klicken
  • Ketten zusammenführen: Mehrere Ketten auswählen und „Ketten zusammenführen" klicken
  • Erwähnung entfernen: Eine Erwähnung auswählen und „Erwähnung entfernen" klicken, um sie aus ihrer Kette zu entfernen

Farbkodierung

Jede Kette wird automatisch einer eindeutigen Farbe zugewiesen. Erwähnungen in derselben Kette teilen dieselbe Farbe, was die visuelle Identifikation der Kettenzugehörigkeit erleichtert.

Ausgabeformat

Koreferenzannotationen werden als Spannenverknüpfungen gespeichert:

json
{
  "span_links": [
    {
      "schema": "coref_chains",
      "link_type": "coreference",
      "span_ids": ["mentions_0_5_MENTION", "mentions_34_37_MENTION", "mentions_72_85_MENTION"],
      "entity_type": "PERSON"
    },
    {
      "schema": "coref_chains",
      "link_type": "coreference",
      "span_ids": ["mentions_15_23_MENTION", "mentions_95_97_MENTION"],
      "entity_type": "ORGANIZATION"
    }
  ]
}

Empfohlener Arbeitsablauf

  1. Erster Durchgang - Text lesen und alle Entitätserwähnungen hervorheben
  2. Zweiter Durchgang - Erwähnungen in Koreferenzketten gruppieren
  3. Überprüfung - Sicherstellen, dass alle Erwähnungen korrekt zugeordnet sind und keine Ketten fehlen

Bewährte Vorgehensweisen

  1. Klare Erwähnungsgrenzen definieren - Richtlinien festlegen, was als Erwähnung gilt
  2. Verschachtelte Erwähnungen behandeln - Entscheiden, wie Fälle wie „der CEO von Microsoft" behandelt werden
  3. Generische Referenzen berücksichtigen - Festlegen, ob generische Referenzen einbezogen werden sollen
  4. Annotatoren schulen - Koreferenz ist komplex; Beispiele und Übungsrunden bereitstellen
  5. Entitätstypen sparsam verwenden - zu viele können die Annotation verlangsamen ohne die Datenqualität zu verbessern

Weiterführende Lektüre

Implementierungsdetails sind in der Quelldokumentation zu finden.