一、數(shù)據(jù)預(yù)處理:數(shù)值型特征無(wú)量綱化
1.數(shù)據(jù)標(biāo)準(zhǔn)化(Standardization)
標(biāo)準(zhǔn)化的前提是特征值服從正態(tài)分布,標(biāo)準(zhǔn)化后,其轉(zhuǎn)換成標(biāo)準(zhǔn)正態(tài)分布。

優(yōu)點(diǎn):
Z-Score最大的優(yōu)點(diǎn)就是簡(jiǎn)單,容易計(jì)算,Z-Score能夠應(yīng)用于數(shù)值型的數(shù)據(jù),并且不受數(shù)據(jù)量級(jí)的影響,因?yàn)樗旧淼淖饔镁褪窍考?jí)給分析帶來(lái)的不便。
缺點(diǎn):
估算Z-Score需要總體的平均值與方差,但是這一值在真實(shí)的分析與挖掘中很難得到,大多數(shù)情況下是用樣本的均值與標(biāo)準(zhǔn)差替代;
Z-Score對(duì)于數(shù)據(jù)的分布有一定的要求,正態(tài)分布是最有利于Z-Score計(jì)算的;
Z-Score消除了數(shù)據(jù)具有的實(shí)際意義,A的Z-Score與B的Z-Score與他們各自的分?jǐn)?shù)不再有關(guān)系,因此Z-Score的結(jié)果只能用于比較數(shù)據(jù)間的結(jié)果,數(shù)據(jù)的真實(shí)意義還需要還原原值;
在存在異常值時(shí)無(wú)法保證平衡的特征尺度。
2.歸一化
1)MinMax歸一化
區(qū)間縮放法利用了邊界值信息,將屬性縮放到[0,1]。
?

缺點(diǎn):這種方法有一個(gè)缺陷就是當(dāng)有新數(shù)據(jù)加入時(shí),可能導(dǎo)致max和min的變化,需要重新定義;MinMaxScaler對(duì)異常值的存在非常敏感。
(2)?MaxAbs歸一化

