模型變量選擇方法-IV值WOE

1.IV的用途

IV的全稱是Information?Value,中文意思是信息價值,或者信息量译红。

我們在用邏輯回歸署恍、決策樹等模型方法構(gòu)建分類模型時,經(jīng)常需要對自變量進(jìn)行篩選却妨。比如我們有200個候選自變量饵逐,通常情況下,不會直接把200個變量直接放到模型中去進(jìn)行擬合訓(xùn)練管呵,而是會用一些方法梳毙,從這200個自變量中挑選一些出來,放進(jìn)模型捐下,形成入模變量列表账锹。那么我們怎么去挑選入模變量呢?

挑選入模變量過程是個比較復(fù)雜的過程坷襟,需要考慮的因素很多奸柬,比如:變量的預(yù)測能力,變量之間的相關(guān)性婴程,變量的簡單性(容易生成和使用)廓奕,變量的強壯性(不容易被繞過),變量在業(yè)務(wù)上的可解釋性(被挑戰(zhàn)時可以解釋的通)等等。但是桌粉,其中最主要和最直接的衡量標(biāo)準(zhǔn)是變量的預(yù)測能力蒸绩。

“變量的預(yù)測能力”這個說法很籠統(tǒng),很主觀铃肯,非量化患亿,在篩選變量的時候我們總不能說:“我覺得這個變量預(yù)測能力很強,所以他要進(jìn)入模型”吧押逼?我們需要一些具體的量化指標(biāo)來衡量每自變量的預(yù)測能力步藕,并根據(jù)這些量化指標(biāo)的大小,來確定哪些變量進(jìn)入模型挑格。IV就是這樣一種指標(biāo)咙冗,他可以用來衡量自變量的預(yù)測能力。類似的指標(biāo)還有信息增益漂彤、基尼系數(shù)等等雾消。

2.對IV的直觀理解

從直觀邏輯上大體可以這樣理解“用IV去衡量變量預(yù)測能力”這件事情:我們假設(shè)在一個分類問題中,目標(biāo)變量的類別有兩類:Y1显歧,Y2仪或。對于一個待預(yù)測的個體A,要判斷A屬于Y1還是Y2士骤,我們是需要一定的信息的范删,假設(shè)這個信息總量是I,而這些所需要的信息拷肌,就蘊含在所有的自變量C1到旦,C2,C3巨缘,……添忘,Cn中,那么若锁,對于其中的一個變量Ci來說搁骑,其蘊含的信息越多,那么它對于判斷A屬于Y1還是Y2的貢獻(xiàn)就越大又固,Ci的信息價值就越大仲器,Ci的IV就越大,它就越應(yīng)該進(jìn)入到入模變量列表中仰冠。

3.IV的計算

前面我們從感性角度和邏輯層面對IV進(jìn)行了解釋和描述乏冀,那么回到數(shù)學(xué)層面,對于一個待評估變量洋只,他的IV值究竟如何計算呢辆沦?為了介紹IV的計算方法昼捍,我們首先需要認(rèn)識和理解另一個概念——WOE,因為IV的計算是以WOE為基礎(chǔ)的肢扯。

3.1WOE

WOE的全稱是“Weight?of?Evidence”妒茬,即證據(jù)權(quán)重。WOE是對原始自變量的一種編碼形式蔚晨。

要對一個變量進(jìn)行WOE編碼郊闯,需要首先把這個變量進(jìn)行分組處理(也叫離散化、分箱等等蛛株,說的都是一個意思)。分組后育拨,對于第i組谨履,WOE的計算公式如下:

其中,pyi是這個組中響應(yīng)客戶(風(fēng)險模型中熬丧,對應(yīng)的是違約客戶笋粟,總之,指的是模型中預(yù)測變量取值為“是”或者說1的個體)占所有樣本中所有響應(yīng)客戶的比例析蝴,pni是這個組中未響應(yīng)客戶占樣本中所有未響應(yīng)客戶的比例害捕,#yi是這個組中響應(yīng)客戶的數(shù)量,#ni是這個組中未響應(yīng)客戶的數(shù)量闷畸,#yT是樣本中所有響應(yīng)客戶的數(shù)量尝盼,#nT是樣本中所有未響應(yīng)客戶的數(shù)量。

