Ein kostengünstiger SO-100 Roboterarm auf einem Schreibtisch, ausgerüstet für Fernsteuerung und Policy-Training
DAggerSO-100ImitationslernenVLATeleoperation

Einen DAgger Loop auf dem SO-100 mit einer VLA Policy durchlaufen

AY-Robots Research27. August 202615 min Lesezeit

Ein Schritt-für-Schritt-Bericht einer menschlich kontrollierten DAgger-Runde auf einem SO-100 Arm: Policy ausführen und aufzeichnen, übernehmen wenn es schiefgeht, die Durchführung als Korrektur einordnen, einen gemischten Datensatz zusammenstellen und ab einem Checkpoint weitertrain. Enthält den Tastatur- und Schieberegler-Übergabeweg für Nutzer ohne Leader-Arm und die vier Fehler, die eine Runde wertlos machen.

Deine Policy läuft. Sie greift nach dem Würfel, schließt den Greifer einen Zentimeter zu früh und macht weiter, als hätte sie ihn. Nichts schlägt fehl und keine Menge Starren auf den Trainings-Loss erklärt es. Die Lösung ist nicht weitere 20.000 Gradient-Schritte auf denselben Demonstrationen. Sie besteht darin, deine Hand genau dort wieder auf den Arm zu legen, wo es schiefgeht, aufzuzeichnen, was du stattdessen getan hast, und den nächsten Checkpoint auf den alten Daten plus dieser Korrektur zu trainieren. Das ist eine DAgger-Runde und so läuft eine auf einem SO-100 ab mit einer Vision-Language-Action Policy.

Die Theorie findet sich anderswo: warum Datensatz-Aggregation überhaupt funktioniert und was menschliche Gating daran ändert. Das ist die Bedienungsanleitung und sie setzt einen trainierten Checkpoint, einen funktionierenden Kamerasatz und einen Arm voraus, der sich bewegt. Die sechs Schritte unten sind die Schleife wie auf der DAgger-Seite dieser Plattform implementiert, aber die Reihenfolge ist dieselbe von deinen eigenen Skripten.

Eine Runde kurz

  • Führe die trainierte Policy aus und zeichne sie auf, mit dem Task-Text der Durchführung statt eines generischen Teleoperation-Labels.
  • Übernimm im Moment, in dem das Verhalten schiefgeht: ein Spiegel-Handover mit einem Leader-Arm, sofort und manuell über Tastatur oder Schieberegler ohne einen.
  • Triagiere jede Durchführung: ordne sie als Korrektur ein, behalte sie als Evaluations-Episode oder verwerfe sie.
  • Stelle die Mischung von Hand zusammen – Original-Demonstrationen plus Korrektionen, Episoden gewählt nach Quelle. Trainiere niemals nur auf Korrektionen.
  • Setze das Training vom letzten Checkpoint fort und notiere, welcher Checkpoint welche Mischung produziert hat.
  • Die Zahl, die sagt, ob sich die Runde gelohnt hat, ist die intervention rate, nicht der Trainings-Loss.

Warum die zweite Runde nicht nur mehr Daten ist

Behavior Cloning trainiert auf den Zuständen, die ein Mensch besucht hat. Zur Testzeit besucht die Policy die Zustände, die sie verursacht, und kleine Aktionsfehler verstärken sich zu Zuständen, die keine Demonstration abdeckte. Ross, Gordon und Bagnell formalisierten diesen Fehler für AISTATS 2011 und beantworteten ihn mit einem iterativen Algorithmus, der eine stationäre deterministische Policy trainiert und unter ihrer Reduktion gut unter der Zustandsverteilung performen muss, die sie induziert: führe die aktuelle Policy aus, lasse den Expert die Zustände labeln, die sie tatsächlich erreicht, füge diese zum Datensatz hinzu, trainiere neu, wiederhole. Kelly et al. machten die Anfrage praktisch mit HG-DAgger, wo der Mensch entscheidet, wann er die Kontrolle übernimmt, statt Zustände ohne Greifen zu labeln; sie berichten verbesserte Performance sowohl über DAgger als auch Behavior Cloning auf einer simulierten und einer echten autonomen Fahraufgabe. Menschliches Gating ist das, was die Schleife auf einem Schreibtisch-Arm tolerabel macht – du bewegst deine Hände nur, wenn etwas schiefgeht.

