Teilen über


Häufig gestellte Fragen zu Vorhersagen in AutoML

GILT FÜR: Python SDK azure-ai-ml v2 (aktuell)

In diesem Artikel werden häufig gestellte Fragen zu Vorhersagen mit automatisiertem maschinellem Lernen beantwortet. Allgemeine Informationen zu Vorhersagemethoden in automatisiertem ML finden Sie im Artikel Übersicht über Vorhersagemethoden in automatisiertem maschinellem Lernen.

Wie erstelle ich Vorhersagemodelle in AutoML?

Lesen Sie zunächst den Artikel Einrichten von AutoML zum Trainieren eines Zeitreihenvorhersagemodells mit Python. Es gibt auch praktische Beispiele in mehreren Jupyter-Notebooks:

Warum ist AutoML bei meinen Daten langsam?

Wir arbeiten ständig daran, automatisiertes ML schneller und skalierbarer zu machen. Um als allgemeine Vorhersageplattform zu funktionieren, führt automatisiertes ML umfangreiche Datenüberprüfungen, komplexes Feature Engineering und Suchvorgänge in einem großen Modellraum durch. Diese Komplexität kann abhängig von den Daten und der Konfiguration viel Zeit erfordern.

Eine häufige Ursache für langsame Laufzeiten ist das Trainieren von automatisiertem ML mit Standardeinstellungen für Daten, die zahlreiche Zeitreihen enthalten. Die Kosten vieler Vorhersagemethoden steigen mit der Anzahl der Zeitreihen. Beispielsweise trainieren Methoden wie „Exponential Smoothing“ und „Prophet“ ein Modell für jede Zeitreihe in den Trainingsdaten.

Das Feature „Viele Modelle“ von automatisiertem ML lässt sich auf diese Szenarien skalieren, indem Trainingsaufträge über einen Computecluster verteilt werden. Es wurde erfolgreich auf Daten mit Millionen von Zeitreihen angewendet. Weitere Informationen finden Sie im Artikelabschnitt Viele Modelle. Lesen Sie auch über den Erfolg von „Viele Modelle“ bei einem hochkarätigen Dataset für Wettbewerbe.

Wie kann ich AutoML beschleunigen?

Lesen Sie die Antwort zu „Warum ist AutoML bei meinen Daten langsam?“, um zu verstehen, warum automatisiertes ML in Ihrem Fall möglicherweise langsam ist.

Erwägen Sie die folgenden Konfigurationsänderungen, die Ihren Auftrag beschleunigen können:

  • Blockzeitreihenmodelle wie ARIMA und Prophet
  • Deaktivieren von Rückblickfeatures wie Verzögerungen und rollierende Fenster
  • Verringern Sie Folgendes:
    • Anzahl der Versuche/Iterationen
    • Timeout für Versuche/Iterationen
    • Experimenttimeout
    • Anzahl der Kreuzvalidierungsfaltungen
  • Stellen Sie sicher, dass die vorzeitige Beendigung aktiviert ist.

Welche Modellierungskonfiguration sollte ich verwenden?

Die Vorhersage in automatisiertem ML unterstützt vier grundlegende Konfigurationen:

Konfiguration Szenario Vorteile Nachteile
AutoML-Standardeinstellung Diese wird empfohlen, wenn das Dataset eine geringe Anzahl von Zeitreihen aufweist, die sich beim Verlaufsverhalten in etwa gleichen. – Einfache Konfiguration über Code/SDK oder Azure Machine Learning Studio

– Automatisiertes ML kann über verschiedene Zeitreihen hinweg lernen, da die Regressionsmodelle beim Training alle Reihen zusammenfassen. Weitere Informationen finden Sie unter Modellgruppierung.
– Regressionsmodelle sind möglicherweise weniger genau, wenn die Zeitreihen in den Trainingsdaten ein abweichendes Verhalten aufweisen.

