ACT-Politik erklärt: Aktion mit Transformatoren für das Lernen von Robotern
Was ist die ACT-Politik? Ein tiefes Eintauchen in die Action Chunking mit Transformern: Architektur, CVAE-Schulung, Hyperparameterleitungen, Vergleich mit Diffusionspolitik, Ableitungsbenchmarks und wie man ACT mit RCSV-Daten trainiert.
Teil von: [Handbuch zum Nachbilden]
ACT
Was ist ACT?
ACT ist ein Imitationslernalgorithmus, der für feine Manipulationsarbeiten entwickelt wurde, bei denen der Roboter reibungslose, koordinierte Bewegungen auf der Grundlage visueller Beobachtungen durchführen muss. Der Roboter führt dieses Stück aus und stellt dann die Richtlinie für das nächste Stück erneut an. Dieses Prognose-Mehr-Schritte-Fahr-Design ist das definierende Merkmal von ACT und die Quelle der meisten seiner Vorteile gegenüber einfacherem Verhaltenskloning.
ACT wurde im Rahmen des ALOHA-Bimanual-Manipulationssystems eingeführt und zeigte Erfolg bei Aufgaben, die bisher für das Imitationslernen außer Reichweite gehalten wurden: Schleifen einer Batterie, Öffnen einer Zipsäcke, Nadelnthreadung. Seine Kerninsigten
Wie die Aktionsverstümmelung funktioniert
Standard-Verhaltenskloning (BC) bildet eine Politik aus, um die nächste einzelne Aktion angesichts der aktuellen Beobachtung vorherzusagen. Dieser Zusammenschlussfehler ist der zentrale Fehlermodus der naiven BC bei feinen Manipulationsarbeiten. Bei einer 200-Schritt-Manipulationsbahn ergibt sich sogar eine Fehlerrate von 1% pro Schritt auf ~87% Wahrscheinlichkeit einer Abweichung von der Demonstrationsverteilung durch Schritt 200.
Das Aktions-Chunking bricht diesen Zyklus durch die Vorhersage einer Sequenz von k zukünftigen Aktionen
Zeitliche Zusammenstellung
ACT führt in der Praxis nicht den vollen Teil vor der Wiederverfragung aus. Stattdessen wird jeder m-Schritt (wo m < k) wiederverfragt, wodurch sich Aktionsstücke überlappen. Für jeden zukünftigen Zeitschritt liefern mehrere Stücke Vorhersagen, und diese Vorhersagen werden mit exponentiell zerfallenden Gewichten gemessen (kürztere Stücke mit höherem Gewicht). Diese zeitliche Zusammenstellung erleichtert die Ausführung weiter und reduziert die Nervenkitzel an den Grenzen zwischen den Stücken.
Der Zusammenbau des Gewichtsplanes verwendet einen exponentiellen Verfall: Für eine Vorhersage eines Stückes, der vor t Schritten erzeugt wurde, ist das Gewicht
** Warum nicht einfach die Stückgröße erhöhen?** Größere Stückgrößen bedeuten weniger Entscheidungspunkte, aber auch weniger Reaktivität gegenüber Umgebungsänderungen (Objekt bewegt, Hindernis erschien). Die optimale Stückgröße balanciert Glattigkeit gegen Reaktivität. Für die meisten Tischplattenmanipulationen ist k=50
ACT Architektur: Das ganze Bild
ACT verwendet eine CVAE (Conditional Variational Autoencoder) Architektur mit einem Transformator-Rückgrat.
CVAE-Encoder (nur für Ausbildung)
Während der Ausbildung verarbeitet ein Encoder die gesamte Demonstrationsbahn
Der Encoder ist ein Transformator, der über die vollständige Aktionssequenz (alle k Grundwahrheitsaktionen im Teil) und die aktuelle Beobachtung auftritt. Er liefert eine Mittel- und Logvarianz, die eine Gaussische Verteilung parametriert, von der z durch den Reparameterierungs-Trick geprobt wird. Der KL-Divergenzverlust (gewichtet durch Beta, typischerweise 10
Bei der Schlussfolgerung wird z auf Null (Durchschnitt des Vorrangs) gesetzt, was die Politik angesichts der Beobachtung deterministisch macht. Dies ist eine bewusste Entwurfswahl: Bei der Bereitstellung wollen Sie ein konsistentes, vorhersehbares Verhalten, nicht zufälliges Proben aus der gelernten Stilverteilung. Die CVAE-Struktur ist lediglich eine Ausbildungshilfe, die den Modus-Kollaps verhindert
Der Transformator-Decoder (Schulung + Inferenz)
Der Decoder nimmt drei Eingänge ein: das latente z (oder null bei der Ableitung), die aktuellen Beobachtungs-Token (aus dem Sehrückgrat + proprioception) und eine Reihe von k lernbaren Positionsfragen (eine pro Aktion im Stück). Der Decoder verwendet Standard Transformator-Cross-Attention: Die Positionsfragen betreuen die Beobachtungs-Token und z, die k-Aktionsvorhersagen parallel erzeugen.
Architekturdetails aus der ursprünglichen Umsetzung:
- Transformator-Schichten: 4 Encoder-Schichten, 7 Decoder-Schichten (willentlich asymmetrisch
Der Decoder ist tiefer, weil er mehr Arbeit macht) - Versteckte Dimension: 512
- Aufmerksamkeitspunkte: 8
- Foodforward-Dimension: 2048
- Gesamtparameter: ~40M (ohne Sehrückgrat)
Das Rückgrat der Vision
Das Vision-Rückgrat ist typischerweise ein ResNet-18, das jedes Kamera-Blick unabhängig verarbeitet. Jedes Kamera-Bild (480×640 RGB) wird durch das ResNet verarbeitet, um eine Feature-Karte (15×20×512) zu erstellen, die in 300 Token pro Kamera abgeflacht wird. Mit 2
Mehrere Kameraansichten
Ausbildungsausschuß: Ziel der CVAE
Der Trainingsabbau besteht aus zwei Komponenten:
# ACT training loss (simplified PyTorch)
def act_loss(model, batch):
images = batch["images"] # (B, n_cameras, 3, H, W)
joint_states = batch["qpos"] # (B, n_joints)
actions = batch["actions"] # (B, chunk_size, action_dim)
# Encoder: process full trajectory -> latent z
z_mean, z_logvar = model.encoder(images, joint_states, actions)
z = reparameterize(z_mean, z_logvar) # (B, latent_dim)
# Decoder: predict action chunk from observation + z
predicted_actions = model.decoder(images, joint_states, z) # (B, chunk_size, action_dim)
# Reconstruction loss: L1 on predicted actions
reconstruction = F.l1_loss(predicted_actions, actions)
# KL divergence: regularize z toward N(0, I)
kl_div = -0.5 * torch.mean(
1 + z_logvar - z_mean.pow(2) - z_logvar.exp()
)
# Total loss
beta = 10.0 # KL weight - tune this carefully
total_loss = reconstruction + beta * kl_div
return total_loss, {"recon": reconstruction.item(), "kl": kl_div.item()}
Der Beta-Hyperparameter steuert das Gleichgewicht zwischen Rekonstruktionsgenauigkeit und latenter Raumregularität. Zu niedrig (beta < 1): das Modell speichert Demonstrationen, aber z wird sinnlos, und Abschluss mit z = 0 erzeugt Müll. Zu hoch (beta > 100): das Modell ignoriert z vollständig und verliert die Fähigkeit, mehrmodal Demonstrationen zu verarbeiten. Der süße Punkt ist beta = 10
Überparameter-Leitfaden
ACT hat weniger Hyperparameter als die meisten Deep RL Algorithmen, aber die, die es hat, sind von Bedeutung. Hier sind Anleitungen aus unserem Erfahrungs-Training ACT zu 20+ Manipulations-Aufgaben bei RCSV:
| Hyperparameter | Default | Range to Search | Effect of Increasing | When to Increase |
|---|---|---|---|---|
| Chunk size (k) | 100 | 20–200 | Smoother trajectories, less reactive | Smooth tasks (wiping, pouring); decrease for reactive tasks |
| Latent dim (z) | 32 | 16–64 | More expressive style capture | High demonstration variance (different operators, strategies) |
| KL weight (beta) | 10 | 1–100 | Stronger regularization, less memorization | Small datasets (<50 demos) to prevent overfitting |
| Learning rate | 1e-5 | 5e-6–5e-5 | Faster convergence, risk of instability | Large datasets (>200 demos); use warmup |
| Temporal ensemble temp | 10 | 5–50 | Slower blending, more inertia | Smoother tasks; decrease for faster reactivity |
| Number of cameras | 2 | 1–4 | Richer spatial information, more compute | 3D reasoning tasks (stacking, insertion) |
| Backbone | ResNet-18 | ResNet-18/34/50 | Better visual features, more compute | Visually complex scenes (cluttered, varying lighting) |
| Training epochs | 3000 | 1000–8000 | Better fit, risk of overfitting | More demos or more complex tasks |
Teilgröße ist der wichtigste Hyperparameter. Wenn Sie nur eine Sache tun, tun Sie die Teilgröße. Eine Teilgröße, die für Ihre Aufgabe zu groß ist, führt dazu, dass der Roboter sich an Pläne "verpflichten" wird, die bereits veraltet sind, wenn sie die Ausführung beenden. Beginnen Sie bei k=50 für eine neue Aufgabe und passen Sie sich an: Wenn der Roboter an den Stückgrenzen zerstreckend ist, erhöhen Sie k; wenn der Roboter nicht auf Umweltschutzänderungen reagiert, verringern Sie k.
ACT vs. Diffusionspolitik: Detaillierter Vergleich
Bei den ursprünglichen ALOHA-Aufgaben erreichte ACT eine Erfolgsrate von 80
| Dimension | ACT | Diffusion Policy | Verdict |
|---|---|---|---|
| Inference latency (50Hz control) | 2–5ms per chunk | 50–200ms per chunk (DDPM); 10–30ms (DDIM) | ACT wins by 5–10x |
| Multi-modality handling | CVAE latent (limited) | Full diffusion (excellent) | Diffusion wins |
| Data efficiency (<50 demos) | Good | Moderate | ACT slightly better |
| Data efficiency (>200 demos) | Good | Excellent | Diffusion slightly better |
| Training time (same data) | ~8 hours (A100) | ~12 hours (A100) | ACT faster |
| Trajektorie smoothness | Excellent (temporal ensembling) | Very good | ACT slightly better |
| Präzision tasks (<1mm tolerance) | Good | Excellent | Diffusion wins |
| Bimanual coordination | Excellent (designed for ALOHA) | Good | ACT wins |
| Model size | ~40M params | ~80M params | ACT smaller |
| Edge deployment (Jetson AGX Orin) | ~25 Hz | ~5 Hz (DDPM); ~12 Hz (DDIM) | ACT much better |
| Open-source implementations | LeRobot, original repo | LeRobot, original repo | Tie |
Wann ACT zu verwenden: Wenn die Schnelligkeit der Ableitung (Randverwendung, hohe Steuerungsraten) wichtig ist, wenn Sie begrenzte Daten (<100 Demo) haben, für zweimannige Aufgaben oder wenn Sie die einfachste Trainingsleitung benötigen. ACT ist auch die bessere Wahl, wenn Sie auf computerbeschränkter Hardware wie Jetson Orin Nano einsetzen, wo die iterative Verkennung der Diffusion Policy unerschütterlich langsam wird.
Wenn Sie die Diffusionspolitik verwenden: Wenn Ihre Demonstrationen eine erhebliche Multimodalität (mehrere gültige Strategien für die gleiche Aufgabe) haben, für Präzisionsmontage-Aufgaben, bei denen die Submillimetergenauigkeit wichtig ist, oder wenn Sie über reichliche Daten (> 200 Demo) verfügen und sich die Schulungs- und Schlussfolgerungsrechnung leisten können. Die Fähigkeit der Diffusion Policy, die vollständige Verteilung gültiger Aktionen zu darstellen (statt über das CVAE auf eine Mittelzahl zu fallen), gibt ihr einen Vorteil bei Aufgaben, bei denen es wirklich mehrere korrekte Ansätze gibt.
Inferenzgeschwindigkeits-Benchmarks
Wir haben die ACT-Abschlussung auf allen für die Roboterteilung relevanten Hardware-Plattformen verglichen. Alle Messungen verwenden die Standard-ACT-Architektur (ResNet-18-Backbone, 2 Kameras, 7-DOF-Aktionsraum, Stückgröße 50):
| Hardware | ACT Inference (ms) | ACT Throughput (Hz) | DP-DDIM Inference (ms) | DP-DDIM Throughput (Hz) | Notes |
|---|---|---|---|---|---|
| NVIDIA A100 (80GB) | 1.8 | 555 | 12 | 83 | Datacenter training/inference |
| NVIDIA RTX 4090 | 2.5 | 400 | 15 | 67 | Desktop workstation |
| NVIDIA RTX 4070 | 4.2 | 238 | 25 | 40 | Budget desktop |
| Jetson AGX Orin (64GB) | 12 | 83 | 45 | 22 | Onboard robot compute |
| Jetson Orin Nano (8GB) | 40 | 25 | 180 | 5.5 | Min viable edge |
| Jetson Orin NX (16GB) | 22 | 45 | 85 | 12 | Mid-range edge |
| Apple M3 Pro (18GB) | 8 | 125 | 35 | 28 | Development laptop |
Die kritische Schwelle für die Echtzeit-Manipulation-Steuerung beträgt 20 Hz (50 ms pro Schlussfolgerung). ACT erfüllt dies auf jeder von uns getesteten Plattform mit Ausnahme der low-end Jetson-Konfiguration (Orin Nano verwaltet immer noch 25 Hz). Die Diffusion Policy mit DDIM-Sampling erfüllt die Schwelle auf Desktop-GPUs und AGX Orin, fällt aber unterhalb von Orin Nano und NX. Für Teams, die auf Edge-Hardware einsetzen, ist ACT die klare Wahl.
Datenanforderungen und die bestehenden Daten
ACT funktioniert gut mit 50
Mindestverfügbare Datensätze nach Aufgabenkomplexität
- ** Einfache Auswahl und Ortung (ein Objekt, festgelegene Lage):** 20
30 Demo. ACT lernt dies zuverlässig mit minimalen Daten. - Pick-and-place mit Posenvariation (Zufallsobjektposition): 50
80 Demo-Demo. - Mehrstufige Manipulation (Auswahl, Transport, Ort mit Präzision): 100
150 Demo-Spielen. - Bimanuelle Koordinierung (zwei Arme, abhängige Bewegungen): 150
250 Demo. - ** Kontaktreiche Montage (Einsetzen, Schrauben, Schnappen):** 200
400 Demo-Phasen.
Qualitätsanforderungen
Die Demonstrationen sollten reibungslos und zielgerichtet sein. Die ACT-Politik wird lernen, was für Bewegungsschemata die Daten enthalten, einschließlich Zögerungen, Korrekturen und suboptimale Ansätze. Spezifische Qualitätskriterien:
- ** Keine Pausen:** Demonstrationen sollten kontinuierlich fließen. Lange Pausen (> 0,5 Sekunden ohne Bewegung) verwirren die Aktionsstückzahlung
die Politik lernt, "nichts tun" -Stückteile vorherzusagen. - Konsistente Geschwindigkeit: Die Betreiber sollten in einem konsistenten Tempo ausführen. Durch die Mischung schneller und langsamer Demonstrationen innerhalb eines Datenmengen wird das CVAE dazu gezwungen, latente Kapazitätsmodellierungsgeschwindigkeitsvariationen anstelle von Aufgabenrelevanten Variationen zu verschwenden.
- Saubere Beginn/Ende: Jede Episode sollte von einer ähnlichen neutralen Pose beginnen und mit dem Griff klar in der Endkonfiguration enden.
- ** Allein Erfolg:** Entfernen Sie alle fehlgeschlagenen Demonstrationen. Im Gegensatz zu einigen RL-Ansätzen, die aus den Fehlern lernen können, behandelt ACT alle Trainingsdaten als Expertendemonstrationen, die nachgeschaut werden müssen.
Die Kamera-Konsistenz ist auch von entscheidender Bedeutung. Wenn sich die Kamera-Einrichtung zwischen den Aufnahmesitzungen ändert, werden die visuellen Funktionen, die die Politik gelernt hat, nicht mehr mit dem Einsatz-Setup übereinstimmen. Verwenden Sie physische Montage statt flexibler Arme und protokollieren Sie die Kamera-Kalibrierungsparameter mit jedem Datensatz.
Schritt für Schritt Schulungsverfahren
Hier ist das von Ende zu Ende Training, das wir bei RCSV für neue ACT-Politiken verwenden:
- Datenerhebung: Aufnahme von Demonstrationen mit Teleoperation mit der Führungskräfte-Follower-Einstellung. 50 Hz-Steuerfrequenz, 2
3 Kameras, synchronisierte Aufnahme. Export in LeRobot HDF5-Format. - Datenvalidierung: Laufen Sie den RCSV-Datenqualitätsprüfer aus: Überprüfen Sie, ob die Episodenlängen innerhalb von 2x voneinander entfernt sind, keine Kamerarahmenfallen, gemeinsame Positionen innerhalb von Grenzen, Erfolgsetiketten überprüft.
- ** Split:** 90/10 Zug/Gegebenheitssplit, gegebenenfalls nach Objektkonfiguration geschichtlich.
- Training: Verwenden Sie das LeRobot ACT-Training-Skript mit den Hyperparametern der obigen Tabelle.
- Selektion des Checkpoints: NICHT den letzten Checkpoint verwenden. Wählen Sie den Checkpoint mit dem geringsten Validierungsverlust aus. Überpassungen sind als Abweichung zwischen Training- und Validierungsverlustkurven sichtbar, in der Regel nach Epoche 3000
5,000, je nach Datensatzgröße. - Sim-Evaluierung (falls verfügbar): Führen Sie 100 Episoden in Simulation mit dem gewählten Checkpoint aus. Wenn die Erfolgsrate < 60% beträgt, tun Sie Hyperparameter (Zuerst die Stückgröße, dann die Beta, dann die Lernrate) wieder.
- Echte Bewertung: 20 Episoden auf echter Hardware ausführen. Vergleichen Sie mit der Sim-Evaluierung. Ein Abstand von >20% deutet auf eine Mischstellung der Kalibrierung der Kamera oder Probleme mit der Skalierung des Aktionsraums hin.
# Full ACT training command via LeRobot
python lerobot/scripts/train.py \
--policy.name=act \
--dataset.repo_id=svrc/openarm_pick_place \
--policy.chunk_size=50 \
--policy.n_obs_steps=1 \
--policy.dim_model=512 \
--policy.n_heads=8 \
--policy.n_encoder_layers=4 \
--policy.n_decoder_layers=7 \
--policy.latent_dim=32 \
--policy.kl_weight=10.0 \
--training.learning_rate=1e-5 \
--training.batch_size=8 \
--training.num_epochs=5000 \
--training.eval_freq=500 \
--training.save_freq=1000 \
--device=cuda \
--output_dir=outputs/act_openarm_pick_place/
Häufige Ausbildungsfehler und -lösungen
- Politiker-Ausgänge null/konstante Aktionen: KL-Gewicht (beta) ist zu hoch. Das Modell ignoriert die Beobachtung und liefert die mittlere Aktion. Verringern Sie die Beta um 5
10x. - **Temporal-Einsammeltemperatur ist zu niedrig (Blending ist zu scharf). Steigen Sie die Temperatur von 10 auf 20
30. Überprüfen Sie auch, ob Ihre Ausführungsschleife überlappende Stück richtig implementiert. - Gute Ausbildungsverlust, schlechte reale Leistung: Kamera-Unvereinbarkeit zwischen Ausbildungs- und Einsatz. Überprüfen: Sind die Bilder auf die gleiche Weise umgestaltet? Ist die Kamera FOV identisch? Sind die Ernteregionen konsistent?
- ** Arbeitet für die ersten 2 Sekunden, dann dreht:** Die Größe der Teile ist zu groß im Verhältnis zur Aufgabendynamik.
- Unverlässig zwischen den Laufen: Nicht genug Demonstrationen. Mit <30 Demonstrationen ist die Leistung von ACT sehr empfindlich auf die Zug-/Waltspaltung.
- KL-Divergenz kollabiert auf Null: Beta ist zu niedrig. Der Codierer kodiert alle Informationen in z, und der Decodierer lernt, Beobachtungen zu ignorieren. Steigen Sie die Beta, bis KL sich auf 0,5
5,0 stabilisiert.
ACT Varianten und Erweiterungen
Seit dem ursprünglichen ACT-Papier sind mehrere Erweiterungen erschienen:
- ACT+ (LeRobot): Fügt die proprioceptive Geschichte (letzte 2
5 gemeinsame Zustände) zur Beobachtung hinzu, wodurch die Geschwindigkeitsschätzung ohne explizite Geschwindigkeitsberechnung verbessert wird. - ACT mit Diffusion (ACT-DP): Ersetzt das CVAE durch einen Diffusions-Aktionskopf, wobei die vorhersagende Struktur in Stückzügen erhalten bleibt. Kombiniert die Glattigkeit des ACT mit dem Multi-Modalitäts-Handling der Diffusionspolitik. Das Training ist 50% langsamer, aber behandelt mehrmodalige Demonstrationen besser.
- ACT mit Sprache (ACT-L): Fügt eine Sprache hinzu, die in die Beobachtungszeichen eingebettet ist (von CLIP oder T5), wodurch eine sprachbedingte Aufgabenbeschreibung möglich wird. "Pick up the red cup" vs. "pick up the blue cup" kann durch eine einzige Politik behandelt werden.
- Mobile ALOHA ACT: Erweiterte ACT um eine mobile Basis (2D-Geschwindigkeit) und zwei Arme (2 x 7-DOF) gemeinsam zu steuern, um einen Gesamtbewegungsraum von 16 DOF zu erreichen.
Ausbildung von ACT mit RCSV-Daten
Die Datenplattform von RCSV exportiert Datensätze im LeRobot-kompatiblen HDF5-Format, das das Standard-Eingabeformat für den Open-Source-ACT-Schulcodes ist. Nach dem Herunterladen Ihres Datensatzes erfordert das Training einer Basis-ACT-Politik eine GPU mit mindestens 16 GB VRAM und etwa 8 Stunden Training für eine einzelne Aufgabe. RCSV-Ingenieurunterstützung ist zur Verfügung, um Teams bei der Konfiguration von Trainingsläufen, der Einstellung von Teilgrößen und Lernrate und der Bewertung der Politikleistung zu helfen.
Für Teams ohne GPU-Infrastruktur bietet RCSV Managed Training Runes auf A100-Hardware an: Sie liefern den Datensatz, wir geben einen geschulten Checkpoint mit Auswertungsmetriken zurück.
Für Hardware, um Ihre eigenen Daten zu sammeln, siehe unseren [Hardware-Katalog]
Verwandte Lesungen
Verwandte: LeRobot Guide · Mobile ALOHA Setup · Gemäße Fehler beim Imitationslernen · Cross-Embodyment Training · Start mit der Teleoperation · Robotik Glossarie