從這個公式中我們可以體會到佑菩,WOE表示的實際上是“當(dāng)前分組中響應(yīng)客戶占所有響應(yīng)客戶的比例”和“當(dāng)前分組中沒有響應(yīng)的客戶占所有沒有響應(yīng)的客戶的比例”的差異盾沫。

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

變換以后我們可以看出殿漠,WOE也可以這么理解赴精,他表示的是當(dāng)前這個組中響應(yīng)的客戶和未響應(yīng)客戶的比值,和所有樣本中這個比值的差異绞幌。這個差異是用這兩個比值的比值蕾哟,再取對數(shù)來表示的。WOE越大莲蜘,這種差異越大谭确,這個分組里的樣本響應(yīng)的可能性就越大,WOE越小菇夸,差異越小琼富,這個分組里的樣本響應(yīng)的可能性就越小。

關(guān)于WOE編碼所表示的意義庄新,大家可以自己再好好體會一下鞠眉。

3.2 IV的計算公式

有了前面的介紹薯鼠,我們可以正式給出IV的計算公式。對于一個分組后的變量械蹋,第i?組的WOE前面已經(jīng)介紹過出皇,是這樣計算的:

同樣,對于分組i哗戈,也會有一個對應(yīng)的IV值郊艘,計算公式如下:

有了一個變量各分組的IV值,我們就可以計算整個變量的IV值唯咬,方法很簡單纱注,就是把各分組的IV相加:

其中,n為變量分組個數(shù)胆胰。

3.3 用實例介紹IV的計算和使用

下面我們通過一個實例來講解一下IV的使用方式狞贱。

3.3.1 實例

假設(shè)我們需要構(gòu)建一個預(yù)測模型,這個模型是為了預(yù)測公司的客戶集合中的每個客戶對于我們的某項營銷活動是否能夠響應(yīng)蜀涨,或者說我們要預(yù)測的是客戶對我們的這項營銷活動響應(yīng)的可能性有多大瞎嬉。假設(shè)我們已經(jīng)從公司客戶列表中隨機抽取了100000個客戶進(jìn)行了營銷活動測試,收集了這些客戶的響應(yīng)結(jié)果厚柳,作為我們的建模數(shù)據(jù)集氧枣,其中響應(yīng)的客戶有10000個。另外假設(shè)我們也已經(jīng)提取到了這些客戶的一些變量别垮,作為我們模型的候選變量集便监,這些變量包括以下這些(實際情況中,我們擁有的變量可能比這些多得多碳想,這里列出的變量僅僅是為了說明我們的問題):

最近一個月是否有購買茬贵;

最近一次購買金額;

最近一筆購買的商品類別移袍;

是否是公司VIP客戶解藻;

假設(shè),我們已經(jīng)對這些變量進(jìn)行了離散化葡盗,統(tǒng)計的結(jié)果如下面幾張表所示螟左。

(1) 最近一個月是否有過購買:

(2) 最近一次購買金額:

(3) 最近一筆購買的商品類別:

(4) 是否是公司VIP客戶:

3.3.2 計算WOE和IV

我們以其中的一個變量“最近一次購買金額”變量為例:

我們把這個變量離散化為了4個分段:<100元,[100,200)觅够,[200,500)胶背,>=500元。首先喘先,根據(jù)WOE計算公式钳吟,這四個分段的WOE分別為:

插播一段,從上面的計算結(jié)果中我們可以看一下WOE的基本特點:

當(dāng)前分組中窘拯,響應(yīng)的比例越大红且,WOE值越大坝茎;

