原文地址:http://blog.csdn.net/ycheng_sjtu/article/details/25343043
什么是特征選擇?
簡單說,特征選擇就是降維。
特征選擇的任務
就是要從n維向量中選取m個特征,把原向量降維成為一個m維向量。但是降維必須保證類別的可分離性或者說分類器的性能下降不多。
注意降維具有片面性,算法並不普適。常常會有失效發生。
降維這件小事
在圖像處理中叫做圖像壓縮、特征提取。重在最優區分(可分離性)。
在模式識別中叫做特征選擇。重在最優描述(保真性)。
降維的基本思想
就是找一個線性變換使得原來的n維觀察值
變成了
這樣維數就下降了,只是要求不能明顯降低類別的可分離性就好。本文介紹的都是線性變換。
為什么要降維?
1.有可能當你使用某個特征就能進行很好的分類,譬如一個二維問題很可能變成一維也可以分類,如圖1所示,把原來的樣本向y軸投影就好了,用一個y分量就能完成分類。可見降維確實很有用,關鍵在於如何找到像y方向這么好的特征呢?
圖1
2.當特征的維數上升后,樣本的可分離性自然是會增加。但是,類別的可分離性和分類器的性能是完全不同的兩碼事。
G.F.Hughes給出了錯誤率跟每次試驗中的訓練樣本數n和特征空間塊數M之間的關系曲線,如圖2所示。
圖2
其中d為維數,l是每維分為的段數。則特征空間塊數
由圖可見隨着維數的繼續增加,錯誤率會持續上升。我們不能盲目增加維數來想當然提高分類性能。
3.維與維之間不一定是獨立的,可能因為相關性而存在冗余。
4.維數大了計算量存儲量就大了嘛。
用什么分類?
還是用距離。
點到點
設k為每個點的分量的下標,則點a到點b之間的距離為:
點到點集
假定點集內共有K個點,
表示點集中第i個點的第k個分量:
類內距離
有一種定義類內距離的方法,它把類內所有點兩兩之間的距離的平均,作為類內距離。下面推導其表達式:
類內某點跟其他點之間的距離的平方:
再j令在集內變化,取平均,就得到類內距離,即:
由於和
都取自同一類內,則有
各分量的方差的無偏估值為:
則有
這不是協方差的跡么?
於是得到結論:類內距離為類協方差矩陣跡的2倍。
推論:某類樣本的協方差矩陣的跡很小,則類內距離小,說明數據抱團,很緊湊。
於是你會想,降維其實就是找個變換,讓變換后的數據各個類別抱團更加緊湊就好了。就是這樣沒錯。
那么,怎么降維?
剛剛已經給出了類內距離的概念。
針對這個概念,有人從完全不同的兩個角度給出了方法。
這就是聚類變換與K-L變換。