,得到最好的特徵我有一個X
矩陣1000
特徵(列)和100
線浮動元件和y
兩類0和1的一個矢量對象,的y
尺寸爲(100,1)
。我想計算這個矩陣中的10個最佳特徵,它們區分了2
類。我試圖使用scikit-learn
中定義的卡方,但X
是浮點元素。從矩陣n×m個
你能幫我,告訴我一個我可以使用的功能。
謝謝。
,得到最好的特徵我有一個X
矩陣1000
特徵(列)和100
線浮動元件和y
兩類0和1的一個矢量對象,的y
尺寸爲(100,1)
。我想計算這個矩陣中的10個最佳特徵,它們區分了2
類。我試圖使用scikit-learn
中定義的卡方,但X
是浮點元素。從矩陣n×m個
你能幫我,告訴我一個我可以使用的功能。
謝謝。
我不確定你的意思是X
是浮動元素。 Chi2適用於非負直方圖數據(即l1歸一化)。如果你的數據不符合這個要求,你必須使用另一種方法。
scikit-learn中有一個whole module特徵選擇算法。你讀過文檔嗎?最簡單的一個就是使用SelectKBest。
根據我的經驗,[L1懲罰選擇](http://scikit-learn.org/dev/modules/feature_selection.html#l1-based-feature-selection)是在scikit-learn中進行特徵選擇的最常用方法:我發現它適用於布爾(頻率的對數)和高斯(Gaussians)。 – 2013-05-13 09:13:51
同樣在這裏:)(這顯然是對SO的簡稱) – 2013-05-13 14:44:42
遞歸特徵消除(RFE)對我來說確實很有效。此方法最初爲所有要素分配權重,並以最小權重移除要素。這個步驟被重複應用,直到我們達到我們想要的特徵數量(在你的案例10中)。
http://scikit-learn.org/stable/modules/feature_selection.html#recursive-feature-elimination
據我知道,如果你的數據相關,L1點球選擇可能不是最好的主意。如我錯了請糾正我。
您試圖做兩件事:將100個特徵減少到10個(稱爲[主要組件分析](https://en.wikipedia.org/wiki/Principal_component_analysis)),然後預測每行的類。 [此功能](http://scikit-learn.org/dev/modules/generated/sklearn.decomposition.PCA.html)可能會幫助您使用PCA和[SVMs](http://scikit-learn.org/ stable/modules/svm.html)或[邏輯迴歸](http://scikit-learn.org/dev/modules/generated/sklearn.linear_model.LogisticRegression.html)可能有助於分類。 – 2013-05-12 02:55:21
Anubhav不,這不是你想要做的。 Hocine想要做特徵選擇,而不是降維。 PCA是完全無人監督的,這意味着它根本不會看類。 – 2013-05-12 15:02:16