粒子羣優化算法(PSO)之基於離散化的特徵選擇(FS)(一)

歡迎你們關注咱們的網站和系列教程:http://www.tensorflownews.com/,學習更多的機器學習、深度學習的知識!

做者:Geppettoweb

在機器學習中,離散化(Discretization)和特徵選擇(Feature Selection,FS)是預處理數據的重要技術,提升了算法在高維數據上的性能。因爲許多FS方法須要離散數據,因此一般的作法是在FS以前對數據進行離散化。此外,爲了提升效率,特徵一般單獨(或單變量)離散。這種方案的原理是基於假定每一個特徵都是獨立的,可是當特徵之間存在交互時,這種方案可能不成立。所以,單變量離散化可能會下降FS的性能,由於在離散化過程當中可能會由於特徵之間存在交互而丟失部分信息。算法

在生物信息學、基因組學、圖像處理、文本分類等不一樣領域的機器學習應用中,愈來愈多的高維數據集具備成千上萬的特性。這些數據集一般有大量的冗餘特徵和不相關的特徵,咱們能夠稱之爲噪聲,這是對學習算法的新能有負面影響的。所以,特徵選擇(Feature Selection,FS)一般是一個關鍵的預處理步驟,用於選擇許多機器學習任務的相關特性,例如分類和聚類。在本文中,咱們將重點放在FS的分類問題上。儘管許多研究已經證實了在高維數據中使用特徵選擇的有效性,可是因爲大的搜索空間和特徵交互的存在,這任然是一個具備挑戰性的研究。app

除了特徵選擇,離散化也是對高維數據預處理的關鍵。首先,許多學習算法只適用於離散的數據。此外,經過離散化,能夠忽略數據中一些微小的波動或可能的噪聲。這樣,離散化就有助於提升學習算法的有效性和效率。最後,由於離散數據比聯繫數據更緊湊,那麼須要的內存就相對較少,從而提升了學習算法的效率。所以,特徵選擇和離散化一般用於提升分類性能,同時也對優化計算時間和存儲空間方面有提高。機器學習

雖然目前有不少離散化的方法,可是最經常使用的離散化方法是單變量法。在一個時間內對某一個特徵離散,當不存在特徵交互時,這個方法是很是有效的。可是當這個假設不成立時,咱們須要同時對多個特徵進行離散化。然而,對變量離散化的時間複雜度會高不少,所以,咱們須要一個更強大的搜索技術用於多變量離散化,尤爲是在高維數據上。svg

此外,在實際應用中,一般將單變量離散化應用於FS是許多FS方法的要求。然而,單變量的離散化可能會破壞特徵交互的信息。所以,能夠經過將離散化和特徵選擇兩個過程合併爲一個單獨的過程來得到更好的效果。粒子羣優化(PSO)是由Eberhart and Kennedy提出的一種元啓發式算法。PSO模仿鳥羣中發現的社會行爲。許多FS方法已經被提出使用不一樣類型的PSO算法,如上一篇所介紹的連續PSO和二進制PSO(BPSO)。這些方法的結果顯示了PSO在那些領域的潛力,然而,PSO還並無被用於離散化。函數

在最近的一種方法[evolve particle swarm optimization(EPSO)]中,咱們推薦使用一種被稱爲「bare-bones」 PSO (BBPSO)的PSO派生方法來同時離散和特徵選擇,緣由以下:在PSO中,PSO一般是一個N維向量,對應於N個特徵,每一個值的範圍都是[0,1]。若是它大於一個預約的閾值,則選擇相信的特徵,反之亦然,而不去管它與閾值相比有多大或者多小。所以,兩個不一樣的進化向量可能會產生相同的特徵子集。另外一方面,在離散化中,一個稍微不一樣的進化點可能會致使一個不一樣的離散特徵。所以,找到一個好的切點須要一個微調的搜索機制,能夠在BBPSO中找到。在這個派生的PSO版本中,使用一個高斯隨機發生器對新位置進行採樣,中心是個體最佳位置(pbest)和它的鄰居的最佳位置(gbest)和它們之間的距離的標準誤差。性能

EPSO使用了BBPSO來實現離散化和FS。每一個特徵都有一個轉折點。因爲一個切點能夠是特徵範圍內的任何值,離散化的可能解決方案的數量要比FS大得多。所以,從中獲得的基於熵的切割點被用做縮小搜索空間的初始或潛在的切割點。該方法已取得了良好的效果。可是,因爲這種表示方法,搜索空間對於BBPSO來講仍然太大,沒法得到更好的性能。爲了縮小搜索空間,本文提出了一種利用BBPSO的潛在粒子羣優化算法,該方法能夠在潛在的好算法中選擇合適的分界點。提出了一種新的適應度函數和縮放機制,以提升該方法的性能。學習

(一)研究目標優化

本文針對高維連續數據,提出了一種將離散化和FS相結合的新方法。爲實現這一目標,提出了一種新的粒子在BBPSO中的表示方法。雖然EPSO使用BBPSO直接爲每一個特性發現了一個切點,但新的方法稱爲PPSO,它容許BBPSO自動爲離散化和FS選擇潛在的良好的切點。與使用全特徵集、離散化和FS的兩階段方法和高維數據的EPSO進行了比較。咱們的具體研究目標包括如下內容:網站

  • 如何在單個過程當中進行多變量的離散化和特徵選擇,提升特徵集的識別能力。
  • 與使用全特徵集相比,PPSO所選擇的特徵是否能獲得更好的分類精度。
  • 在精度、特徵子集大小和計算時間方面,PPSO是否比相應的「兩過程」方法表現得更好。
  • PPSO是否比EPSO更有效。
  • 是否PPSO的分類性能都優於傳統方法。
  • PPSO的結果是否適用於其餘的學習算法,而不是包裝方法(wrapped method)。

雖然本文提出的新方法(PPSO)和現有的方法(EPSO)是經過離散化來解決FS的,但它們的主要組成部分,即表示方法和評價方法,都是很是不一樣的。在進化計算(EC)技術中,表徵在方法的有效性和效率方面起着重要的做用。一個好的表示能夠減小搜索空間的大小,這在EC方法中一般是很是大的。僅FS問題的搜索空間已經很是大,所以將其與離散化相結合會致使更大的空間。所以,本文提出了一種新的表示方法,使搜索過程更加有效。本文的另外一個貢獻是一種新的適應度函數,它結合了包裝(wrapped)和過濾(filter)措施,以綜合兩種方法的優勢。然而,提出的混合方法是爲了更好地評估候選方案,而不須要使用基於相同距離度量的包裝器和過濾方法來支付更多的計算成本。

本篇文章出自http://www.tensorflownews.com,對深度學習感興趣,熱愛Tensorflow的小夥伴,歡迎關注咱們的網站!

相關文章
相關標籤/搜索