Freigeben über


Entscheidungswaldregression

Wichtig

Der Support für Machine Learning Studio (klassisch) endet am 31. August 2024. Es wird empfohlen, bis zu diesem Datum auf Azure Machine Learning umzustellen.

Ab dem 1. Dezember 2021 können Sie keine neuen Ressourcen in Machine Learning Studio (klassisch) mehr erstellen. Bis zum 31. August 2024 können Sie die vorhandenen Ressourcen in Machine Learning Studio (klassisch) weiterhin verwenden.

Die Dokumentation zu ML Studio (klassisch) wird nicht mehr fortgeführt und kann künftig nicht mehr aktualisiert werden.

Erstellt ein Regressionsmodell mit dem Decision Forest-Algorithmus

Kategorie: Initialisieren eines Modells – Regression

Hinweis

Gilt für: Machine Learning Studio (klassisch)

Ähnliche Drag & Drop-Module sind im Azure Machine Learning-Designer verfügbar.

Modulübersicht

In diesem Artikel wird beschrieben, wie Sie das Modul Decision Forest Regression in Machine Learning Studio (klassisch) verwenden, um ein Regressionsmodell basierend auf einem Ensemble von Entscheidungsstrukturen zu erstellen.

Nachdem Sie das Modell konfiguriert haben, müssen Sie es mit einem bezeichneten Dataset und dem Modul Modell trainieren trainieren. Das trainierte Modell kann danach verwendet werden, um Vorhersagen zu treffen. Alternativ kann das untrainierte Modell zur Kreuzvalidierung für ein bezeichnetes DataSet an Cross-Validate Model übergeben werden.

Funktionsweise von Entscheidungsgestrukturen in Regressionsaufgaben

Entscheidungsstrukturen sind nicht parametrische Modelle, die für jede Instanz eine Reihe einfacher Tests durchführen und dabei eine Binärbaum-Datenstruktur durchlaufen, bis ein Blattknoten (Entscheidung) erreicht wird.

Entscheidungsbäume haben diese Vorteile:

  • Sie sind während des Trainings und der Vorhersage effizient sowohl bei der Berechnung als auch bei der Arbeitsspeicherauslastung.

  • Sie können nicht lineare Entscheidungsgrenzen darstellen.

  • Sie führen integrierte Merkmalsauswahl und Klassifizierung durch und sind in Gegenwart verrauschter Merkmale robust.

Dieses Regressionsmodell besteht aus einem Ensemble von Entscheidungsbäumen. Jeder Baum in einem Regressionsentscheidungswald gibt eine Gauß-Verteilung als Vorhersage aus. Es erfolgt eine Aggregation über das Baumensemble, um eine Gauß-Verteilung zu finden, die der kombinierten Verteilung für alle Bäume im Modell am nächsten kommt.

Weitere Informationen zum theoretischen Framework für diesen Algorithmus und dessen Implementierung finden Sie in diesem Artikel: Decision Forests: A Unified Framework for Classification, Regression, Density Estimation, Classification Learning and Semi-Supervised Learning

