Grundlagen der KI

Was ist ein Entscheidungsbaum?

mm
Unite.AI zu deinen bevorzugten Quellen auf Google hinzufÞgen

Was ist ein Entscheidungsbaum?

Ein Entscheidungsbaum ist ein nÞtzliches Machine-Learning-Algorithmus, der fÞr Regressions- und Klassifizierungsaufgaben verwendet wird. Der Name “Entscheidungsbaum” kommt von der Tatsache, dass der Algorithmus das Dataset in immer kleinere Teile teilt, bis die Daten in einzelne Instanzen unterteilt sind, die dann klassifiziert werden. Wenn man die Ergebnisse des Algorithmus visualisieren wÞrde, sÃĪhe die Art und Weise, wie die Kategorien unterteilt werden, wie ein Baum mit vielen BlÃĪttern aus.

Das ist eine kurze Definition eines Entscheidungsbaums, aber lasst uns einen tiefen Einblick in die Funktionsweise von EntscheidungsbÃĪumen nehmen. Ein besseres VerstÃĪndnis der Funktionsweise von EntscheidungsbÃĪumen sowie ihrer AnwendungsfÃĪlle wird uns helfen, zu wissen, wann wir sie in unseren Machine-Learning-Projekten verwenden sollten.

Format eines Entscheidungsbaums

Ein Entscheidungsbaum ist ÃĪhnlich wie ein Flussdiagramm. Um ein Flussdiagramm zu verwenden, beginnt man am Startpunkt oder an der Wurzel des Diagramms und bewegt sich dann basierend auf den Filterkriterien des Startknotens zu einem der nÃĪchsten mÃķglichen Knoten. Dieser Prozess wird wiederholt, bis ein Ende erreicht ist.

EntscheidungsbÃĪume funktionieren im Wesentlichen auf die gleiche Weise, wobei jeder interne Knoten im Baum eine Art von Test- oder Filterkriterium darstellt. Die Knoten außen, die Endpunkte des Baums, sind die Labels fÞr den Datenpunkt in Frage und werden als “BlÃĪtter” bezeichnet. Die Äste, die von den internen Knoten zu den nÃĪchsten Knoten fÞhren, sind Merkmale oder Kombinationen von Merkmalen. Die Regeln, die zur Klassifizierung der Datenpunkte verwendet werden, sind die Pfade, die von der Wurzel zu den BlÃĪttern fÞhren.

Algorithmen fÞr EntscheidungsbÃĪume

EntscheidungsbÃĪume funktionieren auf einem algorithmischen Ansatz, der das Dataset in einzelne Datenpunkte teilt, basierend auf verschiedenen Kriterien. Diese Teilungen werden mit verschiedenen Variablen oder Merkmalen des Datasets durchgefÞhrt. Zum Beispiel, wenn das Ziel darin besteht, zu bestimmen, ob ein Hund oder eine Katze durch die Eingabemerkmale beschrieben wird, kÃķnnen die Variablen, auf denen das Dataset geteilt wird, Dinge wie “Krallen” und “bellt” sein.

Welche Algorithmen werden verwendet, um das Dataset in Äste und BlÃĪtter zu teilen? Es gibt verschiedene Methoden, die verwendet werden kÃķnnen, um einen Baum zu teilen, aber die hÃĪufigste Methode der Teilung ist wahrscheinlich eine Technik, die als “rekursive binÃĪre Teilung” bezeichnet wird. Wenn diese Methode der Teilung durchgefÞhrt wird, beginnt der Prozess an der Wurzel und die Anzahl der Merkmale im Dataset stellt die mÃķgliche Anzahl der mÃķglichen Teilungen dar. Eine Funktion wird verwendet, um zu bestimmen, wie viel Genauigkeit jede mÃķgliche Teilung kosten wird, und die Teilung wird durchgefÞhrt, basierend auf den Kriterien, die die geringste Genauigkeit opfern. Dieser Prozess wird rekursiv durchgefÞhrt und Untergruppen werden gebildet, indem die gleiche allgemeine Strategie verwendet wird.

Um die Kosten der Teilung zu bestimmen, wird eine Kostenfunktion verwendet. Eine andere Kostenfunktion wird fÞr Regressions- und Klassifizierungsaufgaben verwendet. Das Ziel beider Kostenfunktionen ist es, zu bestimmen, welche Äste die ÃĪhnlichsten Antwortwerte oder die homogensten Äste haben. Betrachten Sie, dass Sie Testdaten einer bestimmten Klasse haben mÃķchten, die bestimmte Pfade verfolgen, und dies macht intuitiv Sinn.

Im Hinblick auf die Regressionskostenfunktion fÞr die rekursive binÃĪre Teilung wird der Algorithmus wie folgt verwendet:

Summe(y – Vorhersage)^2

Die Vorhersage fÞr eine bestimmte Gruppe von Datenpunkten ist der Mittelwert der Antworten der Trainingsdaten fÞr diese Gruppe. Alle Datenpunkte werden durch die Kostenfunktion gefÞhrt, um die Kosten fÞr alle mÃķglichen Teilungen zu bestimmen, und die Teilung mit den geringsten Kosten wird ausgewÃĪhlt.

