2011-10-19 11 views
0

を追加:私は単一層ニューラルネットワークのいくつかのコードを持っているニューラルネットワークの隠れ層大幅に減少性能

class network { 

var outputs; 
var weights; 
var biases; 

feedforward(inputs) { 
} 

outputFunction(number) { 
} 

} 

出力機能(SO 0と1の間の数を返す)シグモイドです。入力は1と0の配列です。

私はoutputs2、weights2、biases2を追加して、実行して中間層を追加しました:私は、出力ノードの入力は今、私の隠された層の出力であるので、それがでなければならないことを考え出した

feedforward2(inputs) { 
    use weights2, biases2, etc. 
} 

feedforwad(inputs) { 
    inputs = feedforward2(inputs) 
    .... 
} 

少なくとも類似のパフォーマンスを有するしかし、ネットワークを再度訓練した後、パフォーマンスが大幅に低下しました。何か案は?トレーニングは、まだ隠れた層への逆伝播を有しておらず、出力層の重みを更新するだけであり、隠れた層の重みは常に同じままである。

答えて

0

隠れ層の重みがランダムで固定されている場合、信号の歪みが発生します。

多層ネットワークのトレーニングは困難です。それらの大部分には、畳み込みネットワークと最近のディープ・ビリーフ・ネットワークに関するいくつかの例外を除いて、隠されたレイヤーは1つしかありません。