最終更新日 2015年4月19日

ベイジアンネットワーク構造推定

説明

ベイジアンネットの構造学習にはスコアベースと制約ベースがある

スコアーベースノードのリンク状態毎に対数尤度MDL等を計算し最適なリンクを求める方法
制約ベース条件独立を検定して、条件独立なら非連結とする方法
統合ベース制約ベースで構造決定し、スコアベースで連結方向を決定する方法


最小記述長(MDL)を使って連結方向を決定するには

矢印元を条件確率とするMDL値を計算し、最小のMDLを持つ方向を採用する



スコアベースとして、MDLで構造決定した事例を示す


ベイジアンネットのベンチマークで有名な
タイタニック生存モデルのベイジアンネットの構造推定を行う
全乗船客のデータを読んで、MDL(Minimum Description length)情報基準が
最小となるノード間連結を最適構造とする。



@全結合による最適構造の計算結果


下図の様に3個のノードでも全ての連結を考えると組合せの爆発が起こる


タイタニック生存モデルでは7個のノードあり1,138,779,265組合せがある。

8,896,512番目の組合せでMDL値が収束した 計算時間7時間かかった


全連結のタイタニック生存モデルの最適構造

Survived 生存有無
Sex 性別
Age 年齢
Friend 同船室
Position 敬称
Rank 乗船等級
Floor 船室階

このモデルでの生存有無 Survived の正解率は89.10% BIC=126であった



A有意な結線のみによる最適構造の計算結果

2点間のMDL値が大きい(有意な関係が希薄)結線を非連結とする

該当点とそれ以外の各点のMDL値の分布をを計算する
平均から1.4σ超えるMDL値をもつ該当点との2点間は非連結にする
但し、Survivedは矢印先、SexとAgeには矢印元となる様に制限を入れた


ベイジアンネット図の見方

タイタニック号は沈没まで6時間かかっており
最初に女性客をボートに乗せたので、女性の生存率が高い
      生存率(男性19% 女性75%)
その後、1等先客をボートに乗せている
ベイジアンネットは上記の史実を反映している

考察@

女性は優遇されたが、子供は優先的に救助されなかったのだろうか?

年齢 Age ノードが生存有無 Survived と非結線の理由を調べる

年齢層別の人数と生存人数の割合は同様なので年齢層は生存有無に関係がない


考察A



ベイジアンネットを生成した学習用データ(891件)以外に試験用データ(255件)について

σの倍率を変えて、生存有無 Survived への連結数を増して生存有無の正解率が改善するか見てみる

σ 連結数 BIC 正解率
1.0σ 1 27677.63%
1.4σ 2 24078.58%
1.7σ 3 20983.20%
1.8σ 4 20484.82%
2.0σ 6 16887.54%
∞σ 7 12689.10%

σの倍率を大きくしても、生存有無の正解率はあまり改善しないことがわかる

連結数を増やしても精度にはあまり影響に寄与しないので、有意な疎な連結の方が適切である




戻る