ニューラルネットワークについて勉強する(PowerPoint)

Download Report

Transcript ニューラルネットワークについて勉強する(PowerPoint)

ニューラルコンピューティングを理解する
2006/12/12
Graduate School of Media and Governance
Keio University
Kensuke Naoe
1/42
動機・勉強会の趣旨
‫ ﻪ‬武藤研の中でもニューラルについてほとんど理
解していない学生が多い
‫ ﻪ‬自分自身もそうであった
‫ ﻩ‬元々の興味は情報セキュリティ
‫ ﻩ‬問題解決の一つのツールとしてニューラルを使った
‫ ﻯ‬適切に問題設定をし,適切なモデルを使うと有用
‫ ﻪ‬みんなにもニューラルについて詳しくなってほし
い・興味を持ってほしい
2/42
Agenda
‫ ﻪ‬第一部 ニューラルネットワークとは
‫ ﻪ‬第二部 多層パーセプトロンモデル
‫ ﻪ‬第三部 自己組織化特徴マップモデル
3/42
ニューラルネットワーク
‫ ﻪ‬ニューロン(神経細胞)
‫ ﻩ‬電気信号の入力と出力という単純な作業しか
出来ない
‫ ﻩ‬有機的に接続されたネットワークを形成すると,
様々な複雑な処理が可能
‫ ﻪ‬ニューロンにより形成されたネットワークを
モデル化したものをニューラルネットワーク
と呼ぶ
4/42
ニューラルネットワークモデル
‫ﻪ‬
ニューロンのモデル
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
‫ﻪ‬
バイナリモデル(Hopfield, McCulloch&Pitts)
シグモイドモデル
Radial Basis Functionモデル
競合ニューロン
シナプス結合の形態
‫ﻩ‬
‫ﻩ‬
リカレントモデル
階層型パーセプトロン
‫ﻯ‬
‫ﻯ‬
‫ﻪ‬
フィードフォワード
フィードバック
ニューロンと結合によるモデルの違い
‫ﻩ‬
状態遷移モデル
‫ﻯ‬
‫ﻩ‬
Hopfield 連想記憶,最適化問題 Hebb則
競合学習モデル
‫ﻯ‬
Self Organization Map 自己組織化マップ
‫ﻳ‬
‫ﻩ‬
教師なし学習
信号伝播モデル
‫ﻯ‬
パーセプトロン (rosenblatt)
‫ﻳ‬
一般δルール Rummelhart 教師あり学習
最適化,自己組織化,学習
optimization, self organization, supervised learning
5/42
ニューラルネットワークへの誤解
‫ﻪ‬
ニューラルは使えない
‫ﻩ‬
‫ﻩ‬
‫ﻪ‬
アバウトすぎて使えない
毎回答えが違うなんてありえない
ニューラルは万能だ
‫ﻩ‬
ニューラル使えばなんでも解けちゃうよ
‫ﻪ‬
これらは全部誤解であると言いたい!
‫ﻪ‬
‫ﻪ‬
‫ﻪ‬
問題に合わせたモデルを選択する事が重要
ニューラルの手法の得意な事・不得意な事がある
ニューラルが取り扱いたい実際の問題として,
‫ﻩ‬
最適な配置問題.
‫ ﻯ‬出力(システム)のダイナミクスを観察しないと分からない
‫ﻩ‬
特徴空間の分類問題.
‫ ﻯ‬特徴空間のクラスが最初からgiven or known
‫ ﻯ‬特徴空間がどのようにマップされるか分からない
6/42
出力のダイナミクスを観察する
N-queen問題の場合
7/42
ニューラルでN-queen問題を解く
8/42
分類問題
あらかじめクラスが分かっている時(1)
9/42
分類問題
あらかじめクラスが分かっている時(2)
10/42
XOR問題をbackpropagation学習で解く
11/42
分類問題
クラスがいくつ存在するか分からない時(1)
12/42
分類問題
クラスがいくつ存在するか分からない時(2)
13/42
分類問題
クラスがいくつ存在するか分からない時(3)
14/42
分類問題
クラスがいくつ存在するか分からない時(4)
15/42
ニューラルで色の分類をしてみる
16/42
今回の勉強会で話すこと
‫ ﻪ‬信号伝播モデル
‫ ﻩ‬階層型パーセプトロンモデル
‫ ﻪ‬競合学習モデル
‫ ﻩ‬自己組織化特徴マップモデル
17/42
「多層パーセプトロンモデルと
バックプロパゲーション学習」
を説明するスライド
Special thanks to Masato Aoba
Keio University
Graduate School of Media and Governance
Kensuke Naoe
18/42
パーセプトロン限界説
‫ ﻪ‬バックプロパゲーション学習を識別機会の学習
則としか考えるなかれ
‫ ﻪ‬Minskyがパーセプトロンでは非線形分離が出来
ない
‫ ﻪ‬Rummelhartがそんなことは無い,多層構造を持
たせて,バックプロパゲーション学習を使えば
XOR問題も解けるではないか!
‫ ﻩ‬特徴空間における非線形分離能力はバックプロパ
ゲーションで得られる能力のほんの一部でしかない.
‫ ﻩ‬むしろ非線形な関数近似能力が最大の利点だ!
19/42
ニューラルネットワークの種類と性質
(構造による違い)
‫ ﻪ‬リカレント型
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
•Backpropagation学習
Hopfieldモデル,武藤モデル
など
•教師付き学習
リカレント結合
•パターン分離,関数近似 が得意
出力のダイナミクスに特徴がある
組み合わせ最適化問題,連想記憶
•非線形なパターン分離が可能
‫ ﻪ‬階層型
‫ ﻩ‬多層パーセプトロン,Kohonenモデル,RBFネット など
‫ ﻩ‬層構造を持つ
‫ ﻯ‬フィードフォワード
‫ ﻯ‬フィードバック
‫ ﻩ‬入力に対して出力が一意に決まる
通常は
‫ ﻩ‬結合係数を学習
‫ﻯ‬
教師つき学習
3層で十分
‫ ﻯ‬自己組織化学習
20/42
3層パーセプトロン
出力層
中間層
(隠れ層)
‫ ﻪ‬3層構造
‫ ﻪ‬フィードフォワード型
k
w jk
‫ ﻪ‬ニューロンの入出力関数
j
‫ ﻩ‬シグモイド関数
wij
i
‫ ﻪ‬Backpropagation 学習
x1
xi
xM
入力層
21/42
シグモイド関数
‫ ﻪ‬多層パーセプトロンのニューロン入出力関数
‫ ﻪ‬シグモイド(sigmoid) = S字
1
y
1  exp  x 
x
y
22/42
ネットワークの計算
‫ ﻪ‬ニューロンの入力値
‫ ﻩ‬前層のニューロン出力と結合係数の積和
N
x j   wij yi
yj
i 1
j
xj
w1j
wij
y1
yi
wNj
yN
23/42
1
y
 0.89