Zwei Konsequenzen zählen in der Praxis mehr als die Theorie. Korrektionen sind keine gewöhnlichen Demonstrationen: sie konzentrieren sich an den Engpässen, die Mandlekar et al. beschreiben, wo eine kleine Abweichung die Policy in Zustände fallen lässt, die Demonstrationen nie abdeckten. Und ein Datensatz aus nur jenen schwierigen Teilen ist ein schlecht geformter Datensatz – Belkhale, Cui und Sadigh argumentieren von der Datenseite, dass Zustandsdiversität nicht immer vorteilhaft ist und dass Aktionsdivergenz und Übergangsdiversität zusammen Datensatz-Qualität entscheiden. Der gemischte Datensatz ist kein Kompromiss, er ist der Sinn.

Friere diese vor Runde eins ein

Eine DAgger-Runde vergleicht eine Policy gegen sich selbst über die Zeit. Alles, das du zwischen Runden änderst, das nicht der Datensatz ist, macht diesen Vergleich bedeutungslos.

  • Kamerapositionen und Halterungen, Handgelenk-Kamera inbegriffen. Lockere eine Klemme und du hast die Beobachtungsverteilung verändert, nicht die Policy.
  • Belichtung und Weißabgleich, wenn dein Erfassungs-Stack sie fixieren kann. Auto-Belichtungs-Drift zwischen Runden ist ein langsamer, unsichtbarer Domain-Shift.
  • Arm-Kalibrierung und Servo-Null-Positionen. Wenn du neu kalibrieren musst, behandle alles, das davor aufgezeichnet wurde, als einen separaten Datensatz.
  • Der Task-Text. Jede VLA hier hängt von ihm ab; es umzuformulieren mitten im Loop ist eine andere Aufgabe.
  • Beleuchtung, Tischoberfläche, Objektsatz. Ein neues Objekt ist ein neues Experiment, nicht die nächste Runde.
  • Die Aufnahme-Framerate. Vergleiche von intervention Rates über zwei Sampling-Raster hinweg führen zu Unterschieden, die vom Raster kommen.
Die Handgelenk-Kamera ist kein optionales Zubehör

Hsu et al. verglichen eine handzentrische Sicht gegen die übliche Third-Person-Sicht und fanden die Eye-in-Hand-Perspektive verbesserte konstant Trainings-Effizienz und Out-of-Distribution-Generalisierung, trotz weniger Sicht auf die Szene. Auf einem Fünf-Gelenk-Arm ist Greifer-Timing normalerweise das, was du mit deinen Korrektionen fixierst, und Greifer-Timing ist das, das die Handgelenk-Sicht trägt.

