Automatische Schadensdiagnostik in der Werkstoff- und Prüftechnik

PD Stefan Bosse

Universität Bremen - FB Mathematik und Informatik / AG 0

Universität Siegen - FB Maschinenbau / LMW

1 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN ::

Regressionsverfahren, SVM und KNN

Bisher wurden vor allem kategorische Zielvariablen betrachtet. Nun soll ein Schwerpunkt auf numerischen Variablen liegen.

2 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN ::

Regressionsverfahren, SVM und KNN

Bisher wurden vor allem kategorische Zielvariablen betrachtet. Nun soll ein Schwerpunkt auf numerischen Variablen liegen.

Regressionsverfahren passen eine parametrisierte mathematische Funktion an Messdaten an.

3 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN ::

Regressionsverfahren, SVM und KNN

Bisher wurden vor allem kategorische Zielvariablen betrachtet. Nun soll ein Schwerpunkt auf numerischen Variablen liegen.

Regressionsverfahren passen eine parametrisierte mathematische Funktion an Messdaten an.

Neben den "klassischen" Regressionsverfahren wie Least Square Fit gehören grundsätzlich auch Support Vector Machines (SVM) und Künstliche Neuronale Netzwerke dazu!

4 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN ::

SVM gehören zu den Regressionsverfahren

5 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN ::

SVM gehören zu den Regressionsverfahren

SVM nutzen aber bei der Parameteranpassung (Training) eine andere Fehlerfunktion (Loss) als bei anderen gängigen Regressionsverfahren (z.B. Least-Square Minimierung)

6 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN ::

SVM gehören zu den Regressionsverfahren

SVM nutzen aber bei der Parameteranpassung (Training) eine andere Fehlerfunktion (Loss) als bei anderen gängigen Regressionsverfahren (z.B. Least-Square Minimierung)

SVM können primär kategorische und weniger numerische Zielvariablen abbilden

7 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN ::

SVM gehören zu den Regressionsverfahren

SVM nutzen aber bei der Parameteranpassung (Training) eine andere Fehlerfunktion (Loss) als bei anderen gängigen Regressionsverfahren (z.B. Least-Square Minimierung)

SVM können primär kategorische und weniger numerische Zielvariablen abbilden

SVM sind aber (zunächst) lineare Klassifikatoren!

8 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

Regressionsverfahren

  • Klassifikationsprobleme sind durch Booleschen Ausgabevariablen gekennzeichnet (Klasse ci={true,false})

  • Bei Regressionproblemen findet hingegen eine Ausgabe mit kontinuierlichen Variablen statt, idealerweise y ∈ [0,1]

  • D.h. es gibt Trainingsdaten mit:

D=Xt={xt,rt}Nt=1

wobei r ∈ ℝ. Wenn Rauschen vernachlässigt wird handelt es sich um ein reines Interpolationsproblem.

  • Das Ziel ist es nun, eine Funktion f(x) zu finden, die die Trainingsdaten optimal repräsentiert (also die beste Hypothese g von f finden)
9 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

Beispiel

19

Lineare Gerade, Polynome zweiter Ordnung und sechster Ordnung werden an denselben Satz von Punkten angepasst. Die höchste Ordnung ergibt eine perfekte Passform, aber angesichts dieser vielen Daten ist es sehr unwahrscheinlich, dass die reale Kurve so geformt ist. Die zweite Ordnung scheint besser zu sein als die lineare Anpassung bei der Erfassung des Trends in den Trainingsdaten (Extrapolation).

10 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

Es wird immer einen Fehler ε geben (Rauschen in den "Trainingsdaten" r):

y(xt)=rt=f(xt)+ϵ

  • Ziel der Regression ist es diesen Fehler über eine Verlustfunktion zu minimieren in dem Parameter Θ der Funktion f angepasst werden:

arg   minθ   ϵE(gX)=1N(rtg(xt))2

11 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

Lineare Multivariate Regression

  • Es wird angenommen dass die Funktion f(x) durch eine lineare Funktion über x abgebildet werden kann.
  • Dann gilt:

yp(x)=g(x)=w1x1+w2x2+..+wdxd+w0=dj=1wdxd+w0

Schon dieses Problem kann unterbestimmt sein, d.h., es kann unendlich viele Hypothesen g von der unbekannten Funktion f geben!

  • Bei nichtlinearen Zusammenhängen wird die Regressionsfunktion noch komplexer!
