2013-05-12 229 views
0

,得到最好的特徵我有一個X矩陣1000特徵(列)和100線浮動元件和y兩類0和1的一個矢量對象,的y尺寸爲(100,1)。我想計算這個矩陣中的10個最佳特徵,它們區分了2類。我試圖使用scikit-learn中定義的卡方,但X是浮點元素。從矩陣n×m個

你能幫我,告訴我一個我可以使用的功能。

謝謝。

+0

您試圖做兩件事:將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

+2

Anubhav不,這不是你想要做的。 Hocine想要做特徵選擇,而不是降維。 PCA是完全無人監督的,這意味着它根本不會看類。 – 2013-05-12 15:02:16

回答

1

我不確定你的意思是X是浮動元素。 Chi2適用於非負直方圖數據(即l1歸一化)。如果你的數據不符合這個要求,你必須使用另一種方法。

scikit-learn中有一個whole module特徵選擇算法。你讀過文檔嗎?最簡單的一個就是使用SelectKBest。

+1

根據我的經驗,[L1懲罰選擇](http://scikit-learn.org/dev/modules/feature_selection.html#l1-based-feature-selection)是在scikit-learn中進行特徵選擇的最常用方法:我發現它適用於布爾(頻率的對數)和高斯(Gaussians)。 – 2013-05-13 09:13:51

+0

同樣在這裏:)(這顯然是對SO的簡稱) – 2013-05-13 14:44:42

相關問題