Die Runde, Ende zu Ende

  1. 1
    Führe Inferenz aus und zeichne auf

    Starte die Durchführung gegen den Checkpoint, den du verbessern willst, starten dann die Aufzeichnung in die Inferenz-Root. Aufgezeichnet auf diese Weise erbt sie den Task-Text der Durchführung selbst, das ist das, worauf die Policy trainiert wurde, statt des Standard-Teleoperation-Labels. Ohne die Aufzeichnung kannst du den Fehler beobachten, aber nicht darauf trainieren.

    bash
    # two calls, not one: the run, then its recording
    POST /inference/start      # model_id, and hf_repo_id = the checkpoint to drive
    POST /recording/start      # root=inference
    # root=inference also makes the recording inherit the run's task text
  2. 2
    Übernimm wenn es schiefgeht

    Drücke Take over und wähle den Input-Modus: Leader-Arm, Tastatur oder Schieberegler. Der Runner pausiert, du korrigierst, du gibst zurück. Frames aufgezeichnet, während du dich bewegst, sind automatisch als Interventionen markiert.

    bash
    POST /inference/takeover/start   # input = leader | keyboard | sliders
    POST /inference/takeover/nudge   # keyboard, relative delta per call
    POST /inference/takeover/set     # sliders, absolute target
    POST /inference/takeover/stop    # back to the policy
  3. 3
    Triagiere die Episoden

    Entscheide pro Episode: als Korrektur einordnen, als Evaluations-Episode behalten oder verwerfen. Eine Durchführung, die die Policy ohne Hilfe abgeschlossen hat, ist Evaluationsdaten.

  4. 4
    Synchronisiere den Korrektur-Datensatz

    Korrektionen sammeln sich in einem lokalen Datensatz pro Policy und gehen durch automatische Synchronisation in Cloud-Speicher. Nichts wird vermischt, das du nicht dort hineingetan hast.

  5. 5
    Stelle den gemischten Datensatz zusammen

    Kombiniere den Original-Datensatz mit dem Korrektur-Datensatz, wähle Episoden explizit pro Quelle. Das Ergebnis ist von diesem Punkt an ein gewöhnlicher Datensatz.

    bash
    POST /training/datasets/compose
      sources  = [ original_dataset, korrekturen_<policy> ]
      episodes = explicit selection per source
  6. 6
    Setze das Training vom Checkpoint fort

    Trainiere die Mischung vom vorherigen Checkpoint statt vom Basis-Modell. Notiere, welcher Checkpoint und welche Mischung; ohne dieses Paar ist die Runde nicht reproduzierbar.

    bash
    # field on the training job
    base_checkpoint = s3://ay-robots/checkpoints/<run>/<checkpoint>
    # the platform passes it to the training pod as BASE_CKPT_S3

Schritt 2 im Detail: die zwei Wege zum Übernehmen

Mit einem Leader-Arm

Im Leader-Follower Modus ist das Übernehmen ein Handover zwischen zwei Armen, die nicht in der gleichen Pose sind. Drücken Take over pausiert den Runner und treibt den Leader auf die aktuelle Pose des Follower, so dass nichts springt, wenn Drehmoment übergeht. Wenn diese Alignment-Fahrt einen Timeout erhält, richtest du den Leader von Hand aus und gibst nur frei, wenn die beiden innerhalb von fünf Graden sind. Von da an steuerst du normal per Fernsteuerung und die Aktions-Spalte zeichnet auf, was du befohlen hast.

Sei ehrlich über diesen Weg: die Alignment-Fahrt und das Drehmoment-Handover sind der am wenigsten getestete Teil der Schleife auf echter Hardware. Teste das Handover auf einer langsamen, harmlosen Pose, bevor du dich darauf in einer Durchführung verlässt, die dir wichtig ist. Ein Leader-Arm erzeugt die glattesten Korrektionen von den drei Modi und hat auch das meiste, das mechanisch schiefgehen kann.

Ohne einen Leader-Arm: Tastatur und Schieberegler

Die meisten Leute, die das lesen, besitzen einen Arm. Das reicht. Wähle Tastatur- oder Schieberegler-Input im Moment, in dem du Take over drückst, und das Übernehmen ist sofort und manuell – es gibt keinen zweiten Arm zum Ausrichten, also gibt es keine Alignment-Stufe. Der Follower hält seine Pose und wartet auf Input.

Input-ModusWie der Arm sich bewegtPro-Call-Limit durchgesetzt vom ServerGesperrt wenn
Leader-ArmDer Spiegel treibt den Follower vom Leader-Gelenkwinkel anKeine nudge oder set Aufrufe in diesem Modus; der Spiegel schreibt Follower-Ziele kontinuierlichNie gesperrt und Standard wenn kein Input-Modus gegeben ist – aber es braucht einen zweiten Arm; ohne eine Leader-ID wird das Übernehmen abgelehnt
TastaturRelativer nudge pro Tastendruck, gesendet zum takeover nudge EndpunktHarte Begrenzung bei 2 Grad pro Gelenk, 4 Grad für den GreiferAbgelehnt mit 409 wenn das Übernehmen im Leader-Modus gestartet wurde
SchiebereglerAbsolute Zielpose, gesendet zum takeover set EndpunktHöchstens 6 Grad Fahrt zur Zielposition pro Aufruf; die Schnittstelle sendet etwa zehnmal pro SekundeAbgelehnt mit 409 wenn das Übernehmen im Leader-Modus gestartet wurde