12 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

Nichtlineare Univariate Regression

  • Es gibt nur eine Eingabevariable und die Hypothesenfunktion wird durch ein Polynom k-ter Ordnung approximiert:

g(x)=w0+w1x+w2x2+..+wkxk=kj=1wjxj+w0

  • Wird von einem Polynom ersten Grades ausgegangen (Gerade) dann gilt es folgende Gleichung zu bestimmen und das Minimierungsproblem zu lösen:

g(x)=w1x+w0E(w1,w0Xt)=1NNt=1(rt(w1xt+w0))2

13 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

  • Den Minimumspunkt dieser Fehlergleichung findet man durch Gradientenbildung der Parameter, das bedeutet dann:

w1=txtrt¯¯¯x¯¯¯rNt(xt)2N¯¯¯x2w0=¯¯¯rw1¯¯¯x¯¯¯x=txtN,¯¯¯r=trtN

14 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

Nichtlineare Multivariate Regression

  • Sehr hochdimensionales Problem! Und i.A. völlig unterbestimmt (d.h. kein eindeutigen Zusammenhänge zwischen x und y)

g(x)=di=1kj=1wi,jxji+w0

Es können auch exponentielle, logarithmische, und sinusoidale Terme hinzukommen!

  • Ein numerisches Lösen ist meist nicht mehr möglich; daher Verwendung nichtlinearer Randbedingungslöser sowie statistische Verfahren wie randomiserte Monte Carlo Simulation und Simmuliertes Abkühlen (Evolutionäre Algorithmen?)
15 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Regressionsverfahren

Warum können hochdimensionale Polynome nicht mehr mit gradientenbasierten Verfahren numerisch auf einem Computer (gut oder überhaupt) lösbar sein? Hinweis: Wie entwickeln sich Gradienten bei Polynomen sehr hoher Ordnung oder gar Exponentialterme wie bn?

???
16 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Direkte Lösungsverfahren

Direkte Lösungsverfahren

Single Value Decomposition (SVD)

4

  • Erweiterung der Eigenwertanalyse und verwendet Matrixalgebra und Inversionsmethoden

  • Ansatz: Dekomposition einer (nichtlinearen) Funktion f(x,Θ) mit b Basisfunktionen ϕ, z.B. sin oder ähnlich, mit Parametersatz Θ:

fΘ(x)=bj=1Θjϕj(x)fΘ(x)=ΘTϕ(x)

  • Z.B. ϕ(x) = (1,x,x2,..,xb-1)T, oder ϕ(x) = (1,sin(x),cos(x),sin(2x),...)T
17 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Direkte Lösungsverfahren

  • Die gesamte Trainingstabelle wird in Matrixform repräsentiert, und somit erhält man eine Parametermatrix Φ mit den Basisfunktionstermen für die anzupassenden Funktion f(x)Θ (Design Matrix):

^Φ=ϕ1(x1)..ϕb(x1)ϕ1(xn)..ϕb(xn)

Die Größe der Design Matrix als Ausgangspunkt für SVD/LS Verfahren wächst quadratisch mit der Anzahl der Trainingsdateninstanzen!

18 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Direkte Lösungsverfahren

  • Die Lösung (der Funktionsparameter Θ) geschieht dann doch Matrixinversion der Designmatrix Φ:

^ΘLS=(ΦTΦ)1ΦTy^ΘLS=ΦGy

mit ΦG als generalisierte Inverse der Matrix Φ

Die generalisierte Inverse wird dann mit dem SVD Verfahren mit sogenannten links- und rechtssingulären Vektoren bestimmt.

Vertiefung: M. Sugiyama, Introduction to Statistical Machine Learning. 2016, Kapitel 22.2

19 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Support Vector Machines (SVM)

Support Vector Machines (SVM)

Obwohl die SVM zu den linearen (oder nichtlinearen) Regressionsverfahren gehören, wird die SVM primär für die binäre Klassifikation eingesetzt!

  • SVM Verfahren gehören zu den "Maximum Margin" Methoden
20 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Binärer Klassifikator

Binärer Klassifikator

  • Ein binärer Klassifikator soll durch eine lineare Funktion repräsentiert werden (y={-1,+1}, linearer Kernel):

f(x):xy=wTx+γ

