newrb
放射基底ネットワークの設計
説明
は、次のうち 2 つの引数を取ります。net = newrb(P,T,goal,spread,MN,DF)
P—Q個の入力ベクトルから成るR行Q列の行列T—Q個のターゲット クラス ベクトルから成るS行Q列の行列goal— 平均二乗誤差の目標値spread— 放射基底関数の広がりMN— ニューロンの最大数DF— 表示間に追加するニューロンの数
放射基底ネットワークを使用して関数を近似できます。newrb は、指定された平均二乗誤差の目標値を満たすまで、放射基底ネットワークの隠れ層にニューロンを追加します。
spread が大きいほど、関数近似がスムーズに行われます。広がりが大きすぎると、急速に変化する関数に多くのニューロンを当てはめる必要があります。広がりが小さすぎると、滑らかな関数に多くのニューロンを当てはめる必要があり、ネットワークが適切に汎化しない場合があります。さまざまな広がりを指定して newrb を呼び出し、与えられた問題に対して最適な値を求めます。
例
入力引数
出力引数
アルゴリズム
newrb は 2 層ネットワークを作成します。最初の層には radbas ニューロンがあり、dist で重み付けされた入力を計算し、netprod でその正味入力を計算します。2 番目の層には purelin ニューロンがあり、dotprod で重み付けされた入力を計算し、netsum でその正味入力を計算します。どちらの層にもバイアスがあります。
最初は、radbas 層にはニューロンがありません。ネットワークの平均二乗誤差が goal より小さくなるまで、次の手順が繰り返されます。
ネットワークのシミュレーションを行います。
誤差が最大になる入力ベクトルを求めます。
そのベクトルに等しい重みを使用して
radbasニューロンを追加します。誤差が最小化されるように
purelin層の重みを再設計します。
バージョン履歴
R2006a より前に導入