Die Begrenzungen werden server-seitig durchgesetzt, nicht in der Schnittstelle, weil ein vertippter Delta auf einem Bus-Servo-Arm eine Kollision ist. Tastatur-Korrektionen kommen schrittweise und leicht grob heraus; Schieberegler-Korrektionen sind glatter, weil der Server zur Zielposition geht, während die Schnittstelle weiter sendet. So oder so erhält die Aktions-Spalte den vollen befohlen Pose-Vektor und die Interventions-Markierung ist identisch zum Leader-Weg, so dass Tastatur-Korrektionen ohne Format-Unterschied in den Datensatz landen.

text
Q / A   joint 1      R / F   joint 4
W / S   joint 2      T / G   joint 5
E / D   joint 3      Z / X   gripper
Das gleiche Tastenlayout wie überall sonst im Stack, also Muskel-Gedächtnis vom Aufzeichnen überträgt sich.
Trainings-Anleitung, die die geordneten Schritte eines GR00T Fine-Tuning Laufs auf einem SO-100 Datensatz zeigt
Die Trainings-Seite einer Runde ist die gleiche geführte Reihenfolge wie ein erster Lauf; nur das Checkpoint-Feld unterscheidet sich.

Wann man den Knopf drückt

Früher statt später. Eine Korrektur, die beginnt, nachdem der Greifer auf nichts geschlossen hat, lehrt Wiederherstellung aus einem Fehler, den die Policy nicht hätte eingeben dürfen, und Wiederherstellungsdaten sind weit weniger wert als Vermeidungsdaten. Unterbreche im ersten Moment, in dem du sicher bist, dass die Bahn falsch ist, korrigiere durch den schwierigen Teil, gib zurück, sobald der Zustand einer ist, den die Policy zuvor behandelt hat. ThriftyDAgger automatisiert diese Entscheidung durch Gating von Interventionen auf Neuheit und geschätztem Risiko unter einem festen Humanbudget, aber auf einem einzelnen Arm mit einem Menschen, der bereits beobachtet, ist das Human-Gate günstiger und besser kalibriert als alles, das du abstimmen wirst.

Mit dem Open-Source-Stack und ein paar Skripten machbar. Was es kostet, ist Buchhaltung, und Buchhaltung ist, wo DAgger-Runden sterben.

  1. Schreibe Frames aus deinem eigenen Inferenz-Skript in einen LeRobot Datensatz, mit dem Task-String, auf dem die Policy trainiert wurde.
  2. Pausiere die Policy-Schleife, wechsle die Befehlsquelle und markiere jeden Frame, den du steuerst, als eine Intervention. Ohne die Markierung sehen Korrektionen wie gewöhnliche Demonstrationen aus.
  3. Entscheide bewusst, was mit den Übergänge-Frames passiert zwischen der Policy, die die Kontrolle freigibt und deinem ersten Input.
  4. Behalte Korrektionen in ihrem eigenen Datensatz pro Policy und verfolge Episode-Indizes von Hand, so dass die Mischung rekonstruiert werden kann.
  5. Zeige auf den Fine-Tuning Einstiegspunkt auf den vorherigen Checkpoint und überprüfe im Log, dass er jene Gewichte geladen hat.

Schritt 3 im Detail: Triage entscheidet die Qualität

