Ich möchte meine zwei Cent dazuzählen, da ich dachte, die vorhandenen Antworten seien unvollständig.
Die Durchführung einer PCA kann besonders nützlich sein, bevor Sie eine zufällige Gesamtstruktur (oder LightGBM oder eine andere auf einem Entscheidungsbaum basierende Methode) trainieren.
Grundsätzlich kann es den Prozess des Findens der perfekten Entscheidungsgrenze erheblich vereinfachen, indem Sie Ihr Trainingsset mit höchster Varianz entlang der Richtungen ausrichten.
Entscheidungsbäume reagieren empfindlich auf die Drehung der Daten, da die von ihnen erzeugte Entscheidungsgrenze immer vertikal / horizontal ist (dh senkrecht zu einer der Achsen). Wenn Ihre Daten also wie das linke Bild aussehen, wird ein viel größerer Baum benötigt, um diese beiden Cluster zu trennen (in diesem Fall handelt es sich um einen Baum mit 8 Ebenen). Wenn Sie Ihre Daten jedoch entlang der Hauptkomponenten ausrichten (wie im rechten Bild), können Sie eine perfekte Trennung mit nur einer Ebene erzielen!
Natürlich werden nicht alle Datensätze auf diese Weise verteilt, daher hilft PCA möglicherweise nicht immer, aber es ist dennoch nützlich, es zu versuchen und zu prüfen, ob dies der Fall ist. Und zur Erinnerung: Vergessen Sie nicht, Ihren Datensatz auf die Einheitsvarianz zu normieren, bevor Sie eine PCA durchführen!
PS: Was die Reduzierung der Dimensionalität angeht, stimme ich dem Rest der Leute darin zu, dass es für zufällige Wälder in der Regel kein so großes Problem darstellt wie für andere Algorithmen. Trotzdem kann es Ihnen helfen, Ihr Training ein wenig zu beschleunigen. Die Trainingszeit für den Entscheidungsbaum beträgt O (n m log (m)), wobei n die Anzahl der Trainingsinstanzen und m die Anzahl der Dimensionen ist. Und obwohl zufällige Wälder zufällig eine Teilmenge der Dimensionen für jeden zu trainierenden Baum auswählen, müssen Sie umso mehr Bäume trainieren, je weniger Dimensionen Sie auswählen, um eine gute Leistung zu erzielen.
mtry
Parameter) zum Aufbau eines jeden Baums benötigt wird. Es gibt auch eine auf dem RF-Algorithmus aufbauende Eliminierungstechnik für rekursive Merkmale (siehe das varSelRF R-Paket und die darin enthaltenen Referenzen). Es ist jedoch durchaus möglich, ein erstes Datenreduktionsschema hinzuzufügen, obwohl dies Teil des Prozesses der gegenseitigen Validierung sein sollte. Die Frage ist also: Möchten Sie eine lineare Kombination Ihrer Funktionen in RF eingeben?