當(dāng)前分組WOE的正負(fù),由當(dāng)前分組響應(yīng)和未響應(yīng)的比例暇番,與樣本整體響應(yīng)和未響應(yīng)的比例的大小關(guān)系決定嗤放,當(dāng)前分組的比例小于樣本整體比例時,WOE為負(fù)壁酬,當(dāng)前分組的比例大于整體比例時次酌,WOE為正,當(dāng)前分組的比例和整體比例相等時舆乔,WOE為0岳服。

WOE的取值范圍是全體實數(shù)。

我們進(jìn)一步理解一下WOE希俩,會發(fā)現(xiàn)派阱,WOE其實描述了變量當(dāng)前這個分組,對判斷個體是否會響應(yīng)(或者說屬于哪個類)所起到影響方向和大小斜纪,當(dāng)WOE為正時,變量當(dāng)前取值對判斷個體是否會響應(yīng)起到的正向的影響文兑,當(dāng)WOE為負(fù)時盒刚,起到了負(fù)向影響。而WOE值的大小绿贞,則是這個影響的大小的體現(xiàn)因块。

好,回到正題籍铁,計算完WOE涡上,我們分別計算四個分組的IV值:

再插播一段,從上面IV的計算結(jié)果我們可以看出IV的以下特點:

對于變量的一個分組拒名,這個分組的響應(yīng)和未響應(yīng)的比例與樣本整體響應(yīng)和未響應(yīng)的比例相差越大吩愧,IV值越大,否則增显,IV值越醒慵选;

極端情況下同云,當(dāng)前分組的響應(yīng)和未響應(yīng)的比例和樣本整體的響應(yīng)和未響應(yīng)的比例相等時糖权,IV值為0;

IV值的取值范圍是[0,+∞)炸站,且星澳,當(dāng)當(dāng)前分組中只包含響應(yīng)客戶或者未響應(yīng)客戶時,IV?=?+∞旱易。

OK禁偎,再次回到正題腿堤。最后,我們計算變量總IV值:

3.3.3 IV值的比較和變量預(yù)測能力的排序

我們已經(jīng)計算了四個變量中其中一個的WOE和IV值届垫。另外三個的計算過程我們不再詳細(xì)的說明释液,直接給出IV結(jié)果。

最近一個月是否有過購買:0.250224725

最近一筆購買的商品類別:0.615275563

是否是公司VIP客戶:1.56550367

前面我們已經(jīng)計算過装处,最近一次購買金額的IV為0.49270645

這四個變量IV排序結(jié)果是這樣的:是否是公司VIP客戶?>?最近一筆購買的商品類別?>?最近一次購買金額?>?最近一個月是否有過購買误债。我們發(fā)現(xiàn)“是否是公司VIP客戶”是預(yù)測能力最高的變量,“最近一個月是否有過購買”是預(yù)測能力最低的變量妄迁。如果我們需要在這四個變量中去挑選變量寝蹈,就可以根據(jù)IV從高到低去挑選了。

4.關(guān)于IV和WOE的進(jìn)一步思考

4.1 為什么用IV而不是直接用WOE

從上面的內(nèi)容來看登淘,變量各分組的WOE和IV都隱含著這個分組對目標(biāo)變量的預(yù)測能力這樣的意義箫老。那我們?yōu)槭裁床恢苯佑肳OE相加或者絕對值相加作為衡量一個變量整體預(yù)測能力的指標(biāo)呢?

并且黔州,從計算公式來看耍鬓,對于變量的一個分組,IV是WOE乘以這個分組響應(yīng)占比和未響應(yīng)占比的差流妻。而一個變量的IV等于各分組IV的和牲蜀。如果愿意,我們同樣也能用WOE構(gòu)造出一個這樣的一個和出來绅这,我們只需要把變量各個分組的WOE和取絕對值再相加涣达,即(取絕對值是因為WOE可正可負(fù),如果不取絕對值证薇,則會把變量的區(qū)分度通過正負(fù)抵消的方式抵消掉):

