TypingMonkee2:自動四字熟語 041−045TypingMonkee2:自動四字熟語 046−050

2016年10月06日

遺伝的アルゴリズムによるニューラルネットの学習

ニューラルネットワークは、与えられた入力に対して正しい出力をするように内部の状態を少しずつ変えていく。これを「学習」と呼ぶ。
これは人間が人生の中での様々な学びをもって知恵を身につけていくことに似ている。

これに対し遺伝的アルゴリズムとは、複数の個体の中から優性なものだけを掛けあわせる、ということを繰り返すことにより、より優性な個体をつくりだすというものである。ここでの「優性」とは、ニューラルネットにおける「正しい入力と出力の組み合わせ」と同様、何らかの正解があり、その正解にいかに近いか、ということである。

かつて、このニューラルネットの学習を最適化する方法として、そのネットワーク構造を遺伝的アルゴリズムを使う、というものがあった。
これによりニューラルネットは、自らの代で学習を行い、さらにその構造が最適な個体だけが残っていく、という二重の最適化により、より効率的に学習を行うことができる、というものであった。



ここでは学習した内容、つまり学習によって変えられた各ニューロンの値も遺伝の対象にするか否か、ということでその実験が自然界をシミュレートしているのか、最適化に重心を置いたものなのか、という違いが起こる。

自然界においては、後天的に身についたものは遺伝するわけではない、ということから、学習したものが遺伝するということは自然をシミュレートしたものとしてはおかしいが、「最適化」という観点から見れば、学習した内容も遺伝の対象にすることは効率的である。

一方、ニューラルネットに学習させることをさせず、各ニューロンが持つ値もそのまま遺伝させる、ということも行われていた。この場合の評価の方法は、各個体が学習をしながら最適化を進める、というものではなく、遺伝によって創られた個体がそのままの状態で、与えられた入力に対してどれだけただしい出力ができるか、というものであった。
これは確かに効率が非常に悪いことが想像できるが、重要なことを示唆するものである。

以上をまとめると、遺伝的アルゴリズムをニューラルネットに応用したものには次の3通りのやり方がある。
  1. ニューラルネットの構造の初期状態を遺伝させる。各代のニューラルネットはそれぞれ遺伝によって得たネットワーク構造上で学習をする。
  2. ニューラルネットの学習をある程度進めた状態の構造を遺伝させる。各代のニューラルネットはそれぞれ遺伝によって得たネットワーク構造上でさらに学習をする。
  3. ニューラルネットの構造の初期状態を遺伝させる。各代のニューラルネットは学習しない。

こである疑問がわく。
上記の1が自然界をシミュレートしている、ということになるとされているが、ある個体がその人生で得た知恵というものは本当に遺伝しないのだろうか?

肉体を「学習する機械」とするのであれば、1が自然界のシミュレーションであるということは正しい。
各個体は、生まれた状態では何も学習しておらず、経験によって様々なことを0から学んでいく。

だが一方で、「ミーム」について考えれば、種が進化の中で身につけてきたことは、次の代に引き継がれていくものである。これはもちろん学んだことが物理的に遺伝情報として引き継がれていくわけではないが、書物や口承によって引き継がれていくものがある。それを「文化」などと呼んだりする。

上記の2は自然界において、物理的な遺伝情報とミームによる伝承をシミュレートしたものであるとは言えないが、1による進化と並行して別の遺伝情報により、先祖が学んだことを受け継ぐ、ということを思い起こさせるものである。 

OLランキングで1位になりたい!賛同していただける方は下記をクリック!
myinnerasia at 08:05│Comments(0)コンピューター科学 | 生命

コメントする

名前
URL
 
  絵文字
 
 
TypingMonkee2:自動四字熟語 041−045TypingMonkee2:自動四字熟語 046−050