自己じこ組織そしき写像しゃぞう

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』

自己じこ組織そしき写像しゃぞう(じこそしきかしゃぞう、えい: Self-organizing maps, SOM, Self-organizing feature maps, SOFM)はニューラルネットワーク一種いっしゅであり、大脳皮質だいのうひしつ視覚しかくをモデルしたものである。自己じこ組織そしき写像しゃぞうコホネンによって提案ていあんされたモデルであり、教師きょうしなし学習がくしゅうによって入力にゅうりょくデータを任意にんい次元じげん写像しゃぞうすることができる。おもに1~3次元じげんへの写像しゃぞうもちいられ、多次元たじげんのデータの可視かし可能かのうである。出力しゅつりょくとなる空間くうかんをマップ (map)、競合きょうごうそう (competitive layer)、もしくは出力しゅつりょくそう (output layer) とぶ。出力しゅつりょくそうたいして入力にゅうりょくデータの空間くうかん入力にゅうりょくそう(input layer)とぶこともある。自己じこ組織そしき写像しゃぞうはコホネンマップ (Kohonen map)、コホネンネットワーク (Kohonen network)、自己じこ組織そしきマップ、ソム (SOM) などとぶこともある。

自己じこ組織そしき写像しゃぞう複数ふくすう人工じんこうニューロン接続せつぞくされた構造こうぞうである。この人工じんこうニューロンはノード (node)、もしくはユニット (unit) とぶこともある。

定性的ていせいてき紹介しょうかい[編集へんしゅう]

自己じこ組織そしき写像しゃぞう入力にゅうりょくそう競合きょうごうそう出力しゅつりょくそう)からなる2そう構造こうぞう教師きょうしなし学習がくしゅうニューラルネットワークである。入力にゅうりょくそうたん入力にゅうりょくあたえるだけであるため、競合きょうごうそうのみをたん自己じこ組織そしき写像しゃぞうぶこともある。

入力にゅうりょく次元じげん数値すうちデータであり、出力しゅつりょく競合きょうごうそう配置はいちされたノードとなる。かくノードは次元じげん空間くうかんじょう配置はいちされ、それぞれのノードに入力にゅうりょくデータの次元じげんおな次元じげんのベクトルが対応付たいおうづけられている。この対応付たいおうづけられたベクトルのことをおもみベクトルとび、このおもみベクトルを更新こうしんすることで学習がくしゅうおこなわれる。

競合きょうごうそうのノード配置はいち次元じげん自由じゆう設定せっていできる。もっと基本きほんてき利用りようほうは、2次元じげんじょうにノードを配置はいちし、高次こうじもとデータを学習がくしゅうさせることで高次こうじもとデータの関係かんけいせい可視かしするというものである。このように、自己じこ組織そしき写像しゃぞうこう次元じげんのデータあいだ存在そんざいする非線形ひせんけい関係かんけい簡単かんたん幾何きかがくてき関係かんけいぞう変換へんかんすることができる。

現在げんざい自己じこ組織そしき写像しゃぞうには様々さまざまなバリエーションがあり、従来じゅうらい自己じこ組織そしき写像しゃぞう基本きほんSOM (Basic SOM, BSOM) とぶことがある。しかし、BSOMというりゃくかた後述こうじゅつするバッチ学習がくしゅうSOM (Batch Learning SOM, BL-SOM) と混同こんどうしかねないためのぞましくない。

基本きほんSOMの算法さんぽう[編集へんしゅう]

前提ぜんてい[編集へんしゅう]

ネットワークにおける実際じっさい学習がくしゅうベクトル量子りょうし参考さんこうにしている。技術ぎじゅつてきには「教師きょうし監督かんとく)なし学習がくしゅう」とはいうものの、「我々われわれにはのぞんだ結果けっかがある」というてんで「監督かんとく」がついている(SOMにおいては、BMUの選定せんていがそれ。算法さんぽう参照さんしょう)。