– Das Trainieren von Zeitreihenmodellen kann lange dauern, wenn die Trainingsdaten eine große Anzahl von Reihen enthalten. Weitere Informationen finden Sie in der Antwort zu „Warum ist AutoML bei meinen Daten langsam?“.
AutoML mit Deep Learning Diese wird für Datasets mit mehr als 1.000 Beobachtungen und möglicherweise zahlreichen Zeitreihen mit komplexen Mustern empfohlen. Wenn automatisiertes ML aktiviert ist, durchsucht es während des Trainings die TCN-Modelle (Temporal Convolutional Neural Network). Weitere Informationen finden Sie unter Aktivieren von Deep Learning. – Einfache Konfiguration über Code/SDK oder Azure Machine Learning Studio

– Möglichkeiten zum übergreifenden Lernen, da TCN Daten über alle Reihen hinweg zusammenfasst

– Potenziell höhere Genauigkeit aufgrund der großen Kapazität von DNN-Modellen (Deep Neural Network). Weitere Informationen finden Sie unter Vorhersagemodelle beim automatisierten maschinellen Lernen.
– Das Training kann aufgrund der Komplexität von DNN-Modellen viel länger dauern.

- Serien mit einem geringen Verlauf werden wahrscheinlich nicht von diesen Modellen profitieren.
Viele Modelle Dies wird empfohlen, wenn Sie eine große Anzahl von Vorhersagemodellen auf skalierbare Weise trainieren und verwalten müssen. Weitere Informationen finden Sie im Artikelabschnitt Viele Modelle. – Skalierbar

- Potenziell höhere Genauigkeit, wenn Zeitreihen ein abweichendes Verhalten aufweisen.
– Kein übergreifendes Lernen über Zeitreihen hinweg

– Sie können Aufträge vom Typ „Viele Modelle“ nicht über Azure Machine Learning Studio konfigurieren oder ausführen. Derzeit ist nur die Code-/SDK-Umgebung verfügbar.
Hierarchische Zeitreihen (Hierarchical Times Series, HTS) Diese Konfiguration wird empfohlen, wenn die Datenreihen über eine geschachtelte, hierarchische Struktur verfügen und Sie auf aggregierten Hierarchieebenen Vorhersagen trainieren oder erstellen müssen. Weitere Informationen finden Sie im Abschnitt zu hierarchischen Zeitreihenvorhersagen. – Training auf aggregierten Ebenen kann Störungen in der Blattknotenzeitreihe reduzieren und möglicherweise zu Modellen mit höherer Genauigkeit führen.

– Sie können Vorhersagen für jede Ebene der Hierarchie abrufen, indem Vorhersagen von der Trainingsebene aggregiert oder disaggregiert werden.
- Sie müssen die Aggregationsebene für das Training angeben. AutoML verfügt derzeit nicht über einen Algorithmus, um eine optimale Ebene zu finden.

Hinweis

Es wird empfohlen, Computeknoten mit GPUs zu verwenden, wenn Deep Learning aktiviert ist, um die hohe DNN-Kapazität optimal nutzen zu können. Die Trainingszeit kann im Vergleich zu Knoten mit ausschließlich CPUs viel schneller sein. Weitere Informationen finden Sie im Artikel Für GPU optimierte VM-Größen.

Hinweis

HTS ist für Aufgaben konzipiert, bei denen Training oder eine Vorhersage auf aggregierten Ebenen in der Hierarchie erforderlich ist. Verwenden Sie für hierarchische Daten, die nur Blattknotentraining und -vorhersagen erfordern, stattdessen Viele Modelle.

Wie kann ich Überanpassungen und Datenlecks verhindern?

