newrbe
Entwickeln exakter radialer Basisnetze
Syntax
net = newrbe(P,T,spread)
Beschreibung
Radiale Basisnetze können zum Schätzen von Funktionen verwendet werden. newrbe
entwickelt sehr schnell ein radiales Basisnetz mit null Fehlern bei den Entwurfsvektoren.
net = newrbe(P,T,spread)
akzeptiert zwei oder drei Argumente,
P |
|
T |
|
spread | Verteilung der radialen Basisfunktionen (Standardwert = 1,0) |
und gibt ein neues exaktes radiales Basisnetz aus.
Die größer spread
, desto glatter die Funktionsapproximation. Eine zu große Verteilung kann zu numerischen Problemen führen.
Beispiele
Hier entwickeln Sie ein radiales Basisnetz anhand der Eingänge P
und Ziele T
.
P = [1 2 3]; T = [2.0 4.1 5.9]; net = newrbe(P,T);
Das Netz wird für einen neuen Eingang simuliert.
P = 1.5; Y = sim(net,P)
Algorithmen
newrbe
erstellt ein zweischichtiges Netz. Die erste Schicht weist radbas
Neuronen auf und berechnet die gewichteten Eingänge mit dist
und den Netzeingang mit netprod
. Die zweite Schicht weist purelin
Neuronen auf und berechnet die gewichteten Eingänge mit dotprod
und den Netzeingang mit netsum
. Beide Schichten weisen Verzerrungen auf.
newrbe
setzt die Gewichtung der ersten Schicht auf P'
und die Verzerrungen der ersten Schicht auf 0.8326/spread
, was radiale Basisfunktionen ergibt, die sich bei gewichteten Eingängen von +/- spread
bei 0,5 kreuzen.
Die Gewichtungen IW{2,1}
und Verzerrungen b{2}
der zweiten Schicht können Sie finden, indem Sie die Ausgaben der ersten Schicht A{1}
simulieren und daraufhin den folgenden linearen Ausdruck lösen:
[W{2,1} b{2}] * [A{1}; ones] = T
Versionsverlauf
Eingeführt vor R2006a