もうすこし算法さんぽうをみていこう。10×10の人工じんこうニューロン(以下いか「ノード」)の配列はいれつつくる(「競合きょうごうそう」)。それぞれのノードにはひとつずつのおもみベクトルがあり、自分じぶんの「物理ぶつりてき位置いち」について全智ぜんちである(つまり、配列はいれつ添字そえじ自分じぶん自身じしんっている)。かくノードがおもみベクトルの成分せいぶん入力にゅうりょくベクトル(後述こうじゅつ)とおな次元じげんつ。それらのおもみベクトルの内容ないよう初期しょきにランダマイズされることによく注意ちゅういしてしい。

さて、ここでマップへの入力にゅうりょく用意よういする。通例つうれいならって、いろ表現ひょうげんするベクトルをみっつくろう。計算けいさん科学かがく世界せかいでは、いろあかみどりあおみっつの要素ようそ表現ひょうげんできる。したがって、入力にゅうりょくベクトルは3要素ようそち(3次元じげんベクトルである)、ひとひとつのベクトルにはいろ空間くうかんなか対応たいおうてんがある。

R = <255, 0, 0>
G = <0, 255, 0>
B = <0, 0, 255>

変数へんすう[編集へんしゅう]

ベクトルは太字ふとじあらわす。

  • t = 現在げんざいかえ回数かいすう
  • λらむだ = 最大さいだいかえ回数かいすう
  • Wv = 現在げんざいおもみベクトル
  • D = 目的もくてきとする入力にゅうりょく
  • Θしーた(t) = BMU(後述こうじゅつ)からの距離きょりによって変化へんかする近傍きんぼう半径はんけい
  • αあるふぁ(t) = 時間じかんによって変化へんかする係数けいすう学習がくしゅう係数けいすう