Nach der Durchführung hast du eine Aufzeichnung mit einigen Frames als Interventionen markiert. Drei Ziele existieren und das falsche vergiftet leise die nächste Runde.

  • Ordne als Korrektur ein, wenn die Intervention eine echte Reparatur war: die Policy ging irgendwohin falsch und dein Input zeigte die richtige Sache aus einem Zustand, den die Policy selbst erzeugt hat.
  • Behalte als Evaluations-Daten für saubere autonome Durchführungen und für Durchführungen, die du aus Vorsicht übernommen hast. Evaluations-Episoden sind wie du den nächsten Checkpoint gemessen, und sie dürfen nie trainiert werden.
  • Verwerfe Durchführungen, die durch etwas Unrelated zerstört wurden – ein Kamera-Frame-Ausfall, ein steckenbleibender Servo, ein Objekt, das du umgestoßen hast. Eine unordentliche Korrektur ist schlimmer als keine Korrektur.
Freeze Frames gehören in die Roh-Aufzeichnung, nicht in Trainingsdaten

Zwischen der Policy, die die Kontrolle freigibt und deinem ersten Input, hält der Arm still, während die Aufzeichnung weiter schreibt – ein Durchgang identischer Posen, gepaart mit leicht unterschiedlichen Bildern. Hier bleiben jene Handover-Frames in der Roh-Aufzeichnung und außerhalb des Korrektur-Datensatzes. Wenn du die Schleife selbst baust, schneide sie bewusst: eine Policy, die auf ihnen trainiert, lernt, wo sie handeln sollte, zu pausieren.

Schritt 5 im Detail: Zusammenstellung der Mischung

Zusammenstellung nimmt den Original-Datensatz plus den Korrektur-Datensatz und produziert einen neuen, gewöhnlichen LeRobot Datensatz der wie jeder andere trainiert. Die wichtige Eigenschaft ist, dass die Episode-Auswahl explizit pro Quelle ist – nichts wird automatisch gemischt. Das klingt klein, bis zum ersten Mal eine Policy sich seltsam verhält und du rekonstruieren musst, worauf sie trainiert wurde.

Die offene Frage ist das Verhältnis und niemand hat eine Zahl, die überträgt. Das, das die Literatur vereinbart, ist, dass Korrektionen mehr zählen sollten als ihr Frame-Anteil. Mandlekar et al. trainieren iterativ auf den Daten, die ihr Interven­tions­system sammelt, so dass die Policy die Engpässe durchquert, und berichten, dass Agenten, die auf diese Weise trainiert wurden, Agenten übertreffen, die auf einer äquivalenten Anzahl von Samples von Nicht-Interventional-Demonstrationen trainiert wurden. Sirius geht weiter und regewichtet Trainings-Samples durch approximiertes Mensch-Vertrauen, berichten einen 8 Prozent Gewinn in Simulation und 27 Prozent auf echter Hardware in Policy-Erfolgsrate gegen die Methoden, mit denen sie sich vergleicht, bei doppelter Konvergenz-Geschwindigkeit. Keiner der Trainings-Einstiegspunkte hier legt einen Sample-Gewichtungs-Regler offen, so dass der grobe Ersatz ist, jede Korrektur-Episode zu behalten, während Original-Demonstrationen unterstichprobt werden – und aufzuschreiben, was du getan hast.

Datensatz-Aufzeichnungs-Ansicht, die Episoden eines SO-100 Datensatzes mit Kameraströmen zeigt
Korrektur-Episoden sind gewöhnliche Episoden mit einer Pro-Frame Interventions-Markierung, so werden sie mit dem Original-Datensatz ohne Konvertierung zusammengesetzt.

Schritt 6 im Detail: Was das Weitermachen ab einem Checkpoint wirklich bedeutet

Training der Mischung vom Basis-Modell funktioniert aber wirft die vorherige Runde weg und kostet einen vollen Lauf. Weitermachen vom vorherigen Checkpoint ist schneller und normalerweise besser. Es ist auch limitierter als der Satz vorschlägt.

Gewichts-Initialisierung ist kein Optimizer-Resume

