trains
学習関数を使用したシーケンシャルな順序のインクリメンタル学習
構文
net.trainFcn = 'trains'
[net,tr] = train(net,...)
説明
trains
は直接呼び出されません。代わりに、net.trainFcn
プロパティが 'trains'
に設定されているネットワークに対し、train
によって呼び出され、次のようになります。
net.trainFcn = 'trains'
は、ネットワークの trainFcn
プロパティを設定します。
[net,tr] = train(net,...)
は、trains
を使用してネットワークに学習させます。
trains
は、シーケンシャルな更新を伴う重み学習規則とバイアス学習規則を使用して、ネットワークに学習させます。各タイム ステップの終了時に更新が行われ、入力シーケンスがネットワークに提示されます。
このインクリメンタルな学習アルゴリズムは、一般に、適応用途で使用されます。
学習は trains
の学習パラメーターに従って行われます。以下に、学習パラメーターとその既定値を示します。
net.trainParam.epochs |
| 最大学習エポック数 |
net.trainParam.goal | 0 | 性能目標 |
net.trainParam.show |
| 表示間のエポック数 (表示なしは |
net.trainParam.showCommandLine |
| コマンド ライン出力の生成 |
net.trainParam.showWindow |
| 学習 GUI の表示 |
net.trainParam.time |
| 最大学習時間 (秒単位) |
ネットワークの利用
perceptron
または linearlayer
を呼び出すことによって、適応で trains
を使用する標準的なネットワークを作成できます。
trains
を使用して適応を行うカスタム ネットワークを準備するには、以下のようにします。
net.adaptFcn
を'trains'
に設定します。これにより、net.adaptParam
がtrains
の既定のパラメーターに設定されます。各
net.inputWeights{i,j}.learnFcn
を学習関数に設定します。各net.layerWeights{i,j}.learnFcn
を学習関数に設定します。各net.biases{i}.learnFcn
を学習関数に設定します。(重みとバイアスの学習パラメーターは、与えられた学習関数に応じて自動的に既定値に設定されます。)
ネットワークに適応させるには、以下のようにします。
重みとバイアスの学習パラメーターを目的の値に設定します。
adapt
を呼び出します。
適応の例については、help perceptron
および help linearlayer
を参照してください。
アルゴリズム
入力シーケンスの各タイム ステップの終了時に、学習関数に基づいてそれぞれの重みとバイアスが更新されます。
バージョン履歴
R2006a より前に導入