2015年6月20日土曜日

Entropy and Information Gain

例題:クレジット会社は、顧客が破産する判定として「債務バランス」「住居形態(持家か借家か)」のどちらの情報(属性)を使うべきか?

「一般的には、債務バランスでは...?」という回答は、単なる「勘」(or 経験によるもの)。また、ここで「一般論」で判断している点は明らかに不適切。「顧客の形態はクレジット会社毎に異なる」という前提の方が適切と考えられるから。

やるべきことは、その会社の「顧客データ分析」から判断すること。

様々な分析手法があるが、ここでは「データ分析のファーストステップ」ともいえる Information Gain を使う。Information Gain の日本語訳は不明だが、Wikipedia によれば

In information theory and machine learning, information gain is a synonym for Kullback–Leibler divergence.

Kullback–Leibler divergence「カルバック・ライブラリー情報」として日本語 Wikipedia にも掲載されている。

とはいえ、そんな解説は今のところは無視して、ここでは Foster Provost, Tom Fawcett著「Data Science for Business」の第3章 Introduction to Predictive Modeling: From Correlation to Supervised Segmentation を元に記述する。


Entropy

entropy の意味は、オンライン英和辞書によれば
  1. 【物理学】 エントロピー 《物体の熱力学的な状態を示す物理量の一つ; 無秩序の度合いを表わす》. 
  2. (漸進的な)一様化,均質化; (質の)低下,崩壊.

なんだかハッキリしない説明(やはり私には「英和辞書は害」)、以下のオンライン英英辞書の解説の方が分かりやすい。
  1. (specialist) a way of measuring the lack of order that exists in a system
  2. (physics) (symbol S) a measurement of the energy that is present in a system or process but is not available to do work
  3. a complete lack of order

「一様性の乱れを測るもの」「乱れ具合」という感じだな(物理学での定義は、ここでは忘れる)。
これが entropy の算出式。

例えば、分類されたある集団の 10 人の内、破産した人は 
この entropy0.88 。

entropy 値の変化は、左図がイメージし易い。グループ中の「+, -」の混在具合による entropy の変化を示している。

「+ だけのグループ」「- だけのグループ」では entropy は共に 0 で "pure" といえる。それ以外は "impure" で、+ と - の割合が 50/50 の場合、最高値の 1 となる。

-1*(0.5*log(0.5,2)+0.5*log(0.5,2))
## [1] 1

entropy0 から 1 の値で、低いほど「不純物が少ない」状態。
注意:必ずしも「0」が良いとは言えない。それは "overfitting" という問題に関連するが、ここでは割愛。

IG: Information Gain

ここでは、次のサンプリングデータから「破産するモデル」を分析。つまり「どういう人が破産するかの予測モデル」を構築する。

 サンプリング数 30:16人が破産した(青丸)、14人が破産しなかった(星印)

次が Information Gain: IG の求め方。

左図のように分類する前の Entire populationparent、そこから分類したものを children と呼ぶ。

「債務バランス」を基準に分類した場合の IG を求める。

上記 IG の式が意味するのは
分類前の entropy(parent の entropy)と、分類後の children の entropy の(加重)合計の差
つまり
分類後の entropy の変化、分類のされ具合

この例では、債務バランスが「50kより少ない」「50k以上」で分類。この IG は以下のように 約 0.37 と求まる。
0.43 と 0.57 は、それぞれ children の分割割合 (12+1)/30, (4+13)/30

方や、左図のように Residence(住居形態)で分類した場合の IG

entropy(parent) ≈ 0.99
entropy(Residence=OWN) ≈ 0.54
entropy(Residence=RENT) ≈ 0.97
entropy(Residence=OTHER) ≈ 0.98
IG ≈ 0.13

債務バランスの場合の 0.37 よりも低い。よって、「住居形態」は「債務バランス」よりも有効ではない(less informative)といえる。

この結果から、破産予測モデルにおいて、「債務バランス」は「住居形態」より優先して判断される。仮にこの二つの属性で判断する場合、「住居形態」が「債務バランス」より先に判断されることはない。

単純な計算で求まる EntropyInformation Gain だが、予測モデルの構築のステップとしてはとても有効だ。そして、データを俯瞰する意味での「チャート化」にも有効だろう。

IG例:毒キノコ判定」に続く。

0 件のコメント:

コメントを投稿