Entscheidungswald mit zwei Klassen

Erstellt ein zweiklassiges Klassifizierungsmodell unter Verwendung des Entscheidungswaldalgorithmus

Kategorie: Machine Learning/Modell/Klassifizierung initialisieren

Hinweis

Gilt für: Machine Learning Studio (klassisch)

Dieser Inhalt bezieht sich nur auf Studio (klassisch). Ähnliche Drag & Drop-Module wurden Azure Machine Learning-Designer hinzugefügt. Weitere Informationen finden Sie in diesem Artikel zum Vergleich der beiden Versionen.

Modulübersicht

In diesem Artikel wird beschrieben, wie Sie das Modul Two-Class Decision Forest in Azure Machine Learning Studio (klassisch) verwenden, um ein Machine Learning-Modell auf der Grundlage des Decision Forest-Algorithmus zu erstellen.

Entscheidungswälder sind schnelle, beaufsichtigte Ensemblemodelle. Dieses Modul ist eine gute Wahl, wenn Sie ein Ziel mit maximal zwei Ergebnissen vorhersagen möchten. Wenn Sie nicht sicher sind, wie Sie ein Entscheidungsstruktur Modell für die besten Ergebnisse konfigurieren, empfiehlt es sich, das Modul " Tune Model hyperparameters " zu verwenden, um mehrere Modelle zu trainieren und zu testen. die Optimierung durchläuft mehrere Möglichkeiten und findet die optimale Lösung für Sie.

Grundlegendes zu Entscheidungswäldern

Der Entscheidungswald-Algorithmus ist eine Ensemble-Lernmethode, die für Klassifizierungsaufgaben vorgesehen ist. Ensemblemethoden basieren auf dem allgemeinen Prinzip statt auf einem einzelnen Modell, Sie können bessere Ergebnisse und ein stärker generalisiertes Modell erhalten, indem Sie mehrere verwandte Modelle erstellen und sie in geeigneter Weise kombinieren. Im Allgemeinen bieten Ensemblemodelle eine bessere Abdeckung und Genauigkeit als einzelne Entscheidungsbäume.

Es gibt viele Möglichkeiten, einzelne Modelle zu erstellen und sie in einem Ensemble zu kombinieren. Diese spezifische Implementierung eines Entscheidungswalds funktioniert dergestalt, dass mehrere Entscheidungsbäume erstellt werden und dann über die beliebteste Ausgabeklasse abgestimmt wird. Abstimmung ist eine der bekannteren Methoden zum Generieren von Ergebnissen in einem Ensemblemodell.

  • Unter Verwendung des gesamten Datasets werden viele einzelne Klassifizierungsbäume erstellt, jedoch mit verschiedenen (normalerweise randomisierten) Ausgangspunkten. Dies unterscheidet sich vom Random Forest-Ansatz, bei dem die einzelnen Entscheidungsbäume nur einen randomisierten Anteil der Daten oder Merkmale verwenden können.
  • Jeder Baum im Entscheidungswald gibt ein nicht normalisiertes Häufigkeitshistogramm der Bezeichnungen aus.
  • Der Aggregationsprozess summiert diese Histogramme und normalisiert das Ergebnis, um die „Wahrscheinlichkeiten“ für jede Bezeichnung abzurufen.
  • Die Bäume mit hoher Vorhersagesicherheit haben bei der endgültigen Entscheidung des Ensembles eine größere Gewichtung.

Entscheidungsbäume haben ganz allgemein viele Vorteile bei Klassifizierungsaufgaben:

  • Sie können nicht lineare Entscheidungsgrenzen erfassen.
  • Für Training und Vorhersage können große Datenmengen verwendet werden, denn sie sind in Berechnung und Arbeitsspeicherauslastung effizient.
  • Merkmalsauswahl ist in die Trainings- und Klassifizierungsprozesse integriert.
  • Strukturen können laute Daten und viele Features aufnehmen.
  • Sie stellen nichtparametrische Modelle dar, was bedeutet, dass sie mit Daten mit unterschiedlichen Verteilungen umgehen können.

Allerdings kann es bei einfachen Entscheidungsbäumen zu Überanpassung an Daten kommen, und sie sind weniger generalisierbar als Baumensembles.

Weitere Informationen finden Sie unter Decision Forestoder in den anderen Dokumenten, die im Abschnitt Technische Hinweise aufgeführt sind.

