Interviewfrage für Machine Learning Engineer

Du startest einen Trainingslauf und der Loss geht überhaupt nicht runter. Wie debuggst du das?

Worauf der Interviewer abzielt, wie du deine Antwort aufbaust und ein gesprochenes Beispiel zum Anpassen.

Kurzantwort

Beweis zuerst, dass das Modell lernen kann: overfitte einen einzelnen kleinen Batch auf nahezu null Loss. Wenn das nicht geht, liegt der Bug im Modell, im Loss oder im Optimizer, nicht in der Datenmenge. Dann prüf die Learning Rate an beiden Extremen, verifizier, dass Labels zu den Inputs passen, bestätige, dass Gradienten fließen, und bestätige, dass der Optimizer tatsächlich die Parameter bekommen hat, die du glaubst.

Warum Interviewer das fragen

Das ist der häufigste praktische Fehlerfall in der Deep-Learning-Arbeit, und die Antwort verrät, ob du systematisch debuggst oder anfängst, Hyperparameter umzulegen. Einen einzelnen Batch zu overfitten ist der kanonische erste Zug, weil er Fähigkeit von Daten trennt, und Interviewer hören gezielt darauf. Gradient Norms und Label-Ausrichtung zu prüfen zeigt, dass du weißt, wo die echten Bugs stecken.

So baust du deine Antwort auf

  • Starte mit dem Overfit-Test auf einem einzelnen Batch, um das Problem einzugrenzen.
  • Prüf die Learning Rate an beiden Extremen.
  • Verifizier, dass Gradienten fließen und Parameter beim Optimizer registriert sind.
  • Prüf den Datenpfad: Label-Ausrichtung, Normalisierung, Shuffling.

Beispielantwort

Gesprochenes Beispiel, erste Person

Der erste Zug ist immer derselbe: einen Batch von etwa acht Beispielen nehmen und versuchen, den Loss darauf auf nahezu null zu treiben. Ein funktionierendes Modell merkt sich acht Beispiele in ein paar hundert Steps. Wenn es das nicht kann, ist das Problem nicht die Datenmenge oder die Regularisierung, sondern etwas Kaputtes im Modell, im Loss oder im Optimizer, und ich habe die Suche massiv eingegrenzt. Von da prüfe ich die Learning Rate an beiden Enden, denn zu hoch zeigt sich als springender Loss oder als NaN, und zu niedrig sieht aus wie eine flache Linie, die eigentlich kriecht. Ich gebe Gradient Norms pro Layer aus, was mir sofort sagt, ob das Signal stirbt oder ob irgendein Layer nichts bekommt, weil er versehentlich eingefroren oder nie an den Optimizer übergeben wurde. Dann der Datenpfad, und ehrlich gesagt steckt der Bug meistens hier: Labels nach einem Shuffle um eins verschoben, Normalisierung doppelt angewendet, oder ein Targets-Tensor, der wegen eines Filter-Bugs nur eine Klasse enthält. Ich schaue mir immer eine Handvoll dekodierter Beispiele mit ihren Labels mit eigenen Augen an, bevor ich die Architektur beschuldige.

Steht dieses Vorstellungsgespräch bald an? GhostPilot hört bei deinem Live-Call mit, erkennt die Frage in dem Moment, in dem sie gestellt wird, und bringt dir eine strukturierte Antwort in Echtzeit auf den Bildschirm. Probier es im nächsten Mock aus, oder hol dir einen $29 Session Pass, kein Abo, für den Ernstfall.

So funktioniert es

Nachfragen, mit denen du rechnen solltest

  • Was würde ein Loss nahelegen, der nach ein paar hundert Steps auf NaN geht?
  • Wie würdest du plausibilisieren, dass dein Data Loader korrekt shufflet?
  • Was heißt es, wenn der Training Loss fällt, der Validation Loss aber nie?

Weitere Fragen für Machine Learning Engineer

Dein Interviewer stellt seine eigene Version davon. Kopier deine echte Stellenbeschreibung in den kostenlosen Question Predictor und bekomm die 20 Fragen, die diese Rolle am wahrscheinlichsten stellt, samt dem, worauf jede wirklich abzielt.

Meine Fragen vorhersagen

Üb die harten Fragen, bevor sie gestellt werden

Trainier mit einem Live-Copiloten und geh dann vorbereitet rein. Ein $29 Session Pass bringt dich durch das Vorstellungsgespräch, ohne Abo und ohne Bindung.

GhostPilot holen