算法さんぽうのステップ[編集へんしゅう]

  1. ぜんおもみベクトルをランダマイズする
  2. 入力にゅうりょくベクトルをひと用意よういする
  3. マップじょうすべてのノードひとひとつにたいして、
    1. 入力にゅうりょくベクトルとかくノードのおもみベクトルあいだの(類似るいじ計算けいさんする。(類似るいじにはユークリッドてき距離きょりもちいられる(=かく要素ようそ自乗じじょう
    2. かくノードを検査けんさして、もっと距離きょりちいさい(ベクトルあいだ距離きょりみじかい=もっとも一致いっちした)ノードをつける。このノードをBMUとぶ (Best Maching Unit)。
  4. BMUの近傍きんぼうのノード(かくノードの「位置いち」がわかっているので、「近傍きんぼう」のノードをさがすことができる)のおもみベクトルをつぎのように変更へんこうし、入力にゅうりょくベクトルに近付ちかづける。
    • Wv(t + 1) = Wv(t) + Θしーた(t)αあるふぁ(t)(D(t) - Wv(t))
      • 近傍きんぼうのノード以外いがいおもみを変化へんかさせない。
      • かえ回数かいすうえるほどΘしーた適用てきようする範囲はんいせまくし、αあるふぁちいさいにする(近傍きんぼう半径はんけい収縮しゅうしゅく学習がくしゅう係数けいすう減少げんしょう下記かきGTM参照さんしょう
  5. λらむだたっしていなければ2.にもどる。

入力にゅうりょくベクトルを様々さまざまれば、このようなかえしによって、性質せいしつのノード(おもみベクトルをもったノード)が競合きょうごうそううえで「物理ぶつりてきな」クラスタを形成けいせいする。

この算法さんぽうについての解析かいせきてきアプローチ[編集へんしゅう]

SOMのアルゴリズムにはどんな次元じげん特徴とくちょうベクトルでも入力にゅうりょくできるが、おおくの応用おうようでは、入力にゅうりょく次元じげんたかい。出力しゅつりょくされるマップは1次元じげんや2次元じげんなど、入力にゅうりょくことなる次元じげんでもかまわない(「近傍きんぼう」が定義ていぎできればよい(→位相いそう幾何きかがく))。しかしポピュラーなのは2次元じげんもしくは3次元じげんのマップである。なぜなら、SOMは次元じげん拡大かくだいでなく、おも次元じげん削減さくげんもちいられるからである。

アルゴリズムはニューラルネットの用語ようごもちいることで容易ようい記述きじゅつできる。各々おのおののニューロンは出力しゅつりょくのマップじょうにそれぞれ固有こゆうの「物理ぶつりてきな」位置いちっている。入力にゅうりょくたいして、一番いちばんちかいウェイトベクトルをっていたニューロンを「勝者しょうしゃ」とび、勝者しょうしゃおもみベクトルはより入力にゅうりょくベクトルにちかくなるように修正しゅうせいされる。この「勝者しょうしゃ全部ぜんぶとる (winner-take-all, WTA)」プロセスは競合きょうごう学習がくしゅうばれる。

それぞれのニューロンは近傍きんぼうっている。あるニューロンが勝者しょうしゃとなった場合ばあい、その近傍きんぼうのニューロンもまたおもみベクトルを修正しゅうせいされる。このプロセスを、すべてのデータについて、なんも(通常つうじょう、たくさん)かえす。

このネットワークは最終さいしゅうてきには、入力にゅうりょくデータセットちゅうのグループまたはパターンを出力しゅつりょくノードに関連付かんれんづける結果けっかとなる。それら関連かんれんづけられたニューロンは入力にゅうりょくパターンの名前なまえんでもよいことになる(いろのベクトルを学習がくしゅうしたならいろニューロンのように)。

おおくのニューラルネット同様どうよう、SOMにも2つのフェーズがある。

  • 学習がくしゅうプロセスにおいては、写像しゃぞう構築こうちくされる。ニューラルネットは競合きょうごう学習がくしゅうもちいて自己じこ組織そしきする。ネットワークはおおくの入力にゅうりょく必要ひつようとする。つぎのフェーズで出現しゅつげんしそうな入力にゅうりょくベクトルをあらんかぎわせるといい(あれば、だが)。さもなければ、入力にゅうりょくベクトルをなんかえあたえる。
  • 写像しゃぞうプロセスにおいては、あたらしい入力にゅうりょくベクトルはすみやかにマップじょう位置いちあたえられ、自動的じどうてき分類ぶんるいされる。ただひとつの勝者しょうしゃニューロンが存在そんざいする。このニューロンはおもみベクトルが入力にゅうりょくベクトルにもっとちかいものであり、かくニューロンのおもみベクトルと入力にゅうりょくベクトルとのユークリッド距離きょり計算けいさんすることで簡単かんたん決定けっていできる。

generative topographic map (GTM) はSOMのあたらしいバージョンのひとつである。GTMは1996ねんにBishop, Svensen, Williamsの論文ろんぶんちゅうはじめて発表はっぴょうされた。GTMはかくりつモデルであり、おそらく収束しゅうそくする。また、近傍きんぼう半径はんけい収縮しゅうしゅく学習がくしゅう係数けいすう減少げんしょう必要ひつようとしない。

GTMは生成せいせいモデルである。入力にゅうりょくデータを「まずてい次元じげん空間くうかんがわかくりつてきてんえらび、それを観測かんそくされた高次こうじもと入力にゅうりょくデータの空間くうかんじょうてんなめらかな関数かんすう写像しゃぞうしたのちでノイズをくわえたもの」と仮定かていする。てい次元じげんがわかくりつ分布ぶんぷなめらかな関数かんすう、そしてこう次元じげんがわでのノイズのパラメータはすべEMアルゴリズム (en:EM_algorithm) によって入力にゅうりょくデータから学習がくしゅうされる。

ニューラルネットとしてのSOM[編集へんしゅう]

大脳皮質だいのうひしつ視覚しかくは、コラム構造こうぞうっている。このコラム構造こうぞう生得しょうとくてきなものではなく、学習がくしゅうによってられるものである。この視覚しかくにおけるコラム構造こうぞう自己じこ組織そしきをモデルしたものが自己じこ組織そしき写像しゃぞうである。WillshawとVon Der Malsburgによって1976ねん提案ていあんされた[1]

クラスタリング手法しゅほうとしてのSOM[編集へんしゅう]

SOMはk平均へいきんほう位相いそう概念がいねんれたものである。また、k平均へいきんほうはBL-SOMにおいて近傍きんぼう半径はんけいを0、学習がくしゅう係数けいすうを1に固定こていしたものと等価とうかである。

可視かし手法しゅほうとしてのSOM[編集へんしゅう]

こう次元じげんのデータや、ベクトル空間くうかんじょうにないデータを、2次元じげん平面へいめんじょうなどのよりてい次元じげん容易ようい観察かんさつできる空間くうかん写像しゃぞうする(次元じげん削減さくげんする)ことで可視かしできる。次元じげん削減さくげんによって可視かしおこな手法しゅほうとしては主成分しゅせいぶん解析かいせきなどがある。曲面きょくめんじょう分布ぶんぷしている場合ばあい主成分しゅせいぶん解析かいせきではうまく削減さくげんできないが、SOMなら高次こうじもと空間くうかんじょうでのニューロンの配置はいち曲面きょくめんにフィットするよう変形へんけいするので表示ひょうじよう空間くうかん有効ゆうこう利用りようできる。

アルゴリズム[編集へんしゅう]

SOMのアルゴリズムはおおきくけて2つ存在そんざいする。ひとつは大脳だいのう視覚しかくのモデルであったことに由来ゆらいするオンライン学習がくしゅうモデルである。このモデルでは、データが入力にゅうりょくされるたびに学習がくしゅうおこなわれる。から入力にゅうりょくされたデータのウェイトがたかくなる傾向けいこうがある。また、かくニューロンの初期しょきはランダムに設定せっていされる。

一方いっぽう、SOMを解析かいせき手法しゅほうて、データの入力にゅうりょく順序じゅんじょ依存いぞんする性質せいしつのぞくための変更へんこうくわえられたものがBL-SOMである。BL-SOMではニューロンは主成分しゅせいぶん解析かいせきもちいてもとめられた主成分しゅせいぶんじく空間くうかんじょう整然せいぜん初期しょき配置はいちされる。また、すべてのデータを各々おのおののニューロンに分類ぶんるいわったのち各々おのおののニューロンが同時どうじ学習がくしゅうおこなう。

SOMのバリエーション[編集へんしゅう]

  • バッチ学習がくしゅうSOM (Batch Learning SOM, BL-SOM):すべての入力にゅうりょくあたえたのちおもみベクトルの更新こうしんおこなうSOM(学習がくしゅう順序じゅんじょ依存いぞんする性質せいしつ除去じょきょされる)
  • 構造こうぞうSOM (Tree Structured SOM, TS-SOM):複数ふくすうのSOMを構造こうぞうにしたSOM(上位じょういのSOMが下位かいのSOMをガイドすることで計算けいさん時間じかん短縮たんしゅくされる)
  • 適応てきおう部分ぶぶん空間くうかんSOM (Adaptive Subspace SOM, AS-SOM):かくノードが線形せんけい部分ぶぶん空間くうかんなどの多様たようたい表現ひょうげんするようにつくられたSOM
  • 球面きゅうめんSOM (Spherical SOM):出力しゅつりょくのマップを球面きゅうめんにしたSOM(はしがなくなるため、学習がくしゅうにおけるかたよりが軽減けいげんされる)
  • 中央ちゅうおうSOM (Median SOM): ベクトルてきデータに応用おうよう可能かのうにしたもの
  • 階層かいそうてきSOM (Hierarchical Self-Organizing Map, Hierarchical Feature Map, HFM)
  • そう曲面きょくめんSOM (Hyperbolic SOM, HSOM)

書籍しょせき[編集へんしゅう]

この分野ぶんや代表だいひょうてき書籍しょせきとしては、考案こうあんしゃ自身じしんによる著書ちょしょ自己じこ組織そしきマップ』[2]げられる。

参考さんこう文献ぶんけん[編集へんしゅう]

  1. ^ “How patterned neural connections can be set up by self-organization”. Proceedings of the Royal Society of London. Series B, Containing papers of a Biological character. 194 (1117): 431-45. (1976). PMID 12510. 
  2. ^ Teuvo Kohonen ちょとくだか平蔵ひらぞう堀尾ほりお恵一けいいち大北おおきたただしあきら大薮おおやぶまたしげる藤村ふじむら喜久郎きくお やく自己じこ組織そしきマップ』(改訂かいていばん)シュプリンガーフェアラーク東京とうきょう、2005ねん6がつ原著げんちょ2000ねん12月28にち)。ISBN 978-4431711544 

関連かんれん項目こうもく[編集へんしゅう]

外部がいぶリンク[編集へんしゅう]