特徵工程——特徵分類及不同類特徵的處理方式

特徵分類

對特徵進行分類,對於不同的特徵應該有不同的處理方法。

根據不同的分類方法,可以將特徵分爲

(1)Low level特徵和High level特徵。

Low level特徵——較低級別的特徵,主要是原始特徵,不需要或者需要非常少的人工處理和干預。

例如文本特徵中的詞向量特徵,圖像特徵中的像素點,用戶id,商品id等。
Low level特徵一般維度比較高,不能用過於複雜的模型。

High level特徵——經過較複雜的處理,結合部分業務邏輯或者規則、模型得到的特徵。

例如人工打分,模型打分等特徵,可以用於較複雜的非線性模型。

Low level 比較針對性,覆蓋面小。長尾樣本的預測值主要受high level特徵影響。 高頻樣本的預測值主要受low level特徵影響。

(2)穩定特徵與動態特徵。

穩定特徵——變化頻率(更新頻率)較少的特徵
例如評價平均分,團購單價格等,在較長的時間段內都不會發生變化。

動態特徵——更新變化比較頻繁的特徵,有些甚至是實時計算得到的特徵
例如距離特徵,2小時銷量等特徵。或者叫做實時特徵和非實時特徵。

針對兩類特徵的不同可以針對性地設計特徵存儲和更新方式
例如
對於穩定特徵,可以建入索引,較長時間更新一次,如果做緩存的話,緩存的時間可以較長。
對於動態特徵,需要實時計算或者準實時地更新數據,如果做緩存的話,緩存過期時間需要設置的較短。

(3)二值特徵、連續特徵、枚舉特徵。

二值特徵——主要是0/1特徵,即特徵只取兩種值:0或者1
例如用戶id特徵:目前的id是否是某個特定的id,詞向量特徵:某個特定的詞是否在文章中出現等等。

連續值特徵——取值爲有理數的特徵,特徵取值個數不定,例如距離特徵,特徵取值爲是0~正無窮。

枚舉值特徵——主要是特徵有固定個數個可能值,例如今天周幾,只有7個可能值:周1,周2,...,週日。

在實際的使用中,我們可能對不同類型的特徵進行轉換,例如將枚舉特徵或者連續特徵處理爲二值特徵。

枚舉特徵處理爲二值特徵技巧
將枚舉特徵映射爲多個特徵,每個特徵對應一個特定枚舉值,例如今天周幾,可以把它轉換成7個二元特徵:今天是否是週一,今天是否是週二,...,今天是否是週日。
連續值處理爲二值特徵方法:
先將連續值離散化(後面會介紹如何離散化),再將離散化後的特徵切分爲N個二元特徵,每個特徵代表是否在這個區間內。


特徵處理與分析


特徵分類後要對特徵進行處理

包括1.特徵歸一化,離散化,缺省值處理。2.特徵降維方法。3.特徵選擇方法等。——主要用於單個特徵的處理。

  • 歸一化
    不同的特徵有不同的取值範圍,在有些算法中,例如線性模型或者距離相關的模型像聚類模型、knn模型等,特徵的取值範圍會對最終的結果產生較大影響,例如二元特徵的取值範圍爲[0,1],而距離特徵取值可能是[0,正無窮),在實際使用中會對距離進行截斷,例如[0,3000000],但是這兩個特徵由於取值範圍不一致導致了模型可能會更偏向於取值範圍較大的特徵,爲了平衡取值範圍不一致的特徵,需要對特徵進行歸一化處理,將特徵取值歸一化到[0,1]區間。
    常用的歸一化方法
    包括
    1.函數歸一化
    通過映射函數將特徵取值映射到[0,1]區間,例如最大最小值歸一化方法,是一種線性的映射。還有通過非線性函數的映射,例如log函數等。
    2.分維度歸一化
    可以使用最大最小歸一化方法,但是最大最小值選取的是所屬類別的最大最小值,即使用的是局部最大最小值,不是全局的最大最小值。
    3.排序歸一化
    不管原來的特徵取值是什麼樣的,將特徵按大小排序,根據特徵所對應的序給予一個新的值。

  • 離散化
    在上面介紹過連續值的取值空間可能是無窮的,爲了便於表示和在模型中處理,需要對連續值特徵進行離散化處理。
    常用的離散化方法
    包括
    1.等值劃分
    將特徵按照值域進行均分,每一段內的取值等同處理。例如某個特徵的取值範圍爲[0,10],我們可以將其劃分爲10段,[0,1),[1,2),...,[9,10)。
    2.等量劃分
    根據樣本總數進行均分,每段等量個樣本劃分爲1段。例如距離特徵,取值範圍[0,3000000],現在需要切分成10段,如果按照等比例劃分的話,會發現絕大部分樣本都在第1段中。使用等量劃分就會避免這種問題,最終可能的切分是[0,100),[100,300),[300,500),..,[10000,3000000],前面的區間劃分比較密,後面的比較稀疏。

  • 缺省值處理
    有些特徵可能因爲無法採樣或者沒有觀測值而缺失,例如距離特徵,用戶可能禁止獲取地理位置或者獲取地理位置失敗,此時需要對這些特徵做特殊的處理,賦予一個缺省值。缺省值如何賦予,也有很多種方法。例如單獨表示,衆數,平均值等。

另外一篇關於處理“特徵工程之連續特徵與離散特徵處理方法介紹”見此文



原文:http://blog.csdn.net/shenxiaoming77/article/details/51543724


發佈了27 篇原創文章 · 獲贊 13 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章