Vergleich von Lernverfahren für Netzstrukturen mit radialen Basisfunktionen
Klassifikation und Regression mittels neuronaler Netze Aufgabenstellung Klassifikation und Regression mittels neuronaler Netze Vergleich verschiedener Verfahren RBF-Netz SVM (Support Vector Machines) LOLIMOT Implementieren eines RBF-Netzes LIBSVM-Interface programmieren Entwicklung einer Matlab-GUI Auswertung der Resultate
Klopferkennung am Ottomotor Klopfen am Ottomotor Tritt im Zylinder auf (Druckschwankungen) Entsteht bei hohen Drücken und Temperaturen Langfristig treten durch das Klopfen mechanische Schäden auf Die Motorsteuerung kann entsprechende Gegenmaßnahmen einleiten Klopfdaten: Körperschallmerkmale im Zeitbereich Abgeleitete Merkmale im Frequenzbereich
Schätzung des Stickoxidgehalts NOx-Emission in Motorabgasen Stickoxide unerwünscht (Abgasverordnung) Maßnahmen zur NOx-Verminderung Optimierung des Verbrennungsprozesses Messwerte des NOx-Gehalts notwendig Lösung durch Berechnung des NOx-Werts mittels neuronaler Netze Vorhersage des NOx-Gehaltes mittels: Motordrehzahl Luftmassenstrom Drosselklappenstellung
GUI Vergleich der Netze - unterschiedliche Lernalgorithmen - gleiche Netzstrukturen GUI - ähnliche Lernalgorithmen - unterschiedliche Netzstrukturen - unterschiedliche Lernalgorithmen - unterschiedliche Netzstrukturen
Radiale Basisfunktionen 3 Freie Parameter Gewichtung Position c Sigma N-dimensional Netz: Summe vieler Gaußglocken ,c + x1 x2
Orthogonal Least Squares Berechnung in zwei Schleifen Innere Schleife: Fehlerberechnung für verfeinerte Modelle (Strukturoptimierung) Problem: Gewichte sind voneinander abhängig! Lösung: orthogonalisieren (Transformation) Neue Gewichte sind voneinander unabhängig Fehlerberechnung mit neuen Gewichten möglich Äußere Schleife: Rücktransformation Abbruchkriterien
Separation von Daten in Klassen Optimale Separation durch SVM-Klassifikation Separation von Daten in Klassen Berechnung trennender Hyperebenen Optimale Separation durch Maximierung des Spaltabstands zu beiden Klassen Vektoren auf dem Spalt sind Stützpunkte der Ebene Support-Vektoren x1 max x2
Mathematisches Vorgehen SVM-Regression Unterschiede zu anderen Verfahren Insensitivität (g) Toleranz von Abweichungen (>) Mathematisches Vorgehen Abbildung in hochdimensionalen Raum Dort linear lösbar >i +g -g >*i
Bietet Kommandozeilentools für LIBSVM-Interface LIBSVM ist Open Source Bietet Kommandozeilentools für Skalierung Training Ein-Schritt-Vorhersage Motivation für das Interface C-Code ist in Matlab nicht direkt verwendbar Verwendung auf der Kommandozeile umständlich Gewinn durch das Interface Algorithmen jetzt in Matlab verfügbar Simulation und graphische Darstellung möglich Einfachere Bedienung
LIBSVM-Interface
Kreuzvalidierung Eine Verfeinerung der Modelle führt ab einem gewissen Punkt zu Überanpassung Das Minimum lässt sich nicht vorhersagen, sondern muss per Kreuzvalidierung ermittelt werden Suche nach Minima des Validierungsfehlers in Abhängigkeit von freien Parametern
Fehler so früh wie möglich erkennen und darauf hinweisen GUI Aufgaben der GUI Kreuzvalidierung Daten laden Parameter einstellen Fehler so früh wie möglich erkennen und darauf hinweisen Ausgabe der berechneten Ergebnisse Visualisierung der Ergebnisse
GUI
Klassifikation Regression Berechnungen Variation der Datensätze Verschiedene Zylinder Verschiedene Messreihen Variation der Merkmale Zeitbereichsmerkmale Frequenzbereichsmerkmale Kombination Regression Training mit Ein-Schritt-Prädiktion Anschließende Überprüfung mit einer Simulation
Erfolg schwach abhängig von der Wahl des Verfahrens Ergebnisse Erfolg schwach abhängig von der Wahl des Verfahrens Jedoch stark abhängig von der Wahl der Daten Klassifikationsfehler in %
Regression
Zusammenfassung und Ausblick Problemstellung mit gegebenen Verfahren gut lösbar Daten wichtiger als Verfahren (Messstrategien) Rechenzeit abhängig vom Verfahren Toolbox erfolgreich entwickelt Überprüfung der Praxistauglichkeit Ausbau der Toolbox möglich Weitere Anwendungen der Toolbox sinnvoll
Noch Fragen?