Ein Gewichte-Only-Checkpoint enthält die Parameter und nichts anderes. Das Laden gibt dem nächsten Lauf einen besseren Startpunkt als das Basis-Modell, aber Optimizer-Momente, Lernratenschedule-Position und Datenreihenfolge alle beginnen bei null. Erwarte einen Loss-Spike am Anfang des weitergegangenen Laufs, lese es nicht als einen Fehler und nenne die Runde nicht ein Resume. Es ist ein Warm-Start.

PolicyGrößeGPU-StufeInferenz pro Action-SchrittDatensatz-FormatEpisoden, bevor es sich lohnt zu versuchen
GR00T N1.7etwa 3 B, rund 40 M während Fine-Tuning trainiertA100 80 GB oder H100 80 GBetwa 152 msLeRobot v2.0 oder v2.150
GR00T N1.5etwa 3 BA100 80 GB oder H100 80 GBetwa 165 msLeRobot v2.0 oder v2.150
Pi0.5etwa 3 B auf einem PaliGemma BackboneA100 80 GB oder H100 80 GBetwa 485 msLeRobot v3.050
SmolVLAetwa 450 MRTX 4090 oder jede 24 GB Karteetwa 245 msLeRobot v3.030
ACTetwa 80 M, von vorne trainiertRTX 4090 oder jede 24 GB Karteetwa 20 msLeRobot v3.050

Latenz summiert sich innerhalb einer DAgger-Schleife auf eine Weise, die nicht während einer Demo passiert: bei rund 485 ms pro Action-Schritt übernimmst du, weil der Arm gezögert hat, nicht weil er falsch war, und Zögerungs-Korrektionen sind nutzlose Trainingsdaten. Wenn du auf Daten iterierst statt einen finalen Erfolgsrate zu jagen, iteriere auf einem schnellen Modell. Shukor et al. beschreiben SmolVLA als entworfen, auf einer einzelnen GPU zu trainieren und auf Verbraucher-GPUs oder CPUs bereitzustellen, mit einem asynchronen Inferenz-Stack, der Action-Vorhersage von Ausführung entkoppelt, um höhere Kontroll-Raten zu erlauben – die Eigenschaft, die eine Übernahme-Schleife responsiv hält.

Die Datensatz-Formate sind nicht austauschbar. GR00T nimmt LeRobot v2.0 oder v2.1 und das Isaac-GR00T Repository beschreibt seine Eingabe als einen Geschmack des LeRobot v2 Formats mit einer hinzugefügten Modalitäts-Beschreibungs-Datei; die neueren Trainer hier erwarten v3.0. Eine in der falschen Version zusammengesetzte Mischung schlägt beim Laden fehl, statt eine schlechte Policy zu produzieren – der bessere Fehler-Modus, immer noch ein verschwendeter Queue-Slot. Das Datensatz-Dokumentation listet auf, welches Format jeder Trainer nimmt.

Die Schleife, mit der Buchhaltung bereits erledigt

Übernahme mit einem Leader-Arm, Tastatur oder Schieberegler; Pro-Frame Interventions-Markierung; Einordnung von Durchführungen als Korrektionen oder Evaluationen; Zusammenstellung eines gemischten Datensatzes mit expliziter Episode-Auswahl pro Quelle; und Weitermachen des Trainings von einem Checkpoint statt dem Basis-Modell. Was deine Entscheidung bleibt, ist welche Durchführung als Korrektur zählt, was in die Mischung geht und wann die intervention rate aufgehört hat zu fallen.

Siehe, wie die DAgger-Schleife verdrahtet ist

Vier Wege, eine Runde zu verschwenden

1. Nur auf Korrektionen trainieren

Der häufigste Fehler und die verlockendste Abkürzung. Ein Korrektur-Only-Datensatz ist fast ganz die schwierige Mitte der Aufgabe, mit Anfahrt und Rückzug fehlend; die Policy wird besser auf dem schwierigen Teil und vergisst, wie sie dorthin kommt. Aggregation ist nicht ein Implementierungs-Detail der Methode, es ist der Mechanismus: die alten Daten sind das, das den Rest des Verhaltens an Ort und Stelle hält, während die Korrektionen einen Teil davon bewegen.

