數(shù)據(jù)比算法重要纤怒。數(shù)據(jù)決定了機器學習的上限闽坡,而算法只是去盡可能的逼近這個上限。這里的數(shù)據(jù)不是指原始數(shù)據(jù)蛛砰,而是經(jīng)過特征工程處理后的精修數(shù)據(jù)。一個好的預測模型與高效的特征提取息息相關(guān)黍衙,如果特征工程可以得到許多和類別相關(guān)的特征泥畅,那么學習過程就變得的很容易了。下面介紹下特征工程前需要進行的必要特征處理琅翻。
特征縮放
特征縮放的目的是保證所有的特征數(shù)值具有相同的數(shù)量級位仁,因為有些情況下,數(shù)據(jù)中某些特征會具有不同的尺度方椎,比如身高和體重聂抢,為了消除這種不同尺度所造成的偏差,需要 進行特征縮放棠众。有以下兩種方式:
標準化是原始數(shù)據(jù)減掉均值再除以標準差琳疏,得到新的數(shù)據(jù)均值為0,方差為1闸拿,將所有數(shù)據(jù)強制拉倒一個尺度上空盼。歸一化是根據(jù)特征的取值范圍按比例轉(zhuǎn)換,讓所有的數(shù)據(jù)落在0-1的范圍新荤。雖然實現(xiàn)的方式不同揽趾,但實現(xiàn)的效果是相似的。
除了尺度苛骨,還需要關(guān)注偏度篱瞎,偏度是用于描述概率分布非對稱性的一個指標。如圖
偏度的分布圖形都是類似的:一側(cè)是瘦高智袭,占據(jù)了概率分布的大部分奔缠,另一側(cè)是比較長的拖尾。
如果發(fā)現(xiàn)數(shù)據(jù)分布是有偏的吼野,可能是數(shù)據(jù)中存在異常點校哎。在處理異常點時,首先要判斷這些異常點是不是由錯誤或者失誤導致瞳步,如果不是則要考慮異常點和正常值源于不同的分布闷哆,尤其是在異常點占比比較大時,需要單獨處理单起。
即使數(shù)據(jù)中沒有異常點抱怔,數(shù)據(jù)中依然可能出現(xiàn)有偏分布,其一大特點就是最大值和最小值之間差別很大嘀倒,一種常見的處理偏度的方法就是取對數(shù)變換屈留,也就是對特征值取對數(shù)局冰。除了對數(shù),求平方根和求倒數(shù)也是常見的處理方法灌危。
異常點和尺度都是針對完整的數(shù)據(jù)康二,但還有一些特征沒有取值即缺失值。
當缺失值得占比比較小時勇蝙,最簡單的方法就是直接刪除沫勿,但這在樣本集很小的情況下并不是好方法。主動的處理方法是對缺失值作認為的填充味混,常見的方法有K近鄰算法产雹,選取離缺失值最近的k個樣本,并以他們對應特征的均值作為填充翁锡。但人為賦值會帶來不確定性蔓挖,給模型的性能造成影響。
小結(jié)
- 特征縮放可以讓特征取值具有相同尺度盗誊,方法包括標準化和歸一化时甚。
- 異常值會導致數(shù)據(jù)有偏,對數(shù)變化可以去除數(shù)據(jù)的偏度哈踱。
- k近鄰和線性回歸都可以用來對特征的缺失值進行賦值。