Skip to content

Etichette soft

Configura in Potato l'annotazione con etichette soft per distribuire una distribuzione di probabilità tra le categorie, usando cursori che devono sommare a un totale fisso.

Lo schema di annotazione con etichette soft permette agli annotatori di assegnare distribuzioni di probabilità tra più categorie invece di prendere una singola decisione di classificazione netta. Gli annotatori usano dei cursori per distribuire un totale fisso (per esempio 100 punti) tra le etichette, cogliendo il grado di incertezza o di sovrapposizione tra le categorie.

Interfaccia con etichette soft di Potato che distribuisce 100 punti tra le categorie di sentimentEtichette soft in Potato

Panoramica

L'etichettatura soft è utile quando un elemento può appartenere in parte a più categorie. Invece di costringere gli annotatori a sceglierne una sola, questo schema permette loro di esprimere la confidenza relativa su tutte le opzioni. I cursori sono collegati fra loro, così da sommare sempre al totale configurato, e un grafico di distribuzione facoltativo dà un riscontro visivo.

Avvio rapido

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

Opzioni di configurazione

CampoTipoPredefinitoDescrizione
annotation_typestringObbligatorioDeve essere "soft_label"
namestringObbligatorioIdentificatore univoco per questo schema
descriptionstringObbligatorioIstruzioni visualizzate agli annotatori
labelsarrayObbligatorioElenco delle etichette di categoria (minimo 2)
totalinteger100Il totale fisso a cui tutti i cursori devono sommare
min_per_labelinteger0Valore minimo che ogni etichetta deve ricevere
show_distribution_chartbooleantrueMostra un grafico a torta o a barre con la distribuzione corrente
label_requirement.requiredbooleanfalseSe l'annotazione deve essere completata prima di proseguire

Esempi

Distribuzione del sentiment

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

Intensità delle emozioni

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

Pertinenza rispetto ai temi

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

Assegnazione minima obbligatoria

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

Formato di output

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

I valori sommano sempre al valore configurato di total.

Buone pratiche

  1. Usala quando le categorie si sovrappongono — le etichette soft sono adatte quando un elemento appartiene davvero a più categorie in misura diversa
  2. Tieni sotto controllo il numero di etichette — oltre 6-7 etichette l'interfaccia con i cursori diventa scomoda
  3. Scegli un totale sensato — 100 è intuitivo perché si legge come percentuale, ma per i compiti più semplici vanno bene anche totali più piccoli
  4. Usa min_per_label con parsimonia — imporre assegnazioni minime può distorcere i risultati quando un'etichetta non si applica affatto
  5. Attiva il grafico di distribuzione — il riscontro visivo aiuta gli annotatori a vedere a colpo d'occhio come hanno distribuito i punti

Ulteriori letture

Per i dettagli implementativi, vedi la documentazione sorgente.