自己組織化マップ - 名古屋大学自己組織化マップ...

20
自己組織化マップ

Transcript of 自己組織化マップ - 名古屋大学自己組織化マップ...

Page 1: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

自己組織化マップ

Page 2: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

Teuvo Kohonen

• 自己組織化マップを提案

Page 3: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

自己組織化マップ

• ニューラルネットワークの一種で,大脳皮質の視覚野をモデル化している.

• 教師なし学習によって入力データを任意の次元へ写像することができる.

• 主に1~3次元への写像に用いられ、多次元のデータの可視化が可能である.

Page 4: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

自己組織化マップ

Page 5: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

アルゴリズム

1. 重みにランダムな値を与える.

2. データを入力し,最も誤差の小さいニューロン(勝者ニューロン)を探索する.

3. 勝者ニューロンの重みを修正する.

4. 勝者ニューロンに隣接するニューロンの重みを修正する.

5. 以上を繰り返す.

Page 6: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

30個国の新興市場自己組織化マップ

Page 7: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

グループ1

アルゼンチン,韓国,南アフリカ,ブラジル,マレーシア,台湾

グループ2

中国,インド,タイ,メキシコ,インドネシア,フィリピン

グループ3

チェコ,トルコ,ポルトガル,エジプト,ギリシヤ,チリ

グループ4

コロンビア,ハンガリー,ヨルダン,モロッ,コナイジェリア,パキスタン,ペルー,ポーランド,ロシア,スリランカ,ベネズエラ,ジンバブエ

Page 8: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

グループ 会社数市場資本(百万

ドル)配当 P/E比 P/B比

グループ1 514 203807.3 1.425 19.53667 1.8416

グループ2 1275 102398.6 1.02667 20.133 1.8916

グループ3 309 31794 3.466 13.38 1.948

グループ4 177 10404.9816 2.358 9.59 1.1375

全市場 533 71304.75 2.00 14.42 1.581

Page 9: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

• グループ1:90年代に経済不安定性と経済恐慌が発生した国々が含まれている.

• グループ2:アジアの発展進行市場が多い.

• 市場収益率(市場全体の銘柄に投資した際の収益率)– グループ1とグループ2は全体平均よりも大きい.

– グループ3は全体平均と同等である.

– グループ4は全体平均より低い.

• 市場分配配当– グループ1と2では全体平均より低い.

– グループ3は市場分配配当が特に高い.

Page 10: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

例題(学習データ)

健康/病気 因子1 因子2健康 80 5健康 60 3病気 160 8病気 140 6健康 90 4健康 40 6病気 180 7病気 150 6

Page 11: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

例題(データ)氏名 健康/病気 血圧 喫煙本数A 健康 80 5B 健康 70 3C 健康 90 4D 健康 65 6E 健康 100 6F 健康 140 0G 病気 200 6H 病気 160 20I 病気 160 8J 病気 140 6K 病気 180 7L 病気 150 6

Page 12: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

練習

x1 <- c(1,1,1,1,1,1,0,0,0,0,0,0)*特徴量x1を定義する.

x2 <- c(80,70,90,65,100,140,200,160,160,140,180,150)*特徴量x2を定義する.

x3<-c(5,3,4,6,6,0,6,20,8,6,7,6)*特徴量x3を定義する.

data.som <- data.frame(x1,x2,x3)*データを準備する.

Page 13: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

練習1(1)

library(class)*ライブラリを読み込む

map.som <- somgrid(xdim = 3, ydim = 3, topo ="hexagonal")*3行3列のヘキサゴン・マップを定義する.

res.som <- batchSOM(data.som, map.som, c(1))*data.somをmap.somで定義されたマップに学習させる.*c(1)は近傍を定義する.

plot(res.som)*結果を表示する.

res.som <- batchSOM(data.som, map.som, c(4,3,2,1))plot(res.som)

Page 14: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

練習1(2)

plot(res.som)*結果の表示

symbols(res.som$grid$pts[,1:2],circles=c(rep(0.5,3*3)),inches=FALSE,add=TRUE)*SOMマップの円を描く.

bins <- as.numeric(knn1(res.som$codes, data.som, 0:8))*データがどのノードに対応しているかを求める.

bins[1] 2 2 2 2 6 7 9 7 7 7 9 7

Page 15: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

練習2(1)

install.packages("som", dependencies = TRUE)Installing package into ‘C:/Users/kita/Documents/R/win-library/3.3’(as ‘lib’ is unspecified)trying URL 'https://cran.rstudio.com/bin/windows/contrib/3.3/som_0.3-5.1.zip'Content type 'application/zip' length 681391 bytes (665 KB)downloaded 665 KB

package ‘som’ successfully unpacked and MD5 sums checked

The downloaded binary packages are inC:¥Users¥kita¥AppData¥Local¥Temp¥Rtmpeo50OY¥downloaded_packages

library(som)Warning message:パッケージ ‘som’ はバージョン 3.3.2 の R の下で造られました

Page 16: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

練習2(2)

library(som)*ライブラリsomを読み込む.

model.som2 <- som(data.som, xdim=3, ydim=3)*data.somを3行3列マップに学習させる.

plot(model.som2)*マップを表示する.

model.som21 <- som(data.som, xdim=3, ydim=3, topol="hexa")*3行3列のヘキサゴンマップに学習させる.

plot(model.som21)

Page 17: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

練習3(1)

install.packages("kohonen", dependencies = TRUE)*パッケージkohonenを導入

Installing package into ‘C:/Users/kita/Documents/R/win-library/3.3’(as ‘lib’ is unspecified)trying URL 'https://cran.rstudio.com/bin/windows/contrib/3.3/kohonen_2.0.19.zip'Content type 'application/zip' length 778949 bytes (760 KB)downloaded 760 KBpackage ‘kohonen’ successfully unpacked and MD5 sums checkedThe downloaded binary packages are in

C:¥Users¥kita¥AppData¥Local¥Temp¥Rtmpeo50OY¥downloaded_packages

library(kohonen)*ライブラリを読み込む

要求されたパッケージMASS をロード中です次のパッケージを付け加えます: ‘kohonen’ 以下のオブジェクトは ‘package:som’ からマスクされています:

somWarning message:パッケージ ‘kohonen’ はバージョン 3.3.2 の R の下で造られました

Page 18: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

練習3(2)

som.map3 <- somgrid(xdim=3, ydim=3, topo="hexa")*SOMマップを定義する.

res.som3 <- som(scale(data.som), grid=som.map3)*SOMマップに学習させる.

res.som3som map of size 3x3 with a hexagonal topology.Training data included.

plot(res.som3)*マップを表示させる.

Page 19: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

演習問題1

• 携帯電話購入アンケート結果をクラスタリングせよ.

年齢 性別 購入?A 25 男 するB 35 女 しないC 70 男 しないD 50 女 しないE 30 女 しないF 20 女 するG 40 男 するH 20 男 するI 25 女 するJ 45 女 しないK 50 男 するL 60 男 しないM 70 女 しない

Page 20: 自己組織化マップ - 名古屋大学自己組織化マップ •ニューラルネットワークの一種で,大脳皮質 の視覚野をモデル化している. •教師なし学習によって入力データを任意の次

演習問題2

• 政府統計を用いて,都道府県毎の2010年頃の「健康・医療」データについて自己組織化マップを作成しなさい.

• E-Stat, http://www.e-stat.go.jp/SG1/estat/List.do?bid=000001068038&cycode=0