2. Eine Kamera zwischen Runden bewegen

Eine Kamera, die zwischen Runden zwei Zentimeter wechselt, produziert eine Policy schlechter als die, mit der du angefangen hast, und eine Diagnose, die einen Tag kostet. Jede VLA hier hängt von Bildern ab; allein Gelenkzustand disambiguiert nicht, wo das Objekt ist. Fotografiere die Anordnung vor der ersten Runde und prüfe diese Fotografie vor jeder späteren.

3. Handover-Artefakte in Trainingsdaten lassen

Oben behandelt und auf der Liste, weil es unsichtbar ist. Das Symptom ist eine Policy, die um einen Bruchteil einer Sekunde genau dort steckenbleibt, wo der Operator der vorherigen Runde übernahm. Es sieht wie Zögern aus; es ist Imitation.

4. Einen Warm-Start einen Resume nennen

Wenn du glaubst, dass Optimizer-Zustand übertragen wurde, liest sich der anfängliche Loss-Spike als ein Bug und du jagst nach beschädigten Daten. Wenn du weißt, dass der Optimizer frisch gestartet wurde, ist der Spike erwartet und du schaust auf das, das danach kommt. Gleiche Zahlen, entgegengesetzte Schlussfolgerungen.

Messung der Runde

Die Metrik für eine menschlich-gated Schleife ist die intervention rate: Frames aufgezeichnet, während du in Kontrolle warst, geteilt durch Gesamtframes der Durchführung. Sie ist im Takeover-Status und sie ist die einzige Zahl, die die Frage beantwortet, die die Runde gestellt hat. Trainings-Loss fällt, ob die Policy sich verbessert hat oder nicht; Erfolgsrate ist binär und verrauscht in den Sample-Größen, die ein Schreibtisch-Arm produziert. Intervention Rate ist kontinuierlich, gemessen auf den Zuständen, die die Policy selbst verursacht hat, und sie fällt, während die Policy dich weniger braucht.

Vergleiche sie nur über Durchführungen hinweg, die unter identischen Bedingungen aufgezeichnet wurden. Das volle Argument und wie du einen Evaluations-Satz baust, der mehr als zwei Runden übersteht, ist in dem Artikel über Messung einer DAgger-Schleife. Runde eins ist realistisch ein Machbarkeits-Test: du prüfst, dass das Übernehmen auf deiner Hardware funktioniert, dass Korrektionen mit ihren Markierungen landen und dass der weitergegangene Lauf den Checkpoint geladen hat, den du benannt hast. Runden zwei und drei sind, wo die Rate anfangen sollte, sich zu bewegen. Wenn sie sich bis Runde vier nicht bewegt hat, ist das Problem flussaufwärts von DAgger.

Pro Runde aufschreibenWarum es später wichtig ist
Checkpoint, das gefahren wurdeOhne es kannst du keine Verbesserung einer Mischung zuordnen
Input-Modus für das Übernehmen benutztTastatur-Korrektionen sind grober als Leader-Korrektionen und es zeigt sich in den Daten
Anzahl von Durchführungen und wie jede triagiert wurdeOb die Runde genug Korrektionen zu zählen hatte
Intervention Rate pro Durchführung und der DurchschnittDie Fortschritts-Metrik der Schleife
Exakte Episode-Auswahl pro QuelleDer einzige Weg zum Reproduzieren oder Rückgängigmachen einer Runde
Warm-Start oder frisches TrainingErklärt die Loss-Kurve, die du nächste Woche anschauen wirst

Wenn du noch keinen Checkpoint hast

Die Schleife hat keinen Einstiegspunkt ohne einen. Zeichne einen ersten Datensatz auf, trainiere eine erste Policy, fahre sie – Aufzeichnung, Training und Durchführung der Policy decken diesen Weg. Der Aufzeichnungs-Client ist auf der Download-Seite, GPU-Stufen und Stundensätze auf der Preisseite und wie eine verwendbare Episode in der SO-100 Datensammlungs-Anleitung aussieht. Bekomme die Demonstrationen richtig bevor die Korrektionen: DAgger ist ein Reparatur-Mechanismus und funktioniert weit besser auf etwas, das bereits fast richtig war.