Konfigurieren Two-Class Decision Forest

  1. Fügen Sie das Two-Class Decision Forest- Modul in Azure Machine Learning Studio (klassisch) zum Experiment hinzu, und öffnen Sie den Bereich Eigenschaften des Moduls.

    Sie finden das Modul unter Machine Learning. Erweitern Sie Initialize (Initialisieren) und dann Classification (Klassifizierung).

  2. 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. Bei dieser Methode basiert jeder Baum auf einer neuen Stichprobe, die mithilfe von Zufallsstichproben des ursprünglichen Datasets mit Austausch erstellt wird, bis Sie ein Dataset mit der Größe des Originals erhalten.

      Die Ausgaben der Modelle werden durch Abstimmung kombiniert, was eine Form von Aggregation ist. Jede Struktur in einer Klassifizierungs Entscheidungs Gesamtstruktur gibt ein nicht normalisiertes Histogramm von Bezeichnungen aus. Die Aggregation besteht darin, diese Histogramme zusammenzufassen und normalisieren, um die "Wahrscheinlichkeiten" für jede Bezeichnung zu erhalten. Auf diese Weise haben die Bäume mit hoher Vorhersagesicherheit bei der endgültigen Entscheidung des Ensembles eine größere Gewichtung.

      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 Replizieren finden Sie in den Dokumenten im Abschnitt Technische Hinweise .

  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.

    • Parameter Bereich: Wenn Sie sich nicht sicher sind, welche Parameter am besten geeignet sind, können Sie die optimalen Parameter ermitteln, indem Sie mehrere Werte angeben und das Modul " Tune Model hyperparameters " verwenden, um die optimale Konfiguration zu ermitteln. Der Trainer durchläuft mehrere Kombinationen der von Ihnen angegebenen Einstellungen und bestimmt die Kombination der Werte, die das beste Modell erzeugen.

  4. Geben Sie in Number of decision trees die maximale Anzahl von Entscheidungsbäumen ein, die im Ensemble erstellt werden können. Mit einer höheren Anzahl von Entscheidungsbäumen erzielen Sie u. U. eine bessere Abdeckung, allerdings verlängert sich dadurch auch die Trainingsdauer.

    Hinweis

    Dieser Wert steuert auch die Anzahl von Bäumen, die bei der Visualisierung des trainierten Modells angezeigt werden. Wenn Sie eine einzelne Struktur anzeigen oder ausgeben möchten, können Sie den Wert auf „1“ festlegen. Allerdings wird dann möglicherweise auch nur ein einzelner Baum (die Struktur mit dem anfänglichen Parametersatz) generiert, und es finden keine weiteren Iterationen statt.

  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. Das Modell ist bei bekannten Werten u. U. weniger genau, liefert dafür jedoch bessere Vorhersagen für neue (unbekannte) Werte.

    Wenn Sie diese Option deaktivieren, akzeptiert das Modell nur Werte, die in den Trainingsdaten enthalten sind.

  9. Fügen Sie ein bezeichnetes Dataset und eines der Trainingsmodule hinzu:

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

    • Wenn Sie den Create Trainer-Modus auf Parameter Bereich festlegen, verwenden Sie Tune Model hyperparameters.

    Hinweis

    Wenn Sie einen Parameter Bereich zum trainieren des Modellsübergeben, wird nur der erste Wert in der Liste Parameter Bereich verwendet.

    Wenn Sie eine einzelne Reihe bestimmter Parameterwerte an das Modul Tune Model Hyperparameters übergeben und ein Bereich von Einstellungen für jeden Parameter erwartet wird, werden die Werte ignoriert und stattdessen die Standardwerte für den Learner verwendet.

    Wenn Sie die Option Parameter Bereich auswählen und einen einzelnen Wert für einen Parameter eingeben, wird dieser einzelne Wert im gesamten Sweep verwendet, auch wenn andere Parameter über einen Wertebereich hinweg geändert werden.

Ergebnisse

Nach Abschluss des Trainings:

  • Klicken Sie mit der rechten Maustaste auf Modell trainieren , und wählen Sie trainiertes Modell aus, um die Struktur anzuzeigen, die für die einzelnen Iterationen erstellt wurde. Wenn Sie Tune Model hyperparametersverwenden, klicken Sie mit der rechten Maustaste auf das Modul, und wählen Sie trainiertes Modell , um das beste Modell visuell darzustellen.

    Klicken Sie auf den Baum, um Detailinformationen zu den Teilen sowie Regeln für die einzelnen Knoten anzuzeigen.

  • Um eine Momentaufnahme des Modells zu speichern, klicken Sie mit der rechten Maustaste auf die Ausgabe Trained model (Trainiertes Modell), und wählen Sie Save Model (Modell speichern) aus. Das gespeicherte Modell wird bei nachfolgenden Ausführungen des Experiments nicht aktualisiert.

  • Um das Modell zur Bewertung zu verwenden, fügen Sie einem Experiment das Modul Score Model (Modell bewerten) hinzu.

Beispiele

Beispiele für die Verwendung von Entscheidungs Gesamtstrukturen in Machine Learning finden Sie in den Beispiel Experimenten in der Azure AI Gallery:

  • Nachrichten Kategorisierung: Vergleicht einen multiklassenklassifizierer mit einem Modell, das mit dem Two-Class Decision Forest -Algorithmus mit dem One-vs-All-Multiklasseerstellt wurde.

  • Vorbeugende Wartung: eine erweiterte Exemplarische Vorgehensweise, in der der zweiklassige Decision Forest- Algorithmus verwendet wird, um vorherzusagen, ob ein Medienobjekt innerhalb eines bestimmten Zeitraums ausfällt.

Technische Hinweise

Dieser Abschnitt enthält weitere Implementierungsdetails, Untersuchungen und häufig gestellte Fragen.

Verwendungstipps

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

Eingeschränkter Trainings Satz

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 1.000).

Begrenzte Trainingszeit

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 kleinere Anzahl von zufälligen Splits pro Knoten an (zum Beispiel weniger als 100).

Details zur Implementierung

In diesem Artikel von Microsoft Research finden Sie hilfreiche Informationen zu Ensemble-Methoden, die Entscheidungsbäume verwenden. Von "Stumps" zu Strukturen zu Gesamtstrukturen.

Weitere Informationen zum Trainingsprozess mit der Option Replizieren finden Sie unter Decision Forest for Maschinelles Sehen and Medical Image Analysis. Criminisi und J. Shotton. Springer 2013.

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 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 Erzeugen 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.

Output

Name type BESCHREIBUNG
Untrainiertes Modell ILearner-Schnittstelle Ein untrainiertes binäres Klassifizierungsmodell

Siehe auch

Ordnung
Decision Forest-Regression
Mehr klassige Entscheidungs Gesamtstruktur
Modulliste von A bis Z