ML-Produktionssysteme: Statisches und dynamisches Training im Vergleich

Im Allgemeinen gibt es zwei Möglichkeiten, ein Modell zu trainieren:

  • Beim statischen Training (auch Offlinetraining genannt) wird ein Modell nur einmal trainiert. Sie stellen dieses trainierte Modell dann für eine Weile bereit.
  • Beim dynamischen Training (auch Onlinetraining genannt) wird ein Modell kontinuierlich oder zumindest häufig trainiert. Normalerweise wird das am neuesten trainierte Modell bereitgestellt.
Abbildung 2. Aus dem Rohteig werden drei identische Brotlaibe hergestellt.
Abbildung 2. Statisches Training Einmal trainieren, dasselbe erstellte Modell mehrmals ausliefern (Bilder von Pexels und von fancycrave1)

 

Abbildung 3: Aus dem Rohteig entstehen jedes Mal leicht unterschiedliche Brotlaibe.
Abbildung 3. Dynamisches Training Trainieren Sie das Modell regelmäßig neu und verwenden Sie das jeweils neueste Modell. (Bilder von Pexels und Couleur)

 

Tabelle 1. Hauptvorteile und -nachteile

Statisches Training Dynamisches Training
Vorteile Einfacher. Sie müssen das Modell nur einmal entwickeln und testen. Mehr Anpassungsmöglichkeiten Ihr Modell bleibt auf dem neuesten Stand, wenn sich die Beziehung zwischen Merkmalen und Labels ändert.
Nachteile Manchmal älter. Wenn sich die Beziehung zwischen Features und Labels im Laufe der Zeit ändert, verschlechtern sich die Vorhersagen Ihres Modells. Mehr Arbeit. Sie müssen ständig neue Produkte entwickeln, testen und veröffentlichen.

Wenn sich Ihr Dataset im Laufe der Zeit nicht ändert, wählen Sie das statische Training aus, da es kostengünstiger ist, es zu erstellen und zu pflegen als das dynamische Training. Datasets ändern sich jedoch im Laufe der Zeit, auch solche mit Merkmalen, die Sie für konstant halten, z. B. der Meeresspiegel. Fazit: Auch bei statischem Training müssen Sie Ihre Eingabedaten auf Änderungen überwachen.

Angenommen, Sie haben ein Modell trainiert, das die Wahrscheinlichkeit vorhersagen soll, dass Nutzer Blumen kaufen. Aufgrund von Zeitdruck wird das Modell nur einmal mit einem Dataset zum Kaufverhalten von Blumen im Juli und August trainiert. Das Modell funktioniert mehrere Monate lang gut, macht aber um den Valentinstag herum schlechte Vorhersagen, weil sich das Nutzerverhalten während dieses Blumentags dramatisch ändert.

Weitere Informationen zu statischem und dynamischem Training finden Sie im Kurs ML-Projekte verwalten.

Übungen: Wissen testen

Welche zwei der folgenden Aussagen treffen auf statische (offline) Trainings zu?
Das Modell bleibt auf dem neuesten Stand, wenn neue Daten eintreffen.
Wenn Sie offline trainieren, kann das Modell neue Daten nicht einbeziehen. Das kann zu einer Modellaktualisierung führen, wenn sich die Verteilung, aus der Sie lernen möchten, im Laufe der Zeit ändert.
Sie können das Modell prüfen, bevor Sie es in der Produktion anwenden.
Ja, das Offline-Training bietet ausreichend Gelegenheit, die Modellleistung zu überprüfen, bevor das Modell in die Produktion eingeführt wird.
Bei Offline-Trainings müssen Trainingsjobs weniger überwacht werden als bei Online-Trainings.
Im Allgemeinen sind die Überwachungsanforderungen beim Training bei Offlinetraining weniger anspruchsvoll, sodass Sie viele Produktionsüberlegungen außen vor lassen können. Je häufiger Sie Ihr Modell trainieren, desto mehr müssen Sie in die Überwachung investieren. Außerdem sollten Sie regelmäßig prüfen, ob Änderungen an Ihrem Code (und seinen Abhängigkeiten) sich negativ auf die Modellqualität auswirken.
Bei der Inferenz müssen die Eingabedaten nur sehr wenig überwacht werden.
Entgegen der Intuition müssen Sie die Eingabedaten zum Zeitpunkt der Auslieferung überwachen. Wenn sich die Eingabeverteilungen ändern, werden die Vorhersagen unseres Modells möglicherweise unzuverlässig. Angenommen, ein Modell, das nur mit Bekleidungsdaten aus der Sommersaison trainiert wurde, wird plötzlich verwendet, um das Kaufverhalten von Bekleidung im Winter vorherzusagen.
Welche der folgenden Aussagen trifft auf dynamische (Online-)Schulungen zu?
Das Modell bleibt auf dem neuesten Stand, wenn neue Daten eintreffen.
Das ist der Hauptvorteil des Onlinetrainings: Sie können viele Probleme mit veralteten Daten vermeiden, indem Sie das Modell mit neuen Daten trainieren, sobald diese verfügbar sind.
Die Überwachung von Trainingsjobs ist nur sehr geringfügig erforderlich.
Tatsächlich müssen Sie Trainingsjobs kontinuierlich überwachen, um sicherzustellen, dass sie fehlerfrei und wie vorgesehen funktionieren. Außerdem benötigen Sie eine unterstützende Infrastruktur, z. B. die Möglichkeit, ein Modell auf einen vorherigen Snapshot zurückzusetzen, falls beim Training etwas schiefgeht, z. B. ein fehlerhafter Job oder beschädigte Eingabedaten.
Bei der Inferenz müssen die Eingabedaten nur sehr wenig überwacht werden.
Genau wie bei einem statischen, offline verfügbaren Modell ist es auch wichtig, die Eingaben für die dynamisch aktualisierten Modelle zu überwachen. Sie sind wahrscheinlich nicht von großen saisonalen Effekten bedroht, aber plötzliche, große Änderungen an Eingaben (z. B. Ausfall einer vorgelagerten Datenquelle) können dennoch zu unzuverlässigen Prognosen führen.