CART (Algorithmus)

aus Wikipedia, der freien Enzyklopädie

CART (Classification and Regression Trees) ist ein Algorithmus, der zur Entscheidungsfindung dient. Er wird bei Entscheidungsbäumen eingesetzt.

Der CART-Algorithmus wurde erstmals 1984 von Leo Breiman et al. publiziert.[1]

Allgemeines

Ein bedeutendes Merkmal des CART-Algorithmus ist, dass nur Binärbäume erzeugt werden können, das heißt, dass an jeder Verzweigung immer genau zwei Äste vorhanden sind. Das zentrale Element dieses Algorithmus ist also das Finden einer optimalen binären Trennung.

Beim CART-Algorithmus wird die Attributsauswahl durch die Maximierung des Informationsgehalts gesteuert. CARTs zeichnen sich dadurch aus, dass sie die Daten in Bezug auf die Klassifikation optimal trennen. Dies wird mit einem Schwellwert erreicht, der zu jedem Attribut gesucht wird. Der Informationsgehalt eines Attributes wird als hoch erachtet, wenn durch die Auswertung der sich aus der Teilung über die Schwellwerte ergebenden Attributausprägungen mit einer hohen Trefferquote eine Klassifikation vorgenommen werden kann. Bei den Entscheidungsbäumen, welche durch den CART-Algorithmus berechnet werden, gilt: Je höher der Informationsgehalt eines Attributs in Bezug auf die Zielgröße, desto weiter oben im Baum findet sich dieses Attribut.

Die Entscheidungsschwellwerte ergeben sich jeweils durch die Optimierung der Spaltenentropie. Die Gesamtentropien der Attribute ergeben sich durch ein gewichtetes Mittel aus den Spaltenentropien.

Mathematische Beschreibung

Sei Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \mathcal{D} = \{(x^{(i)}, y_i )\}_{i=1}^m} die Menge der Trainingsdaten mit Eingabevariablen Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle x^{(i)} = (x_1^{(i)}, \dots, x_n^{(i)}) \in \mathcal{X}} und Ausgabewerten Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle y \in \mathcal{Y} } . Ein Entscheidungsbaum Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle T} ist formal darstellbar mittels einer Funktion Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle f_T:\mathcal{X} \rightarrow \mathcal{Y}} , die jeder Eingabe eine Vorhersage des Ausgabewertes zuordnet. Der CART Algorithmus zur Erzeugung eines solchen Baumes findet selbständig die Verzweigungen (Knoten) und assoziierten Regeln zur Trennung der Daten (enS split rule), mit denen diese Zuordnung möglichst optimal wird.

Regression

Sei zunächst Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \mathcal{Y} \subseteq \mathbb{R} } , d. h. die Ausgabe ist ein quantitatives Merkmal und der zu konstruierende Baum soll ein Regressionsproblem lösen. Um einen optimalen Baum zu finden, muss erst einmal ein Trainingskriterium (Fehlerfunktion) definiert werden. Typischerweise wird dafür die Mittlere quadratische Abweichung genutzt:

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle E(T, \mathcal{D})=\frac{1}{m} \sum_{i=1}^m (f_T(x^{(i)}) - y_i)^2} ,

welche dann minimiert wird. Die Fehlerfunktion ist allerdings generell frei wählbar.

Jedem Blatt Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle l} wird eine Menge Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle R_l} zugeordnet, sodass für alle Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle L} Blätter die zugeordneten disjunkten Mengen eine Partition von Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle D} bilden. Man sucht nun einen Schätzwert, der für alle Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle x^{(i)} \in R_l} möglichst nahe an den wahren Werten Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \{ y_i \;|\; x^{(i)} \in R_l \}} liegt. Der Schätzer

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle f_T(x^{(i)} \in R_l) = \textrm{mean}(y_i \;|\;x^{(i)} \in R_l) =: \hat c_l}

liefert dafür eine Lösung. Da die Berechnung aller möglichen Bäume nicht auf effiziente Weise umsetzbar ist, eignet sich für diesen Ansatz ein Greedy-Algorithmus am besten. D.h. konkret: Man beginnt mit einem Baum, der nur aus einem Knoten besteht und findet dann sukzessive lokal optimale Verzweigen. An jedem Knoten bestimmt man das Merkmal Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle j} , das alle Einträge des Elternknoten am besten in zwei Regionen unterteilen kann, wobei immer auch eine optimale Teilungsvorschrift gefunden werden muss. Für ordinale Merkmale erfolgt dies mittels Schranke Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle s} , welche die beiden Regionen Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle R_1(j,s)=\{x^{(i)}\;|\;x^{(i)}_j\leq s\}} und Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle R_2(j,s)=\{x^{(i)}\;|\;x^{(i)}_j > s\}} für alle Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle x^{(i)}} in der ursprünglichen Partition des Elternknotens so erzeugt, dass die Fehlerfunktion minimiert wird. Sind die Merkmale nicht ordinal, ergeben sich die Verzweigungsvorschriften anhand der Zuordnung zu den verschiedenen Merkmalsausprägungen. Formal lässt sich das schreiben als

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \min_{j,s} \big( \min_{c_1} \sum_{x^{(i)} \in R_1(j,s)} (y_i - c_1)^2 + \min_{c_2} \sum_{x^{(i)} \in R_2(j,s)} (y_i - c_2)^2 \big)} ,

wobei Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \hat c_k = \textrm{mean}(y_i \;|\; x^{(i)} \in R_k(j,s))_{k=1,2}} jeweils die beiden Summen minimiert.