那么我們?yōu)槭裁床恢苯佑眠@個WOE絕對值的加和來衡量一個變量整體預(yù)測能力的好壞度苔,而是要用WOE處理后的IV呢。

我們這里給出兩個原因浑度。IV和WOE的差別在于IV在WOE基礎(chǔ)上乘以的那個

寇窑,我們暫且用pyn來代表這個值。

第一個原因箩张,當(dāng)我們衡量一個變量的預(yù)測能力時疗认,我們所使用的指標(biāo)值不應(yīng)該是負(fù)數(shù),否則伏钠,說一個變量的預(yù)測能力的指標(biāo)是-2.3横漏,聽起來很別扭。從這個角度講熟掂,乘以pyn這個系數(shù)缎浇,保證了變量每個分組的結(jié)果都是非負(fù)數(shù),你可以驗證一下赴肚,當(dāng)一個分組的WOE是正數(shù)時素跺,pyn也是正數(shù)二蓝,當(dāng)一個分組的WOE是負(fù)數(shù)時,pyn也是負(fù)數(shù)指厌,而當(dāng)一個分組的WOE=0時刊愚,pyn也是0。

當(dāng)然踩验,上面的原因不是最主要的鸥诽,因為其實我們上面提到的

這個指標(biāo)也可以完全避免負(fù)數(shù)的出現(xiàn)。

更主要的原因箕憾,也就是第二個原因是牡借,乘以pyn后,體現(xiàn)出了變量當(dāng)前分組中個體的數(shù)量占整體個體數(shù)量的比例袭异,對變量預(yù)測能力的影響钠龙。怎么理解這句話呢?我們還是舉個例子御铃。

假設(shè)我們上面所說的營銷響應(yīng)模型中碴里,還有一個變量A,其取值只有兩個:0,1上真,數(shù)據(jù)如下:

我們從上表可以看出咬腋,當(dāng)變量A取值1時,其響應(yīng)比例達(dá)到了90%谷羞,非常的高,但是我們能否說變量A的預(yù)測能力非常強呢溜徙?不能湃缎。為什么呢?原因就在于蠢壹,A取1時嗓违,響應(yīng)比例雖然很高,但這個分組的客戶數(shù)太少了图贸,占的比例太低了蹂季。雖然,如果一個客戶在A這個變量上取1疏日,那他有90%的響應(yīng)可能性偿洁,但是一個客戶變量A取1的可能性本身就非常的低。所以沟优,對于樣本整體來說涕滋,變量的預(yù)測能力并沒有那么強。我們分別看一下變量各分組和整體的WOE挠阁,IV宾肺。

從這個表我們可以看到溯饵,變量取1時,響應(yīng)比達(dá)到90%锨用,對應(yīng)的WOE很高丰刊,但對應(yīng)的IV卻很低,原因就在于IV在WOE的前面乘以了一個系數(shù)

增拥,而這個系數(shù)很好的考慮了這個分組中樣本占整體樣本的比例啄巧,比例越低,這個分組對變量整體預(yù)測能力的貢獻(xiàn)越低跪者。相反棵帽,如果直接用WOE的絕對值加和,會得到一個很高的指標(biāo)渣玲,這是不合理的逗概。

4.2 IV的極端情況以及處理方式

IV依賴WOE,并且IV是一個很好的衡量自變量對目標(biāo)變量影響程度的指標(biāo)忘衍。但是逾苫,使用過程中應(yīng)該注意一個問題:變量的任何分組中,不應(yīng)該出現(xiàn)響應(yīng)數(shù)=0或非響應(yīng)數(shù)=0的情況枚钓。

原因很簡單铅搓,當(dāng)變量一個分組中,響應(yīng)數(shù)=0時搀捷,

此時對應(yīng)的IVi為+∞星掰。

而當(dāng)變量一個分組中,沒有響應(yīng)的數(shù)量?=?0時嫩舟,

此時的IVi為+∞氢烘。

IVi無論等于負(fù)無窮還是正無窮,都是沒有意義的家厌。

