分類學習器的構建

weixin_33850890發表於2017-09-17

目錄

  1. 變數選擇
  2. 變數篩選
  3. 模型選擇
  4. 變數預處理
  5. 模型設計和訓練
  6. 模型優化
  7. 模型檢驗

1、特徵選擇

在NLP模型、機器視覺模型等中,一般不存在變數選擇。而在消費信用模型中,屬於客戶的可用特徵可以非常多,有些明顯沒有用,有些需要重新構造/轉換。

2、特徵工程(變數篩選和處理)

這裡主要有兩個工作要做:

  • 剔除無效、冗餘等變數。一個特徵變數,如果它跟因變數之間沒有因果關係或者貢獻很少,或者說如果它跟其他確定的特徵變數高度相關甚至存在共線性,或者說該變數在時間上不穩定時,我們應該考慮剔除該變數。
  • 變數預處理。根據模型的要求和泛化效能的考慮,拿到變數後一般都要再處理,如連續變數的分箱、有序因子變數d額重新切分、分類變數的編碼(啞變數、onehot編碼、WOE編碼等)等。

這一節我們主要介紹第一種,事實上剔除變數的方法也可以用於變數的粗分類,例如拿到的年齡資料是以10歲分段的,我們可以將它粗分類為兩個類別(如30歲以下、30歲以上),那至於選用哪個點就可以用一些特徵選擇的方法了。

2.1 單變數檢驗法

單變數檢驗法有兩種目的,變數剔除和自變數的離散化處理(已經離散的也需要進行重新劃分)

單變數檢驗法實際上是在研究一個自變數對目標變數的影響,事實上也可以看成是單個自變數的評分模型,更進一步地,可以直接將自變數的取值當做是某種信用評分的得分,此時需要假設自變數是某種有序變數,也就是僅僅根據這個有序的自變數直接對目標變數進行預測。正是基於這種視角,我們可以將“模型效果的評價”與“自變數篩選及編碼”這兩個過程統一起來

因為是分類系統,相關係數一般很糟糕。常用的有兩個方法:卡方統計量和資訊量。

設樣本集為X(一共m個特徵和N個樣本),因變數為Y(一共K類),固定單個特徵A(取值為a1、a2、····aM),設nij=特徵A第i個類別中第j類的樣本數,則特徵A和因變數的列聯表如下:

第1類 第2類 ····· 第K類 合計
a1 n11 n12 ···· n1K
a2 n21 n22 ···· n2K
··· ··· ··· ··· ···
aM nM1 nM2 ···· nMK
總體 N

*注:混淆矩陣等實際上就是預測分類變數和實際分類變數之間的列聯表

卡方統計量

卡方檢驗常用語兩個變數之間的顯著性檢驗,較大的卡方統計量表明因變數(標籤,輸出)跟特徵之間存在顯著的差異。

假定fo、fe分別為觀察頻數和期望頻數,則卡方統計量為:

當我們計算了所有變數的卡方統計量後,可以用p值來篩選變數,也可以用衍生的V相關係數來篩選:

其中R代表列聯表的行數,C代表列聯表的列數。

WOE(證據權重)和IV(資訊量)

這兩個指標僅限二分類任務。

考慮居住條件和好壞人數量之間的關係,下表給出了它們的列聯表(觀察頻數表):

居住條件 / 因變數 好人數量 壞人數量
自有住房 570 30
租房 150 50
其他 180 20
總數 900 100

用概率論來考慮該問題。給定單個樣本資料$x \in X$,有條件概率p(G|x)和p(B|x)表示給定特定資料下好人和壞人的概率,且滿足:

在處理二分類的概率問題時,我們更喜歡考慮事件的發生比率(事件發生的概率除以事件不發生的概率):
令$f(x|G)$和$f(x|B)$為條件概率密度函式,同時運用貝葉斯法,可以推出
其中
總體發生比率(在上面的例子中p_G=0.9,p_B=0.1),它反映了還沒有任何關於借款人的已知資訊時,我們對該借款人是好人的可能性認知。而I(x)稱為資訊比率,其大於1時,表明屬性x的借款人比總體中一般借款人更可能是豪恩,其自然對數ln(I(x))也是評估向量x攜帶資訊的一種有效途徑,我們將這個數值稱之為x提供的證據權重(weights of evidence,WOE)為

如果想考察特徵x區分好壞借款人的表現,我們可以用特徵的均值之差:

然而這個差並沒有考慮到某些x值的資訊量遠高於其他的情況,於是我們可以用權重之差來判斷:
這被稱為散度,也等價於相對熵(進行了對稱處理)。將散度離散化便得到資訊量(IV)。如果一個特徵有K個類別,且用$g_k$和$b_k$表示第k類中好人和壞人的數量,用$n_G$和$n_B$表示好人和壞人的數量,則IV可以表示為:

以上面的居住條件為例,計算結果如下表:
1619191-b17a6e164773120e.png

該特徵的資訊量IV=0.615,一般IV值越大,該特徵越要保留。

這裡WOE是資訊比率I(x)的對數,WOE的值越大代表對應的變數對“是好人”的貢獻就越大,反之,越小就代表對應的變數對“是壞人”的貢獻越大。所以WOE值可以作為居住條件的一種編碼方式。

資訊增益、資訊增益率
  • :隨機變數X的熵被定義為:
    其中p(x)=Pr(X=x)是X的密度函式。熵度量了隨機變數X的不確定性程度,如8種均勻可能需要log28=3個位元組來儲存。
  • 聯合熵條件熵
    兩個隨機變數的聯合熵被定義為:

    條件熵被定義為:
    另外可以證明:

  • 相對熵(K-L散度):相對熵是兩個隨機分佈之間距離的度量。在統計學中,它對應的是似然比的對數期望。相對上D(p||q)度量當真實分佈為p而假定分佈為q時的無效性。

    相對熵總是非負的,注意到其並不對程,也不滿足三角不等式,所以嚴格來講,它並不能稱為“距離”,所以實際使用中,我們可以作對稱化處理:
    K-L散度是一個非常不錯的“距離”,在下一節我們還會繼續講這個指標,但是要注意K-L散度是無界的。

  • 資訊增益(互資訊):互資訊是一個隨機變數包含另一個隨機變數資訊量的度量,也是在給定另一隨機變數知識的條件下,原隨機變數不確定度的縮減量。

    注意到互資訊(資訊增益)關於X和Y是對稱的,即H(X)-H(X|Y)=H(Y)-H(Y|X)。而且它與相對熵存在如下等價關係:
    從該等價式可以看出,當X和Y之間幾乎相互獨立,即相互所包含的資訊很少時,聯合分佈p(x,y)與乘積分佈p(x)p(y)之間的K-L距離相應的也很小。

  • 資訊增益比

  • 基尼指數(Gini)

2.3 多變數檢驗法

在迴歸方程中,用向前或者向後的逐步迴歸方式

[1]. 利用LendingClub資料建模
[2]. LendingClub資料集

相關文章