Wäre ein Random Forest mit mehreren Ausgängen möglich / sinnvoll?


17
  1. Random Forests (RFs) ist eine wettbewerbsfähige Datenmodellierungs- / Miningmethode.

  2. Ein RF-Modell hat eine Ausgabe - die Ausgabe- / Vorhersagevariable.

  3. Der naive Ansatz zur Modellierung mehrerer Ausgänge mit RFs besteht darin, für jede Ausgangsvariable einen RF zu erstellen. Wir haben also N unabhängige Modelle, und wenn es eine Korrelation zwischen Ausgabevariablen gibt, haben wir eine redundante / doppelte Modellstruktur. Dies könnte in der Tat sehr verschwenderisch sein. In der Regel implizieren mehr Modellvariablen auch ein stärker angepasstes Modell (weniger Verallgemeinerung). Ich bin mir nicht sicher, ob dies hier zutrifft, aber wahrscheinlich schon.

Grundsätzlich könnten wir einen HF mit mehreren Ausgängen haben. Die Vorhersagevariable ist nun ein Vektor (n-Tupel). Die Entscheidungsknoten in jedem Entscheidungsbaum teilen nun den Satz von Ziel- / Vorhersagevektoren auf der Grundlage eines Schwellenvektors auf. Ich nehme an, dass diese Schwelle eine Ebene im n-dimensionalen Raum ist und dass wir daher bestimmen können, auf welcher Seite der Schwelle Vektor Jeder der Zielvektoren ist eingeschaltet.

Der optimale Vorhersagewert für jede Seite der Entscheidungsaufteilung ist der für die Vektoren auf jeder Seite berechnete Mittelwert (Schwerpunkt).

Das Finden des optimalen Aufteilungspunkts beim Arbeiten mit einzelnen Variablen ist trivial und rechnerisch schnell / effizient. Für ein n-Tupel können wir die optimale Aufteilung nicht finden (oder sie wird zumindest mit zunehmender N rechnerisch nicht realisierbar), aber wir können möglicherweise eine nahezu optimale Aufteilung unter Verwendung einer Monte-Carlo-Methode (oder eines Hybrids aus Monte-Carlo und lokal) finden Gradiententraversal).

Würde das tatsächlich funktionieren? Das heißt, würde es nur die Trainingspaare abbilden, ohne sie zu verallgemeinern? Gibt es diese Technik bereits unter einem anderen Namen?

Vielleicht möchten Sie auch überlegen, wie sich dies auf neuronale Netze wie Restricted Boltzmann Machines (RBMs) und Deep Belief Networks auswirkt.


Googeln "Multilabel Random Forest" zeigt, dass dies sogar auf einige unterschiedliche Arten geschehen ist; Trotzdem habe ich bei der Suche nach Musikinformationen mit diesem Ansatz mit vielen Binär-RFs gespielt, und es lief ziemlich gut.

1
Ich würde Ihnen diesen Artikel vorschlagen . Sie tun etwas sehr nah an dem, was Sie beschrieben haben.
Dmitry Laptev

2
Dies ist bereits im Party-Paket und einigen anderen Paketen (R-Sprache) vorhanden.
Jase

Antworten:


8

Entscheidungsbäume mit mehreren Ausgaben (und daher zufällige Gesamtstrukturen) wurden entwickelt und veröffentlicht. Pierre Guertz verteilt ein Paket dafür ( Download). Siehe auch Segal & Xiao, Multivariate Zufallswälder, WIREs Data Mining Knowl Discov 2011 1 80–87, DOI: 10.1002 / widm.12 Ich glaube, die neueste Version von Scikit-learn unterstützt dies auch. Einen guten Überblick über den Stand der Technik bietet die Arbeit von Henrik Linusson mit dem Titel "MULTI-OUTPUT RANDOM FORESTS". Die einfachste Methode zum Treffen der Split-Auswahl an jedem Knoten ist die zufällige Auswahl EINER der Ausgabevariablen und die Befolgung des üblichen Zufallswald-Ansatzes für die Auswahl eines Split. Andere Verfahren, die auf einer gewichteten Summe der gegenseitigen Informationsbewertung in Bezug auf jedes Eingabemerkmal und jede Ausgabevariable basieren, wurden entwickelt, sind jedoch im Vergleich zum randomisierten Ansatz recht teuer.


0

Wie hier angegeben :

Alle Klassifikatoren in scikit-learn klassifizieren mehrere Klassen sofort.

Und dazu gehört auch Random Forest.

Auch die Seite: http://scikit-learn.org/stable/modules/tree.html#tree-multioutput enthält viele Referenzen zu diesem Thema.


6
Deutlich sein; Die Frage bezieht sich auf die Multi- Output- Regression.
Redcalx

Sorry für die Verspätung in meiner Antwort , aber es sieht aus wie Angebote sowie Multioutput Regression Scikit-Learn, zum Beispiel: scikit-learn.org/stable/auto_examples/tree/... Und in jedem Fall gibt es eine Strategie , die eine der Montage besteht Regressor pro Ziel. Dies ist eine einfache Strategie zur Erweiterung von Regressoren, die die Mehrziel-Regression nicht von Haus aus unterstützen: scikit-learn.org/stable/modules/generated/… HTH
0asa
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.