属性構築・事例選択



(出典)データマイニングの基礎
元田浩、津本周作、山口高平、沼尾正行 共著
p.148~p.159, オーム社, 2006年
                           鎌田健史
                                  1
復習
• データの前処理
• より効率のよい学習には欠かせない

•   数値の離散化
•   属性の選択
•   属性の構築
•   事例の選択

                     2
属性構築とは
• 既存のn個の属性から、よりよいm
  個の属性を新たに作り出していくこ
  と

• 与えられた属性をそのまま使ったの
  ではうまく分類できない場合等に行
  う

                     3
メリット
p.149 図4. 17 Monk2の属性空間の図形表示

Monk2 : 有名なベンチマークテスト用のデー
 タ

(a)の図→何となく法則があるようにみえるがバラ
   バラっぽい
(b)の図→すっきり見やすい
(b)で学習するほうが効率がよい
                               4
構築オペレータ
• 属性構築を行うために用意されている演
  算子
• 補足:
X of N
  N個の条件の中からX個満たせば、いくつ
  かの条件のうちX番目に飛ぶ
直積 = ある集合X,Yとその要素Vx,Xyを組み
  合わせてできた(Vx,Vy)という組み合わせの
  集合
                        5
探索法
• オペレータは再帰的に利用できる
• 例えばA∧B, A,B∈Uのはずが
 (…(((A∧B) ∧U) ∧U)…∧U)にも、なり得る

オペレータを用いて構築する指針
• データ駆動
• 知識駆動
• 仮説駆動
                                6
データ駆動
• 使用するデータを基にして属性を構築す
  る

• データの意味等を考慮して、候補となる
  新しい属性を決める

• CIMA→属性にメタ属性や制約を指定で
  きるただ、つけすぎは答えを記述してい
  るに等しく、意味がない
                       7
知識駆動
• 機械的な方法ではなく人間の知識を用い
  て属性を構築する

• 教科書の例題のような方法

• ある意味最高の方法だが、なかなか上手
  くはいかない


                       8
仮説駆動(特に遺伝アルゴリズ
ム)

• 最適化問題を考える場合に用いられる
• 属性構築も、正解が探りにくいので最適
  化問題として考える

• 自然界で生物が進化や淘汰を繰り返して
  いく様子に見立てて、属性オペレータの
  最適な組み合わせを探していく方法
                       9
遺伝アルゴリズム - 1

          属性構築
          モジュー
          ル
初期   属性                 最適
属性   候補          終了条件   属性
集合   集合                 集合




      評価・選               10
遺伝アルゴリズム – 2:交配
• 2つの個体の1点、あるいは複数点で親
  の遺伝子を分割し、交換することで新た
  なものを生成する。

• 例:f1…fnにおいて、用いる属性を1とすると、
• 1010|1010101   1111|0001011

• 1010|0001011   1111|1010101

                                11
遺伝アルゴリズム – 3:突然変異
• 属性の組み合わせなどをランダムに変更
  する
• ある組み合わせを使いまわしていると変
  化がなくなる
• 組み合わせの多様性を生み出す

• 110011001
              010011010
• 110100111
                          12
遺伝アルゴリズム – 4:評価・選
      択
• なるべく評価値の多いものを選択したい
  が、多様性も同時に確保しなくてはいけ
  ない
• 評価値をつける方法
 – 情報利得
 – 記述長
 – 赤池情報量基準(AIC)
• ルーレット選択
• エリート選択
                       13
遺伝アルゴリズム - エリート
属性 評価値
       選択
            属性    評価値

A   45
            A     45
B   20
C   20      B     20
D   10
            C     20
E   5

単純明快であるが、局所的な最適
解に陥ってしまう可能性がある。
                        14
遺伝アルゴリズム – ルーレット選
       択
 属性   評価値                   割合

 A    45            D, 10
                            E, 5


 B    20
                                   A, 45
 C    20    C, 20

 D    10
 E    5                B, 20


このようなルーレットを作成し、この表に従って
ランダムに選択する。
 → 評価値の高いものが生き残りやすいが、属
性の多様性もうまく残せる                               15
事例選択とは
• ≒ データ削減(文脈で使い分ける)
• 全てのデータを使用したときと比べても
  性能が劣化しないようにデータを減ら
  し、マイニングの効率を上げる
p.157 図 4.23
削減の方法はさまざまであり、目的、デー
 タの分布などに影響を受け、どんなデー
 タにも効く削減法は存在しない

                       16
事例削除・分類
• 一番単純で簡単なものはランダムサンプ
  リングだが、これはマイニングに性能的
  な影響を与えにくい
• マイニングの目的にあった削除法を使用
  すべき

• 複数データを代表事例にまとめる事も、
  事例削減の1種

                       17
ランダムサンプリング
• 単純ランダムサンプリング
 – 復元ランダムサンプリング:戻して取り出す
 – 非復元ランダムサンプリング:戻さないで取り
   出す


• 層別ランダムサンプリング
データをグループ分けした後、それぞれのグ
ループからランダムにサンプリングする

                       18
適応サンプリング
• ランダムサンプリングと違いこれまでの
  事例から推定される値を考えて決定する
  方法
• 自分たちが積極的に必要なデータを選び
  出す
  代表例:
• クリティカル事例
• 境界事例
• プロトタイプ事例             19
クリティカル事例
• 最近傍法で用
  いられた
• 記憶する情報
  は少ないほう
  がいい
• これを削ると
  うまく動作し
  ない事例

                20
境界事例
• サポートベクタマシンにおいて用いる削
  減法

• 教科書157 図 4.23 (a),(b)、P165

• 色分けの境界線付近に存在する事例のみ
  を残して削減する方法


                               21
プロトタイプ事例
• 各クラスの平均的な情報を持つ事例

• K – means 法で求めた重心に相当

• 境界事例、クリティカル事例はクラス識
  別

• プロトタイプ事例はクラスを特徴づける
                         22
決定木に基づくサンプリング
• 分岐が進むにつれて流れ込む事例数が少
  なくなる = フラグメンテーション

• これを逆に利用してサンプリングする

• あるレベルのノードに流れた事例すべて
  に対して、重みを付けてそれをサンプリ
  ングする
                       23
スカッシング
• いくつかのデータを基にして、それらの
  代表事例を作り上げ、これをマイニング
  に利用する
• 事例にはまとめた事例の数、それぞれの
  距離の合計などの情報を付加する
• データの質は落とさずに量だけを落とす
• クラスタリングなどに適用できる


                       24
能動学習
• 学習に必要な事例を自ら選び出し、学習
  する

• 適応サンプリングを用いて行う学習法




                       25
参考文献
• http://carnation.is.konan-
  u.ac.jp/xoops/CJcontents/chapter01/chapter1
  .html
• http://www.sci.kagoshima-
  u.ac.jp/~ebsa/wakimoto03/keyword01.html




                                            26

データマイニングにおける属性構築、事例選択