特徵選擇演算法--Relief與ReliefK
阿新 • • 發佈:2018-12-13
本文轉載自:https://blog.csdn.net/ferrarild/article/details/18792613
1:Reiief
Relief演算法最早由Kira提出,最初侷限於兩類資料的分類問題。Relief演算法是一種特徵權重演算法(Feature weighting algorithms),根據各個特徵和類別的相關性賦予特徵不同的權重,權重小於某個閾值的特徵將被移除。
Relief演算法中特徵和類別的相關性是基於特徵對近距離樣本的區分能力。演算法從訓練集D中隨機選擇一個樣本R,然後從和R同類的樣本中尋找最近鄰樣本H,稱為Near Hit,從和R不同類的樣本中尋找最近鄰樣本
2:ReliefK
由於Relief演算法比較簡單,但執行效率高,並且結果也比較令人滿意,因此得到廣泛應用,但是其侷限性在於只能處理兩類別資料,因此1994年Kononeill對其進行了擴充套件,得到了ReliefF作演算法,可以處理多類別問題。該演算法用於處理目標屬性為連續值的迴歸問題。ReliefF演算法在處理多類問題時,每次從訓練樣本集中隨機取出一個樣本R,然後從和R同類的樣本集中找出R的k個近鄰樣本(near Hits),從每個R的不同類的樣本集中均找出k個近鄰樣本(near Misses),然後更新每個特徵的權重,如下式所示:
Relief系列演算法執行效率高,對資料型別沒有限制,屬於一種特徵權重演算法,演算法會賦予所有和類別相關性高的特徵較高的權重,所以演算法的侷限性在於不能有效的去除冗餘特徵。