Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Überanpassung bei Entscheidungsbäumen Verhindern | Abschnitt
Grundlagen des Überwachten Lernens

bookÜberanpassung bei Entscheidungsbäumen Verhindern

Bevor wir mit der Implementierung eines Entscheidungsbaums in Python beginnen, gibt es ein wichtiges Thema zu besprechen: Overfitting – die zentrale Herausforderung bei Entscheidungsbäumen.

Nachfolgend ein Beispiel, wie der Entscheidungsbaum den Datensatz anpasst. Beachten Sie, wie das Modell auf die Trainingsdaten eingeht und deren Muster sowie Feinheiten erfasst:

Obwohl das Modell das Trainingsset perfekt anpasst und keine Instanzen falsch klassifiziert, besteht das Problem darin, dass die Entscheidungsgrenzen zu komplex sind. Folglich wird die Genauigkeit auf dem Test- (oder Cross-Validation-) Datensatz deutlich niedriger sein als die Genauigkeit auf dem Trainingsdatensatz, was darauf hinweist, dass das Modell überanpasst.

Der Grund hierfür ist, dass das Modell so viele Aufteilungen wie nötig vornimmt, um die Trainingsdaten perfekt abzubilden.

Glücklicherweise ist der Entscheidungsbaum hochgradig konfigurierbar, sodass wir seine Hyperparameter anpassen können, um Overfitting zu minimieren.

Maximale Baumtiefe

Tiefe eines Knotens ist der Abstand (vertikal) vom Knoten zum Wurzelknoten.

Die maximale Tiefe eines Entscheidungsbaums kann begrenzt werden, wodurch der Baum kleiner und weniger anfällig für Overfitting wird. Dazu werden die Entscheidungsknoten auf der maximalen Tiefe in Blattknoten umgewandelt.

Hier ist außerdem ein GIF, das zeigt, wie sich die Entscheidungsgrenze bei unterschiedlichen maximalen Tiefen verändert:

Minimale Anzahl von Stichproben

Eine weitere Möglichkeit, den Baum einzuschränken, besteht darin, die minimale Anzahl von Stichproben an den Blattknoten festzulegen. Dadurch wird das Modell einfacher und robuster gegenüber Ausreißern.

Hier sehen Sie, wie sich dieser Hyperparameter auf die Entscheidungsgrenze auswirkt:

Beide dieser Hyperparameter sind in der Decision Tree-Implementierung von scikit-learn verfügbar.
Standardmäßig ist der Baum nicht eingeschränkt: max_depth ist auf None gesetzt, was bedeutet, dass es keine Begrenzung für die Tiefe gibt, und min_samples_leaf ist auf 1 gesetzt.

question mark

Wählen Sie die FALSCHE Aussage aus.

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 29

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

bookÜberanpassung bei Entscheidungsbäumen Verhindern

Swipe um das Menü anzuzeigen

Bevor wir mit der Implementierung eines Entscheidungsbaums in Python beginnen, gibt es ein wichtiges Thema zu besprechen: Overfitting – die zentrale Herausforderung bei Entscheidungsbäumen.

Nachfolgend ein Beispiel, wie der Entscheidungsbaum den Datensatz anpasst. Beachten Sie, wie das Modell auf die Trainingsdaten eingeht und deren Muster sowie Feinheiten erfasst:

Obwohl das Modell das Trainingsset perfekt anpasst und keine Instanzen falsch klassifiziert, besteht das Problem darin, dass die Entscheidungsgrenzen zu komplex sind. Folglich wird die Genauigkeit auf dem Test- (oder Cross-Validation-) Datensatz deutlich niedriger sein als die Genauigkeit auf dem Trainingsdatensatz, was darauf hinweist, dass das Modell überanpasst.

Der Grund hierfür ist, dass das Modell so viele Aufteilungen wie nötig vornimmt, um die Trainingsdaten perfekt abzubilden.

Glücklicherweise ist der Entscheidungsbaum hochgradig konfigurierbar, sodass wir seine Hyperparameter anpassen können, um Overfitting zu minimieren.

Maximale Baumtiefe

Tiefe eines Knotens ist der Abstand (vertikal) vom Knoten zum Wurzelknoten.

Die maximale Tiefe eines Entscheidungsbaums kann begrenzt werden, wodurch der Baum kleiner und weniger anfällig für Overfitting wird. Dazu werden die Entscheidungsknoten auf der maximalen Tiefe in Blattknoten umgewandelt.

Hier ist außerdem ein GIF, das zeigt, wie sich die Entscheidungsgrenze bei unterschiedlichen maximalen Tiefen verändert:

Minimale Anzahl von Stichproben

Eine weitere Möglichkeit, den Baum einzuschränken, besteht darin, die minimale Anzahl von Stichproben an den Blattknoten festzulegen. Dadurch wird das Modell einfacher und robuster gegenüber Ausreißern.

Hier sehen Sie, wie sich dieser Hyperparameter auf die Entscheidungsgrenze auswirkt:

Beide dieser Hyperparameter sind in der Decision Tree-Implementierung von scikit-learn verfügbar.
Standardmäßig ist der Baum nicht eingeschränkt: max_depth ist auf None gesetzt, was bedeutet, dass es keine Begrenzung für die Tiefe gibt, und min_samples_leaf ist auf 1 gesetzt.

question mark

Wählen Sie die FALSCHE Aussage aus.

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 29
some-alt