單獨(dú)地縮放和轉(zhuǎn)換每個(gè)特征,使得訓(xùn)練集中的每個(gè)特征的最大絕對(duì)值將為1.0,將屬性縮放到[-1,1]。它不會(huì)移動(dòng)/居中數(shù)據(jù),因此不會(huì)破壞任何稀疏性
?
缺點(diǎn):這種方法有一個(gè)缺陷就是當(dāng)有新數(shù)據(jù)加入時(shí),可能導(dǎo)致max和min的變化,需要重新定義;MaxAbsScaler與先前的縮放器不同,絕對(duì)值映射在[0,1]范圍內(nèi)。
在僅有正數(shù)據(jù)時(shí),該縮放器的行為MinMaxScaler與此類似,因此也存在大的異常值。
3.正態(tài)分布化(Normalization)
正則化的過(guò)程是將每個(gè)樣本縮放到單位范數(shù)(每個(gè)樣本的范數(shù)為1),如果要使用如二次型(點(diǎn)積)或者其它核方法計(jì)算兩個(gè)樣本之間的相似性這個(gè)方法會(huì)很有用。
該方法是文本分類和聚類分析中經(jīng)常使用的向量空間模型(Vector Space Model)的基礎(chǔ)。Normalization主要思想是對(duì)每個(gè)樣本計(jì)算其p-范數(shù),然后對(duì)該樣本中每個(gè)元素除以該范數(shù),這樣處理的結(jié)果是使得每個(gè)處理后樣本的p-范數(shù)(l1-norm,l2-norm)等于1。
4.標(biāo)準(zhǔn)化與歸一化對(duì)比
?
1)標(biāo)準(zhǔn)化與歸一化的異同
相同點(diǎn):
它們的相同點(diǎn)在于都能取消由于量綱不同引起的誤差;都是一種線性變換,都是對(duì)向量X按照比例壓縮再進(jìn)行平移。
不同點(diǎn):
目的不同,歸一化是為了消除綱量壓縮到[0,1]區(qū)間;
標(biāo)準(zhǔn)化只是調(diào)整特征整體的分布;
歸一化與最大,最小值有關(guān);
標(biāo)準(zhǔn)化與均值,標(biāo)準(zhǔn)差有關(guān);
歸一化輸出在[0,1]之間;
標(biāo)準(zhǔn)化無(wú)限制。
2)什么時(shí)候用歸一化?什么時(shí)候用標(biāo)準(zhǔn)化?
如果對(duì)輸出結(jié)果范圍有要求,用歸一化;
如果數(shù)據(jù)較為穩(wěn)定,不存在極端的最大最小值,用歸一化;
如果數(shù)據(jù)存在異常值和較多噪音,用標(biāo)準(zhǔn)化,可以間接通過(guò)中心化避免異常值和極端值的影響。
?
3)歸一化與標(biāo)準(zhǔn)化的應(yīng)用場(chǎng)景
在分類、聚類算法中,需要使用距離來(lái)度量相似性的時(shí)候(如SVM、KNN)、或者使用PCA技術(shù)進(jìn)行降維的時(shí)候,標(biāo)準(zhǔn)化(Z-score standardization)表現(xiàn)更好;
在不涉及距離度量、協(xié)方差計(jì)算、數(shù)據(jù)不符合正太分布的時(shí)候,可以使用第一種方法或其他歸一化方法。
比如圖像處理中,將RGB圖像轉(zhuǎn)換為灰度圖像后將其值限定在[0 255]的范圍;
基于樹的方法不需要進(jìn)行特征的歸一化。
例如隨機(jī)森林,bagging與boosting等方法。
如果是基于參數(shù)的模型或者基于距離的模型,因?yàn)樾枰獙?duì)參數(shù)或者距離進(jìn)行計(jì)算,都需要進(jìn)行歸一化。
二、數(shù)值型特征特征分箱(數(shù)據(jù)離散化)
離散化是數(shù)值型特征非常重要的一個(gè)處理,其實(shí)就是要將數(shù)值型數(shù)據(jù)轉(zhuǎn)化成類別型數(shù)據(jù)。連續(xù)值的取值空間可能是無(wú)窮的,為了便于表示和在模型中處理,需要對(duì)連續(xù)值特征進(jìn)行離散化處理。
分箱的重要性及其優(yōu)勢(shì):
離散特征的增加和減少都很容易,易于模型的快速迭代;
稀疏向量?jī)?nèi)積乘法運(yùn)算速度快,計(jì)算結(jié)果方便存儲(chǔ),容易擴(kuò)展;
離散化后的特征對(duì)異常數(shù)據(jù)有很強(qiáng)的魯棒性;
比如一個(gè)特征是年齡>30是1,否則0。
如果特征沒(méi)有離散化,一個(gè)異常數(shù)據(jù)“年齡300歲”會(huì)給模型造成很大的干擾;
對(duì)于線性模型,表達(dá)能力受限;
單變量離散化為N個(gè)后,每個(gè)變量有單獨(dú)的權(quán)重,相當(dāng)于模型引入了非線性,能夠提升模型表達(dá)能力,加大擬合;
離散化后可以進(jìn)行特征交叉,由M+N個(gè)變量變?yōu)镸*N個(gè)變量,進(jìn)一步引入非線性,提升表達(dá)能力;特征離散化后,模型會(huì)更穩(wěn)定;
比如如果對(duì)用戶年齡離散化,20-30作為一個(gè)區(qū)間,不會(huì)因?yàn)橐粋€(gè)用戶年齡長(zhǎng)了一歲就變成一個(gè)完全不同的人。
當(dāng)然處于區(qū)間相鄰處的樣本會(huì)剛好相反,所以怎么劃分區(qū)間是門學(xué)問(wèn);
特征離散化以后,起到了簡(jiǎn)化了邏輯回歸模型的作用,降低了模型過(guò)擬合的風(fēng)險(xiǎn);
可以將缺失作為獨(dú)立的一類帶入模型;將所有變量變換到相似的尺度上。
1.無(wú)監(jiān)督分箱法
1)自定義分箱
自定義分箱,是指根據(jù)業(yè)務(wù)經(jīng)驗(yàn)或者常識(shí)等自行設(shè)定劃分的區(qū)間,然后將原始數(shù)據(jù)歸類到各個(gè)區(qū)間中。
2)等距分箱
按照相同寬度將數(shù)據(jù)分成幾等份。
[if !supportLists]3)[endif]等頻分箱
將數(shù)據(jù)分成幾等份,每等份數(shù)據(jù)里面的個(gè)數(shù)是一樣的。區(qū)間的邊界值要經(jīng)過(guò)選擇,使得每個(gè)區(qū)間包含大致相等的實(shí)例數(shù)量。比如說(shuō) N=10 ,每個(gè)區(qū)間應(yīng)該包含大約10%的實(shí)例。
4)聚類分箱
5)二值化(Binarization)
?

?
2.有監(jiān)督分箱法(忽略)
?
三、總結(jié)
1)特征預(yù)處理是數(shù)據(jù)預(yù)處理過(guò)程的重要步驟,是對(duì)數(shù)據(jù)的一個(gè)的標(biāo)準(zhǔn)的處理,幾乎所有的數(shù)據(jù)處理過(guò)程都會(huì)涉及該步驟。
2)我們對(duì)特征進(jìn)行分箱后,需要對(duì)分箱后的每組(箱)進(jìn)行woe編碼和IV值的計(jì)算,通過(guò)IV值進(jìn)行變量篩選后,然后才能放進(jìn)模型訓(xùn)練。
3)分箱后需要進(jìn)行特征編碼,如:LabelEncode、OneHotEncode或LabelBinarizer等。
實(shí)踐代碼:
?

?

?