特徵工程非常重要。對於模型的效果起大了極大的作用。實際開發中,大部分的時間都花費在特徵工程上面。特徵工程最重要的是對具體業務的深刻理解。
減少資料儲存和輸入的代價,降低資料的維度
發現更多深入的特徵,提公升準確率。
特徵工程和降維,是處理高維度資料的兩大主要手段。
特徵變換(變)
特徵提取(組)
資料格式化
資料清洗
資料取樣
先對資料進行特徵選擇,在訓練學習器。特徵選擇的過程和學習過程是分隔開的,相當於先對初始特徵進行過濾,再根據過濾後的特徵來訓練學習器。
// 選擇判定的模型,指定每次留下的個數
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 多值有序問題 ...