特徵選擇—對壞屬性說不

2020-12-06 數據科學與運籌優化

特徵選擇是從原始數據中選擇對於預測Pipeline而言最好的特徵的過程,更正式地說,給定n個特徵,搜索其中包括k個特徵的子集來改善機器學習Pipeline的性能。特徵選擇嘗試剔除數據中的噪聲。特徵選擇的方法包括基於統計和基於模型的特徵選擇。

1. 評價特徵工程的性能指標

除了分類任務的準確率和回歸任務的均方差根外,我們還可以使用元指標對特徵工程進行評價。元指標是指不直接與模型預測性能相關的指標,它們試圖衡量與模型自身相關的性能,包括模型擬合/訓練所用的時間、擬合後的模型預測新實例的時間和需要保存的數據大小等,創建如下函數來完成搜索給定參數,優化機器學習參數,輸出評估Pipeline的指標

特徵工程評價函數

2. 創建基準機器學習流水線

在特徵選擇時,使用邏輯回歸、K最近鄰、決策樹和隨機森林等作為基準。

選擇基準學習器

在選擇基準學習器時,需考慮預測準確率和實時預測時間。

3. 特徵選擇

3.1 基於統計的特徵選擇

(1) 使用皮爾遜相關係數或假設檢驗等單變量方法。皮爾遜相關係數會測量列之間的線性關係,該係數在-1到1之間變化,0表示沒有線性關係,接近-1或1時代表線性關係很強。

皮爾孫相關係數選擇特徵

構建如下類來Pipeline整個相關性選擇預處理過程

相關性選擇預處理過程

(2) 使用假設檢驗,假設檢驗的原則是:特徵與響應向量沒有關係。若要拒絕這一假設,p值小於0.05。p值是介於0到1的小數,代表在假設檢驗下,給定數據偶然出現的概率。p值越低,拒絕零假設的概率越大。在特徵選擇中,p值越低,表示這個特徵與響應變量有關聯的概率越大,要保留這個特徵。f_classif函數在每個特徵上單獨執行一次方差分析,並分配一個p值,SelectKBest會將特徵按照p值排列(越小越好),只保留指定的k個最佳特徵。

使用p值選擇

3.2 基於模型的特徵選擇

主要使用的兩類模型是基於樹的模型和線性模型,這兩類模型都有特徵排列的功能,對特徵劃分子集時很有用,這些方法的邏輯並不相同,但目標一致,找到最佳的特徵子集,優化機器學習的Pipeline。

(1) 基於樹的模型

在擬合決策樹時,決策樹會從根節點開始,在每個節點處貪婪地選擇最優分割,優化節點純淨度指標。默認情況下,會優化基尼指數。每次分割時,模型會記錄每個分割對整體優化目標的幫助。因此,在樹形結構中,這些指標對特徵重要性有記錄。SelectFromModel會使用機器學習內部模型的內部指標來評估特徵的重要性,不使用SelectKBest中的p值。pipeline.steps是由元組組成的列表,pipeline.steps[0][1]是第一個估計器,pipeline.steps[1][1]是第二個估計器。

基於樹的模型

(2) 線性模型和正則化

SelectFromModel可以處理任何包括feature_importances_或coef_屬性的機器學習模型。基於樹模型會暴露前者,線性模型會暴露後者。在擬合後,線性回歸、邏輯回歸、支持向量機等線性模型會將一個係數放在特徵的斜率(重要性)前面,SelectFromModel會認為這個係數等同於重要性,並根據擬合時的係數選擇特徵。正則化是對模型施加額外約束的方法,L1正則化(Lasso),L2正則化(嶺)。

線性模型和正則化

4. 總結

以下作為判斷選擇特徵方法的優劣時參考

(1) 如果特徵是分類的,從SelectKBest開始,用卡方或基於樹的選擇器

(2) 如果特徵基本是定量的,用線性模型和基於相關性的選擇器效果一般更好

(3) 如果是二元分類為題,考慮使用SelectFromModel和SVC,因為SVC會查找優化二元分類任務的係數

相關焦點

  • 教你如何做特徵選擇
    2、特徵選擇的確切含義將高維空間的樣本通過映射或者是變換的方式轉換到低維空間,達到降維的目的,然後通過特徵選取刪選掉冗餘和不相關的特徵來進一步降維。主要方法有:(遞歸特徵消除算法)3、Embedded方法其主要思想是:在模型既定的情況下學習出對提高模型準確性最好的屬性。這句話並不是很好理解,其實是講在確定模型的過程中,挑選出那些對模型的訓練有重要意義的屬性。
  • 劉明祥:論我國刑法不採取共犯從屬性說及利弊
    德、日刑法學中有關要素從屬性的幾種不同學說是以三階層的犯罪論體系為基礎的,一些觀點認為我國傳統的通說採取了極端從屬性說,肯定了共犯對正犯故意的從屬性,顯然是忽視了我國傳統刑法學與德日刑法學以及我國刑法與德日刑法的重大差異。我國不採取共犯從屬性說是一種明智的選擇,雖然不採取共犯從屬說存在擴大教唆犯和幫助犯處罰範圍的風險,但是這種風險可以通過完善立法和司法的途徑來有效控制。
  • 淺析雲存儲的種類劃分及屬性特徵
    區別主要在雲存儲具備的屬性特徵,傳統存儲設備並不具備。雲存儲具備以下的屬性特徵:1、分布式的並行擴展架構雲存儲可以根據需求動態、靈活、按需地進行擴展,因此雲存儲和原來傳統存儲的縱向擴展(scale-up)的架構不同,採用的是橫向擴展(scale-out)的方式進行。通常,雲存儲的節點之間會通過網絡進行連接當需要擴展時只需要把新的節點併入到網絡中即可。
  • 5個特徵選擇算法,讓你的數據處理得心應手
    包裝:包裝法將特徵選擇看作是搜索問題。如回歸特徵消除。 嵌入:嵌入法使用內置了特徵選擇方法的算法。比如,Lasso和RF都有各自的特徵選擇方法。理論已經講夠了,接下來開始說五個特徵選擇的方法。首先,用初始特徵集訓練估計器,通過 coef_或者feature_importances_屬性可以獲得特徵的重要性。然後,從當前的一組特性中刪除最不重要的。該過程在修剪集上遞歸地重複,直到最終達到所需的要選擇的特性數量。大家可能猜到了,這個方法可以用在任何估計器上。
  • 機器學習:特徵選擇和降維實例
    不幸的是,在Do not Overfit II競賽(kaggle.com/c/dont-overfit-ii/data)中,領域知識的使用是不可能的,因為我們有一個二元目標和300個連續變量,這迫使我們嘗試特徵選擇技術。簡介通常,我們將特徵選擇和降維組合在一起使用。雖然這兩種方法都用於減少數據集中的特徵數量,但存在很大不同。
  • 機器學習特徵選擇常用算法
    綜述本文引用地址:http://www.eepw.com.cn/article/201807/383585.htm(1) 什麼是特徵選擇特徵選擇 ( Feature Selection )也稱特徵子集選擇( Feature Subset Selection , FSS ) ,或屬性選擇( Attribute Selection ) ,是指從全部特徵中選取一個特徵子集,使構造出來的模型更好
  • DBSystem開局最佳屬性怎麼選擇 開局最佳屬性選擇推薦[多圖]
    ,相信很多玩家都不清楚,接下來18183小陳為大家介紹dbsystem開局最佳屬性選擇推薦。 dbsystem開局最佳屬性選擇推薦 回答:不,不是的,任務完成後僅僅是個開始。 2.主線劇情過不了怎麼辦? 回答:可以打開下方菜單的任務欄,寫上214,他可以帶你作弊過關(st作者設置的一個比較人性化的手段,當然對於想趕快通關劇情的網友們這是最佳的選擇) 3.自由度太高了,劇情過完之後應該做什麼?
  • 特徵選擇及基於Sklearn的實現
    通常來說主要從兩方面考慮來選擇特徵:特徵發散程度:如果一個特徵不發散,如方差接近0,即樣本在該特徵上沒有顯著差異,這個特徵對於樣本區分的作用就很小。特徵與目標的相關性:與目標相關性高的特徵應該被優先選擇。根據特徵選擇的形式又可以將特徵選擇方法分為3種:過濾法Filter:按照發散程度或者相關性對各個特徵進行評分,通過設定閾值選擇特徵。
  • 分享一個Python中機器學習的特徵選擇工具
    FeatureSelector類包括一些最常見的特徵選擇方法:  1.高百分比的缺失值特徵選擇法  2.共線(高度相關)特徵選擇法  3.樹型結構模型中的零重要性特徵選擇法  4.低重要性特徵選擇法  5.唯一值特徵選擇法  在本文中,我將對機器學習數據集的示例使用FeatureSelector類。
  • 溫度傳感器壞了有什麼特徵
    打開APP 溫度傳感器壞了有什麼特徵 發表於 2019-07-22 15:01:48   冷卻液溫度傳感器壞了表現現象   冷卻液溫度傳感器壞了就不能及時調節水溫及冷卻發動機,容易造成開鍋,拉缸現象。
  • 《基因特工》屬性選擇思路介紹
    《基因特工》中的屬性選擇是相當重要的一個環節,選擇適當的屬性能夠對遊戲體驗產生巨大的提升。「Godstick」分享了自己的屬性選擇思路,感興趣的小夥伴就來看看吧。《基因特工》屬性選擇思路介紹:傷害:暴擊是第一生產力。
  • 村裡老人說:烏鴉嘴壞心不壞,喜鵲嘴不壞心壞,請看
    可是,村內有老人說:「烏鴉嘴壞心不爛,鵲嘴不壞心壞」,難道說只是是以便烏鴉鳴不平嗎?到底也有什麼意思?先說烏鴉:《烏鴉喝水》能夠表明烏鴉是很聰慧的飛禽,並且民俗也是有「烏鴉反哺」的叫法,由此可見烏鴉這類鳥,給大家留有的並不是全是負面信息印像。可是,烏鴉有顯著吃腐肉的生長習性。
  • 機器學習的特徵選擇方法要如何選取?
    基於特徵的特徵選擇方法包括使用統計信息評估每個輸入變量和目標變量之間的關係,並選擇與目標變量關係最密切的那些輸入變量。儘管統計方法的選擇取決於輸入和輸出變量的數據類型,但是這些方法可以快速有效。這樣,當執行基於過濾器的特徵選擇時,對於機器學習從業者來說,為數據集選擇適當的統計量度可能是具有挑戰性的。
  • 毒液並不壞,為何被稱為蜘蛛俠的宿敵?只是因為電影洗白了而已!
    這裡就像咱們一開始說的了,簡單來說,現如今我們看到的索尼影業電影版的「毒液」,算是經歷了一個洗白的過程,因為如果不這麼做,基本上《毒液》很難有比較大的市場,同時,將毒液轉換為「反英雄」,很大程度上也是方便電影有更為寬廣的操作餘地。毒液的人氣值促進了毒液這一屬性的改變!
  • 《怪物獵人世界》屬性流雙刀技能選擇推薦
    《怪物獵人世界》無論使用哪種武器都需要有合理的配裝,而配裝就相當於對是對技能的選擇,通過技能來增加傷害或是會心率等。請看下面的《怪物獵人世界》屬性流雙刀技能選擇推薦,希望大家能過喜歡。
  • ...in Action》——白話貝葉斯,「恰瓜群眾」應該恰好瓜還是恰壞瓜
    但是這西瓜恰到一定數量的時候,他發現有的瓜是好瓜,而有的瓜是壞瓜,當時就困惑著:我滴乖乖,這壞瓜該不會是過期了吧???那咋行呢?我要每次恰之前能夠挑選出壞瓜才行,至少說挑選出好瓜的概率要比壞瓜大才可以吧。為此,他收集了之前恰西瓜時候的一些屬性特徵以及對應標籤,以此來作為他判別好瓜還是壞瓜的依據。
  • 《不休的烏拉拉》寵物屬性介紹 寵物選擇技巧分享
    導 讀 不休的烏拉拉選擇寵物的時候,大家需要自己挑選不同的寵物,根據寵物的屬性進行選擇,想要知道自己選擇的寵物好不好,不僅需要看品質,還有其他方面需要大家注意
  • 好風險與壞風險:保險產品預期回報為何是負的
    你之所以想買汽車保險,就是擔心開車時可能發生車禍,因為一旦發生車禍,你可能會損壞自己的車、讓自己受傷,也可能給別人帶來損失和傷害,所以說,買保險買的是「安心」,讓你不用開車時總是緊張、不能正常判斷。也就是,你開車面對的「壞風險」是:一旦發生車禍,你可能要遭遇很大損失,你希望把這種「壞風險」規避掉。
  • 魔獸世界懷舊服元素薩屬性選擇分析
    魔獸世界懷舊服元素薩屬性如何選擇?針對元素薩智力,法傷,法術命中,5回和法爆有很多玩家不知道怎麼選擇,下面我遊網小編給大家講一下魔獸世界懷舊服元素薩屬性選擇分析。 魔獸世界懷舊服元素薩屬性選擇分析 2019-10-28 15:47 作者:我遊網 來源:本站整理
  • 鬼谷子:心眼壞的人,往往有這3個難以察覺的特徵,千萬要當心
    人生總能遇到各種形形色色的人,這些人當中有好人也有壞人,而我們最怕的就是遇到哪些壞人,因為你不知道哪天他就將你給賣了,你還幫他數錢。因此,看一個人非常重要,可是有句話叫做「知人知面不知心」,你不知道對方在想什麼,所以讓你在人際交往當中不得不小心。