190 likes | 506 Views
「 S elf- O rganizing M ap 自己組織化マップ」 を説明するスライド. Special thanks to H.Kusumoto Keio University Graduate School of Media and Governance Kensuke Naoe. S elf- O rganizing M ap (1). 自己組織化マップ T. Kohonen 1982 年 教師なし学習 応用 遺伝子解析 音声認識 画像解析 ロボット制御. SOM (2) 入力データ(多次元).
E N D
「Self-Organizing Map 自己組織化マップ」 を説明するスライド Special thanks to H.Kusumoto Keio University Graduate School of Media and Governance Kensuke Naoe
Self-Organizing Map (1) • 自己組織化マップ • T. Kohonen1982年 • 教師なし学習 • 応用 • 遺伝子解析 • 音声認識 • 画像解析 • ロボット制御
SOM(2) 入力データ(多次元) 『自己組織化マップ』T.Kohonen
SOM(3) SOMによる結果 『自己組織化マップ』T.Kohonen
Self-Organizing Map (4) • 入力データ • 多次元データ • 表だけを見ていてもデータの特性を理解しづらい • SOMによる結果 • 2次元空間上にマッピングする • 似た特徴のデータは近い場所にマッピング • 異なる特徴のデータは遠い場所にマッピング • 視覚的に理解しやすい
SOM(5) アルゴリズム(1) • 入力データ • X1, X2, X3, … , Xi, … , Xn:動物 • Xi=(xi1, xi2, … , xik, … , xid) :属性 • マップ • 格子状の2次元の空間を用意する • データは格子点にマッピングされることになる • マップの大きさはデータ量などから決める(m×m)
W(m,m) W(1,2) W(1,1) SOM(6) アルゴリズム(2) • マップの格子点に重みベクトルWを置く • 各Wに入力データと同じ次元数の要素を与える
SOM(7) アルゴリズム(3) 初期化 • 入力データ:4個 X1, X2, X3, X4 • データの属性:3次元 X1=(x11, x12, x13) • マップ:5×5 W(5,5)=(w(5,5)1,w(5,5)2, w(5,5)3) Wの初期値は任意
SOM(8) アルゴリズム(4) 探索 • 入力データを1つ持ってくる X1=(x11, x12, x13) Wの中からX1に値が最も近いものを探す Wwin 勝者ベクトルと呼ぶ
SOM(9) アルゴリズム(5) 学習 X1=(x11, x12, x13) Wwinの値をX1に近づける Wnew=Wold+α(X1-Wold) α:学習率係数
SOM(10) アルゴリズム(6) 学習 X1=(x11, x12, x13) WwinのそばにあるWの値もX1に少し近づける Wwinから離れるに従って X1に近づける割合を減らす
SOM(10) アルゴリズム(6) 学習 • このように「Wの値を変えること」を「学習」と呼ぶ • X2,3,4に関しても同様に学習する • この学習を繰りかえし行う
SOM(11) アルゴリズム(7) マッピングSOM(11) アルゴリズム(7) マッピング • X1, X2, X3, X4に対して,それぞれ最も近いWを探し,そこにマッピングする X4 X3 X2 X1 X4 X3 似た特徴のデータは近くに 異なる特徴のデータ遠くに マッピングされる X2 X1
実問題への適用 • SOMの利点 • ほとんどの多次元データを扱える • シンプル(複雑な計算式がない) • 結果が視覚的にわかりやすい • 問題点もある • 実問題ではデータ数が多い場合がある • マップ上での表現 • 計算時間 ↓ • 実問題への適用には様々な工夫が必要
SOMの問題点(1) 結果の表現方法SOMの問題点(1) 結果の表現方法 • 入力データ数が多い場合(数百~数万) マップ上に全てを表記するのは不可能 動物の例題では16データしかない 『自己組織化マップ』T.Kohonen
SOMの問題点(2) 計算コスト • SOMでは繰り返し学習(データ数×数回)が必要 • データ数が多い場合(数百~数万)なるべく大きなマップを使いたい • 入力ベクトルXに最も近い重みベクトルWを探す時に,Wの個数分の計算が必要になる ↓ • 繰り返し学習の回数と,マップの大きさ(M×M)に比例して計算量が増える