next up previous contents
Next: 中間層-出力層のルール抽出 Up: ルール抽出実験 Previous: 入力層-中間層のルール抽出

入力層-中間層の論理関数による中間層のニューロンの出力の計算

  ここまでで各ニューロンの論理関数を求めることができたが、通常論理式における論理変数の値は0か1である。しかし今回のニューラルネットワークは連続値を扱うので、論理式による出力の計算は以下のことを定義して行う。
  1. 肯定の論理変数には対応するニューロンの出力値を連続値のまま代入する。 
  2. 否定の論理変数には、1から対応するニューロンの出力値を引いた値を代入する。 
  3. tex2html_wrap_inline2341 ”の演算は、これに係る変数の中の最小値を示す。(例: tex2html_wrap_inline2343 =0.1) 
  4. “+”の演算は、これに係る変数の中の最大値を示す。(例:0.1+0.2+0.3=0.3) 
  5. 演算の優先度は“ tex2html_wrap_inline2341 ”の方が“+”より高いとする(例: tex2html_wrap_inline2347 =0.1+0.3=0.3) 

これらの定義のもとで計算した中間 j の入力層-中間層の論理関数による出力と、 ニューラルネットで予測実験を行ったときの中間 j の実際の出力を比較した結果を図に示す。 ここで、論理関数による出力の計算では、入力は順次ニューラルネットでの入力の値 (入力 i の出力値)を用いている。中間0のグラフを図9.5に、 中間1のグラフを図9.6に、中間2のグラフを図9.7に、 中間3のグラフを図9.8に示す。グラフの縦軸がニューロンの出力または論理関数による出力の値で、 横軸が位相である。凡例のNNとはニューラルネットの出力を、論理とは論理関数の出力を示す。

     figure584
図 9.2: 入力層-中間層の論理関数とネットワークの出力の比較:中間1
図 9.1: 入力層-中間層の論理関数とネットワークの出力の比較:中間0

     figure598
図 9.4: 入力層-中間層の論理関数とネットワークの出力の比較:中間3
図 9.3: 入力層-中間層の論理関数とネットワークの出力の比較:中間2

それぞれの図の論理関数による出力(凡例の論理)について見てみる。ここでの誤差とは、 単にニューラルネットの出力と論理関数による出力との差を指す。 論理関数による出力はニューラルネットの複雑な計算の近似であるため、誤差は概して大きくなることが予想される。 そのため、ここでは誤差の大きさについては特に触れず、論理関数による出力の変化の概形が ニューラルネットの出力の変化と比較してどうであるか見てみることにする。 図9.5では、位相が108度のところまではニューラルネットとほぼ同じ出力であり、 つぎの位相での出力からは誤差が大きくなっているが、傾向としては大筋つかめている。 図9.6では、ニューラルネットの出力の傾向を大筋つかめている。 図9.7ではニューラルネットの出力も論理関数の出力もほぼ1で一定になっている。 図9.8では、論理関数のグラフは常に0になっており、 ニューラルネットの出力とは全く違う形になっている。



Deguchi Lab.