Automatisiertes ML verwendet bewährte Methoden für maschinelles Lernen, z. B. die kreuzvalidierte Modellauswahl, die viele Probleme der Überanpassung entschärfen. Es gibt jedoch noch andere mögliche Ursachen für eine Überanpassung:

  • Die Eingabedaten enthalten Featurespalten, die mit einer einfachen Formel vom Ziel abgeleitet werden. Beispielsweise kann ein Feature, das ein exaktes Vielfaches des Ziels ist, zu einer nahezu perfekten Trainingsbewertung führen. Das Modell lässt sich jedoch wahrscheinlich nicht auf Daten außerhalb der Stichprobe verallgemeinern. Wir raten Ihnen, die Daten vor dem Training des Modells zu untersuchen und Spalten zu löschen, die die Zielinformationen „verraten“.

  • Die Trainingsdaten verwenden Features bzw. Merkmale, die bis zum Vorhersagenhorizont nicht in die Zukunft bekannt sind. Die Regressionsmodelle von automatisiertem ML gehen derzeit davon aus, dass alle Features dem Vorhersagenhorizont bekannt sind. Wir empfehlen Ihnen, Ihre Daten vor dem Training zu untersuchen und alle Featurespalten zu entfernen, die nur historisch bekannt sind.

  • Es gibt signifikante strukturelle Unterschiede (Systemänderungen) zwischen den Trainings-, Validierungs- oder Testabschnitten der Daten. Betrachten Sie beispielsweise die Auswirkungen der COVID-19-Pandemie auf die Nachfrage nach fast allen Gütern in den Jahren 2020 und 2021. Dies ist ein klassisches Beispiel für eine Systemänderung. Die Überanpassung aufgrund einer Systemänderung ist das schwierigste Problem, da es in hohem Maße szenarioabhängig ist und fundiertes Wissen erfordern kann, um es zu erkennen.

    Versuchen Sie zunächst, 10 bis 20 Prozent des gesamten Verlaufs für Validierungs- oder Kreuzvalidierungsdaten zu reservieren. Es ist nicht immer möglich, diese Menge von Validierungsdaten zu reservieren, wenn der Trainingsverlauf kurz ist, aber es ist eine bewährte Methode. Weitere Informationen finden Sie unter Trainings- und Überprüfungsdaten.

Was bedeutet es, wenn mein Trainingsauftrag perfekte Validierungsergebnisse erzielt?

Möglicherweise treten beim Anzeigen von Validierungsmetriken aus einem Trainingsauftrag perfekte Ergebnisse auf. Eine perfekte Bewertung bedeutet, dass die Vorhersage und die Ist-Werte für den Validierungssatz identisch oder fast identisch sind. Beispiel: Eine mittlere quadratische Gesamtabweichung von 0,0 oder ein R2-Score von 1,0.

Eine perfekte Validierungsbewertung ist in der Regel ein Indikator dafür, dass das Modell stark überangepasst ist, wahrscheinlich aufgrund von Datenlecks. Die beste Vorgehensweise besteht darin, die Daten auf Lecks zu untersuchen und die Spalten zu löschen, die das Leck verursachen.

Was geschieht, wenn meine Zeitreihendaten nicht in regelmäßigen Abständen beobachtet werden?

Die Vorhersagemodelle von automatisiertem ML setzen voraus, dass die Trainingsdaten gemäß dem Kalender in regelmäßigen Abständen beobachtet werden. Diese Anforderung gilt auch für Fälle wie monatliche oder jährliche Beobachtungen, bei denen die Anzahl der Tage zwischen den Beobachtungen variieren kann. In zwei Fällen erfüllten zeitabhängige Daten diese Anforderung möglicherweise nicht:

  • Die Daten haben eine klar definierte Häufigkeit, aber fehlende Beobachtungen führen zu Lücken in den Reihen. In diesem Fall versucht automatisiertes ML, die Häufigkeit zu erkennen, die Lücken mit neuen Beobachtungen zu füllen und fehlende Ziel- und Featurewerte zu berücksichtigen. Benutzer*innen können optional die Imputationsmethoden über SDK-Einstellungen oder über die Web-UI konfigurieren. Weitere Informationen finden Sie unter Benutzerdefinierte Featurisierung.

  • Die Daten weisen keine klar definierte Häufigkeit auf. Das bedeutet, die Dauer zwischen den Beobachtungen weist kein erkennbares Muster auf. Ein Beispiel sind Transaktionsdaten, z. B. von einem POS-System (Point-of-Sales). In diesem Fall können Sie AutoML so festlegen, dass Ihre Daten mit einer bestimmten Häufigkeit aggregiert werden. Sie können eine regelmäßige Häufigkeit auswählen, die am besten zu den Daten und den Modellierungszielen passt. Weitere Informationen finden Sie unter Häufigkeit und Zieldatenaggregation.

