ML-Produktionssysteme: Statisches und dynamisches Training im Vergleich
Im Großen und Ganzen gibt es zwei Möglichkeiten, ein Modell zu trainieren:
Statisches Training (auch
Offline-Training) bedeutet, dass Sie ein Modell
nur einmal. Dieses trainierte Modell wird dann eine Zeit lang bereitgestellt.
Dynamic Training (auch
Online-Training) bedeutet, dass Sie ein Modell trainieren,
kontinuierlich oder zumindest häufig. Sie liefern in der Regel die meisten
ein kürzlich trainiertes Modell.
Tabelle 1. Primäre Vor- und Nachteile.
Statisches Training
Dynamisches Training
Vorteile
Einfacher Sie müssen das Modell nur einmal entwickeln und testen.
Mehr Anpassungsmöglichkeiten Ihr Modell kann mit allen
Änderungen an der Beziehung zwischen
Merkmalen und Labels.
Nachteile
Manchmal schleppend. Wenn die Beziehung zwischen Funktionen und
ändert sich die Beschriftung
im Laufe der Zeit, verschlechtert sich die Vorhersage Ihres Modells.
Mehr Arbeit Sie müssen ein neues Produkt erstellen, testen und veröffentlichen
immer und überall.
Wenn sich Ihr Dataset im Laufe der Zeit nicht ändert, sollten Sie statisches Training wählen.
ist die Erstellung und Verwaltung kostengünstiger als
dynamisches Training. Datasets
ändern sich im Laufe der Zeit, auch bei solchen mit Funktionen, die
zum Beispiel den Meeresspiegel. Fazit: Selbst bei statischen Tests
müssen Sie Ihre Eingabedaten trotzdem
auf Änderungen überwachen.
Stellen Sie sich beispielsweise ein Modell vor, das trainiert wurde, um die Wahrscheinlichkeit vorherzusagen,
Blumen kaufen. Aufgrund von Zeitdruck wird das Modell nur einmal trainiert
mithilfe eines Datasets zum Kaufverhalten von Blumen im Juli und August.
Das Modell funktioniert mehrere Monate lang gut, trifft dann aber schlimme Vorhersagen.
um den Valentinstag herum, weil
das Nutzerverhalten während der Feiertagssaison drastisch verändert.
Eine detailliertere Beschreibung des statischen und dynamischen Trainings finden Sie in der
ML-Projekte verwalten
.
Übungen: Wissen testen
Welche zwei der folgenden Aussagen treffen auf
statisches (Offline-)Training?
Das Modell bleibt immer auf dem neuesten Stand, wenn neue Daten eingehen.
Wenn Sie offline trainieren, hat das Modell keine Möglichkeit,
neue Daten zu integrieren, sobald sie eintreffen. Dies kann zu einem Modell
wenn die Verteilung, aus der Sie lernen möchten,
im Laufe der Zeit.
Sie können das Modell prüfen, bevor Sie es in der Produktion anwenden.
Ja, Offline-Training bietet ausreichend Gelegenheit, das Modell zu verifizieren.
bevor Sie das Modell
in der Produktion einführen.
Für das Offlinetraining ist weniger Monitoring von Trainingsjobs erforderlich
als Onlineschulungen.
Im Allgemeinen sind die Monitoringanforderungen während des Trainings geringer
für Offline-Training, was Sie von vielen Produktions-
zu berücksichtigen. Je häufiger Sie Ihr Modell jedoch trainieren,
desto höher sind die
Investitionen in die Überwachung. Sie werden
Sie sollten außerdem regelmäßig prüfen, ob Änderungen am Code
(und deren Abhängigkeiten) sich nicht negativ auf die Modellqualität auswirken.
An dieser Stelle muss nur sehr wenig
Eingabedaten überwacht werden.
die Inferenzzeit.
Konkret bedeutet das, dass Sie die Eingabedaten
bei der Auslieferung überwachen müssen,
. Wenn sich die Eingabeverteilungen ändern,
Vorhersagen unzuverlässig werden. Stellen Sie sich zum Beispiel ein Modell vor,
die nur mit Daten zu Sommerkleidung trainiert wurden.
das Kaufverhalten von Bekleidung im Winter vorherzusagen.
Welche eine der folgenden Aussagen trifft auf
dynamische (Online-)Schulungen?
Das Modell bleibt immer auf dem neuesten Stand, wenn neue Daten eingehen.
Dies ist der Hauptvorteil von Online-Schulungen: können Sie viele
mit der Veralterung, da das Modell
mit neuen Daten trainieren kann,
da es ins Spiel kommt.
Trainingsjobs müssen nur sehr wenig überwacht werden.
Tatsächlich müssen Sie die Trainingsjobs
kontinuierlich überwachen, um sicherzustellen,
dass sie fehlerfrei sind
und wie vorgesehen funktionieren. Sie benötigen außerdem
unterstützenden Infrastruktur wie die Möglichkeit
ein Rollback eines Modells durchzuführen,
für den Fall, dass beim Training
etwas schiefgeht,
wie ein fehlerhafter Job
oder eine Beschädigung der Eingabedaten.
An dieser Stelle muss nur sehr wenig
Eingabedaten überwacht werden.
die Inferenzzeit.
Wie bei einem statischen Offline-Modell ist es auch wichtig,
Eingaben in die dynamisch aktualisierten Modelle überwachen. Sie sind
wahrscheinlich nicht für große saisonale Effekte gefährdet, sondern plötzlich,
umfangreiche Änderungen an Eingaben (z. B. eine vorgelagerte Datenquelle, die
immer noch zu unzuverlässigen Vorhersagen führen.