newrbe
厳密な放射基底ネットワークの設計
構文
net = newrbe(P,T,spread)
説明
放射基底ネットワークを使用して関数を近似できます。newrbe
を使用すると、設計ベクトルに対する誤差が 0 である放射基底ネットワークを極めて短時間で設計できます。
net = newrbe(P,T,spread)
は、2 つまたは 3 つの引数を取ります。
P |
|
T |
|
spread | 放射基底関数の広がり (既定は 1.0) |
これは、新しい厳密な放射基底ネットワークを返します。
spread
が大きいほど、関数近似がスムーズに行われます。広がりが大きすぎると数値的な問題が発生する可能性があります。
例
ここでは、入力 P
とターゲット T
が与えられたときの放射基底ネットワークを設計します。
P = [1 2 3]; T = [2.0 4.1 5.9]; net = newrbe(P,T);
新しい入力に対してネットワークのシミュレーションを行います。
P = 1.5; Y = sim(net,P)
アルゴリズム
newrbe
は 2 層ネットワークを作成します。最初の層には radbas
ニューロンがあり、dist
で重み付けされた入力を計算し、netprod
でその正味入力を計算します。2 番目の層には purelin
ニューロンがあり、dotprod
で重み付けされた入力を計算し、netsum
でその正味入力を計算します。どちらの層にもバイアスがあります。
newrbe
は、最初の層の重みを P'
に設定し、最初の層のバイアスをすべて 0.8326/spread
に設定します。これにより、重み付けされた入力が +/− spread
のときに 0.5 となる放射基底関数が得られます。
2 番目の層の重み IW{2,1}
およびバイアス b{2}
は、最初の層の出力 A{1}
をシミュレートし、次の 1 次式を解くことにより求められます。
[W{2,1} b{2}] * [A{1}; ones] = T
バージョン履歴
R2006a より前に導入