Mathematical Foundation of Statistical Learning

情報学習理論
渡辺澄夫
東京工業大学
教師なし学習に出会う(1)
「夏休みの宿題は自由研究です」
「くまさん、きりんさん、ですよ」
「まだ生まれたばかりなんですから、
ご両親の声も、しぐさも、
あかちゃんは初めてなんですよ」
「何をしたらよいですか」
「何をしたらよいかを自分で考えましょう」
(・・・とりあえずネットを検索・・・)
2015/10/1
Mathematical Learning Theory
2
教師なし学習に出会う(2)
「英作文では、自分で文章を創造しては
いけません。ネイティブの人が使った
文章を覚えて、それだけを使いましょう。
文法的に正しい文章全体の集合の中で
自然な英語は非常に非常に少ない
部分集合なのです」
2015/10/1
「社長室に君を読んだのは他でもない。
わが社のウルトラデータプロジェクトで
何をしたらよいか考えて欲しいのだ」
「明らかに他社より遅れております」
「他社にはできなかったわが社ならでは
の新しいものを考えて欲しいのだ」
Mathematical Learning Theory
3
ラベルのないデータ
データ
X1, X2, …, Xn ∈ RN
データだけが与えられたとき、そのデータを
発生した情報源についての知識を得たい。
現実の多くの場面で出会う問題
「何を知りたい?」 をどうするか・・・の第一歩
2015/10/1
Mathematical Learning Theory
5
教師なしデータ
学習データ
X1, X2, …, Xn
真の情報源
教師なし学習:真の情報源に
ついて「何か」を知りたい
テストデータ
X
教師なし学習
くだものは
大別して
10種類で
詳しく分類
すると・・・
q(x)
p(x|w)
2015/10/1
Mathematical Learning Theory
概念の
自動生成
7
教師なし学習への第一歩
「りんご」とは
何ですか?
高次元空間内のデータは全空間に一様に
広がっているのではない。
多くのデータから例の集合の全体を
表現するような代表例を取り出す。
2015/10/1
Mathematical Learning Theory
8
宇宙の泡構造
宇宙には銀河が多くあるところとないところがある
2015/10/1
Mathematical Learning Theory
9
教師なし学習:最初の一歩:
クラスタリングの問題
データから
代表点を選び出して
データをクラスタに
分けてみる
2015/10/1
Mathematical Learning Theory
10
ボロノイ図
空間を代表点に
よって
区分けした図。
新しいデータが
どのクラスタに
属するかを示す。
2015/10/1
Mathematical Learning Theory
11
誤差関数
データ
X1, X2, …, Xn ∈ RN
クラスタの代表ベクトル
Y1, Y2,…, Yk ∈ RN
f(i) : i 番目のデータが属するクラスタの番号
( f :{1,2,…,n} → {1,2,…,k} )
n
E = Σ || Xi – Yf(i) ||2
i=1
を最小にする {Y1,Y2,…,Yk} と f(i) を見つけたい。
2015/10/1
Mathematical Learning Theory
12
誤差関数の数式と図
Xi
Yf(i)
n
E = Σ || Xi – Yf(i) ||2
i=1
2015/10/1
Mathematical Learning Theory
13
最適化問題
データ{X1,X2,…,Xn} が与えられたとき
n
E = Σ || Xi – Yf(i) ||2
i=1
を最小にする {Y1,Y2,…,Yk} と f(i) を見つけよ。
簡単そうにみえるが、非線形問題であり容易な
解決法は存在しない。繰り返し法が用いられる。
2015/10/1
Mathematical Learning Theory
14
代表ベクトル⇒対応づけ
Xi
Yf(i)
代表ベクトル{Y1,Y2,…,Yk} を固定する。E を最小化する
関数 j=f(i) は「Xi から一番近い Yj」の対応。
2015/10/1
Mathematical Learning Theory
15
対応づけ⇒代表ベクトル
Xi
Yj
関数 f(i) を固定する。Eを最小化する代表ベクトル
{Y1,Y2,…,Yk} は各クラスタの平均ベクトル。
2015/10/1
Mathematical Learning Theory
16
K-Means 法
(1) ●初期化
(2) ● を分類
(3) ●を●へ移動
(2)(3)の繰り返しで
E は単調非増加
2015/10/1
Mathematical Learning Theory
17
問題1
(1) ●図の通り
(2) ● を分類
(3) ●を●へ移動
上記の初期値に対して (2) (3)を実行せよ。
2015/10/1
Mathematical Learning Theory
18
人生は教師なし学習
2015/10/1
Mathematical Learning Theory
19
代表点の見つけ方
与えられた多くのサンプルから代表ベクトルを探す方法は
この他にも多数の方法が提案されている。
すべて結果が異なる。また次の問題は未解決。
(1) 意味のあるクラスタができたかどうか
(2) 局所解かどうかを知ることができるか
(3) 代表点の個数をどのように決めるか
2015/10/1
Mathematical Learning Theory
20
(1) 代表点の意味
学習の結果を吟味・確認するときには
代表点の具体的な形を調べましょう。
2015/10/1
Mathematical Learning Theory
21
(2) 局所解の例
いったん局所解になると移動しなくなる。
「データから構造を知る問題」には
多数のまったく異なる局所解が存在する。
2015/10/1
Mathematical Learning Theory
22
(3) 代表点の個数
少なすぎ
代表点の個数が多ければ
多いほど E は小さくなる。
しかし・・・。
何に対して最適な個数を
定めるのか。
多すぎ
「最適なクラスタ数 K 」を
知るにはどうしたらよいか。
「データから構造を知る問題」
では通常の統計学は使えな
い。
2015/10/1
Mathematical Learning Theory
23
教師なし学習と実世界
現実の世界のデータは、高次元かつ複雑であり
美しい構造を持っていることは稀であるため
教師なし学習で鮮やかに問題が解決できるとは限らない。
単純な法則がなく、直感も働かないデータに対して
どんな第一歩を進み始めるかを与えるヒントが教師なし学習。
「データに対してプログラムを適用してみた」
は終着点ではなくて、出発点です。
2015/10/1
Mathematical Learning Theory
24
問題2
データ
一様
分布
代表点の分布
d
各クラスタの
データ数
d
2015/10/1
Mathematical Learning Theory
混合分布
25