Seminar Funktionale Datenanalyse

Werbung
Seminar Funktionale Datenanalyse
Basen für Funktionen
Etienne Theising
Technische Universität Dortmund
20. Oktober 2014
Etienne Theising
1 / 54
Inhalt
1. Einleitung
2. Allgemeines statistisches Modell
3. Basen für Funktionen
Monombasis
Fourier-Basis
B-Spline Basis
Wavelets
4. Übungsaufgabe
5. Literatur
Etienne Theising
2 / 54
Einleitung
Einleitung
Fragen
Wann ist eine Beobachtung x funktional?
Was für Annahmen stellen wir an diese Beobachtung?
Etienne Theising
3 / 54
Einleitung
Antworten
Funktionen x nicht direkt beobachtbar
Annahme: Es ex. eine Funktion x , die die beobachteten Daten
y erklärt (z.B. eine lineare Funktion in LiMo)
Weiter: x sei glatt, d.h. es ex. Ableitungen bis zur Höhe m, da
die Dynamik, Veränderungsrate häufig von Interesse ist
Etienne Theising
4 / 54
Allgemeines statistisches Modell
Allgemeines statistisches Modell
Einfache Tatsachen
Tupel (t1 , y1 ), . . . (tn , yn ) mit latentem, funktionalem
Zusammenhang
ti ∈
Rd Parametervektor und yi ∈ R Funktionswert bei ti
Also nicht n Beobachtungen, sondern 1 Funktionsbeobachtung
x:
Etienne Theising
Rd → R
5 / 54
Allgemeines statistisches Modell
Einfache Tatsachen
In den Beobachtungen stecken immer Störeinflüsse, wir
sprechen von signal-to-noise ratio (S/N ratio)
signal: durch x bestimmt, noise: Störeinfluss
D Differentialoperator, sodass Dm x die m-te Ableitung von x
bezeichnet
x ∈ C m ([a, b]d ), d.h. Dm x existiert und ist stetig
Etienne Theising
6 / 54
Allgemeines statistisches Modell
Beispiel 10 Datentupel; 1 Beobachtung
x (t) = sin(4πt), yt ∼ N (x (t), 0.02)
1.0
●
●
0.5
●
●
●
●
y
0.0
●
●
−0.5
●
●
−1.0
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
7 / 54
Allgemeines statistisches Modell
Mehrere Beobachtungen
Oft: Mehrere Funktionen werden beobachtet
Unterschiedliche Stellen ti denkbar, auch das Intervall kann
variieren
Unabhängigkeit der Funktionen wird angenommen →
Funktionen werden einzeln geschätzt
Bei wenig Tupeln oder hohem S/N ratio kann Information aus
ähnlichen Funktionen genutzt werden
Etienne Theising
8 / 54
Allgemeines statistisches Modell
Periodizität
R
Wenn t ∈ und die Zeit bezeichnet, können Grenzbedingung
an den Rand des Intervalls τ := [a, b] gestellt werden
Zum Beispiel Dj (a) = Dj (b) für j = 1, . . . , p, wobei p
entsprechend zu wählen
Unter solchen Bedingungen erfüllt x periodische
Grenzbedingungen (engl. periodic boundary conditions), d.h.
x lässt sich periodisch (und glatt!) fortsetzen
Sonst x nicht-periodisch (engl. non-periodic)
Etienne Theising
9 / 54
Allgemeines statistisches Modell
In der Praxis beobachten wir
y (ti ) = x (ti ) + ei ,
mit ei Fehlerterm, ti ∈
R, i = 1, . . . , n
Vektorwertig y (t) = x (t) + e, wobei y (t), x (t), t, e ∈
Rn
Wir betrachten x (ti ) als fixen Effekt, d.h. die
Varianz-Kovarianz-Matrix von y und e ist gleich
Etienne Theising
10 / 54
Allgemeines statistisches Modell
Fehlermodell
Standardannahme: ei sind u.i.v. mit E(ei ) = 0 und
V ar(ei ) = σ 2 , also
V ar(y ) = V ar(e) = Σe = σ 2 I
Annahme zu stark, bei funktionalen Daten oft verletzt
Varianz ändert sich über die Zeit und benachbarte ei sind
korreliert (Autokorrelation)
Fehlermodellierung möglich, aber hoher Rechenaufwand durch
viele Parameter
Etienne Theising
11 / 54
Allgemeines statistisches Modell
Datenauflösung
Auflösung der Rohdaten bestimmt die Möglichkeiten der
funktionalen Datenanalyse
Salopp gesprochen: Je höher die Krümmung in einem Bereich,
desto mehr Argumente ti müssen dort liegen
Krümmung einer Funktion x wird durch |D2 x (t)| gegeben
Also: Je größer |D2 x (t)| in [µ, ν], desto mehr ti müssen in
[µ, ν] liegen
Etienne Theising
12 / 54
Allgemeines statistisches Modell
Krümmungsprobleme: In [0.7, 0.9] niedrige Auflösung!
x (t) = sin(4πt), y (t) ∼ N (x (t), 0.02)
1.0
●
●
0.5
●
●
●
●
y
0.0
●
●
−0.5
●
●
−1.0
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
13 / 54
Allgemeines statistisches Modell
Krümmungsprobleme: Besser!
x (t) = sin(4πt), y (t) ∼ N (x (t), 0.02)
1.0
●
●
●
●
●
0.5
●
●
y
0.0
●
●
−0.5
●
●
●
●
−1.0
0.0
0.2
●
0.4
0.6
0.8
●
1.0
t
Etienne Theising
14 / 54
Allgemeines statistisches Modell
Mit höherer Auflösung Annäherung an die Funktion: Warum
überhaupt schätzen?
Dynamik zum Beispiel über Differenzenquotienten ermittelbar
)−x (ti−1 )
In der Theorie: x (ti+1
= Dx + O(∆t 2 ) für x ∈ C 3
ti+1 −ti−1
(Zentraler Differenzenquotient 1. Ordnung)
Und: x (ti+1 )−2x∆t(t2i )+x (ti−1 ) = D2 x + O(∆t 2 ) für x ∈ C 4
(Zentraler Differenzenquotient 2. Ordnung)
(Dabei ist ∆t := max{ti+1 − ti })
i
Etienne Theising
15 / 54
Allgemeines statistisches Modell
Beispiel: Differenzenquotient vs. Differentialquotient
x (t) = − 12 sin(8πt) + sin(4πt) + cos(2πt)2 ,
yt ∼ N (x (t), 0.02)
2
1
y
0
−1
Polygonzug
x(t)
−2
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
16 / 54
Allgemeines statistisches Modell
Beispiel: Differenzenquotient vs. Differentialquotient
100
Dx (t) = −4 cos(8πt) + 4π cos(4πt) − 2π sin(2πt),
yt ∼ N (x (t), 0.02)
−100
−50
Dx
0
50
Differenzenquotient
Differentialquotient
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
17 / 54
Allgemeines statistisches Modell
Beispiel: Differenzenquotient vs. Differentialquotient
Gerade hohe Auflösung verursacht starke numerische Fehler
und hohe Varianz
Funktionenschätzung ist also sinnvoll, wenn man sich für die
Ableitungen interessiert
Etienne Theising
18 / 54
Basen für Funktionen
Basen für Funktionen
Basis für Funktion besteht aus bekannten Funktionen φk
φk mathematisch unabhängig
Jede Funktion beliebig gut approximierbar durch
Linearkombination und ausreichende Anzahl K von
Basisfunktionen
Etienne Theising
19 / 54
Basen für Funktionen
Basen für Funktionen
Darstellung von x durch Basis als
x (t) =
K
X
ck φk (t)
k=1
mit Koeffizienten ck




c1
φ1 (t)
 . 
 . 



.
Mit c :=  .  und φ(t) :=  .. 
 vektorwertig als
cK
φK (t)
x (t) = c T φ(t) = φ(t)T c
auszudrücken
Etienne Theising
20 / 54
Basen für Funktionen
Basisentwicklung stellt unendlichen Funktionenraum endlich
dimensional dar
Vorteil: Ist φ einmal gewählt, muss nur noch c geschätzt
werden
K bestimmt wie stark die Daten geglättet werden (für K = n
Interpolation möglich)
Betrachte K nicht fest, sondern als zu schätzenden Parameter
Etienne Theising
21 / 54
Basen für Funktionen
Idealerweise: Basis besitzt gleiche Eigenschaften wie zu
schätzende Funktion
Dadurch zufriedenstellende Approximation mit weniger
Basiselementen
Je kleiner K und passender die Basis, desto
weniger Parameter zu schätzen
weniger Rechenzeit
eher sind Einträge von c unmittelbar interpretierbar
Etienne Theising
22 / 54
Basen für Funktionen
Basiswahl ist noch wichtiger, wenn Ableitung(en) von
Interesse
Dx̂ (t) =
K
X
ĉDφk (t) = c T Dφ(t)
k=1
Wichtig: Es ex. keine allgemein beste Basis für alle Probleme!
Etienne Theising
23 / 54
Basen für Funktionen
Monombasis
1, t, t 2 , t 3 , . . . , t k , . . .
Klassischer Vertreter einer Basis für Funktionen, genutzt bei
Potenzreihen
Für Polynome exakte Darstellung möglich
Was passiert bei anderen Funktionen?
Etienne Theising
24 / 54
Basen für Funktionen
Negativbeispiel Interpolation
1.0
x (t) = sin(4πt), y (t) ∼ N (x (t), 0.02)
−1.0
−0.5
y
0.0
0.5
Polygonzug
Wahre Funktion
Interpolation
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
25 / 54
Basen für Funktionen
Negativbeispiel Interpolation
1.0
x (t) = sin(4πt), y (t) ∼ N (x (t), 0.02)
−1.0
−0.5
y
0.0
0.5
Polygonzug
Wahre Funktion
Interpolation
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
26 / 54
Basen für Funktionen
Negativbeispiel Interpolation
1.0
x (t) = sin(4πt), y (t) ∼ N (x (t), 0.02)
−1.0
−0.5
y
0.0
0.5
Polygonzug
Wahre Funktion
Interpolation
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
27 / 54
Basen für Funktionen
Negativbeispiel Interpolation: Größer skaliert
x (t) = sin(4πt), y (t) ∼ N (x (t), 0.02)
−40
−20
y
0
20
40
Polygonzug
Wahre Funktion
Interpolation
0.0
0.2
0.4
0.6
0.8
1.0
t
Etienne Theising
28 / 54
Basen für Funktionen
Fourier-Basis
Für periodische Daten
Basis gegeben durch φ0 (t) = 1, φ2r −1 (t) = sin(r ωt) und
φ2r = cos(r ωt), . . .
Also Basis: 1, sin(ωt), cos(ωt), sin(2ωt), cos(2ωt), . . .
Periode durch ω bestimmt: periode= 2π
ω
Etienne Theising
29 / 54
Basen für Funktionen
Fourier-Basis
Sind die ti äquidistante Stützstellen (Schrittweite h) und
Länge von τ = nh = 2π
ω , dann ist die Basis orthogonal
1
Orthonormal mit konstanten Vorfaktoren √ für i = 0 und
n
1
s für i 6= 0
n
2
Etienne Theising
30 / 54
Basen für Funktionen
Fourier-Basis
Existenzsatz: Fourierreihe einer periodischen L2 -Funktion
Sei f ∈ L2 eine p-periodische Funktion. Genügt f an der Stelle
a ∈ [0, p] einer Hölderbedingung
|f (t) − f (a)| ≤ K |t − a|α
für |t − a| < δ
(0 < α ≤ 1) ,
so konvergiert die Fourierreihe von f an jeder Stelle gegen f .
Etienne Theising
31 / 54
Basen für Funktionen
Fourier-Basis
Ist n Potenz von 2 und ti äquidistant: Fast Fourier
Transformation berechnet c und x (t) in O(n log n)
Fast Fourier Transformation (FFT)
Eigentlich Koeffizienten über Fouriertransformation, d.h.
Lösung eines Integrals
Da nur diskrete Daten vorliegen nutze Diskrete
Fouriertransformation (DFT): Matrix-Vektor-Multiplikation
FFT nutzt die spezielle Struktur der DFT und überführt das
Matrix-Vektorprodukt in ein Produkt mit partitionierter
Diagonalmatrix und vielen Einheitsmatrizen
Etienne Theising
32 / 54
Basen für Funktionen
Fourier-Basis
Ableitungsschätzung für Fourierbasis gutartig, da
D sin(r ωt) = r ω cos(r ωt)
D cos(r ωt) = −r ω sin(r ωt)
⇒ Dx hat Koeffizientenvektor
(0, c1 , −ωc2 , 2ωc3 , −2ωc4 , . . . )T
⇒ D2 x hat Koeffizientenvektor
(0, −ω 2 c1 , −ω 2 c2 , −4ω 2 , −4ω 2 c4 , . . . )T
Etienne Theising
33 / 54
Basen für Funktionen
Fourier-Basis
Koeffizientenvektoren höherer Ableitungen aus analogen
Überlegungen
Fourier Basis nützlich für stabile und periodische Daten (glatt)
schlecht, wenn lokal extreme Phänomene auftreten
schlecht, wenn Unstetigkeiten in Funktion oder niedrigen
Ableitungen bekannt sind oder sinnvoll erscheinen
Etienne Theising
34 / 54
Basen für Funktionen
Fourier-Basis
0.0
−1.0
−0.5
value
0.5
1.0
1.5
x (t) = − 12 sin(8πt) + sin(4πt) + cos(2πt)2 ; gute Anpassung
−1.5
Fourier Anpassung
Funktion
0.0
0.2
0.4
0.6
0.8
1.0
time
Etienne Theising
35 / 54
Basen für Funktionen
Fourier-Basis
3.5
x (t) = −t 7 + t 6 + 2t − 1 + exp(t); schlecht
2.0
0.5
1.0
1.5
value
2.5
3.0
Fourier Anpassung
Funktion
0.0
0.2
0.4
0.6
0.8
1.0
time
Etienne Theising
36 / 54
Basen für Funktionen
B-Spline Basis
Splines allgemein
Meist verbreitet für nicht-periodische Daten
Beinhaltet Polynome → schnelle Berechnung O(n)
Etienne Theising
37 / 54
Basen für Funktionen
B-Spline Basis
Etienne Theising
38 / 54
Basen für Funktionen
B-Spline Basis
Splines allgemein
Teile τ = [a, b] in L Subintervalle mit Bruchpunkten / Knoten
τl , l = 1, . . . L − 1, τ0 := a, τL := b
In jedem Intervall ist ein Spline ein Polynom der Ordnung m
Ordnung: Anzahl der Konstanten, also Grad+1 (höchster
Exponent+1)
Angrenzende Polynome sind glatte Fortsetzungen
(Ableitungen bis zur Ordnung m − 2 sind gleich)
Etienne Theising
39 / 54
Basen für Funktionen
B-Spline Basis
Splines allgemein
Frei wählbare Koeffizienten: Ordnung der Polynome plus
Anzahl der Bruchpunkte
Knoten müssen nicht äquidistant sein
Sinnvoll: Mehr Knoten dort, wo die Funktion stark variiert
Bei annähernder Linearität weniger
Etienne Theising
40 / 54
Basen für Funktionen
B-Spline Basis
Splines allgemein
Sprünge an Knoten ab einer bestimmten Ableitung oder der
Funktion selber können durch Aufhebung der
Glattheitsbedingung modelliert werden (mehr frei wählbare
Koeffizienten)
Etienne Theising
41 / 54
Basen für Funktionen
B-Spline Basis
B-Splines
B-Spline Basisfunktion der Ordnung m ist nur auf m
angrenzenden Intervallen positiv
Jede Basisfunktion φk ist Spline-Funktion (keine geschlossene
Darstellung)
Das Vielfache einer Spline-Funktion und die Summe von
Splines sind wieder Splines
Etienne Theising
42 / 54
Basen für Funktionen
B-Spline Basis
Basisfunktionen, m = 4, K=13
Etienne Theising
43 / 54
Basen für Funktionen
B-Spline Basis
Beispielanpassung an (0,0),(1,1), Ordnung 1, Knoten bei 0.5
0.0
0.4
0.8
bases
0.0
0.2
0.4
0.6
0.8
1.0
fit
value
0.0
0.4
0.8
●
●
0.0
0.2
0.4
0.6
0.8
1.0
time
Etienne Theising
44 / 54
Basen für Funktionen
B-Spline Basis
B-Splines
Jede Spline-Funkion mit Ordnung m und Knoten τ kann als
Linearkombination dargestellt werden
Kompakter Träger führt zu schneller Koeffizienten
Berechnung (bei t sind viele Basisfunktionen 0)
Am Rand des Intervalls keine Glattheitsbedingungen
Grund: Dort ist nichts über die Funktion bekannt
Etienne Theising
45 / 54
Basen für Funktionen
B-Spline Basis
B-Splines
m + L − 1 Basisfunktionen, daher Spline-Funktion gegeben
durch
S(t) =
m+L−1
X
ck Bk (t, τ )
k=1
mit Bk (t, τ ) Basisfunktion
Knoten:
äquidistant möglich, wenn Daten äquidistant
an jedem j-ten Datenpunkt
viele bei großer Krümmung
Etienne Theising
46 / 54
Basen für Funktionen
B-Spline Basis
B-Splines
Es gibt datenabhängige Methoden, die mit vielen Knoten
beginnen und unnötige sukzessive entfernen
Komplexe Abhängigkeit zwischen den Knoten und
Basisfunktionen: Größere Basis liefert nicht zwingend bessere
Annäherung
Etienne Theising
47 / 54
Basen für Funktionen
B-Spline Basis
x (t) = −t 7 + t 6 + 2t − 1 + exp(t); gute Anpassung
2
0
1
value
3
B−Spline Anpassung
Funktion
0.0
0.2
0.4
0.6
0.8
1.0
time
Etienne Theising
48 / 54
Basen für Funktionen
B-Spline Basis
−5
−10
value
0
x (t) = − 12 sin(8πt) + sin(4πt) + cos(2πt)2 ; schlecht
B−Spline Anpassung
Funktion
0.0
0.2
0.4
0.6
0.8
1.0
time
Etienne Theising
49 / 54
Basen für Funktionen
Wavelets
Basis für alle quadratintegrierbaren Funktionen auf (−∞, ∞),
also von L2
Basisfunktionen furch Mutter-Wavelet ψ definiert
j
ψjk (t) = 2 /2 ψ(2jt − k)
ψ hat meist kompakten Träger
Gut für Funktionen auf endlichen Intervallen, auch mit
periodischen Grenzbedingungen
Etienne Theising
50 / 54
Basen für Funktionen
Wavelets
Wavelets verbinden Periodizität der Fourier-Basis mit großer
Flexibilität wie bei B-Splines
Basisfunktionen haben unterschiedliche Priodizität
Bessere Anpassung bei starken Änderungen möglich
Schnelle Berechnung in O(n) durch kompakte Träger
Etienne Theising
51 / 54
Basen für Funktionen
Wavelets
1.0
0.5
0.0
y(t)
−1.0
−0.5
0.0
−1.0
−0.5
y(t)
0.5
1.0
Haar-Wavelets
0.0
0.2
0.4
0.6
0.8
1.0
0.0
0.2
0.4
0.8
1.0
0.6
0.8
1.0
1.0
0.5
−1.0
−0.5
0.0
y(t)
0.5
0.0
y(t)
−0.5
−1.0
0.0
0.2
0.4
0.6
t
Etienne Theising
0.6
t
1.0
t
0.8
1.0
0.0
0.2
0.4
t
52 / 54
Übungsaufgabe
Übungsaufgabe
1
Sei f dreimal stetig differenzierbar. Man zeige
f (x + h) − f (x − h)
= Df (x ) + O(h2 ) .
2h
2
Sei f sogar viermal stetig differenzierbar. Man zeige
f (x + h) − 2f (x ) + f (x − h)
= D2 f (x ) + O(h2 ) .
h2
3
Sei nun y wie auf Folie 10 und es gelte die Standardannahme
von Folie 11. Man bestimme den Erwartungswert sowie die
Varianz von
y (t + h) − y (t − h)
2h
Etienne Theising
sowie
y (t + h) − 2y (t) + y (t − h)
.
h2
53 / 54
Literatur
Literaturangaben
Ramsey, J. O., Silverman, B. W. (2005),
Functional Data Analysis.
Second Edition,
Springer, New York.
R Core Team (2013),
R: A language and environment for statistical computing.,
R Foundation for Statistical Computing, Vienna, Austria,
http://www.R-project.org/.
Walter, W. (2006),
Analysis 2.
5., erweiterte Auflage,
Springer, Berlin.
Etienne Theising
54 / 54
Herunterladen