Wie wähle ich die primäre Metrik aus?

Die primäre Metrik ist wichtig, denn ihr Wert hinsichtlich der Validierungsdaten bestimmt das beste Modell während Sweeping und Auswahl. Die normalisierte mittlere quadratische Gesamtabweichung (NRMSE) und die normalisierte mittlere absolute Abweichung (NMAE) sind in der Regel die beste Wahl für die primäre Metrik bei Vorhersageaufgaben.

Für die Wahl zwischen den beiden Optionen beachten Sie, dass NRMSE Ausreißer in den Trainingsdaten stärker bestraft als NMAE, da das Quadrat der Abweichung verwendet wird. NMAE ist möglicherweise eine bessere Option, wenn Sie möchten, dass das Modell weniger empfindlich auf Ausreißer reagiert. Weitere Informationen finden Sie unter Regressions-/Vorhersagemetriken.

Hinweis

Es wird nicht empfohlen, den R2-Score (R2) als primäre Metrik für Vorhersagen zu verwenden.

Hinweis

Automatisiertes ML unterstützt keine benutzerdefinierten oder benutzerseitig bereitgestellten Funktionen für die primäre Metrik. Sie müssen eine der vordefinierten primären Metriken auswählen, die von AutoML unterstützt werden.

Wie kann ich die Genauigkeit meines Modells verbessern?

  • Stellen Sie sicher, dass Sie AutoML optimal für Ihre Daten konfigurieren. Weitere Informationen finden Sie unter Welche Modellierungskonfiguration sollte ich verwenden?.
  • Im Notebook zu Vorhersagerezepten finden Sie Schritt-für-Schritt-Anleitungen zum Erstellen und Verbessern von Vorhersagemodellen.
  • Bewerten Sie das Modell mithilfe von Rückvergleichen (Backtests) über mehrere Vorhersagezyklen. Dieses Verfahren bietet eine robustere Schätzung des Vorhersagefehlers und bietet Ihnen eine Baseline, an der Sie Verbesserungen messen können. Ein Beispiel finden Sie in unserem Notebook für Rückvergleiche (Backtests).
  • Wenn die Daten verrauscht sind (d. h. Störungen enthalten), sollten Sie sie mit einer geringeren Häufigkeit aggregieren, um das Signal-Rausch-Verhältnis zu erhöhen. Weitere Informationen finden Sie unter Häufigkeit und Zieldatenaggregation.
  • Fügen Sie neue Features hinzu, die bei der Vorhersage des Ziels helfen können. Bei der Auswahl der Trainingsdaten kann Fachwissen sehr hilfreich sein.
  • Vergleichen Sie die Werte der Validierungs- und der Testmetrik, und ermitteln Sie, ob für das ausgewählte Modell eine Unter- oder Überanpassung der Daten erfolgt. Dieses Wissen kann Sie zu einer besseren Trainingskonfiguration führen. Sie können etwa feststellen, dass Sie als Reaktion auf eine Überanpassung mehr Kreuzvalidierungsfaltungen verwenden müssen.

Wählt automatisiertes ML bei gleichen Trainingsdaten und Konfigurationen immer dasselbe beste Modell aus?

Der Prozess für die Modellsuche von automatisiertem ML ist nicht deterministisch, sodass bei gleichen Daten und Konfigurationen nicht immer dasselbe Modell ausgewählt wird.

Wie behebe ich einen Fehler aufgrund von nicht genügend Speicher?

Es gibt zwei Arten von Speicherfehlern:

  • Nicht genügend RAM-Arbeitsspeicher
  • Nicht genügend Speicher auf dem Datenträger

Stellen Sie zunächst sicher, dass Sie AutoML optimal für Ihre Daten konfigurieren. Weitere Informationen finden Sie unter Welche Modellierungskonfiguration sollte ich verwenden?.

