Skip to content

Soft Label

Soft-Label-Annotation in Potato konfigurieren, um mit Schiebereglern eine Wahrscheinlichkeitsverteilung über Kategorien zu verteilen, deren Summe fest vorgegeben ist.

Das Soft-Label-Annotationsschema erlaubt Annotatoren, Wahrscheinlichkeitsverteilungen über mehrere Kategorien zu vergeben, statt sich für eine einzige harte Klassifikation zu entscheiden. Über Schieberegler verteilen sie eine feste Gesamtsumme (etwa 100 Punkte) auf die Labels und bilden damit ab, wie unsicher die Zuordnung ist oder wie stark sich Kategorien überschneiden.

Potato-Oberfläche für Soft Labels, die 100 Punkte auf Stimmungskategorien verteiltSoft Labels in Potato

Überblick

Soft Labeling lohnt sich, wenn Elemente teilweise zu mehreren Kategorien gehören können. Statt Annotatoren zu einem einzigen Label zu zwingen, lässt dieses Schema sie ihre relative Sicherheit über alle Optionen hinweg ausdrücken. Die Schieberegler sind gekoppelt, sodass ihre Summe immer der konfigurierten Gesamtsumme entspricht, und ein optionales Verteilungsdiagramm liefert visuelle Rückmeldung.

Schnelleinstieg

yaml
annotation_schemes:
  - annotation_type: soft_label
    name: sentiment_distribution
    description: Distribute 100 points across sentiment categories based on how much each applies.
    labels: ["Positive", "Neutral", "Negative"]
    total: 100

Konfigurationsoptionen

FeldTypStandardBeschreibung
annotation_typestringPflichtMuss "soft_label" sein
namestringPflichtEindeutiger Bezeichner für dieses Schema
descriptionstringPflichtAnweisungen, die den Annotatoren angezeigt werden
labelsarrayPflichtListe der Kategorielabels (mindestens 2)
totalinteger100Die feste Summe, die alle Schieberegler zusammen ergeben müssen
min_per_labelinteger0Mindestwert, den jedes Label erhalten muss
show_distribution_chartbooleantrueKreis- oder Balkendiagramm mit der aktuellen Verteilung anzeigen
label_requirement.requiredbooleanfalseOb die Annotation abgeschlossen sein muss, bevor es weitergeht

Beispiele

Stimmungsverteilung

yaml
annotation_schemes:
  - annotation_type: soft_label
    name: sentiment_distribution
    description: How much does each sentiment apply to this text?
    labels: ["Positive", "Neutral", "Negative"]
    total: 100
    show_distribution_chart: true

Emotionsintensität

yaml
annotation_schemes:
  - annotation_type: soft_label
    name: emotion_mix
    description: Distribute points to reflect the mix of emotions in this utterance.
    labels: ["Joy", "Sadness", "Anger", "Fear", "Surprise", "Disgust"]
    total: 100
    min_per_label: 0
    show_distribution_chart: true

Themenrelevanz

yaml
annotation_schemes:
  - annotation_type: soft_label
    name: topic_relevance
    description: How relevant is this document to each topic?
    labels: ["Politics", "Sports", "Technology", "Entertainment"]
    total: 100

Erzwungene Mindestzuteilung

yaml
annotation_schemes:
  - annotation_type: soft_label
    name: genre_mix
    description: Allocate points across genres. Each genre must receive at least 5 points.
    labels: ["Rock", "Pop", "Jazz", "Classical", "Electronic"]
    total: 100
    min_per_label: 5

Ausgabeformat

json
{
  "sentiment_distribution": {
    "labels": {
      "Positive": 45,
      "Neutral": 30,
      "Negative": 25
    }
  }
}

Die Werte ergeben in der Summe immer die konfigurierte total.

Bewährte Vorgehensweisen

  1. Bei überlappenden Kategorien einsetzen - Soft Labels passen, wenn Elemente tatsächlich in unterschiedlichem Maß zu mehreren Kategorien gehören
  2. Die Zahl der Labels überschaubar halten - Ab etwa 6 bis 7 Labels wird die Schiebereglerdarstellung unhandlich
  3. Eine sinnvolle Gesamtsumme wählen - 100 ist als Prozentwert intuitiv, für einfachere Aufgaben tun es kleinere Summen
  4. min_per_label sparsam verwenden - Erzwungene Mindestzuteilungen verzerren das Ergebnis, wenn ein Label wirklich nicht zutrifft
  5. Das Verteilungsdiagramm aktivieren - Die visuelle Rückmeldung zeigt Annotatoren ihre Zuteilung auf einen Blick

Weiterführende Lektüre

Implementierungsdetails stehen in der Quelldokumentation.