Im Hinblick auf die Kostenfunktion fÞr die Klassifizierung ist die Funktion wie folgt:

G = Summe(pk * (1 – pk))

Dies ist der Gini-Score, und es ist ein Maß fÞr die EffektivitÃĪt einer Teilung, basierend auf der Anzahl der Instanzen verschiedener Klassen in den Gruppen, die aus der Teilung resultieren. Mit anderen Worten, es quantifiziert, wie gemischt die Gruppen nach der Teilung sind. Eine optimale Teilung ist, wenn alle Gruppen, die aus der Teilung resultieren, nur aus Eingaben einer Klasse bestehen. Wenn eine optimale Teilung erstellt wurde, wird der “pk”-Wert entweder 0 oder 1 sein und G wird gleich 0 sein. Sie kÃķnnen sich vorstellen, dass die schlechteste Teilung eine ist, bei der es eine 50-50-Verteilung der Klassen in der Teilung gibt, im Falle der binÃĪren Klassifizierung. In diesem Fall wÃĪre der “pk”-Wert 0,5 und G wÃĪre auch 0,5.

Der Teilungsprozess wird beendet, wenn alle Datenpunkte in BlÃĪtter umgewandelt und klassifiziert wurden. Es kann jedoch sein, dass Sie das Wachstum des Baums frÞhzeitig stoppen mÃķchten. Große, komplexe BÃĪume neigen zu Überanpassung, aber es gibt verschiedene Methoden, um dies zu vermeiden. Eine Methode, um Überanpassung zu reduzieren, besteht darin, eine Mindestanzahl von Datenpunkten zu spezifizieren, die zum Erstellen eines Blatts verwendet werden. Eine andere Methode, um Überanpassung zu kontrollieren, besteht darin, den Baum auf eine bestimmte maximale Tiefe zu beschrÃĪnken, was bestimmt, wie lang ein Pfad von der Wurzel zu einem Blatt sein kann.

Ein weiterer Prozess, der bei der Erstellung von EntscheidungsbÃĪumen involviert ist, ist das Beschneiden. Das Beschneiden kann die Leistung eines Entscheidungsbaums verbessern, indem es Äste entfernt, die Merkmale enthalten, die wenig Vorhersagekraft oder wenig Bedeutung fÞr das Modell haben. Auf diese Weise wird die KomplexitÃĪt des Baums reduziert, es wird weniger wahrscheinlich, dass er Þberanpasst, und die Vorhersageleistung des Modells wird verbessert.

Wenn das Beschneiden durchgefÞhrt wird, kann der Prozess am oberen oder unteren Ende des Baums beginnen. Es ist jedoch am einfachsten, mit den BlÃĪttern zu beginnen und zu versuchen, den Knoten zu entfernen, der die hÃĪufigste Klasse in diesem Blatt enthÃĪlt. Wenn die Genauigkeit des Modells nicht beeintrÃĪchtigt wird, wenn dies geschieht, wird die Änderung beibehalten. Es gibt andere Techniken, um das Beschneiden durchzufÞhren, aber die oben beschriebene Methode – reduzierte Fehlerrate – ist wahrscheinlich die hÃĪufigste Methode des Beschneidens von EntscheidungsbÃĪumen.

Überlegungen fÞr die Verwendung von EntscheidungsbÃĪumen

EntscheidungsbÃĪume sind oft nÞtzlich, wenn Klassifizierung durchgefÞhrt werden muss, aber die Rechenzeit ein wichtiger Faktor ist. EntscheidungsbÃĪume kÃķnnen klar machen, welche Merkmale in den ausgewÃĪhlten Datasets die meisten Vorhersagekraft haben. DarÞber hinaus kÃķnnen EntscheidungsbÃĪume im Gegensatz zu vielen Machine-Learning-Algorithmen, bei denen die Regeln, die zur Klassifizierung der Daten verwendet werden, schwer zu interpretieren sind, interpretierbare Regeln liefern. EntscheidungsbÃĪume kÃķnnen auch sowohl kategorische als auch kontinuierliche Variablen verwenden, was bedeutet, dass weniger Vorverarbeitung erforderlich ist, im Vergleich zu Algorithmen, die nur eine dieser Variablentypen verarbeiten kÃķnnen.

EntscheidungsbÃĪume neigen dazu, nicht sehr gut zu funktionieren, wenn sie verwendet werden, um die Werte kontinuierlicher Attribute zu bestimmen. Eine weitere EinschrÃĪnkung von EntscheidungsbÃĪumen ist, dass sie, wenn es wenige Trainingsbeispiele, aber viele Klassen gibt, ungenau sind.

Blogger und Programmierer mit Spezialisierungen in Machine Learning und Deep Learning Themen. Daniel hofft, anderen zu helfen, die Macht von KI fÞr das soziale Wohl zu nutzen.