パーセプトロンの動作
1  exp  2.12
0.88
2.0
1.0
0.89
1.0
y
1
 0.67
1  exp  0.71
-1.0
x  1.0  0.88  2.0  0.62
1
0.67
1
y

0
.
88
 0.18
 2.12 y 


1

exp

2
.
0
2.0
1  exp 1.50
-1.0
-1.0
0.5
x  1.0  0.89  1.0  0.18
0.18  0.71
x  1.0  0.88  1.0  0.62
1
‫ ﻪ‬結合係数(Wij)の値によって最終出力が変わる
y
.50
0.62


1
1  exp  0.5
‫ ﻪ‬どのように結合係数を決めてやるか?
0.62
‫ → ﻪ‬学習させる
24/42
Backpropagation 学習
‫ ﻪ‬多層パーセプトロンの学習則
‫ ﻪ‬教師付き学習
‫ ﻪ‬教師信号との誤差を逆方向に伝播して結合
係数を修正する
1.0
0.9
2.0
入力
信号
0.5
1.0
1.3
-1.0
-0.8
2.0
1.9
-1.0
-0.9
出力
信号
0.67
教師
信号
1.0
誤差
-1.0
-0.8
25/42
実問題への適用
‫ ﻪ‬多層パーセプトロン・バックプロパゲーション学習
の利点
‫ ﻩ‬入力に多次元ベクトルを扱える
‫ ﻩ‬三層以上では非線形分離が可能
‫ ﻯ‬非線形分離問題に特化するならSVMの方が有利かも
‫ ﻯ‬もっとも特徴的なのは分類関数を非線形に近似できる事
‫ ﻪ‬問題点もある
‫ ﻩ‬実問題ではデータ数が多い場合がある
‫ ﻯ‬ネットワークの表現・組み方
‫ ﻯ‬計算時間 入力ベクトルの次元が増えると指数関数的に計
算時間が増える>>次元の呪い
26/42
「Self-Organizing Map
自己組織化マップ」
を説明するスライド
Special thanks to H.Kusumoto
Keio University
Graduate School of Media and Governance
Kensuke Naoe
27/42
Self-Organizing Map (1)
‫ﻪ‬
‫ﻪ‬
‫ﻪ‬
‫ﻪ‬
自己組織化マップ
T. Kohonen 1982年
教師なし学習
応用
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
遺伝子解析
音声認識
画像解析
ロボット制御
28/42
SOM(2) 入力データ(多次元)
29/42
『自己組織化マップ』T.Kohonen
SOM(3) SOMによる結果
30/42
『自己組織化マップ』T.Kohonen
Self-Organizing Map (4)
‫ ﻪ‬入力データ
‫ ﻩ‬多次元データ
‫ ﻩ‬表だけを見ていてもデータの特性を理解しづらい
‫ ﻪ‬SOMによる結果
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
‫ﻩ‬
2次元空間上にマッピングする
似た特徴のデータは近い場所にマッピング
異なる特徴のデータは遠い場所にマッピング
視覚的に理解しやすい
31/42
SOM(5) アルゴリズム(1)
‫ ﻪ‬入力データ
‫ ﻩ‬X1, X2, X3, … , Xi, … , Xn :動物
‫ ﻩ‬Xi=(xi1, xi2, … , xik, … , xid):属性
‫ ﻪ‬マップ
‫ ﻩ‬格子状の2次元の空間を用意する
‫ ﻩ‬データは格子点にマッピングされることになる
‫ ﻩ‬マップの大きさはデータ量などから決める
(m×m)
32/42
SOM(6) アルゴリズム(2)
‫ ﻪ‬マップの格子点に重みベクトルWを置く
‫ ﻪ‬各Wに入力データと同じ次元数の要素を
与える
W
(m,m)
W(1,2)
W(1,1)
33/42
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の初期値は任意
34/42
SOM(8) アルゴリズム(4) 探
索
‫ ﻪ‬入力データを1つ持ってくる
X1=(x11, x12, x13)
Wの中からX1に値が最
も近いものを探す
Wwin 勝者ベクトルと呼ぶ
35/42
SOM(9) アルゴリズム(5) 学
習
X1=(x11, x12, x13)
Wwinの値をX1に近づける
Wnew=Wold+α(X1-Wold)
α:学習率係数
36/42
SOM(10) アルゴリズム(6) 学習
X1=(x11, x12, x13)
WwinのそばにあるWの値もX1
に少し近づける
Wwinから離れるに従って
X1に近づける割合を減らす
37/42
SOM(10) アルゴリズム(6) 学習
‫ ﻪ‬このように「Wの値
を変えること」を「学
習」と呼ぶ
‫ ﻪ‬X2,3,4に関しても同様
に学習する
‫ ﻪ‬この学習を繰りかえ
し行う
38/42
SOM(11) アルゴリズム(7)
マッピング
‫ ﻪ‬X1, X2, X3, X4に対して,それぞれ最も近いW
を探し,そこにマッピングする
X3 X4
X1
X2
X3
X4
似た特徴のデータは近くに
異なる特徴のデータ遠くに
X1
X2
マッピングされる
39/42
実問題への適用
‫ ﻪ‬SOMの利点
‫ ﻩ‬ほとんどの多次元データを扱える
‫ ﻩ‬シンプル(複雑な計算式がない)
‫ ﻩ‬結果が視覚的にわかりやすい
‫ ﻪ‬問題点もある
‫ ﻩ‬実問題ではデータ数が多い場合がある
‫ ﻯ‬マップ上での表現
‫ ﻯ‬計算時間
↓
‫ ﻩ‬実問題への適用には様々な工夫が必要
40/42
SOMの問題点(1)
結果の表現方法
‫ ﻪ‬入力データ数が多い場合(数百~数万)
マップ上に全てを表記するのは不可能
動物の例題では
16データしかない
『自己組織化マップ』T.Kohonen
41/42
SOMの問題点(2) 計算コスト
‫ ﻪ‬SOMでは繰り返し学習(データ数×数回)
が必要
‫ ﻪ‬データ数が多い場合(数百~数万)なるべ
く大きなマップを使いたい
‫ ﻩ‬入力ベクトルXに最も近い重みベクトルWを探
す時に,Wの個数分の計算が必要になる
↓
‫ ﻪ‬繰り返し学習の回数と,マップの大きさ
(M×M)に比例して計算量が増える
42/42