Ausgehend von dem einzelnen Knoten, fügt man also in jedem Schritt zwei neue Knoten hinzu, die wiederum solange weiter verzweigt werden, bis eine Abbruchbedingung (z. B. die maximale Pfadlänge von der Wurzel bis zu den Blättern) erfüllt ist.

Pruning

Da der Baum so in den meisten Fällen zu komplex, also anfällig für Überanpassung (englisch overfitting) ist, kann (sollte) er gestutzt werden (englisch Pruning). Überanpassung lässt sich verhindern, indem in der Fehlerfunktion ein Regulationsterm (vgl. englisch Regularization) eingeführt wird, der nicht von den Daten abhängt und die Komplexität des Entscheidungsbaumes bestraft. Dadurch wird unterbunden, dass der Baum spezifische Eigenschaften der Trainingsdaten lernt, die im Allgemeinen (also bei anderen Daten aus der gleichen Grundgesamtheit) nicht zu den wahren Vorhersagen beitragen[2].

Die zweite Möglichkeit, die im Folgenden beschrieben wird, ist es zunächst einen relativ großen Baum Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle T_0} zu konstruieren, der dann im Nachhinein beschnitten wird. Sei Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle T \subset T_0} ein echter Teilgraph, der durch Entfernung inneren Knoten erzeugt werden kann (d. h. die Partitionen der Kinder dieses Knotens werden zusammengelegt). Sei Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle |T|} die Anzahl der Blätter eines solchen Teilgraphs, wobei jedem Blatt Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle l} die Partition Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle R_l} mit Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle |R_l|} Elementen zugeordnet ist. Sei Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \hat c_l} wie oben und

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle Q_l(T, \mathcal{D_t}) = \frac{1}{|R_l|} \sum_{x^{(i)} \in R_l} (y_i - \hat c_l)^2} .

Die Idee ist es einen Baum zu finden, der die Funktion

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle C_\alpha(T, \mathcal{D_t}) = \sum_{l=1}^{|T|} |R_l| Q_l(T, \mathcal{D_t}) + \alpha |T|}

für gegebenes Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \alpha} minimiert. Hierzu wird eine von Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \mathcal{D}} verschiedene Datenmenge Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \mathcal{D_t}} (englisch test set) benutzt, um einer Überanpassung vorzubeugen (vgl. Kreuzvalidierungsverfahren).

Der frei wählbare Parameter Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \alpha} beschreibt die Gewichtung zwischen Güte der Voraussage des Entscheidungsbaums und seiner Komplexität. Für gegebenes Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \alpha} wird eine absteigende Sequenz von Teilbäumen erzeugt, indem bei jedem Schritt der innere Knoten entfernt wird, der den geringsten pro-Knoten Anstieg von Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \sum\nolimits_l |R_l| Q_l(T, \mathcal{D_t})} erzeugt, bis nur noch ein einziger Knoten übrig ist. Es gibt dann einen eindeutig bestimmbaren kleinsten Teilbaum, der Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle C_\alpha(T, \mathcal{D_t})} minimiert.

Klassifizierung

Seien nun die Ausgabewerte kategorisch, d. h. Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \mathcal{Y}} ist eine endliche Menge und o. B. d. A. Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle y_i \in \{1,2,\dots, K\}} . Die einzigen Änderungen des Algorithmus im Vergleich zur Regression betreffen die Fehlerfunktionen für die Konstruktion des Baums und das Pruning.

Wir definieren

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \hat p_{lk} := \frac{1}{|R_l|} \sum_{x_i \in R_l} I(y_i=k)} ,

wobei Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle |R_l|} gleich der Anzahl der Elemente in Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle R_l} sei und Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle I(\cdot)} die Indikatorfunktion.

Damit lässt sich nun in jeder Region Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle R_l} die Klassifizierung der Einträge nach Mehrheitsentscheid durchführen:

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle f_T(x^{(i)} \in R_l) = \textrm{argmax}_k \, \hat p_{lk}} .

Mögliche Fehlerfunktionen geben die sogenannte Unreinheit der Partitionen an und können definiert werden als:

Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \frac{1}{|R_l|} \sum_{x_i \in R_l} I(y_i \neq k) = 1 - \hat p_{lk} \quad} (Missklassifizerungsfehler)
Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle \sum_{k=1}^K \hat p_{lk}(1-\hat p_{lk}) \quad} (Gini-Simpson-Index)
Fehler beim Parsen (MathML mit SVG- oder PNG-Rückgriff (empfohlen für moderne Browser und Barrierefreiheitswerkzeuge): Ungültige Antwort („Math extension cannot connect to Restbase.“) von Server „https://wikimedia.org/api/rest_v1/“:): {\displaystyle -\sum_{k=1}^K \hat p_{lk} \log \hat p_{lk} \quad} (Kreuzentropie, Shannon-Index)

Jede dieser Funktionen kann bei der Konstruktion eines Entscheidungsbaumes anstelle der mittleren quadratischen Abweichung genutzt werden, sodass der wesentliche Teil des Algorithmus unverändert bleibt.

Siehe auch

Literatur

Einzelnachweise

  1. L. Breiman, J. H. Friedman, R. A. Olshen, C. J. Stone: CART: Classification and Regression Trees. Wadsworth: Belmont, CA, 1984.
  2. T. Grubinger, A. Zeileis, K.-P. Pfeiffer: evtree: Evolutionary Learning of Globally Optimal Classification and Regression Trees in R. Journal of Statistical Software. 2014, Volume 61, Issue 1