2012-07-13 72 views
0

我有200個樣本,每個樣本都有60個特徵。我使用PCA找到主要組件。我使用神經網絡,並嘗試k最近鄰居然而,分類結果不好。我不介意抽取一些樣本,但我怎麼知道哪些樣本會破壞我的分類結果?我知道我可以一個接一個地嘗試,但這會非常無效。請幫忙如何找出哪些數據集使用MATLAB破壞我的數據分析?

+0

你可以從異常值中挑選出任何超過平均值2或3個標準差的東西。這取決於你的數據,但... – Dan 2012-07-13 06:46:18

回答

1

而不是拋出一些樣本,您需要丟棄一些屬性。

PCA用d x d條目計算矩陣。在60個屬性處,這個矩陣有3600個條目。你只有200個樣本來計算這個矩陣的內容 - 難怪結果幾乎是隨機的。您需要更少的變量和更多的數據。

0

這是一個經典的機器學習問題。如此多的特徵(在你的情況60中)總是有風險,只有200個樣本。請檢查您是否有多餘的功能。讓我舉一個例子

想想看,我們必須從以下特點預測房價在2 1.尺寸 2.臥室數 3樓年齡 4.大小foot2

請注意在這裏數字2和數字4特徵都給出相同的信息,它們是多餘的。起初它看起來不那麼令人不安。但是,如果你有這樣的數據,它更好地刪除這些功能。

因此,我建議您首先查看您的功能,然後再查看數據。有關更多詳細信息,請參閱斯坦福大學的機器學習課程(由吳教授提供),可在課程中使用