【數據競賽】十組不同類型的組合特征!
特征工程--數值&時間的二階組合特征!

本篇文章是關于數值特征與其它類型特征的二階組合特征以及時間特征與其它特征的組合特征,這一塊的東西相對較少,也較為細節(jié),之前介紹的我們此處就省略了,重點介紹之前沒有涉及和包含的內容。
至此,前后一共十組不同類型的二階組合特征也就介紹完成了,
無序類別特征+無序類別特征; 無序類別特征+有序類別特征; 無序類別特征+數值特征; 無序類別特征+時間特征; 有序類別特征+有序類別特征; 有序類別特征+數值特征; 有序類別特征+時間特征; 數值特征+數值特征; 數值特征+時間特征; 時間特征+時間特征;
后續(xù)的內容我們會介紹三階組合特征的構建技巧。

我們將A作為數值特征,B作為數值特征。
1. 相同物理意義下的加減乘除
如果兩個數值特征是具有相同物理意義的,例如,第一個數值特征是用戶的收入,第二個數值特征是用戶的支出,那么這邊的減乘除就比較有意義:
減:表示用戶的這個月的剩余的錢; 乘:表示一種現象,如果用戶收入高支出高,那么該值就大;收入高支出少,那么該值就一般;收入低,支出也低,那么該值就??; 除:表示用戶的支出占收入的比例; 加:一般意義就不大了;
至于用加減乘除中的哪個,需要依據實際情況考慮。
2. 不同物理意義下的乘除
如果兩個數值特征是不具有相同物理意義的,例如,第一個數值特征表示用戶購買的商品數量,第二個數值特征表示商品的單價,那么這邊的加和減除的意義就不是非常大,加入模型大概率只會引入噪音信息;但是乘法卻非常有意義:
乘:表示用戶需要支付的總金額;
至于用乘除中的哪個,也需要需要依據實際情況考慮,如果此處第一個數值特征表示用戶購買某商品的數量,第二個表示支付金額,那么除就更為有價值,乘法反而意義不大,所以也需要依據實際情況考慮。

我們將A作為數值特征,B作為時間特征。
數值特征和時間特征同時出現的時候,我們可以認為這就是一條時間序列。
1. A關于B的實時變化特征
A的下一時刻與上一時刻的差值,表示上下時刻的變化情況以及比例。
# 先按時間排序
df = df.sort_valeus('B')
df['A_diff'] = df['A'] - df['A'].shift(N) # N可以為1,2,...
df['A_ratio'] = df['A'] / df['A'].shift(N)
2. 將B轉化為類別特征
將時間特征B轉化為類別特征,我們可以將原先天+小時+分鐘+秒的時間特征變化為:
月份特征; 天級別的特征; 小時特征; 星期特征; ...
此時我們可以將無序類別特征和數值特征的組合特征策略直接使用過來。
3. 變換后的B/A統(tǒng)計特征的比較特征
此處變換之后的B指的是,我們對B進行某種形式的轉化,例如轉化為以小時為單位的新的B,然后我們基于轉化后得到的B(可以認為是有序的類別特征)構建與A相關的特征,即我們將此轉化為了: 有序類別特征+數值特征的組合特征。
有序類別特征當做無序類別特征; 相鄰有序類別統(tǒng)計特征的變化; 基于A分組之后B的統(tǒng)計特征; A組內B特征的占比特征。
4. 小結
在本小結,我們重點介紹了數值特征和時間特征相關的組合特征,這塊的特征需要重點關注的還是時間特征以及將其轉換之后與數值特征的交叉特征。

時間特征和時間特征同時出現的情況相對較少,一般出現的情形就是開始日期和結束日期這類相關的,例如貸款日期、還款日期,上網時間、下網時間等等。而這個時候我們經常做的特征就是:
基于兩個時間特征計算時間差值; 轉化為某種類別特征之后判斷是否相等,比如兩個時間特征全部轉化為天,如果兩個時間特征轉化之后都是同一天表示是同一天的;

在本章節(jié),我們枚舉了幾乎所有常見的二元特征的組合方式,包括:
無序類別特征+無序類別特征; 無序類別特征+有序類別特征; 無序類別特征+數值特征; 無序類別特征+時間特征; 有序類別特征+有序類別特征; 有序類別特征+數值特征; 有序類別特征+時間特征; 數值特征+數值特征; 數值特征+時間特征; 時間特征+時間特征;
當然還有一些文本和圖像類的向量特征,因為這些特征較為特征,一般都是向量型的,所以我們會在后面的部分進一步進行介紹。
往期精彩回顧
本站qq群851320808,加入微信群請掃碼:
