Entscheidungsbäume und Regression - Können vorhergesagte Werte außerhalb des Bereichs der Trainingsdaten liegen?

11

Kann der vorhergesagte Wert bei Entscheidungsbäumen außerhalb des Bereichs der Trainingsdaten liegen?

Wenn der Trainingsdatensatzbereich der Zielvariablen beispielsweise 0-100 beträgt, können meine Werte beim Generieren und Anwenden meines Modells auf etwas anderes -5 sein? oder 150?

Da ich die Regression von Entscheidungsbäumen so verstehe, dass sie immer noch auf Regeln basiert - Links / Rechts-Progression - und dass sie am unteren Rand des Baums im Trainingssatz niemals einen Wert außerhalb eines bestimmten Bereichs sehen kann, wird dies niemals möglich sein vorhersagen?

user3788557
quelle
1
Eine ähnliche Frage zu gradientenverstärkten Bäumen finden Sie unter stats.stackexchange.com/questions/304962/…
Adrian

Antworten:

10

Sie haben völlig Recht: Klassische Entscheidungsbäume können keine Werte außerhalb des historisch beobachteten Bereichs vorhersagen. Sie werden nicht extrapoliert.

Gleiches gilt für zufällige Wälder.

Theoretisch gibt es manchmal Diskussionen über etwas ausgefeiltere Architekturen (Botaniken?), Bei denen die Blätter des Baums keinen einzigen Wert angeben , sondern eine einfache Regression enthalten , z. B. die Regression der abhängigen Variablen auf eine bestimmte numerische unabhängige Variable. Wenn Sie durch den Baum navigieren, erhalten Sie einen Regelsatz für die numerische IV, auf die der DV in welchem ​​Fall zurückgeführt werden soll. In einem solchen Fall könnte diese "unterste" Regression extrapoliert werden, um noch nicht beobachtete Werte zu erhalten.

Ich glaube jedoch nicht, dass Standardbibliotheken für maschinelles Lernen diese etwas komplexere Struktur bieten (ich habe dies kürzlich in den CRAN-Aufgabenansichten für R gesucht), obwohl es eigentlich nichts Komplexes geben sollte. Möglicherweise können Sie Ihren eigenen Baum implementieren, der Regressionen in den Blättern enthält.

Stephan Kolassa
quelle
1
Ich habe spärlich über mobForest gelesen, das die Blattregression in R unterstützt, stats.stackexchange.com/questions/48475/mobforest-r-package
Soren Havelund Welling
1
@SorenHavelundWelling: das klingt interessant. Danke für den Zeiger!
Stephan Kolassa
1
Einer der ersten Algorithmen, der lineare Regressionsmodelle in den Blättern eines Baumes bereitstellte, war Quinlans M5, dessen Annäherung in M5P () in Weka (Schnittstelle in R bis RWeka) verfügbar ist. Ein unvoreingenommener Algorithmus für das Problem namens GUIDE wurde zuerst von Loh vorgeschlagen. Binärdateien für sein eigenständiges Paket finden Sie auf seiner Website. Schließlich umfasst unser modellbasierter rekursiver Partitionierungsalgorithmus (MOB) verschiedene solcher Modelle. Es ist im R-Paket partykit verfügbar: mob () ist das generische Tool und lmtree () und glmtree () sind die Anpassung an Bäume mit (verallgemeinerten) linearen Modellen in den Blättern.
Achim Zeileis
2
@SorenHavelundWelling: Leider wurde das mobForestPaket aus CRAN entfernt . Ich werde mir das partykitPaket ansehen , das Achim Zeile empfohlen hat .
Stephan Kolassa
1
Nur ein Köpfchen weiter, dass mobForest wieder auf CRAN ist: cran.r-project.org/web/packages/mobForest/index.html
mkt - Monica
6

Schauen Sie sich auch Cubist im Caret-Paket an. Es erstellt lineare Regressionen in den Endknoten und kann Vorhersagen über und unter dem Bereich der Antwortwerte in den Trainingsdaten extrapolieren. Die Endknoten können auch auf der Grundlage der nächsten Nachbarn gemittelt werden, die als Hyperparameter bereitgestellt werden, sodass äußerst genaue, kreuzvalidierte Vorhersagen möglich sind.

Scott Worland
quelle