資料探勘實戰(二) 特徵工程

2021-09-26 00:02:49 字數 1983 閱讀 5607

一、特徵衍生

二、特徵選擇

利用iv值做特徵選擇

2.1 woe

2.2 iv

一 特徵衍生:利用個人(專家)經驗來提取出資料裡對結果影響更大的特徵,往往是原有資料特徵字段通過加減乘除等操作生成新的字段,這些欄位在結合一些線性演算法做訓練的時候往往能起到提公升模型效果的作用。舉例,使用者點外賣,同一家店a,統計乙個星期內使用者在這家店的購買次數,甚至統計乙個月時間範圍內,這樣的時間週期特徵就可以被認為是衍生特徵。具體是怎麼來的呢?拍腦袋想出來的,有些是具有統計含義的,有些就靠自己摸索,所以一開始就說是經驗得來的,你要說有技巧沒有,那就是多參加比賽,看看別人怎麼提取特徵,多自己動手探索。

import pandas as pd

import numpy as np

datapath = "d:\\data\\dataanalyse\\"

datafile = "data.csv"

data = pd.read_csv(datapath+datafile,encoding='gbk')

label = data.columns

print('label=',label)

二、特徵選擇

利用iv值做特徵選擇

2.1 woe

woe的全稱是「weight of evidence」,即證據權重。woe是對原始自變數的一種編碼形式。

要對乙個變數進行woe編碼,需要首先把這個變數進行分組處理(也叫離散化、分箱等等,說的都是乙個意思)。分組後,對於第i組,woe的計算公式如下:

其中,pyi是這個組中響應客戶(風險模型中,對應的是違約客戶,總之,指的是模型中**變數取值為「是」或者說1的個體)佔所有樣本中所有響應客戶的比例,pni是這個組中未響應客戶佔樣本中所有未響應客戶的比例,#yi是這個組中響應客戶的數量,#ni是這個組中未響應客戶的數量,#yt是樣本中所有響應客戶的數量,#nt是樣本中所有未響應客戶的數量。

從這個公式中我們可以體會到,woe表示的實際上是「當前分組中響應客戶佔所有響應客戶的比例」和「當前分組中沒有響應的客戶佔所有沒有響應的客戶的比例」的差異。

對這個公式做乙個簡單變換,可以得到:

變換以後我們可以看出,woe也可以這麼理解,他表示的是當前這個組中響應的客戶和未響應客戶的比值,和所有樣本中這個比值的差異。這個差異是用這兩個比值的比值,再取對數來表示的。woe越大,這種差異越大,這個分組裡的樣本響應的可能性就越大,woe越小,差異越小,這個分組裡的樣本響應的可能性就越小。

2.2 iv

iv的全稱是information value,中文意思是資訊價值,或者資訊量。

我們在用邏輯回歸、決策樹等模型方法構建分類模型時,經常需要對自變數進行篩選。比如我們有200個候選自變數,通常情況下,不會直接把200個變數直接放到模型中去進行擬合訓練,而是會用一些方法,從這200個自變數中挑選一些出來,放進模型,形成入模變數列表。那麼我們怎麼去挑選入模變數呢?

挑選入模變數過程是個比較複雜的過程,需要考慮的因素很多,比如:變數的**能力,變數之間的相關性,變數的簡單性(容易生成和使用),變數的強壯性(不容易被繞過),變數在業務上的可解釋性(被挑戰時可以解釋的通)等等。但是,其中最主要和最直接的衡量標準是變數的**能力。

「變數的**能力」這個說法很籠統,很主觀,非量化,在篩選變數的時候我們總不能說:「我覺得這個變數**能力很強,所以他要進入模型」吧?我們需要一些具體的量化指標來衡量每自變數的**能力,並根據這些量化指標的大小,來確定哪些變數進入模型。iv就是這樣一種指標,他可以用來衡量自變數的**能力。類似的指標還有資訊增益、基尼係數等等。

從直觀邏輯上大體可以這樣理解「用iv去衡量變數**能力」這件事情:我們假設在乙個分類問題中,目標變數的類別有兩類:y1,y2。對於乙個待**的個體a,要判斷a屬於y1還是y2,我們是需要一定的資訊的,假設這個資訊總量是i,而這些所需要的資訊,就蘊含在所有的自變數c1,c2,c3,……,cn中,那麼,對於其中的乙個變數ci來說,其蘊含的資訊越多,那麼它對於判斷a屬於y1還是y2的貢獻就越大,ci的資訊價值就越大,ci的iv就越大,它就越應該進入到入模變數列表中。

資料探勘 特徵工程

特徵工程 常見的特徵工程包括 總結 1 特徵工程的主要目的是將資料轉換為能更好地表示潛在問題的特徵,從而提高機器學習的效能。比如,異常值處理為了去除雜訊,填補缺失值可以加入先驗知識等。2 特徵構造屬於特徵工程的一部分,目的是為了增強資料的表達。3 如果特徵是匿名特徵,並不知道特徵相互之間的關聯性,這...

資料探勘之特徵工程

標籤編碼與獨熱編碼 onehotencoder獨熱編碼和 labelencoder標籤編碼 資料探勘的基本流程 多項式特徵 特徵構建 生成多項式特徵 對於特徵離散化,特徵交叉,連續特徵離散化非常經典的解釋 資料預處理與特徵選擇 特徵工程到底是什麼?機器學習中的資料清洗與特徵處理綜述 sklearn ...

資料探勘之特徵工程

是對原始資料進行一系列工程處理,將其提煉為特徵,作為輸入供演算法和模型使用。從本質上來講,特徵工程是乙個表示和展現數 據的過程。在實際工作中,特徵工程旨在去除原始資料中的雜質和冗餘,設計更 高效的特徵以刻畫求解的問題與 模型之間的關係。特徵工程有很多的方法,其中比較常見的有 為了消除資料特徵之間的量...