哪些特徵對我的機器學習模型影響最大?
哪些特徵對我的機器學習模型影響最大?
http://blog.sina.com.cn/s/blog_cfa68e330102zelh.html
測量特徵重要性沒有靈丹妙藥,排列重要性是常用的方法之一。與其他技術相比,它具有以下優點。
-
快速計算
-
易於使用和理解
-
它具有我們想要的特徵重要性度量的屬性。
它是如何工作的 ?
在訓練機器學習模型之後計算置換重要性。這種技術向訓練有素的模型提出問題,如果我們在保留目標和所有其他列的同時隨機打亂一列驗證資料,那將如何影響預測機器學習模型的準確性呢?
對單個列的隨機打亂應該會導致預測不那麼準確,並且我們遠不及任何實際資料。因此,對於一個具有高度重要性的特徵,這種 random-reshuffle會對機器學習模型預測的準確性造成更大的損害。
Fig.1 Random shuffle of 'Height at age 10(cm)' col
如圖1所示,只有“10歲(cm)時的高度”這一列的值被reshuffled ,而其他列中的值與之前一樣。如果這一列對訓練後的模型非常重要那麼這種reshuffle會嚴重影響效能。
Python 程式碼示例
示例資料集是FIFA 2018 Statistics(%202018%20Statistics.csv),下面你可以看到一個簡單的RandomForestClassifier正在訓練,以預測來自球隊的球員是否贏得了“Man of the match”獎。Python程式碼如下:
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
df = pd.read_csv('FIFA 2018 Statistics.csv')
y = df['Man of the Match']=='Yes'
features = [i for i in df.columns if df[i].dtype in [np.int64]]
X = df[features]
train_X, val_X, train_y, val_y = train_test_split(X, y, random_state=1)
model = RandomForestClassifier(random_state=0).fit(train_X, train_y)
然後我們使用'eli5'庫來計算排列重要性,Python程式碼如下:
import eli5
from eli5.sklearn import PermutationImportance
perm = PermutationImportance(model, random_state=1).fit(val_X, val_y)
eli5.show_weights(perm, feature_names=val_X.columns.tolist())
解釋結果
特徵從上到下依次降低。每行中的第一個數字表示透過該特徵的reshuffle 減少了模型效能。第二個數字是特徵列的不同reshuffle 的效能降低的隨機性的度量。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2285277/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 對我影響最大的圖靈書圖靈
- 大資料對我們生活中的影響有哪些?大資料
- 對我影響最大的一本書---《明解C語言》C語言
- 對我影響最大的圖靈書之嗨翻C語言圖靈C語言
- 對我影響最大的一本書———《JavaScript高階程式設計》JavaScript程式設計
- OpenAI Sora對遊戲行業影響最大OpenAISora遊戲行業
- AI和機器學習對量化交易領域的影響AI機器學習
- 論資訊顯示對我生活的影響
- IBM收購紅帽,對誰影響最大?IBM
- 對我影響比較大的圖靈書圖靈
- 影像Resize方式對深度學習模型效果的影響深度學習模型
- 虛擬主機對網站有哪些影響?網站
- 區塊鏈對工業農業的影響有哪些區塊鏈
- 高匿代理ip對網路時代的影響有哪些
- 機器學習中的五個實際問題及其對業務的影響機器學習
- 機器學習中,有哪些特徵選擇的工程方法?機器學習特徵
- 《機器學習_05_線性模型_最大熵模型》機器學習模型熵
- 影響mysql效能的因素都有哪些MySql
- 受盜版影響最大的行業是?行業
- 哪種程式語言的影響力最大?
- 【Oracle】-【COMMIT對索引的影響】-從trace看COMMIT對索引的影響OracleMIT索引
- 到底是什麼特徵影響著CNN的效能?特徵CNN
- 工業物聯網對智慧城市的建設有哪些影響
- 軟體測試對軟體質量有哪些影響?
- 新版Redis不再“開源”,對使用者都有哪些影響?Redis
- shrink 操作對索引的影響索引
- Update操作對索引的影響索引
- 哪些因素影響Java呼叫的效能?Java
- Voicebot:亞馬遜Alexa是影響最大的語音助手亞馬遜
- 哪門程式語言影響力最大?
- [軟體人生]關於離婚對孩子的影響——我想說,我經歷
- 綠盟科技李晨:疫情對我國網路安全市場的影響
- ERP系統對企業哪些方面產生影響
- uSwitch:電池壽命對智慧手機購買決定有最大影響
- unusable index對DML/QUERY的影響Index
- Arraysize 對consistent get的影響
- mysql event對主從的影響MySql
- 新增欄位對SQL的影響SQL