機器學習不得不知的的特徵工程
阿新 • • 發佈:2019-02-02
Feature engineering
本文開始之前,著重強調“特徵工程的重要性:資料決定演算法的上限”。
(圖片與本文無關,好看點個贊?)
何為特徵工程
特徵使用方案
1)要實現我們的目標需要哪些資料
2)可行性評估:獲取難度,覆蓋率,準確率
特徵獲取方案
1)如何獲取這些特徵?
2)如何儲存,什麼樣的形式儲存
特徵清洗
1)特徵清洗,異常樣本的清晰
2)取樣資料均衡問題
特徵預處理
1)對於單個特徵:歸一化,標準化,離散化,dummy coding,缺失值填充,資料變換(log,指數)
2)對於多個特徵:
降維(PCA,LDA)
特徵選擇:Filter(相關係數,卡方檢驗,互資訊)、wrapper建立新的特徵
不同型別資料的特徵處理
數值型:
進行歸一化的操作;連續值離散化(分割槽間)
類別型:
編碼,dummy coding或者叫 one hot 。0 0 1 ,1 0 0,0 1 0 。
時間類:
間隔型,為一個區間的哪個階段,如“早,中,晚”。“放假前”,“放假後”。
文字型:
詞頻,詞向量。
統計型:
和業務場景很接近,描述資料所處的位置。
異常資料常用處理方法
缺失值:
當缺失值很多,這個特徵可以不要,當缺失值相對多,可以把是否缺失做一個特徵,當缺失值比較少可以選擇眾數或者平均值。還可以通過機器學習的方法來填充缺失值,比如根據相似性進行填充K鄰近。
特徵數值分佈長尾:
離散化資料,分割槽間處理。
有偏度的特徵:
使用log,倒數,使資料儘可能的呈現正太分佈。
異常點:
判斷異常點是採集的錯誤,還是不具有普適性資料。
資料縮放的手段
標準化:
用原始資料減去均值,再處以標準差。
歸一化:
原始資料減去最小值,除以最大值與最小值的差。
"用同一把尺子量資料"。
-end-