Kann ich eine DAgger-Schleife ohne einen Leader-Arm durchlaufen?

Ja. Wähle Tastatur- oder Schieberegler-Input, wenn du Take over drückst: das Übernehmen ist sofort und manuell, ohne einen zweiten Arm zum Ausrichten. Tastatur sendet relative nudges, die der Server hart bei 2 Grad pro Gelenk und 4 für den Greifer begrenzt; Schieberegler senden ein absolutes Ziel und der Server bewegt sich höchstens 6 Grad pro Aufruf zur Zielposition, während die Schnittstelle weiter sendet. Aktions-Spalte und Interventions-Markierung sind das gleiche wie im Leader-Modus, so dass die Korrektionen im Datensatz nicht zu unterscheiden sind.

Wie viele Korrektionen braucht eine Runde?

Es gibt keine verteidigbare universelle Zahl und Frame-Anzahl ist wichtiger als Episode-Anzahl. Die Arbeit-Regel ist, dass die Korrektionen nicht in die Mischung verloren gehen: mit 200 Original-Episoden und drei Korrektur-Episoden wird sich nichts bewegen. Ziele auf Korrektionen, die das fehlgeschlagene Verhalten von mehreren Startpositionen abdecken, statt drei Wiederholungen der gleichen Rettung.

Warum ist Training nur auf Korrektionen so eine schlechte Idee?

Weil Korrektionen fast ganz die schwierige Mitte der Aufgabe sind. Anfahrt, Ausrichtung und Rückzug fehlen, so dass die Policy das verliert, das sie bereits gut gemacht hat, während es bei dem Teil verbessert, das du fixiert hast. Das Behalten der alten Daten und das Hinzufügen ist der Mechanismus selbst, nicht ein optionales Extra.

Ist Weitermachen von einem Checkpoint eine Fortsetzung des vorherigen Trainings-Laufs?

Nein. Ein Gewichte-Only-Checkpoint stellt Parameter wieder her und nichts anderes: Optimizer-Momente, Lernratenschedule-Position und Datenreihenfolge beginnen frisch. Es ist ein Warm-Start und ein anfänglicher Loss-Spike ist erwartet statt ein Symptom. Schreibe auf, welche der beiden du tatsächlich getan hast, so dass du die Kurve richtig nächste Woche liest.

Was wenn die intervention rate nicht fällt?

Höre auf, Runden hinzuzufügen. Eine flache Rate bedeutet, dass die Korrektionen nicht das lehren, das du denkst. Die üblichen Ursachen sind flussaufwärts: eine Kamera hat sich bewegt, die Korrektionen beginnen zu spät, um Vermeidungsdaten zu sein, Handover-Frames sind im Trainingssatz oder die Aufgabe ist aus den Beobachtungen, die die Policy tatsächlich bekommt, unterdeterminiert.

Keiner von diesen ist ein gelöstes Problem und keiner von diesen ist One-Click. Interaktives Imitationslernen ist ein aktives Forschungs-Gebiet genau deshalb, weil seine Fragen – wann intervenieren, wie das, das der Mensch tat, gewichten, wie viel alte Daten behalten – keine gesiedelten Antworten haben; die Umfrage von Celemin et al. kartiert, was noch offen ist. Das, das die Schleife hat, ist messbare Konvergenz, wenn sie sorgfältig gelaufen wird, auf Hardware, die einige hundert Euro kostet. Friere die Anordnung, interveniere früh, triagiere ehrlich, stelle deliberat zusammen und zeichne die intervention rate jedes Mal auf.

Bereit für hochwertige Robotik-Daten?

AY-Robots verbindet Ihre Roboter mit qualifizierten Operatoren weltweit.

Jetzt starten