Dabei sind w und γ die Parameter des Modells die durch das Training an das Problem angepasst werden müssen.

  • w ist ein Normalenvektor der bei einem binären Klassifikationsproblem die beiden Instanzklassen trennt

  • y kann tatsächlich auch außerhalb der Grenzen [-1,1] liegen (klar: Polynome haben keine Grenzen)!

21 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Binärer Klassifikator

4 (Oben) w ist der Normalenvektor und γ die Verschiebung der Trennungsgrenze für zwei Klasseninstanzen (Unten) Verschiedene w/γ Varianten der Trennungsgrenze mit unterschiedlichen Rändern (Sicherheitsbereichen)

22 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training

Training

  • Das Lernen von w und γ erfordert die Berechnung des Abstandes von allen Dateninstanzen (x,y)i von der Trenngrenze. Die Abstände müssen positiv sein:

f(xi)yi=(wTxi+γ)yi>0,i

für alle Dateninstanzen D={(xi,yi)}n.

  • Da w und γ beliebig gewählt werden können, kann die Randbedingung auch mit (..)yi ≥ 1 gewählt werden.

  • Weiterhin kann es sinnvoll sein alle Dateninstanzen um den Ursprung des Koordinatensystems zu zentrieren

23 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training

Wichtig: Die Werte für y liegen im Intervall [-1,1]!

  • Alle Probleme die (..)yi ≥ 1 erfüllen mit einem (w,γ) sind linear separierbar.

  • Es gibt unendlich viele Lösungen (also Entscheidungsgrenzen)

  • Man wählt das (w,γ) aus bei der alle Dateninstanzen die größte Trennung besitzen (breitester Trennbereich, siehe Abb.)

  • Der Abstand der Dateninstanzen D ist definiert als das Minimum des normalisierten Abstandes:

mi=(wTxi+γ)yi/||w||

24 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training

  • D.h. SVM zu trainieren ist das Minimierungsproblem zu lösen:

mini(wTxi+γ)yi||w||=1||w||

Vertiefung: M. Sugiyama, Introduction to Statistical Machine Learning. 2016., Kapitel 27

  • Jede Dateninstanz die nicht in den Trennbereich "eindringt" ist ein Supportvektor!
25 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training

Harter Trennungsbereich (Hard SVM)

  • Bei einer "harten" Trennung einer SVM gilt dann:

mini1/2||w||2,(wTxi+γ)yi1,i

Hier wird aber keine Lösung für w und γ gefunden wenn das Problem nicht strikt linear separierbar ist (also keine einzige Gerade die Klassen trennen kann)

26 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training

Weicher Trennungsbereich (Soft SVM)

  • Die SVM mit harten Trennungsbereich erfordert lineare Separierbarkeit der Dateninstanzen

    • Ist in der Realität aber nicht immer oder eher selten gegeben
  • Die weiche Trennung durch eine SVM führt einen Fehlerparametervektor ξ={ξi}n für die Bestimmung des Trennbereichs ein:

mini:w,ξ,γ[1/2||w||2+Ciξi],(wTxi+γ)yi1ξi,ξi0,i

  • Sie lässt einzelne nicht (linear) separierbare Datenpunkte zu (zur Erinnerung: i ist der i-te Datenpunktm, die i-te Dateninstanz).
27 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training

4 Weicher Trennbereich einer SVM (Soft margin SVM). Durch ξ werden kleine Klassifikationsfehlerbereiche erlaubt.

Die Ausreißer können durch Rauschen und Messunsicherheit (random. und systematischer Fehler) aber auch aufgrund eines nichtlinear separierbaren Problems entstehen!

28 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training

Dabei ist C ein einstellbarer Parameter der den Fehler steuert und für den gilt:

C=αi+βi

Größere C Werte machen den Abstandsfehler kleiner und für große C geht die weiche in eine harte SVM über

  • αi = 0 impliziert mi ≥ 1: die i-te Trainingsinstanz xi ist auf der Margengrenze oder innerhalb der Marge und ist korrekt klassifiziert.
  • αi = C impliziert mi ≤ 1: xi ist auf der Margengrenze oder außerhalb der Marge. Wenn ξi > 1, mi < 0 dann ist xi falsch klassifiziert.
  • 0 < αi < C impliziert mi = 1: xi ist auf der Margengrenze und ist korrekt klassifiziert.
  • mi > 1 impliziert αi = 0: wenn xi innerhalb der Marge ist, αi = 0.
  • mi < 1 impliziert αi = C: wenn xi außerhalb der Marge ist, αi = C.
