Kohonenは基本的な競合学習アルゴリズムに、近傍系による協調学習を取り入れた形の学習則を提案した。これは2次元の信号空間(例えば網膜)から2次元のニューロン配列へ、信号空間の位相を保存したままマッピングができるのみならず、順序づけができるような任意の特徴空間から、2次元のニューロン配列への位相マッピングができる自己組織化地図(SOM)である。 このモデルによって入力信号空間の位相は、ニューロンの配列という形で競合層にtopologicalにマッピングされる。すなわち、入力パターン間の類似が競合層のノードの近さの関係にうつされるのである。このネットワークにおいては、まず入力が競合層のすべてのノードに伝搬され、競合層で単一の勝者が決定される。競合は次式(1)に従う。 ここで、Wrは位置ベクトルrのノードの重みベクトル、Xは入力ベクトルsは勝者ノードの位置ベクトルである。qはユークリッド距離をとる。さらに、個々のノードの持つ重みベクトルの更新(学習)が式(2)に従って行なわれる。 (t)は学習係数、h(t,r,s)は側方作用を表わす関数である。 これらの過程によって、入力信号集合がノードの重みベクトルとしてネットワーク上にマップされる。 現在このモデルを効率化し、学習能力を強化させるための研究がさかんに行なわれているが、SOMの長所をそのまま保存しかつ学習能力を強化したモデルは、多く提案されてはいない。本論文では、このSOM学習アルゴリズムに基づいて、あらたにネットワークアーキテクチャを階層化し、ネットワークの規模を層に応じて変化させ、さらに信号伝搬を局所化させたモデル(LPHN)を提案する。 このネットワークは上層にいくにつれて、ネットワークの規模(ノード数)が増大するようになっており、層間の信号伝搬は図1の様である。すなわち、隣との重なりを最小限にした局所伝搬となっている。ここでの信号伝搬とは、各階層を通して同一の入力信号の伝搬経路のことを指す。また、最下層への入力信号は層内の全ノードに対して伝搬されるものとしている。学習は下層から逐次的に行なわれる。つまり、下層のマッピングが収束した段階で上層にその重みベクトルが局所的にコピーされ、上層の学習が開始されるのである。学習が終了した下層のネットワークでは、入力信号に対して局所的な競合過程のみが行なわれ、勝者ノードのみが上層にその入力信号を伝搬する。従って、下層のネットワークは入力信号の伝搬を上層の適当な部分にいわばガイドする役割を持つことになる。 図1:LPHNに於ける層間の信号伝搬 競合に用いられるノードnの評価関数qnはスケール成分を掛けた重み付きユークリッド距離である。 学習は基本的に式(2)にしたがって行なわれるが、側方作用は敷居値をとして、 としている。 本研究ではLPHNを、移動ロボットによる未知空間の環境地図自動生成に応用し、その学習特性及び学習能力をSOMと比較するためにシミュレーションを行なった。以下にその概要を示す。 1、移動ロボットは方位センサ、積算距離計、および図2に示したような等方性に距離センサ(ソナーセンサ)を用いてデータを採る。 2、探索時は障害に接近するとランダムに方向を変えるものとする。 3、移動ロボットは積算距離計と方位センサを用い座標を算出し、同時にソナーデータを合わせて閉じた未知空間を計測をする。 4、計測が終了したら、ネットワークにデータをマッピングさせる。この際、座標データのスケールがソナーデータのスケールよりかなり大きくなるようにパラメータのスケーリングを行ない、それを用いてLPHNを組織化する。 移動体ロボットによる探索の様子を図3に示す。灰色の部分は障害を表わし、小さい三角形でロボットの移動した軌跡を表示している。○はロボットがデータを採取した地点である。ネットワークシミュレータではロボットシミュレータによって採取したデータ(38次元)に、筆者の過去の研究に基づく手法で適当なスケーリングを施しネットワークに学習させる。 図表図2:移動ロボットとソナーセンサ / 図3:ロボットの探索の様子 図4にネットワークの学習の様子を示す。ここではLPHNは3層からなるものを用い、各層のニューロン数は100、441、1849とし、全学習回数を37000回としている。タイトルバーに表示された数値は学習回数と階層を表わすものである。表示されているネットパターンの交点はニューロンを、リンクはそれらのニューロンがネットワーク上で最近接であることを表わしている。各々のニューロンはそれが保持している座標に基づいて位置づけられている。なお、ネットワークの学習に用いたパラメータの値は、i=1.0、f=0.005、iはノード数に依存、f=0.5としている。 図5には、まったく同じ学習を単層SOMを用いて行なった結果(左)とLPHNを用いて行なった結果(中)が示されている。ここでは比較のためにSOMのニューロン数をLPHNの最上層のそれと等しい1849とし、学習回数もLPHNの全学習回数に等しい37000回としている。ネットワークの学習に用いたパラメータの値は、上記と同様でSOMではi=12である。さらに、ソナーデータが座標と対応して正確に学習されているかどうかを調べるために口で囲んだ点のソナーデータを計測しそれによって連想を行なうと●で示したニューロンが発火した。この2つが近ければ近いほど学習が正確に行なわれていたことになる。グラフ(右)は、ソナー情報の想起の様子である。ここでは縦軸にソナーの示す値(センサから壁までの距離)横軸に36個のソナーの方向(角度)を示している。折れ線は入力点口でのソナーデータの実測値、棒は●のニューロンが保持していたソナー情報を示している。 図表図4:LPHNによって生成されたマップ / 図5:SOMとLPHNによるマップの比較 図6には上記の学習に関する学習曲線を示し、SOMとLPHNの学習の様子を比較している。それぞれのグラフには、座標成分(線形データ)とソナー成分(非線形データ)の2つが示されている。横軸は学習時間としてCPU時間を、縦軸は平均誤差をデータ分布の標準偏差で割った値を示している。尚、このシミュレーションはHP-735(HP-UX9.05)で行なっている。 表1に学習時間の内訳を示す。ここでは学習時間と競合過程に要する時間の内訳を示している。 図表図6:SOM(左)とLPHN(右)の学習曲線 / 表1:マッピングに要する時間の内訳 この結果次のことがわかった。 ・筆者の過去の研究の結果によるスケーリング則によって、2つのモダリティー(座標とソナー)の間の写像関係に関する矛盾によるマップの歪みが解決する。 ・距離及び方位センサーの誤差は、シミュレータによる想起テストの結果を見るかぎり大きな悪影響は及ぼさない。 ・LPHNによるマップとSOMによるそれを比較すると、LPHNの方がdead nodeが少なく、そのためマップが広がり、信号分布をより忠実にマップしていることがわかる。ここでdead nodeとは、信号が発生しない点を重みベクトルとして獲得してしまったノードを指す。 ・LPHNとSOMの学習曲線を比較した結果、LPHNの収束が極めて速いことがわかった。 ・線形データと非線形データの学習精度を比較すると、両者とも非線形データの精度が線形データより悪いものの、LPHNの方がSOMより収束が良く、学習精度が高くなっていることがわかった。 ・学習時間の短縮のみでなく想起過程においても計算時間が短縮できることがわかった。 |