機器學習之特徵工程簡介

2021-08-01 09:12:05 字數 1262 閱讀 3912

特徵工程非常重要。對於模型的效果起大了極大的作用。實際開發中,大部分的時間都花費在特徵工程上面。特徵工程最重要的是對具體業務的深刻理解。

減少資料儲存和輸入的代價,降低資料的維度

發現更多深入的特徵,提公升準確率。

特徵工程和降維,是處理高維度資料的兩大主要手段。

特徵變換(變)

特徵提取(組)

資料格式化

資料清洗

資料取樣

先對資料進行特徵選擇,在訓練學習器。特徵選擇的過程和學習過程是分隔開的,相當於先對初始特徵進行過濾,再根據過濾後的特徵來訓練學習器。

// 選擇判定的模型,指定每次留下的個數

from sklearn.feayre_selection import selectkbbest

把特徵選擇看成乙個特徵子集搜尋問題。

先訓練,後選擇。給當前ml任務量身定做的特徵過濾方法。

比過濾型的效果更好。但是過程中需要多次訓練,開銷更大

把特徵選擇看成乙個特徵子集搜尋問題

// 選擇判定的模型,指定每次留下的個數

from sklearn.feature_selection import rfe

frc = rfe(lr,n_feature_to_select = num)

frc.fit(x,y)

非常常用,根據模型來分析特徵的重要性。上述兩個是將機器學習和特徵選擇分割開來

嵌入型將兩個融為一體(嵌入),在學習的過程中自動進行特徵選擇。

//指定具體的ml演算法

from skleart.teature_select import selectfrommodel

sfm = selectfrommodel(lr,threshold = num)

l1 = np.random

.randint(1,12,5)

print pd.cut(l1,4)

[(1.991, 4.25], (1.991, 4.25], (8.75, 11], (6.5, 8.75], (4.25, 6.5]]

categories (4, object): [(1.991, 4.25] < (4.25, 6.5] < (6.5, 8.75] < (8.75, 11]]

python的pd中的getdummy方法

pd.getdummys(obj)

機器學習之特徵工程

在工業界一直流行著一句話,資料的質量決定了模型的上線了,而特徵工程與模型的選擇只是盡可能的去逼近這個上線,當我們在資料無法改變的情況,特徵工程的優化便顯得尤為重要。我們輸入模型中,模型只認識資料,並不知道某一列所代表的含義,例如樹模型,它只會按照一定的規則去不停的分支,並不知道分支所代表的含義,而特...

機器學習之特徵工程

特徵工程是將原始資料轉化為更好代表 模型的潛在問題的特徵的過程,從而提高了對位置資料的 準確性。其包括特徵構建 特徵提取 特徵選擇三部分。資料和特徵決定了機器學習的上限,而模型和演算法只是逼近這個上限而已,成功的結果往往源自最開始對資料的處理。tf term frequency,詞的頻率,即出現的次...

機器學習之特徵工程

一 特徵抽象 特徵抽象是指將資料來源抽象演算法可以理解的資料,我們期望的資料是一組可以表達資料某種特性的數字。下面對幾種資料型別抽象舉例 1 時間戳 以某一天為基準值,採用演算法算出某數值,其他的採用和該基準值的差距。2 二值類問題 文字或其他描述的二值問題,可以量化為0和1表示。3 多值有序問題 ...