Vorgehensweise: Konfigurieren des Entscheidungswald-Regressionsmodells

  1. Fügen Sie dem Experiment das Modul Entscheidungswaldregression hinzu. Sie finden das Modul in Studio (klassisch) unter Machine Learning, Initialize Model und Regression.

  2. Öffnen Sie die Moduleigenschaften, und wählen Sie für Resampling method (Methode für Wiederholungsprobennahme) die Methode aus, mit der die einzelnen Bäume erstellt wurden. Sie können zwischen Bagging und Replikation wählen.

    • Bagging: Bagging ist die Abkürzung von Bootstrap aggregating. Jeder Baum in einem Regressionsentscheidungswald gibt eine Gauß-Verteilung als Vorhersage aus. Aufgabe der Aggregation ist es, eine Gauß-Verteilung zu finden, deren erste zwei Momente mit den Momenten der Mischung der Gauß-Verteilungen übereinstimmen, die sich durch Kombination aller von den einzelnen Bäumen zurückgegebenen Gauß-Verteilungen ergeben.

      Weitere Informationen finden Sie im Wikipedia-Eintrag zu Bootstrap aggregating.

    • Replikation: Bei der Replikation wird jede Struktur mit genau denselben Eingabedaten trainiert. Die Bestimmung, welches Aufteilungsprädikat für jeden Baumknoten verwendet wird, bleibt zufällig, und die entstehenden Bäume unterscheiden sich.

      Weitere Informationen zum Trainingsprozess mit der Option Replikation finden Sie in Decision Forests for Computer Vision and Medical Image Analysis. Criminisi und J. Shotton. Springer 2013. (Entscheidungsbäume für maschinelles Sehen und medizinische Bildanalyse).

  3. Geben Sie an, wie das Modell trainiert werden soll, indem Sie die Option Create trainer mode (Trainermodus erstellen) aktivieren.

    • Single Parameter (Einzelner Parameter):

      Wenn Sie wissen, wie Sie das Modell konfigurieren möchten, können Sie einen bestimmten Satz von Werten als Argumente angeben. Möglicherweise haben Sie diese Werte durch Experimentieren ermittelt oder sie als Anleitung erhalten.

    • Parameterbereich

      Wenn Sie sich der besten Parameter nicht sicher sind, können Sie die optimalen Parameter finden, indem Sie mehrere Werte angeben und einen Parameter-Sweep verwenden, um die optimale Konfiguration zu finden.

      Tune Model Hyperparameters durch iteriert alle möglichen Kombinationen der von Ihnen angegebenen Einstellungen und bestimmt die Kombination der Einstellungen, die die optimalen Ergebnisse liefern.

  4. Geben Sie unter Number of decision trees (Anzahl der Entscheidungsbäume) die Gesamtzahl der Entscheidungsbäume an, die im Ensemble erstellt werden sollen. Mit einer höheren Anzahl von Entscheidungsbäumen erzielen Sie unter Umständen eine bessere Abdeckung, allerdings verlängert sich dadurch die Trainingsdauer.

    Tipp

    Dieser Wert steuert auch die Anzahl von Bäumen, die bei der Visualisierung des trainierten Modells angezeigt werden. Wenn Sie einen einzelnen Baum anzeigen oder ausgeben möchten, können Sie den Wert auf 1 festlegen. Das bedeutet jedoch, dass nur ein Baum erzeugt wird (der Baum mit der anfänglichen Menge von Parametern) und keine weiteren Iterationen erfolgen.

  5. Geben Sie in Maximum depth of the decision trees (Maximale Tiefe der Entscheidungsbäume) einen Wert ein, um die maximale Tiefe der Entscheidungsbäume zu begrenzen. Eine größere Tiefe des Baums kann die Genauigkeit erhöhen, wobei das Risiko einer Überanpassung und einer längeren Trainingsdauer besteht.

  6. Geben Sie in Number of random splits per node (Anzahl der zufälligen Aufteilungen pro Knoten) die Anzahl der Aufteilungen ein, die beim Erstellen der einzelnen Knoten des Baums verwendet werden sollen. Eine Aufteilung bedeutet, dass Features auf jeder Ebene des Baums (Knotens) zufällig aufgeteilt werden.

  7. Geben Sie unter Minimum number of samples per leaf node (Minimale Anzahl von Stichproben pro Blattknoten) die Mindestanzahl von Fällen an, die zum Erstellen eines Endknotens (Blatt) in einer Struktur erforderlich sind.

    Wenn Sie diesen Wert heraufsetzen, erhöht sich der Schwellenwert für die Erstellung neuer Regeln. Bei Verwendung des Standardwerts „1“ reicht für die Erstellung einer neuen Regel beispielsweise bereits ein einzelner Fall aus. Wenn Sie den Wert auf „5“ erhöhen, müssen die Trainingsdaten mindestens fünf Fälle enthalten, die die gleichen Bedingungen erfüllen.

  8. Wählen Sie die Option Allow unknown values for categorical features (Unbekannte Werte für Kategoriemerkmale zulassen) aus, um eine Gruppe für unbekannte Werte in den Trainings- oder Validierungsmengen zu erstellen.

    Wenn Sie die Option deaktivieren, akzeptiert das Modell nur die Werte, die in den Trainingsdaten enthalten sind. Im ersten Fall ist das Modell für bekannte Werte möglicherweise weniger präzise, ermöglicht jedoch bessere Vorhersagen für neue (unbekannte) Werte.

  9. Verbinden ein bezeichnetes Dataset aus, wählen Sie eine einzelne Bezeichnungsspalte aus, die nicht mehr als zwei Ergebnisse enthält, und verbinden Sie entweder Train Model (Modell trainieren) oder Tune Model Hyperparameters (Modell hyperparameter optimieren).

    • Wenn Sie die Option Create trainer mode (Trainermodus erstellen) auf Single Parameter (Einzelner Parameter) festlegen, müssen Sie das Modul Train Model (Modell trainieren) zum Trainieren des Modells verwenden.

    • Wenn Sie die Option Create trainer mode ( Trainermodus erstellen) auf Parameter Range (Parameterbereich) festlegen, trainieren Sie das Modell mit Tune Model Hyperparameters .

  10. Führen Sie das Experiment aus.

