2017-05-24 7 views
0

Ich benutze Scikit-lernen Gradient-Boosted Bäume Klassifikator, GradientBoostingClassifier. Es stellt Feature-Wichtigkeits-Score in feature_importances_ zur Verfügung. Wie werden diese Feature-Importwerte berechnet?Wie wird Feature-Wichtigkeit für GradientBoostingClassifier berechnet

Ich würde gern verstehen, welchen Algorithmus scikit-learn verwendet, um mir zu helfen, zu verstehen, wie man diese Zahlen interpretiert. Der Algorithmus ist nicht in der Dokumentation aufgeführt.

+0

Es ist hier dokumentiert: http://scikit-learn.org/stable/modules/ensemble.html#feature-importance-evaluation – EdChum

+0

Danke, @EdChum! Es stellt sich heraus, dass das nicht der richtige Link war (der Link, den Sie angegeben haben, ist die Dokumentation für RandomForest und ExtraTrees), aber es hat mir geholfen, die Antwort für GradientBoostingClassifier zu finden. Ich habe eine Antwort geschrieben, die erklärt. Danke für Ihre Hilfe! –

Antwort

1

Dies ist dokumentiert elsewhere in der Scikit-lernen-Dokumentation. Hier ist, wie es funktioniert:

Für jeden Baum berechnen wir die Merkmalsbedeutung eines Merkmals F als Bruchteil von Stichproben, die einen Knoten durchlaufen, der basierend auf Merkmal F aufteilt (siehe here). Dann werden diese Zahlen über alle Bäume hinweg gemittelt (wie beschrieben here).

Es ist nicht genau beschrieben, wie schätzt den Anteil der Knoten Scikit-Learn, die einen Baum Knoten durchlaufen werden, die auf Funktion

F. teilt

Die Interpretation: Noten im Bereich sein werden [0,1]. Höhere Werte bedeuten, dass das Merkmal wichtiger ist. Erwarten Sie nicht, dass die Punktzahlen eins ergeben; Sie sind nicht so normalisiert.

Verwandte Themen