29 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Multiklassen SVM

Multiklassen SVM

Jedes Multiklassenproblem mit m verschiedenen (diskreten) Klassenwerten kann auf m binäre Klassifikationsprobleme transformiert werden

  • Anders als bei ANN ist bei SVMs aber nur eine One-hot Kodierung möglich (ggfs. mit Softmaxfunktion).

30 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: R SVM (custom)

R SVM (custom)

model <- svm(
x = data.frame,
y? = vector, # scaled to [-1,1]?
formula? = y ~ x,
# threshold function on output? highest value of multi-svms is winner
threshold = boolean,
# default : 1.0. C in SVM.
C = number,
# default : 1e-4. Higher tolerance --> Higher precision
tol = number,
# default : 20. Higher max_passes --> Higher precision
max_passes = number,
# default : 1e-5. Higher alpha_tolerance --> Higher precision
alpha_tol = number,
kernel = string|list, # linear, rbf, .. list(type= 'rbf', sigma= 0.5) ..
# list( type = "polynomial", c = 1, d = 5=
)
31 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Beispiel

Beispiel

32 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Künstliche Neuronale Netze

Künstliche Neuronale Netze

  • Ein Künstliches Neuronales Netz (KNN) ist ein gerichteter Graph bestehend aus einer Menge von Knoten N und Kanten E die die Knoten verbinden
    • Knoten: Neuron oder Perzeptron mit einem oder mehreren Eingängen I und einem Ausgang o; Berechnungsfunktion g(I): Io
    • Kanten: Gewichteter Datenfluss vom Ausgang eines Neurons zum Eingang eines anderen (oder des selben) Neurons

Ein KNN ist eine Komposition aus einer Vielzahl von Abbildungsfunktionen G=(g1,g2,..,gm). Es gibt Parallelen zu Regressionsverfahren mit Funktionen.

33 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Künstliche Neuronale Netze

  • Zusammengefasst ausgedrückt:

M(X):XY,X={xi},Y={yj}KNN=Nx,Nd,Ny,ENx={ni:ni{xj}},Nd={nd},Ny={nk:nkyk}n=g(p,w,b):po=f(iwipi+b)E={eij:ninjwij} 

  • f ist eine Transferfunktion die die akkumulierten Eingangswerte auf den Ausgangswert o abbildet, und g ist dann die gewichtete und akkumulative Transferfunktion
34 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Künstliche Neuronale Netze

  • Unterschied (künstliches) Neuron und Perzeptron:
    • Ein Neuron ist immer eine Elementarzelle
    • Ein Perzeptron kann ein einzelnes Neuron oder ein Netzwerk aus Neuronen beschreiben
  • Daher gibt es:
    • Single Layer Perceptron (SLP) → Nur Eingangs- Nx und Ausgangsneuronen Ny
    • Multi Layer Perceptron (MLP) → + Innere Neuronen Nd
35 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Das Neuron

Das Neuron

15 Ein einzelnes Neuron mit einem einzelnen Eingang p und einem Ausgang o. w ist ein Gewichtungsfaktor (ein Gewicht für eingehendes p) und b ist ein Bias (Offset)

36 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Das Mehreingangsneuron

Das Mehreingangsneuron

15 Ein einzelnes Neuron mit einem Eingangsvektor p und einem skalaren Ausgang o. w ist ein Gewichtungsfaktorvektor (ein Gewicht für eingehendes p) und b ist ein Bias (Offset)

37 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Neuronale Netze und Matrizen

Neuronale Netze und Matrizen

  • Neuronale Netze werden durch eine Graphenstruktur (statische Parameter) und mathematisch durch Matrizen (dynamische Parameter) beschrieben:

15 Ein einzelnes Neuron mit einem Eingangsvektor p und einem skalaren Ausgang o. w ist ein Gewichtungsfaktorvektor (ein Gewicht für eingehendes p) und b ist ein Bias (Offset); jetzt in Matrizenform (Annotation)

38 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Schichten von Neuronalen Netzen

Schichten von Neuronalen Netzen

  • I.A. werden Neuronen von neuronalen Netzen in Schichten (Layer) angeordnet und gruppiert
    • Günstig für Matrixalgebra
    • Aber nicht notwendig!

15