Ergebnisse

Nach Abschluss des Trainings:

  • Um den Baum anzuzeigen, der bei jeder Iteration erstellt wurde, klicken Sie mit der rechten Maustaste auf die Ausgabe des Trainingsmoduls, und wählen Sie Visualize (Visualisieren) aus.

  • Um die Regeln für jeden Knoten anzuzeigen, klicken Sie auf jeden Baum und führen Sie einen Drilldown in die Aufteilungen aus.

  • Um eine Momentaufnahme des trainierten Modells zu speichern, klicken Sie mit der rechten Maustaste auf die Ausgabe des Trainingsmoduls, und wählen Sie Save As Trained Model (Als trainiertes Modell speichern) aus. Diese Kopie des Modells wird bei nachfolgenden Ausführungen des Experiments nicht aktualisiert.

Beispiele

Beispiele für Regressionsmodelle finden Sie in diesen Beispielexperimenten im Cortana Intelligence Gallery:

Technische Hinweise

Dieser Abschnitt enthält Implementierungsdetails, Tipps und Antworten auf häufig gestellte Fragen.

  • Wenn Sie einen Parameterbereich an Train Model übergeben, wird nur der erste Wert in der Parameterbereichsliste verwendet.

  • Wenn Sie einen einzelnen Satz von Parameterwerten an das Modul Tune Model Hyperparameters übergeben, ignoriert es die Werte und verwendet die Standardwerte für den Learner, wenn es einen Bereich von Einstellungen für jeden Parameter erwartet.

  • Wenn Sie die Option Parameterbereich auswählen und einen einzelnen Wert für einen parameter eingeben, wird dieser einzelne Wert, den Sie angegeben haben, während des Sweeps verwendet, auch wenn sich andere Parameter über einen Wertebereich hinweg ändern.

Verwendungstipps

Wenn Sie nur über begrenzte Daten verfügen oder den Zeitaufwand für das Training des Modells minimieren möchten, versuchen Sie diese Einstellungen:

Limited training set. Wenn das Trainingsset eine begrenzte Anzahl von Instanzen enthält:

  • Erstellen Sie den Entscheidungswald (decision forest) mithilfe einer großen Anzahl von Entscheidungsbäumen (z. B. mehr als 20)

  • Verwenden Sie die Option Bagging für die Neuberechnung.

  • Geben Sie eine große Anzahl von zufälligen Splits pro Knoten an (zum Beispiel mehr als 1000).

Limited training time. Wenn das Trainingsset eine große Anzahl von Instanzen enthält und die Trainingszeit begrenzt ist:

  • Erstellen Sie den Entscheidungswald (decision forest) mit weniger Entscheidungsbäumen (beispielsweise 5 bis 10).

  • Verwenden Sie die Option Replicate für die Neuberechnung.

  • Geben Sie eine kleine Anzahl von zufälligen Splits pro Knoten an (zum Beispiel weniger als 100).

Modulparameter

Name Range type Standard Beschreibung
Resampling method any ResamplingMethod Bagging Auswählen einer Neuberechnungsmethode.
Number of decision trees >=1 Integer 8 Angeben der im Ensemble zu erstellenden Anzahl von Entscheidungsbäumen.
Maximum depth of the decision trees >=1 Integer 32 Angeben der maximalen Tiefe aller Entscheidungsbäume, die im Ensemble erstellt werden können.
Number of random splits per node >=1 Integer 128 Angeben der Anzahl der pro Knoten generierten Splits, aus denen der optimale Split ausgewählt wird.
Minimum number of samples per leaf node >=1 Integer 1 Angeben der Mindestanzahl von Trainingssamples, die zum Generieren eines Blattknotens erforderlich sind.
Allow unknown values for categorical features any Boolean true Angeben, ob unbekannte Werte von vorhandenen Kategoriemerkmalen einem neuen, zusätzlichen Merkmal zugeordnet werden können.

Ausgaben

Name Type BESCHREIBUNG
Untrainiertes Modell ILearner-Schnittstelle Ein untrainiertes Regressionsmodell

Siehe auch

Regression

Modulliste von A bis Z