Ich bin mir ziemlich sicher, dass es vor gefragt worden ist, aber ich bin nicht in der Lage, eine Antwortsklearn logistische Regression - wichtige Funktionen
Ausführen logistische Regression sklearn auf Python zu finden, ich bin in der Lage meine Datensatz Transformation seine wichtigsten Funktionen mit der Transform-Methode
classf = linear_model.LogisticRegression()
func = classf.fit(Xtrain, ytrain)
reduced_train = func.transform(Xtrain)
Wie kann ich sagen, welche Features als am wichtigsten ausgewählt wurden? allgemeiner wie kann ich den p-Wert jedes Merkmals im Datensatz berechnen?
Es ist mein Verständnis, dass die coefs_ Größe kein Maß für die Merkmalsbedeutung ist. Kannst du mir erklären, wie ich die Zahlen betrachten soll? Danke – mel
@mel: Mit Blick auf den Quellcode kann ich sehen, dass 'LogisticRegression.transform' in der Tat' coef_' verwendet, um die Wichtigkeit der Funktion zu bewerten. Es werden nur Koeffizienten mit einem höheren absoluten Wert als wichtiger angesehen. Der entsprechende Code lautet [hier] (https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/feature_selection/from_model.py). Wenn Sie eine andere Definition von "Wichtigkeit" möchten, müssen Sie erklären, was das ist. – BrenBarn
In der Tat ist 'np.abs (coef_)' ein schrecklicher Versuch, die Bedeutsamkeit eines Merkmals zu quantifizieren - ein Konzept, das in einer multivariaten Einstellung sowieso nicht viel Sinn macht (dh die Variablen wirken gemeinsam, um die Vorhersage zu treffen), außer Ihr Modell variable Auswahl, z durch Sparsity. Wenn das Modell Sparsity fördert, dann können Sie die Variablen, deren Gewichte Null sind, verwerfen, aber das ist technisch alles, was Sie wirklich tun können, wenn Sie streng sein wollen.Einige andere Modelle zeigen 'feature_importance' an und je nach Modell ist dies ein mehr oder weniger univariates Maß dafür, wie gut diese Funktion Daten erklärt. – eickenberg