Neuronales Netzwerk mit Neuronen in einer Schicht angeordnet

39 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Struktur eines KNN

Struktur eines KNN

15 Grundlegende Struktur eines KNN mit Matrizen (blaue Ellipse=1 Neuron)

40 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Vereinfachte Form eines KNN

Vereinfachte Form eines KNN

15 Vereinfachte Struktur eines KNN mit Matrizen

41 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Klassen von KNN

Klassen von KNN

Vorwärtsgekoppelte Netzwerke
Azyklischer gerichteter Graph, d.h. es gibt nur eine Vorwärtspropagation von einer Schicht zur nächsten (keine Rückkopplung).
  • Diese Netzwerke können rein funktional beschrieben und berechnet werden.
  • Es gibt keinen Zustand!
  • D.h. die aktuellen Ausgangswerte hängen nur von den aktuellen Eingangswerten ab!
42 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Klassen von KNN

Rückgekoppelte Netzwerke
Zyklischer gerichteter Graph, d.h. es gibt Rückkopplungen (Ausgang eines Neurons geht in Eingänge der aktuellen oder vorherigen Schichten).
  • Diese Netzwerke können nicht rein funktional beschrieben und berechnet werden!
  • Sie besitzen einen Zustand, d.h. der Ausgangswert hängt von der Historie vergangener Eingabewerte und Berechnungen ab!
43 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Rückgekoppelte Netzwerke

Rückgekoppelte Netzwerke

  • Geeignet für Prädiktion auf zeit- und Datenserien D(t)=d0,d1,...,dt

15 Rückgekoppeltes und zustandsbehaftetes KNN mit einer Verzögerungsfunktion (Speicher)

44 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Transferfunktion

Transferfunktion

  • Auch Aktivierungsfunktion genannt (in Anlehnung an biologische Vorbild mit stark nichtlinearer Übertragungskennline)

    • Biologisch: Häufig eine Schwellwertfunktion
    • Künstlich / ML: Auch lineare Übertragunsfunktionen!
  • Es gibt eine Vielzahl verschiedener Funktionen

    • Die einfachste wäre (wenn auch wenig in Gebrauch): f(a)=a

Warum ist eine solche Übertragungsfunktion ungeeignet bzw. problematisch?

45 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Transferfunktion

  • Welche mathematischen Eigenschaften (Übertragungskurve) sollte wohl eine Transferfunktion besitzen?
    • Zur Erinnerung: Wir nehmen an dass der Wertebereich von einem x ≈ [-1,1] ist. Ebenso für ein y ≈ [-1,1].
46 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Transferfunktion

Transferfunktionen besitzen häufig begrenzende Eigenschaften (Sättigungsverhalten), und nicht lineares Übertragungsverhalten

15 Verschiedene gebräuchliche Transferfunktionen f(a)

47 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Ein einfaches Neuron - Funktional

Ein einfaches Neuron - Funktional

fsigmoid(a)=11+eag(x1,x2,x3)=fsigmoid(b+wixi)

48 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Parametersatz des KNN

Parametersatz des KNN

Statische Parameter

  • Anzahl der Eingangsneuronen (verbunden mit x), abhängig von der Anzahl der Eingabevariablen |x| und der Kodierung (numerisch vs. kategorisch)

  • Anzahl der Ausgangsneuronen (abhängig von der Kodierung). Bei numerischen Zielvariablen y gilt also: |Ny|=|y|

  • Anzahl der inneren verdeckten Neuronen |Nd| und deren Anordnung in Schichten

  • D.h. die Konfiguration des Netwerks ist [c1,c2,..,cm] bei m Schichten und ci Neuronen pro Schicht

49 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Parametersatz des KNN

  • Bei vollständig verbundenen Schichten ist keine Angabe der Vernetzung notwendig

Dynamische Parameter

  • Im wesentlichen die Gewichtungsmatrix Wi (Schicht i):

Wi=⎢ ⎢ ⎢ ⎢ ⎢w1,1w1,2w1,Rw2,1w2,2w2,RwS,1wS,2wS,R⎥ ⎥ ⎥ ⎥ ⎥,Bi=⎢ ⎢b1bS⎥ ⎥

Mit S: Anzahl der Neuronen in der Schicht, R: Anzahl der Eingangsvariablen (oder Neuronen der vorherigen Schicht)

