特徵處理之一 如何處理連續型特徵

2021-09-10 09:42:55 字數 869 閱讀 8579

對於傳統的機器學習、資料探勘問題,在cv、nlp領域之外,一般而言特徵工程是很重要的。

對特徵進行異常處理亦或是組合的時候往往需要考慮實際業務,但是在實際業務之外,也有那麼一些常規的技巧可以遵循。

沒錯,來句廢話……連續型特徵的原始形態就可以作為模型的輸入,無論是linearregression、神經網路,還是lr、svm,又或是gbdt、xgboost和lightgbm等這些演算法模型都可以處理。

對於linearregression這種非樹類模型,輸入值符合正態分佈有時能提高一些**的準確性。使用log轉換與box-cox轉換就是為了達到這個目的。

log轉換:log轉換很容易理解,對所有數值進取對數,這種操作可以使直方圖中山峰偏左的資料轉化為山峰處在中間、近似正態分佈的資料。

box-cox轉換:

資料分箱是一種將連續型資料轉換成為離散型資料的操作,一般而言是為了提公升泛化能力。當然轉變為離散型資料後還需要進行一些的離散型資料的處理。

例如:1,2,2,3,4,5,6,7,8,9,10這樣一組數值,按照(1-2,3-4,5-6,7-8,9-10)這樣的分割槽規則分割槽,

那麼就會得到(1-2,1-2,1-2,3-4,3-4,5-6,5-6,7-8,7-8,9-10,9-10)這樣的資料,直觀理解就是10種變成了5種。

分相操作一般是等寬分箱(上面這種在將(1-10)這個範圍等距切分成5份的),也有等量分箱(按照資料的數量劃分,每個箱裡面值的數量保持一致),還有按照需求自定義分箱。

多項式也是特徵組合的一種方式,即將

tips:多項式可能也只會對純線性模型起到一點兒作用了,對神經網路和整合學習這些真的半點實際作用都沒有……

資料預處理(四) 處理連續型特徵

將連續型特徵轉換為分類特徵,主要包括二值化與分段兩種。設定閾值,將特徵值劃分為0或1,在只考慮某種現象有無出現時可以進行該操作。可以使用sklearn.preprocessing.binarizer進行資料二值化。from sklearn.preprocessing import binarizer...

決策樹如何處理取值為連續值的特徵(屬性)

在介紹資訊增益 資訊增益率 基尼指數的時候都只是說了離散特徵的處理,公式也是只針對離散特徵,那麼連續特徵怎麼辦呢?顯然公式不再適用,那麼我們改公式嗎?本來這幾個公式就來自其他學科的研究成果,直接推廣似乎不大可能,那麼就有另一條路,把連續的特徵離散化。這樣一來不就又可以套上面處理離散值的公式了嗎?辦法...

離散型特徵處理get dummies 方法

官方文件 get dummies 對離散型資料進行one hot編碼 離散特徵的編碼分為兩種情況 1 離散特徵的取值之間沒有大小的意義,比如color red,blue 那麼就使用one hot編碼。2 離散特徵的取值有大小的意義,比如size x,xl,xxl 那麼就使用數值的對映,如。get d...