特徵選擇之 FCBF演算法

2021-07-23 18:46:17 字數 1236 閱讀 6798

具體詳述可見,提出該演算法的** feature selection for high-dimensional data: a fast correlation-based filter solution

fcbf演算法: 全稱 fast correlation-basd filter solution, 是一種快速過濾的特徵選擇演算法,一種基於symmetrical uncertainty(su)的方法。演算法步驟如下:

1. 計算每個特徵fi

與目標c之間的相關性su

fi,c

,計算公式如下: su

(x,y

)=2i

g(x,

y)e(

x)+e

(y)

ig(x

,y)=

e(x)

−e(x

|y) ,

e(x)

=−∑c

i=1p

(xi)

∗log

2(p(

xi))

e(x|y)=

−∑i=

1cyp

(yi)

∑j=1

cp(x

j|yi

)log

2(p(

xj|y

i))

其中ig(x,y)就代表資訊增益,e(x)代表資訊熵。p(

xi) 代表x的值取i時的概率,c為類別數。

2. 然後將相關度大於預先設好的閾值δ的特徵選擇出來。

3. 將su

fi,c

按從大到小的順序排列,並依次計算每個特徵fi

與排序中小於su

fi,c

的其他所有特徵fj

之間的相關性su

fi,f

j 。

if   su

fi,c

>su

fj,c

then compute  su

fi,f

j 4. 刪除掉sui,j大於suj,c的特徵fj,最後得到特徵子集。

if   su

fi,f

j>su

fj,c

then delete feature  fj

該方法的優勢在於一對冗餘特徵fi

,fj 中,保留與目標c相關性更大的特徵fi

,剔除相關性更小的特徵,同時利用相關度更高的特徵fi

去篩選其他特徵,也減少了時間複雜度,因此是一種快速過濾特徵選擇演算法。

特徵選擇演算法之 chisquare 演算法

chisquare特徵選擇演算法 通過計算各個特徵的卡方值,進行排序後得到。每個特徵的卡方值計算應如下 x 2 ya yb 2 yb 其中,ya是每個樣本中,ya的實際值,而yb為理想值,即假設無關成立時,理想的值。由於假設該特徵與目標特徵無關,則應當在該特徵的範圍上,目標特徵值均勻分布。例如 假設...

特徵選擇演算法之 ReliefF 演算法

relieff演算法是relief演算法的擴充套件,relief演算法只適用於兩類樣本的問題,relieff演算法可以應用到多個樣本上。relieff演算法步驟如下 現有不同類別的樣本若干,對每類樣本稱作 xn。1.從所有樣本中,隨機取出乙個樣本a。2.在與樣本a相同分類的樣本組內,取出k個最近鄰樣...

特徵選擇演算法之 ReliefF 演算法

relieff演算法是relief演算法的擴充套件,relief演算法只適用於兩類樣本的問題,relieff演算法可以應用到多個樣本上。relieff演算法步驟如下 現有不同類別的樣本若干,對每類樣本稱作 xn。1.從所有樣本中,隨機取出乙個樣本a。2.在與樣本a相同分類的樣本組內,取出k個最近鄰樣...