50 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Parametersatz des KNN

  • Der Ausgangswert eines Neurons nj ist dann gegeben durch einen Wert aus B und die j-te Zeile von W:

o(p)=f(jWTp+bi)

  • Bei mehrschichtigen Netzwerken hat man eine Menge von Gewichtematrizen, die zu einem Tensor zusammengefasst werden können.
51 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Training von KNN

Training von KNN

  • Wie bei allen überwachten Lernproblemen gilt es eine Fehlerfunktion zu minimieren:

M(x):xyargminWerr(M)=|y(x)y0(x)|,(x,y0)D

Ziel ist die Minimierung des Fehlers unserer Modellhypothese M(x) durch Anpassung der Gewichtematrix W und evtl. (wenn vorhanden) des Offsetvektors B

52 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Fehler

Fehler

LS1

err=yy0err=|yy0|

LS2

err=(yy0)2

53 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Fehler

Es ist leicht zu erkennen dass das Training einen hochdimensionalen Parametersatz anpassen muss. Es ist nicht unmittelbar klar wie ein optimales W abgeleitet werden kann!

Erklärbarkeit

  • Der Zusammenhang von y und x (xy) ist schon bei einem einschichtigen Netzwerk nur noch schwer nachvollziehbar!
  • Eine Invertierung (inverses Problem yx) ist ebenso nur schwer möglich
  • Eigentlich ist nur ein einzelnes Neuron erklärbar und verständlich
    • Dort ist die Anpassung (des Gewichtungsvektors w) noch durch multivariate Regression möglich
54 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Fehler

Beispiel

  • Trainingsverfahren: Einfache Fehlerückpropagation
  • Problem: x=(a,b), y
  • Netzwerk: Ein Neuron, Sigmoid Transferfunktion
55 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Nichtlineare Probleme

Nichtlineare Probleme

SLP können nur lineare Probleme separieren.

15 Nichtlinear separierbare Probleme - nur mit MLP klassifizierbar

56 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Nichtlineare Probleme

57 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Error Backpropagation Verfahren

Error Backpropagation Verfahren

  • Bekanntes und gängiges Verfahren

https://hmkcode.com/ai/backpropagation-step-by-step

Gradientenverfahren

  • Baut auf dem Minimierungsansatz "Gradient Descent" (GD) auf (Absteigender Gradient)

  • Beim GD Verfahren wird eine Funktion, z.B. f(x,w): xy derart über den Parameter w angepasst so dass der Fehler err=|y-y0| minimal wird

58 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Error Backpropagation Verfahren

  • Es wird nun die Änderung des Fehlers beobachtet Δerr und der (oder später die) Parameter w mit der Ableitung des Fehlerwerts ∂err/∂w zu der Änderung des Parameters korrigiert:

w=wαerrw

Zur Berechnung des Fehlergradientens wird die Ableitung der Transferfunktion benötigt.

  • Vereinfacht gilt aber (grobe Näherung):

errwx(yy0)

  • Jetzt wird ein neuronales Netzwerk betrachtet, wo die Neuronen ebenfalls Funktionen mit Eingangsvariablen und Ausgangsvariablen sind
59 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Error Backpropagation Verfahren

  • Bei zusammengesetzten Funktionen (z.B. auch Neuronen in inneren Schichten) müssen die Gewichte schrittweise von hinten nach vorne angepasst werden

hmkcode.com/ai/backpropagation-step-by-step Beispiel eines ANN mit Kantengewichten und dem Ansatz der Backpropagation

60 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Error Backpropagation Verfahren

  • Die Gewichte werden nun Schicht für Schicht unter Einbeziehung der gewichteten Fehlerpropagation gleichermaßen angepasst

hmkcode.com/ai/backpropagation-step-by-step Backpropagation des Fehlers zu den Eingängen des Beispielnetzwerkes

61 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Error Backpropagation Verfahren

Der Einfluss des Ausgabefehlers bei der Rüchpropagation nimmt von Schicht zu Schicht ab. Daher sind mehrschichtige Netzwerke zunächst schwer/langsam (bis gar nicht) trainierbar.

  • Bei Transferfunktionen mit Sättigung (Clipping) kann es zu "toten" Netzwerknoten kommen,

    • d.h. weder eine kleine Änderung am Eingang eines Neurons noch eine kleine Korrektur der Gewichte/des Bias führen zu einer Änderung des Ausgangswertes kommen (gesättigte Netzwerkknoten)
    • Eine weitere Fehlerpropagation wird dadurch verhindert
  • Ausweg: Randomisiertes Drop-out (Abschalten von Neuronen) und Suche nach gesättigten Neuronen mit anschließender Parameterkorrektur so dass der Ausgang der Transferfunktion in den Arbeitsbereich verlegt wird!

