53
自己増殖型ニューラルネットワークSOINN その実践 東京工業大学 像情報工学研究所 長谷川研究室 1 巻渕有哉〃山崎和博

自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

自己増殖型ニューラルネットワークSOINN とその実践

東京工業大学 像情報工学研究所長谷川研究室

1

巻渕有哉〃山崎和博

Page 2: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

2

SOINNの理解と認識の共有

パラメータ調整に関する一考察

ソースの更新箇所の説明

本発表の目的

本発表における用語の定義は、理解の手助けとなるよう発表者らが独自に設定したものであり、論文等で使用する際は注意して下さい

注意点!

はじめに

Page 3: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Agenda

3

研究背景

アルゴリズムの紹介

パラメータの解析

ソフトウェアの紹介(ソースの更新箇所)

Page 4: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

What’s SOINN?

4

「(追加学習可能な)オンライン教師なし学習手法」

追加学習が可能

事前にネットワーク構造を決める必要がない

高いノイズ耐性

計算コストが少ない

クラスタリングとも呼ばれる

2次元学習データ SOINNの出力

Page 5: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

代表的なクラスタリング手法〆

k-means [MacQueen 1967]

5

1. 各データにランダムにクラスタを割り当てる2. 各クラスタの重心を計算する3. 各データを一番近い重心を持つクラスタへ割り当てる4. 割り当てに変化がなければ終了、変化があれば2〄に戻る

k-meansアルゴリズム

問題点

k-meansに不適な事例

事前にクラス数を決定する必要がある 局所解探索による初期値依存性 制約〆

1. 各クラスタの形状が超球形2. 各クラスタの半径は等しい

Page 6: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

代表的なクラスタリング手法〆EMアルゴリズム(1)[Dempster 1977]

6

1. 混合分布に基づき発生する場合の尤度を最大にするパラメータを最尤推定により求める

2. 混合比と確率分布の積が最大になるクラスタへ各対象を分類する

最尤推定

m

i

