-
Die vorliegende Erfindung betrifft das Gebiet von künstlichen neuronalen Netzen und
insbesondere betrifft sie ein künstliches neuronales Netz mit einer einzelnen versteckten Schicht zum
Vorhersagen von Werten bei nicht-linearen funktionalen Abbildungen.
-
Das Vorhersagen von zukünftigen Werten eines -Prozesses auf Grundlage der vorangehenden
bekannten Werte des Prozesses wird häufig versucht, indem künstliche neuronale Netze verwendet werden.
Das neuronale Netz tut dies durch Modellieren der Kurzzeitstruktur des Prozesses.
-
Es ist gewöhnlicher Weise ein triviales Problem die nächsten paar Werte bei einer linearen
funktionalen Abbildung vorherzusagen; jedoch ist es weitaus schwieriger die nächsten paar Werte bei einer
nicht-linearen funktionalen Abbildung vorherzusagen.
-
Die Kurzzeitstruktur einer nicht-linearen funktionalen Abbildung kann durch Ausdrücken des
gegenwärtigen Werts des Abbildungsabtastwerts als eine Funktion (eine Vorhersagefunktion) der
vorangehenden Werte der Abbildung modelliert werden. Sobald der korrigierte Wert eines vorhergesagten
Werts bekannt wird, wird er mit dem vorhergesagten Wert verglichen, um einen Fehler zu erzeugen. Der
Fehler ist ein Maß über die Genauigkeit der Vorhersagefunktion beim Vorhersagen des richtigen Werts. Um
die Vorhersagefunktion zu optimieren wird der Fehler verwendet, um die Vorhersagefunktion zu
modifizieren. Somit wird die Vorhersagefunktion konstant geändert, um mit der Kurzzeitstruktur der
Abbildung überein zu stimmen.
-
Ein Beispiel einer Vorhersagefunktion ist ein Polynom. Polynome können verwendet werden, um
irgendeine nicht-lineare kontinuierliche Funktion auf einen beliebigen Genauigkeitsgrad zu approximieren,
sogar dann, wenn die nicht-lineare kontinuierliche Funktion eine sogenannte chaotische Reihe ist.
-
Bei einer nicht-linearen chaotischen funktionalen Abbildung steigt die Unsicherheit der
Vorhersage exponentiell an, da der Wert, der vorhergesagt werden soll, weiter weg von dem letzten
bekannten Wert bewegt wird. Dies schließt irgendeine Langzelt-Vorhersagemöglichkeit aus. Jedoch ist eine
Kurzzeit-Vorhersagemöglichkeit noch auf Grundlage der Kurzzeitstruktur der Abbildung möglich.
-
Vorangehende Anstrengungen zum Vorhersagen der nächsten paar Werte bei einer nicht-linearen
Abbildung haben neuronale Vorwärtssteuerungs-Netzprädiktoren mit einem Eingang, der eine Funktion der
vorangehenden Werte der Abbildung umfasst, und einem einzelnen Ausgang verwendet. Zwei Haupttypen
von neuronalen Vorwärtssteuerungsnetzen sind verwendet worden. Der erste Typ ist ein neuronales Netz
der Mehrschicht-Perzeptron (Multi Layer Perceptron, MLP), und der zweite ist ein neuronales Netz mit
einer Radialbasisfunktion (Radial Basis Function, RBF).
-
Der Hauptunterschied zwischen diesen zwei Strukturen besteht darin, dass die MLP Struktur
wenigstens zwei versteckte Schichten verwendet; wohingegen die RBF Struktur nur eine versteckte Schicht
verwendet. Die Art der Basis- oder Aktivierungsfunktionen (der Funktionen, die mit jedem der Eingänge
arbeiten) von diesen zwei neuronalen Netzen sind ebenfalls unterschiedlich. Das MLP neuronale Netz
verwendet Sigma-förmige Basisfunktionen (die über einen unendlich großen Eingangsraum nicht-null sind),
wie in Fig. 1a gezeigt; dem gegenüber verwendet die RBF Gauss'sche Basisfunktionen (die auf bestimmte
Gebiete des Eingangsraums lokalisiert sind), wie in Fig. 1b gezeigt. Die Erfahrung hat gezeigt, dass einige
nicht-lineare Probleme effizienter unter Verwendung von Sigma-förmigen Basisfunktionen gelöst werden
können, wohingegen andere effektiver unter Verwendung von Gauss'schen Basisfunktionen gelöst werden
können.
-
Ein RBF Netz weist mehrere Vorteile und Nachteile im Vergleich mit einer MLP auf. Ein RBF
Netz weist eine Struktur linear-in-den-Parametern auf, was bedeutet, dass es standardmäßige lineare
Regressionstechniken verwenden kann, um die Struktur zu optimieren. Lineare Regressionstechniken haben
den relativen Vorteil einer Einfachkeit einer Analyse und von schnellen Lerncharakteristiken im Vergleich
mit nicht-linearen Regressionstechniken. Nicht lineare Regressionstechniken werden für Strukturen
verwendet, die nicht-linear-in-den-Parametern sind, wie beispielsweise die MLP Struktur. Nicht lineare
Regressionstechniken (wie eine Rückwärtsausbreitung) sind berechnungsmäßig teuer, sehr langsam und
können auf lokale minimale Lösungen-konvergieren, anstelle auf die globale minimale Lösung.
-
Jedoch weist ein RBF Netz den Nachteil auf, dass eine verbotene große Anzahl von Gauss'schen
Basisfunktionen benötigt werden, um hochdimensionale Eingangsräume (eine große Anzahl von
Eingängen) abzudecken. Ein RBF Netz fordert auch, dass eine Vorlernstufe ausgeführt wird, so dass die
geeigneten Gauss'schen Funktionen (Familien von Gauss'schen. Funktionen mit sich verändernden Zentren
und Breiten) für eine bestimmte Anwendung gewählt werden können. Quasi-Approximationen durch
Gauss'sche und Sigma-förmige Funktionen werden in der Veröffentlichung von SAN, W. S. et al. in
Electronic Letters Vol. No. 17, 13. August 1992, auf den Seiten 1643-1645 und in ICASSP April 19-22,
1994, Vol. 3, IEEE Seiten III (309-312) offenbart.
-
Somit ist ein weiterer Nachteil des RBF Netzes, dass es auf jede einzelne Anwendung
zugeschnitten werden muss; demgegenüber ist das MLP Netz für eine Anzahl von unterschiedlichen
Anwendungen geeignet, weil dessen Lernstrategie komplexer ist.
-
Es ist eine Aufgabe der vorliegenden Erfindung wenigstens einen der voranstehend erwähnten
Nachteile im Zusammenhang mit neuronalen Netzen mit einer einzelnen versteckten Schicht, wie
beispielsweise einem RBF Netz, zu vermeiden oder zu lindern.
-
Dies wird erreicht, indem ein neuronales Netz mit einer einzelnen versteckten Schicht verwendet
wird, welches trigonometrische Aktivierungsfunktionen (anstelle von Gauss'schen oder Sigma-förmigen
Aktivierungsfunktionen) und lineare Aktivierungsfunktionen der Eingänge erzeugt und dann die sich
ergebenden Aktivierungsfunktionen, die unter Verwendung von standardmäßigen linearen
Regressionstechniken erzeugt werden, gewichtet.
-
Ein Vorteil dieser Erfindung besteht darin, dass sie die genaue Vorhersage (Prädiktion) in
Verbindung mit einer nicht-linearen Basisfunktion mit einer Struktur, die sich zur Verwendung mit
schnellen, herkömmlichen und linearen Regressionstechniken eignet, kombiniert. Sie hat einige der Vorteile
im Zusammenhang mit RBF Netzen (Geschwindigkeit der Antwort, Einfachkeit) und auch einige der
Vorteile im Zusammenhang mit dem MLP Netz (eine Adapfionsfähigkeit auf eine Anzahl von
unterschiedlichen Anwendungen, keine Notwendigkeit für eine fortgeschrittene Vorlernstufe, eine Eignung
zur Verwendung mit mehreren Eingängen).
-
Die vorliegende Erfindung weist auch den Vorteil einer verbesserten nicht-linearen
Prädiktionsfähigkeit auf, indem trigonometrische Aktivierungsfunktionen verwendet werden, die den Effekt
einer Simulation sowohl von Sigma-förmigen als auch von Gauss-förmigen Funktionen gleichzeitig
aufweisen. Die herkömmliche lineare Regressionstechnik stellt die Gewichtungen für jede
Aktivierungsfunktion automatisch ein, um die am besten geeignete Funktion zu modellieren der bestimmten
funktionalen Abbildung zu erzeugen.
-
Gemäss eines ersten Aspekts der vorliegenden Erfindung ist ein neuronales Netz des
Radialbasisfunktions-Typs vorgesehen, das einen Funktionsgenerator einer einzelnen versteckten Schicht
und einer Ausgangsschicht aufweist, wobei der Funktionsgenerator ein oder mehrere Abbildungseingänge
(x1) empfängt und eine Vielzahl von Termen für jeden Abbildungseingang erzeugt, wobei die Terme
wenigstens einen trigonometrischen Term aus der Gruppe erzeugt; , die sinx1, sin2x1, sin3x1, cosx1, cos2x1,
cos3x1, cosecx1, cotanx1 umfasst und frei von Gauss'schen und 3igma-fdrmigen (sigma-förmigen) Termen
ist.
-
Es lässt sich deshalb verstehen, dass das neuronale Netz umfasst: wenigstens einen
Abbildungseingang, der einen Wert einer Abbildung darstellt; einen Steuereingang, der einen Wert darstellt,
der bei der Abbildung vorhergesagt werden soll; einen Funktionsgenerator einer einzelnen versteckten
Schicht zum Empfangen jedes Abbildungseingangs zum Erzeugen einer Vielzahl von Teimen von jedem
Abbildungseingang, einschließlich wenigstens eines trigonometrischen Terms; einen adaptiven
Gewichtungsblock, der eine Vielzahl von Gewichtungselementen und einen Gewichtungscontroller
umfasst, wobei jedes Gewichtungselement einen zugehörigen Term empfängt und den besagten
zugehörigen Term mit einem Wert multipliziert, der von dem Gewichtungscontroller empfangen wird, um
einen individuell gewichteten Term zu erzeugen; einen Addierblock zum Empfangen jedes individuell
gewichteten Terms und zum Addieren individuell gewichteten Tenne, um einen summierten Term zu
erzeugen; einen Vergleicher zum Empfangen des summierten Terms und des Steuereingangs und zum
Vergleichen des summierten Terms mit dem Steuereingang, um einen Differenzwert zu erzeugen, und einen
Analysator zum Empfangen des Differenzwerts, zum Bestimmen des neuen Werts von jedem individuellen
Gewichtungselement, welches zum Minimieren des Differenzwerts benötigt wird, und zum Weiterleiten des
besagten neuen Weit mit jeder individuellen Gewichtung an den Gewichtungscontroller, wobei der
Gewichtungscontroller die individuellen Gewichtungselemente entsprechend einstellt; und einen
Datenausgang, der den vorhergesagten Term der Abbildung darstellt, der mit dem Ausgang des
Addierblocks verbunden ist, der der summierte Term ist.
-
Vorzugsweise erzeugt der Funktionsgenerator wenigstens zwei trigonometrische Tenne, wobei
einer ein Sinus-Term ist und der andere ein Cosinus-Term ist.
-
Wenn mehr als ein Eingang verwendet wird umfasst der Funktionsgenerator der versteckten
Schicht vorzugsweise Terme, die sich aus dem Produkt von zwei oder mehreren der Eingänge ergeben.
-
Vorzugsweise wählt der Funktionsgenerator wenigstens einen Term aus der Gruppe von Termen,
die aus folgenden besteht: einen Tenn nullter Ordnung, den ursprünglichen Abbildungseingängen, Sinus-
Funktionen der Abbildungseingänge, Cosinus-Funktionen der Abbildungseingänge, Funktionen, die dem
Produkt eines Abbildungseingangs einer Sinus-Funktion eines anderen Abbildungseingangs gleichen,
Funktionen, die dem Produkt eines Abbildungseingangs und einer Cosinus-Funktion eines anderen
Abbildungseingangs gleichen, Funktionen, die dem Produkt eines Abbildungseingangs und eines anderen
Abbildungseingangs gleichen.
-
Dieser und andere Aspekte der vorliegenden Erfindung ergiben sich näher aus der folgenden
Beschreibung in Kombination mit den beiliegenden Zeichnungen. In den Zeichnungen zeigen:
-
Fig. 1a ein Beispiel einer Sigma-förmigen Funktion;
-
Fig. 1b ein Beispiel einer Gauss-förmigen Funktion;
-
Fig. 2 ein Diagramm einer ersten Ausführungsform der vorliegenden Erfindung in einem
neuronalen Netz, mit einem Eingang und einem Ausgang;
-
Fig. 3 einen Graph einer nicht-linearen Abbildung in der Form einer nicht-linearen Zeitserie in
der echten Welt mit den Einzelschritt-Vorhersageergebnissen aus zwei Anordnungen zum Vorhersagen des
nächsten Werts in der Serie;
-
Fig. 4 eine zweite Ausführungsform der vorliegenden. Erfindung, mit zwei Eingängen und einem
Ausgang;
-
Fig. 5 eine dritte Ausführungsform der vorliegenden Erfindung, mit zwei Eingängen und zwei ·
Ausgängen;
-
Fig. 6 eine vierte Ausführungsform der vorliegenden Erfindung, mit einem Eingang, einem
Ausgang und einer Rückkopplungsschleife;
-
Fig. 7a einen Graph der Funktionen, die durch y = sin (x), y = sin (2x) und y = sin (3x) erzeugt
werden, wobei x der normalisierte Eingang ist und y der Wert ist, der auf der y-Achse angezeigt wird; d
-
Fig. 7b einen Graph der Funktionen, die von y = cos (x), y = cos (2x) und y = cos (3x) erzeugt
werden, wobei x der normalisierte Eingang ist und y der Wert ist, der auf der y-Achse angezeigt wird;
-
Fig. 8a einen Graph der Funktionen, die von y = xsin (x) erzeugt werden, wobei x der
normalisierte Eingang ist und y der Wert ist der auf der y-Achse angezeigt wird; und
-
Fig. 8b einen Graph der Funktionen, die von y = xcos (x) erzeugt werden, wobei x der
norinalisierte Eingang ist und y der Wert ist, der auf der y-Achse angezeigt wird.
-
Bezugnehmend auf Fig. 2, die ein Diagramm einer ersten Ausführungsform der vorliegenden
Erfindung in einem neuronalen Netz zeigt, gibt es einen Eingang 10, der zum Empfangen eines Werts einer
Abbildungsfunktion verwendet wird, der mit · 1 bezeichnet ist. Der Eingangswert ist normalisiert, so dass
sein Wert innerhalb des Bereichs von minus eins bis plus eins ist. Der Eingang 10 ist mit einem einzelnen
Funktionsgenerator 12 einer versteckten Schicht verbunden. Der Funktionsgenerator 12 arbeitet mit dem
Wert x1 an dem Eingang 10, um acht funktionale Terme 14 zu erzeugen, das heißt, der Funktionsgenerator
12 entwickelt den Abbildungseingang funktional, um acht funktionale Terme zu erzeugen. In diesem Gebiet
sei darauf hingewiesen, dass jeder der Terme 14 eine mathematische Funktion des Werts x1 an dem
Eingang 10 ist.
-
Die funktionalen Terme, die erzeugt werden, sind: ein. Wert 14a nullter Ordnung (eine Konstante);
der ursprüngliche Eingang x1, der mit 14b bezeichnet ist und der ermöglicht, dass lineare Systeme
modelliert werden; drei Sinus-Entwicklungen des Eingangs, sin (x1) bezeichnet mit 14c, sin (2 · 1) mit 14d
bezeichnet, und sin (3 · 1) mit 14e bezeichnet; und drei Cosinus-Entwicklungen des Eingangs, cos (x1) mit
14f bezeichnet, cos (2 · 1) mit 14g bezeichnet, und cos (3 · 1) mit 14h bezeichnet.
-
Jeder von diesen acht funktionalen Termen 14 ist mit einem adaptiven Gewichtungsblock 16
verbunden. Der adaptive Gewichtungsblock 16 umfasst ein Gewichtungselement (18a bis 18 h), das zu
jedem der acht funktionalen Terme (14a bis 14h) gehört, und einen Gewichtungscontroller 20. Jedes
Gewichtungselement 18 wird verwendet, um dessen zugehörigen funktionalen Kern (14a bis 14h) zu
modifizieren und somit einen gewichteten funktionalen Term (2 2a bis 22 h) entsprechend zu jedem Term zu
erzeugen. Jedes Gewichtungselement 18 modifiziert seinen zugehörigen funktionalen Term 14 durch
Multiplizieren des Terms 14 durch einen Gewichtungswert, der von dem Gewichtungscontroller 20
empfangen wird, um einen individuell gewichteten Term 22 zu erzeugen. Der Gewichtungscontroller 20
speichert acht Gewichtungswerte, nämlich einen Wert entsprechend zu jedem Gewichtungselement 18.
Wenn ein Gewichtungswert geändert wird, dann wird das entsprechende Gewichtungselement 18 eine neue
Gewichtung entsprechend zu dem neuen Gewichtungswert anlegen.
-
Die individuell gewichteten Tenne 22 werden einem Addierblock 24 eingegeben, der die
individuell gewichteten Terme 22 aufsummiert, um einen summierten Term 26 zu erzeugen. Dieser
summierte Teim 26 wird dann einem Vergleicher 28 eingegeben. Der andere Eingang zu dem Vergleicher
28 ist ein Steuereingang 30.
-
Der Vergleicher 28 erzeugt einen Differenzwert 33, der die Differenz zwischen dem summierten
Term 26 und dem Steuereingang 30 ist. Der Differenzwert 32 wird an einen Analysator 34 geliefert, der den
Differenzwert 32 analysiert, den neuen Wert jedes Gewichtungselements 18 bestimmt, der benötigt wird,
um den Differenzwert 32 zu verringern, und leitet den neuen Wert jedes Gewichtungselements 18 an den
Gewichtungscontroller 20. Der Gewichtungscontroller 20 aktualisiert dann den Gewichtungswert jedes
einzelnen Gewichtungselement 18 für eine Verwendung mit dem nächsten Eingangswert x1.
-
Der summierte Term 26 ist mit dem Datenausgang 36 verbunden, der den Wert bei der Abbildung
darstellt, der vorhergesagt werden soll.
-
Wenn der nächste Term einer nicht-linearen Abbildung, beispielsweise derjenigen, die in Fig. 3
gezeigt ist, vorhergesagt werden soll, wird nur ein Eingang 10 benötigt. Der Wert des zuletzt bekannten
Terms der Abbildung, d. h. x1, wird an den Eingang 10 angelegt.
-
Für die Zwecke eines Einrichtens des Systems, wenn keine historischen Werte der Abbildung
bereits bekannt sind, wird der Eingang 10 auf Null gesetzt. Die Gewichtungswerte von
Gewichtungselementen 18 körnen auf Null oder irgendwelche beliebigen Wert gesetzt werden. Der sich
ergebende summierte Teim 26 ist eine Vorhersage des Abbildungswerts für einen Schritt voraus und es ist
unwahrscheinlich, dass er genau ist, weil der anfängliche Wen am Eingang 10 und die Gewichtungswerte
bei 18 nicht richtig eingestellt worden sind. Sobald der richtige Wert der Abbildung bekannt wird (der echte
Wert entsprechend zu dem Wert, der lediglich vorhergesagt wurde), wird er als der Steuereingang 30
verwendet. Der Vergleicher 28 vergleicht dann den existierenden summierten Wert 26 mit dem
Steuereingang 30, um einen Differenzwert 32 zu erzeugen, der von dem Analysator 34 ausgewertet wird,
um neue Gewichtungswerte zu erzeugen. Der Wert des Steuereingangs 30 wird dann an den Eingang 10
angelegt und der Prozess wird wiederholt. Nachfolgende Wiederholungen erzeugen Vorhersagen eines
Schritts voraus, bei denen es wahrscheinlich ist, dass sie zunehmend genauer werden, weil der Wert am
Eingang 10 und die Gewichtungswerte 18 zunehmend genauer eingestellt worden sind.
-
Für den Zweck eines Einrichtens des Systems, wenn mehrere historische Werte der Abbildung
bereits bekannt sind, wird der Eingang 10 anfänglich auf einen von diesen Werten gesetzt. Die
Gewichtungswerte von Gewichtungselementen 18 können auf Null oder irgendwelche beliebigen Wert
eingestellt werden. Der sich ergebende summierte Term ist eine Vorhersage eines Schritts voraus. Da der
vorhergesagte Wert tatsächlich bereits bekannt ist, können die Gewichtungswerte iterativ aktualisiert
werden, bis die Vorhersage von einem Schritt voraus ausreichend ähnlich zu dem bekannten vorhergesagten
Wert ist. Die Prozedur kann dann durch die verbleibenden bekannten historischen Werte fortgesetzt werden.
Wenn dies gewünscht ist, dann können die Gewichtungswerte nur einmal für jeden vorhergesagten Wert
aktualisiert werden und der Prozess danach wird durch die verbleibenden bekannten historischen Werte
fortgesetzt.
-
Eine Modifikation der Gewichtungen, die an die Funktion (die Funktionen) angelegt werden, die
von einem Funktionsgenerator unter Verwendung der Differenz zwischen dem vorhergesagten Wert und
dem echten Wert erzeugt werden, ist eine Technik, die in dem technischen Gebiet altbekannt ist. Sie ist ein
Technik, die für allgemeine adaptive Filteranwendungen sowie für neuronale Netzstrukturen verwendet
wird. Sowohl die RBF als auch MLP neuronalen Netzstrukturen verwenden einen Fehlerausgang, um den
richtigen Wert der Gewichtungen zu bestimmen, die angelegt werden sollen.
-
Obwohl die Ausführungsform der Fig. 2 acht funktionale Terme 14 mit einem individuellen
Gewichtungselement 18, das an jeden angelegt ist, verwendet, können herkömmliche Techniken verwendet
werden, um den richtigen Wert für jeden Gewichtungswert zu bestimmen. In dieser Ausführungsform wird
ein herkömmlicher exponentiell gewichteter rekursiver Algorithmus der kleinsten Fehlerquadrate von dem
Analysator 34 verwendet, um den optimalen Wert jedes Gewichtungswerts zu bestimmen. Diese Technik
wird von Simon Hayken "Adaptive Filter Theory", Prentice Hall Inc. Englewood Cliffs, New Jersey, USA,
1991 beschrieben.
-
Der adaptive Gewichtungsblock 16, der Addierblock 24, der Vergleicher 28, der Steuereingang 30,
der Analysator 34 und der Datenausgang 36 bilden eine Ausgabeschicht 40 (die manchmal als ein linearer
Kombinierer bezeichnet wird).
-
Bezugnehmend auf Fig. 3, die einen Graph einer nicht-linearen Abbildung in der Form einer
nicht-linearen Zeitserie der echten Welt mit den Einzeischritt-Vorhersageergebnissen von zwei
Anordnungen zum Vorhersagen des nächsten Werts in der Serie zeigt. Die tatsächliche Serie ist mit einer
durchgezogenen Linie A gezeigt, die vorhergesagte Serie, die sich aus der Ausführungsform der Fig. 2 der
vorliegenden Erfindung ergibt, ist als eine strichpunktierte Linie B gezeigt, und die vorhergesagte Serie, die
sich aus einem herkömmlichen linearen Modell eines sich bewegenden Durchschnitts mit 10 Eingängen
ergibt, ist als eine gepunktete Linie C gezeigt. Fig. 3 zeigt deutlich, dass die vorhergesagte Serie B, die
sich aus der Ausführungsform der Fig. 2 der vorliegenden Erfindung ergibt, eine engere Übereinstimmung
mit der tatsächlichen Serie A als die vorhergesagte Serie C, die sich aus dem linearen Modell eines sich
bewegenden Durchschnitts mit 10 Eingängen ergibt, ist.
-
Bezugnehmend auf Fig. 4, die eine zweite Ausführungsform der vorliegenden Erfindung zeigt,
sind zwei Abbildungseingänge 10 (der erste Eingang 10a ist mit x1 bezeichnet und der zweite Eingang 10b
ist mit x2 bezeichnet) anstelle des einzelnen Abbildungseingangs der ersten Ausführungsform vorhanden
sind. Jeder Abbildungseingang 10 empfangt einen Wert einer Abbildungsfunktion. Da zwei
Abbildungseingänge 10a, 1 Ob vorhanden sind und- der einzelne Funktionsgenerator 12 der versteckten
Schicht mit jedem Abbildungseingang 10 arbeitet, können eine größere Anzahl von funktionalen Termen in
dieser Ausführungsform erzeugt werden als in der ersten Ausführungsform. In dieser Ausführungsform
werden zwanzig funktionale Tenne 14 von dem Funktionsgenerator erzeugt.
-
Die funktionalen Tenne, die erzeugt werden, sind: ein Wert nullter Ordnung (eine Konstante);
zwei Terme, die den ursprünglichen Eingängen entsprechen, ein Term x1 und ein Term x2, die
ermöglichen, dass lineare Systeme modelliert werden; 3 Sinus-Entwicklungen jedes Eingangs sin (x1), sin
(2 · 1), sin (3 · 1), sin (x2), sin (2 · 2), sin (3 · 2); drei Cosinus-Entwicklungen jedes Eingangs cos (x1), cos
(2 · 1), cos (3 · 1), cos (x2), cos (2 · 2), cos (3 · 2); das Produkt jedes Eingangs mit dem Sinus und dem
Cosinus des anderen Eingangs xlsin (x2), x2sin (x1), x1cos (x2), x2cos (x1); und das Produkt der zwei
Eingänge x1x2.
-
Der Aufbau der zweiten Ausführungsform ist sehr ähnlich zu dem Aufbau der ersten
Ausführungsform. Die Hauptunterschiede in dem Aufbau der zwei Ausführungsformen sind die zwei
Abbildungseingänge 10a, 1 Ob anstelle eines Abbildungseingangs, und zwanzig funktionale Terme anstelle
von acht funktionalen Tennen. Das Betriebsprinzip des Aufbaus der zweiten Ausführungsform ist exakt das
Gleiche wie das Betriebsprinzip des Aufbaus der ersten Ausführungsform und deshalb sind gleiche
Komponenten mit den gleichen Bezugszeichen wie in Fig. 2 bezeichnet worden.
-
Bezugnehmend auf Fig. 5, die eine dritte Ausführungsform der vorliegenden Erfindung zeigt,
sind zwei Datenausgänge 36a und 36b anstelle des einzelnen Datenausgangs 36 der ersten und zweiten
Ausführungsformen vorhanden. Die Abbildungseingänge 10% IL Ob und der Funktionsgenerator 12 sind die
gleichen wie bei der zweiten Ausführungsform. Jedoch werden die zwanzig funktionalen Terme 14, die von
dem Funktionsgenerator 12 erzeugt werden, mit zwei Ausgangsschichten 40 verbunden.
-
In der zweiten Ausführungsform, die in Fig. 4 dargestellt ist, werden die zwanzig funktionalen
Tenne 14 mit einer einzelnen Ausgangsschicht 40 verbunden. Eine Ausgangsschicht 40 wird für jeden
Ausgang 36 benötigt. Jede Ausgangsschicht 40 in der dritten Ausführungsform arbeitet unabhängig von der
anderen Ausgangsschicht. Das Prinzip eines Betriebs jeder Ausgangsschicht ist das gleiche und wurde
voranstehend für die erste Ausführungsform beschrieben.
-
Eine vierte Ausführungsform der vorliegenden Erfindung ist in Fig. 6 gezeigt. Der Aufbau der
vierten Ausführungsform ist ähnlich zu derjenigen der ersten Ausführungsform, aber mit der Hinzufügung
einer Rückkopplungsschleife. In der vierten Ausführungsform ist der summierte Term mit einem
Verzögerungsblock 50 verbunden, zusätzlich zu der Verbindung mit dem Vergleicher 28. Der Ausgang des
Verzögerungsblocks 50 ist ebenfalls mit einem adaptiven Rückkopplungs-Gewichtungsblock 52 verbunden.
Der adaptive Rückkopplungs-Gewichtungsblock 52 fuhrt die gleiche Funktion wie der
Gewichtungsblock 16 aus, aber der Rückkopplungs-Gewichtungsblock 52 arbeitet mit dem verzögerten
summierten Term 26. Der Rückkopplungs-Gewichtungsblock 52 wird von einem modifizierten Analysator
34b gesteuert, der exakt die gleiche Funktion wie der Analysator 34 ausführt, aber sowohl für den
Rückkopplungs-Gewichtungsblock 52 als auch den Gewichtungsblock 16. Der modifizierte Analysator 34b
bestimmt den richtigen Gewichtungswert, der an den verzögerten summierten Wert 26 angelegt werden
soll, sowie den richtigen Gewichtungswert, der an jeden der funktionalen Terme 14 angelegt werden soll.
Sowohl der Rückkopplungs-Gewichtungsblock 52- als auch der Gewichtungsblock 16 aktualisieren die
jeweiligen Gewichtungselemente 18 entsprechend. In anderer Hinsicht ist der Betrieb der vierten
Ausführungsform der gleiche wie der Betrieb der ersten Ausführungsform der vorliegenden Erfindung.
-
Die obigen Ausführungsformen können für Echtzeitanwendungen verwendet werden. Jedoch, wie
voranstehend erläutert, können beim Hochfahren (Einschalten) die ersten wenigen vorhergesagten Werte
für die Anwendung sich sehr von den echten Werten für die bestimmte Anwendung unterscheiden, weil
einige wenige Testwerte benötigt werden, bevor die Gewichtungen richtig eingestellt werden können.
-
Wenn Daten aus einer nicht-linearen Abbildung bekannt sind, dann können die neuronalen
Netzstrukturen der obigen Ausführungsformen unter Verwendung der bekannten Daten trainiert werden.
Wie voranstehend erläutert involviert das Trainieren das Anlegen eines Werts der Abbildung an den
Abbildungseingang und des nächsten Werts der Abbildung an den Steuereingang. Dies wird sukzessive
durchgeführt, bis sämtliche bekannten Werte der Abbildung verwendet worden sind oder bis der
Differenzwert kleiner als ein vorgegebener Wert ist. Wenn die trainierte Struktur bei der Anwendung
verwendet wird, für die sie trainiert wurde, dann sollten sämtliche Werte, die vorhergesagt werden, relativ
genau sein.
-
In vielen Anwendungen werden nicht alle funktionalen Terme benötigt. Viele der Terme haben
einen vernachlässigbaren Effekt auf den summierten Term. Wenn eine Trainingsperiode verwendet wird
können somit die Terme, die einen vernachlässigbaren Effekt aufweisen, weggelassen werden. Das
Weglassen ist ein Prozess, der verwendet wird, um die Größe des Gesamtaufbaus zu verringern. Sobald dar
Aufbau eingerichtet worden ist, wie voranstehend beschrieben, dann werden nicht signifikante
Gewichtungen von dem Aufbau weggelassen (indem der Gewichtungswert permanent auf Null gesetzt
wird). Der neue Aufbau wird dann erneut trainiert und getestet. Die Weglassen-Stufe wird in
Übereinstimmung mit einem statistischen (Chi-quadrierten) Validierungstest angenommen oder abgelehnt.
Die obigen Ausführungsformen können für eine verlustfreie Übertragung von Information
verwendet werden. Wenn zwei neuronale Netzstrukturen der vorliegenden Erfindung mit den gleichen
funktionalen Termen und Gewichtungen voreingestellt werden und in Übereinstimmung mit einer
gemeinsamen Referenz arbeiten, dann kann der Differenzwert übertragen und die nächsten Eingänge von
dem Differenzwert abgeleitet werden.
-
Der Grund, warum die vorliegende Erfindung eines verbesserte Vorhersage der nicht-linearen
Abbildungen, im Vergleich mit vorangehenden neuronalen Netzen mit einer einzelnen versteckten Schicht,
bereitstellt, liegt daran, weil die trigonometrischen Tenne, die verwendet werden, den Effekt sowohl von
Sigma-förmigen Aktivierungsfunktionen als auch Gauss-förmigen Aktivierungsfunktionen gleichzeitig
simulieren. Dies lässt sich der Fig. 7a entnehmen, die die Sinus-Terme zeigt, die ähnlich zu einer
Sigmaförmigen Form sind, und auf Fig. 8a, die den (x)sin(x) Tenn zeigt, der ebenfalls ähnlich zu einer
Sigmaförmigen Form ist. In ähnlicher Weise zeigt Fig. 7b dis Cosinus-Terme, die ähnlich zu einer Gauss'schen
Form sind, und Fig. 8b zeigt den (x)cos(x) Term, der ähnlich, zu einer umgekehrten Gauss'schen Form ist.
Es lässt sich erkennen, dass verschiedene Modifikationen an den voranstehend beschriebenen
Ausführungsformen innerhalb des Umfangs der vorliegenden Erfindung, wie mit dem Anspruch 1 definiert,
duschgeführt werden können. Zum Beispiel werden in den ersten und vierten Ausfllbrungsformen acht
funktionale Tenne verwendet, und in den zweiten und dritten Ausfllbrungsformen werden zwanzig
funktionale Terme verwendet. Jedoch wird es offensichtlich sein, dass die Anzahl von Termen, die
verwendet werden, nicht auf ein Minimum von acht und auch nicht auf ein Maximum von zwanzig
beschränkt ist, und es wird ebenfalls ersichtlich sein, dass die Tenne, die gewählt werden, nur als Beispiel
angeführt sind. Andere geeignete Tenne könnten verwendet werden, zum Beispiel Terme wie cosec(x 1),
cotan(x1), (x1)cosec(x1), aber nicht Gauss'sche oder Sigma-tönnige Terme.
-
In den obigen Ausführungsformen werden Sinus und Cosinus Funktionen verwendet. Die
Erfindung nach Anspruch 1 erfordert die Verwendung von wenigstens einem trigonometrischen Tenn aus
einer spezifizierten Gruppe. Es lässt sich allgemein verstehen, dass ein trigonometrischer Term ein Term ist,
der sich auf die Seiten und Winkel eines Dreiecks bezieht.
-
In den obigen Ausführungsformen wird ein exponentiell gewichteter rekursiver Algorithmus der
kleinsten Fehlerquadrate in dem Analysator 34 verwendet, um den optimalen Gewichtuugswert für jedes
Gewichtungselement 18 zu bestimmen. Jedoch können andere herkömmliche Techniken, wie eine Technik
der kleinsten mittleren Fehlerquadrate in dem Analysator 34 verwendet werden.
-
In den obigen Ausführungsformen können die Gewichtungswerte anfänglich auf Null eingestellt
werden. Jedoch kann irgendein zweckdienlicher Wert zwischen plus eins und minus eins verwendet
werden.
-
In den obigen Ausführungsformen wird der iterative prozess, wenn er verwendet wird, eine
vorgegebene Anzahl von Malen wiederholt. Alternativ kann der iterative Prozess, wenn er verwendet wird,
wiederholt werden, bis der Differenzwert auf einen bestimmten Wert reduziert wird, oder in Echtzeit-
Anwendungen, bis sich der Eingang ändert.
-
Es lässt sich erkennen, dass eine Ausführungsform der vorliegenden Erfindung auf Grundlage des
hier beschriebenen Konzepts implementiert werden könnte, uni irgendeine Anzahl von Eingängen und
irgendeine Anzahl von Ausgängen aufzunehmen: zum Beispiel eine Ausführungsform mit zwölf Eingängen
und vier Ausgängen könnte implementiert werden.