ML-Produktionssysteme: Statische und dynamische Inferenz

Inferenz ist der Prozess, Vorhersagen treffen, indem ein trainiertes Modell Beispiele ohne Label. Allgemein ausgedrückt, kann ein Modell Vorhersagen auf zwei Arten ableiten:

  • Statische Inferenz (auch als Offline-Inferenz oder Batch-Inferenz) bedeutet, dass das Modell Vorhersagen für eine Reihe von Gängige Beispiele ohne Label und speichert diese Vorhersagen irgendwo im Cache.
  • Dynamische Inferenz (auch als Online-Inferenz oder Echtzeit bezeichnet) Inferenz) bedeutet, dass das Modell Vorhersagen nur bei Bedarf trifft. beispielsweise wenn ein Client eine Vorhersage anfordert.

Nehmen wir ein extremes Beispiel. Stellen Sie sich ein sehr komplexes Modell vor, dauert es etwa eine Stunde, um eine Vorhersage abzuleiten. Dies wäre wahrscheinlich eine hervorragende Situation für statische Inferenz:

Abbildung 4: Bei der statischen Inferenz generiert ein Modell Vorhersagen,
            die dann auf einem Server zwischengespeichert werden.
Abbildung 4. Bei der statischen Inferenz generiert ein Modell Vorhersagen, die dann auf einem Server zwischengespeichert werden.

 

Angenommen, dieses komplexe Modell verwendet fälschlicherweise statische Inferenz. Wenn viele Clients gleichzeitig Vorhersagen anfordern, werden die meisten von ihnen diese Vorhersage erst nach Stunden oder Tagen erhalten.

Nehmen wir nun ein Modell, das schnell ableiten kann, z. B. in 2 Millisekunden, relatives Minimum an Rechenressourcen. In dieser Situation können die Kunden Vorhersagen schnell und effizient durch dynamische Inferenz erhalten, wie in Abbildung 5 dargestellt.

Abbildung 5: Bei der dynamischen Inferenz leitet ein Modell Vorhersagen anhand
            Nachfrage.
Abbildung 5: Bei der dynamischen Inferenz leitet ein Modell Vorhersagen nach Bedarf ab.

 

Statische Inferenz

Statische Inferenz hat gewisse Vor- und Nachteile.

Vorteile

  • Sie müssen sich nicht viele Gedanken über die Inferenzkosten machen.
  • Die Vorhersagen können vor der Übertragung nachgeprüft werden.

Nachteile

  • Kann nur im Cache gespeicherte Vorhersagen bereitstellen, sodass das System Vorhersagen für ungewöhnliche Eingabebeispiele liefern können.
  • Die Aktualisierungslatenz wird wahrscheinlich in Stunden oder Tagen gemessen.

Dynamische Inferenz

Dynamische Inferenz hat gewisse Vor- und Nachteile.

Vorteile

  • Kann eine Vorhersage für jedes neue Element ableiten, sobald es eingeht, was eignet sich hervorragend für Longtail-Vorhersagen (weniger gängige).

Nachteile

  • Sie sind rechenintensiv und latenzempfindlich. Durch diese Kombination wird möglicherweise das Modell eingeschränkt Komplexität; Das heißt, Sie müssen möglicherweise ein einfacheres Modell entwickeln, schneller als ein komplexes Modell Vorhersagen ableiten können.
  • Die Monitoring-Anforderungen sind intensiver.

Übungen: Wissen testen

Welche drei der folgenden vier Aussagen sind Richtig für statische Inferenz?
Das Modell muss Vorhersagen für alle möglichen Eingaben erstellen.
Ja, das Modell muss Vorhersagen für alle möglichen Eingaben treffen und im Cache oder in einer Suchtabelle speichern. Wenn die Menge der Dinge, die das Modell vorhersagt, begrenzt ist, wäre eine statische Inferenz eine gute Wahl. Bei Eingaben im freien Format, z. B. bei Nutzeranfragen mit einer langen von ungewöhnlichen oder seltenen Gegenständen, kann statische Inferenz keine Informationen liefern mehr zum Thema.
Das System kann abgeleitete Vorhersagen vor der Bereitstellung überprüfen .
Ja, das ist ein nützlicher Aspekt der statischen Inferenz.
Für eine bestimmte Eingabe kann das Modell schneller eine Vorhersage bereitstellen dynamische Inferenz.
Ja, statische Inferenz kann Vorhersagen fast immer schneller bereitstellen. als dynamische Inferenz.
Sie können schnell auf Veränderungen in der Welt reagieren.
Nein, das ist ein Nachteil der statischen Inferenz.
Welche eine der folgenden Aussagen ist trifft dies auf dynamische Inferenz zu?
Sie können Vorhersagen für alle möglichen Elemente angeben.
Ja, dies ist eine Stärke der dynamischen Inferenz. Jede Anfrage, die erhält eine Bewertung. Dynamische Inferenz verarbeitet Longtail Verteilungen (mit vielen seltenen Elementen), wie der Raum mögliche Sätze in Filmrezensionen.
Sie können eine nachträgliche Verifizierung von Vorhersagen durchführen, bevor sie verwendet werden.
In der Regel ist es nicht möglich, Vorhersagen, bevor sie verwendet werden, weil Vorhersagen getroffen werden, On-Demand-Videos erstellt. Sie können jedoch potenziell überwachen, aggregieren die Vorhersagequalitäten, um ein gewisses Maß an Qualitätsprüfung durchgeführt werden. Diese signalisieren jedoch erst Alarme, nachdem hat sich das Feuer bereits ausgebreitet.
Bei der dynamischen Inferenz müssen Sie zur Vorhersagelatenz (die Verzögerungszeit für die Rückgabe von Vorhersagen) wie bei statischer Inferenz.
Die Vorhersagelatenz ist bei der dynamischen Inferenz oft ein echtes Problem. Leider können Sie Latenzprobleme bei der Vorhersage nicht unbedingt beheben, indem Sie weitere Inferenzserver hinzufügen.