iii θxfαθxp )|();(

if

〆クラスタiの混合比

〆クラスタiの確率密度関数

〆クラスタiのパラメータ

k

i ii αα 1,0

Page 7: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

代表的なクラスタリング手法〆EMアルゴリズム(2)[Dempster 1977]

7

1. パラメータの初期値を設定する2. 以下を収束するまで繰り返す

E-step: 現時点のパラメータを用いて、隠れ変数の条件付き期待値を求める(対象のクラスタへの確率的割り当てに相当する)

M-step: E-stepで求めた条件付き期待値を最大にするパラメータを求め、更新する(各クラスタ分布のパラメータ推定に相当する)

EMアルゴリズム

問題点

k-meansの問題点上2つと同じ 制約〆

1. 対象間の距離空間が確率分布により自動的に決定される(正規分布ならユークリッド距離など)

Page 8: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆競合学習(1)

入力層と競合層の2層からなるニューラルネットとしてモデル化される

競合層のノードがもつ重みは、入力パターンと近い場合にはより近く、遠い場合にはより遠くなるよう更新

入力層

競合層

8

Page 9: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆競合学習(2)

以下の2種類に大別

– ハード競合学習(Hard Competitive Learning)

入力パターンに最も近いノードのみ重みを更新(Winner-

takes-all)

例〆Generalized Lloyd algorithmなど

問題点〆競合層のユニットの一部が、全く機能しない可能性あり

– ソフト競合学習(Soft Competitive Learning)

入力パターンへの近さに応じて、複数のノードの重みを更新

例〆SOM(Self-Organizing Map)、 GNG(Growing Neural

Gas)など

何のために?

– 入力分布の近似々視覚化

– 教師なしクラスタリング 9

Page 10: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆 Self-Organizing Map (1)

[Kohonen 1982]

入力パターン相互の距離を保ちつつ、任意の次元にマッピングする

– (多くの場合)2次元空間へマッピングされる

– ある種の次元削減?

ネットワークの構造を事前に決める必要がある

– グリッド型、球面型など

2次元グリッド(四角型) 2次元グリッド(六角型) 10

Page 11: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆 Self-Organizing Map (2)

[Kohonen 1982]

1. 全ノードの重みをランダムに初期化

2. 入力パターンと最も近いノード(勝者ノード)を探す

3. 勝者ノードとその近傍ノードの重みを更新

– 近傍は時間に応じて縮小

近傍関数の一例〆

〆SOMの位相構造上でのマンハッタン距離

〆標準偏差(時刻に関する減少関数)

〆勝者ノード 〆SOM上の任意のノード

11

Page 12: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆 Growing Neural Gas (1)

[Fritzke 1995]

入力分布の位相構造を獲得

– 入力分布の近似が可能

– 位相構造を利用したクラスタリングも可能

ネットワーク構造は可変

– 任意の次元にマッピングする能力はない

– 問題点〆入力パターンの増加に伴い、ノードが増加し続ける

12

Page 13: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

1. 入力パターンと最も近いノード(第1勝者)と次に近いノード(第2勝者)を探す

2. 1〄の2つのノード間にエッジが存在しなければエッジを作成し、年齢を0に設定

– 既にエッジが存在する場合は年齢を0にするだけ

3. 入力と第1勝者間の二乗距離を、第1勝者の局所誤差へ加える

4. 第1勝者とその近傍ノードの重みを更新し、第1勝者と近傍ノード間のエッジの年齢をインクリメントする

5. 年齢が閾値を超えたエッジを削除し、エッジとの接続がなくなったノードを削除

技術的背景〆 Growing Neural Gas (2)

[Fritzke 1995]

13

Page 14: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆 Growing Neural Gas (3)

[Fritzke 1995]

6. 入力パターン数がパラメータλの定数倍に達した場合、以下の手順で新しいノードを追加

a. 局所誤差が最大のノード(以下、ノードq)を探す

b. 局所誤差最大ノードの隣接ノード集合から、再度局所誤差が最大のもの(以下、ノードf)を探す

c. 新規ノードをネットワークに追加

新規ノードはノードqとfの重みの平均で初期化

新規ノードとノードq、fそれぞれの間にエッジを作成

d. ノードqとf間のエッジを削除し、それぞれの局所誤差を減少させる

e. 新規ノードの局所誤差をノードqとfの局所誤差の平均で補完

7. 全ノードの局所誤差を減少させる

14

Page 15: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆 Growing Neural Gas (4)

[Fritzke 1995]

局所誤差

新規ノードはノードqとfの平均で初期化

ノードq

ノードf

15

Page 16: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆 Learning Vector Quantization(1)

[Kohonen 1995]

競合学習を教師あり学習へ適用

プロトタイプの逐次学習が可能

LVQ1~LVQ3の手法が存在

– 数字が上がるほど改良が進んだ手法

16

Page 17: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

技術的背景〆 Learning Vector Quantization(2)

[Kohonen 1995]

1. 各クラスを代表するプロトタイプを初期化

– 1クラスに複数のプロトタイプが存在してもよい

– SOMを用いて初期化する方法も

2. 入力パターンと最も近いプロトタイプを探す

3. 2〄で見つけたプロトタイプを、以下のルールに従い更新

– 入力パターンと同じクラスの場合、入力パターンに近づける

– 入力パターンと異なるクラスの場合、入力パターンから遠ざける

同じクラスの場合 異なるクラスの場合17

Page 18: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

学習器の評価(1)〆オンライン学習と追加学習

18

追加学習(Incremental Learning)

過去の学習データを破壊することなく、新しい入力データを学習できること。動的に形状が変化する非定常な分布も学習可能である、学習器に適応性があるとも解釈できる

オンライン学習(Online Learning)

多数の学習データを一括して処理するのではなく、入力されるデータを逐次学習すること。言い換えれば、入力データを 個学習したときの学習結果を として、 個目の入力データと から を順次求める学習手法⇔ バッチ学習(Batch Learning)、オフライ ン学習(Offline Learnig)

N Nθ 1N

Nθ 1Nθ

※ 逐次学習(Incremental Learning)と表記される場合もあるので注意が必要。この場合、多くは本発表における「オンライン学習」を意味している

Page 19: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

学習器の評価(2)〆有限メモリと計算量O(1)

19

有限メモリ(Finite Memory)

各ステップの学習時に計算のために確保するメモリ量が、学習データ数が無限になった際に一定値、または有限値を取ること

計算量O(1) (Time Complexity)

各ステップの学習に要する計算量のオーダーが学習データ数に対して 、つまり学習データ数に依らず一定であること。例えば、バッチ学習は学習の度に過去の全ての学習データを確認する必要があるため、少なくとも となる

(今回の考察においては次元数dなどを考慮していないことに注意!)

1N

N

Page 20: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

学習器の評価(3)〆オープンエンド学習

20

追加学習

計算量O(1)

GNG

々k-means々SVM々HMM

バッチ学習

(狭義の)オープンエンド学習

有限メモリ

SOM

々多層パーセプトロン々SVM(SGD)々HMM(オンラインEM)々LVQ

(広義の)オープンエンド学習

オンライン学習

(広義の)オープンエンド学習

SOINN

Page 21: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Agenda

21

研究背景

アルゴリズムの紹介

パラメータの解析

ソフトウェアの紹介(ソースの更新箇所)

Page 22: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Self-Organizing Incremental Neural Network (1)

[Shen & Hasegawa 2005]

GNGとSOMを組み合わせて拡張した手法

ネットワーク構造が可変

GNG同様、入力分布の位相構造を獲得

– 位相構造の獲得が十分に進むと、ネットワーク構造の変化を少なくする

注意〆次のスライドで示すアルゴリズムは、Adjusted SOINN

[神谷ら 2007] のものです。

22

Page 23: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Self-Organizing Incremental Neural Network (2)(Adjusted SOINN)[神谷ら 2007]

1. 入力パターンと最も近いノード(第1勝者)と次に近いノード(第2勝者)を探す

2. 第1勝者、第2勝者それぞれと入力パターンとの距離を、第1勝者、第2勝者それぞれの類似度閾値と比較

– 距離がどちらかの類似度閾値より大きい場合、入力パターンを新規ノードとして追加し、6〄へ

3. 1〄の2つのノード間にエッジが存在しなければエッジを作成し、年齢を0に設定

– 既にエッジが存在する場合、年齢を0にするだけ

23

Page 24: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Self-Organizing Incremental Neural Network (3)(Adjusted SOINN)[神谷ら 2007]

4. 第1勝者と近傍ノード間のエッジの年齢をインクリメントし、第1勝者と近傍ノードの重みを更新する

5. 年齢が閾値を超えたエッジを削除し、エッジとの接続がなくなったノードを削除

6. 入力パターン数がパラメータλの定数倍に達した場合、近傍ノードが1つ以下のノードを削除

24

Page 25: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Self-Organizing Incremental Neural Network (4)(Adjusted SOINN)[神谷ら 2007]

25

類似度閾値の計算

近傍ノードが存在する場合、近傍ノードのうち最も遠いノードとの距離

近傍ノードが存在しない場合、最近傍ノードとの距離

入力パターン

Page 26: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

SOINNシリーズとその応用

26

2005 2007

Original SOINN

[Shen et al. 2005]

E-SOINN[小倉ら 2007]

Adjusted SOINN

Classifier[神谷ら 2007] SSA-SOINN

[桜井ら 2007]

SOINNを用いたロボットの言語獲得

[Xe et al. 2007]

半教師あり能動学習への応用

近似能力の維持と構造々パラメータ数の簡略化を同時に実現

高速最近傍識別器の提案パラメータ数を削減

Page 27: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

SOINNシリーズとその応用

27

2008 2010

SOINN-DP[岡田ら 2008] SOINN-PBR

[須藤ら 2008]

SOIAM[須藤ら 2008]

GAM

[Shen et al. 2010]

AT-SOINN

[Aram et al. 2010]

SOINNを用いたロボットの一般問題解決

[巻渕ら 2010]

時系列パターン認識への応用

連想記憶の実現

パターンベース推論の実現

系列データを想起可能な連想記憶システム

属性情報を用いた転移学習への応用

Page 28: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Agenda

28

研究背景

アルゴリズムの紹介

パラメータの解析

ソフトウェアの紹介(ソースの更新箇所)

Page 29: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

実験環境

29

データセット〆2つの同心円、2つの正規分布、正弦波関数からなる5クラスの2次元の人工データ(特に断りのない限り10%の一様ノイズを含む)

学習時間〆 (λ、agemax) = (5001、200)で647.0ノード、 1,850.0(ms)

(λ、agemax) = (501、200)で145.0ノード、197.0(ms)

パラメータ値の範囲の制限1. λ>(学習データ数)のとき、ノードの削除処理が実行されない2. ネットワーク全体に対して各エッジの近傍に入力されるデータ

数は非常に少ないと想定されるため、学習データ数に対して大きすぎるagemaxは有効ではない

→ λの最大値を学習データ数、agemaxの最大値を学習データ数の1/100とする

学習データ数〆n=10,000

Page 30: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータの性質〆ノード数との関係(1)

30

λ 10,000 … 5,001 5,000 … 3,333 … 2,500 …

k 1 1 2 3 4

ノード数

n/k + 1 n/kn/(k – 1)

k : RemoveUnnecessaryNode()関数の実行回数が少ないほうがノード数が多い。

徐々に減少増加

例えばλ=5,001、9,000の場合、それぞれ5,001、9,000回目にノードの削除が発生し、どちらの場合も9,999回目までは基本的にノードは増加する。従ってλ=5,001はλ=9,000に対し、ノードが増加する回数が多く期待でき、その結果ノードが多く残る可能性が高い。

※1

※2

※1

※2

k=2

Page 31: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータの性質〆ノード数との関係(2)

31

まとめ

λはノード数の制御に関するパラメータ λをn/k (k=1,…,n) ごとに増加させることで、ノード数を安定

して増加させることができる。ただし、λ=n/2+1までλを増加させると、学習データ数が固定されている場合、基本的にそれ以上増やすことができない

Page 32: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータとノード数の関係(3Dプロット)

32

Page 33: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

33

パラメータとノード数の関係(2Dマップ)

Page 34: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータの性質〆クラス数との関係

34

λが小さい範囲では、クラス数はagemaxにほとんど関与しない← agemaxによるエッジの削除が発生する前に、λによるノード

の削除が発生し、エッジの年齢がagemaxに達しないため

λが大きい範囲では、クラス数の増加にλの増加およびagemax

の減少が関与する← λの増加によってノード数が増加する一方で、agemaxの減

少に伴いクラスの分離が進むことで、少数ノードからなるクラスが多数形成されるため

まとめ

agemaxはクラスの分離に関するパラメータ agemaxを減少させるとクラス数は増加する。ただし、 agemax

を有効に機能させるためには、λを一定値以上に設定する必要がある

Page 35: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータとクラス数の関係(3Dプロット)

35

Page 36: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータとクラス数の関係(2Dマップ)

36

Page 37: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータの性質〆ノイズ量との関係

37

ノイズが増加するごとに同じパラメータに対して出力されるクラス数が減少する← 今回の実験のように一様ノイズがデータセットに対して過

剰に発生する場合、各クラスの入力分布が持つ特徴が相対的に失われ、その結果入力全体がひとつのクラスとしてまとめられる傾向が発生したため

Page 38: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータとクラス数の関係〆ノイズなし(3Dプロット)

38

Page 39: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータとクラス数の関係〆ノイズなし(2Dマップ)

39

Page 40: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータとクラス数の関係〆30%ノイズ(3Dプロット)

40

Page 41: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータとクラス数の関係〆30%ノイズ(2Dマップ)

41

Page 42: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータの性質〆まとめ

42

λ〆ノード数の制御agemax〆クラスの分離

調整例

クラス数を維持したままノード数を増加させたい!← λ、agemaxを共に増加させる

クラス数を増加させたい!← λを増加させ、agemaxを減少させる

ノイズが多くて困る!← agemaxを減少させることでクラスの分離を適切に行うこ

とができる 学習パターンが少なくクラス数が安定しない!

1. 学習が収束するまで再学習を行う2. ガウス分布を用いて学習パターンに摂動を加える

※ λはその増加に伴いノード数が増加するのと同時に、その結果クラス数も増加する傾向にある

Page 43: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータの調整(1)

SOINNのパラメータを調整する上で、値の決定には以下の事柄が関係

– データ量

– ノイズ量

– 次元数

– クラス数

疑問〆パラメータの値と上記4つの事柄はどういう関係か?

43

Page 44: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

パラメータの調整(2)

44

クラス数

データ量〆多を想定

– 少の場合は、 λ、agemax

を共に小さく(特徴空間上の密度に関係)

右上ほど高次元 ノイズが多い場合は、λを

大きく、 agemaxを小さく

高次元

低次元

Page 45: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

参考〆非推奨パラメータ領域

45

パラメータとクラスの関係〆10%ノイズ

Page 46: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

Agenda

46

研究背景

アルゴリズムの紹介

パラメータの解析

ソフトウェアの紹介(ソースの更新箇所)

Page 47: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

ソースの更新箇所(Ver. 1.0.0→1.1.0)

SOINNアルゴリズム(adjusted SOINN)と異なる点を修正

ソースでは「年齢制限を越えたエッジを削除」→「勝者ノードの勝ち回数をカウントアップ」→「結合重みの更新」となっていたので、正しい順番である「勝者ノードの勝ち回数をカウントアップ」→「結合重みの更新」→「年齢制限を越えたエッジを削除」へ変更。

47

Page 48: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

ソースの更新箇所(Ver. 1.1.0→1.2.0)

パラメータ名を変更

(removeNodeTime 、deadAge)を(lambda、ageMax)へ変更。

SOINNアルゴリズム(adjusted SOINN)と異なる点を修正

ノードの削除が結合重みの更新回数の定数倍で行われていたので(なぜ?)、学習(入力)回数の定数倍で行われるように変更。また、エッジの削除により孤立するノードの削除が行われていなかったため、修正。

48

Page 49: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

References

1. J. MacQueen, ―Some methods for classification and analysis of

multivariate observations,‖ Proc. of the Fifth Berkeley Symposium

on Mathematical statistics and probability, Vol.1, pp.281-297,

1967.

2. A.P. Dempster, N.M. Laird, D.B. Rubin, ―Maximum likelihood from

incomplete data via the EM algorithm,‖ Journal of the Royal

Statistical Society, Series B (Methodological), Vol.39, No.1, pp.1–

38, 1977.

49

Page 50: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

References

3. T. Kohonen, ―Self-organized formation of topologically correct

feature maps,‖ Biological Cybernetics, vol. 43, pp.59—69, 1982.

4. B. Fritzke, ―A growing neural gas network learns topologies,‖

Advances in neural information processing systems (NIPS),

pp.625—632, 1995.

5. T. Kohonen, ―Self-organizing maps,‖ Springer 1995.

6. F. Shen, O. Hasegawa, ―An incremental network for on-line

unsupervised classification and topology learning, ‖ Neural

Networks, Vol.19, pp.90—106, 2005.

7. 神谷祐樹, 申富饒, 長谷川修, ―自己増殖型ニューラルネットワークを用いたプロトタイプ生成による高速最近傍識別,‖ 電子情報通信学会論文誌 D, Vol. J90-D, pp. 3000—3013, 2007.

50

Page 51: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

References

8. 小倉和貴, 申富饒, 長谷川修, ―オンライン教師なし分類のための追加学習手法,‖ 電子情報通信学会論文誌 D, Vol.J90-D, No.6,

pp.1610—1622, 2007.

9. 桜井啓介, 神谷祐樹, 長谷川修, ―競合型ニューラルネットを用いたオンライン準教師付き能動学習手法,‖ 電子情報通信学会論文誌 D,

Vol.J90-D, No.11, pp.3091—3102, 2007.

10. X. He, R. Kojima, O. Hasegawa, ―Developmental word grounding

through a growing neural network with a humanoid robot,‖ IEEE

Trans. SMC-Part B, Vol.37, No.2, pp.451—462, 2007.

11. X. He, T. Ogura, A. Satou, O. Hasegawa, ―Developmental word

acquisition and grammar learning by humanoid robots through a

self-organizing incremental neural network,‖ IEEE Trans. SMC-

Part B, Vol.37, No.5, pp.1357—1372, 2007.

51

Page 52: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

References

12. 岡田将吾, 長谷川修, ―自己増殖型ニューラルネットワークを用いた時系列パターンの学習々認識,‖ 電子情報通信学会論文誌 D,

Vol.J91-D, No.4, pp.1042—1057, 2008.

13. 須藤明人, 佐藤彰洋, 長谷川修, ―自己増殖型ニューラルネットを用いたノイズのある環境下での追加学習が可能な連想記憶モデル,‖

日本神経回路学会誌〃Vol.15, No.2, pp.98—109, 2008.

14. 須藤明人, 坪山学, 張シンリ, 佐藤彰洋, 長谷川修, ―自己増殖型ニューラルネットワークを用いたパターン情報ベースの推論機,‖ 電子情報通信学会論文誌 D, Vol.J91-D, No.6, pp.1634—1647, 2008.

52

Page 53: 自己増殖型ニューラルネットワークSOINN と その実践 › papers › how_to_use_SOINN_ppt.pdf · EMアルゴリズム(2)[Dempster 1977] 7 1. パラメータの初期値を設定する

References

15. F. Shen, H. Yu, W. Kasai, O. Hasegawa, ―An associative memory

system for incremental learning and temporal sequence,‖ In Proc.

of the 2010 Int’l Joint Conf. on Neural Networks, pp.698—705,

2010.

16. 巻渕有哉, 申富饒, 長谷川修, ―実世界における一般問題解決システムの提案とそのヒューマノイドロボットへの実装,‖ 電子情報通信学会論文誌D, Vol.J93-D, No.6, pp960—977, 2010.

17. A. Kawewong, O. Hasegawa, ―Fast and incremental attribute

transferring and classifying system for detecting unseen object

classes,‖ 1st SOINN Workshop, Proc. Int’l Conf. on Artificial Neural

Network, pp.563—568, 2010.

53