0

バックプロパゲーションも備えたニューラルネットワークを作成しました。入力層に5つのノード、非表示層に6つのノード、出力層に1つのノードがあり、ランダムな重みがありsigmoid、活性化関数として使用します。

入力用のデータセットが2つあります。

例えば ​​:

13.5 22.27 0 0 0          desired value=0.02
7 19 4 7 2                desired value=0.03

今、私は5000回の反復でネットワークをトレーニングします。エラーが発生した場合、反復は停止します

値 ( desired - calculated output value) が 0.001 以下です。

各入力セットの最初の反復の出力値は約 60 であり、反復ごとに減少します。

ここでの問題は、入力の 2 番目のセット (目的の値が 0.03) が計算された出力値 3.001 のために反復を停止させるが、最初の入力のセットが目的の値 (つまり 0.02) に到達しなかったことです。その出力は約 0.03 です。

編集済み:

アルゴリズムを使用LMSし、エラーしきい値 0.00001 を変更して正しいエラー値を見つけましたが、0.03 と 0.02 の両方の目的の値の最後の反復の出力値は 0.023 と 0.027 の間にあり、まだ正しくありません。

4

1 に答える 1

1

エラー値の停止しきい値については、データセットの 1 つのメンバーだけでなく、1 つのエポック (すべてのデータセットのすべてのエラーの合計) でエラーを取得する必要があります。これにより、エラーしきい値の値を増やす必要がありますが、ニューラル ネットワークは、一部の例だけでなく、すべての例で適切な分類を行う必要があります。

于 2013-01-28T13:11:23.587 に答える