Ich habe zwei RandomForestClassifier-Modelle und möchte sie zu einem Metamodell kombinieren. Sie wurden beide mit ähnlichen, aber unterschiedlichen Daten trainiert. Wie kann ich das tun?
%Vor% Ich möchte big_rf
mit allen Bäumen erstellen, die in einem 500-Baum-Modell kombiniert sind
Ich glaube, dies ist möglich, indem die Attribute estimators_
und n_estimators
für das RandomForestClassifier-Objekt geändert werden. Jeder Baum in der Gesamtstruktur wird als DecisionTreeClassifier-Objekt gespeichert, und die Liste dieser Bäume wird im Attribut estimators_
gespeichert. Um sicherzustellen, dass es keine Diskontinuität gibt, ist es auch sinnvoll, die Anzahl der Schätzer in n_estimators
zu ändern.
Der Vorteil dieser Methode besteht darin, dass Sie mehrere kleine Gesamtstrukturen parallel auf mehreren Computern erstellen und kombinieren können.
Hier ist ein Beispiel, das den Iris-Datensatz verwendet:
%Vor% Zusätzlich zur @moldwasser-Lösung besteht eine Alternative darin, warm_start
beim Training Ihres Waldes zu verwenden. In Scikit-Learn 0.16-dev können Sie jetzt Folgendes tun:
Tags und Links python python-2.7 classification scikit-learn random-forest