Neural Network Introduction
INDEX
General概要
Application応用分野
Basic基本
Modelネットワークモデル
Mechanism仕組み

General
  • 概要このページでは、本当に基本的な事だけを記述しておく事にした,本格的に扱うとなったら、エネルギー関数やら、シグモイド関数等を理解しなくちゃいけないのだ.う〜ん,本格的に書くと時間が掛かるし、自分もまだ知らない事多いしね.本当に、学びたい人は、書籍を買うか、インターネットを検索すれば、かなり、詳細な情報を掲載しているサイトも有るので、そちらを参考にして欲しい.(補足:検索する場合は、ニューロで検索するより、「ボルツマンマシン」等のモデル名で検索した方が良いよ)

  • AIやファジーという技術については、結構聞く言葉だけど、ニューロコンピュータという技術については、まだまだ知名度が低い気がする.簡単に言うと、前者は、学習する機能や、考える機能に工夫を加えた機構だけど、後者は、脳そのものを、人工で作ってしまおうという考え方だ.

  • 即ち、人間の脳を模して作ったコンピュータは、現在のコンピュータの様に、プログラムする必要が無いのだ.外部からの刺激によって、コンピュータ自体が学習し、自分で答えを出してくれるのである.勿論、OS等の基本ソフトも必要無い.人間そのものを人工で作った様なものだから、柔軟な考え方が出来るのである.もちろん,時々誤った答えも出すのだ.
    しかしながら、現時点では、それを、ハードウエアで具現化した物が無いのだ・・ちょっと前に、多入力の半導体(トランジスタ)が開発されたのを覚えているけど、とても手に入りそうも無いし、脳そのものをシミュレートするなら、何億という数の半導体が必要になってくるのだ・・

  • 従って、現時点では、ソフトウエアで、その仕組みを更にシミュレートしているのが現状である.例えば、手書き文字の認識システムや、音声認識システム等に、それらの成果の一部が反映されている.


Application
  • アトムやドラえもんの様な、夢物語はおいといて、当面の実用的応用分野について、少々考えておく.この様な、不確定な部分を含んだコンピュータ技術を、現在の迅速かつ正確な答えを要求される文化には必要無いものの様に思われる.しかし、その柔軟性は逆に、人間や自然界に存在する曖昧な事象を判断するのにはもってこいの技術なのだ.前述した、音声認識や手書き文字の認識しかりである.

  • 即ち、徐々にではあるが、現在でも、その技術は、「人間とコンピュータのインターフェイス」といった分野で、使われつつある.近い将来,人間とコンピュータが対話をするのに、キーバードやマウスは必要無くなるかも知れない.確かに、キーボードやマウス等が完全に無くなる事は無いかもしれないが、あくまでも補助的にあるだけで事は足りる.他は全部、声や文字だけで出来てしまう訳だ.

  • 想像してみよう,あなたが会社で、上司から、この文書をデータ化して欲しいと紙を渡されて頼まれた場合、このインターフェイスさえ確率していれば、あなたは紙をスキャナで撮って、マシンに向かって、「ワープロの文書にしろ!」と、命令するだけなのだ.後は、他の仕事をして待っていれば、データ化の仕事は終了である.
    これが実現されたら、ワープロ検定まで取って頑張ってる人たちは泣くだろうな,でも、本当になったら、便利だと思うよね?多分,今の技術ならば、この程度の実現は可能だと思うけど、まだまだ誤って認識するケースが多い事と,コスト的な問題も絡んで実現出来てないんだと思う.

Basic
基本的に、ニューラルネットは、ニューロンという素子と、シナプスという情報伝達子だけで構成されている,
  • Neoro[ニューロ]
    神経とか、神経細胞[Neuron]を意味する言葉,
    ニューラルネットでは、複数個のニューロを用意し、その個々が事実上の入出力部となる.モデルによっても違うが、ニューロは、[1または0]若しくは[1または−1]という様に、2値のどちらかを持つ.

  • Synapse[シナプス]
    神経細胞の連結部を意味する言葉,シナプス糸
    ニューラルネットの個々のニューロンを結合する糸,両端のニューロンの関係が深ければ、強く(大きい値を持つ)なり、関係が祖であれば、弱く(小さい値を持つ)なる.

  • Network
    1個のニューロンが、少なくとも複数個のニューロンと、シナプスにて結ばれる事によって、ネットワークを構成する.これもモデルによって異なるが、1方向にのみ、情報を伝達する構成のモデルや、全てのニューロンを繋いでしまうモデルが、様々な形で提唱されている.(下図は、全てを繋いだ例:相互結合型)