Bei den Standardeinstellungen von automatisiertem ML können Sie Fehler vom Typ „Nicht genügend RAM-Arbeitsspeicher“ mithilfe von Computeknoten mit mehr RAM beheben. Eine allgemeine Regel besagt, dass der freie Arbeitsspeicher mindestens zehnmal größer sein sollte als die Rohdatengröße, um automatisiertes ML mit den Standardeinstellungen auszuführen.

Sie können Fehler aufgrund von nicht genügend Speicher auf dem Datenträger beheben, indem Sie den Computecluster löschen und einen neuen erstellen.

Welche erweiterten Vorhersageszenarien werden von automatisiertem ML unterstützt?

Automatisiertes ML unterstützt die folgenden erweiterten Vorhersageszenarien:

  • Quantil-Vorhersagen
  • Stabile Modellauswertung über rollierende Vorhersagen
  • Den Vorhersagehorizont überschreitende Vorhersagen
  • Vorhersagen, wenn zwischen Trainings- und Vorhersagezeitraum eine zeitliche Lücke besteht

Beispiele und Details finden Sie im Notebook für fortgeschrittene Vorhersageszenarien.

Wie kann ich Metriken von Aufträgen für Vorhersagetrainings anzeigen?

Informationen zu Trainings- und Validierungsmetrikwerten finden Sie unter Anzeigen von Informationen zu Aufträgen oder Ausführung im Studio. Sie können Metriken für jedes in automatisiertem ML trainierte Vorhersagemodell anzeigen, indem Sie über die Benutzeroberfläche des Auftrags in automatisiertem ML im Studio zu einem Modell navigieren und die Registerkarte Metriken auswählen.

Screenshot: Metrikschnittstelle für ein Vorhersagemodell bei automatisiertem maschinellem Lernen

Wie kann ich Fehler bei der Vorhersage von Trainingsaufträgen beheben?

Wenn Ihr Vorhersageauftrag in automatisiertem ML einen Fehler aufweist, kann eine auf der Studio-Benutzeroberfläche angezeigte Fehlermeldung Ihnen helfen, das Problem zu diagnostizieren und zu beheben. Die beste Quelle für Informationen über den Fehler, die über die Fehlermeldung hinausgehen, ist das Treiberprotokoll für den Auftrag. Anweisungen zum Suchen von Treiberprotokollen finden Sie unter Anzeigen von Aufträgen/Ausführungsinformationen mit MLflow.

Hinweis

Für Aufträge vom Typ „Viele Modelle“ oder HTS-Aufträge erfolgt das Training in der Regel auf Computeclustern mit mehreren Knoten. Protokolle für diese Aufträge sind für jede Knoten-IP-Adresse vorhanden. In diesem Fall müssen Sie für jeden Knoten nach Fehlerprotokollen suchen. Die Fehlerprotokolle befinden sich zusammen mit den Treiberprotokollen im Ordner user_logs für jede Knoten-IP-Adresse.

Wie kann ich das Modell von Aufträgen für Vorhersagetrainings bereitstellen?

Sie können ein Modell von Aufträgen für Vorhersagetrainings auf folgende Weise bereitstellen:

Für Benutzeroberflächenbereitstellungen wird empfohlen, eine der folgenden Optionen zu verwenden:

  • Echtzeitendpunkt
  • Batchendpunkt

Screenshot: Bereitstellungsoptionen für ein Vorhersagemodell bei automatisiertem maschinellem Lernen

Verwenden Sie nicht die erste Option Echtzeitendpunkt (schnell).

Hinweis

Ab sofort wird die Bereitstellung des MLflow-Modells von Aufträgen für Vorhersagetrainings über das SDK, die CLI oder die Benutzeroberfläche nicht mehr unterstützt. Wenn Sie eine dieser Optionen ausprobieren, treten Fehler auf.

Was sind Arbeitsbereich, Umgebung, Experiment, Compute-Instanz oder Computeziel?

Wenn Sie mit Azure Machine Learning-Konzepten nicht vertraut sind, beginnen Sie mit den Artikeln Was ist Azure Machine Learning? und Was ist ein Azure Machine Learning-Arbeitsbereich?.

Nächste Schritte