62 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Kategorische Multiklassen Probleme

Kategorische Multiklassen Probleme

  • Wenn die Ergbnisvariable vom kategorischen Typ ist dann gibt es zwei Möglichkeiten:
One-Hot Kodierung
Jedes Klassensymbol (also ein diskreter Wert vi der Zielvariable y) wird durch ein Ausgangsneuron repräsentiert
Multi-level Kodierung
Jedes Klassensymbol wird durch einen Wert aus dem Wertebereich eines Ausgangsneurons repräsentiert
  • Problem: Nicht lineare Transferfunktion und Sättigungsverhalten
  • Die gleichen Verfahren sind auch auf kategorische Eingabevariablen anwendbar
63 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Numerische Prädiktorfunktionen

Numerische Prädiktorfunktionen

  • Neben der Klassifikation lassen sich mit ANN auch numerische (kontinuierliche) Funktionen lernen

  • Damit wird Funktionsapproximation wie bei den Regressionsverfahren möglich

    • Unterschied: Bei der Regression ist die funktionale Struktur von f(x): xy bereits fest und muss vorgegeben sein
    • Die Verwendung eines ANN bietet da auch noch indirekt das Lernen der funktionalen Strukturen neben der Anpassung der Parameter
64 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Numerische Prädiktorfunktionen

  • Es können auch mehrdimensionalen Vektorfunktionen (also mit mehreren Ausgabevariablen) approximiert werden durch:
    1. Mehrere Ausgangsneuronen (gekoppeltes Netzwerk)
    2. Mehrere Netzwerke mit jeweils einem Ausgangsneuron (entkoppelte Netzwerke)

Die Wahl der Transferfunktion muss sorgfältig geschehen. Nichtlinearitäten der Transferfunktionen in den Randbereichen des Übertragungsbereichs muss berücksichtigt oder genutzt werden.

  • Die Sigmoid (Log Rregression) Funktion ist abschnittsweise linear - ähnlich einem elektronischen Operationsverstärker ⇒ Analoge Rechner!!

  • Begrenzung/Sättigung schränkt den Lösungsraum ein (gewollt!)

65 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Literatur zur Vertiefung

Literatur zur Vertiefung

[1] M. T. Hagan, howard B. Demuth, M. H. Beale, and O. D. Jesus, Neural Network Design. https://hagan.okstate.edu/nnd.html

Sugiyama, ItSML, pp 303

66 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Zusammenfassung

Zusammenfassung

  • Regressionsverfahren werden auf kontinuierliche Zielvariablen angewendet (der Hypothesenraum kann bei nichtlinearen Problemen sehr groß werden)

  • Eine SVM wird als binärer Klassifikator verwendet und wird i.A. durch eine lineare Funktion (Kernel) repräsentiert

    • Das Problem sollte dann linear separierbar sein!
  • Multiklassenprobleme werden auf Multi-SVMs zurückgeführt

    • Verwendung einer Softmax Funktion für eindeutige Klassentrennung
  • Das Training einer SVM ist ein Minimierungsproblem dass den Trennbereich maximiert und den Fehler minimiert

67 / 68

PD Stefan Bosse - Automatische Schadensdiagnostik - Modul E Regressionsverfahren, SVM und KNN :: Zusammenfassung

Zusammenfassung

  • Neuronale Netze bestehen aus Neuronen

  • Neuronen sind zusammengesetzte Funktionen: Produktsummation und Transferfunktion

  • Die Kanten verbinden Ausgänge von Neuronen mit den Eingängen nachfolgender Neuronen mit einer Multiplikation eines Gewichtfaktors

  • Alle Eingänge eines Neurons werden summiert, das Ergebnis einer Transfer/Aktivierungsfunktion übergeben (reduktion eines Vektors auf Skalar)

  • Training ist ein Minimierungsproblem und bedeutet Anpassung der Gewichte um den Ausgangsfehler zu minimieren

    • Gängiges Verfahren: Fehlerrückpropagation und Fehlergradient
68 / 68