Model
ニューラルネットには、様々なモデルが提唱されていて、ここに紹介するモデル以外にも、幾つかの形態を知っているし、自分の知らない形態も有ると思う・・ここでは、代表的な3つのモデルを、基礎知識として、簡単に紹介する.[インターネットの検索等にも使えると思う]
  • Perceptronパーセプトロン[階層型]
    かなり初期に提唱されたニューラルネットワークで、入力層、中間層、出力層の3層構造になっていて、各層の間にのみシナプスによる結合がある.学習を行うと、ある一定のパターンに、有る程度柔軟に反応して、出力層の一つのニューロンのみが反応するようになる.この性質を利用して、パターン認識などに利用される.

  • Back Propagation algorithmバックプロパゲーション法(BP法)[階層型]
    基本的にはパーセプトロンの拡張,出力層に正しい解答を教師信号として与える事で、出力との誤差を求めて重みを変更する(逆誤差伝搬法)モデル,パターン認識には、パーセプトロンより優れていると言われているが、問題点も多い.

  • Hopfield Networkホップフィールドネットワーク[非階層型]
    相互結合型のニューラルネットワーク,最適化問題を解くことができる.ニューロン間の結合をエネルギーに置き換えて考え、そのエネルギーを最小にするようにすることで解を求める.

  • Boltzmann machineボルツマンマシン[非階層型]
    ホップフィールドネットワークの改良版,温度ゆらぎTという概念を付加して、ホップフィールドネットワークが陥りがちだった、局所最小解の出力を避ける(エネルギーの山を越える事が出来る)様に考えられたモデル.


Mechanism
基本的な学習の方法
ニューラルネットに於ける学習は、学習期間と睡眠期間を交互に繰り返す事で、学習を行う.睡眠期間というのは、学習期間に覚えたものを忘れる様に学習する事である.なぜこんな事をするかというと、ネットワーク全体のエネルギーが、高くなりすぎない様にする為だと聞いた事がある.つまり、ニューラルネットは、単一の構造で、いくつものパタンを記憶していく訳だから、一つのパタンだけを強く記憶しすぎると、どんな入力に対しても同じ答えを出してしまうおそれがあるって事だと思う(詳細は、その内分かったら書く)人間でも、忘れかけた事を、繰り返し学習すると、効率の良い覚え方が出来る様に・・
  • Learning 学習
    学習は、一旦、覚えさせるパタンを全てのニューロンに入力した状態から始める.あるニューロンから、シナプスを経由して結合している相手のニューロンの値によって、下記の様に結合の強さを修正する事で行う.

    [1]----[-1]:←結合を弱くする(ランダム値を−する)
    [1]----[1]:←結合を強くする(ランダム値を+する)

  • Sleep 睡眠
    睡眠は、学習と逆の事を行う,但し、1回学習して、同じ様に1回睡眠をしたのでは、覚えた事を、そのまま忘れてしまうので、何パタンかを覚えさせて、睡眠するといった操作をする・・らしい

  • Disillusion 覚醒
    学習の事を「覚醒」と呼ぶ事が有るが、自分の解釈では、覚醒(DISILLUSION)は、実際に、そのモデルが機能する時の事を「覚醒」と呼ぶ.何度も繰り返して学習させると、シナプスの繋がりは強固になってくる.若干の睡眠では、忘れない強い繋がりが出来る訳だ.
    実際には、ある状態をニューロン全てに与え、下記の要領で計算を繰り返す.

    1. [A]---(w)---[B(b)]
      まず、Aというニューロンの値は、Bの値bとシナプスの値wから、b×wで決まる.勿論、AにはB以外にも多くのニューロンが繋がって居る訳だから、それらも全て、同様に計算し、その総和(Σ)をもって、Aの値を決める.即ち、AとBが、学習段階で、同一の値を取る事が多く,結合が強まっているのならば、Aは、Bと同じ値になろうとするし、逆の場合は、逆の値になろうとするのである.最終的に、Aは、結合された全てのニューロンとシナプスから影響を受け、その総和(Σ)によって、決められる.この決め方には、幾つか考え方が有って、例えば、ニューロンの値が、1または−1を取る場合,Σが+(プラス)ならば1,−(マイナス)ならば−1とする場合も有るし、シグモイド関数というものに当てはめ、更にその境界をぼかして決定する場合も有るのだ.

    2. Aと同じ様に、Bに関しても計算を行う.これを繰り返して、全てのニューロンの値が決めていく.
    3. この操作を行うと、その状態は、最初に与えた状態から変化している筈であるので、再度、上記を繰り返して行う.結果,学習が成功していれば、ニューロンの状態が、もうこれ以上変化しないという状態に落ち着く状態が存在する.これが、ニューロンの出した解なのである.

Last update Dec.19/2000.
Return to Labo.