由上述問題我們可以看到播玖,使用IV其實有一個缺點,就是不能自動處理變量的分組中出現(xiàn)響應(yīng)比例為0或100%的情況饭于。那么蜀踏,遇到響應(yīng)比例為0或者100%的情況,我們應(yīng)該怎么做呢掰吕?建議如下:

(1)如果可能果覆,直接把這個分組做成一個規(guī)則,作為模型的前置條件或補充條件殖熟;

(2)重新對變量進(jìn)行離散化或分組随静,使每個分組的響應(yīng)比例都不為0且不為100%,尤其是當(dāng)一個分組個體數(shù)很小時(比如小于100個),強烈建議這樣做燎猛,因為本身把一個分組個體數(shù)弄得很小就不是太合理恋捆。

(3)如果上面兩種方法都無法使用,建議人工把該分組的響應(yīng)數(shù)和非響應(yīng)的數(shù)量進(jìn)行一定的調(diào)整重绷。如果響應(yīng)數(shù)原本為0沸停,可以人工調(diào)整響應(yīng)數(shù)為1,如果非響應(yīng)數(shù)原本為0昭卓,可以人工調(diào)整非響應(yīng)數(shù)為1.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末愤钾,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子候醒,更是在濱河造成了極大的恐慌能颁,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,548評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件倒淫,死亡現(xiàn)場離奇詭異伙菊,居然都是意外死亡,警方通過查閱死者的電腦和手機敌土,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評論 3 399
  • 文/潘曉璐 我一進(jìn)店門镜硕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人返干,你說我怎么就攤上這事兴枯。” “怎么了矩欠?”我有些...
    開封第一講書人閱讀 167,990評論 0 360
  • 文/不壞的土叔 我叫張陵财剖,是天一觀的道長。 經(jīng)常有香客問我癌淮,道長躺坟,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,618評論 1 296
  • 正文 為了忘掉前任该默,我火速辦了婚禮瞳氓,結(jié)果婚禮上策彤,老公的妹妹穿的比我還像新娘栓袖。我一直安慰自己,他們只是感情好店诗,可當(dāng)我...
    茶點故事閱讀 68,618評論 6 397
  • 文/花漫 我一把揭開白布裹刮。 她就那樣靜靜地躺著,像睡著了一般庞瘸。 火紅的嫁衣襯著肌膚如雪捧弃。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,246評論 1 308
  • 那天,我揣著相機與錄音违霞,去河邊找鬼嘴办。 笑死,一個胖子當(dāng)著我的面吹牛买鸽,可吹牛的內(nèi)容都是我干的涧郊。 我是一名探鬼主播,決...
    沈念sama閱讀 40,819評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼眼五,長吁一口氣:“原來是場噩夢啊……” “哼妆艘!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起看幼,我...
    開封第一講書人閱讀 39,725評論 0 276
  • 序言:老撾萬榮一對情侶失蹤批旺,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,268評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡店枣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,356評論 3 340
  • 正文 我和宋清朗相戀三年力惯,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片跌前。...
    茶點故事閱讀 40,488評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出翎卓,到底是詐尸還是另有隱情,我是刑警寧澤摆寄,帶...
    沈念sama閱讀 36,181評論 5 350
  • 正文 年R本政府宣布失暴,位于F島的核電站,受9級特大地震影響微饥,放射性物質(zhì)發(fā)生泄漏逗扒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,862評論 3 333
  • 文/蒙蒙 一欠橘、第九天 我趴在偏房一處隱蔽的房頂上張望矩肩。 院中可真熱鬧,春花似錦肃续、人聲如沸黍檩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刽酱。三九已至,卻和暖如春瞧捌,著一層夾襖步出監(jiān)牢的瞬間棵里,已是汗流浹背润文。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留殿怜,地道東北人典蝌。 一個月前我還...
    沈念sama閱讀 48,897評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像头谜,于是被迫代替她去往敵國和親赠法。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,500評論 2 359