Skip to content
此页面尚未提供您所选语言的版本,当前显示英文版本。

Aufgabenzuweisung

Steuern, wie Annotationsinstanzen auf Annotatoren verteilt werden.

Aufgabenzuweisung

Potato bietet flexible Aufgabenzuweisungsstrategien, um zu steuern, wie Annotationsinstanzen auf Annotatoren verteilt werden.

Übersicht

Die Aufgabenzuweisung steuert:

  • Welche Elemente jeder Annotator sieht
  • Wie viele Elemente jeder Annotator abschließt
  • Wie viele Annotationen jedes Element erhält
  • Die Reihenfolge, in der Elemente präsentiert werden

Wichtige Konfigurationsoptionen

OptionBeschreibungStandard
assignment_strategyStrategie zur Zuweisung von Elementenrandom
max_annotations_per_userMaximale Elemente pro Annotatorunbegrenzt
max_annotations_per_itemZielannotationen pro Element3

Zuweisungsstrategien

Zufällige Zuweisung

Elemente werden zufällig an Annotatoren zugewiesen und eine unvoreingenommene Verteilung gewährleistet.

yaml
assignment_strategy: random
max_annotations_per_item: 3

Geeignet für: Allgemeine Annotationsaufgaben, bei denen die Reihenfolge keine Rolle spielt.

Feste Reihenfolge

Elemente werden in der Reihenfolge zugewiesen, in der sie im Datensatz erscheinen.

yaml
assignment_strategy: fixed_order
max_annotations_per_item: 2

Geeignet für: Aufgaben, bei denen Annotatoren Elemente in einer bestimmten Reihenfolge sehen sollen.

Am-wenigsten-annotiert-Zuweisung

Priorisiert Elemente mit den wenigsten vorhandenen Annotationen und gewährleistet eine gleichmäßige Verteilung.

yaml
assignment_strategy: least_annotated
max_annotations_per_item: 5

Geeignet für: Sicherstellen, dass alle Elemente ausreichend abgedeckt werden, bevor eines übermäßig viele Annotationen erhält.

Max-Diversity-Zuweisung

Priorisiert Elemente mit der höchsten Uneinigkeit unter vorhandenen Annotationen.

yaml
assignment_strategy: max_diversity
max_annotations_per_item: 4

Geeignet für: Qualitätskontrolle und Klärung mehrdeutiger Elemente.

Active-Learning-Zuweisung

Verwendet maschinelles Lernen, um unsichere Instanzen zu priorisieren.

yaml
assignment_strategy: active_learning
 
active_learning:
  enabled: true
  schema_names: ["sentiment"]
  min_annotations_per_instance: 2
  min_instances_for_training: 20
  update_frequency: 10

Vollständige Konfiguration unter Active Learning.

Konfiguration

Moderne Konfiguration (empfohlen)

yaml
# Strategy selection
assignment_strategy: random
 
# Limits
max_annotations_per_user: 10    # -1 for unlimited
max_annotations_per_item: 3     # -1 for unlimited
 
# Optional: nested configuration
assignment:
  strategy: random
  max_annotations_per_item: 3
  random_seed: 1234

Legacy-Konfiguration

Die ältere automatic_assignment-Konfiguration wird weiterhin unterstützt:

yaml
automatic_assignment:
  on: true
  output_filename: task_assignment.json
  sampling_strategy: random    # 'random' or 'ordered'
  labels_per_instance: 3       # Annotations per item
  instance_per_annotator: 5    # Items per annotator
  test_question_per_annotator: 0

Testfragen

Aufmerksamkeitscheck-Fragen in die Annotationswarteschlange einfügen:

Testfragen definieren

_testing zur Instanz-ID in Ihrer Datendatei hinzufügen:

csv
text,id
"This is test question 1",0_testing
"Regular item",dkjfd

Oder in JSON:

json
[
  {"id": "0_testing", "text": "This is a test question"},
  {"id": "regular_001", "text": "Normal annotation item"}
]

Konfiguration

yaml
automatic_assignment:
  on: true
  test_question_per_annotator: 2  # Insert 2 test questions per annotator

Beispielkonfigurationen

Einfache zufällige Zuweisung

yaml
annotation_task_name: "Sentiment Analysis"
assignment_strategy: random
max_annotations_per_user: 20
max_annotations_per_item: 3

Qualitätsorientierte Zuweisung

yaml
annotation_task_name: "Quality Annotation"
assignment_strategy: max_diversity
max_annotations_per_item: 5
max_annotations_per_user: 50

Crowdsourcing-Einrichtung

yaml
annotation_task_name: "Crowdsourced Task"
assignment_strategy: random
max_annotations_per_user: 10
max_annotations_per_item: 3
 
# Crowdsourcing settings
hide_navbar: true
jumping_to_id_disabled: true
 
login:
  type: url_direct
  url_argument: workerId

Active-Learning-Einrichtung

yaml
assignment_strategy: active_learning
 
active_learning:
  enabled: true
  schema_names: ["sentiment", "topic"]
  min_annotations_per_instance: 2
  min_instances_for_training: 20
  update_frequency: 10
  classifier_name: "sklearn.linear_model.LogisticRegression"
  vectorizer_name: "sklearn.feature_extraction.text.TfidfVectorizer"

Admin-Dashboard-Integration

Zuweisungseinstellungen über das Admin-Dashboard überwachen und anpassen:

  1. Navigieren Sie zu /admin
  2. Gehen Sie zum Tab Konfiguration
  3. Ändern Sie:
    • Max. Annotationen pro Nutzer
    • Max. Annotationen pro Element
    • Zuweisungsstrategie

Änderungen werden ohne Serverneustart sofort wirksam.

Weiterführende Informationen

Implementierungsdetails finden Sie in der Quelldokumentation.