Skip to content
Diese Seite ist in Ihrer Sprache noch nicht verfügbar. Englische Version wird angezeigt.

Ordinamento per Diversità

Diversificazione degli elementi basata su embedding per massimizzare la varietà delle annotazioni.

Ordinamento per Diversità

L'ordinamento per diversità usa embedding sentence-transformer per raggruppare gli elementi simili, poi campiona gli elementi in modo round-robin da cluster diversi. Questo garantisce che gli annotatori vedano contenuti diversificati piuttosto che elementi simili in sequenza.

Vantaggi

  • Riduce l'affaticamento degli annotatori da contenuti ripetitivi
  • Migliora la qualità delle annotazioni attraverso contesti variati
  • Copertura più rapida dell'intero spazio degli argomenti

Avvio Rapido

yaml
assignment_strategy: diversity_clustering
 
diversity_ordering:
  enabled: true
  prefill_count: 100

Come Funziona

  1. Avvio: I primi N elementi vengono incorporati usando sentence-transformers e raggruppati con k-means
  2. Assegnazione: Gli elementi vengono campionati round-robin dai cluster, garantendo varietà
  3. Annotazione: I nuovi elementi vengono incorporati in modo asincrono man mano che vengono annotati
  4. Re-clustering: Quando un utente ha campionato da tutti i cluster, il sistema effettua nuovamente il clustering

Configurazione

yaml
diversity_ordering:
  enabled: true
 
  # Modello sentence-transformer
  model_name: "all-MiniLM-L6-v2"
 
  # Parametri di clustering
  num_clusters: 10
  items_per_cluster: 20
  auto_clusters: true           # Calcola automaticamente in base alla dimensione dei dati
 
  # Pre-compilazione all'avvio
  prefill_count: 100
  batch_size: 32
 
  # Comportamento di re-clustering
  recluster_threshold: 1.0      # Ri-clustera quando tutti i cluster sono stati campionati
 
  # Preservazione dell'ordine
  preserve_visited: true
 
  # Integrazione AI
  trigger_ai_prefetch: true

Riferimento alla Configurazione

OpzioneTipoPredefinitoDescrizione
enabledbooleanofalseAbilita l'ordinamento per diversità
model_namestringa"all-MiniLM-L6-v2"Modello sentence-transformers
num_clustersintero10Numero di cluster (quando auto_clusters=false)
items_per_clusterintero20Dimensione target del cluster (quando auto_clusters=true)
auto_clustersbooleanotrueCalcola automaticamente il numero di cluster
prefill_countintero100Elementi da incorporare all'avvio
batch_sizeintero32Dimensione del batch per il calcolo degli embedding
recluster_thresholdfloat1.0Frazione dei cluster da campionare prima del re-clustering
preserve_visitedbooleanotrueMantieni gli elementi visitati/saltati al loro posto
trigger_ai_prefetchbooleanotrueAttiva la cache AI dopo il riordinamento

Requisiti

bash
pip install sentence-transformers scikit-learn

Queste sono dipendenze opzionali. Senza di esse, la funzionalità verrà disabilitata con un avviso.

Prestazioni

  • Avvio: ~10 secondi per 100 elementi, ~30 secondi per 500 elementi (prima esecuzione; poi memorizzata nella cache)
  • Memoria: ~1,5 KB per elemento (all-MiniLM-L6-v2), ~15 MB per 10.000 elementi
  • Cache: Gli embedding vengono persisti su disco in .diversity_cache/

Interazione con Altre Funzionalità

  • Supporto AI: Quando trigger_ai_prefetch: true, i suggerimenti AI vengono precaricati automaticamente per gli elementi riordinati
  • Apprendimento Attivo: Può essere combinato iniziando con il clustering per diversità per la copertura iniziale, poi passando all'apprendimento attivo
  • Preservazione dell'Ordine: Quando preserve_visited: true, gli elementi visti in precedenza mantengono la loro posizione

Esempio Completo

yaml
annotation_task_name: "Diversity Ordering Test"
 
assignment_strategy: diversity_clustering
 
diversity_ordering:
  enabled: true
  model_name: "all-MiniLM-L6-v2"
  num_clusters: 5
  auto_clusters: false
  prefill_count: 100
  batch_size: 16
  recluster_threshold: 1.0
  preserve_visited: true
 
annotation_schemes:
  - annotation_type: radio
    name: topic
    description: "What is the main topic of this text?"
    labels:
      - name: Sports
      - name: Technology
      - name: Food
      - name: Travel
      - name: Health

Ulteriori Letture

Per i dettagli di implementazione, consulta la documentazione sorgente.