|
Kombination Neuronaler Netze mit Fuzzy Logic
Vorteile Neuronaler Netze
Der herausragende Vorteil der Fuzzy Logic ist die Beschreibung des gewünschten Systemverhaltens mit einfachen "Wenn-Dann"-Regeln. In vielen Anwendungen stellt dies ein einfaches Lösungsverfahren mit kurzer Entwicklungszeit dar. Zusätzlich können Sie jegliches zur Verfügung stehende technische Wissen zur Optimierung der Lösung direkt verwenden.
Diese
Charakteristik ist sowohl als großer Vorteil, als auch gleichzeitig als Grenze des Verfahrens zu verstehen. In vielen Fällen ist das Wissen, welches das gewünschte Systemverhalten beschreibt, in
Datensätzen enthalten. In diesen Fällen muß der Entwickler das Wissen für die "Wenn-Dann"-Regeln aus den Daten extrahieren. Dies erfordert den Hauptaufwand der Entwicklung.
In den
Fällen, in denen das Systemwissen in Form von Daten vorliegt, verspricht die Technologie Neuronaler Netze eine Lösung. Mithilfe Neuronaler Netze kann das Systemverhalten automatisch aus den vorliegenden
Daten erlernt werden. Es gibt jedoch nur sehr wenige kommerzielle Anwendungen von Neuronalen Netzen, wohingegen Fuzzy Logic als Entwicklungstechnik in Asien und Europa sehr verbreitet ist.
Nachteile Neuronaler Netze
Der zögernde Einsatz der Neuronalen Netze hat vielerlei Gründe. Zunächst sind die Lösungen, die durch Neuronale Netze gefunden werden, nicht transparent. Sie
besitzen den Charakter einer "Black Box". Der Benutzer kann weder spezifizieren, was ein spezielles Verhalten auslöst, noch kann er das Neuronale Netz manuell so ändern, daß es ein spezielles
Verhalten besitzt. Zweitens erfordern Neuronale Netze einen erheblichen Berechungsaufwand. Drittens ist die Wahl des für die Anwendung passenden Netz-Modells und die Justierung der Parameter des
Lern-Algorithmus immer noch eine "schwarze Kunst" und erfordert eine große Erfahrung.
Anhand all der oben genannten Punkte zeigt sich, daß eine Methode zur Verifikation und Optimierung Neuronaler Netze fehlt, was ihren Einsatz sehr beschränkt.
Kombination Neuronaler Netze und Fuzzy Logic
Neuronale Netze
Neuronale Netze stellen eine implizite Wissensrepräsentation dar. Das System kann jedoch nur schwer interpretiert und modifiziert werden. Als größter Vorteil Neuronaler Netze ist jedoch ihre Lernfähigkeit anhand systembeschreibender Datensätze zu sehen.
Fuzzy Logic
Die Fuzzy Logic verwendet eine explizite Wissensrepräsentation. Verifikation und Optimierung der Systeme ist daher sehr transparent, einfach und effizient durchführbar. Fuzzy-Systeme sind jedoch nicht trainierbar, so daß das System explizit beschrieben werden muß.
NeuroFuzzy Beide Verfahren, sowohl Neuronale Netze, als auch Fuzzy Logic sind sehr leistungsfähige Entwicklungstechnologien mit verschiedenen Stärken und Schwächen. Neuronale Netze
können aus vorhandenen Datensätzen lernen, während Lösungen mit Fuzzy Logic sehr einfach zu verifizieren und zu optimieren sind. Wenn Sie diese Eigenschaften in einem Portfolio betrachten, wird deutlich,
daß eine Kombination dieser beiden Technologien ein sehr leistungsstarkes Entwicklungswerkzeug darstellt. Die NeuroFuzzy-Technologie stellt eine Kombination der expliziten Wissensrepräsentation der Fuzzy
Logic mit der Lernfähigkeit der Neuronalen Netze dar.
Training von Fuzzy-Systemen mit NeuroFuzzy
In wissenschaftlichen Veröffentlichungen wurden eine Vielzahl verschiedener
Verfahren zur Integration Neuronaler Netze und Fuzzy Logic vorgeschlagen. Nur einige wenige wurden bisher erfolgreich in industriellen Anwendungen verwandt. Das Verfahren des NeuroFuzzy-Moduls wurde auf
Basis der Arbeiten von Zadeh, Zimmermann und Kosko entwickelt.

Die erste Implementierung künstlicher Neuronaler Netze liegt bereits 50 Jahre zurück. Seitdem konzentriert sich die Forschung auf die Entwicklung von Lernverfahren und Algorithmen. Einer der Meilensteine in der Entwicklung der Technologie der Neuronalen Netze war der sogenannte Error
-Backpropagation Algorithmus, der vor ca. 10 Jahren entwickelt wurde.
Lernen mit dem Error-Backpropagation-Algorithmus
Wegen seiner hohen Leistungsfähigkeit wurde der Error-Backpropagation-Algorithmus sehr schnell zum Standard bei der Implementierung Neuronaler Netze. Das Verfahren beginnt damit, daß zunächst ein Beispiel aus dem Trainingsdatensatz gewählt wird. Daraufhin werden aus den
Eingangswerten dieses Beispiels die Ausgangsgrößen des Neuronalen Netzes berechnet. Daraufhin werden die vom Neuronalen Netz berechneten Werte mit denen des Beispieldatensatzes verglichen. Die so bestimmte Differenz, also der Fehler, wird dazu verwendet, die Gewichte des
Neuronalen Netzes zu modifizieren. Die mathematische Abbildung des Fehlers auf die Neuronen des Netzes wird Error-Backpropagation genannt.
Error-Backpropagation im Zusammenhang mit Fuzzy-Systemen
Wenn der Error-Backpropagation-Algorithmus so leistungsfähig ist, warum wird er nicht für das Training von Fuzzy-Systemen verwendet? Das Verfahren kann hier nicht direkt angewandt werden. Zur Bestimmung des Einflusses der einzelnen Neuronen auf die Größe des Fehlers werden im
Error-Backpropagation-Algorithmus die Aktivierungsfunktionen der Neuronen differenziert. Ein Problem ist hier, daß die Fuzzy Logic Inferenz nicht differenziert werden kann.
Um dieses Problem zu lösen, verwenden einige Neuro-Fuzzy Entwicklungswerkzeuge eine erweiterte Fuzzy Logic Inferenz-Methode. Eine der am weitesten verbreitesten Methoden ist die Verwendung der sogenannten Fuzzy Associated Maps (FAM). Eine FAM ist eine gewichtete Fuzzy-Regel.
Die Gewichtung erfolgt über den Plausibilitätsgrad (DoS) jeder einzelnen Regel. Es existiert ein mathematischer Rahmen, über den die FAMs auf die Neuronen des Neuronalen Netzes abgebildet werden. Somit ist die Anwendung eines modifizierten Error-Backpropagation-Algorithmus auf
Fuzzy-Systeme möglich. Die heutigen NeuroFuzzy-Werkzeuge sind "intelligente" Hilfsmittel für den Systementwurf. Sie stellen Hilfen für die Erzeugung und Optimierung der Zugehörigkeitsfunktionen und der Regelbasis aus Beispieldaten dar.
Quelle: Inform GmbH
|