Behavioral Cloning
Beim Imitationslernen wird eine Steuerungsstrategie mit überwachtem Lernen darauf trainiert, die Demonstrationen von Experten nachzuahmen. So funktioniert es, warum sich Fehler aufaddieren und wie DAgger das Problem behebt.
Verhaltensklonen (BC) ist die einfachste Form des Imitationslernens: Ein Agent lernt zu handeln, indem er mit gewöhnlichem überwachtem Lernen eine Richtlinie trainiert, die für jede Situation einer aufgezeichneten Demonstration die vom Experten ausgeführte Aktion vorhersagt. Die Trainingsdaten bestehen aus Beobachtungs-Aktions-Paaren, etwa Kameraaufnahmen zusammen mit dem Lenkwinkel eines Fahrers oder Gelenkmessungen eines Roboters zusammen mit den Befehlen eines Teleoperators. Die Richtlinie wird mit einem Regressionsverlust für kontinuierliche Aktionen oder einem Klassifikationsverlust für diskrete Aktionen angepasst. Verhaltensklonen benötigt weder eine Belohnungsfunktion noch eine Interaktion mit der Umgebung während des Trainings. Daher ist es der übliche Ausgangspunkt, um Robotern, Fahrzeugen und Software-KI-Agenten menschliche Demonstrationen beizubringen.
Ursprünge und klassische Beispiele#
Die Bezeichnung geht auf Arbeiten von Donald Michie und Kollegen um 1990 zur Rekonstruktion menschlicher Steuerungsfähigkeiten zurück. Die bekannteste frühe Demonstration war „Learning to Fly“ von Claude Sammut und Kollegen aus dem Jahr 1992: Sie zeichneten die Steuerungsaktionen von Personen auf, die einen Flugsimulator flogen, und leiteten aus den Aufzeichnungen Autopiloten auf Basis von Entscheidungsbäumen ab. Dean Pomerleaus ALVINN an der Carnegie Mellon hatte bereits 1989 gezeigt, dass ein kleines neuronales Netz ein Testfahrzeug anhand von Kamerabildern lenken konnte.
Das Ende-zu-Ende-Fahrsystem von NVIDIA aus dem Jahr 2016 trainierte ein faltungsneuronales Netz mit etwa 72 Stunden menschlicher Fahrdaten, um unverarbeitete Pixel einer nach vorn gerichteten Kamera direkt auf Lenkbefehle abzubilden; bei einer typischen Fahrt in Monmouth County, New Jersey, lenkte es etwa 98 % der Zeit selbstständig. Bei diskreten Aktionen entspricht Verhaltensklonen der Bildklassifikation: Ein YOLO26-Klassifikationsmodell von Ultralytics, das mit Kamerabildern trainiert wurde, die nach der jeweiligen Aktion des Fahrers – etwa links, geradeaus und rechts – in je einem eigenen Ordner sortiert waren, gibt die nachgeahmte Aktion als Top-1-Klasse aus.
Das Problem der sich aufaddierenden Fehler#
Während des Trainings sieht die Richtlinie nur die Zustände, die der Experte besucht hat. Beim Einsatz arbeitet sie in einer geschlossenen Regelkreisschleife. Jeder kleine Fehler führt sie daher in einen Zustand, der den Demonstrationen leicht unähnlich ist und in dem sie mit höherer Wahrscheinlichkeit erneut einen Fehler macht. So summieren sich die Fehler entlang der Trajektorie. Diese Abweichung zwischen Trainings- und Einsatzzuständen ist eine Form von Kovariatenverschiebung. Stéphane Ross und Drew Bagnell zeigten 2010, dass die erwarteten Kosten einer geklonten Richtlinie mit dem Quadrat des Aufgabenhorizonts wachsen können, selbst wenn der Fehler pro Schritt klein ist. DAgger (Dataset Aggregation) von Ross, Geoffrey Gordon und Bagnell aus dem Jahr 2011 verringerte das Wachstum auf linear: Die gelernte Richtlinie handelt, der Experte kennzeichnet die besuchten Zustände mit den richtigen Aktionen, und die Richtlinie wird mit allen bis dahin gesammelten Kennzeichnungen neu trainiert.
Dieses Beispiel klont einen von Hand abgestimmten Regler für die Aufgabe Gymnasium CartPole, bei der eine Stange bis zu 500 Schritte lang auf einem beweglichen Wagen im Gleichgewicht gehalten werden muss, und führt anschließend zwei DAgger-Runden durch:
import gymnasium as gym
import numpy as np
from sklearn.tree import DecisionTreeClassifier
env = gym.make("CartPole-v1")
expert = lambda obs: int(obs[2] + 0.5 * obs[3] > 0) # push toward the side the pole leans and falls
def rollout(policy, seed):
"""Run one episode with a policy and return the states it visited."""
obs, _ = env.reset(seed=seed)
states, done = [], False
while not done:
states.append(obs)
obs, _, terminated, truncated, _ = env.step(policy(obs))
done = terminated or truncated
return states
states = rollout(expert, seed=0) # one expert demonstration
for i in range(3):
# Behavioral cloning: fit a classifier from states to the expert's actions
clone = DecisionTreeClassifier(max_depth=5, random_state=0).fit(states, [expert(s) for s in states])
policy = lambda obs: int(clone.predict(obs[None])[0])
steps = np.mean([len(rollout(policy, seed)) for seed in range(100, 110)])
print(f"Round {i}: {len(states)} labeled states, clone balances for {steps:.0f} steps")
states += rollout(policy, seed=i + 1) # DAgger: the expert labels the states the clone visitsRunde 0 ist einfaches Verhaltensklonen. Mit einer einzigen 500-Schritte-Demonstration eines Experten trainiert, der die Stange alle 500 Schritte im Gleichgewicht hält, schafft es der Klon in neuen Episoden durchschnittlich 30 Schritte. In Runde 1 kommen die 23 Zustände hinzu, die der Klon aus Runde 0 in einer weiteren Episode besucht hat und die vom Experten gekennzeichnet wurden. Dadurch steigt der Durchschnitt auf 135 Schritte. Nach weiteren 70 solcher Zustände in Runde 2 hält der Klon die Stange die vollen 500 Schritte im Gleichgewicht.
Andere Verbesserungen verändern die Demonstrationen selbst. Das Fahrsystem von NVIDIA ergänzte Bilder der linken und rechten Kameras sowie künstliche Verschiebungen und Drehungen der Kamerasicht. Jede Aufnahme wurde mit der Lenkbewegung beschriftet, die das Auto innerhalb von zwei Sekunden zurück in die Spurmitte bringen würde. Diese Form der Datenerweiterung lehrt das Korrekturverhalten. DART fügt den Aktionen des Demonstrators während der Aufzeichnung Rauschen hinzu, sodass die Daten auch Korrekturen kleiner Abweichungen durch den Experten enthalten. Beim Bündeln von Aktionen werden mehrere zukünftige Aktionen auf einmal vorhergesagt. Das verkürzt den effektiven Horizont, über den sich Fehler aufsummieren. Die ACT-Richtlinie erlernte fein abgestimmte beidhändige Aufgaben, etwa das Einsetzen einer Batterie, mit einer Erfolgsquote von 80 bis 90 % anhand von 10 Minuten Demonstrationen.
Multimodale Demonstrationen und moderne Richtlinien#
Wenn Demonstratoren dieselbe Situation auf unterschiedliche Weise lösen, etwa indem sie links oder rechts an einem Hindernis vorbeifahren, sagt eine Regressionsrichtlinie den Durchschnitt ihrer Aktionen voraus. Dieser entspricht möglicherweise keiner tatsächlich ausgeführten Aktion. RT-1 von Google, ein mit Verhaltensklonen anhand von 130.000 Roboterdemonstrationen trainierter Transformer, kann mehrere Aktionsvarianten darstellen, da er jede Aktionsdimension in 256 Wertebereiche unterteilt und sie als Token vorhersagt. Diffusionsrichtlinien modellieren die vollständige Aktionsverteilung, indem sie zufälliges Rauschen entrauschen, und haben sich bei der Manipulation in der verkörperten KI als gängige Wahl etabliert.
Sprachmodelle werden auf dieselbe Weise trainiert. Überwachtes Feinabstimmen eines großen Sprachmodells (LLM) anhand von Antworten aus menschlicher Feder, der Kern des Instruktionstunings, ist Verhaltensklonen mit Text. Im WebGPT-Artikel von OpenAI wurde genau diese Bezeichnung für die Phase vor dem bestärkenden Lernen aus menschlichem Feedback (RLHF) verwendet.
Verhaltensklonen im Vergleich zu verwandten Begriffen#
- Bestärkendes Lernen: Lernt durch Versuch und Irrtum anhand eines Belohnungssignals und kann den Demonstrator übertreffen – anders als Verhaltensklonen. Offline-RL-Verfahren wie TD3+BC ergänzen einen Verhaltensklon-Term, damit die gelernte Richtlinie nahe an den aufgezeichneten Daten bleibt.
- Inverses bestärkendes Lernen: Leitet die Belohnungsfunktion ab, die die Demonstrationen erklärt, und optimiert sie anschließend. Beim generativen adversarialen Imitationslernen (GAIL) wird eine Richtlinie so lange trainiert, bis ein Diskriminator ihr Verhalten nicht mehr vom Verhalten des Experten unterscheiden kann.
- Wissensdestillation: Trainiert ein kleines Schülermodell darauf, die Ausgaben eines größeren Lehrermodells nachzubilden. Das Klonen einer trainierten Richtlinie statt eines Menschen wird als Destillation von Richtlinien bezeichnet.










