- 《機器學習實戰(zhàn)-數(shù)據(jù)探索(1、變量識別;2、單變量分析;3、雙變量分析)》
- 機器學習實戰(zhàn)-數(shù)據(jù)探索(缺失值處理)
-
機器學習實戰(zhàn)-數(shù)據(jù)探索(異常值處理)
上面三篇文章介紹了數(shù)據(jù)探索的前五步,機器學習更多內(nèi)容可以關注github項目:machine learning
1 變量變換
1.1 什么是變量變換?
在數(shù)據(jù)建模中,變換是指通過函數(shù)替換變量。 例如,通過平方/立方根或?qū)?shù)x替換變量x是一個變換。 換句話說,變換是一個改變變量與其他變量的分布或關系的過程。
1.2 什么時候需要變量變換?
當我們想要改變一個變量的比例(
change the scale)或標準化(standardize)變量的值以便更好地理解。 如果數(shù)據(jù)具有不同的尺度,則此變換是必須的,但此變換不會更改變量分布的形狀。對應處理方法:機器學習之特征工程-數(shù)據(jù)預處理(無量綱化)。-
當我們將復雜的非線性關系轉(zhuǎn)化為線性關系時。 與非線性關系相比,變量之間存在線性關系更容易理解。 轉(zhuǎn)換有助于將非線性關系轉(zhuǎn)換為線性關系。 散點圖可用于查找兩個連續(xù)變量之間的關系,這些變化也改善了預測,log是常用的轉(zhuǎn)換技術之一。
Relation.png 對稱分布優(yōu)于傾斜分布,因為它更容易解釋和產(chǎn)生推論。 一些模型需要正態(tài)分布變量, 所以,每當遇到傾斜分布,使用變量變換。 對于右傾斜分布,取變量的平方/立方根或?qū)?shù),對于左傾斜分布,取變量的平方/立方或指數(shù)。

- 從程序?qū)崿F(xiàn)角度考慮變量轉(zhuǎn)換。 例如在員工績效項目中,發(fā)現(xiàn)年齡與員工績效直接相關,即年齡越高,績效越好。 從實現(xiàn)的角度來看,基于年齡的程序可能會面臨實現(xiàn)挑戰(zhàn)。 然而,將員工分為三個年齡階段30歲,30-45歲和45歲以上,制定三種不同的策略是一種明智的做法。 這種分類技術被稱為變量分組(Binning)。
1.3 變量變換的常用方法是什么?
變換變量有許多方法,如平方根,立方根,對數(shù),合并,倒數(shù)等等。來看看這些方法的細節(jié)和利弊。
- 對數(shù)(log):變量求對數(shù)是用于在分布圖上更改變量分布形狀的常用變換方法。通常用于減少變量的右偏差,雖然,它也不能應用于零值或負值。
- 平方/立方根:變量的平方和立方根對改變變量的分布有效果。然而,它不如對數(shù)變換那么有效。立方根有自己的優(yōu)勢,可以應用于包括零和負值,平方根可以應用于包括零的正值。
- 分箱(Binning):用于對變量進行分類。以原始值,百分位數(shù)或頻率進行分類,分類技術的決策是基于對于業(yè)務的理解。例如,可以將收入分為三類:高,中,低,也可以對多個變量執(zhí)行分箱。
2 生成特征
生成特征是基于現(xiàn)有特征生成新特征的過程。 例如,將日期(dd-mm-yy)作為數(shù)據(jù)集中的輸入特征,可以生成新特征,如日,月,年,周,工作日,可能與target有更好的關系。 此步驟用于突出顯示變量中的隱藏關系。

2.1 生成特征的類別
- 生成派生變量(derived variables)
使用一組函數(shù)或不同方法從現(xiàn)有變量創(chuàng)建新變量。在“Titanic – Kaggle competition”中,年齡存在缺少值,為了預測缺失值,用姓名中稱呼(Master,Mr,Miss,Mrs)作為新變量。如何決定要生成哪個變量?這取決于分析師對業(yè)務理解,以及他對這個問題的假設。諸如采用變量求對數(shù),變量分組或其他變量變換方法也可用于生成新變量。 - 生成虛擬變量(dummy variables)
虛擬變量最常用的應用之一是將分類變量轉(zhuǎn)換成數(shù)字變量,虛擬變量也稱為指標變量(Indicator Variables)。將分類變量作為統(tǒng)計模型中的預測因子是有用的,如:性別可以產(chǎn)生兩個變量,即為1(Male)和0(No male)的“Var_Male”和值為1(Female)和0(No Female)的“Var_Female”。還可以為兩類以上分類變量生成n或n-1個虛擬變量。

2.2 生成特征的常用方法
- 生成日期,時間和地址差異的變量
可以通過考慮日期和時間的差異來創(chuàng)建新變量, 例如:與在30分鐘內(nèi)填寫相同申請的人相比,需要幾天填寫申請表的申請人可能對產(chǎn)品的興趣較少。 同樣,對于銀行來說,在線門戶登錄詳細信息和客戶登錄之間的時間可能會顯示客戶使用在線門戶網(wǎng)站的意愿。同樣,靠近銀行分行的客戶比遠離客戶的參與度更高。 - 生成比例變量
生成變量之間的比例可能會增加很多價值。 經(jīng)常使用的一些比例是:輸入/輸出(過去的表現(xiàn)),生產(chǎn)率,效率和百分比。 例如,為了預測分行的信用卡銷售的未來表現(xiàn),像信用卡銷售/銷售人員或信用卡銷售/營銷支出之類的比率將比銷售的絕對數(shù)量更強大。 - 應用標準變換
通過查看變量和輸出的變化和繪圖,是否變量的基本變換創(chuàng)建了更好的關系。 最常用的變換包括Log,指數(shù),二次和三次變化。 例如,與絕對營銷支出相比,營銷支出的對數(shù)可能與Sales有更具代表性的關系。 - 考慮影響因素的影響
影響因素可以是組織的雇員,組織的代理人或組織的客戶。 引起這些相關實體的影響可以顯著改善模型。 例如,由經(jīng)紀人(而不是所有經(jīng)紀人)發(fā)起的貸款在鎖定期后,更有可能轉(zhuǎn)移到不同的實體。 同樣,一組涉及到銷售人員的子公司,可能對其客戶進行交叉銷售。 - 考慮變量的季節(jié)性
很多企業(yè)面臨著季節(jié)性的問題,可能是由稅收優(yōu)惠,節(jié)日季節(jié)或天氣驅(qū)動的。 如果是這種情況,需要考慮季節(jié)性。 如何在建模時應對季節(jié)性影響的更多細節(jié)可以參考:Festive season special: Building models on seasonal data。
參考
5 Simple manipulations to extract maximum information out of your data
