114
Institut f¨ ur Neurobiologie Hanspeter A. Mallot Datenanlyse mit Matlab Mathematische Grundlagen Sommersemester 2011

Datenanlyse Mit Matlab

Embed Size (px)

Citation preview

Page 1: Datenanlyse Mit Matlab

Institut fur Neurobiologie

Hanspeter A. Mallot

Datenanlyse mit MatlabMathematische Grundlagen

Sommersemester 2011

Page 2: Datenanlyse Mit Matlab

Das Titelblatt zeigt das Gemalde”Zebras“ (1950) von Victor Vasarely (1908 – 1997).

Page 3: Datenanlyse Mit Matlab

Inhaltsverzeichnis

1 Zahlen und Vektoren 1

1.1 Zahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Psychologische Skalen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 Vektoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Matrizen 9

2.1 Allgemeines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2 Matrixmultiplikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3 Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3 Funktionen 19

3.1 Funktionen und Abbildungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.2”Glattheit“: Stetigkeit und Differenzierbarkeit . . . . . . . . . . . . . . . . . . . . . 21

3.3 Integrale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.4 Vektorwertige Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.5 Funktionen von zwei und mehr Variablen . . . . . . . . . . . . . . . . . . . . . . . 26

3.6 Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4 Kurven durch Datenpunkte 30

4.1 Allgemeines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.2 Ausgleichsrechnung (Kurvenfitten) . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.3 Regressionsgerade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.4 Allgemeine lineare Regression (”general linear models“) . . . . . . . . . . . . . . . 37

4.5 Nichtlineare Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.6 Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5 Einfache statistische Tests 42

5.1 Statistische Testtheorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.2 Beispiel 1: Der t-Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.3 Beispiel 2: Ein Rang-Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6 Varianzanalyse 49

6.1 Einfaktorielle Varianzanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6.2 Zweifaktorielle Varianzanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

6.3 Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

i

Page 4: Datenanlyse Mit Matlab

ii INHALTSVERZEICHNIS

7 Bivariate Statistik und die 2-dimensionale Normalverteilung 557.1 Korrelation und Kovarianz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557.2 Regressionsgeraden und Hauptachsen . . . . . . . . . . . . . . . . . . . . . . . . . . 567.3 Exkurs: Ellipsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577.4 Die zweidimensionale Normalverteilung . . . . . . . . . . . . . . . . . . . . . . . . 597.5 Fehlerellipsen fur Stichproben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617.6 Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

8 Hauptachsentransformation 638.1 Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638.2 Merkmalsraume, Projektionen und Rekonstruktionen . . . . . . . . . . . . . . . . . 688.3 Durchfuhrung der Hauptachsentransformation . . . . . . . . . . . . . . . . . . . . . 698.4 Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

9 Fourier-Analyse 739.1 Periodische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 739.2 Fourier-Reihen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759.3 Non-periodic functions: the Fourier transform . . . . . . . . . . . . . . . . . . . . . 799.4 Fourier-transforms in two and more dimensions . . . . . . . . . . . . . . . . . . . . 809.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 809.6 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

10 Time Series Analysis 8210.1 Time series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8210.2 Periodicity: The Autocorrelation function . . . . . . . . . . . . . . . . . . . . . . . 8410.3 Influences between two time series: Crosscorrelation . . . . . . . . . . . . . . . . . 8610.4 The Poisson process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8710.5 References and suggested reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

11 Lineare Systemtheorie 8911.1 Linear systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8911.2 Elektronische Schaltkreise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8911.3 Lineare elektronische Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9311.4 Faltung und Impulsantwort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9611.5 Zusammenhang mit Fourier-Transformation . . . . . . . . . . . . . . . . . . . . . . 96

12 Bildverarbeitung 10212.1 Bilder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10212.2 Filterung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10312.3 Kantendetektion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10812.4 Korrelation und Schablonenfilter (matched filter) . . . . . . . . . . . . . . . . . . . 10812.5 Bewegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10912.6 Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

Page 5: Datenanlyse Mit Matlab

Kapitel 1

Zahlen und Vektoren

Die ersten Kapitel fassen einige wichtige Grundlagen zusammen, die wir fur die Theorie der Da-tenanalyse und die Durchfuhrung in Matlab benotigen. Das erste Kapitel behandelt Zahlen undVektoren, es folgen Matrizen und Matrixoperationen sowie Funktionen und Grundlagen der Ana-lysis. Angewandt werden diese Ergebnisse auf die Darstellung von Daten in verschiedenen Artenvon Diagrammen. Eine Reihe von empfohlenen allgemeinen Lehrbuchern zum Thema ist am Endedes Kapitels zusammengestellt.

1.1 Zahlen

Der wichtigste Typ von Zahlen sind die reelen Zahlen, die wir mit dem Buchstaben IR bezeichnen.Sie enthalten die folgenden spezielleren Zahlenmengen

• Die ganzen Zahlen, (...,−2,−1, 0, 1, 2, ...). Die positiven ganzen Zahlen heißen auch”naturli-

che Zahlen“ und werden mit IN bezeichnet.

• Die Bruche oder Verhaltnisse ganzer Zahlen sind die rationalen Zahlen, (0,± 11 ,± 2

1 ,± 12 ,± 3

1 ,± 2

2 ,± 13 ,± 4

1 ,± 32 ,± 2

3 ,± 14 , ...). Die rationalen Zahlen sind

”abzahlbar“, d.h. es gibt genau so

viele rationale Zahlen wir naturliche Zahlen.

• Die Losungen algebraischer Gleichungen (Gleichungen, die Potenzen der Unbekannten ent-halten; z.B. x2 = 2) fuhren auf irrationale Zahlen. Ein Beispiel ist

√2, die nicht als Bruch

darstellbar ist.

• Schließlich gibt es noch reelle Zahlen, die weder Bruche noch Losungen algebraischer Glei-chungen sind; man nennt sie transzendente Zahlen. Beispiele sind die Kreiszahl π und dieEulersche Zahl e.

Die Menge der reellen Zahlen ist nicht abzahlbar; es gibt also wesentlich”mehr“ reelle als naturliche

Zahlen. Die reellen Zahlen modellieren das eindimensionale Kontinuum. Zwischen je zwei reellenZahlen gibt es immer noch eine und damit unendlich viele. Wahrend diese Eigenschaft schon furdie rationalen Zahlen gilt, ist die folgende Eigenschaft spezifisch fur die reellen Zahlen: fur jedeFolge von reellen Zahlen, die konvergiert (z.B. jede monoton wachsende, beschrankte Folge), istder Grenzwert ebenfalls ein Element von IR.

1

Page 6: Datenanlyse Mit Matlab

2 KAPITEL 1. ZAHLEN UND VEKTOREN

Beispiel Wir betrachten eine Folge von Zahlen ai, die durch folgende Gleichung gegeben sind

ai =

(

1 +1

i

)i

=(i+ 1)i

iifor i ∈ IN. (1.1)

Offensichtlich sind alle ai rationale Zahlen, da Zahler und Nenner stets ganze Zahlen sind. So giltbeispielsweise:

a1 =

(

1 +1

1

)1

= 2,

a2 =

(

1 +1

2

)2

=9

4= 2.25,

a3 =

(

1 +1

3

)3

=64

27≈ 2.37, und

a4 =

(

1 +1

4

)4

=625

256≈ 2.44.

Man kann zeigen, dass ai mit wachsendem i immer langsamer wachst und der Rest der Folge inimmer keinere Intervalle eingeschlossen werden kann. Die Folge konvergiert gegen einen Grenzwert,den man mit limi→∞ ai bezeichnet. In unserem Beispiel ist das die Eulersche Zahl e, die Basis desnaturlichen Logarithmus.

limi→∞

ai = e ≈ 2.718. (1.2)

Obwohl alle ai rational sind, ist e keine rationale Zahl.

In Matlab konnen wir die Berechnung mit folgendem Code durchfuhren:

>> for i = 1:5

a(i) = (1+1/i)∧iend

Matlab legt einen Vektor a an, dessen Lange in jedem Iterationsschritt dieser so genannten for-Schleife um eins erhoht wird. Gleichzeitig wird in jedem Schritt der Wert von a ausgegeben:

a =

2.0000

a =

2.0000 2.2500

a =

2.0000 2.2500 2.3704

a =

2.0000 2.2500 2.3704 2.4414

a =

2.0000 2.2500 2.3704 2.4414 2.4883

Wie bereits erwahnt, sind die Grenzwerte aller reellen Folgen wieder reell. Man sagt, IR sei abge-schlossen.

Page 7: Datenanlyse Mit Matlab

1.1. ZAHLEN 3

6

-��

����

����

���

�������������

ao

a1

a2

a∞

to t1 t2 t∞

Achilles

Schildkr

ote Abbildung 1.1: Achilles und die Schildkrote. Dieschragen Linien zeigen die Positionen von Achillesund der Schildkrote (mit Vorsprung) als Funktio-nen der Zeit. Der Schnittpunkt markiert den Zeit-punkt des Uberholens. Die eingezeichnete Treppen-kurve gibt die Folge der Orte bzw. Zeitpunkte wie-der, zu denen Achilles die jeweils vorige Position derSchildkrote erreicht. Die Folge ist monton wachsendaber beschrankt und konvergiert.

Folgen und Grenzwerte: Ein Beispiel

Den Begriff des Grenzwertes kann man sich gut anhand des so genannten Zenonschen∗ Paradoxonsklarmachen. Hierbei handelt es sich um ein Wettrennen zwischen Achilles und einer Schildkrote,wobei die Schildkrote einen Vorsprung erhalt. Anschaulich ist klar, dass Achilles die Schildkroteuberholen wird. Uberlegt man sich aber, wann das geschieht, so stellt man fest, dass die Schild-krote in der Zeit, die Achilles braucht, um ihre Startposition zu erreichen, auch weitergekommensein wird und wiederum einen, wenn auch kleineren Vorsprung besitzt. Diese Uberlegung kannman wiederholen: wieder hat die Schildkrote einen Vorsprung, wieder braucht Achilles Zeit, umihren Standort zu erreichen, und wieder wird die Schildkrote in dieser Zeit weitergekommen sein.Betrachtet man die Zeiten, zu denen Achilles die jeweils vorige Position der Schildkrote erreicht,so erhalt man eine streng monoton wachsende Folge, d.h. eine Folge von Zeitpunkten, bei denenjeder großer ist als der vorausgehende. Diese Uberlegung scheint also zu zeigen, dass Achilles dieSchildkrote niemals erreicht.

Man braucht tatsachtlich den Begriff des Grenzwertes, um zu verstehen, dass eine Folge, diestreng monoton wachst, trotzdem nicht uber alle Grenzen wachsen muss. Um das einzusehen,belegen wir das Beispiel von Achilles und der Schildkrote mit Zahlen. Achilles laufe mit 10 Meterpro Sekunde, die Schildkrote mit 1 Meter pro Sekunde und der Vorsprung betrage 10 m. Wirbetrachten jeweils die Momente, wenn Achilles die vorige Position der Schildkrote erreicht hat:

Folgenglied i 0 1 2 3 4 . . . ∞Position des Achilles ai 0m 10m 11m 11.1m 11.11 m . . . 11 1

9 m

Vorsprung der Schildkrote vi 10m 1m 110 m 1

100 m 11000 m . . . 0m

Zeitpunkt ti 0s 1s 1.1s 1.11s 1.111s . . . 109 s

Nach 1 19 Sekunden hat Achilles die Schildkrote eingeholt; die Folge der Zeitpunkte konvergiert

gegen diese Zahl. Dannach geht das Rennen vermutlich noch weiter, auch wenn die Folge, die wirkonstruiert haben, unendlich viele Glieder braucht, um den Grenzwert zu erreichen.

Generell kann man zeigen, dass jede monoton wachsende Folge, die nach oben beschrankt ist,gegen einen Grenzwert konvergieren muss. Beispiel fur eine beschrankte, nicht monotone Folge, dieauch nicht konvergiert ist ai := (−1)i.

Naturlich kann man den Zeitpunkt, zu dem Achilles die Schildkrote einholt, auch ohne Grenz-wert ausrechnen, indem man die Bewegungsgleichungen gleichsetzt,

Vorsprung + Geschw. Schildkrote× t = Gesch. Achilles× t,

∗Zenon von Elea, griechischer Philosoph, ca. 490-430 v. Chr.

Page 8: Datenanlyse Mit Matlab

4 KAPITEL 1. ZAHLEN UND VEKTOREN

und nach t auflost. Den Zusammenhang zwischen dieser Rechung und der Grenzwertuberlegungzeigt Abb. 1.1.

1.2 Psychologische Skalen

Die verschiedenen Zahlentypen finden eine experimentelle Entsprechung in den verschiedenen inpsychologischen Experimenten verwendeten Skalentypen (vgl. etwa Bortz 2002). Man unterscheidetvereinfacht folgende Typen:

Nominalskalen. Hierbei wird eine Menge M von Objekten oder Beobachtungen mit Hilfe einerAquivalenzrelation in

”Klassen“ eingeteilt. Eine Aquivalenzrelation ist eine Relation (Beziehung

zwischen zwei Elementen von M), die die folgenen Eigenschaften erfullt:

Reflexivitat a ∼ a

Symmetrie: a ∼ b⇔ b ∼ a

Transitivitat: a ∼ b und b ∼ c⇒ a ∼ c

Das Zeichen”∼ “ (gelesen

”Tilde“) bezeichnet dabei das Bestehen der Relation zwischen a und

b. Das einfachste Beispiel fur eine Aquivalenzrelation ist die Gleichheit (”=“) auf Zahlenmengen.

Andere Beispiele sind”ist gleich groß wie“,

”tragt das gleiche Allel wie“ etc. Durch geeignete

Transformation auf eine Zahlenmenge lasst sich jede Aquivalenzrelation in die Gleichheitsrelationuberfuhren.

Nominalskalendaten sind Naturliche Zahlen, zum einen Klassennummern und zum anderenHaufigkeiten von Elementen vom M , die in jede Klasse fallen. Die Klassennummern sind dabeiarbitrar, d.h. die Daten andern sich nicht, wenn man die Bezeichnung der Klassen andert.

Ordinalskalen. Kann man auf die Objekte oder Beobachtungen eine schwache Ordnungsrelation

”�“ anwenden, so entsteht eine Reihenfolge. Eine Ordnungsrelation erfullt die Bedingungen

Antisymmetrie a � b und b � a ⇔ a = b

Transitivitat: a � b und b � c⇒ a � c

Das einfachste Beispiel einer solchen Ordnungsrelation ist die großer-gleich Relation ≥. Ordinalda-ten andern sich nicht, wenn man eine monotone Transformation auf sie anwendet. Mathematischentsprechen sie Ganzen Zahlen.

Kardinalskalen. In diesem Fall ist die Messgroße eine rationale oder reele Zahl, die Paarverglei-che zulasst. In der Psychologie unterscheidet man meist noch Intervallskalen, in denen Differenzenzwischen Messwerten wohldefiniert und vergleichbar sind, von Verhaltnisskalen, in denen auchVielfache und Bruche sinnvoll gebildet und verglichen werden konnen. Physikalische wie auch phy-siologische Messungen sind in der Regel von dieser Art. Ein Beispiel fur eine Intervallskala, dieaber keine Verhaltnisskala ist, ist die Celsius-Skala fur die Temperatur. Man kann sagen, dass derUnterschied zwischen 5◦ und 10◦ genauso groß ist, wie der zwischen 15◦ und 20◦, weil die Ausdeh-nung der Quecksilbersaule in beiden Fallen gleich groß ist. Es macht aber wenig Sinn zu sagen,dass 20◦

”doppelt so warm“ sei wie 10◦, weil der Nullpunkt der Celsius-Skala letztlich arbitrar

ist. Tatsachlich ist ein wesentlicher Unterschied zwischen Intervallskalen und Verhaltnisskalen dieExistenz eines wohldefinierten Nullpunktes, auf den man Vergleichsaussagen beziehen kann.

In der Experimentalstatistik spielt die Frage der Skalentypen eine große Rolle. Wir werden diesenPunkt hier nicht systematisch behandeln aber gelegentlich darauf zuruck kommen.

Page 9: Datenanlyse Mit Matlab

1.3. VEKTOREN 5

1.3 Vektoren

Vektoren sind der wichtigste Datentyp in Matlab, der z.B. immer dann verwendet wird, wennwiederholte Messungen dargestellt werden sollen.

Vektoren konnen fur unsere Anwendungen als Zeilen oder Spalten von Zahlen (fur gewohnlich:reellen Zahlen) aufgefasst werden. Wir schreiben

~v =

v1

v2...

vn

= (v1, v2, . . . , vn)′. (1.3)

Die Umwandlung eines Zeilenvektors in einen Spaltenvektor oder umgekehrt bezeichnet man alsTransposition, das Ergebnis auch als den transponierten Vektor. Statt des hier (und von Matlab)verwendeten Strichs findet man auch ein hochgestelltes ⊤.

Die Zahlen vi bezeichnet man als Komponenten des Vektors ~v, die Anzahl n der Komponen-ten ist seine Dimension. Die Menge aller Vektoren mit reellen Komponenten und Dimension nbezeichnet man als n-dimensionalen Vektorraum, IRn.

Vektoren bilden in Matlab die wichtigste Datenstruktur. Zeilenvektoren werden als Liste ohneKommata und in eckigen Klammern vereinbart:

>> v = [ 1 2 3 ]

v =

1 2 3

Bei Spaltenvektoren trennt man die Komponenten mit Semikolons:

>> u = [ 4; 5; 6 ]

u =

4

5

6

Die Transposition wird wie in Gl. 1.3 durch ein Apostroph bezeichnet:

>> u’

ans =

4 5 6

1.3.1 Rechenoperationen

Mit Vektoren sind folgende fur uns wichtige Rechenoperationen erklart:Addition. Zwei Vektoren gleicher Dimension werden addiert, indem man die Komponenten addiert(”Krafteparallelogramm“, Abb. 1.2):

~a+ ~b =

a1

a2...

an

+

b1

b2...

bn

=

a1 + b1

a2 + b2...

an + bn

. (1.4)

Page 10: Datenanlyse Mit Matlab

6 KAPITEL 1. ZAHLEN UND VEKTOREN

-

6

������*

����������

������������7

a2 + b2

a2

b2

a1 b1 a1 + b1

~b

~a

~a+~b

����������

������*

-

6

���*����������

p p pp p p

p p pp p p

p p pp p p

p pAA

AA

AAK ~b

~b

~a

α︸

︷︷

(~a·~b)/

‖b‖= λ ·

~bo

Abbildung 1.2: Links: Vektoraddition. Die Summe ~a + ~b entsteht algebraisch durch Additionder Komponenten und geometrisch durch Aneinanderlegen der Pfeile (

”Krafteparallelogramm“).

Rechts: Skalarprodukt. Das Skalarprodukt gibt die Lange der Projektion eines Vektors auf diedurch den zweiten Vektor definierte Richtung an.

Multiplikation mit einem Skalar. Die Multiplikation als Verallgemeinerung der Addition desVektors zu sich selbst (im Sinne von ~a+~a = 2~a) ist fur beliebige Zahlen (

”Skalare“) λ ∈ IR erklart:

λ~a = λ

a1

a2...

an

=

λa1

λa2...

λan

(1.5)

Skalarmultiplikation (dot product, inner product). Zwei Vektoren gleicher Dimension konnennach folgender Regel multipliziert werden, wobei das Ergebnis eine Zahl (Skalar) ist:

(~a · ~b) := a1b1 + a2b2 + . . . anbn =n∑

i=1

aibi. (1.6)

Wegen (~a·~a) =∑ a2i ist√

(~a · ~a) =: ‖~a‖ die Lange oder Norm des Vektors ~a (Satz des Pythagoras).Ein Vektor mit Norm 1 heißt Einheitsvektor; Ein beliebiger Vektor ~a kann durch Division durchseine Norm in einen Einheitsvektor uberfuhrt werdebn. Man schreibt

~ao :=~a

‖~a‖ (1.7)

Ist das Skalarprodukt zweier Vektoren null, so sind die Vektoren orthogonal (senkrecht) zuein-ander. Dies sieht man sofort fur die Basisvektoren eines Standardkoordinatensystems, die fur dreiDimensionen gegeben sind durch

~e1 :=

1

0

0

~e2 :=

0

1

0

~e3 :=

0

0

1

. (1.8)

Page 11: Datenanlyse Mit Matlab

1.3. VEKTOREN 7

Offenbar gilt (~ei · ~ej) = 0 fur alle i 6= j, d.h. die Basisvektoren stehen paarweise senkrecht aufein-ander. Allgemein wird die Orthogonalitat zweier Vektoren durch das Verschwinden des Skalarpro-duktes definiert.

Eine anschauliche Interpretation des Skalarproduktes im allgemeinen Fall ergibt sich aus Ab-

bildung 1.2. Die gepunktelte Linie gibt die durch den Vektor ~b bzw. seinen Einheitsvektor ~bo

definierte Richtung wieder. Bezeichnet man mit ~b⊥

den darauf senkrecht stehenden Vektor (im

mehrdimensionalen Fall niummt man den, der außerdem noch in der durch ~a und ~b aufgespanntenEbene liegt), so gilt fur geeignete Konstanten λ, µ:

λ~bo+ µ~b

⊥= ~a. (1.9)

Hierbei ist λ die Lange der Projektion von ~a auf die Richtung von ~b. Multipliziert man die Gleichung

skalar mit ~b, so erhalt man wegen (~b⊥ · ~b) = 0

λ(~bo · ~b) = (~a · ~b) (1.10)

und weiter

λ =(~a · ~b)‖~b‖

= ‖~a‖(~ao · ~bo). (1.11)

Das Skalarprodukt beschreibt also die Projektion eines Vektors auf einen Anderen. Man kann diesbenutzen, um Winkel in Vektorraumen zu definieren:

cosα = (~ao · ~bo) = (~a · ~b)

‖~a‖‖~b‖. (1.12)

In Matlab wird das Skalarprodukt als ein Spezialfall der Matrizenmultiplikation (s.u.) aufge-fasst. Sind etwa

>> a = [ 1 2 3 ]

a =

1 2 3

>> b = [ 10 20 30 ]

b =

10 20 30

zwei Zeilenvektoren, so ist die Operation a * b nicht definiert. Da gleiche gilt, wenn a und b beideals Spaltenvektoren definiert sind. Das Skalarprodukt sollte in diesem Fall den Wert 1× 10 + 2×20 + 3× 30 = 140 annehmen. Man erhalt es aus dem Befehl

>> a * b’

ans =

140

Weitere Produkte.Weitere in MatLab definierte Produkte sind das außere Produkt

>> a’ * b

ans =

10 20 30

20 40 60

30 60 90

Page 12: Datenanlyse Mit Matlab

8 KAPITEL 1. ZAHLEN UND VEKTOREN

und das komponentenweise Produkt

>> a .* b

ans =

10 40 90

Das außere Produkt wird uns bei der Matrix-Multiplikation und in der multivariaten Statistik wie-der begegnen. Das komponentenweise Produkt entspricht der Multiplikation abgetasteter Funktio-nen.

1.3.2 Beispiele

1. Die x-y-Koordinaten einer Ebene bilden einen zwei-dimensionalen Vektorraum.

2. Misst man an einer Versuchsperson die funf Messgroßen Gewicht, Volumen, Korpergroße,Beinlange und Armlange, so bilden diese Messungen einen funf-dimensionalen Daten- oderMerkmalsvektor.

3. Leitet man simultan die Aktivitat von n Neuronen ab und teilt das Ergebnis in Zeitfenstervon 10 ms ein, so erhalt man fur jedes Zeitfenster einen n-dimensionalen Vektor dessenKomponenten die Werte 0 (kein Aktionspotential im Zeitfenster) oder 1 (ein Aktionspotentialim Zeitfenster annehmen konnen. Man bezeichnet diesen Vektor auch als den Zustandsvektorder abgeleiteten Gruppe von Neuronen.

4. Misst man die Lange eines Pflanzenkeimlings jede Stunde wahrend eines Zeitraums von 24Stunden, so erhalt man 25 Einzelmessungen, die man zu einem 25-dimensionalen Vektorzusammenfassen kann. Allgemeiner kann jede Abtastung einer Funktion als Vektor aufgefasstwerden.

Anschaulich sollte man sich Vektoren als geordnete Listen vorstellen, nicht unbedingt als Punkteoder Pfeile im Raum. Man umgeht dann das Problem, dass Vektoren mit mehr als drei Dimensionen(Listenplatzen) nicht mehr vorstellbar sind. Dimensionen sind anschaulich so etwas wie Freiheits-grade, bezuglich derer eine vektorielle Große unabhangig variieren kann. Die Beispiele zeigen, dasses keinen Grund gibt, die Anzahl dieser Freiheitsgrade auf drei zu beschranken. Auch im Fall vonmehr als drei Dimensionen bezeichnet man die Gesamtzahl aller Vektoren mit einer gegebenenDimension n als n-dimensionalen Vektorraum.

Literatur

Anton, H. (1998) Lineare Algebra. Einfuhrung, Grundlagen, Ubungen. Heidelberg, Berlin: Spek-trum Akademischer Verlag

Bortz, J. (2002) Statistik fur Sozialwissenschaftler. Berlin etc: Springer. 5. Auflage

Farin, G., Hansford, D. (2008)Mathematical Principles for Scientific Computing and Visualization.Wellesley MA: A K. Peters Ltd.

Glaeser G. (2004)Der mathematische Werkzeugkasten. Anwendungen in Natur und Technik.Munchen:Elsevier Spektrum. Kapitel 4: Vektorrechenung

Wallisch, P., Lusignan, M., Benayoun, M., Baker, T.I., Dickey, A.S., Hatsopulos, N. (2008) Matlabfor Neuroscientists: An Introduction to Scientific Computing in Matlab. Academic Press.

Page 13: Datenanlyse Mit Matlab

Kapitel 2

Matrizen

2.1 Allgemeines

Matrizen∗ sind rechteckige Raster von Zahlen, in unseren Anwendungen stets reellen Zahlen, z.B.:

M =

m11 m12 m13 m14

m21 m22 m23 m24

m31 m32 m33 m34

(2.1)

M ist eine Matrix mit 3 Zeilen und 4 Spalten, oder kurz eine 3×4-Matrix. Die Komponenten habenzwei Indizes, von denen der erste die Zeilennummer und der zweite die Spaltennummer bezeichnet.

Vektoren konnen als spezielle Matrizen mit nur einer Spalte bzw. Zeile aufgefasst werden.Genauer entspricht ein Spaltenvektor einer n× 1-Matrix und ein Zeilenvektor einer 1× n-Matrix.

Vertauscht man die Spalten und Zeilenindizes der Matrixkomponenten, so entsteht die trans-ponierte (oder gesturzte) Matrix M ′, im Beispiel:

M ′ =

m11 m21 m31

m12 m22 m32

m13 m23 m33

m14 m24 m34

(2.2)

Aus der 3×4-Matrix M ist dabei die 4×3-Matrix M ′ entstanden. Die Transposition von Matrizenist damit vollig analog zu der von Vektoren, wenn man, wie beschrieben, Vektoren als einzeiligeoder einspaltige Matrizen auffasst.

2.2 Matrixmultiplikation

Matrizen beschreiben Abbildungen zwischen Vektorraumen. Quadratische Matrizen (also solchemit gleich vielen Zeilen und Spalten) entsprechen Abbildungen von einem Vektorraum auf sichselbst. D.h., jedem Vektor ~v wird durch die Vorschrift

~u =M~v (2.3)

∗Der Name”Matrix“ (Plural: Matrizen) geht auf den englischen Mathematiker James Joseph Sylvester (1814-

1897) zuruck. Determinanten wurden schon lange vorher zur Losung von Gleichungssystemen verwendet.

9

Page 14: Datenanlyse Mit Matlab

10 KAPITEL 2. MATRIZEN

m = 4 Spalten

p = 3 Spalten

p = 3 Spalten

n=

2Zeilen

m=

4Zeilen

n=

2Zeilen

× =

a11 a12 a13 a14

b11

b21

b31

b41

c11

Abbildung 2.1: Matrixmultiplikation. Die Multiplikation einer 2×4-Matrix A mit einer 4×3-MatrixB ergibt eine 2×3-Matrix C. Die Komponente c11 = a11b11+a12b21+a13b31+a14b41 =

∑mj=1 a1jbj1

und die in ihre Berechnung einfließenden Komponenten der Matrizen A und B sind grau unterlegt.

ein Vektor ~u zugeordnet. In Komponenten sieht diese Zuordnung so aus:

u1

u2...

un

=

m11 m12 . . . m1n

m21 m22 . . . m2n

......

...

mn1 mn2 . . . mnn

v1

v2...

vn

(2.4)

=

m11v1 +m12v2 + . . .+m1nvn

m21v1 +m22v2 + . . .+m2nvn...

mn1v1 +mn2v2 + . . .+mnnvn

=

∑nj=1m1jvj

∑nj=1m2jvj

...∑n

j=1mnjvj

(2.5)

Die i-te Komponente des neuen Vektors ~u erhalt man also, indem man zunachst die i-te Zeile derMatrix herausgreift. Eine solche Zeile kann fur sich genommen als Zeilenvektor aufgefasst werden.Wir multiplizieren jetzt die erste Komponente dieser Zeile mit der ersten Komponente des Vektors~v, dann die zweiten Komponenten, und so fort. Am Ende addieren wir alle Produkte auf underhalten so das Ergebnis ui (”

Zeile mal Spalte“). Dieses Multiplikationsschema setzt voraus, dassdie Matrix gerade soviele Spalten hat, wie der Vektor Komponenten (oder Zeilen), da sonst diePaare fur die Multiplikation nicht aufgehen.

Allgemein kann man zwei Matrizen miteinander multiplizieren, wenn die erste so viele Spaltenhat wie die zweite Zeilen (Abb. 2.1). Fur die Multiplikation einer n×m-Matrix A mit einer m× p-Matrix B erhalt man eine n× p-Matrix mit den Komponenten

cik =

m∑

j=1

aijbjk. (2.6)

Ist n = p = 1, so handelt es sich um die Multiplikation eines Zeilenvektors mit einem Spaltenvektor;das Ergebnis ist eine Zahl. Es ist gerade das oben bereits eingefuhrte Skalarprodukt der beidenbeteiligten Vektoren. Ist m = 1, so wird ein Spaltenvektor mit einem Zeilenvektor multipliziert,wobei eine n× p-Matrix entsteht (sog. außeres Produkt oder Tensorprodukt). Man sieht schon an

Page 15: Datenanlyse Mit Matlab

2.2. MATRIXMULTIPLIKATION 11

Tabelle 2.1: Rechenregeln fur die Multiplikation von Matrizen

Assoziativitat (AB)C = A(BC)

Distributivitat A(B + C) = AB +AC

Transposition (AB)′ = B′A′

a.

-

6

x

y

���

ss

(

1 0

0 2

)

-

6

x

y

������

sb.

-

6

x

y

���

ss

(

−1 0

0 1

)

-

6

x

y

@@

@

s

c.

-

6

x

y

���

ss

(

cosϕ − sinϕ

sinϕ cosϕ

)

-

6

x

y

���BBB

����

BBB���

s

d.

-

6

x

y

���

ss

(

1 0

1 1

)

-

6

x

y

���

������

���

s

Abbildung 2.2: Ahnlichkeitstransformationen in der Ebene. a. Expansion in y-Richtung. b. Spie-gelung an der y-Achse. c. Drehung um den Ursprung mit Drehwinkel ϕ. d. Scherung. Die Matrizender gezeigten Transformationen sind jeweils angegeben. Durch Verkettung der Grundtypen lassensich alle moglichen Ahnichkeitstransformationen der Ebene erzeugen.

diesem Beispiel, dass die Matrixmultiplikation nicht kommutativ ist. Das gilt im Allgemeinen auchfur quadratische Matrizen. Weitere Regeln fur die Matrix-Multiplikation zeigt Tabelle 2.1.

Die quadratische Matrix

E =

1 0

0 1

(2.7)

bezeichnet man als die 2× 2 Einheitsmatrix. Multipliziert man einen 2-dimensionalen Vektor mitdieser Matrix, so bleibt er unverandert. Die Einheitsmatrix in hoheren Dimensionen ist entspre-chend definiert, ihre Koeffizienten entlang der Diagonalen haben den Wert 1, alle anderen Koeffi-zienten haben den Wert 0.

Die durch die Matrixmultiplikation beschriebene Abbildung eines Vektors auf einen anderenVektor ist linear, d.h. es gilt:

M(~u+ ~v) = M~u+M~v (2.8)

M(λ~u) = λM~u fur λ ∈ IR (2.9)

Umgekehrt kann man zeigen, dass jede lineare Abbildung zwischen endlich-dimensionalen Vek-torraumen durch eine Matrixmultiplikation beschrieben werden kann.

Page 16: Datenanlyse Mit Matlab

12 KAPITEL 2. MATRIZEN

2.3 Beispiele

2.3.1 Ahnlichkeitstransformationen in der Ebene

Ahnlichkeitstransformationen in der Ebene sind Abbildungen, die Geraden wieder in Geradenuberfuhren und parallele Geraden wieder in Parallelen. Beispiele sind Drehung, Spiegelung, Sche-rung und Verschiebung. Sieht man einmal von der Verschiebung ab, so werden die ubrigen Ahn-lichkeitstransformationen in der Ebene durch 2×2-Matrizen beschrieben. Man uberlegt sich leicht,dass die Transformationseigenschaften fur Geraden aus der Linearitat der Matrix-Operation folgt:

• Ursprungsgeraden werden auf Ursprungsgeraden abgebildet.Ist ~g ein Vektor, so ist durch λ~g eine Gerade durch den Koordinatenursprung gegeben, wobeiλ die naturlichen Zahlen durchlauft. Aus der Linearitat folgt nun

M(λ~g) = λ(M~g).

Dies ist wieder eine Ursprungsgerade, allerdings in der neuen Richtung M~g.

• Parallelen zu Ursprungsgeraden werden auf Parallelen abgebildet.Sind ~g und ~v zwei Vektoren, so ist durch λ~g + ~v eine zu λ~g parallele Gerade gegeben. DerVektor ~v beschreibt die Verschiebung zwischen den Parallelen. Das Bild der Parallelen unterM ist

λ(M~g) + (M~v).

Dies ist eine zu M~g parallele Gerade mit der Verschiebung M~v.

Einige spezielle Beispiele mit den zugehorigen Matrizen zeigt Abb. 2.2.Achsen, die bei der Transformation erhalten bleiben, heißen Eigenvektoren der Matrix. Ist ~e

ein Eigenvektor der Matrix M , so gilt M~e = λ~e, wobei λ eine reelle Zahl ist. Der Eigenvektor ~ewird also durch Multiplikation mit der Matrix, deren Eigenvektor er ist, hochstens in seiner Langeverandert, nicht aber in seiner Richtung; die durch alle Vielfache von ~e definierte Ursprungsgeradebleibt unverandert. Die Streckung in Abb. 2.2a hat die Eigenvektoren (0, 1)′ (λ = 1) und (1, 0)′

(λ = 2). Die Spiegelung in Abb. 2.2b hat die Eigenvektoren (0, 1)′ (Eigenwert λ = −1) und (1, 0)′

(λ = 1). Drehungen (Abb. 2.2c) haben fur ϕ 6= nπ uberhaupt keine Eigenvektoren und die Scherungin Abb. 2.2d hat als einzigen Eigenvektor (0, 1)′ mit λ = 1.

Die mit der Transformation verbundene Flachenvergroßerung entspricht dem Betrag der De-terminante der Transformationsmatrix

detM := (m11m22 −m12m21). (2.10)

In Abb. 2.2a ist die Flachenvergroßerung 2, in den anderen Beispielen hat sie den Wert 1.

2.3.2 Lineares Gleichungssystem

Lineare Gleichungssysteme konnen als Matrixgleichungen geschrieben werden, bei denen Vektorendie Unbekannten sind. Wir betrachten ein einfaches Beispiel, das durch die Computertomographiemotiviert ist.

Aus Abbildung 2.3 erhalt man vier Gleichungen fur die vier Unbekannten x1 bis x4:

x1 + x3 = d1

x2 + x4 = d2

x2 + x3 = d3

x1 + x2 = d4

(2.11)

Page 17: Datenanlyse Mit Matlab

2.3. BEISPIELE 13

x3

x1

x4

x2

6 6

��

����

����

-

d1 d2 d3

d4Abbildung 2.3: Vier Volumenzellen eines Korpers werdendurch Roentgenstrahlen in den angegebenen Richtungendurchleuchtet. Die Gesamtabsorptionen d1 bis d4 ergebe-nen sich durch Summation der Absorptionskoeffizienten derdurchlaufenen Voxel. Wie groß sind die einzelnen Absorp-tionen?

Naturlich kann man dieses Gleichungssystem leicht elementar nach den vier Unbekanntenauflosen. Ein systematisches Verfahren, das man auch in Programmen wie Matlab leicht ein-setzten kann, schreibt das Problem zunachst in eine Matrix-Gleichung um:

1 0 1 0

0 1 0 1

0 1 1 0

1 1 0 0

x1

x2

x3

x4

=

d1

d2

d3

d4

. (2.12)

Wir bezeichnen die Matrix mit M . Die Gleichung ware gelost, wenn man auf beiden Seiten”durch

die Matrix M dividieren“ konnte. Leider ist die Division durch Matrizen nicht definiert. Mankann jedoch in vielen Fallen eine so genannte inverse Matrix M−1 berechnen, mit der EigenschaftM−1M = MM−1 = I; hierbei ist I die Einheitsmatrix (in Matlab:

”eye“), deren diagonale

Komponenten alle 1 sind, wahrend die anderen verschwinden. Es gilt I~v = ~v fur alle ~v. Mit Hilfeder inversen Matrix kann man schreiben:

x1

x2

x3

x4

= M−1

d1

d2

d3

d4

(2.13)

=1

2

1 0 −1 1

−1 0 1 1

1 0 1 −1

1 1 −1 −1

d1

d2

d3

d4

(2.14)

Die inverse Matrix existiert nur, wenn die Ausgangsmatrix quadratisch ist und auch dann nur,wenn sie nicht

”singular“ ist. Wurde man in dem o.a. Gleichungssystem z.B. eine Gleichung doppelt

verwenden und dafur eine andere streichen, so ware die Inversion nicht mehr moglich. Allgemeinentsteht dieses Problem, wenn eine der Gleichungen aus den anderen durch Linearkombinationvorhersagbar ist. Dies ist auch der Grund, weshalb in Gl. 2.11 eine diagonale statt einer weiterenhorizontalen Projektion gewahlt wurde. Man braucht mindestens 4 unabhangige Gleichungen um 4Unbekannte zu bestimmen. Hat man weniger als 4 Gleichungen, gibt es im Allgemeinen viele Losun-gen (unterbestimmtes Problem). Hat man mehr als 4 Gleichungen, ist das System uberbestimmt

Page 18: Datenanlyse Mit Matlab

14 KAPITEL 2. MATRIZEN

und die Gleichungen konnen nur noch naherungsweise befriedigt werden. Solche Optimallosungenuberbestimmter Gleichunssysteme findet man mit Hilfe der so genannten pseudoinversen Matrizen.

Das Berechnen der inversen Matrix mit Papier und Bleistift ist nicht einfacher, als das direkteLosen des Gleichungssystems. Der Vorteil liegt in der Verfugbarkeit numerischer Routinen zumInvertieren von Matrizen, in Matlab etwa durch den Befehl

”\“.

2.3.3 Markoff-Ketten† (Probabilistische Matrizen)

Ein Student S sei dafur bekannt, dass er jeden Abend eine von drei Kneipen besucht. Dabei solldie Wahrscheinlichkeit, mit der er eins dieser drei Lokale auswahlt, davon abhangen, welches eram Tag zuvor besucht hat. Wir nehmen folgende Verteilung an:

• Wenn S am Tag t den”Ammerschlag“ (l1) besucht hat, findet man ihn am nachsten Tag

(t+ 1) mit 60 % Wahrscheinlichkeit wieder im”Ammerschlag“, und mit jeweils 20 % Wahr-

scheinlichkeit im”Jazzkeller“ oder im

”Stern“.

• Wenn S am Tag t den”Jazzkeller“ (l2) besucht hat, findet man ihn am nachsten Tag (t+ 1)

mit 100 % Wahrscheinlichkeit im”Stern“.

• Wenn S am Tag t den”Stern“ (l3) besucht hat, findet man ihn am nachsten Tag (t+ 1) mit

10 % Wahrscheinlichkeit im”Ammerschlag“, mit 80 % Wahrscheinlichkeit im

”Jazzkeller“

und mit 10 % wieder im”Stern“.

Wir bezeichnen mit pij die Wahrscheinlichkeit, dass S an einem Tag in Lokal li verkehrt,wenn er am Tag vorher in Lokal lj war (bedingte Wahrscheinlichkeit). Wir erhalten dann dieWahrscheinlichkeitsmatrix

P =

0.6 0 0.1

0.2 0 0.8

0.2 1.0 0.1

(2.15)

Die Spalten dieser Matrix addieren sich zu eins.

Mit qti bezeichnen wir die Wahrscheinlichkeit, dass S am Tag t das Lokal i besucht. Da S an

jedem Tag genau ein Lokal besucht, muss gelten∑3

i=1 qti = 1 fur alle t. Wir konnen dann das

Verhalten von S als Matrixgleichung formulieren:

qt+11

qt+12

qt+13

=

0.6 0 0.1

0.2 0 0.8

0.2 1.0 0.1

qt1

qt2

qt3

(2.16)

oder kurzer

~qt+1 = P~qt. (2.17)

Wir nehmen nun an, dass S am Tag 1 den Ammerschlag besucht, ~q1 = (1, 0, 0)⊤. Dann erhaltenwir folgende Wahrscheinlichkeitsverteilungen fur die folgenden Tage:

†Andrei Andrejewitsch Markoff (1856-1922), russischer Mathematiker. Nach englischer Transskription des Na-mens auch

”Markov-Ketten“

Page 19: Datenanlyse Mit Matlab

2.3. BEISPIELE 15

1 2 3 4 . . . ∞Ammerschlag 1 0.6 0.38 0.262 . . . 0.1190

Jazzkeller 0 0.2 0.28 0.348 . . . 0.4048

Stern 0 0.2 0.34 0.390 . . . 0.4762

Beginnt S im Stern, so erhalt man:

1 2 3 4 5 . . . ∞Ammerschlag 0 0.1 0.07 0.125 0.0947 . . . 0.1190

Jazzkeller 0 0.8 0.10 0.678 0.1826 . . . 0.4048

Stern 1 0.1 0.83 0.197 0.7227 . . . 0.4762

In diesem Fall pendelt S also eine Weile zwischen Jazzkeller und Stern hin und her, doch stelltsich am Ende das gleiche Gleichgewicht wie oben ein. Dieses Gleichgewicht gibt an, wo wir S mitder großten Wahrscheinlichkeit finden, wenn wir nicht wissen, wo er am vorherigen Tag gewesenist.

Wir bezeichnen die Wahrscheinlichkeitsverteilung im Gleichgewicht mit ~q∞. Da im Gleichge-wicht keine Veranderung mehr stattfindet, muss gelten:

~q∞ = P~q∞, (2.18)

d.h., ~q∞ ist Eigenvektor von P mit Eigenwert 1.

2.3.4 Kovarianzmatrix

In einer Messung werden von n = 6 Versuchspersonen je 3 Messgroßen erhoben, z.B. Korpergroße,Gewicht und Alter. Man erhalt folgende (fiktiven) Daten:

VP Große/m (X) Gewicht/kg (Y ) Alter/Jahre (Z)

1 1.53 52 13

2 1.98 98 19

3 1.72 65 48

4 0.92 14 3

5 2.01 105 27

6 1.83 89 61

Durchschnitt 1.665 70.5 28.5

Page 20: Datenanlyse Mit Matlab

16 KAPITEL 2. MATRIZEN

Wir subtrahieren zunachst die Mittelwerte und orden die Daten zu einer 6× 3-Matrix D:

D =

X1 − X Y1 − Y Z1 − Z

X2 − X Y2 − Y Z2 − Z

X3 − X Y3 − Y Z3 − Z

X4 − X Y4 − Y Z4 − Z

X5 − X Y5 − Y Z5 − Z

X6 − X Y6 − Y Z6 − Z

=

−0.135 −18.5 −15.5

0.315 27.5 −9.5

0.055 −5.5 19.5

−0.745 −56.5 −25.5

0.345 34.5 −1.5

0.165 18.5 32.5

(2.19)

Als nachstes berechnen wir die Matrixmultiplikation

C :=1

nD′D

=1

n

−0.135 0.315 0.055 −0.745 0.345 0.165

−18.5 27.5 −5.5 −56.5 34.5 18.5

−15.5 −9.5 19.5 −25.5 −1.5 32.5

−0.135 −18.5 −15.5

0.315 27.5 −9.5

0.055 −5.5 19.5

−0.745 −56.5 −25.5

0.345 34.5 −1.5

0.165 18.5 32.5

=

0.137 11.318 4.003

11.318 975.58 318.08

4.003 318.08 403.25

. (2.20)

C ist eine 3×3-Matrix, die auf der Diagonalen die Stichprobenvarianz der drei Messgroßen (Korper-große, Gewicht, Alter) enthalt und auf den ubrigen Feldern die entsprechenden Kovarianzen. DieAnzahl 3 der Zeilen und Spalten ergibt sich aus der Anzahl der Messgroßen (Große, Gewicht, Al-ter). Fur n Messgroßen erhalt man eine n × n-Matrix. Die Anzahl der Versuchspersonen geht indie Dimensionalitat der Matrix nicht ein. Allgemein gilt:

C :=1

nD

′D (2.21)

=1

n

X1 − X X2 − X X3 − X X4 − X X5 − X X6 − X

Y1 − Y Y2 − Y Y3 − Y Y4 − Y Y5 − Y Y6 − Y

Z1 − Z Z2 − Z Z3 − Z Z4 − Z Z5 − Z Z6 − Z

X1 − X Y1 − Y Z1 − Z

X2 − X Y2 − Y Z2 − Z

X3 − X Y3 − Y Z3 − Z

X4 − X Y4 − Y Z4 − Z

X5 − X Y5 − Y Z5 − Z

X6 − X Y6 − Y Z6 − Z

Page 21: Datenanlyse Mit Matlab

2.3. BEISPIELE 17

-0.75 -0.5 -0.25 0 0.25 0.5 0.75

-0.75

-0.5

-0.25

0

0.25

0.5

0.75

Abbildung 2.4: Interpretation einer 2×2-Matrix A als Vektorfeld, d.h. als Ab-bildung ~x → A~x. Die Pfeile zeigen diejeweils in der Ebene auftretenden Vek-toren. Die Kurven sind Bahnen (Trajek-torien), deren lokale Tangenten jeweilsdurch die Pfeile gegeben sind. Sie sindLosungen der zweidimensionalen Diffe-rentialgleichung 2.25.

Fuhrt man die Matrixmultiplikation aus, so erhalt man Summen von Produkten, die geradeden Stichprobenvarianzen bzw. -Kovarianzen entsprechen.

C =1

n

3∑

i=1

(Xi − X)23∑

i=1

(Xi − X)(Yi − Y )3∑

i=1

(Xi − X)(Zi − Z)

3∑

i=1

(Yi − Y )(Xi − Y )

3∑

i=1

(Yi − Y )23∑

i=1

(Yi − Y )(Zi − Z)

3∑

i=1

(Zi − Z)(Xi − X)3∑

i=1

(Zi − Z)(Yi − Y )3∑

i=1

(Zi − Z)2

(2.22)

=:

var X cov XY cov XZ

cov XY var Y cov Y Z

cov XZ cov Y Z var Z

(2.23)

Die Matrix C ist symmetrisch, d.h. es gilt C = C ′; die Kovarianz von X und Y ist gleich dervon Y und X.

Die großen Matrizen, die wir in diesem Abschnitt ausgeschrieben haben, sehen vielleicht kom-pliziert aus, vereinfachen aber die Auswertung statistischer Daten mit Programmen wie Matlab

ungemein. Wenn die Datenmatrix einmal definiert ist, braucht man nur noch 1nD

′D zu berechnenund hat damit alle (Ko)varianzen schon bestimmt. Die Kovarianzmatrix wird uns im Zusammen-hang mit der mehrdimensionalen Normalverteilung noch einmal begegnen.

2.3.5 Lineare Vektorfelder

Die Transformationen aus Beispiel 2.3.1 konnen auch als Vektorfelder aufgefasst werden, indemman annimmt, dass jedem Ort ~x der Ebene ein Vektor A~x zugeordnet ist, den man von ~x ausabtragt. Man erhalt dann ein Feld von Vektoren (hier als Pfeile vorgestellt), die jeweils von ~x bis~x+A~x reichen.

Page 22: Datenanlyse Mit Matlab

18 KAPITEL 2. MATRIZEN

Ein Beispiel zeigt Abbildung 2.4 fur die Matrix

A =

−0.3 0.5

−0.5 −0.3

(2.24)

Im Sinne von Abschnitt 2.3.1 handelt es sich hierbei um eine Drehung mit gleichzeitiger Kontrakti-on. Man erkennt das an dem nach innen gerichteten Wirbelmuster der Pfeile. Die durchgezogenenLinien zeigen Bahnkurven einer gedachten Bewegung, die lokal immer genau in Richtung der Pfeileverlauft. Mathematisch sind das Losungen der linearen, zweidimensionalen Differentialgleichung

x′1

x′2

= A

x1

x2

. (2.25)

Page 23: Datenanlyse Mit Matlab

Kapitel 3

Funktionen

3.1 Funktionen und Abbildungen

Der Funktionsbegriff ist das zentrale Konzept der Analysis, die fur die Auswertung und Modellie-rung von Daten von großter Bedeutung ist. Uberbegriff ist die Relation, die Zuordnungen zwischenden Elementen zweier Mengen (Definitionsbereich D, Wertebereich W ) definiert. Relationen sinddann Mengen geeordneter Paare aus Elementen von D und W , d.h. Teilmengen des cartesischenProduktes D×W . Abbildungen (mappings) und Funktionen (functions) sind spezielle Relationen,die eine Eindeutigkeitsbedingung erfullen:

Eine Abbildung A ist eine Vorschrift, die jedem Element eines so genannten DefinitionsbereichsD (genau) ein Element eines Wertebereichs W zuordnet. In mathematischer Formulierung:

A : D →W ; und A(d) = w.

Hierbei sind D und W (nicht notwendigerweise verschiedene) Mengen und d ∈ D; w ∈W . Sind Dund W Teilmengen der reellen Zahlen, so nennt man A eine Funktion. Das Wort

”Abbildung“ ist

allgemeiner und schließt mehrdimensionale Definitions- und Wertebereiche ein.Wir betrachten in der Regel Funktionen der Zeit oder Funktionen raumlicher Variablen. Ei-

nige wichtige Spezialfalle zeigt Tabelle 3.1. Die Polynomfunktion enthalt die drei vorhergehenden

Tabelle 3.1: Einige wichtige Funktionen.

Name Symbol Definition Ableitung

Identitat id id(x) := x id′(x) ≡ 1

Gerade – f(x) = c+ sx f ′(x) ≡ s

Parabel – f(x) = x2 f ′(x) = 2x

Polynom (vom Grad n) – p(x) =n∑

i=0

aixi p′(x) =

n∑

i=1

iaixi−1

Exponentialfunktion exp exp(x) = ex :=∞∑

i=0

xi

i!exp′(x) = exp(x)

Sinusfunktion sin sin(x) :=

∞∑

i=0

(−1)ix2i+1

(2i+ 1)!sin′(x) = cos(x)

19

Page 24: Datenanlyse Mit Matlab

20 KAPITEL 3. FUNKTIONEN

6 6 6x y z

j

XXXXXXzrbxo

������*

rbyo= f(xo)

rbzo= g(yo)= g(f(xo))

fg

f ◦ g

Abbildung 3.1: Verkettung von Funktionen

Funktionen (Identitat, Gerade, Parabel) als Spezialfalle.

Rechenarten, die fur Zahlen definiert sind, konnen auf Funktionen ubertragen werden. So kannman z.B. zwei Funktionen addieren, indem man ihre Werte punktweise addiert. Genauer formuliert:hat man zwei Funktionen f und g mit dem gleichen Definitionsbereich, so kann man eine Funktionh = f + g definieren, die jedem x aus dem gemeinsamen Definitionsbereich den Wert h(x) :=f(x) + g(x) zuweist. Genauso kann man bei der Multiplikation, der Subtraktion, und, solange derNenner von null verschieden ist, bei der Division von Funktionen verfahren.

Eine neue Rechenart, die speziell fur Funktionen definiert ist, ist die Verkettung oder Kompo-sition. Wir betrachten zwei Funktionen f , g mit der Eigenschaft, dass der Wertebereich von g imDefinitionsbereich von f enthalten ist. Die Komposition h := f ◦ g ist dann die

”Hintereinander-

Ausfuhrung“ von g und f , h(x) = f(g(x)). Ist zum Beispiel f(x) = exp(x) und g(x) = −x2, soerhalten wir

h(x) = f(g(x)) = exp(−x2). (3.1)

h ist als Gaußsche Funktion (”Glockenkurve“) bekannt.

Gilt fur zwei Funktionen f und g die Beziehung f ◦g = id, so ist f die Umkehrfunktion (inverseFunktion) von g und umgekehrt. (Mit id ist dabei die in Tabelle 3.1 eingefuhrte Identitatsfunktiongemeint, die jede Zahl sich selbst zuordnet.) Wir schreiben g = f−1. Die inverse Funktion derIdentitat id ist sie selbst. Weitere Beispiele fur Funktionen und ihre Inversen sind quadratischeParabel und Wurzelfunktion oder Eponentialfunktion und Logarithmus.

-

6

u

u

u

s

s

x

sgn(x)

a.

-

6

���

�����

@@

@@

@@

@@

x

|x|

b.

Abbildung 3.2: a. Die Signums-Funktion (sgn). b. Die Absolutwert-Funktion.

Page 25: Datenanlyse Mit Matlab

3.2.”GLATTHEIT“: STETIGKEIT UND DIFFERENZIERBARKEIT 21

-

6 HHHHHHHHf ′(xo)

1

xo x

f(x)Abbildung 3.3: Die Ableitung einerFunktion f am Punkts xo ist dieSteigung einer Tangente, die denGraphen der Funktion im Punkt(xo, f(xo)) beruhrt.

3.2”Glattheit“: Stetigkeit und Differenzierbarkeit

3.2.1 Stetigkeit

Eine Funktion heißt stetig an einem Punkt xo ihres Definitonsbereichs, wenn fur jede gegen xokonvergierende Folge (im Definitionsbereich), die Folge der zugehorigen Funktionswerte gegen denFunktionswert an der Stelle xo, f(xo) konvergiert:

f( limx→xo

x) = limx→xo

f(x). (3.2)

Anschaulich formuliert bedeutet das, dass man den Graphen der Funktion zeichnen kann, ohneden Zeichenstift vom Papier zu heben.

Ein Beispiel fur eine unstetige Funktion ist die Vorzeichen- oder Signum-Funktion,

sgn(x) :=

−1 if x < 0

0 if x = 0

1 if x > 0

. (3.3)

Fur die Folge xi = − 1i fur i ∈ IN gilt offenbar limi→∞ xi = 0. Andererseits gilt sgn(xi) = −1 fur alle

i ∈ IN. Die Folge der Funktionswerte konvergiert also gegen −1, wahrend die Folge der zugehorigenArgumente gegen 0 geht:

limi→∞

f(xi) = −1 6= 0 = f( limi→∞

xi). (3.4)

Offenbar wird die Stetigkeit durch die beiden Spunge der Funktion von −1 nach 0 und von 0 to+1 verletzt.

Die in Tabelle 3.1 angegebenen Funktionen sind uberall (d.h. fur alle x) stetig. Ist f eine stetigeFunktion, und existiert die Umkehrfunktion f−1, so ist diese ebenfalls stetig. Das gleiche gilt fur1f falls f(x) 6= 0. Fur zwei stetige Funktionen f and g ist die punktweise berechnete Summe f + gund das Produktf · g, sowie die Verkettung f ◦ g wiederum stetige Funktionen.

3.2.2 Ableitung

Die Ableitung einer Funktion einer Variablen ist definiert als der Grenzwert:

df

dx(x) = f ′(x) := lim

h→0

f(x+ h)− f(x)

h; (3.5)

die Ableitung existiert dann und nur dann, wenn ein solcher Grenzwert eindeutig angegeben werdenkann. Wir nennen Funktionen differenzierbar an einem Punkt x, wenn die Ableitung existiert. DerGraph von f hat in diesem Fall eine eindeutige Tangente an den Punkt (x, f(x)), deren Steigunggleich der Ableitung ist (Abb. 3.3).

Page 26: Datenanlyse Mit Matlab

22 KAPITEL 3. FUNKTIONEN

Ein einfaches Beispiel ist die Funktion f(x) = ax fur eine beliebige Konstante a ∈ IR. AusGl. 3.5, erhalt man:

f ′(x) = limh→0

f(x+ h)− f(x)

h

= limh→0

a(x+ h)− ax

h

= limh→0

ah

h= a.

Das bedeutet, dass f eine konstante Steigung a hat.Ein Beispiel fur eine Funktion, die in x = 0 nicht differenzierbar ist, ist die Betragsfunktion

f(x) = |x| (Abb. 3.2b). In diesem Fall nimmt der Bruch in Gl. 3.5 den Wert 1 an, wenn man h > 0wahlt und den Wert −1 fur h < 0. Da h aber auf beliebige Weise gegen Null gehen kann, heißt das,dass kein eindeutiger Grenzwert existiert. Anschaulich kann keine Tangente an den Punkt (0, 0)gezeichnet werden, weil der Graph dort geknickt ist. An allen anderen Punkten ist die Funktiondifferenzierbar.

Jede differenzierbare Funktion ist stetig, aber nicht umgekehrt. Die Betragsfunktion ist bereitsein Beispiel fur eine stetige Funktion, die nicht differenzierbar ist. Summen, Produkte, Inverse undVerkettungen von differenzierbaren Funktionen sind ebenefalls differenzierbar.

Fur geeignete Funktionen kann die Ableitung kann in jedem Punkt x bestimmt werden. Daherist, f ′(x) wieder eine Funktion von x; sie ist immer stetig. Einige wichtige Regeln fur die Berech-nung von Ableitungen sind in Tabelle 3.2 zusammengestellt. Die Ableitungen einiger speziellerFunktionen zeigt Tabelle 3.1.

Da Ableitungen wieder Funktion sind, konnen sie unter Umstanden wiederum differenziertwerden. Wir betrachten als Beispiel die Funktion f(x) = xn. Mit Hilfe der Potenzregel aus Ta-belle 3.2 erhalten wir f ′(x) = nxn−1. Wir konnen nun die Regel noch einmal anwenden underhalten die zweite Ableitung f ′′(x) = n(n − 1)xn−2. Fur k ≤ n erhalten wir die k-te Ableitungf (k)(x) = n(n−1)...(n−k+1)xn−k. Weiter folgt f (k) ≡ 0 fur alle k > n. Insgesamt heißt das, dassdie Funktion f beliebig oft differenziert werden kann. Diese Eigenschaft haben alle in Tabelle 3.1aufgefuhrten Funktionen

Tabelle 3.2: Ableitungsregeln

Additionsregel: (f(x) + g(x))′ = f ′(x) + g′(x)

Produktregel: (f(x)g(x))′ = f ′(x)g(x) + f(x)g′(x)

Quotientenregel:

(f(x)

g(x)

)′

=f ′(x)g(x)− f(x)g′(x)

(g(x))2

Potenzregel: (xn)′ = nxn−1

Kettenregel: [f(g(x))]′= f ′(g(x))g′(x)

Umkehrfunktion (f−1(y))′ =1

f ′(f−1(y))

Page 27: Datenanlyse Mit Matlab

3.2.”GLATTHEIT“: STETIGKEIT UND DIFFERENZIERBARKEIT 23

I(x)

I’(x)

I’’(x)Abbildung 3.4: Eine Funktion I(x)und ihre erste und zweite Ableitung.Lokale Extrema von I zeigen sich alsNullstellen von I ′, Wendepunkte alsNullstellen von I ′′.

0 1

10

2

10

3

10

4

10

5

10

6

10

7

10

8

10

9

101

A2=

1 10×

f(

2 10

)

A3=

1 10×

f(

3 10

)

Abbildung 3.5: Annaherung derFlache unter der Funktion f(x)durch zehn regelmaßig angeordneteRechtecke. Jedes Rechteck hat dieSeitelnlangen 1/10 und f(i/10) wo-bei i von 1 bis 10 variiert. Die Sum-me der Flachen aller Rechtecke ap-proximiert die Flache unter der Kur-ve. Vgl. Gleichung 3.6.

Ableitungen konnen benutzt werden, um Funktionsverlaufe qualitativ zu beschreiben. Einigewichtige Charakteristika sind:

• Bereiche mit wachsendem bzw. fallendem Funktionswert konnen durch Betrachtung des Vor-zeichens von f ′ aufgefunden werden.

• Maxima sind Punkte, die die Bedingungen f ′(x) = 0 und f ′′(x) < 0 erfullen.

• Minima sind Punkte, die die Bedingungen f ′(x) = 0 und f ′′(x) > 0 erfullen.

• Wendepunkte verbinden Regionen mit positiver und negativer Steigung (”Linkskurve, Rechts-

kurve“). Sie erfullen die Bedingungen f ′′(x) = 0, f ′′′(x) 6= 0.

Page 28: Datenanlyse Mit Matlab

24 KAPITEL 3. FUNKTIONEN

3.3 Integrale

Anschaulich kann man das Integral als die Flache unter dem Graph einer Funktion auffassen; manberechnet sie als Grenzwert der Summe:

∫ 1

0

f(x)dx = limn→∞

1

n

n∑

i=1

f(i

n). (3.6)

Das Ergebnis ist eine Zahl (bestimmtes Integral). In der Summe auf der rechten Seite der Gleichungentspricht jeder Summand 1

nf(in ) der Flache eines der Rechtecke mit Breite 1

n und Hohe f( in ) aus

Abb. 3.5. Im Unterschied zur Flache hat das Integral ein Vorzeichen. Daher gilt z.B.

∫ b

a

f(x)dx = −∫ a

b

f(x)dx. (3.7)

Eine Interpretation des Integrals, bei der auch die Vorzeichen sinnvoll berucksichtigt sind, ist derMittelwert. Das bestimmte Integral kann als Mittelwert des Integranten, multipliziert mit derLange des Integrationsintervalls aufgefasst werden:

f =1

b− a

∫ b

a

f(x)dx. (3.8)

Betrachtet man Integrale mit variablen Grenzen, z.B. Integrale uber das Intervall von 0 bis x,so erhalt man das unbestimmte Integral, das wiederum eine Funktion von x ist:

F (x) :=

∫ x

0

f(x′)dx′. (3.9)

Die Variable von F ist das x, das als obere Grenze im Integral steht. Außerdem gibt es eine

”Integrationsvariable“, die wir mit x′ bezeichnen. Sie lauft von 0 bis x und taucht auf der linkenSeite der Gleichung nicht mehr auf.

Integration ist die Umkehrung der Ableitung. Das genaue Verhaltnis der beiden Operationenbeschreibt der Hauptsatz der Analysis:

∫ b

a

F ′(x)dx = F (b)− F (a). (3.10)

Neben bestimmten und unbestimmten Integralen betrachten wir haufig Integrale ohne aus-drucklich angegebene Grenzen. Man meint dann, dass die Integration uber die ganzen reellenZahlen, also von −∞ bis +∞ lauft. Solche Integrale heißen

”uneigentlich“:

∫ ∞

−∞

exp(−x2)dx := limb→∞

∫ b

−b

exp(−x2)dx =√π. (3.11)

Ingesamt kann man also drei Typen von Integralen unterscheiden: bestimmte Integrale werden uberein festes Intervall berechnet und ergeben einen bestimmten Zahlenwert. Unbestimmte Integralesind Funktionen, wobei eine der beiden Grenzen (in der Regel die obere) die Variable darstellt. Un-eigentliche Integrale sind Grenzwerte bestimmter Integrale bei denen die Grenzen gegen unendlichgehen.

Beispiel 1 Das Verhaltnis von Ableitung und Integration kann durch folgendes Beispiel einerAutofahrt veranschaulicht werden. Das Tachometer liefert momentane Geschwindigkeitswerte v(t).

Page 29: Datenanlyse Mit Matlab

3.4. VEKTORWERTIGE FUNKTIONEN 25

Ist die Dauer der Fahrt durch das Intervall [0, τ ] gegeben, so erhalt man die insgesamt zuruckgelegteStrecke als das bestimmte Integral

∫ τ

0v(t)dt. Wir bezeichnen jetzt die Gesamtstrecke, die wir

bis zu einem Zeitpunkt t zuruckgelegt haven, mit s(t) und erhalten fur diese Gesamtstrecke das

unbestimmte Integral s(t) =∫ t

0v(t′)dt′. Die Ableitung von s ist offenbar v; der Haupsatz der

Analysis sagt dann∫ τ

0

v(t)dt = s(τ)− s(0). (3.12)

Man kann auch hier das Integral als eine Mittelung auffassen. Die mittlere Geschwindigkeit ist(s(τ)− s(0))/τ .

Beispiel 2 Bei der Berechung der Einkommensteuer benutzt man eine”Progressionsfunktion“

ρ(x), die fur jedes Einkommen einen anderen Steuersatz festlegt. Gewohnlich ist ρ(x) fur kleine x(unter dem Grundfreibetrag) null und steigt dann bis zu einem Hochstsatz an. Fur ein Einkommenin Hohe xo sind dann Steueren in Hohe von

∫ xo

0

xρ(x)dx (3.13)

zu bezahlen.

Da die Integration die Umkehrung der Ableitung ist, kann man Regeln fur das Integrieren vonFunktionen aus den Ableitungsregeln erhalten. Wahrend allerdings das Bilden von Ableitungenmeist recht einfach ist, ist die Integration haufig schwierig und zuweilen analytisch nicht moglich.So konnen z.B. alle Potenzfunktionen nach der Regel aus Tabelle 3.2 abgeleitet werden. Eineentsprechende Regel fur die Integration lautet:

∫ x

0

xpdx =1

p+ 1xp+1. (3.14)

Diese Regel funktioniert aber nicht fur p = −1, also fur die Potenzfunktion f(x) = 1x = x−1, da hier

eine Division durch null erfolgen wurde. Durch andere Uberlegungen kann man zeigen, dass dasIntegral der Funktion x−1 auf eine ganz andere Funktionenklasse fuhrt, namlich den naturlichenLogarithmus:

∫ x

1

1

xdx = lnx. (3.15)

Schließlich sei noch die Regel fur die Integration von verketteten Funktionen (”Substitution von

Variablen“) angefuhrt; sie lautet

∫ g(b)

g(a)

f(y)dy =

∫ b

a

f(g(x))g′(x)dx. (3.16)

3.4 Vektorwertige Funktionen

Kurven in der Ebene oder im Raum konnen als vektorwertige Funktionen aufgefasst werden, alsoals Funktionen der Form

K : IR → IRn, K(t) =

k1(t)

k2(t)...

kn(t)

. (3.17)

Page 30: Datenanlyse Mit Matlab

26 KAPITEL 3. FUNKTIONEN

−10−5

05

10

−10

−5

0

5

100

10

20

30

40

−10−5

05

10

−10

−5

0

5

10−1

−0.5

0

0.5

1

a. b.

Abbildung 3.6: Beispiele fur dreidimensionale Plots aus Matlab. a. Expandierende Spirale(Gl. 3.18) als Beispiel fur eine vektorwertige Funktion IR → IR

3. b. Gabor-Funktion (Gl. 3.19)als Beispiel fur eine

”Landschaft“, IR2 → IR.

Eine wichtige Anwendung solcher Funktionen sind Bahnkurven oder Trajektorien. Die Variable tentspricht dann etwa der Zeit. Die Ableitung einer solchen Funktion ist wieder ein Vektor, dessenLange (Norm) die Geschwindigkeit der Bewegung entland der Bahnkurve ist.

Ein Beispiel fur eine solche Funktion zeigt Abb. 3.6a fur die Funktion

K(t) = (t

5sin t,

t

5cos t, t)′ (3.18)

und das Intervall t ∈ [0, 10π]. Der Matlab-Code zur Erzeugung dieser Graphik lautet:

>> t = 0:pi/50:10*pi;

>> plot3(0.2 t .* sin(t), 0.2 * t .* cos(t), t)

>> grid on; box on; square on

3.5 Funktionen von zwei und mehr Variablen

Funktionen zweier Variabler treten bei der Beschreibung von Verteilungen oder ortsabhangigenGroßen in einer Ebene auf. Ein haufig vorkommendes Beispiel ist die Verteilung von Lichtin-tensitaten uber der Retina, die wir als Bildfunktion bezeichnen werden. Im allgemeinen ist derDefinitionsbereich einer Funktion von n Variablen eine Teilmenge des n-dimensionalen RaumesIR

n. Als Wertebereich betrachten wir zunachst weiterhin Teilmengen der reellen Zahlen IR. Manschreibt f(x1, x2, ..., xn).

Als Beispiel fur eine Funktion IR2 → IR betrachten wir eine so genannte Gabor-Funktion

f(x, y) = sin(x+y

3) exp{−(x2 + y2)/20} (3.19)

auf dem Interval −10 < x < 10, −10 < y < 10. Abb. 3.6b zeigt den Graphen der Funktion, erzeugtdurch den Matlab-Kode

>> [x,y] = meshgrid(-10:0.5:10);

>> mycolor = zeros(41,41);

>> mesh(x, y, sin(x+y/3) .* exp(-(x .∧ 2 + y .∧ 2)/20), mycolor);

>> box on; grid on; axes square

Page 31: Datenanlyse Mit Matlab

3.5. FUNKTIONEN VON ZWEI UND MEHR VARIABLEN 27

a.

xo

yo

~n~q

~p

xo → x

f(x, yo)

b.

yo → y

f(x0, y)

c.

Abbildung 3.7: a. Eine Funktion von zwei Variablen, F (x, y), beschreibt eine”Landschaft“ uber

ihrem Definitionsbereich. In der Abbildung sind die lokale Oberflachennormale ~n am Punkt(xo, yo, f(xo, yo)) sowie die zugehorigen partiellen Ableitungen ~p, ~q eingezeichnet. b., c. Schnittedurch die Oberflache in x- bzw. y-Richtung, die fur die Berechnung der partiellen Ableitungenbenotigt werden.

3.5.1 Ableitungen von Funktionen mehrerer Variabler

Abbildung 3.7 zeigt eine Funktion zweier Variabler als”Landschaft“. Die Vektoren ~p und ~q sind

tangential zu dieser Oberflache im Punkt (xo, yo, f(xo, yo)). Solche Tangentialvektoren erhalt mananschaulich, indem man einen Schnitt durch den Graphen von f legt, der senkrecht auf der (x, y)-Ebene steht und durch (xo, yo, f(xo, yo)) verlauft. Man betrachtet nun die dadurch entstehendeeindimensionale Funktion. Tangenten an diese Funktion sind durch eindimensionale Ableitung de-finiert. Sie sind gleichzeitig sogennante Richtungsableitungen von f . Das Wort

”Richtung“ bezieht

sich darauf, dass man Schnitte entlang beliebiger Richtungen in der (x, y)-Ebene wahlen kann,wobei die Steigung variieren kann. Es zeigt sich, dass es genugt, Richtungsableitung in den Koor-dinatenrichtungen zu betrachten; alle anderen Richtungsableitungen konnen aus diesen berechnetwerden.

Wir betrachten den zweidimensionalen Fall aus Abb. 3.7 mit der Funktion f(x, y) und einemPunkt (xo, yo) im Definitionsbereich von f . Wir erhalten einen Schnitt durch den Graphen in x-Richtung, indem wir y an der Stelle yo fixieren und nur noch x variabel lassen. Dies ergibt die neueFunktion:

gyo(x) := f(x, yo). (3.20)

Der Index yo zeigt an, dass man fur jeden Wert yo eine neue Schnittfunktion erhalt. Die Funktiongyo

ist eindimensional und ihre Ableitung ist bereits erklart worden. Wir nennen g′yo(x) die erste

partielle Ableitung (oder partielle Ableitung nach der ersten Variablen) von f an der Stelle (x, yo)

Page 32: Datenanlyse Mit Matlab

28 KAPITEL 3. FUNKTIONEN

und schreiben:

g′yo(x) =:

∂f

∂x(x, yo). (3.21)

Die erste partielle Ableitung ist wieder eine Funktion von von zwei Variablen. An jeder Stelle (x, y)gibt diese Funktion die Steigung der Tangente an den Graphen von f in x-Richtung an. Die zweitepartielle Ableitung bestimmen wir analog durch Schnitt in y-Richtung.

Fur eine Funktion von n Variablen kann man analog n partielle Ableitungen bestimmen. Prak-tisch behandelt man dabei die Variablen, nach denen gerade nicht abgeleitet wird, als Konstanten.Der Vektor dieser n partiellen Ableitung heißt Gradient der Funktion. man schreibt:

gradf(x1, x2, ..., xn) :=(∂f

∂x1(x1, x2, ..., xn),

∂f

∂x2(x1, x2, ..., xn), . . . ,

∂f

∂xn(x1, x2, ..., xn)

)

. (3.22)

Betrachtet man den Gradienten als einen Vektor im Definitionsbereich von f , so gibt er die Richtungdes steilsten Anstiegs auf dem Graphen an. Die Steigung entspricht der Lange des Gradienten.Senkrecht zum Gradienten ist die Steigung null.

Beispiel 1. Wir betrachten die Funktion f(x, y) := ax+ by mit Konstanten a, b ∈ IR. Der Graphvon f ist eine schiefe Ebene. In Schnittem in x-Richtung durch yo, f(x, yo) = ax+byo ist der Termbyo Konstant und verschwindet somit in den Ableitung. Wir erhalten

∂f

∂x(x, y) = a and

∂f

∂y(x, y) = b.

Der Gradient hat also den Wert (a, b), die Neigungsrichtung der Ebene. Er ist konstant, d.h. erhangt nicht von x oder y ab. Dies entspricht der Tatsache, dass die Richtung steilsten Anstiegesauf der Ebene uberall die selbe ist.Beispiel 2. Sei f(x, y) := x2+y2. Der Graph von f ist ein Paraboloid, d.h. eine Form ahnlich einemZuckerhut mit der Offnung nach oben. In Schnitten in x-Richtung durch yo, f(x, yo) = x2 + y2o , istder Ausdruck y2o konstant und wird somit in der Ableitung verschwinden. Man erhalt: obtain:

∂f

∂x(x, y) = 2x and

∂f

∂y(x, y) = 2y.

Der Gradient von f bilded ein radiales Muster von Vektoren, die vom Ursprung (der Spitze desZuckerhutes) nach außen zeigen.

3.5.2 Integrale von Funktionen mehrerer Veranderlicher

Auch die Integration von Funktionen mehrerer Veranderlicher kann durch Ruckgriff auf Schnitteerklart werden. Wir benutzen dazu die Intuition, dass das Integral einer (positiven) Funktion zweierVariabler das Volumen unter dem Graphen ist. Statt in infinitesimal dunne Schnitte zerlegen wirdas Volumen zunachst in Streifen, z.B. in x-Richtung. Quer zum Streifen mitteln wir vorlaufig uberdie Funktionswerte. Fur eine Funktion f(x, y) fixieren wir also y an der Stelle yo und erhalten eine

”Streifenfunktion“ gyo

(x), deren Integration wie zuvor erklart ist:

∫ b

a

gyo(x)dx =:

∫ b

a

f(x, yo)dx

︸ ︷︷ ︸

=:h(yo)

. (3.23)

Page 33: Datenanlyse Mit Matlab

3.6. LITERATUR 29

Die rechte Seite der Gleichung ist eine eindimensionale Funktion von yo, die uber x integriertwerden kann. Wir lassen jetzt den Index o weg und gehen anschaulich zu Streifen infintesimalerBreite uber:

∫ d

c

h(y)dy =:

∫ d

c

(∫ b

a

f(x, y)dx

)

dy. (3.24)

Die Klammern auf der rechten Seite sind nicht wichtig. Tatsachlich darf das Gesamtvolumen nichtdavon abhangen, ob wir die ersten Streifen in x- oder in y-Richtung gelegt haben. Fur integrierbareFunktionen gilt allgemein der Satz von Fubini:

∫ d

c

∫ b

a

f(x, y)dx dy =

∫ b

a

∫ d

c

f(x, y)dy dx. (3.25)

Unbestimmte und uneigentliche Integrale sind fur Funktionen mehrerer Variabler analog definiert.Ebenso analog ist die Interpretation von Integralen uber mehrdimensionale Bereiche als Mittelung.

3.6 Literatur

Glaser G. 2004.Der mathematische Werkzeugkasten. Anwendungen in Natur und Technik.Munchen:Elsevier Spektrum. Kapitel 5, 7

Kemnitz A. (2006) Mathematik zum Studienbeginn 7. Auflage, Vieweg und Teubner

Page 34: Datenanlyse Mit Matlab

Kapitel 4

Kurven durch Datenpunkte

4.1 Allgemeines

4.1.1 Punkte und Kurven

Bei quantitativen Messungen werden haufig Punkte von Kurven gemessen, z.B. die Lange einerwachsenden Pflanze in Abhangigkeit von der Zeit (Wachstumskurve), die Haufigkeit richtiger Ent-scheidungen einer Versuchsperson in einer Erkennungsaufgabe in Abhangigkeit von der Anzahl derVersuchsdurchgange (Lernkurve), die Wahrscheinlichkeit der Detektion eines Reizes in Abhangig-keit von der Reizstarke (psychometrische Funktion), die Antwortrate eines visuellen Neurons inAbhangigkeit von der Orientierung eines balkenformigen Reizes im Gesichtsfeld (Tuningkurve),oder die Auswaschkurve eines radiaktiven Tracers durch regionalen Blutfluss im Gehirn zur Be-stimmung der Auswaschrate. In solchen Fallen misst man immer Funktionswerte an diskretenPunkten auf der Kurve. Wir bezeichnen solche Punkte mit

(xi, yi), i = 1, ...., n. (4.1)

In Matlab wurden die x und y-Werte jeweils zu einem n-dimensionalen Vektor zusammengefasst,x, y.

In den oben angefuhrten Beispielen gibt es jeweils zwei Typen von Variablen:

• Die unabhangige Variable wird vom Experimentator variiert bzw. ausgewahlt. In den o.a.Beispielen sind das die Zeit, die Anzahl der Lernschritte, die Reizstarke sowie die Orientierungdes Reizes im Gesichtsfeld. Wir bezeichnen diese Variable jeweils mit x.

• Die abhangige Variable oder Messgroße wird in Abhangigkeit von der unabhangigen Variablengemessen. In den o.a. Beispielen sind das die Lange, die Anzahl richtiger Entscheidungen, dieDetektionswahrscheinlichkeit und die Aktivitat des Neurons, bzw. die verbleibende Konzen-tration des Tracers. Wir bezeichnen diese Variable jeweils mit y.

Die Kurve, die durch die Einzelpunkte vermessen wird, ist mathematisch gesehen eine Funktion

f : x→ y. (4.2)

Im Falle idealer (also nicht fehlerbehafteter) Messungen erwarten wir

yi = f(xi) fur alle i. (4.3)

30

Page 35: Datenanlyse Mit Matlab

4.2. AUSGLEICHSRECHNUNG (KURVENFITTEN) 31

In Matlab wird die Anwendung von Funktion auf Vektoren komponentenweise verstanden. An-stelle von Gl. 4.3 kann man daher einfach schreiben

y = f(x) (4.4)

Ist die Funktion explizit gegeben, z.B. f(x) = x2, so muss die komponentenweise Ausfuhrung inMatlab ausdrucklich angegeben werden. Hierzu dient der Punkt

”.“ vor dem Potenzoperator:

y = x . ∧ 2 (4.5)

Der Ausdruck x ∧ 2 (Quadrieren eines Vektors) ist in Matlab nicht definiert.

4.1.2 Interpolation und Ausgleichskurven

Da Messungen immer nur an einzelnen (”diskreten“) Orten vorliegen, gibt es immer viele mogliche

Kurven, die durch die gefundenen Punkte verlaufen. Hinzu kommt, dass man haufig gar nicht daraninteressiert ist, streng durch die Punkte verlaufende Kurven zu haben, weil die Messungen ohnehinfehlerbehaftet sind und der

”wirkliche“ Wert somit vom Messwert abweicht. Dies ist besonders dann

der Fall, wenn fur einen Wert der unabhangigen Variablen mehrere Einzelmessungen durchgefuhrtwerden und dann deren Mittelwert und Streuung in das Diagramm eingetragen werden (Messpunktmit Fehlerbalken). Grundsatzlich gibt es fur die Bestimmung einer Kurve durch Messpunkte zweiMoglichkeiten: Interpolation und Ausgleichsrechnung.

Interpolation. In diesem Fall legt man eine Kurve exakt durch die gemessenen Punkte. Meistwird man linear interpolieren, d.h. man verbindet benachbarte Punkte durch eine Gerade. DieMatlab-Routine plot macht das automatisch. Dabei entstehen in der Regel Knicks zwischen deneinzelnen Geradenstucken. Glattere Interpolationen erhalt man durch so genannte Polynom- bzw.Spline-Interpolationen, auf die wir hier aber nicht naher eingehen.

Interpolationen dienen meist graphischen Zwecken, z.B. um in Diagrammen mit mehreren Kur-ven die Zusammengehorigkeit von Punkten zu zeigen. Außerdem erlauben sie Schatzungen uberFunktionswerte zwischen den Messpunkten. Diese Schatzungen sind aber nur dann gut, wenn dieAbtastung dicht genug ist, um den wahren Verlauf der Kurve anzunahern.

Ausgleichskurven (Fit-Kurven). Weiß man aus theoretischen Grunden, welchen Verlauf dieFunktion f hat, so kann man bessere Kurven zeichnen. In der Regel ist der Verlauf nur bis aufeine Reihe von

”Parametern“ bekannt. Nimmt man etwa aus theoretischen Grunden an, f sei eine

Gerade, so bleiben Steigung und Achsenabschnitt dieser Geraden zu bestimmen; vermutet man eineGaußsche Glockenkurve, so sind Mittelwert, Amplitude und Breite freie Parameter. Wir bezeichnensolche Parameter als p1, p2, ... und schreiben sie ins Argument der Funktion: f(x; p1, p2, ...pk).

4.2 Ausgleichsrechnung (Kurvenfitten)

Die Aufgabe besteht darin, die Parameter eines Modells so zu bestimmen, dass die Kurve moglichstgut zu den Daten passt (engl: fit). Die Abweichung zwischen der Kurve und den Messwerten sollalso moglichst klein und auf die Messpunkte gleichmaßig verteilt sein. Die Rechnung, die diesliefert, bezeichnet man als Ausgleichsrechung.

Das Problem des Fittens von Kurven an Daten besteht aus folgenden Komponenten:

1. den Daten, gegeben als zwei Vektoren x und y gleicher Dimension, mit der Interpretation,dass die Komponenten x(i) und y(i) die Koordinaten eines Messpunktes bilden.

Page 36: Datenanlyse Mit Matlab

32 KAPITEL 4. KURVEN DURCH DATENPUNKTE

Tabelle 4.1: Beispiele fur nichtlineare Fitfunktionen

Name Funktion Bemerkungen

Maximumskurven (z.B. Peak einer Tuningkurve)

Cosinus f(x; p1) := 1 + p1 cos(x− p2)

−π < x < π

p1 Spezifitat

p2 Peak-Position

Gauß-Funktion f(x; p1, p2) := exp{ (x− p1)2

p22}

−∞ < x <∞0 < f(x) < 1

p1 Peak-Position

p2 Peak-Breite

Sattigungskurven (z.B. Lernkurve)

Exponentalfunktion f(t; p1, p2) := 1− p1 exp{−p2t}

0 < x <∞0 < f(x) < 1

p1, p2 Startwert

und Steigung

Sigmoide Verlaufe (z.B. Psychometrische Funktion)

Arcustangens(Inverse der Tan-gensfunktion)

f(x; p1, p2) := 1 +2

πarctanp2(x− p1)

−∞ < x <∞0 < f(x) < 1

p1 Wendepunkt

p2 Steigung

Fehlerpunktion(”error function“;

Verteilungsfunkti-on der Normalver-teilung)

f(x; p1, p2) :=1√2πp2

∫ x

−∞

exp{− (x− p1)2

2p22}

−∞ < x <∞0 < f(x) < 1

p1 Wendepunkt

p2 Kehrw. der Steig.

2. einem Modell f(x; p1, ..., pk) mit freien Parametern p1, ...pk. Fur gegebene Parameter undeinen Wert der unabhangigen Variablen sagt das Modell den Messwert voraus. Die Wahl desFunktionstyps f ergibt sich meist aus theoretischen Uberlegungen; im Zweifelsfall wahlt manden Funktionstyp, der mit weniger freien Parametern auskommt (vgl. Tabelle 4.1).

3. einer Fehlerfunktion, die angibt, wie gut die Modellierung der Daten durch das Modell ist. Fureinen gegebenen Satz von Messwerten hangt die Fehlerfunktion nur von den freien Parameterndes Modells ab. Die am meisten verwendete Fehlerfunktion ist die Summe der quadratischen

Page 37: Datenanlyse Mit Matlab

4.3. REGRESSIONSGERADE 33

Abweichungen Essd (ssd steht fur sum of squared deviations):

Essd(p1, ..., pk) =

n∑

i=1

(yi − f(xi; p1, ..., pk))2 (4.6)

Das Quadrat wird gewahlt, damit Uber- und Unterschatzungen der Messwerte sich nichtgegenseitig aufheben. Daruberhinaus hat es angenehme mathematische Eigenschaften, aufdie wir spater noch zuruckkommen mussen.

Eine andere Fehlerfunktion misst die Wahrscheinlichkeit, mit der die beobachtete Messung zuerwarten ist, unter der Annahme, dass das Modell stimmt. Diese Wahrscheinlichkeit soll sogroß wie moglich sein. Man bezeichnet die resultierende Schatzung als Maximum LikelihoodSchatzung (MLL).

4. einem Optimierungsverfahren, dass die Parameterwerte findet, bei denen die Fehlerfunktionminimal (bzw. die Likelihood maximal) wird. In vielen Fallen wird man diese Optimierungnumerisch losen mussen, doch gibt es Spezialfalle, in denen analytische Losungen existieren(z.B. sog. lineare Optimierungsprobleme).

Einfachstes (und wichtigstes) Beispiel einer solchen Ausgleichsrechnung ist die Bestimmungeiner Regressionsgeraden, die wir als Spezialfall der linearen Regression im nachsten Abschnittbesprechen.

4.3 Regressionsgerade

Als lineare Regression bezeichnet man den Fall, dass man einen linearen Zusammenhang zwischenx und y vermutet, die Fitfunkion lautet also in diesem Fall

f(x; a, b) := ax+ b. (4.7)

Ein Beispiele hierfur ware etwa das Wachstum einer Pflanze als Funktion der Zeit. Erwartet maneinen exponentiellen Zusammenhang, so kann man durch Logarithmieren der Daten einen linearenZusammenhang erzeugen.

Die Großen a und b sind hierbei die Parameter unseres Modells. Die Aufgabe besteht alsodarin, a und b so zu bestimmen, dass der Fehler, d.h. die Abweichung zwischen Gerade und Daten,minimal wird.

4.3.1 Losung in Matrix-Notation

Liegen n Messungen x1, . . . , xn vor, so betrachten wir f zunachst nur an den Stellen yi = f(xi).Gl. 4.7 kann dann als Matrixgleichung geschrieben werden:

y1

y2...

yn

=

1 x1

1 x2...

...

1 xn

b

a

, (4.8)

oder kurzer~y = G~p. (4.9)

Page 38: Datenanlyse Mit Matlab

34 KAPITEL 4. KURVEN DURCH DATENPUNKTE

Ziel der Ausgleichsrechnung ist die Bestimmung der Parameter ~p = (b, a)′, mit denen dieModellwerte moglichst genau mit den Datenwerten ubereinstimmen:

~y ≈ G~p (4.10)

Konnten wir durch die Matrix G”dividieren“, so konnten wir diese Gleichung nach ~p auflosen und

hatten das Ergebnis. G ist aber eine n × 2-Matrix und daher im Allgemeinen noch nicht einmalquadratisch. Als eine Art Ersatz fur die Division durch G betrachten wir daher die Minimierungs-aufgabe:

‖~y −G~p‖ → min; (4.11)

Der linke Ausdruck entspricht (bis auf eine Wurzel) der Summe der quadratischen Abweichungenaus Gl. 4.6:

Essd(a, b) =

n∑

i=1

(yi − (axi + b))2 = ‖~y −G~p‖2 (4.12)

Fur das Ergebnis der Optimierung ist die Wurzel als monotone Funktion ohne Bedeutung.Matlab stellt zur Losung solcher Aufgaben eigene Rechenoperation bereit, namlich den so

genannten Backslash-Operator (\) und die etwas allgemeiner einsetzbare Moore-Penrose Pseu-doinverse (pint). Die Losung der o.a. Minimierungsaufgabe liefert der Matlab-Befehl:

popt = G \ y. (4.13)

Liest man die rechte Seite dieser Gleichung ruckwarts, so steht dort”y/G“, also

”y dividiert durch

G“, was als Eselbrucke fur die Bedeutung des Backslash-Operators dienen kann.Die Pseudoinverse erhalt man aus Gl. 4.9, indem man zunachst von links mit der transponierten

Designmatrix G′ multipliziert:G′~y = G′G~p (4.14)

Da G′G immer eine quadratische Matrix ist, wird sie in vielen Fallen auch invertierbar sein. Mankann dann die Gleichung nach ~p freistellen:

(G′G)−1G′~y = ~p. (4.15)

Beispiel

Wir wenden diese Vorgehensweise jetzt auf das Problem der Regessionsgeraden an. Hierzu betrach-ten wir folgende

”Messung:“

x 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0

y 0.1 0.3 1.5 3.1 6.3 5.2 5.5 9.2 8.1 9.1

Die Eingabe in MatLab lautet:

>> x = (1:10)’ ;

>> y = [0.1 0.3 1.5 3.1 6.3 5.2 5.5 9.2 8.1 9.1]’ ;

>> plot(x,y,’o’)

Der letzte Befehl erzeugt eine Graphik der Datenpunkte.Die Matrix G aus Gl. 4.8 erhalten wir in Matlab durch:

>> G = [ones(size(x)), x] ;

Mit Hilfe des Backslash-Operators erhalten wir jetzt die optimalen Parameter (als zweidimen-sionalen Vektor):

Page 39: Datenanlyse Mit Matlab

4.3. REGRESSIONSGERADE 35

0 2 4 6 8 10 12−2

0

2

4

6

8

10

12

Abbildung 4.1: Beispielfur die Berechnung einerRegressionsgeraden mitdem Matlab-Programim Text.

popt = G \ y;

Wollen wir nun die Daten zusammen mit der Regressionsgeraden plotten, so mussen wir einigePunkte entlang der Geraden ausrechnen. Wir verwenden fur diese Abtastpunkte die BezeichnungX und Y, im unterschied zu den Datenpunkten x, y.

X = (0:11)’;

Y = [ones(size(X)), X] * popt;

plot(X,Y,’-’,x,y,’o’)

Das Ergebnis dieser Rechnung zeigt Abb. 4.1.

4.3.2 Analytische Berechnung der Regressionsgeraden

Man kann die Regressionsgerade naturlich auch elementar berechnen. In diesem Fall geht man vonder allgemeinen Fehlerfunktion Gl. 4.6 aus und erhalt

Essd(a, b) =

n∑

i=1

(yi − (axi + b))2 (4.16)

=

n∑

i=1

(y2i + a2x2i + b2 − 2axiyi − 2byi + 2abxi

)(4.17)

= a2n∑

i=1

x2i + nb2 + 2ab

n∑

i=1

xi − 2a

n∑

i=1

xiyi − 2b

n∑

i=1

yi +

n∑

i=1

y2i (4.18)

Die letzte Gleichung sieht zwar komplizierter aus als die erste, ist aber im Hinblick auf dieAufgabe, Minimierung von E in a und b, tatsachlich einfacher, wenn man bedenkt, dass die Summenbei dieser Optimierung Konstanten sind. Das sind sie deshalb, weil wir die Messung als gegebenvoraussetzen und als Auswertung dieser Messung die Parameter a und b bestimmen wollen. Wirfuhren jetzt fur die Summen der Daten, bzw. ihrer Quadrate und Produkte die Bezeichnungen

Page 40: Datenanlyse Mit Matlab

36 KAPITEL 4. KURVEN DURCH DATENPUNKTE

Tabelle 4.2: Kenngroßen des Datensatzes zur Bestimmung der Regressionsgeraden

Standard-Notation Matlab

sx =

n∑

i=1

xi sx = sum(x)

sy =n∑

i=1

yi sy = sum(y)

sxx =

n∑

i=1

x2i sxx = x * x’ (oder: sxx = sum(x . ∧ 2))

syy =

n∑

i=1

y2i syy = y * y’ (oder: syy = sum(y . ∧ 2))

sxy =

n∑

i=1

xiyi sxy = x * y’ (oder: sxy = sum(x . * y))

sx (Summe der x-Werte), sy (Summe der y-Werte), sxx (Summe der Quadrate der x-Werte), syy(Summe der Quadrate der y-Werte) und sxy (Summe der Produkte der x- und y-Werte) ein. DieFormeln finden sich in Tabelle 4.2.

Mit diesen Bezeichnungen erhalten wir aus Gl. 4.18

E(a, b) = a2sxx + nb2 + 2absx − 2asxy − 2bsy + syy. (4.19)

Man erkennt jetzt, dass E quadratisch von a und b abhangt. Zeichnet man in einem dreidimen-sionalen Koordinatensystem E uber der (a, b)-Ebene auf, so erhalt man einen parabolischen Topf,eine Art herumgedrehten Zuckerhut; Schnitte entlang der a und b-Achsen sind Parabeln.

Um das Minimum von E zu bestimmen, mussen wir jetzt die (partiellen) Ableitungen von Enach a und b bestimmen und zu null setzen. Wir erhalten folgende Gleichungen:

∂aE(a, b)

!= 0 ⇔ asxx + bsx = sxy (4.20)

und∂

∂bE(a, b)

!= 0 ⇔ asx + nb = sy (4.21)

Aus diesen beiden Bestimmungsgleichungen erhalt man schließlich die Losungen:

a =nsxy − sxsynsxx − (sx)2

und b =sysxx − sxsxynsxx − (sx)2

. (4.22)

a und b heißen auch Steigung und Achsenabschnitt der Regressionsgerade fur den Datensatz (xi, yi).

4.3.3 Vergleich der elementaren und der Matrix-Rechnung

Zum Vergleich der beiden Verfahren soll im Anschluss an diese elementare Losung noch einmal aufdie Losung mittels der Pseudoinversen zuruckgekommen werden. Wir betrachten dazu zunachstdie Bestandteile:

G′G =

1 . . . 1

x1 . . . xn

1 x1...

...

1 xn

=

n sx

sx sxx

(4.23)

Page 41: Datenanlyse Mit Matlab

4.4. ALLGEMEINE LINEARE REGRESSION (”GENERAL LINEAR MODELS“) 37

(G′G)−1 =1

sxx − (sx)2

sxx −sx−sx n

(4.24)

G′~y =

sy

sxy

(4.25)

Durch Ausmultiplizieren erhalt man

~popt =1

nsxx − (sx)2

sysxx − sxsxy

−sxsy + nsxy

, (4.26)

in Ubereinstimmung mit Gl. 4.22.

4.4 Allgemeine lineare Regression (”general linear models“)

Die im vorigen Abschnitt betrachtete Regressionsgerade ist eine nach der Methode der kleinstenQuadrate bestimmte Ausgleichsgerade fur einen gegebenen Datensatz. Im Sinne unseres allgemei-nen Programms fur das Bestimmen von Ausgleichskurven ist die Situation dadurch ausgezeichnet,dass die Optimierung analytisch ausgerechnet werden konnte. Allgemein kann man zeigen, dassanalytische Rechnungen immer dann moglich sind, wenn das Modell linear in seinen Parameternist, d.h. wenn die Fitfunktion folgendermaßen dargestellt werden kann:

f(x; p1, ..., pk) =k∑

l=1

plgl(x). (4.27)

Dabei ist es vollig gleichgultig, wie die Funktionen gl aussehen, insbesondere brauchen diese Funk-tionen selbst nicht linear zu sein. Ohnehin interessieren ja nur die Werte gl(xi) an den Stutzstellen(xi)i=1,...,n; man konnte daher die kontinuierliche Gl. 4.27 auf diese x-Werte beschranken und stattder Funktionen gl eine Matrix mit beliebigen Koeffizienten gli ansetzen. Solche Probleme heißenlineare Optimierungsprobleme weil die Funktionen gl linear kombiniert werden, und werden auchin Matlab anders behandelt, als die nicht analytisch losbaren. Ein wichtiger Fall ist die Regres-sion auf ein Polynom, g1(x) = 1, g2(x) = x, g3(x) = x2, etc., von der die Regressionsgerade einSpezialfall ist.

Man schreibt das Modell an den Abtastpunkten wie in Gl. 4.8 als Matrixgleichung

f1

f2...

fn

=

g1(x1) g2(x1) . . . gk(x1)

g1(x2) g2(x2) . . . gk(x2)...

......

g1(xn) g2(xn) . . . gk(xn)

p1...

pk

(4.28)

oder abgekurzt:~f = G~p. (4.29)

Die Situation ist damit vollig analog wie im Fall der Regressionsgeraden. Im Detail gibt es zweiUnterschiede: zunachst kann die Anzahl der freien Parameter großer als zwei sein; ~p wird damitzum k-dimensionalen Vektor und G zu einer n× k-Matrix. Zweitens konnen die gi beliebige Funk-tionen sein, solange sie zu linear unabhangigen Spaltenvektoren in G fuhren. Diese Unterschiede

Page 42: Datenanlyse Mit Matlab

38 KAPITEL 4. KURVEN DURCH DATENPUNKTE

andern aber nichts an der weiteren Behandlung, die genauso verlauft, wie im vorigen Abschnittbeschrieben.

Schreibt man noch den Fehlerterm, also die Residuen der Regression explizit hin, so erhalt manaus Gleichung 4.29 das so genannte

”allgemeine lineare Modell“

~f = G~p+~ǫ. (4.30)

G heißt in diesem Zusammenhang”Design-Matrix“. Bei der Auswertung von Imaging-Daten etwa

in der funktionellen Kernspintomographie enthalt der Vektor ~f die Messungen des BOLD-Signalseines Voxels fur die verschiedenen Bedingungen und Versuchspersonen. Die Design-Matrix be-schreibt das experimentelle Design, also die Bedingungen, unter denen die einzelnen Messungenzustande gekommen sind. Aus den Regressionskoeffizienten ~p konnen dann fur jeden

”Kontrast“

(Vergleich der Bedingungen) die statistischen Signifikanzen bestimmt werden (vgl. Friston et al.1995).

4.5 Nichtlineare Regression

In diesem Fall muss die Minimierung der Fehlerfunktion (z.B. Gl. 4.6) numerisch gelost werden.Hierzu halt Matlab entsprechende Routinen bereit. Wichtigste Verfahren sind Gradientenabstieg(im Fall explizit bestimmbarer partieller Ableitungen) und Simplex-Verfahren.

Bei der Anwendung dieser Verfahren muss man beachten, dass sie das Optimierungsproblem

”iterativ“, d.h. schrittweise losen. Im Fall einer Optimierung mit zwei Parametern kann man sichdie Fehlerfunktion E(a, b) als Gebirge uber der a, b-Ebene vorstellen. Beim Aufruf der Optimie-rungsroutine gibt man einen Startpunkt (ao, bo) an von dem aus der Algorithmus dann einen Weg

”bergab“ sucht. Der Algorithmus stoppt, wenn es keine solche Richtung mehr gibt. Hierbei konnenzwei Probleme auftreten:

1. Der Startpunkt liegt zufalligerweise in einem Bereich des Fehlergebirges, der ganz oder fasteben ist. Es gibt dann keine Richtung bergab und der Algorithmus scheitert.

2. Das Fehlergebirge weist mehrere”Taler“ (lokale Minima) auf. Die Wahl des Startpunktes

determiniert dann, welches dieser Taler gefunden wird. Der tiefste Punkt eines solchen Talesist nicht notwenigerweise der tiefste Punkt des ganzen Gebirges.

In beiden Fallen kann es helfen, verschiedene Startpunkte auszuprobieren. Liefert der Algorithmusfur verschiedene Startpunkte verschiedene Losungen, so ist die mit dem kleineren Fehler vorzu-ziehen; ein allgemeines Verfahren zur Bestimmung des globalen Minimums gibt es nicht. Ubrigenssei bemerkt, dass die o.a. Probleme bei der linearen Optimierung mit kleinsten Quadraten nichtauftreten konnen, da das Fehlergebirge hier einen parabolischen Topf bildet, der nur ein (globales)Minimum und keine ebenen Bereiche besitzt.

4.6 Beispiele

4.6.1 Bildschirm-Kalibirierung

Bei der Untersuchung des visuellen Systems verwendet man zunehmend Reize, die uber Bild-schirme oder Video-Beamer dargeboten werden. Dabei wird das gewunschte Bild als Raster vonHelligkeitswerten angegeben, die in der Regel Zahlen I im Intervall [0, 1] sind. Auf das Problemder Diskretisierung, das durch die Beschrankung auf z.B. 28 = 256 Graustufen entsteht, wollen wirhier nicht eingehen.

Page 43: Datenanlyse Mit Matlab

4.6. BEISPIELE 39

Die Helligkeit, die der Monitor abstrahlt, wird physikalisch als Radianz bezeichnet (Dimension:Leistung pro Flache und bestrahltem Raumwinkel). Gewichtet man diese Intensitat mit der wel-lenlangenabhangigen Empfindlichkeit des menschlichen Auges, so spricht man von der LeuchtdichteL, die in Candela/m2 gemessen wird. Der Zusammenhang zwischen der Bildintensitat I und deram Monitor tatsachlich entstehenden Leuchtdichte L ist nun nicht linear, sondern wird durch dieso genannte γ-Korrektur geregelt, die Eigenschaften des menschlichen Auges und der Phosphoredes Bildschirms in Betracht zieht. Um diese γ-Korrektur zu verstehen, mussen wir zunachst denBegriff des Kontrasts einfuhren.

Zeigt man zwei Felder mit jeweils konstanter Leuchtdichte L1 und L2, L1 ≥ L2, so ist derKontrast dieser Felder durch die Beziehung

c :=L1 − L2

L1 + L2(4.31)

(so genannter Zweipunkt- oder Michelsen-Kontrast) definiert. Der Kontrast ist eine dimensionsloseGroße zwischen 0 und 1 und andert seinen Wert nicht, wenn alle Leuchtdichten um einen festenFaktor vergroßert oder verkleinert werden. Addiert man dagegen etwas hinzu, etwa indem manden Bildschirm durch Raumlicht beleuchtet, so nimmt der Kontrast ab. Ist L2 = 0 und L1 > 0, soist der Kontrast immer maximal.

Die Eichkurve eines Monitors gibt an, welche Leuchtdichte L abgestahlt wird, wenn ein Bildmit der Bildintensitat I ∈ [0, 1] gezeigt wird. Die Kurve L(I) ist eine Exponentialfunktion,

L(I) = a rI . (4.32)

Dabei ist a = Lmin die kleinste am Monitor erzeugbare Leuchtdichte. Sie ist nicht null, beiKathodenstrahlrohren z.B. wegen Streulicht von benachbarten Bildschirmteilen und der Vorhei-zung der Bildrohre. Mit r = Lmax/Lmin bezeichnen wir den Dynamik-Bereich des Bildschirms.Er liegt bei Kathodenstrahlrohren zwischen 40 und 200. Man ließt ab: L(0) = a = Lmin undL(1) = a r = Lmax.

Der Sinn der exponentiellen Eichkurve besteht darin, gleiche Differenzen der Bildintensitat Iauf gleiche Kontraste abzubilden. Dass die Exponentialfunktion dies leistet, zeigt folgende Uberle-gung. Wir betrachten den Kontrast zweier Bildschirmbereiche, die die Intensitaten Io und Io +∆Idarstellen. Der zugehorige Kontrast ist:

c∆I =L(Io +∆I)− L(Io)

L(Io +∆I) + L(Io)=arIo+∆I − arIo

arIo+∆I + arIo(4.33)

Wir konnen nun den Ausdruck arIo aus dem Bruch herauskurzen und erhalten

c∆I =r∆I − 1

r∆I + 1. (4.34)

Der Kontrast c∆I hangt also nicht von Io, sondern nur von ∆I ab. Gleiche Intensitatsunterschiedewerden mit gleichem Kontrast abgebildet.

Will man bei sinnesphysiologischen Experimenten Luminanzen (und nicht Kontraste) vorschrei-ben, so misst man zunachst die Funktion L(I) fur eine Reihe von I-Werten aus und fittet dann dieFunktion

L(I; a, r) := arI (4.35)

durch diese Punkte. Diese Potenzgleichung kann man linearisieren, indem man auf beiden Seitenden Logariothmus berechnet:

logL = log a+ I log r. (4.36)

Page 44: Datenanlyse Mit Matlab

40 KAPITEL 4. KURVEN DURCH DATENPUNKTE

Durch Regression von logL auf I gewinnt man Schatzungen fur a und r. Hat man dann einengewunschten Luminanzwert L∗, so berechnet man I∗ aus

I∗ =logL∗ − log a

log r. (4.37)

4.6.2 Psychometrische Funktion

Eine Versuchsperson betrachtet einen Bildschirm, an dem an einem von zwei Orten (”links“

und”rechts“) ein Stimulus auftreten kann. In jedem Versuchsdurchgang soll die Versuchsperson

angeben, ob der Stimulus links oder rechts erschienen ist (so genanntes two alternative forcedchoice Paradigma; 2AFC). Im Experiment wird nun die Reizstarke variiert, so dass die Aufga-be manchmal ganz einfach und manchmal unlosbar ist. Wir bezeichnen die Reizstarke mit xund nehmen an, dass x aus dem Intervall [0, 1] stammt. Wir messen nun fur eine Anzahl vonReizstarken xi die relative Haufigkeit richtiger Antworten der Versuchsperson und bezeichnen die-se mit p(xi) = P (richtige Antwort|x = xi). Wir erwarten, dass p(xi) umso großer ist, je großer dieReizstarke x ist. Ist x = 0, so kann die Versuchsperson nur raten, und wir erwarten p(0) = 1

2 . ImAllgemeinen bezeichnen wir die Wahrscheinlichkeit, durch bloßes Raten eine richtige Antwort zugeben (chance level), mit C.

Am Ende des Experiments liegen also eine Anzahl von Messungen fur yi = p(xi) vor. Wirsuchen nun eine Funktion Ψ(x) (sprich psi), die die Messwerte annahert. Wir bezeichnen sie alspsychometrische Funktion. Eine solche Funktion sollte monoton von C nach 1 wachsen und furgroße x eine Sattigung zeigen. Der x-Wert, fur den sie den Mittelwert zwischen C und 1 annimmt,heißt Wahrnehmungsschwelle. Die mathematische Beschreibung einer psychometrischen Funktionwird im Allgemeinen uber zwei freie Parameter haben, die die Lage der Schwelle und die Steigungan der Schwelle festlegen.

Wir betrachten nun der Einfachheit halber Funktionen, die Werte zwischen 0 und 1 annehmen.Ist f(x) eine solche Funktion, so kann man sie mittels

Ψ(x) := C + (1− C)f(x) (4.38)

auf das Intervall [C, 1] zusammenstauchen.Geeignete Funktionen zum Fitten psychometrischer Funktionen sind die schon erwahnte Arcus-

tangens-Funktion wie auch die Fehlerfunktion (Tabelle 4.1). Beide haben die Eigenschaft, dass siepunktsymmetrisch zu ihrem Wendepunkt sind. Eine weitere fur psychometrische Funktionen haufigverwendete Fitfunktion ist die logistische Funktion

Ψ(x;µ, ϑ) := C +1− C

1 + exp{−x−µϑ }

. (4.39)

Hierbei verschiebt der Parameter µ die Funktion entlang der x-Achse. Die Steigung wird durchden Parameter ϑ bestimmt. Eine Funktion mit unsymmetrischem Verlauf, die sich fur viele psy-chophysische Probleme bewahrt hat, ist die Weibull-Funktion

Ψ(x;α, β) := 1− (1− C) exp{−(x

α

} (4.40)

Hat man sich fur eine dieser Funktionen entschieden, so bestimmt man die Fehlerfunktion nachGl. 4.6. Das Minimierungsproblem ist nichtlinear, was bei der Verwendung von Matlab keineSchwierigkeiten machen sollte. Man bestimmt die Parameter und sieht fur diese Parameter in derFitfunktion nach, wo sie den Wert 0.75 (oder allgemeiner C + (1−C)/2) erreicht. Dieser Wert istdie Schwelle.

Page 45: Datenanlyse Mit Matlab

4.6. BEISPIELE 41

4.6.3 Psychometrische Funktionen und Maximum-likelihood-Schatzung

Im Fall der Psychometrischen Funktion ist Ψ(x) die Wahrscheinlichkeit, mit der bei Reizniveau xdie richtige Antwort gegeben wird. Halt man x fest, so handelt es sich um ein so genanntes Bernoulli-Experiment (Binomialverteilung mit p = Ψ(x)). Die Antwort folgt einer Binomialverteilung. Dererwartete Messfehler hangt daher von jeweiligen Wert Ψ(x) ab; er ist klein fur kleine und großeWerte von Ψ und groß fur mittlere Werte. Eine Ausgleichsrechnung, die versucht, alle Messwertemoglichst gleich gut anzunahern ist also hier problematisch. Besser ware eine Ausgleichskurve, diedurch alle Fehlerbalken lauft.

Ein Verfahren, das dieses Problem lost, ist der Maximum-likelihood Ansatz. Statt der gesamtenquadratischen Abweichung zwischen Kurve und Daten berechnet man hier die Wahrscheinlichkeit,mit der die gefundenen Daten zu erwarten waren, in Abhangigkeit von den zugrundegelegtenParametern der Kurve. Hierzu mussen wir uns zunachst die Verteilung der Rohdaten ansehen, dieim Fall des forced choice-Experimentes einer Binominalverteilung mit Parameter p := Ψ(xi) folgt.Die Wahrscheinlichkeit, bei n Wiederholungen H richtige Entscheidungen zu treffen, ist dann:

P (H) =

n

H

pH(1− p)n−H =n!

H!(n−H)!pH(1− p)n−H (4.41)

Entsprechend erhalt man die Wahrscheinlichkeit, bei Gultigkeit der psychometrischen FunktionΨµ,ϑ in einer Messung mit den Reizstarken (x1, x2, ..., xn) die Haufigkeiten (H1, H2, ..., Hn) zuerhalten, als das Produkt

L(µ, ϑ) :=

n∏

i=1

n

Hi

Ψµ,ϑ(xi)Hi(1−Ψµ,ϑ(xi))

n−Hi . (4.42)

Man bezeichnet es als die”Likelihood“ von µ und ϑ. In der Praxis betrachtet man zumeist den

Logarithmus von L, den wir mit LL bezeichnen wollen:

LL(µ, ϑ) = logL(µ, ϑ) (4.43)

=

n∑

i=1

log

n

Hi

+

n∑

1=1

Hi logΨµ,ϑ(si) + (n−Hi) log(1−Ψµ,ϑ(si)) (4.44)

Bei der Maximierung spielen die in der ersten Summe zusammengefassten Binomialkoeffizientenkeine Rolle mehr, da sie nicht von den Parametern µ und ϑ der Fitfunktion abhangen.

Das Maximum-likelihood Verfahren setzt voraus, dass die Fehlerverteilungen jedes Messpunk-tes explizit bekannt sind. Sind die Fehler an jedem Punkt mit der gleichen Standardabweichungnormalverteilt, so gehen Maximim-Likelihood und Kleinste Quadrate ineinander uber.

Literatur

Christensen R (2002) Plane Answers to Complex Questions. The Theory of Linear Models. Chapter6: Regression Analysis. Springer Verlag

Macmillan NA, Creelman CD (1991) Detection Theory: A User’s Guide. Cambridge UniversityPress. (page 186-190: section on

”psychometric functions“)

Friston KJ, Holmes AP, Worsley J-P, Frith CD, Frackowiak RSJ (1995) Statistical parametricmaps in functional imaging: a general linear approach. Human Brain Mapping 2:189- 210

Page 46: Datenanlyse Mit Matlab

Kapitel 5

Einfache statistische Tests

5.1 Statistische Testtheorie

Das Testen von Hypothesen uber Daten ist die wichtigste Anwendung der mathematischen Stocha-stik in den empirischen Wissenschaften. Zur Erinnerung sollen hier die Grundideen kurz wiederholtwerden.

Eine einfache Testaufgabe konnte z.B. darin bestehen, bei einem Munzwurf festzustellen, ob diegeworfene Munze

”fair“ ist, ob also die Wahrscheinlichkeit, dass Kopf fallt, 1/2 betragt. Um das

festzustellen, wirft man die Munze n mal und erhalt eine Stichprobe (x1, ...xn) von Ausgangen. Diexi konnen dabei die Werte 0 (fur Kopf) und 1 (fur Zahl) annehmen. Man wird akzeptieren, dassdie Munze fair ist, wenn die Anzahl der Zahl-Wurfe

”ungefahr“ der Halfte der Versuchs entspricht.

Sind es”deutlich“ mehr oder weniger, wird man die Munze als unfair verwerfen.

Ein statistischer Test konkretisiert und quantifiziert diese Intuition. Er besteht aus drei Kom-ponenten:

1. die zu testenden Hypothesen, die stets als eine so genannte Nullhypothese (Ho) und ihrlogisches Gegenteil (die Alternative, H1) formuliert werden;

2. eine Prufgroße oder Statistik, d.h. eine aus der Stichprobe zu berechnende Zufallsvariable(z.B. Mittelwert, Stichprobenvarianz, t-Wert o.a.);

3. eine Schranke, bei deren Uberschreitung durch die Prufgroße die Nullhypothese abgelehntwird. Bei der Bestimmung dieser Schranke geht die Wahrscheinlichkeit ein, mit der diePrufgroße die Schranke uberschreitet, und zwar unter der Annahme, dass die Null-Hypothesezutrifft.

5.1.1 Hypothesen

In unserem Beispiel wollen wir prufen, ob die Wahrscheinlichkeit p, mit der der Munzwurf zu demErgebnis

”Zahl“ fuhrt, 0, 5 betragt. Wir formulieren die Hypothesen Ho und H1:

Ho p = 0, 5 (Nullhypothese)

H1 p 6= 0, 5 (Alternative)

Ergebnis des Tests wird eine Entscheidung fur eine der beiden Hypothesen sein. Man sprichtvom Annehmen bzw. Ablehnen der Nullhypothese Ho. Anschaulich wird man in unserem Beispieldie Ho ablehnen, wenn der Mittelwert der xi stark von 0,5 abweicht. Liegt er in der Nahe von 0,5, so

42

Page 47: Datenanlyse Mit Matlab

5.1. STATISTISCHE TESTTHEORIE 43

Tabelle 5.1: Logische und statistische Schlusse

Induktion Beobachtung ⇒ Behauptung (H1)

Kontraposition Negation der Beobachtung ⇒ Negation der Behauptung (¬H1 = Ho)

Statistischer Test P (Beobachtung|Ho) klein

ist damit die Nullhypothese aber nicht etwa bewiesen, da man nie ausschließen kann, dass es nochandere Hypothesen gibt, die das gleiche Ergebnis vorhersagen. Fur eine Munze, die beim Munzwurf50 mal Kopf und 50 mal Zahl ergibt, ist neben der offensichtlichen Hypothese p = 0, 5 beispielsweiseauch die Hypothese p = 0, 5001 akzeptabel. Wir begegnen hier der statistischen Variante einesgrundsatzlichen, erkenntnistheoretischen Problems: man kann mit Daten keine Theorien beweisen,wohl aber widerlegen (so genanntes Falsifikationsprinzip). Man testet daher statt der eigentlichinteressierenden Hypothese ihr logisches Gegenteil, wahrend das, was man eigentlich beweisen will,in der Alternative H1 formuliert ist. Kann man dann Ho ablehnen, so ist man dem Beweis von H1

so nahe gekommen wie uberhaupt moglich. Leider hat man fur die Formulierung der Nullhypothesenicht alle denkbaren Freiheiten, da die Wahrscheinlichkeiten der moglichen Messergebnisse unterAnnahme der Nullhypothese bekannt sein mussen; die Formulierung der Alternative bleibt daherzuweilen etwas unscharf.

Logisch entspricht dieses Vorgehen dem Prinzip der Kontraposition: Wenn aus einer theore-tischen Annahme A notwendig eine bestimmte Beobachtung B folgt (A ⇒ B, z.B.

”wenn es

geregnet hat, ist die Straße nass“), so ist der Umkehrschluss (B ⇒ A,”wenn die Straße nass ist,

hat es geregnet“) nicht notwendigerweise korrekt (es konnte ja auch einen Wasserrohrbruch ge-geben haben). Tritt die vorhergesagte Beobachtung aber nicht ein, und war sie von der Theorienotwendig gefordert, so muss die Theorie falsch sein (¬B ⇒ ¬A;

”wenn die Straße nicht nass ist,

hat es nicht geregnet“).

Der Test lehnt die Null-Hypothese ab, wenn das gefundene Ergebnis unter der Annahme, dassdie Null-Hypothese zutrafe, unwahrscheinlich ist. Man muss daher versuchen, die Null-Hypotheseimmer so zu formulieren, dass diese

”Unwahrscheinlichkeit“ auch wirklich berechnet werden kann.

Hier kann man zwei Grundtypen von Null-Hypothesen (oder Tests) unterscheiden:

•”Zweiseitige“ Tests haben Nullhypothesen der Form Ho : p = po, legen also den Parameterauf genau einen Wert fest. Die Null-Hypothese wird abglehnt, wenn p kleiner als po − ǫ odergroßer als po + ǫ fur ein geeignetes ǫ (sprich: Epsilon) ist.

•”Einseitige“ Tests haben Nullhypothesen der Form Ho : p ≤ po, bzw. Ho : p ≥ po, lehnenalso nur ab, wenn die Abweichung nach einer Seite vorliegt.

Daruberhinaus gibt es weitere Typen von Hypothesen, z.B. solche die nicht nur Zahlen son-dern ganze Verteilungen testen. So uberpruft z.B. der Wilcoxonsche u-Test die Gleichheit zweierVerteilungen.

5.1.2 α- und β- Fehler (Fehler erster und zweiter Art)

Je nach dem, ob die Null-Hypothese zutrifft oder nicht, und je nach dem, ob der Test die Null-hypothese ablehnt oder nicht, kann man vier Situationen unterscheiden, von denen zwei korrekteEntscheidungen darstellen wahrend die anderen Fehler sind:

Page 48: Datenanlyse Mit Matlab

44 KAPITEL 5. EINFACHE STATISTISCHE TESTS

in der Population gilt die

Ho H1

Test entscheidet Ho korrekt β-Fehler

H1 α-Fehler korrekt

Die beiden Fehler sind von sehr unterschiedlicher Art. Beim α-Fehler lehnt man die Nullhypotheseab (sieht sie also als falsifiziert an), obwohl sie zutreffend ist. Beim β-Fehler akzeptiert man dieNullhypothese, obwohl sie falsch ist, vergibt also sozusagen die Moglichkeit, eine falsche Hypotheseihrer Falschheit zu uberfuhren. Besonders klar wird dieser Unterschied, wenn man sich Hypothesenuber Nebenwirkungen von Medikamenten vorstellt. Testet man die Null-Hypothese

”keine Neben-

wirkungen“ so besteht der α-Fehler darin, ein Medikament mit Nebenwirkungen auf den Markt zubringen, wahrend im Fall des β-Fehlers ein unbedenkliches Medikament zuruckgehalten wurde. ImKontext einer wissenschaftlichen Publikation besteht der α-Fehler in der Veroffentlichung falscherErgebnisse, wahrend beim β-Fehler zutreffende Ergebnisse zuruckgehalten werden. Die statisti-sche Testtheorie geht immer davon aus, dass der α-Fehler der gravierendere ist, der also in ersterLinie minimiert werden soll. In der Praxis ist das eher eine Aussage uber die Formulierung derHypothesen: Man muss Ho immer so wahlen, dass der gravierendere Fehler als α-Fehler erscheint.

5.1.3 Prufgroße, Schranke, Signifikanz

Ziel eines statistischen Testes ist es also, die Nullhypothese zu widerlegen und dabei die Wahr-scheinlichkeit eines α-Fehlers gering zu halten. Dazu berechnet man zunachst aus der Stichprobeeine so genannte Prufgroße oder Statistik. Im Beispiel des Munzwurfs ist das der Mittelwert

x =1

n

n∑

i=1

xi. (5.1)

Dabei ist n der Stichprobenumfang. Wr wahlen n = 10.

Wir berechnen nun die Wahrscheinlichkeit eines α-Fehlers. Der α-Fehler tritt auf, wenn dieNullhypothese richtig ist und der Mittelwert x trotzdem stark von dem in diesem Fall zu erwarten-den Wert 0, 5 abweicht. Nehmen wir an, wir wurden die Nullhypothese

”faire Munze“ ablehnen,

wenn x (echt) großer als 0, 7 oder (echt) kleiner als 0, 3 wird. Da wir den Stichprobenumfangn = 10 gewahlt haben, sind das die Falle x = 0; 0,1; 0, 2; 0, 8; 0, 9 und x = 1. Wie groß istdann die Wahrscheinlichkeit, einen α-Fehler zu begehen, d.h. abzulehnen, obwohl Ho zutrifft? Wirbezeichnen diese Wahrscheinlichkeit mit dem Buchstaben p; sie heißt Signifikanz des Tests.

Ein α-Fehler kann nur auftreten, wenn Ho zutrifft. In unserem Beispiel ist die Verteilung derPrufgroße fur diesem Fall leicht anzugeben, es handelt sich um eine Binomialverteilung mit Erwar-tungswert r = 0, 5 und n = 10:

P

(

x =k

n

)

=

n

k

rk(1− r)n−k (5.2)

=

n

k

(1

2)n =

1

2nn!

k!(n− k)!(5.3)

Daraus liest man ab:

Page 49: Datenanlyse Mit Matlab

5.2. BEISPIEL 1: DER T -TEST 45

µo

p(x)

xµo − c µo + c

Abbildung 5.1: Verteilungsdichte einerkontinuierlichen Prufgroße x unter derNull-Hypothese µo = 0, 5. Der Test nimmtHo an, wenn x zwischen den beiden blau-en Markierungen liegt, wenn also |x −µo| < c gilt. Die Flachen unter den bei-den

”Schwanzen“ der Verteilung addieren

sich zur Wahrscheinlichkeit eines Fehlers1. Art, α, der sog. Signifikanz des Testes.Das Beispiel zeigt die zweiseitige Testsitua-tion. Mit nur einer blauen Markierung furdas gleiche Kriterium erhalt man einen ein-seitigen Test zum Signifikanzniveau α/2.

x 0, 0 0, 1 0, 2 0, 3 0, 4 0, 5

P(x) 0, 0010 0, 0098 0, 0439 0, 1172 0, 2051 0, 2461

x 0, 6 0, 7 0, 8 0, 9 1, 0

P(x) 0, 2051 0, 1172 0, 0439 0, 0098 0, 0010

Die Wahrscheinlichkeit dafur, dass x echt kleiner als 0,3 wird, betragt dann

P(x < 0,3) = 0,0010 + 0,0098 + 0,0439 = 0,0547. (5.4)

Genauso erhalt man

P(x > 0,7) = 0,0439 + 0,0098 + 0,0010 = 0,0547. (5.5)

Insgesamt ergibt sich damit fur die zweiseitige Situation:

p = P(x < 0,3|Ho) + P(x > 0,7|Ho) = 0,1094 (5.6)

Unser Test hat also das Signifikanzniveau 0,1094. Die Wahrscheinlichkeit, dass er ablehnt, obwohlHo zutrifft, betragt 10,94 %.

Hatten wir x < 0,2 oder x > 0,8 gefordert, so ware das Signifikanzniveau 0,0198 gewesen. Inder Praxis sieht man sich zunachst den gefundenen Wert der Prufgroße an, und betrachtet danndie Signifikanz des Tests, der mit diesem Ergebnis gerade noch ablehnt. Diese Signifikanzwertesind als Funktion der Prufgroße in der Regel tabelliert. Die Berechnung dieser Tabellen, d.h.die Bestimmung der Wahrscheinlichkeitsverteilung der Prufgroße unter der Annahme, dass dieNullhypothese zutrifft, ist ein Problem der stochastischen Mathematik.

5.2 Beispiel 1: Der t-Test

Erhebt man zwei Stichproben fur eine Messgroße in zwei Populationen, so erhalt man zwei Mit-telwerte x1 und x2 mit den zugehorigen Standardabweichungen. Die Frage ist dann, ob die beidenMittelwerte signifikant voneinander abweichen. Dies wird z.B. dann der Fall sein, wenn die Diffe-renz der Mittelwerte groß, ihre Streuung aber klein ist. Ist umgekehrt die Streuung deutlich großerals die Differenz der Mittelwerte, so kann es durchaus sein, dass die theoretischen Erwartungswerte(d.h. die Mittelwerte der Grundgesamtheit) gleich sind.

Page 50: Datenanlyse Mit Matlab

46 KAPITEL 5. EINFACHE STATISTISCHE TESTS

0 10 20 30 400

5

10

15

Abbildung 5.2: Beispieldaten zum t-Test. Aus zwei unabhangigen Grundgesamtheiten werden Stich-proben von jeweils 50 Exemplaren gezogen. Die Abbildung zeigt die Histogramme solcher Stich-proben zusammen mit ihren Mittelwerten und Standardabweichungen. Der t-Test wird signifikantauf dem 0,1%-Niveau.

Als Beispiel betrachten wir ein Experiment, in dem Versuchspersonen eine Navigationsaufgabein einer unbekannten, virtuellen (d.h. als interaktive Computergraphik prasentierten) Umgebunglosen sollen (Restat et al. 2004). Messgroße (abhangige Variable) ist die Anzahl der Navigations-fehler, d.h. die Anzahl von Wegentscheidungen, die vom Ziel wegfuhren. Die beiden

”Populationen“

sind zwei Gruppen von Versuchspersonen, die in zwei verschiedenen Varianten der Umgebung trai-niert und getestet wurden. In Bedingung 1 war die Umgebung eben, in Bedingung 2 war sie inForm eines gleichmaßigen Hanges geneigt.

Zur besseren Illustration der Testverfahren verwenden wir im folgenden fiktive Daten. Abb. 5.2zeigt die Histogramme fur die Variablen x1 und x2 sowie die zugehorigen Mittelwerte und Fehler-balken. Die Hypothesen lauten:

Ho: Ex1 − Ex2 = 0

H1: Ex1 − Ex2 6= 0

Mit Ex bezeichnen wir dabei den Erwartungswert von x, d.h. den”Mittelwert der Grundgesamt-

heit“. Die Hypothesen formulieren einen zweiseitigen Test.Die Prufgroße des t-Tests ist im wesentlichen die Differenz der Stichprobenmittelwerte dividiert

durch die Standardabweichung dieser Differenz. Wir setzen zunachst voraus, dass die Variablen x1und x2 statistisch unabhangig voneinander sind. Im Beispiel ware diese Bedingung erfullt, wenndas Navigationsexperiment in den beiden Bedingungen mit unterschiedlichen Versuchspersonen-gruppen durchgefuhrt wird. In diesem Fall ergibt sich die Varianz der Differenz einfach als dieSumme der Varianzen:

var(x1 − x2) = var x1 + var x2 =var x1n1

+var x2n2

(5.7)

Wir gehen der Einfachheit halber davon aus, dass die Stichprobenumfange n1 und n2 sowie dieVarianzen der beiden Variablen gleich sind. Als Prufgroße erhalt man dann:

t :=√n

|x1 − x2|√

s21 + s22(5.8)

dabei ist s1 die Stichprobenvarianz von x1,

s21 :=1

n− 1

n∑

i=1

x21i −1

n

(n∑

i=1

x1i

)2

=1

n− 1

(n∑

i=1

x21i − nx21

)

, (5.9)

Page 51: Datenanlyse Mit Matlab

5.3. BEISPIEL 2: EIN RANG-TEST 47

und s22 entsprechend die von x2.Es sei noch einmal daran erinnert, dass die Prufgroße selbst wieder eine Zufallsvariable ist. Wie-

derholt man das Experiment, so werden die Messwerte x1i, x2i, ihre Mittelwerte und Standardab-weichungen und auch die Prufgroße t einen anderen Wert liefern. Die Verteilung der Prufgroße istnun fur den beschriebenen Fall bekannt, wenn man zusatzlich annimmt, dass die Daten normalver-teilt sind. Es handelt sich um die so genannte Studentsche t-Verteilung mit 2n−2 Freiheitsgraden.Die Zahl der Freiheitsgrade ist ein Parameter der Verteilung, den wir nicht weiter zu interpretierenbrauchen.∗

Im Beispiel der Abb. 5.2 ergibt sich mit n = 50 der Prufwert t = 3,386. Fur den zweiseitigenTest mit 98 Freiheitsgraden ließt man aus der Tabelle ab: p = 0,001. Die Wahrscheinlichkeit, einensolch großen t-Wert zu erhalten, wenn die Grundgesamtheiten gleich sind (Nullhypothese), betragtalso gerade nur 0, 1%. Wir konnen die Nullhypothese damit ablehnen.

In dem Fall, dass die Messungen nicht statistisch unabhangig sind, spricht man von verbunde-nen Stichproben oder einem t-Test mit Messwiederholung. Wir gehen hier nicht naher auf dieseSituation ein.

Der t-Test geht davon aus, dass die Messgroßen normalverteilt sind. Tests, die auf diese Annah-me verzichten, heißen

”nicht-parametrisch“. Fur die Aufgabe zwei Verteilungen bzw. ihre Mittel-

werte zu vergleichen, gibt es als nicht-parametrische Tests z.B. den Vorzeichentes (sign test) undWilcoxons u-Test. Wenn die Annahme der Normalverteilung zutrifft, sind die parametrischen Testsin der Regel vorzuziehen, weil sie bei gleicher Signifikanz α einen geringeren β-Fehler aufweisen.Man spricht von einer hoheren

”Gute“ des Tests.

Der t-Test kann auch verwendet werden, um die Abweichung des Mittelwertes einer Stichprobevon einem theoretischen Wert zu testen (Einstichproben-t-Test). In diesem Fall hat man die volliganaloge Prufgroße

t :=√n|x− µo|

s(5.10)

wobei µo der theoretische Mittelwert und s die Stichprobenvarianz sind.Der Einstichproben-t-Test entspricht unserem Beispiel des Testens der Fairness einer Munze im

Fall kontinuierlicher Variabler oder großer Stichproben. Er wird z.B. in Verbindung mit der Re-gressionsanalyse angewendet, um festzustellen, ob die Residuen der regression (Differenz zwischenDaten und Fit) signifikant sind.

5.3 Beispiel 2: Ein Rang-Test

Ein Test fur die Gleichheit der Mittelwerte zweier Stichproben, der keine Annahmen uber die Ver-teilung der Stichproben macht, ist der u-Test nach Mann, Wilcoxon und Whitney. Wir besprechenhierzu nur ein Beispiel um die Arbeitsweise dieses Testes zu zeigen.

Gegeben seien zwei Stichproben mit den Stichprobenumfangen n = m = 4.

(xi)i=1,...,n = (6, 5, 15, 11)

(yi)i=1,...,m = (17, 12, 16, 10).

Wir werfen jetzt beide Stichproben zusammen, ordnen die Elemente der Große nach an, und be-stimmen die

”Rangnummern“, d.h. die Position in der gemeinsamen Menge. Gleichzeitig markieren

wir, aus welcher Stichprobe die Werte kam.

∗Typischerweise ist die Zahl der Freiheitsgrade die Anzahl der Einzelmessungen minus der Zahl der aus diesenEinzelmessungen bereits geschatzten und fur die Berechnung verwendeten Großen (z.B. Stichprobenmittelwert,Stichprobenvarianz). Diese Korrektur hangt damit zusammen, dass z.B. die Stichprobenvarianz systematisch kleinerist als die Varianz der Grundgesamtheit, weil man zu ihrer Berechnung den Stichprobenmittelwert herangezogenhat, der seinerseits mit der Abweichung der Stichprobe von der Grundgesamtheit variiert und daher einen Teil derVarianz

”abfangt“.

Page 52: Datenanlyse Mit Matlab

48 KAPITEL 5. EINFACHE STATISTISCHE TESTS

Wert 5 6 10 11 12 15 16 17

Herkunft X X Y X Y X Y Y

Rang 1 2 3 4 5 6 7 8

Sind die Stichproben ahnlich, werden die X- und Y -Eintrage in der zweiten Zeile durchtmischtsein. Wir bestimmen als nachstes die Summe der Range getrennt fur die Werte aus den beidenStichproben und erhalten die

”Rangsummen“

RX = 1 + 2 + 4 + 6 = 13

RY = 3 + 5 + 7 + 8 = 23

Als Prufgroße dienen dann die u-Werte, die folgendermaßen definiert sind:

uX := nm+m(m+ 1)

2−RX (5.11)

uY := nm+n(n+ 1)

2−RY . (5.12)

Im Beispiel erhalten wir uX = 13 und uY = 3. Als Proberechnung kann man die BeziehunguX + uY = nm benutzen, die wegen n = m = 4 in unserem Beipiel erfullt ist. Von diesen beidenGroßen wahlt man die kleinere und liest die Signifikanz aus der Tabelle ab. Im Beispiel konnen wirdie Null-Hypothese (gleichheit der Mittelwerte) auf dem 10%-Niveau ablehnen.

5.3.1 Effektstarke

Die Signifikanz eines Ergebnisses kann bei starken Effekten schon mit geringen Stichprobenumfangenerreicht werden, wahrend schwache Effekte großere Stichprobenumfange erfordern. Die Signifikanzselbst ist daher kein Maß fur die Starke eines Effektes. In neuerer Zeit ist es ublich geworden,Effektstarken zusatzlich zur Signifikanz eines Ergebnisses anzugeben. Man kann auch im Vorhineinden Stichprobenumfang abschatzen, der benotigt wird, um Effekte einer bestimmten Mindeststarkesignifikant zu machen. Schwachere Effekte wurden dann im Experiment garnicht nachweisbar sein.

Literatur

Bortz, J. (1999). Statistik fur Sozialwissenschaftler. Springer Verlag, Heidelberg, 5. Aufl..

Fisz, M. (1980). Wahrscheinlichkeitsrechnung und mathematische Statistik. VEB Deutscher Verlagder Wissenschaften, Berlin.

Hussy, W., Jain A. (2002). Experimentelle Hypothesenprufung in der Psychologie. Hogrefe, Gottin-gen etc.

Larsen, R.J., Marx, M.L. (1986). An Introduction to Mathematical Statistics and Its Applications.Prentice Hall, Englewood Cliffs, NJ.

Sachs, L. (1992). Angewandte Statistik. Springer Verlag, Berlin, Heidelberg, New York, 7. Aufl.

Restat, J., Steck, S. D., Mochnatzki, H. F., and Mallot, H. A. (2004). Geographical slant facilitatesnavigation and orientation in virtual environments. Perception, 33:667 – 687.

Page 53: Datenanlyse Mit Matlab

Kapitel 6

Varianzanalyse

6.1 Einfaktorielle Varianzanalyse

Der t-Test und entsprechende nichtparametrische Verfahren werden benutzt, um die Gleichheitvon zwei Stichproben zu testen. In vielen Fallen hat man jedoch mehr als zwei Stichproben zuvergleichen, die in verschiedenen experimentellen Bedingungen erhoben wurden. Die unabhangi-gen Variablen, nach denen diese Bedingungen variieren, bezeichnet mal als Faktoren. Im Fall dereinfaktoriellen Varianzanalye genugt ein Faktor zur Beschreibung der Bedingungen; er kann kon-tinuierlich oder nominal skaliert sein. In dem Beispiel aus den vorigen Kapitel (Restat et al. 2004)konnten wir also statt einer flachen und einer gleichmaßigen Hanglandschaft noch Hange mit ande-ren Orientierungen oder Hugellandschaften zulassen. Der Faktor ware dann die Landschaftsform,die nominal skaliert ist und z.B. die Werte (oder Faktorstufen)

”eben“,

”Neigungsrichtung Suden“,

”Neigungsrichtung Osten“ und

”Hugelig“ annehmen kann. Die Frage, die man dann klaren will, ist,

ob die Landschaftsform einen Einfluss auf die Navigationsleistung hat oder nicht. Weitere Beispielesind die Behandlung mit Medikamenten bzw. Dungemitteln (Faktor = Medikament; Faktorstufen= Dosis), das Geschlecht, oder eine Stimulation in einem sinnesphysiologischen Experiment (Fak-tor = Reizstarke, Faktorstufen = jeweils gewahlte Werte). Haufig hat man mehrere unabhangigeFaktoren, deren Wirkungen man voneinander abtrennen will. In diesem Fall spricht man von einermehrfaktoriellen Varianzanalyse (s.u.).

In Sinne des letzten Kapitels musste man bei 4 Faktorstufen 4 × 3/2 = 6 Paarvergleichedurchfuhren. Neben dem großen Rechnenaufwand entsteht dabei das Problem, dass mit steigen-der Anzahl von durchgefuhrten Tests das Risiko steigt, dass einzelne Paarvergleiche zufallig dasSignifikanzniveau erreichen. Anders formuliert, ist eine Aussage, die auf sechs einzelnen Tests mitSignifikanzniveau α beruht, insgesamt weniger signifikant als eine, die mit einem solchen Test belegtist. Man kann versuchen, dies durch erhohte Signifikanzforderung an die Einzeltests zu kompensie-ren (sog. Bonferoni-Korrektur), senkt damit aber die Gute des Gesamtverfahrens.

Die Varianzanalyse (engl.: analysis of variance, ANOVA) lost dieses Problem. Im einfaktoriellenFall haben wir wieder eine Messgroße x, die wir in unserem Beispiel als Anzahl der Navigationsfehlerauffassen wollen. Mit x1 bis xk bezeichnen wir die Messungen, die zu den Faktorstufen 1, ..., kdurchgefuhrt wurden, also z.B. die Fehlerzahlen in der flachen, der geneigten und der hugeligenUmgebung. Die Anzahl der Messungen soll jeweils ni betragen, wobei wir die Gesamtzahl

∑ki=1 ni

mit n bezeichnen. Die Einzelmessungen bezeichnen wir mit einem zweiten Index, xij , wobei j jetztvon 1 bis ni lauft. Im Beispiel ist also xij die Fehlerhaufigkeit der j-ten Versuchsperson in der i-tenLandschaft. Eine Ubersicht uber die Daten und Bezeichnungen gibt Tabelle 6.1.

Die Hypothesen, die man in diesem Fall testen will, lauten:

49

Page 54: Datenanlyse Mit Matlab

50 KAPITEL 6. VARIANZANALYSE

Tabelle 6.1: Datentabelle zur einfaktoriellen Varianzanalyse

Faktor”Landschaft“

Stufen 1: flach 2: geneigt 3: hugelig

Einzel- x11 x21 x31

messungen x12 x22 x32...

......

x1n1x2n2

x3n3

Summen∑n1

j=1 x1j =: x1·∑n2

j=1 x2j =: x2·∑n3

j=1 x3j =: x3·

Gruppenmittel x1· := x1·/n1 x2· := x2·/n2 x3· := x3·/n3

Gesamtsumme x·· :=∑k

i=1

∑n1

j=1 xij

Gesamtmittel x·· := x··/n

Ho: Ex1 = Ex2 = ... = Exk

H1: Es gibt mindestens zwei Gruppen (Faktorstufen) l,m, so dass Exl 6= Exm.

In der Varianzanalyse formuliert man die zu testenden Hypothesen haufig auch durch ein so ge-nanntes Modell der Form

xij = µ+ αi + ǫij . (6.1)

Dabei ist µ Erwartungswert uber alle Bedingungen, angenahert durch x·· aus Tabelle 6.1. Die αi

sind die Erwartungswerte pro Bedingung oder Faktorstufe, angenahert durch die xi·/ni, und dieǫij beschreiben den verbleibenden Fehler, von dem man in der parametrischen ANOVA annimmt,dass er normalverteilt sei. Gl. 6.1 kann auch als Regressionsgleichung aufgefasst werden und stelltinsofern eine Verbindung zu den allgemeinen linearen Modellen aus Abschnitt 4.4 her.

Man geht diese Fragestellung so an, dass man zunachst die Varianz uber alle Messwerte betrach-tet. Gilt die Ho und sind uberdies auch noch die Varianzen innerhalb der einzelnen Gruppen gleich,so ist die Gesamtvarianz gleich der Summe der Gruppenvarianzen∗. Sind jedoch die Gruppenmit-telwerte verschieden, so wird sich das bei der Berechnung der Gesamtvarianz so auswirken, dassein großerer Wert entsteht. Letztlich fragt man also danach, ob die Varianz zwischen den Grup-pen großer ist, als die Varianz innerhalb der Gruppen. Kleine Unterschiede zwischen den Gruppenkonnen also durch große Variation innerhalb der Gruppen verdeckt werden. Ein Beispiel zeigt Ta-belle 6.2: Bei der Variablen x ist die Varianz in den Gruppen null, die Unterschiede zwischen denGruppen sind daher relevant. Bei der Variablen y ist die gleiche Gesamtvarianz vorhanden (gleicheEinzelwerte!), doch entsteht diese Varianz bereits innerhalb der Gruppen.

Wir verwenden im folgenden die in Tabelle 6.1 eingefuhrte Notation. Ein Punkt im Index (z.B.xi· bedeutet, dass uber den Index, der durch den Punkt ersetzt wurde, summiert wurde, xi· istalso die Summe der Messwerte in Gruppe i. Die Anzahl der Summanden in dieser Gruppe sind dieschon besprochenen ni. Zwei Punkte im Index bedeuten, dass uber beide Indizes summiert wurde,x·· ist also die Summe aller Messwerte. Querstriche bedeuten Mittelwerte. Zusatzlich schreiben wir

∗Dies gilt streng genommen nur unter der Annahme, dass die Populationen statistisch unabhangig sind; vgl.Bemerkung am Ende des Abschnitts

Page 55: Datenanlyse Mit Matlab

6.1. EINFAKTORIELLE VARIANZANALYSE 51

Tabelle 6.2: Beispiel zur Varianzzerlegung. Beide Messungen haben die gleiche Gesamtvarianz aberunterschiedliche Gruppenvarianzen.

x1 x2 x3

1 2 3

1 2 3

1 2 3

1 2 3

xi· = 1 2 3

y1 y2 y3

1 3 3

3 3 1

2 1 2

2 1 2

yi· = 2 2 2

immer auch die Formeln mit Summenzeichen etc. aus, um den Vergleich der beiden Notationen zuermoglichen.

Statt der Varianzen betrachten wir die Summen der quadratischen Abweichungen. Fur dieStichprobe insgesamt gilt:

Qgesamt =

k∑

i=1

ni∑

j=1

(xij − x··)2 =

k∑

i=1

ni∑

j=1

xij −1

n

k∑

i=1

ni∑

j=1

xij

2

(6.2)

Die Variablen x und y aus Tabelle 6.2 liefern hier genau das gleiche Ergebnis Qgesamt = 8, weil dieReihenfolge der Terme in der Summe keine Rolle spielt.

Innerhalb jeder Gruppe erhalten wir die quadratischen Abweichungen:

Qi =

ni∑

j=1

(xij − xi·)2 =

ni∑

j=1

xij −1

ni

ni∑

j=1

xij

2

. (6.3)

Die Summe dieser Qi ist ein Maß fur die gesamte quadratische Variation innerhalb der Gruppen:

Qinnerhalb =k∑

i=1

Qi =k∑

i=1

ni∑

j=1

(xij − xi·)2 =

k∑

i=1

ni∑

j=1

xij −1

ni

ni∑

j=1

xij

2

. (6.4)

Fur die Variable x in Tabelle 6.2 nehmen alle Qi und Qinnerhalb den Wert 0 an; fur die Variable yist Q1 = Q3 = 2, Q2 = 4 und Qinnerhalb = 8.

Schließlich konnen wir noch die quadratischen Abweichungen betrachten, die entstehen, wennwir jeden Wert durch sein Gruppenmittel ersetzen und dann die gesamte Abweichung bestimmen:

Qzwischen :=k∑

i=1

ni(xi· − x··)2 =

k∑

i=1

ni

1

ni

ni∑

j=1

xij −1

n

k∑

i=1

ni∑

j=1

xij

2

(6.5)

Der Faktor ni erklart sich dabei daraus, dass jeder Eintrag in Gruppe i durch das Gruppenmittelxi· ersetzt wurde; dieser Wert tritt daher ni mal auf. Fur die Variable x in Tabelle 6.2 nimmtQzwischen den Wert 8 an, fur y ist Qzwischen = 0. Allgemein kann man zeigen, dass die Beziehung

Qgesamt = Qinnerhalb +Qzwischen (6.6)

Page 56: Datenanlyse Mit Matlab

52 KAPITEL 6. VARIANZANALYSE

fur unabhangige Zufallsvariable immer gilt (vgl. etwa Fisz 1980, p. 611).Als Prufgroße wahlt man nun das Verhaltnis zwischen den Stichprobenvarianzen in den Grup-

pen und zwischen den Gruppen. Dabei muss man wegen der unterschiedlichen Anzahl von Zahlenbzw. Mittelwerten, uber die die Varianzen bestimmt werden, noch bestimmte Vorfaktoren beruck-sichtigen†. Die Prufgroße lautet:

F =Varianz zwischen den Gruppen

Varianz innerhalb der Gruppen=

1k−1 Qzwischen

1n−k Qinnerhalb

(6.7)

Setzt man hier die oben angegeben Ausdrucke fur Qzwischen und Qinnerhalb ein, so erhalt man eineetwas unubersichtliche aber korrekte Formel fur F . Einfachere und vor allem leichter implemen-tierbare Ausdrucke erhalt man durch Anwendung der so genannten Steinerschen Formel

1

n

n∑

i=1

(

ai −1

n

n∑

i=1

ai

)2

=1

n

n∑

i=1

a2i −(

1

n

n∑

i=1

ai

)2

, (6.8)

die man durch Ausrechnen des binomischen Ausdrucks elementar beweisen kann.Als Regel fur die Berechnung der Prufgroße halten wir fest:

F =n− k

k − 1

k∑

i=1

x2i·ni

− x2··n

k∑

i=1

ni∑

j=1

x2ij −k∑

i=1

x2i·ni

(6.9)

=n− k

k − 1

k∑

i=1

1

ni

ni∑

j=1

xij

2

− 1

n

k∑

i=1

ni∑

j=1

xij

2

k∑

i=1

ni∑

j=1

x2ij −k∑

i=1

1

ni

ni∑

j=1

xij

2 (6.10)

Die Zufallsvariable F folgt der so genannten Fisherschen F-Verteilung mit”Freiheitsgraden“ k− 1

und n − k. Diese Verteilung ist tabelliert. Fur einen gegebenen Wert der Prufgroße wird die dieSignifikanz automatisch in MatLab bestimmt oder aus entsprechenden Tabellen (z.B. in Bortz1999) abgelesen.

Wie beim t-Test haben wir vorausgesetzt, dass die Populationen xi statistisch unabhangigsind. Hierzu muss jede experimentelle Bedingung von unterschiedlichen Versuchspersonengruppendurchgefuhrt werden; man nennt dies

”between subject design“. Bevorzugt man fur ein gegebe-

nes Experiment die Messung aller Bedingungen an ein und der selben Versuchspersonengruppe,so spricht man von einem “within subject design”. In diesem Fall ist die Voraussetzung der Un-abhangigkeit nicht erfullt. Man muss dann so genannte Tests “mit Messwiederholung” (“repeatedmeasures ANOVA”) anwenden, wie z.B. in Lehrbuchern von Bortz (1999) oder Sachs & Hedderich(2009) beschrieben.

Eine nicht-parametrische Variante der Varianzanalyse ist der Friedman-Test, vgl. z.B. Larsen& Marx (1986).

†Man wurde eigentlich erwarten, dass die Stichprobenvarianz zwischen den Gruppen durch die FormelVzwischen = Qzwischen/k gegeben wird. Tatsachlich kann man aber zeigen, dass der so definierte Schatzerden tatsachlichen Wert um den Faktor k/(k − 1) unterschatzt. Der so genannte erwartungstreue Schatzer istdaher Vzwischen = Qzwischen/(k − 1). Analog erhalt man den erwartungstreuen Schatzer von Vinnerhalb zuQinnerhalb/(n− k).

Page 57: Datenanlyse Mit Matlab

6.1. EINFAKTORIELLE VARIANZANALYSE 53

a.

-

6

Faktor 1

x

µ

kein Effekt

b.

-

6

Faktor 1

x

µ

���

���

���

���

���

���

He1

µ+ α1

µ+ α3

c.

-

6

Faktor 1

x

µ

He2

µ+ β1

µ+ β2

d.

-

6

Faktor 1

x

µ ���������

���������

He1+2

e.

-

6

Faktor 1

x

µ

���������PPPPPPPPP

Int

f.

-

6

Faktor 1

x

µ

���������

���

���

���

He1+Int

g.-

6

Faktor 1

x

µ ���������

PPPPPPPPP

He2+Int

h.

-

6

Faktor 1

x

µ (((((((((

���������

He1+2+Int

Abbildung 6.1: Ubersicht uber mogliche Effekte in einer zweifaktoriellen ANOVA mit drei Stufenfur Faktor 1 (horizontale Achse) und zwei Stufen fur Faktor 2 (blaue und rote Linien). a. KeinEffekt; in Gl. 6.11 gilt αi = βj = (αβ)ij = 0. b. Haupteffekt 1 ohne weitere Effekte. c. Haupteffekt2 ohne weitere Effekte. d. Kombination beider Haupteffekte. e. Interaktion ohne Haupteffekte. f.Haupteffekt 1 zusammen mit einer Interaktion. g. Haupteffekt 2 zusammen mit einer Interaktion.h. Haupteffekte 1 und 2 gemeinsam mit einer Interaktion.

Page 58: Datenanlyse Mit Matlab

54 KAPITEL 6. VARIANZANALYSE

6.2 Zweifaktorielle Varianzanalyse

In vielen Fallen werden die verschiedenen experimentellen Bedingungen nach mehr als einem Faktorgeordnet sein. Behandelt man etwa mit zwei Medikamenten gleichzeitig, so kann man fragen, ob(i) Medikament 1 einen Effekt hat, ob (ii) Medikament 2 einen Effekt hat, oder ob (iii) die beidenMedikamente nur in Kombination, nicht aber alleine wirken. Ein entsprechendes experimentellesDesign hat zwei Faktoren, deren Faktorstufen der Dosierung der beiden Medikamente entsprechen.Man spricht in den o.a. Fallen (i) und (ii) von Haupteffekten, im Fall (iii) von einer Interaktion.

Das lineare Modell fur den zweifaktoriellen Fall lautet:

xijk = µ+ αi + βj + (αβ)ij + ǫijk. (6.11)

xijk ist die k-te Einzelmessung in der Experimentalbedingung, in der der Faktor 1 die Faktorstufe iannimmt und Faktor 2 die Faktorstufe j. Liegt ein Haupteffekt in Faktor 1 vor, so werden die αi 6= 0sein, bei einem Haupteffekt in Faktor 2 sind entsprechend die βj 6= 0. Der Ausdruck (αβ)ij ist nichtals Produkt gemeint, sondern als Koeefizient der Interaktion; liegt eine solche vor, sind diese Wertevon null verschieden. Der verbleibende Fehler ǫ tragt drei Indizes, da er fur jede Einzelmessungangenommen werden muss. Wie schon bei der einfaktoriellen ANOVA nimmt man an, dass dieǫijk und damit die xijk normalverteilt sind. Sind sie statistisch unabhangig voneinander, sprichtman on einer ANOVA ohne Messwiederholung. Sind sie dagegen abhangig, etwa weil die gleicheVersuchsperson k in einem

”within subject design“ in allen Bedingungen getestet wurde, liegt eine

ANOVA mit Messwiederholung (”repeated measures ANOVA“) vor.

Die Reihenfolge, in der die drei Faktorstufen in Abb. 6.1 auf der horizontalen Achse aufgetragensind, spielt in der Analyse keine Rolle. Dementsprechend mussen die Kurven fur die Messwerte xim Allgemeinen keine Geraden sein. Letztlich testet die ANOVA immer nur, ob die Mittelwerteder jeweiligen Gruppen voneinander abweichen oder nicht.

6.3 Literatur

Bortz, J. (1999). Statistik fur Sozialwissenschaftler. Springer Verlag, Heidelberg, 5. Aufl..

Fisz, M. (1980). Wahrscheinlichkeitsrechnung und mathematische Statistik. VEB Deutscher Verlagder Wissenschaften, Berlin.

Larsen, R.J., Marx, M.L. (1986). An Introduction to Mathematical Statistics and Its Applications.Prentice Hall, Englewood Cliffs, NJ.

Sachs, L., Hedderich J. (2009). Angewandte Statistik. Springer Verlag, Berlin, Heidelberg, NewYork, 13. Aufl.

Restat, J., Steck, S. D., Mochnatzki, H. F., and Mallot, H. A. (2004). Geographical slant facilitatesnavigation and orientation in virtual environments. Perception, 33:667 – 687.

Page 59: Datenanlyse Mit Matlab

Kapitel 7

Bivariate Statistik und die2-dimensionale Normalverteilung

In diesem Kapitel betrachten wir die haufige Situation, dass in einer Messung gleichzeitig, d.h.fur einen Wert der unabhangigen Variablen, zwei unterschiedliche abhangige Variable x und ygemessen werden. Hier sind einige Beispiele fur diese Situation:

•”Merkmalsvektoren“: bei einem Exemplar misst man zwei (oder mehrere) Merkmale, z.B. dieLange des Hinterlaufs und die Lange der Ohrmuschel bei einer Maus, Frequenzen mehrererAllele in einer Population, Zeitdauer und Maximalamplitude eines Aktionspotentials oder dieIntensitat einer Vokalisation in verschiedenen Frequenzbandern.

• Zustandsgroßen: bei einem neuronalen Netzwerk misst man zu einem Zeitpunkt die Aktivitatzweier (oder mehrerer) Zellen. In einer Blutprobe konnte man z.B. den Sauerstoffgehalt undden Zuckergehalt gleichzeitig messen.

• Positionsmessungen: In der Ebene sind Positionsmessungen immer zweidimensional, z.B. inForm einer x- und einer y-Koordinate. Beispiele sind Messung von Blickbewegungen (Sakka-den auf geblitzte Ziele), die Gute mit der ein vorher gesehener Ort mit verbundenen Augenaufgesucht werden kann (

”walking without vision“), oder die Genauigkeit von Zeigebewegun-

gen mit dem Finger. Im Praktikum betrachten wir Zeigebewegungen mit der Computermaus.

Multivariate Messungen sind eigentlich nicht die Ausnahme, sondern die Regel. Ein Extremfall istdie Aufzeichnung von Bildern, bei der man den Intensitatswert jedes Pixels als eigene Variableauffassen kann. Wir werden im nachsten Kapitel auf solche multivariate Probleme zuruckkommen.Hier beschaftigen wir uns zunachst mit dem zweidimensionalen Fall.

7.1 Korrelation und Kovarianz

Die Messwerte im bivariaten Fall bilden zweidimensionale Vektoren der Form (xi, yi). Dabei indi-ziert i die unabhangige Variable, also etwa den Zeitpunkt, zu dem ein Systemzustand gemessenwird, die Nummer des Versuchsdurchgangs beim Zeigeversuch, oder das Mauseexemplar, dessen ta-xonomische Merkmale im Vektor zusammengefasst sind. Wir nehmen an, dass n solcher Messungenvorliegen.

Eine wichtige Kenngroße fur die Beziehung der Messgroßen zueinander ist die Kovarianz. Siebetrachtet Abweichungen der Messgroßen von ihren Mittelwerten. Weichen bei ein und dem selben

55

Page 60: Datenanlyse Mit Matlab

56 KAPITEL 7: BIVARIATE STATISTIK

Exemplar beide Messgroßen in der Regel gleichsinnig von ihrem Mittelwert ab, ist also bei un-gewohnlich großem x auch y vergroßert bzw. bei kleinem x auch y eher klein, so ist die Kovarianzpositiv. Ist das Gegenteil der Fall (großes x und kleines y bzw. kleines x und großes y), so ist sienegativ. Man schreibt:∗

cov(x, y) :=1

n

n∑

i=1

(xi − x)(yi − y); (7.1)

dabei bezeichnen

x :=1

n

n∑

i=1

xi und y :=1

n

n∑

i=1

yi (7.2)

die Mittelwerte von x und y. Durch Ausrechnen der Klammern in Gl. 7.1 erhalt man die Gleichung

cov(x, y) :=1

n

n∑

i=1

(xi − x)(yi − y) =1

n

n∑

i=1

xiyi − xy, (7.3)

die man zum praktischen Ausrechnen der Kovarianz benutzt.Die Kovarianz einer Variablen mit sich selbst bezeichnet man als Varianz; sie kann nicht negativ

werden.

var(x) := cov(x, x) =1

n

n∑

i=1

(xi − x)2 =1

n

n∑

i=1

x2i − x2. (7.4)

Normalisiert man die Kovarianz auf die Varianzen der beteiligten Variablen, so entsteht eine Große,die auf Werte zwischen −1 und +1 beschrankt ist; man bezeichnet sie als Korrelation:

cor(x, y) :=cov(x, y)

var(x) var(y). (7.5)

In Abschnitt 2.3.4 wurde dargestellt, wie man die Varianzen und Kovarianzen eines dreidimen-sionalen Datensatzes mit Hilfe einer Matrixmultiplikation aus einer 3× n Datenmatrix bestimmt.Die Rechnung liefert eine symmetrische

”Kovarianzmatrix“, auf deren Diagonale die Varianzen ste-

hen, wahrend die Kovarianzen jeweils am Kreuzungspunkt der den Variablen zugeprdneten Spaltenund Zeilen auftauchen.

7.2 Regressionsgeraden und Hauptachsen

Tragt man die zweidimensionalen Messwerte (xi, yi) in ein Diagramm ein, so erhalt man einePunktwolke. Der Mittelpunkt oder richtiger der Schwerpunkt dieser Punktwolke ergibt sich aus denMittelwerten der beiden Variablen; er hat die Koordinaten (x, y). Die Gesamtflache der Punktwolkehangt mit der Varianz und Kovarianz der Variablen zusammen, dabei gibt var(x) die Ausdehnungin x-Richtung an, var(y) die Ausdehung in y-Richtung und cov(x, y) die Abweichung der Grund-flache von dem aus den beiden Varianzen gebildeten Rechteck. Ist die Kovarianz groß, so hangendie beiden Messgroßen linear zusammen, und die Punktwolke wird entlang einer Geraden elongiertsein, die diagonal in dem von den Varianzen aufgespannten Rechteck liegt.

Will man den linearen Zusammenhang zwischen x und y aus den Daten schatzen, so gibt esdrei Moglichkeiten (vgl. Abb. 7.1):

∗Die Formel 7.1 gilt streng genommen nur fur die Grundgesamtheiten der Zufallsvariablen x und y. Hat mandagegen reale Stichproben, so ist cov(x, y) ebenfalls vom Zufall abhangig und wird bei einer exakten Wiederholungdes Experiments im Allgemeinen nicht genau gleich herauskommen. In diesem Fall kann man also nur einen Schatz-wert fur die Kovarianz bestimmen. Man kann ausrechnen, dass ein erwartungstreuer Schatzer der Kovarianz durcheine modifizierte Gleichung gegeben wird, in der man den Faktor 1

ndurch 1

n−1ersetzt. Wir werden dieses Problem

hier nicht weiter verfolgen, vgl. aber die Bemerkung nach Gl. 5.9 auf Seite 46.

Page 61: Datenanlyse Mit Matlab

7.3. EXKURS: ELLIPSEN 57

-4 -2 0 2 4

-8

-6

-4

-2

0

2

4

x

y

a.

-4 -2 0 2 4

-8

-6

-4

-2

0

2

4

x

y

b.

-4 -2 0 2 4

-8

-6

-4

-2

0

2

4

x

y

c.

Abbildung 7.1: Zweidimensionale Punktwolke. Die Daten sind zufallig aus einer zweidimensionalenNormalverteilung gezogen. a. Regressionsgerade der Regression von y auf x (vgl. Abschnitt 4.3)minimiert die vertikalen Abstande der Punkte von der Geraden. b. Regression von x auf y minimiertdie horizontalen Abstande der Punkte von der Geraden. c. Die Hauptachse minimiert die senkrechtzur Gerade gemessenen Abstande der Punkte.

1. Regression von y auf x: Dieser Fall wurde im Kapitel”Kurvenfitten“ besprochen. Man erhalt

eine Gerade, die die Abstande der Punkte in y-Richtung minimiert (Abb. 7.1a).

2. Regression von x auf y: Vertauscht man die Rollen von x und y bei der Berechnung derRegressionsgeraden, so erhalt man wiederum eine Gerade, die aber jetzt den Fehler in x-Richtung minimiert. Die beiden Regressionsgeraden sind im allgemeinen nicht gleich; sieweichen umso mehr voneinander ab, je kleiner der Korrelationskoeffizient cor(x, y) wird(Abb. 7.1b).

3. Schließlich gibt es die Moglichkeit, die Abweichung zwischen Datenpunkten und Fitgeradesenkrecht zu dieser Geraden zu messen. In diesem Fall liefert die Vertauschung von x undy die gleiche Gerade. Man bezeichnet sie als Hauptachse der Punktwolke. Nahert man diePunktwolke durch eine Ellipse an, so entspricht sie der großen Achse dieser Ellipse (Abb. 7.1c).

7.3 Exkurs: Ellipsen

Punktwolken wie die in Abb. 7.1 gezeigten kann man durch Ellipsen beschreiben, die einen be-stimmten Prozentsatz der Messpunkte einschließen. In diesem Abschnitt beprechen wir kurz dieanalytische Geometrie solcher Ellipsen, in Matrix-Darstellung. Er vertieft das Verstandnis derzweidimensionalen Normalverteilung, kann aber beim ersten Lesen ubersprungen werden.

Beliebige Ellipsen kann man sich aus einem Kreis entstanden denken, indem man nacheinanderzwei der in Abschnitt 2.3.1 bereits eingefuhrten Ahnlichkeitstransformationen auf ihn anwendet.Der Kreis wird zuerst entlang der Koordinatenachsen gestreckt oder gestaucht, wodurch eine ach-senparallele Ellipse entsteht (Abb. 7.2b). Achsenparallel soll dabei bedeuten, dass die große undkleine Achse der Ellipse entlang der x1- bzw. x2-Achse des Koordinatensystems liegen. Hatte derKreis den Radius 1, so entsprechen die Halbachsen gerade den Streckungs- bzw. Stauchungsfakto-ren der Transformation. Im zweiten Schritt wird die Ellipse dann noch gedreht, wobei die Langender Halbachsen nicht mehr verandert werden (Abb. 7.2c).

Page 62: Datenanlyse Mit Matlab

58 KAPITEL 7: BIVARIATE STATISTIK

a.

x2

x1b.

y2

y1

b.

z2z1

Abbildung 7.2: Entstehung einer Ellipse aus einem Kreis (a.) durch achsenparallele Streckung bzw.Stauchung (b.) und nachfolgende Drehung (c.) Die große und kleine Achse der Ellipse ist ebenfallseingezeichnet.

Ein Kreis um den Koordinatenursprung mit Radius 1 enthalt alle Punkte (Vektoren) der Ebene,die die Bedingung

x21 + x22 = ~x′~x = 1 (7.6)

erfullen. Als Streckung/Stauchung betrachten wir nun eine Matrix A der Form:

A =

λ1 0

0 λ2

. (7.7)

Man uberzeugt sich leicht davon, dass die Vektoren ~e1 = (1, 0)′ und ~e2 = (0, 1)′ Eigenvektorendieser Matrix sind und zwar mit den Eigenwerten λ1 bzw. λ2. Die Koordinatentransformation, dieden Ubergang von Abbildung 7.2a nach Abb. 7.2b beschreibt, lautet nun:

~x 7→ ~y := A~x. (7.8)

Wir losen diese Gleichung nach ~x auf und setzen dies in die Bestimmungsgleichung des Kreises(Gl. 7.6) ein:

(A−1~y)′(A−1~y) = 1 (7.9)

~y′(A−1)′A−1~y = 1. (7.10)

Hierbei wurde die Beziehung (AB)′ = B′A′ benutzt, die fur die Transposition allgemein gilt.Gleichung 7.10 ist die Gleichung der achsenparallelen Ellipse aus Abb. 7.2b. Wir fuhren fur die

Matrix in der Mitte des Ausdrucks 7.10 den neuen Namen M ein und erhalten:

M := (A−1)′A−1 =

1λ2

1

0

0 1λ2

2

. (7.11)

Die entsprechenden Gleichungen der Ellipse in Matrixschreibweise und konventioneller Schreibweselauten

~y′M~y = 1 ⇐⇒ y21λ21

+y22λ22

= 1. (7.12)

Hieraus ließt man ab, dass die Langen der Halbachsen der Ellipse ~y′M~y = 1 die Wurzeln derEigenwerte von M sind. M ist eine beliebige diagonale 2× 2-Matrix.

Page 63: Datenanlyse Mit Matlab

7.4. DIE ZWEIDIMENSIONALE NORMALVERTEILUNG 59

Die Drehung beschreiben wir nun durch eine Matrix

D =

cosφ sinφ

− sinφ cosφ

(7.13)

und eine Transformation~y 7→ ~z := D~y = DA~x. (7.14)

Bevor wir die Bestimmungsgleichung der Ellipse, ~y′M~y = 1, transformieren, beachten wir, dass dieInverse einer Drehmatrix mit Drehwinkel φ gleich der Drehmatrix mit Winkel −φ ist. Weiterhinist cos(−φ) = cosφ und sin(−φ) = − sinφ. Man hat daher:

D−1 =

cosφ − sinφ

sinφ cosφ

= D′. (7.15)

Die Eigenschaft D−1 = D′ ist charakteristisch fur Drehungen und Spiegelungen. Matrizen, diediese Eigenschaft erfullen, heißen unitar.

Wir setzen nun Gl. 7.14 in die Bestimmunggleichung der Ellipse ein und erhalten:

(D−1~z)′M(D−1~z) = 1 (7.16)

~z′DMD′~z = 1. (7.17)

Dies ist die allgemeine Bestimmungsgleichung einer Ellipse in Matrixschreibweise. Die MatrixDMD′ ist symmetrisch; ihre Eigenvektoren sind die Richtungen der großen und kleinen Halb-achse der Ellipse. Die Wurzeln der Eigenwerte sind die Langen der Halbachsen.

7.4 Die zweidimensionale Normalverteilung

7.4.1 Unkorrelierte Daten

Wir kehren nun zur Betrachtung einer zweidimensionalen Stichprobe (x1, y1), (x2, y2), . . . (xn, yn)zuruck. Ein besonders wichtiger Fall in praktischen Messproblemen besteht darin, dass die Großenx und y normalverteilt sind. Misst man etwa eine große Stichprobe von x und tragt die relativeHaufigkeit der erhaltenen x-Werte gegen diese x-Werte auf, so erhalt man ein Histogramm derx-Werte. In der Grundgesamtheit entspricht dem Histogramm die so genannte Verteilungsdichteoder Dichtefunktion, die fur die Normalverteilung die bekannte Form hat:

p(x) =1

2π var(x)exp

{

−1

2

(x− x)2

var(x)

}

(7.18)

Die Wurzel aus der Varianz bezeichnet man dabei auch als Standardabweichung, σ :=√

var(x).Hat jetzt y die gleiche Verteilung und sind x und y unkorreliert, so erhalt man die gemeinsame

Verteilungsdichte (in der Stichprobe: das gemeinsame Histogramm) einfach durch Multiplikationder einzelnen Dichten†:

p(x, y) =1

2π√

var(x) var(y)exp

{

−1

2

((x− x)2

var(x)+

(y − y)2

var(y)

)}

(7.19)

†Allgemein gilt, dass Daten mit unabhangigen Verteilungen auch unkorreliert sind. Nur fur die Normalverteilunggilt auch die Umkehrung: unkorrelierte, normalverteilte Daten sind auch unabhangig.

Page 64: Datenanlyse Mit Matlab

60 KAPITEL 7: BIVARIATE STATISTIK

Gleichung 7.19 beschreibt eine zweidimensionale Glockenflache uber der (x, y)-Ebene. Die Glocken-form selbst ist fur die weitere Diskussion von untergeordneter Bedeutung. Wir betrachten daherjetzt nur noch Hohenlinien der Glockenflache. Solche Hohenlinien erhalt man, wenn man p(x, y)konstant setzt. Wir wahlen po := e−1/2/(2π

var(x) var(y)) und erhalten als Gleichung der Hohen-linie:

(x− x)2

var(x)+

(y − y)2

var(y)= 1 (7.20)

Ist var(x) = var(y) =: σ2, so beschreibt diese Gleichung einen Kreis mit dem Radius σ um denSchwerpunkt der Punktwolke, (x, y). Auch alle anderen Hohenlinien sind in diesem Fall Kreise umdiesen Punkt, naturlich mit verschiedenen Radien.

Sind die Varianzen ungleich, z.B. var(x) > var(y), so erhalt man eine”achsenparallele“ Ellipse,

also eine Ellipse, deren große Halbachse horizontal (in x-Richtung) und deren kleine Halbachsevertikal (in y-Richtung) verlauft. Ist var(y) > var(x), so ist die großere Halbache vertikal. Inbeiden Fallen fallen die Halbachsen der Ellipse mit den Achsen des Koordinatensystems zusammen;schrage Ellipsen konnen bei unkorrelierten Daten nicht vorkommen. Im Allgemeinen bezeichnenwir die Hohenlinie einer zweidimensionalen Normalverteilung als Fehlerellipse.

Zum Schluss dieses Abschnitts sei noch auf die Matrix-Schreibweise der Gleichung 7.20 hinge-wiesen, die uns spater die Definition mehrdimensionaler Normalverteilungen erleichtern wird:

(x− x, y − y)

1var(x) 0

0 1var(y)

x− x

y − y

= 1 (7.21)

7.4.2 Korrelierte Daten

Im Fall korrelierter Daten wird die Ellipse, die die Punktwolke umschließt, von den Koordinaten-achsen weggedreht sein. Die Gleichungen solcher Ellipsen enthalten nicht nur Terme in x2 undy2, sondern auch einen Mischterm in xy. In der Matrix-Schreibweise (Gl. 7.21) erhalt man solcheTerme einfach, indem man die dort mit Nullen besetzen Nebendiagonalen mit den entsprechendenFaktoren besetzt. Wie schon erwahnt, wird dabei die Kovarianz eine Rolle spielen.

Ohne die Ausrechnung im Detail vorzufuhren, geben wir hier lediglich das Ergebnis an. DieFehlerellipse einer allgemeinen zweidimensionalen Zufallsvariablen hat die Form:

(x− x, y − y)

δ var(y) −δ cov(x, y)

−δ cov(x, y) δ var(x)

x− x

y − y

= 1. (7.22)

mit

δ :=1

var(x) var(y)− cov2(x, y)(7.23)

Die Matrix in Gl. 7.22 entspricht damit der Matrix DMD′ in der allgemeinen Ellipsengleichung,Gl. 7.17. Gleichung 7.22 geht in Gl. 7.21 uber, wenn die Kovarianz null wird.

Die Matrix in Gl. 7.22 ist nichts anderes als die Inverse der so genannten Kovarianzmatrix Cdes Datensatzes,

C :=

var(x) cov(x, y)

cov(x, y) var(y)

. (7.24)

Man erhalt damit die allgemeine Form der zweidimensionalen Normalverteilung:

p(x, y) =1

2π√detC

exp

{

−1

2(x− x, y − y)C−1(x− x, y − y)′

}

(7.25)

Page 65: Datenanlyse Mit Matlab

7.5. FEHLERELLIPSEN FUR STICHPROBEN 61

-6 -4 -2 0 2 4

-8

-6

-4

-2

0

2

4

x

y

Abbildung 7.3: Fehlerellipse fur die Stichprobe ausAbb. 7.1. Die lange Achse der Ellipse liegt in Rich-tung der ersten Hauptachse des Datensatzes. Im Fallnormalverteilter Daten liegen innerhalb der Ellipse39,35% der Punkte.

Dabei bezeichnet det die Determinante der Matrix,

detC = var(x) var(y)− cov2(x, y); (7.26)

sie ist ein Maß fur Gesamtvarianz der Verteilung.Gleichung 7.25 zeigt die zweidimensionale Normalverteilung in großtmoglicher Analogie zum

eindimensionalen Fall. Im Vergleich zum eindimensionalen Fall wird die Division durch die Vari-anz (im Exponenten) durch die Multiplikation mit der Inversen der Kovarianzmatrix ersetzt, dieStandardabweichung im Vorfaktor wird durch die Wurzel aus der Determinante der Kovarianzma-trix ersetzt. Setzt man im eindimensionalen Fall als Kovarianzmatrix die 1 × 1 Matrix mit demeinzigen Koeffizienten var(x) an, so gehen beide Gleichungen ineinander uber, bis auf den Nor-mierungsfaktor, der im zweidimensionalen Fall 1/(2π) lautet und im eindimensionalen Fall 1/

√2π.

Im allgemeinen, n-dimensionalen Fall lautet der Normierungsfaktor 1/√2π

n.

7.5 Fehlerellipsen fur Stichproben

Zu einer gegebenen Stichprobe kann man die Kovarianzmatrix nach den Gleichungen 7.1 - 7.4 sowie7.24 leicht ausrechnen. Die Fehlerellipse hat dann die Gleichung:

(x− x, y − y)C−1(x− x, y − y)′ = 1 (7.27)

Um diese Ellipse zu plotten, bestimmt man zunachst die Achsen. Man erhalt sie als die Eigenvek-toren der Matrix C−1. Wir bezeichnen sie mit ~e1 und ~e2. Wir zeigen jetzt, dass die Eigenvektorenvon C auch Eigenvektoren von C−1 sind. Sei also ~e ein Eigenvektor von C mit Eigenwert λ 6= 0.Man hat dann:

C~e = λ~e. (7.28)

Multipliziert man von links mit C−1, so erhalt man

C−1C~e = λC−1~e (7.29)

1

λ~e = C−1~e. (7.30)

~e ist also auch Eigenvektor von C−1, allerdings mit Eigenwert 1/λ. Da man die Eigenvektorennach der Große der zugehorigen Eigenwerte anordnet, ist der erste Eigenvektor einer 2× 2 Matrixder zweite Eigenvektor der Inversen dieser Matrix und umgekehrt.

Page 66: Datenanlyse Mit Matlab

62 KAPITEL 7: BIVARIATE STATISTIK

Fur unsere Fehlerellipse benotigen wir die Eigenwerte und Eigenvektoren von C−1. Wir brau-chen aber, wie gerade gesehen, zu ihrer Bestimmung die Inversion von C garnicht auszufuhren.Es genugt, wenn wir die Eigenvektoren und Eigenwerte von C berechnen; wir bezeichnen sie mitλ1, ~e1 und λ2, ~e2.

Wir suchen nun eine parametrische Beschreibung der Ellipse, die wir in eine Plot-Routineeingeben konnen. Dazu denken wir uns einen um den Mittelpunkt der Datenwolke umlaufendenZeiger. Zu jedem Winkel φ soll dann die Lange dieses Zeigers angegeben werden. Die Lange inRichtung des ersten Eigenvektors erhalten wir aus folgende Uberlegung:

Es sei r die gesuchte Lange, der Punkt auf der Ellipse ist also r~e1. Aus der Bestimmungsglei-chung folgt:

1 = (r~e1)′C−1(r~e1) (7.31)

=r2

λ1‖~e1‖2 (7.32)

und weiter r =√λ1. Analog bestimmt man die Lange in Richtung des zweiten Eigenvektors.

Schließlich erhalt man die Gleichung der Fehlerellipse:

r(φ) = (x, y)′ +√

λ1 cosφ ~e1 +√

λ2 sinφ ~e2. (7.33)

Wir zeichnen diese Kurve fur φ ∈ (0, 2π) uber die Datenwolke und erhalten damit die gewunschteFehlerellipse.

Fur eine zweidimensionale Normalverteilung enthalt die Fehlerellipse 39,35 % der Messwerte.Man erhalt den Wert durch Integration der Verteilungsdichte uber die Fehlerellipse. Wir betrach-ten hier die Standardnormalverteilung, bei der die Kovarianzmatrix die Einheitsmatrix ist undintergrieren uber eine Kreisscheibe mit dem Radius 1

∫ π

−π

∫ 1

0

1

2πexp{−r

2

2}rdrdφ = (7.34)

=

∫ 1

0

r exp{−r2

2}dr =

[

− exp{−r2

2}]1

0

= 1− 1√e= 0.3935. (7.35)

Eine Ellipse mit verdoppelten Halbachen enthalt nach analoger Rechnung 86,47 % der Messwerte.Zum Schluss betrachten wir noch die Flache der Fehlerellipse aus Gleichung 7.33. Sind a und

b die Halbachsen einer Ellipse, so betragt ihre Flache A = πab. Fur die Matrix-SchreibweiseGl. 7.27 gilt A = π

√detC (vgl. Gl. 7.26). Rechnet man λ1 und λ2 explizit aus, so sieht man die

Aquivalenz der beiden Definitionen. Die Flache betragt also gerade das π-Fache der Wurzel derDeterminante der Kovarianzmatrix. Diese Determinante ist damit so etwas wie die Gesamtvarianzdes Zufallsvektors (x, y).

7.6 Literatur

Rencher, A. C. (2002). Methods of Multivariate Analysis. 2. Edition. Wiley Interscience (JohnWiley and Sons). Kapitel 4.

Page 67: Datenanlyse Mit Matlab

Kapitel 8

Hauptachsentransformation

Die Hauptachsentransformation (englisch principal component analysis, PCA) ist ein Verfahren,mit dem man multivariate Daten bearbeitet, in denen sich eine Anzahl von Faktoren (Ursachen,Quellen, etc.) uberlagert. Im Allgemeinen hat man mehr Messungen als Faktoren und will diezugrundeliegenden Faktoren herausfiltern. Wir beginnen mit einigen Beispielen. Eine umfassendeDarstellung mit mathematischen Grundlagen findet man in Mardia et al. (1979) und Rencher(2002).

8.1 Beispiele

8.1.1 Durchschnittsnoten

Von einer Gruppe von n Schulern sollen Noten in m Fachern vorliegen. Pro Schuler hat manalso einen m-dimensionalen Datenvektor ~xi = (xi1, xi2, ..., xim)′. Es soll nun eine Gesamtnote proSchuler ermittelt werden. Im einfachsten Fall konnte das der Mittelwert der Noten sein, also

yi =1

m

m∑

j=1

xij =

(1

m, ...,

1

m

)

xi1...

xim

. (8.1)

Hat nun ein Schuler eine besondere Sprachbegabung, so wurde bei der Hinzunahme einer weite-ren Fremdsprache in den Facherkanon der Notendurchschnitt vermutlich besser ausfallen. Mankonnte daher gewichtete Mittelwerte betrachten, in denen zum Beispiel alle Sprachen zusammengenommen genau so viel zahlen, wie alle naturwissenschaftlichen Facher. Allgemein kann man einensolchen gewichteten Mittelwert mit Koeffizienten (Gewichten) w1, ..., wm folgendermaßen angeben

yi =

m∑

j=1

wjxij = (w1, ..., wm)

xi1...

xim

, (8.2)

wobei wir die wj stets so wahlen wollen, dass die Summe ihrer Quadrate 1 ergibt. Ist dies nicht der

Fall, so erhalten wir Gewichte im gleichen Verhaltnis, indem wir alles durch√∑

j w2j dividieren.

Bei der Festlegung der Mischungsverhaltnisse interessieren zwei Fragen:

63

Page 68: Datenanlyse Mit Matlab

64 KAPITEL 8. HAUPTACHSENTRANSFORMATION

1. Welcher Mischungsvektor ~w gibt die Variation im Datensatz am besten wieder? Bei welcherMittelung sind also gute und schlechte Schuler anhand ihrer gemittelten Note noch ausrei-chend unterscheidbar?

2. Braucht man zur befriedigenden Beschreibung der Daten neben der Angabe”gut“ vs.

”schlecht“

noch weitere Angaben, z.B.”sprachlich begabt“ vs.

”naturwissenschaftlich begabt“. Wie viele

solcher Faktoren (oder Achsen) werden benotigt?

8.1.2 Genetische Variation

In n Populationen einer Art werden Allelfrequenzen von m Allelen bestimmt. Man mochte dannwissen, ob die beobachtete Variation

”homogen“ ist, oder ob sich taxonomisch relevante Cluste-

rungen (d.h. Ko-variationen) verschiedener Gene zeigen.Fur jede Population erhalt man einenm-dimensionalen Merkmalsvektor, den man sich als Punkt

in einemm-dimensionalen”Merkmalsraum“ denkt∗. Kann man nun zwei Unterarten unterscheiden,

so sollten die Merkmalsvektoren der zugehorigen Populationen in zwei getrennten Clustern imdiesem Merkmalsraum liegen. Die Richtung, entlang derer die Cluster separiert sind, ist ein Vektor~w im Merkmalsraum, hat also gerade so viele Komponenten, wie Allele untersucht wurden. Dahier nur die Richtung interessiert, definieren wir ~w wie oben als Einheitsvektor,

∑w2

j = ~w′ ~w = 1.Projiziert man die Datenpunkte auf die durch ~w definierte Ursprungsgerade, so erhalt man zweiHaufungspunkte, die den beiden Unterarten entsprechen. Die Projektion entspricht mathematischdem Skalarprodukt (vgl. Kapitel ??):

yi := ~w′~xi =m∑

j=1

wjxij (8.3)

Hierbei wird man ~w so wahlen, dass die Projektionen der Datenvektoren moglichst weit streuen,dass also die Varianz der yi maximal wird.

Cavalli-Sforza et al. (1994) zeigen mit dieser Methode, dass die genetische Variation innerhalbder Art Homo sapiens keinen taxonomischen Wert hat.

8.1.3”Spike-sorting“

Bei extrazellularen elektrophysiologischen Ableitungen fuhrt man eine Elektrode in das Gewebe einund zeichnet dann elektrische Aktivitaten auf, die u.a. auf Aktionspotentiale von Zellen zuruckge-hen, die sich in der Nahe der Elektrode befinden. Die zeitlichen Verlaufe solcher Aktionspotentialeverschiedener Zellen unterscheidenen sich von einander, je nach dem, wie weit die Zelle von derElektrode entfernt ist, ob die Elektrode naher zum Dendriten, zum Soma, oder zum Axon liegt,usw. Außerdem gibt es zufallige Schwankungen des Verlaufes der Aktionspotentiale jeder einzelnenZelle. Hat man nun eine Ableitung mit einer Anzahl n von Aktionspotentialen, so mochte manwissen, von wievielen verschiedenen Zellen die Potentiale stammen und jedes Potential einer derZellen zuordnen.

Wir gehen davon aus, dass keine zeitlichen Uberschneidungen zweier oder mehrerer Aktions-potentiale auftreten. Man definiert dann zunachst die genauen Anfangszeitpunkte der Aktionspo-tentiale und teilt den folgenden Zeitbereich von ca. 2 Millisekunden in m Schritte ein. Jedes der ngemessenen Potentiale liefert dann einen m-dimensionalen Datenvektor (xi1, . . . xij) = ~xi. Gesuchtist die Anzahl der abgeleiteten Zellen und eine Schatzung ihrer Potentialverlaufe fur den gleichen

∗Einen m-dimensionalen Raum kann man sich fur n > 3 naturlich nicht vorstellen. Die Unterscheidung von mDimensionen heißt hier, dass der Datenvektor zumindest im Prinzip auf m unabhangige Weisen variieren kann,namlich fur jedes betrachtete Allel.

Page 69: Datenanlyse Mit Matlab

8.1. BEISPIELE 65

in m Schritten abgetasteten Zeitbereich von 2 ms. Um diese zu bestimmen, muss man zunachstgeeignete Beschreibungsmerkmale fur die Aktionspotentiale finden, anhand derer die verschiedenenZellen unterschieden werden konnen. Solche Beschreibungsmerkmale (engl. features) definiert manmittels m-dimensionaler Vektoren ~wl, indem man als Merkmale die Projektionen der Messwerteauf diese Vektoren bestimmt:

ylj := ~w′l~xj =

m∑

j=1

wljxij (8.4)

Wie in den vorherigen Beispielen ist man wieder an Projektionen interessiert, durch die die ymoglichst weit auseinander zu liegen kommen (vgl. Lewicki 1998).

8.1.4 Allometrie

Wir geben eine vereinfachte Version eines Beispiels aus Mardia (1979; Seite 241f).Bei einer Stichprobe von 54 Apfelbaumen werden zwei Variable gemessen:

x∗: Stammdurchmessery∗: Gesamthohe des Baumes

Da beide Variable in ganz verschiedenen Großenordungen variieren, ist es sinnvoll, sie auf ihreVarianzen zu normieren. Wir bilden die mittelwertfreien Variablen

x :=x∗ − x

σx∗

und y :=y∗ − y

σy∗

. (8.5)

Da hier bereits durch die Standardabweichungen dividiert wurde, bilden wir nun die zur Kovari-anzmatrix analoge Korrelationsmatrix, die in der Stichprobe folgende Werte annimmt:

CR :=

var(x) cor(x, y)

cor(x, y) var(y)

=

1, 0 0, 5

0, 5 1, 0

(8.6)

Wir konnen an diesem Beispiel einmal das Eigensystem der Matrix CR elementar berechnen.Naturlich gibt es hierfur eine Funktion in MatLab.

Sei λ ein Eigenwert und ~e ein Eigenvektor, so gilt

CR~e− λ~e = 0 oder

1, 0− λ 0, 5

0, 5 1, 0− λ

e1

e2

= 0.

Aus der Formulierung auf der rechten Seite folgt, dass die Determinante der Matrix verschwindenmuss, (1−λ)2− 1/4 = 0. Man erhalt die Losungen λ1,2 = 1± 0, 5. Fur die Bestimmung der Eigen-vektoren setzt man eine der beiden Losungen fur λ ein und lost das enstehende Gleichungssystemmit zwei Unbekannten. Das Endergebnis ist:

λ1 =3

2; ~e1 =

1√2

1

1

(8.7)

λ2 =1

2; ~e1 =

1√2

1

−1

(8.8)

Man interpretiert dieses Ergebnis so, dass man die Baume durch zwei unabhangige Großen be-schreiben kann, namlich einer aus Stammdurchmesser und Wuchshohe gebildeten

”Starke“ x + y

Page 70: Datenanlyse Mit Matlab

66 KAPITEL 8. HAUPTACHSENTRANSFORMATION

λ′1 = 0.4036 λ′2 = 0.3981 λ′3 = 0.0018 λ′4 = 0.3017 λ′5 = 0.0016 λ′6 = 0.0016

Abbildung 8.1: Oben: Beispiele aus einer Stichprobe von Bildern mit jeweils 16× 16 = 256 Pixeln.Unten: Die ersten sechs Hauptkomponenten des Datensatzes. λ′i := λi/

∑256i=1 λi.

mit λ1/(λ1 + λ2) = 75 % der gesamten Varianz und einem”Formfaktor“ x − y mit 25 % der

gesamten Varianz. Die neuen Variablen sind unkorreliert. Man bezeichnet daher diese Rechnung(Koordinatentransformation auf das Eigensystem der Korrelations- oder Kovarianzmatrix) auchals Dekorrelation.

8.1.5 Bilder als multivariate Daten

Schwarz-weiße Bilder sind Anordnungen von Pixeln, deren Intensitatswerte als Komponenten ei-nes hochdimensionalen Vektors ausgefasst werden konnen. Wir werden spater noch genauer uberBildverarbeitung sprechen, betrachten hier aber schon einmal ein einfaches Beispiel.

Haufig ist man nun an der Frage interessiert, ob sich die Reprasentanten einer Bildklasse alsSuperposition weniger

”Urbilder“ mit wechselnden relativen Anteilen erklaren lassen. Wenn das so

ist, braucht man z.B. bei der Datenubertragung nur noch diese Anteile zu ubertragen und kanndamit die Ubertragung beschleunigen. Ein Beispiel zeigt Abbildung 8.1. Hier reichen zwei Bilderim Wesentlichen aus, um die Variation im Datensatz zu erklaren; die verbleibende Variation ist

Page 71: Datenanlyse Mit Matlab

8.1. BEISPIELE 67

Rauschen und kann bei Kenntnis der Hauptkomponenten leicht unterdruckt werden. Auch beianderen Aufgaben wie etwa bei der Klassifikation ist diese Rauschunterdruckung von Vorteil.

Die”Urbilder“ geben immer die Abweichung vom Mittelwert der Stichprobe an, wobei der Mit-

telwert pixelweise, also als mittleres Bild, verstanden wird. Dementsprechend konnen die”Urbilder“

negative Werte annehmen, da ein gegebenens Bild sowohl nach oben als auch nach unten von die-sem Mittelwert abweichen kann. In Abb. 8.1 ist das Mittelwertsbild nicht gezeigt. Die

”Urbilder“

in der unteren Reihe sind so dargestellt, dass ein mittleres Grau dem Wert 0 entspricht.Bei Bilddaten muss man beachten, dass die Bilder, wie bei den ubrigen Beispielen auch, als

Vektoren und nicht etwa als Matrizen zu betrachten sind. In Matlab formt man sie daher in eineeinfache Liste um, indem man die einzelnen Bildzeilen hintereinanderhangt. Hinterher benotigt mandann eine Operation, die aus solchen Vektoren wieder Bilder macht, um die Ergebnisse darstellenzu konnen.

In diesem Sinne konnen wir Bilder wieder als Datenvektoren mit Dimension m auffassen; imBeispiel der Abb. 8.1 ist m = 16 × 16 = 256. Wir bezeichnen die gesuchten

”Urbilder“ mit ~el,

l = 1, ..., k, und fordern, dass diese Bilder”orthogonal“ sein sollen. D.h. es soll gelten

~e′i~ej = 0 fur alle i 6= j. (8.9)

Die Rekonstruierbarkeit der gemessenen Bilder aus den Urbildern ist im Sinne einer gewichtetenUberlagerung (Superposition) der Urbilder gemeint. Es soll also gelten:

~xi ≈ ~µ+

k∑

l=1

ail~el (8.10)

oder genauern∑

i=1

‖~xi − ~µ−k∑

l=1

ail~el‖ → minimal (8.11)

fur geeignete Koeffizienten ail. Mit ~µ := (∑n

i=1 ~xi)/n bezeichnen wir das mittlere Bild. Die ent-sprechenden Urbilder und Koeffizienten findent man mit Hilfe der Hauptachsentransformation.

In der Bildverarbeitung wendet man die Hauptachsentransformation auf Datensatze kleinerBilder an, die durch Zerteilen großerer Bilder gewonnen wurden. Die Hauptkomponenten sinddann Bildmerkmale oder features, nach denen man Bilder analysiert (so genannte Karhunen-Loeve-Transformation). In einem Beispiel aus der Wahrnehmungsforschung wendet man die Hauptachsen-transformation auf ganze Bilder, speziell Bilder von Gesichtern, an, um so

”Merkmalsdimensionen“

wie z.B. mannlich/weiblich; jung/alt; europaisch/asiatisch etc. zu definieren (Valentin et al. 1997,Calder & Young 2005).

8.1.6 Zusammenfassung

Aus diesen Beispielen ergeben sich drei Grundanwendungen der Hauptachentransformation. Dieseschließen sich nicht gegenseitig aus, gehen aber auf leicht verschiedene Fragestellungen ein.

• Identifikation von”Faktoren“ oder relevanten Variablen. Diese Intention liegt den Beispielen

”Notengeben“ und

”Allometrie“ zugrunde. Die Faktoren sind die Hauptachen selbst.

• Klassifikation. In den Beispielen aus der Genetik und der Spike-Klassifizierung wurden diemit den Faktoren assoziierten Werte fur die Klassifikation herangezogen.

• Datenreduktion. In vielen Fallen kann man davon ausgehen, dass die hoheren Hauptachsenkein Signal sondern den Messfehler widerspiegeln (Bildverarbeitung, Spike-Sorting). In die-sem Fall erzeugt die Projektion auf den Unterraum der ersten k Hauptachsen eine optimaleDimensionsreduktion der Daten, also eine mit minimalem Informationsverlust.

Page 72: Datenanlyse Mit Matlab

68 KAPITEL 8. HAUPTACHSENTRANSFORMATION

- x - ~e1

- x - y

6z

6~e2

6

y

6z

Abbildung 8.2: Projektion von dreidimensionalen Daten auf zweidimensionale Ebenen. Links: DieProjektionen auf die Koordinatenebenen ((x, y), (x, z) und (y, z)) zeigen jeweils nur drei Punkt-haufen. Die Projektion auf eine optimal separierende Ebene (aufgespannt durch ~e1 und ~e2) zeigtdagegen vier Punkthaufen. Rechts: Tatsachliche Anordnung der Punkthaufen im dreidimensionalenRaum. Die optimal separierende Ebene liegt schrag in diesem Raum.

8.2 Merkmalsraume, Projektionen und Rekonstruktionen

Gemeinsam ist den angefuhrten Beispielen, dass hochdimensionale Datenvektoren vorliegen, dieman nicht mehr einfach in einem Diagramm visualisieren kann. Der zugehorige Merkmalsraum, inBeispiel 8.1.5 ist das ein 256-dimensionaler Zahlenraum, kann naturlich nicht mehr sinnvoll aufge-zeichnet werden. Alles, was man noch zeichnen kann, sind Projektionen; dabei ist es entscheidend,die richtigen Projektionsachsen zu finden.

Es sei ~xi = (xi1, xi2, ..., xim)′ ein Vektor aus unserem m-dimensionalen Datensatz und ~w =(w1, w2, ..., wm)′ ein beliebiger Vektor in diesem Raum, von dem wir wieder annehmen wollen, dasser die Lange (Norm) 1 hat. Es gilt also

‖~w‖ =

m∑

j=1

w2j = 1. (8.12)

Die Projektion von ~xi auf ~w ist nun der Punkt auf der durch den Ursprung in Richtung ~wverlaufenden Geraden, der dem Punkt ~xi am nachsten kommt. Fallt man von ~xi aus ein Lot aufdie Gerade, so trifft sie es gerade an diesem Punkt.

Es ist ubrigens hilfreich, sich klar zu machen, dass die Projektion in vielen Dimensionen genausoablauft wie in zweien. Das liegt daran, dass ~xi und die Gerade immer in einer Ebene liegen, dieman sich herauszeichnen kann. Damit ist das Problem auf zwei Dimensionen reduziert.

Die Projektion von ~xi auf ~w erhalt man mit Hilfe des Skalarproduktes, vgl. Gl. 1.6:

P : ~xi 7→ ai ~w = (~x′i ~w)~w =

m∑

j=1

xijwj

~w. (8.13)

Dabei bezeichnet P die Projektionsoperation. Ist z.B. ~w ein Koordinatenvektor, z.B. ~w = (1, 0, 0, ...0)′,so ist P (~xi) = x1i. Die Projektion liefert also gewissermaßen die Koordinate des Punktes in Bezugauf die Achse ~w. Wir bezeichnen diese Koordinate mit ai.

Page 73: Datenanlyse Mit Matlab

8.3. DURCHFUHRUNG DER HAUPTACHSENTRANSFORMATION 69

Projiziert man alle n Datenvektoren auf den gleichen Vektor ~w, so erhalt man n Zahlen(a1, ..., an). Im Allgemeinen mochte man, dass diese Zahlen moglichst verschieden sind, dass alsodie Varianz der Projektion groß ist.

Projektionen hangen eng mit Koordinatentransformation zusammen. Wir betrachten hierzu einBeispiel im zweidimensionalen Raum. Wir bezeichnen die Koordinatenachsen mit den Buchstaben

~u1 :=

1

0

und ~u2 :=

0

1

. (8.14)

Offenbar gilt ~u′1~u1 = 1, ~u′

2~u2 = 1 und ~u′1~u2 = 0. Man sagt, ~u1 und ~u2 bilden eine orthonormale

Basis. Die Komponenten eines Vektors ~x = (x1, x2)′ erhalt man dann formal durch Projektion des

Vektors auf die Koordinatenachsen:

x1 := ~x′~u1 und x2 := ~x′~u2. (8.15)

Umgekehrt kann man ~x als Summe der Basisvektoren darstellen:

~x = x1~u1 + x2~u2. (8.16)

Beide Eigenschaften einer Basis bleiben erhalten, wenn man zu beliebigen, aufeinander senkrechtstehenden Basisvektoren ~e1, ~e2 mit Lange 1 ubergeht. In diesem Fall kann man die Projektionswerte

y1 = ~x′~e1 und y2 := ~x′~e2 (8.17)

also auch benutzen, um den Vektor ~x zu”rekonstruieren“:

~x = y1~e1 + y2~e2. (8.18)

Dieser Zusammenhang zwischen Projektion und Rekonstruktion, der eine Konsequenz der Ortho-normalitat der Basis ist, gilt in beliebig vielen Dimensionen. In den Beispielen war meist vonProjektionsproblemen die Rede, im Fall der Bildrekonstruktion aus Urbildern aber auch von Re-konstruktion. Beide Probleme sind uber den Begriff der Koordinatentransformation verbunden.

8.3 Durchfuhrung der Hauptachsentransformation

Wir haben die Mathematik im Wesentlichen schon im vorigen Kapitel besprochen, und brauchendies hier nicht zu wiederholen. Die Hauptachsentransformation ist eine Koordinatentransformationim Datenraum, bei der die Koordinatenachsen mit den Hauptachsen des Fehlerellipsoids in Uber-einstimmung gebracht werden. Dabei wird die Numerierung der Achsen so vorgenommen, dassdie Achse mit der hochsten Datenvarianz die Nummer 1 bekommt, die mit der zweithochsten dieNummer 2 und so fort.

Wir stellen jetzt die Schritte zur Durchfuhrung der Hauptachsentransformation zusammen:

8.3.1 Datenmatrix

Wir gehen aus von einer Anzahl n von m-dimensionalen Datenvektoren

~x1 = (x11, x12, . . . x1m)

~x2 = (x21, x22, . . . x2m)

...

~xn = (xn1, xn2, . . . xnm)

Page 74: Datenanlyse Mit Matlab

70 KAPITEL 8. HAUPTACHSENTRANSFORMATION

Wir berechnen als nachstes den mittleren Datenvektor

~µ =1

n

(n∑

i=1

xi1,

n∑

i=1

xi2, ...,

n∑

i=1

xim

)

(8.19)

Wir ziehen nun die Mittelwerte von den xij ab und erhalten so genannte mittelwertsfreie Daten.Mittelwertsfrei bedeutet naturlich nicht, dass die Daten keinen Mittelwert haben, sondern dassdieser null wird. Wir verwenden weiter den Buchstaben x, gehen aber davon aus, dass

i xij nunfur alle j verschwindet. Im Beispiel mit den Noten bedeutet dies, dass statt der tatsachlichen Noteneines Schulers nur noch seine individuelle Abweichung vom Mittelwert uber alle Schuler betrachtetwird.

Die mittelwertsfreien Daten ordnen wir in eine Datenmatrix

D =

x11 x12 . . . x1m

x21 x22 . . . x2m...

......

xn1 xn2 . . . xnm

(8.20)

Man erhalt dann die Kovarianzmatrix des Datensatzes aus der Beziehung

C =1

nD′D (8.21)

(vgl. Abschnitt 2.3.4).An dieser Stelle sollte man sich davon uberzeugen, dass C tatsachlich eine m ×m-Matrix ist

und nicht etwa eine n× n-Matrix. Dieser Fehler tritt auf, wenn man D und D′ verwechselt hat.

8.3.2 Eigensystem

Als nachstes bestimmt man das Eigensystem von C. Wir erinnern noch einmal an die Definition:Ein Eigenvektor ~e einer m×m-Matrix M ist ein m-dimensionaler Vektor mit der Eigenschaft:

M~e = λ~e mit λ ∈ IR. (8.22)

Die Zahl λ ist der zu ~e gehorige Eigenwert. Ist ~e Eigenvektor, so auch jedes Vielfache von ~e.Wir legen daher fest, dass wir unter Eigenvektoren stets Einheitsvektoren verstehen wollen. Einesymmetrische m ×m-Matrix wie die Kovarianzmatrix kann maximal m verschiedene Eigenwertehaben; die zugehorigen Eigenvektoren sind in diesem Fall paarweise orthogonal zueinander. Sindzwei Eigenwerte λi, λj gleich, so ist jeder Vektor a~ei+b~ej Eigenvektor; man erhalt eine Eigenebene.

Die Eigenvektoren ~ej , j = 1, ...,m sind die gewunschten optimalen Achsen fur die Projektion.Ergebnis der Projektion von Datenvektor ~xi auf Hauptachse ~ej sind die Werte aij . Die zu denHauptachsen gehorigen Eigenwerte λj geben die nach der Projektion jeweils noch erhaltene Varianzan. Der erste Eigenvektor, d.h. der mit dem großten Eigenwert erhalt also die meiste Varianz. Wirstellen die wichtigten Begriffe noch einmal zusammen:

1. Eigenvektoren der Kovarianzmatrix ~e1, ..., ~emAndere Bezeichnungen: Hauptachsen, Hauptkomponenten, principal componentsEigenschaften: Die Hauptachsen sind m-dimensionale Einheitsvektoren. Im Fall normalver-teilter Daten sind die Hauptachsen die Achsen des Fehlerellipsoids. Sie stehen immer senk-recht aufeinander, d.h. es gilt ~e′i~ej = 0 fur alle i 6= j und ~e′i~ei = 1 fur alle i. Da es genau

Page 75: Datenanlyse Mit Matlab

8.4. LITERATUR 71

so viele Hauptachsen gibt, wie der Datenraum Dimensionen hat (namlich m), definieren dieHauptachsen eine orthonormale Koordinatentransformation.

Die Hauptachsen habe die gleiche Dimension wie die Datenvektoren und konnen daher wieDatenvektoren behandelt werden. Hauptachsen des Bilddatensatzes aus Abb. 8.1 sind al-so wieder Bilder, Hauptachsen eines Datensatzes von Spikeverlaufen sind wieder zeitlicheVerlaufe und so fort. Dies ist besonders fur die konstruktive Interpretation der Hauptacheninteressant, wo man Datenvektoren durch Uberlagerung der Haupachsen approximiert.

2. Projektion des Datenvektors ~xi auf die Hauptachse ~ej:Die aij , definiert durch

aij = (~xi · ~ej), (8.23)

sind Zahlen, die als Koordinaten des Datenvektors ~ei in dem durch die Hauptachsen gebilde-ten Koordinatensystem aufgefasst werden konnen. In der englischsprachigen Literatur werdensie als

”scores“ bezeichnet. Die zweidimensionalen Plots in Abb. 8.2 heißen dementsprechend

”score-score-plot“.

Wegen der Orthonormalitat der Hauptachsen gilt die Rekonstruktionsformel:

~xi =

m∑

j=1

aij~ej (8.24)

3. Eigenwerte λi der KovarianzmatrixDie Eigenwerte der Kovarianzmatrix sind gleich der Varianz der Projektionen auf den zu-gehorigen Eigenvektor:

var aj = λj (8.25)

Die Summe der Eigenwerte ist die gesammte Varianz des Datensatzes.

4. DimensionsreduktionDie Hauptachsentransformation ist zunachst eine Koordinatentransformation und reduziertdaher die Anzahl der Dimensionen nicht. Will man jedoch Dimensionen weglassen, und dabeimoglichst wenig Information (also Datenvarianz) verlieren, tut man das am besten, indemman die Hauptachsen mit den kleinsten λ-Werten streicht. Ein allgemeines Verfahren, wieman feststellt, welche Dimensionen noch berucksichtigt werden sollten und welche man strei-chen kann, gibt es nicht. Eine Moglichkeit besteht darin, so viele Dimensionen zu betrachten,dass die Summe der berucksichtigten Eigenwerte z.B. 90 % der Gesamtsumme der Eigenwertebetragt. Etwas systematischer ist es, die λ-Werte in abfallender Reihe in einem Saulendia-gramm darzustellen und dann im Verlauf der Einhullenden einen

”Knick“ zu suchen, d.h. ein

λk mit der Eigenschaft dass alle λi mit i > k ungefahr gleich λk sind. Das bedeutet, dass dieResiduen ~xi −

∑kj=1 aij~ej eine ungefahr kugelformige Punktwolke bilden.

8.4 Literatur

Calder A.J., Young, A. W. (2005) Understanding the recognition of facial identity and facialexpression. Nature Reviews Neuroscience, 6:641-651

Cavalli-Sforza, L. L., Menozzi, P., and Piazza, A. (1994). The history and geography of humangenes. Princeton University Press, Princeton, NJ.

Lewicki, M. S. (1998). A review of methods for spike sorting: the detection and classification ofneural action potentials. Network: Computation in Neural Systems, 9:R53 – R78.

Page 76: Datenanlyse Mit Matlab

72 KAPITEL 8. HAUPTACHSENTRANSFORMATION

Mardia, K. V., Kent, J. T., and Bibby, J. M. (1979). Multivariate Analysis. Academic Press,London.

Rencher, A. C. (2002). Methods of Multivariate Analysis. John Wiley, New York. 2. Aufl. 2002.Kapitel 12.

Valentin, D., Abdi, H., Edelman, B., and O’Toole, A. J. (1997). Principal component and neuralnetwork analysis of face images: What can be generalized in gender classification? Journal ofMathematical Psychology, 41:398 – 413.

Page 77: Datenanlyse Mit Matlab

Kapitel 9

Fourier-Analyse

9.1 Periodische Funktionen

9.1.1 Spannungsverlaufe

Periodische Funktionen treten in vielen Zusammenhangen auf und sind bei der Analyse vonzeitabhangigen Variablen von großter Bedeutung. Als Beispiele disktieren wir Spannungsverlaufe,wie sie etwa in einem Dynamo oder Generator produziert werden. Die Periode ist in diesem Falldurch eine Umdrehung des Generators gegeben ist. Fur periodische Funktionen gilt allgemein

U(t+ T ) = U(t) fur alle t (9.1)

Hierbei ist T die Periodendauer. Offenbar folgt sofort U(t+ nT ) = U(t) fur n ∈ IN.

Sinusspannung

Die wichtigste Funktion zu Beschreibung von Spannungsverlaufen ist die Sinus-Funktion,

U(t) = Uo sin(ωt+ ϕ) (9.2)

Hierbei ist Uo die Amplitude, ϕ die Phase und ω die so genannte Kreisfrequenz. Da die Periodedes Sinus

”naturlicherweise“ 2π oder 360◦ betragt, schwingt die Spannung genau dann einmal pro

Zeiteinheit, wenn ω = 2π betragt. Die Einheit der Frequenz ist das Hertz; 1 Hz entspricht einerSchwingung pro Sekunde. Man verwendet folgende Bezeichnungen fur die Frequenz:

f = 1T = ω

2π Frequenz (Hz = 1/s)

T = 1f = 2π

ω Periodendauer (s)

ω = 2πT = 2πf Kreisfrequenz (rad/s)

(9.3)

Rechteckspannung

Als Rechteckspannung bezeichnet man im Intervall [0, T ] den Verlauf

U(t) =

Uo fur 0 ≤ t < τ

0 fur τ ≤ t < T. (9.4)

73

Page 78: Datenanlyse Mit Matlab

74 KAPITEL 9. FOURIER-ANALYSE

a.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

b.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

c.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

d.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

Abbildung 9.1: Approximation of the “box function” (Equation 9.6 with ω = 1) by a Fourier-sine-series (Equation 9.8). For explanations see text.

Außerhalb des Intervalls wird die Funktion periodisch fortgesetzt. Das Verhaltnis von Einschaltzeitund Gesamtzeit, τ/T bezeichnet man als Tastverhaltnis (duty cycle). Die Rechteckspannung hateinen Gleichspannungsanteil von Uoτ/T , den man durch Subtraktion eliminieren kann. Man sprichtdann von bimodaler Rechteckspannung.

Allgemeine periodische Funktionen

Allgemeine periodische Funktionen werden haufig als Summen von Sinus- und Kosinuswellen aus-gedruckt. Dass dies moglich ist, ist das zentrale Ergebnis der Theorie der Fourier-Reihen, auf diewir in diesem Kapitel noch weiter eingehen. Man nennt solche Summen auch

”trigonometrische

Polynome“ und schreibt:

pn(x) :=ao2

+n∑

k=1

ak cos kωx+n∑

k=1

bk sin kωx. (9.5)

Dabei ist ω/2π die”Grundfrequenz“; die anderen auftretenden Frequenzen kω/2π sind Vielfache

dieser Grundfrequenz und werden als”Harmonische“,

”Obertone“ oder

”Oberwellen“ bezeichnet.

Diese Bezeichnung stammt aus der Akustik, wo die Hohe eines Tons durch die Grundfrequenzgegeben ist, wahrend die Verteilung der Obertone die Klangfarbe betimmt. Spielt man also etwaden Kammerton a1 auf dem Klavier, auf einer Flote, singt man ihn auf dem Vokal A oder O,so hat man stets die gleiche Grundfrequenz von 440 Hz, jedoch eine andere Zusammensetzungder Obertone. Diese Zusammensetzung wird durch die Koeffizienten ak und bk bestimmt; manbezeichnet sie auch als

”(Klang-)Spektrum“.

Page 79: Datenanlyse Mit Matlab

9.2. FOURIER-REIHEN 75

Der Begriff Spektrum stammt ursprunglich aus der Optik, wo man durch die Zerlegung einesMischlichtes mit einem Prisma die einzelnen spektralen Komponeten, also elektromagnetischenSinuswellen bestimmter Frequenzen, trennen kann. Mischlichter konnen beliebige Frequenzen ent-halten, sind also nicht auf ganzzahlige Vielfache einer Grundfrequenz beschrankt. In Der Fourier-Analyse wird der Begriff Sprektum generell fur die Gesamtheit der Koeffizienten der Sinus- undKosinuskomponenten eingesetzt

9.2 Fourier-Reihen

Wir werden in den nachsten Kapiteln sehen, dass dies erhebliche Vorteile fur verschiedene Ana-lyseverfahren hat. Hier betrachten wir zunachst kurz die Theorie (vgl. Tolstov 1962, Bracewell1986).

9.2.1 Beispiele

Wir beginnen mit der bereits besprochenen Rechteckfunktion mit Tastverhaltnis 1/2,

b(x) :=

1 if mod(x, T ) < T/2

0 else(9.6)

(see Figure 9.1). It can be approximated by a series of sine waves given by the equation

gn(x) =1

2+

2

πsin νx+

2

3πsin 3νx+ . . .+

2

(2n− 1)πsin(2n− 1)νx (9.7)

=1

2+

2

π

n∑

k=1

sin(2k − 1)νx

2k − 1(9.8)

Here, we have used the frequency

ν :=2π

T. (9.9)

We call such series (including also cosine values) “trigonometric polynomials” or Fourier series.Fig. 9.1 shows the first steps of that series, i.e. the functions g1(x) (Fig. 9.1a) through g4(x)(Fig. 9.1d). In the lower part of each panel, the next term of the sum is shown which is thenaccumulated to the overall approximation in the following panel. For each x satisfying mod (x, T ) 6=0.5 and mod(x, T ) 6= 1, i.e. for each x where b(x) is continuous, the series converges towards thetrue functional value:

limn→∞

gn(x) = b(x). (9.10)

Figure 9.2 shows a slightly more general case where the sinusoids needed to reconstruct thesignal have different phases. The periodic function is now a random noise functionon the interval[0, 1], which is periodically repeatet along the real axis. The relevance of the phases of the sinusoidalcomponents can be seen by checking the value at x = 1 of the correction term (lower sinusoid ineach panel); while this is zero for all frequencies in Fig. 9.1, the value now changes from panel topanel.

Page 80: Datenanlyse Mit Matlab

76 KAPITEL 9. FOURIER-ANALYSE

a.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

b.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

c.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

d.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

e.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

f.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

g. 0 0.5 1 1.5 2-0.2

0

0.2

0.4

0.6

0.8

1

1.2

h.0 0.5 1 1.5 2

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

Abbildung 9.2: Approximation of an arbitrary periodic function by a Fourier-series. For explana-tions see text.

Page 81: Datenanlyse Mit Matlab

9.2. FOURIER-REIHEN 77

��

����

bk

akAk

φk

Abbildung 9.3: Geometrical interpretation of the re-lation of the quantities ak, bk, Ak and φk as describedin 9.18.

9.2.2 Finding the coefficients

So far, we have seen that trigonometric polynomials can approximate continuous functions. Asalready mentioned above, we may write the general form of such polynomials as

pn(x) :=ao2

+n∑

k=1

ak cos kνx+n∑

k=1

bk sin kνx. (9.11)

Here, ν/2π is again the fundamental frequency of the signal, i.e. pn repeats itself with a wave-lengthof T = 2π/ν.

How can we find the coefficients ak, bk? If we assume that every continuous periodic functioncan in fact be written as a trigonometric polynomial (a fact that we do not prove here), we canfind the coefficients by exploiting the so-called orthogonality relations of sinusoids which hold forall k, l > 0:

∫ 2π

0

sin kx sin lx dx =

π if k = l

0 if k 6= l(9.12)

∫ 2π

0

cos kx cos lx dx =

π if k = l

0 if k 6= l(9.13)

∫ 2π

0

sin kx cos lx dx = 0 (9.14)

With these relations, we obtain:

ak =2

T

∫ T

0

g(x) cos kνx dx; k ∈ {0, 1, 2, . . .} (9.15)

bk =2

T

∫ T

0

g(x) sin kνx dx; k ∈ {1, 2, 3, . . .} (9.16)

We call ak the Fourier-sine coefficient for the frequency kν and bk the Fourier-cosine coefficient forthe frequency kν.

Clearly, if g(x) = sinmνx, i.e., if the original function is a sine, we have ak = 0 for all k, bm = 1,and bk = 0 for all k 6= m.

9.2.3 Complex notation

For each frequency, the sine and cosine components in Eq. 9.11 add up to a general sinusoidal ofthe form

fk(x) = ak cos kνx+ bk sin kνx =: Ak cos(kνx− φk) (9.17)

Page 82: Datenanlyse Mit Matlab

78 KAPITEL 9. FOURIER-ANALYSE

Joint amplitude and phase can be obtained from the addition theorems of trigonometry. Simplecalculation yields:

Ak =√

a2k + b2k

φk = arctanakbk. (9.18)

The notations can be simpified by the use of complex numbers. Complex numbers arise inalgebra from solving quations like x2 +1 = 0. The solution of this equation, i.e. the square root of−1 is called the imaginary unit i =

√−1. Complex numbers are linear combinations of a real and

an imaginary part,z = a+ ib (9.19)

where a = Re(z) and b = Im(z) are real numbers.In the summing operation, complex numbers behave like two-dimensional vectors,

z1 + z2 = (a1 + ib1) + (a2 + ib2) = a1 + a2︸ ︷︷ ︸

Re(z1+z2)

+i (b1 + b2)︸ ︷︷ ︸

Im(z1+z2)

. (9.20)

Multiplication, however, turns out to be somewhat more tricky:

z1z2 = (a1 + ib1)(a2 + ib2) = a1a2 + ia1b2 + ia2b1 + (i)2b1b2

= a1a2 − b1b2︸ ︷︷ ︸

Re(z1z2)

+i (a1b2 + a2b1)︸ ︷︷ ︸

Im(z1z2)

. (9.21)

To each complex number z = a + ib is associated a socalled complex conjugate z∗ = a − ib.From the above multiplication rule, it follows that zz∗ = a2+b2, a real number. The square root ofzz∗ is called the absolute value or modulus of z. In the 2D vector analogy, it is the squared lengthof the vector.

The usefulness of complex numbers in Fourier theory rests on Euler’s formula extending theexponential function to complex numbers:

exp{iϕ} = cosϕ+ i sinϕ (9.22)

exp{z} = exp{Re(z)}(cos Im(z) + i sin Im(z)) (9.23)

Euler’s formula can be inverted to

cosϕ =1

2

(eiϕ + e−iϕ

)(9.24)

sinϕ =1

2i

(eiϕ − e−iϕ

). (9.25)

The crucial step is now to switch from sinusoidal functions to complex exponentials by theabove formulae. For each individual frequency, we obtain:

fk(x) = ak cos kνx+ bk sin kνx = Ak cos(kνx− φk) (9.26)

= c−k exp{−ikνx}+ ck exp{ikνx}. (9.27)

Finally, eq. 9.11 reduces to

pn(x) :=

n∑

k=−n

ck exp{ikνx} (9.28)

Page 83: Datenanlyse Mit Matlab

9.3. NON-PERIODIC FUNCTIONS: THE FOURIER TRANSFORM 79

with

co =ao2

=

ck =1

2(ak − ibk)

c−k =1

2(ak + ibk).

We will use the complex notation in the sequel.

9.3 Non-periodic functions: the Fourier transform

The generalization to non-periodic functions is mathematically difficult, but intuitively quite easy,if we consider functions of increasing period length T . For a given T , for example T = 2π, we havecoefficients at the multiples of the wave length ν = 2π/T = 1,

ω = kν =2kπ

T∈ {1, 2, 3, 4, 5, . . .}. (9.29)

If the period is twice as long, T = 4π, we obtain ν = 1/2 and

ω = kν =2kπ

T∈ {1

2, 1,

3

2, 2,

5

2, . . .}. (9.30)

In the end, if the period is infinite (i.e. if the function is no more periodic at all), we get a“coefficient” for every value of ω, i.e. a function of frequency. Switching back to the complexnotation, we thus obtain the Fourier transform:

g(ω) :=

∫ ∞

−∞

g(x) exp{iωx}dx. (9.31)

By the same token, the trigonometric series becomes:

g(x) :=1

∫ ∞

−∞

g(ω) exp{−iωx}dx (9.32)

Eq. 9.31 is called the Fourier forward transformation and Eq. 9.32 the Fourier backward trans-formation. Applying both in a sequence reconstructs the original function as long as this wascontinuous and its square was integrable.

The function g(ω) in Eq. 9.31 is a complex function of the real argument ω. By Euler’s formula(Eq. 9.22) the complex number g(ωo) = gc(ωo) + igs(ωo) for each ωo gives the amplification andphase shift of the component with spatial frequency ωo. If only the spatial frequencies present ina pattern are to be considered, one often uses the so-called power spectrum of g, i.e. the squareof the absolute value (modulus) of ω. A famous theorem in Fourier theory states that the powerspectrum equals the Fourier transform of the autocorrelation function given by:

Φgg(y) :=

g(x)g(x+ y)dx, (9.33)

in formal notation:Φgg(ω) = |g(ω)|2 = gg∗. (9.34)

We will discuss the autocorrelation function in more detail in the chapter on time series.

Page 84: Datenanlyse Mit Matlab

80 KAPITEL 9. FOURIER-ANALYSE

ω

Imf(ω)

Ref(ω)a. ω

Imf(ω)

Ref(ω)b.

Abbildung 9.4: Complex Fourier transform of an excentric Gaussian, exp{−(x− xo)2}. a. 3D plot

showing the complex functional values of each frequency ω as “vectors”, or pointers in the complexplane. b. Real and imaginary parts of the same function shown separately. The lengths of thepointers in Fig. a correspond to the power of the signal (Fourier transform of autocorrelation). Theangle of the pointer in the complex plane is the Fourier phase.

9.4 Fourier-transforms in two and more dimensions

The Fourier transform generalizes to functions of two or more variables, such as images or spatio-temporal intensity distributions. The sinusoidal must in this case be replaced by a plane wave,e.g.

sin(ωxx+ ωyy) = sin(~ω · ~x). (9.35)

Intuitively, these plane waves look like corrugated surfaces or wash-boards whose contour linesform a set of parallel straight lines. The orientation of theses contour lines is orthogonal to the

vector (ωx, ωy), the separation of wave peaks (wave length) is 2π/√

ω2x + ω2

y.

The Fourier transform then becomes a complex function of two or more real frequency variables:

g(ωx, ωy) :=

∫ ∞

−∞

∫ ∞

−∞

g(x, y) exp{i(ωxx+ ωyy)}dxdy. (9.36)

Each point in the frequency plane (ωx, ωy) corresponds to one plane wave.

9.5 Summary

1. Every (sufficiently) continuous function can be unambiguously and reversibly represented byits Fourier transform:

forward: g(ω) :=

g(x) exp{iωx}dx, (9.37)

backward: g(x) :=1

g(ω) exp{−iωx}dx.

The real and imaginary part of g are also called the Fourier cosine and Fourier sine transforms.Intuitively, Equation 9.37 says that every continuous function can be represented as the sumof sine and cosine functions.

2. (Shift theorem.) Let g(x) be a function with Fourier transform g(ω) and s ∈ IR a numberspecifying a shift of g. The shifted version of g, gs(x) := g(x+ s) has the Fourier transform

gs(ω) = exp{−iωs}g(ω) (9.38)

Page 85: Datenanlyse Mit Matlab

9.6. REFERENCES 81

9.6 References

Bracewell, R. N. (1986). The Fourier transform and its applications. McGraw-Hill, New York, 2.edition.

Tolstov, G. P. (1962). Fourier Series. Prentice-Hall, Inc., Englewood Cliffs, NJ.

Page 86: Datenanlyse Mit Matlab

Kapitel 10

Time Series Analysis

10.1 Time series

A series of measurements taken over a continuous temporal variable, either at regular or at arbitraryintervals, is called a time series. We will use both the continuous formulation x(t) for some timeinterval (to, t1) and a sequence notation xi, i = 1, 2, ....

The idea of time series analysis is to find regularities in time series and, mostly in stock markedapplications, to predict future development of these series. Here, we are not so much interested inpredictions, but in identifying underlying rules. Both problems are, however, related since regula-rities can be used to make predictions. We start by constructung some typical series.

10.1.1 White noise

Assume a time series is sampled at distrete times yielding the values

x1, x2, x3, ... (10.1)

We assume that each value is drawn from a fixed random distribution. For example, we could tossa coin at each time and set xt to 1 or 0 depending on the outcome of the coin toss. In this case, itis clear that the values at time t and time t+1 will be uncorrelated, as will be all combinations xtand xt+τ . Generally, a time series satisfying this condition, i.e., the uncorrelatedness of neighboringpoints, is called a white noise process.

Uncorrelatedness can be obtained with the described binary distribution (the coin toss) as wellas with other random distributions from which the individual xi are drawn. The most importantnoise process is Gaussian white noise where the value at each instant in time is drawn from anormal distribution. The motivation for the term “white” noise will become clear below.

If we add up the individual xi values iteratively, we obtain a new time series yi defined by

y0 = 0 (10.2)

yi = yi−1 + xi =i∑

j=1

xj

This time series is called a (one-dimensional) random walk. Two-dimensionmal random walks canbe defined analoguously and can be used to model chance level in experiments measuring animaltrajectories.

82

Page 87: Datenanlyse Mit Matlab

10.1. TIME SERIES 83

0 0.5 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

0 0.5 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

time frequency

value

Abbildung 10.1: Discrete white noise processes (left) and the underlying distributions (right). Top:uniform distribution in the intervall (−0.5, 0.5). Bottom: normal duistribution (“Gaussian whitenoise”) with standard deviation 0.3.

10.1.2 Variance

The variance of the random distribution, from which the individual samples are drawn, is also thevariance of the random process. Throughout this chapter, we will assume that the average valueof the time series is zero. We consider the values of x obtained at different instances of time assamples and obtain the variance

γx := limT→∞

1

T

∫ T

0

x2(t)dt (10.3)

or, in discrete notation

γx := limN→∞

1

N

N∑

i

x2i . (10.4)

Usually, the limit is not actually evaluated but replaced by some sufficiently large value of T . Wecan ignore the particular choice of T altogether as long as we are only interested in the positionof peaks in the auto- and crosscorrelation functions decribed below. In the following text, we willnot be strict with the time interval as long as no confusions can arise.

10.1.3 Moving averages

Consider a new time series yi generated from the white noise process by the following rule:

yi =1

2(xi + xi−1) (10.5)

Page 88: Datenanlyse Mit Matlab

84 KAPITEL 10. TIME SERIES ANALYSIS

Clearly, this is not a white noise process, since samples yi = (xi + xi−1)/2 and yi+1 = (xi+1 + xi)share the component xi. The series yi is a low-pass filtered version of the original series xi. Eq. 10.5can be considered a discrete convolution of the series (xi)i with the kernel ( 12 ,

12 ). Of course, other

smoothing schemes can be described by choosing appropriate convolution kernels. Low-pass filteredversions of a white noise process are sometimes called pink noise.

10.1.4 Point processes

If the random process can only take the values zero or one, an alternative way of representing it isby reporting the time steps, where a one occured. For example, the series 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1would thus be represented as 1, 4, 5, 9, 10, 12. This type of random process is called a point processsince it give the point in time, where something happend, without specifying the event itself. Anexample from physics is radioactive decay. In biology, point processes arise in the description ofspike series or behavioral events.

A related scheme is counting the number of subsequent zeros until the next value of one occurs(“runlength encoding”). For eample, the series 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1 would thus be representedas (1, 3, 1, 4, 1, 2). Clearly, this is most appropriate for series where ones are rare as compared tothe time rate of sampling.

10.1.5 Markov chains

In Section 2.3.3, we have already seen an example for a markov chain, i.e. an random process swit-ching between discrete states (the pub visited by the student) with fixed probabilities of transition.Markov chains are a general tool for the analysis of behavior and, in particular, in speech proces-sing. Here, the discrete states are the sylables produced by the subject and sylable recognition isguided by known or estimated transition probabilities between sylables.

As compared to the example from Section ??, a general Markov chain is defined by the rule thatthe probability distribution of the state xi at time i depends on the previous outcome xi−1 andmaybe earlier outcomes xi−k. However, the range of previous states affecting the current state istlimited by some threshold kmax. Earlier outcomes do not affect the current probabilities. GeneralMarkov chains may thus involve higher order transition matrices and continuous outcomes.

An example for a Markov chain with continuous outcome and kmax = 1 is the random walkdescribed in Section 10.1.1.

10.2 Periodicity: The Autocorrelation function

An important property of a time series concerns its internal dependencies: how strong does a valueat time t depend on values taken at time t−1, t−2, or generally at time t−τ . As often in statistics,we replace dependency with correlation and study the autocorrelation function

Φxx(τ) :=

x(t)x(t− τ)dt, (10.6)

or, in discrete notation,

Φxx(τ) :=∑

i

xixi−τ . (10.7)

The integral is taken over the available data set. Since we are usually interested only in peaks ofthe autocorrelation function, normalizing factors are not important.

Page 89: Datenanlyse Mit Matlab

10.2. PERIODICITY: THE AUTOCORRELATION FUNCTION 85

x(t)

x(ω)

Φxx(t)

Φxx(t) = ‖x(ω)‖2

-autocorrelation

modulus squared-? ?

Fouriertransform

Fouriertransform

Abbildung 10.2: Auto-correlation and powerspectrum, illustratingthe Wiener-Khinchintheorem.

Properties

1. Φxx(τ) takes its maximal value at shift τ = 0.

Φxx(0) ≥ Φxx(τ) for all τ . (10.8)

This is due to the fact that the maximal similarity between x(t) and x(t−τ) is of course obtai-ned for τ = 0. If a normalization is needed, it is often convenient to consider Φxx(τ)/Φxx(0).Indeed, when ignoring the normalization factor, Φxx(0) is simply the variance γX of the signalas defined in Eq. 10.3.

2. The auto-correlation function is symetric,

Φxx(−τ) = Φxx(τ). (10.9)

3. If x(t) is periodic with length T , the autocorrelation function will also be periodic with lengthT , i.e. it will have a peak at t = T .

4. Let y(t) be a shifted version of x(t), i.e. y(t) = x(t+ a). Then, the autocorrelation functionsof x and y are the same. This implies for example, that the autocorrelations of the sine andthe cosine function are the same. In both cases, the first peak outside the cordinate origin willappear at T = 2π/ω, indicating the frequency of the sinusoidal. The phase (sine vs. cosine)is lost.

5. The Fourier transform of the autocorrelation function equals the absolute value (modulus)of the complex Fourier transfrom of x:

Φxx(ω) = ‖x(ω)‖2 (10.10)

(Wiener∗- Khinchin† theorem). This function is also known as the power spectrum (dt: Lei-stungsdichtespektrum) of x. For an illustration of this theorem, see Fig. 10.2.

6. If x is a white noise process, x(t) will be uncorrelated with x(t − τ) for all τ 6= 0, i.e.Φxx(0) = 1 and Φxx(t) = 0 for all t 6= 0. The Fourier transform of this so-called impulsefunction, i.e. the power spectrum of the white noise process, is a constant, indicating that alltemporal frequencies are included in the process. This is why the name “white” noise waschoosen in the first place. Similiarly, low-pass filtering of a white noise process reduces thehigher frequencies, leading two a higher relative content of low frequencies. In analogy to thevisual spectrum where low frequencies appear red, such noise processes are sometimes calledpink.

∗Norbert Wiener, 1894-1964.†Alexandr Yakovlevich Khichin, 1894-1959.

Page 90: Datenanlyse Mit Matlab

86 KAPITEL 10. TIME SERIES ANALYSIS

Application

The main application of both the autocorrelation function and the power spectrum is to findperiodicities in time series. As compared to simple Fourier transform, it has the advantage ofneglecting phase differences, i.e. periodicities in the sine and cosine components both contributeto the same peak.

10.3 Influences between two time series: Crosscorrelation

If two simultaneous time series are considered, x(t) and y(t), say, one may be interested to knowwhether the x(t) influences y(t) or the other way round. This can be studied by the crosscorrelationfunction:

Φxy(τ) :=1

√γxγy

x(t)y(t− τ)dt. (10.11)

Again, integration is taken over the biggest available interval.

Properties

1. The autocorrelation defined above can be considered the crosscorrelation of a function withitself. The crosscorrelation function does not generally peak at zero.

2. The symmetry relation generalizes to:

Φxy(−τ) = Φyx(τ). (10.12)

In general, therefore, the crosscorrelation function is not symmetric.

3. If y(t) follows x(t) with some delay a, i.e., y(t) = x(t− a), the crosscorrelation function of xand y will have a peak at τ = −a.

Φxy(τ) :=

x(t)y(t− τ)dt =

x(t)x(t− τ − a)dt = Φxx(τ + a) (10.13)

Φxy(−a) = Φxx(0). (10.14)

This is the most important property of the cross-correlation function. If x drives y with somedelay, this delay can be detected as an off-zero peak in Φxy.

4. There exists also a relation to the Fourier transforms of x and y, expressed in complex numbernotation:

Φxy(ω) = x(ω)y(ω)∗ (10.15)

Here, the asterisk denotes the complex conjuate, i.e. (a+ib)∗ = (a−ib). Since (a+ib)(a−ib) =a2 + b2, eq. 10.15 is consistent with eq. 10.10.

Φxy is sometimes called the cross-spectrum.

Application

Cross-correlations are frequently applied in the analysis of multiple spike trains. If a peak is foundin the cross-correlation of spike trains from two different cells, it is often assumed that the leadingcell is driving the trailing cell. However, correlations may also arise from common input withoutdirect connectivity between the cells.

Page 91: Datenanlyse Mit Matlab

10.4. THE POISSON PROCESS 87

The cross-spectrum is used to define synchrony between EEG signals from multiple corticalareas. A typical definition of coherence in EEG is

Cohxy(ω) :=Φxy(w)

2

Φxx(w)Φyy(w). (10.16)

This function can be integrated within each of the typical EEG frequency bands (e.g., α = 8−13 Hz,β = 13− 30 Hz).

10.4 The Poisson process

As another application of time series analysis, we consider data giving the times of occurence ofan event. Examples for such point or signal processes include the measurement of the occurence ofa behavior (e.g. the interruption of a light beam by an animal passing by), the reported “flipping”of the perception of a bistable figure such as the Necker cube, or neural spike trains.

Many such data can be described by Poisson‡ processes, which can be thought of as a generali-zation of binomial distribution for rare events. In the case of the Poisson process (rather than thePoisson distribution), the argument is as follows.

Consider a short time interval ∆t. We require that the probability of an event occuring in thattime interval is

p1(∆t) = λ∆t for λ > 0. (10.17)

The subscript 1 in p1 indicates that one and only one event ist to take place in the interval ∆t.Eq. 10.17 states that the probability for an an event occuring in a given interval is proportional tothe length of the interval. This will not hold for long intervals, since more than one event are thenlikely to occur and p1 will therefore decrease.

A second requirement states that events do not occur in pairs or triplets etc., but independentof each other. Therefore, the probability that more than one event occurs during a short intervallis zero,

po(∆t) + p1(∆t) = 1. (10.18)

These two requirements define the Poisson process. It is possible to proove that the distributionof the variable Xt, i.e. the number of events occuring from time zero to time t, has the distribution

P (Xt = i) =(λt)i

i!exp(−λt). (10.19)

Here, i! is the factorial, i.e. i! = i × (i − 1) × (i − 2) × ... × 2 × 1, 0! = 1! = 1. Eq. 10.19 is thestandard Poisson distribution with parameter λt. Mean and variance of this distribution are equaland take the value of the parameter, i.e. λt. The derivation of the distribution function from therequirements can be found in Fisz (1980), Section 8.3.

Eq. 10.19 describes the number of events occuring in a time interval from 0 to t. In measure-ments, we are often not so much interested in this number than in the interval, or pauses betweenevents. Let τk be the time of occuring of the kth event. We can then measure an interval preceedingthe kth event. Its length is Uk = τk−τk−1. Note that while Xt is a discrete random variable, takingvalues 1, 2, 3, ..., Uk is a continuous variable with positive real values. We note without proof thatthe probability density function of U is given by

p.d.f.(τ) = λ exp{−λτ} (10.20)

(cf. Fisz 1980, problem 8.13.3). The probability density function can be approximated in measu-rements by histograms of the frequency of various interval durations.

‡Simeon Denis Poisson, 1781-1840

Page 92: Datenanlyse Mit Matlab

88 KAPITEL 10. TIME SERIES ANALYSIS

10.5 References and suggested reading

Fisz M. (1980) Wahrscheinlichkeitsrechung und mathematische Statistik, 10. Auflage. Berlin: VEBDeutscher Verlag der Wissenschaften.

Shumway RH, Stoffler DS. (2000) Time Series Analysis and Its Applications. New York: Springer.

Page 93: Datenanlyse Mit Matlab

Kapitel 11

Lineare Systemtheorie∗

11.1 Linear systems

In systems theory, a system is defined as a mapping assigning to each input function an outputfunction. The term mapping was defined in Section 3.1 as a generalization of the notion of afunction, where the range and the domain are not number sets. In the case of s system, range anddomain are sets of functions, the input being in the domain set and the output being in the rangeset. In functional analysis, such systems are also known as “operators”. They are closely relatedto vector-valued functions of multiple variables. In these, the variable vector can be interpreted asa sampling of the input function and the functional value as a sampling of the output function.

...

11.2 Elektronische Schaltkreise

11.2.1 Passive Schaltelemente

Bisher haben wir freie Ladungen in elektrischen Feldern betrachtet. In der Elektrotechnik hat mandagegen immer Ladungen, die sich in Leitern bewegen. Das andert nichts an den grundsatzlichenBegriffen, fuhrt aber dazu, dass Stromflusse in Schaltkreisen betrachtet werden mussen. SolcheSchaltkreise enthalten neben Leitern verschiedene Schaltelemente, die man in passive und aktiveeinteilt. Passive Schaltelemente sind linear, d.h. sie reagieren auf die Summe zweier Spannungs-verlaufe mit der Summe der Antworten, die sie auf die einzelnen Spannungsverlaufe geben wurden(Superpositionsprinzip). Die wichtigsten passiven Schaltelemente sind Widerstand, Kondensator,und Spule.

Ohmscher Widerstand

Als Leiter bezeichnet man Stoffe, in denen Ladungstrager relativ frei beweglich sind. In metalli-schen Leitern werden diese Ladungstrager durch Elektronenen geliefert, die sich im so genanntenLeitungsband, einer energetischen Anregunsstufe befinden, in der eine solche Verschiebung moglichist. In Halbleitern sind die Ladungstrager fester gebunden. In Elektrolyten sind die LadungstragerIonen, z.B. Na+ oder Cl−.

∗Dieses Kapitel ist noch unter Bearbeitung

89

Page 94: Datenanlyse Mit Matlab

90 KAPITEL 11. LINEARE SYSTEMTHEORIE

Grundsatzlich gilt fur Leitung in Materialien das Ohmsche Gesetz, nach dem der durch denLeiter fließende Strom der anliegenden Spannung proportional ist:

U = RI. (11.1)

Der Proportionalitatsfaktor R heißt (Ohmscher) Widerstand; seine Einheit ist das Ohm. In einemWiderstand von einem Ohm fließt bei einer Spannung von einem Volt ein Strom von einem Ampere.

Statt des Widerstandes gibt man zuweilen auch seinen Kehrwert an, den man als Leitfahigkeitbezeichnet; Einheit ist das Siemens, das einfach der Kehrwert des Ohm darstellt.

Der Widerstand kann intuitiv als eine Art Reibung verstanden werden, die beim Fließen desStromes uberwunden werden muss. Hangt man mehrere Widerstande hintereinandern (

”in Serie“),

so addieren sich die einzelnen Widerstande zu einem Gesamtwiderstand. Schaltet man sie parallel,so dass der Strom durch mehrere Pfade gleichzeitig fließen kann, sinkt der Gesamtwiderstandentsprechend ab. In gleicher Weise steigt der Widerstand beim Verlangern eines Leitungsdrahtesan, wahrend er beim Verdicken des Drahtes absinkt.

Durch den Stromfluss im Widerstand warmt dieser sich auf, es entsteht Ohmsche Warme.Ausgehend von der Definition der Leistung, N = UI, erhalt man aus dem Ohmschen Gesetz:

N = RI2 und N =U2

R− (11.2)

Kondensator

Ein Kondensator besteht im Prinzip aus zwei parallel gegeneinander gestellten Leiterplatten, diedurch einen Isolator getrennt sind. Legt man nun eine Spannung an die beiden Platten an, so fließtzunachst ein Strom in die Platten hinein. Die zugehorigen Ladungen sammeln sich in den Plattenund ziehen sich uber den isolierten Zwischenraum hinweg vermoge der Coulombchen Kraft an. DieLadung, die ein Kondesator pro von außen angelegter Spannung speichern kann, nennt man seineKapazitat, C. Ihre Einheit ist das Farad (1 Farad = 1 Coulomb/Volt).

Q =

∫ t2

t1

I(t)dt = CU (11.3)

Kondensatoren wirken bei Gleichstromen einfach als Isolator. Bei Wechselstromen jedoch be- undentladen sie sich im Rhythmus des Vorzeichenwechsels und sind daher fur die Dynamik von großerBedeutung.

Kapazitaten treten naturlich z.B. an biologischen Membranen auf, die selbst isolierend sindund zwei ionenleitende Medien voneinander trennen (Hodgkin-Huxley-Theorie des Aktionspoten-tials). Wichtig sind auch die Kapazitaten von Polarisationsschichten an Elektroden (Ubergang vonIonen- auf Elektronenleitung), die bei der Interpretation elektrophysiologischer Messergebnisseberucksichtigt werden mussen.

Spule (Induktivitat)

Wechselstrome erzeugen um sich herum ein wechselndes Magnetfeld, das seinerseits in den Leiternwieder einen Strom induziert. Der Effekt ist besonders stark fur hohe Frequenzen und Leiter, diezu Spulen aufgewickelt sind. Die in einer Spule selbst induzierte Spannung ist proportional derAbleitung des Stroms. Die Proportionalitatskonstant heißt

”Induktivitat“ L und hat die Einheit

Henry (1 Henry = 1 Volt × Sekunde / Ampere = 1 Ohm × Sekunde).

Uind(t) = LdI(t)

dt(11.4)

Page 95: Datenanlyse Mit Matlab

11.2. ELEKTRONISCHE SCHALTKREISE 91

Tabelle 11.1: Zusammenfassung: passive Schaltelemente

Spannung Strom

Widerstand UR(t) = RIR(t) IR(t) =1RUR(t)

Kondensator UC(t) =1

C

IC(t)dt IC(t) = CdUC(t)

dt

Spule UL(t) = LdIL(t)

dtIL(t) =

1

L

UL(t)dt

Fur bioelektrische Phanomene spielen Induktivitaten keine Rolle. Wichtig sind sie jedoch in ver-schiedenen Messgeraten, z.B. im Kernspintomographen oder im Magnetencephalographen, sowiefur die transcranielle Magnetstimulation.

11.2.2 Stromkreise

Kirchhoffsche Regeln

In elektronischen Schaltungen, wie auch zur Erklarung bioelektrischer Vorgange, betrachtet man inder Regel Stromkreise, die aus Leitern und den o.a. passiven Schaltelementen bestehen. Daruber-hinaus kommen vor allem in der Elektronik Halbleiterelemente oder Rohren hinzu, die sich nichtpassiv verhalten. Wir betrachten zunacht die Grundregeln solcher Schaltungen.

Topologisch kann man in Schaltungen Knoten und Schleifen oder Maschen unterscheiden. Kno-ten befinden sich jeweils an Verzweigungen von Leitern oder zwischen zwei Schaltelementen. Formalkonzentriert man dann Widerstand, Kapazitat und Induktivitat des Leiters in ein Schaltelementund behandelt die Verbindungslinien im gezeichneten Schaltkreis als ideale Leiter mit Widerstand,Kapazitat und Induktivitat null. Maschen sind geschlossene Leiterzuge mit den eingeschlossenenSchaltelementen. Aus den grundlegenden Erhaltungssatzen der Physik leitet man die beiden Kirch-hoffschen Regeln ab:

• Knotenregel: Jedem Knoten einer Schaltung muss ebensoviel Ladung zu- wie abfließen. DieSumme aller in den Knoten gerichteten Strome ist null,

k

Ik = 0. (11.5)

Wertet man dabei in den Knoten gerichtete Strome positiv, so muss man abfließende Stromenegativ werten und umgekehrt.

• Maschenregel: Die Summe aller Spannungsabfalle an den Bauelementen, aus denen die Ma-sche besteht, ist null,

k

Uk = 0. (11.6)

Auch hier muss man beachten, dass der Umlaufsinn, in dem die Spannungsabfalle gerechnetwerden, fest gehalten wird, entweder im Uhrzeigersinn oder entgegengesetzt.

Mit Hilfe der Kirchhoffschen Regeln lassen sich Bestimmungsgleichungen fur Netzwerke auf-stellen, aus denen das Verhalten des Schaltkreises vorhergesagt werden kann.

Page 96: Datenanlyse Mit Matlab

92 KAPITEL 11. LINEARE SYSTEMTHEORIE

Widerstandsnetze

Serienschaltung Abb. 11.4a zeigt einen Schaltkreis mit zwei Widerstanden in Serie (hinterein-ander geschaltet). Uo und Io sind die anliegende Spannung und der insgesamt fließende Strom. Ausder Kirchhoffschen Maschenregel ließt man ab:

U1 + U2 − Uo = 0.

Aus der Knotenregel folgtI1 = I2 = Io

oder, durch Einsetzen des Ohmschen Gesetzes

U1

R1=U2

R2und weiter

U1

U2=R1

R2.

Die Spannung verteilt sich als im Verhaltnis der beiden Widerstande. Kombiniert man Knoten-und Maschengleichung, so folgt

U1 =R1

R1 +R2Uo

U2 =R2

R1 +R2Uo (11.7)

Man bezeichne die Schaltung aus Abb. 11.4a auch als Spannungsteiler. Realisiert man dieWiderstande z.B. durch einen langen, schlechten Leiter, so kann man beliebige Teilungsverhalt-nisse herstellen, indem man mit einem Schleifkontakt an verschiedenen Stellen des Widerstandesdie Spannung abgreift. Die Teilwiderstande vor und hinter dem Schleifkontakt sind dann die Wi-derstande R1 und R2. Man bezeichnet solche Bauteile als Potentiometer.

Der Gesamtwiderstand zweier hintereinander geschalteter Widerstande ergibt sich, indem mandas Ohmsche Gestz auf die Maschenregel U1 + U2 = Uo anwendet:

R1I1 +R2I2 = Uo =: RgesIo.

Wegen I1 = I2 = Io (Knotenregel) folgt:

Rges = R1 +R2. (11.8)

Die Additivitat von hintereinander geschalteten Widerstanden hatten wir bei der Einfuhrung desspezifischen Widerstandes bereits benutzt.

Parallelschaltung Fur die Parallelschaltung, Abb. 11.4b, gilt wiederum aus den KirschhoffschenRegeln

Uo = U1 = U2

Io = I1 + I2.

Fur den Gesamtwiderstand erhalt man

1

Rges=IoUo

=I1Uo

+I2Uo

=1

R1+

1

R2

oder

Rges =R1R2

R1 +R2.

Page 97: Datenanlyse Mit Matlab

11.3. LINEARE ELEKTRONISCHE FILTER 93

RC-Glied

Ein RC-Glied besteht aus einem Wiederstand und einer Kapazitat in Serie. Aus der Maschenregelliest man ab: UR + UC = Uo; aus der Kontenregel entsprechend: C dUC

dt = UR

R . Ist Uo konstant(Gleichspannung), so wird wegen der Isolatoreigenschaft des Kondensators kein Strom fließen, Io =0. Hangt jedoch Uo von der Zeit ab (Wechselspannung), so kann man aus den beiden Gleichungeneine Differentialgleichung fur die Abhangigkeit von UR und UC von t angeben. Wir werden dieseFrage in Kapitel 11 wieder aufgreifen.

11.3 Lineare elektronische Filter

11.3.1 Schaltungen

Als elektronische Filter† bezeichnet man Bauelemente oder Schaltungen, die aus einem Signal be-stimmte Komponenten

”herausfiltern“, wahrend andere unverandert durchgelassen werden. Der

Gedanke, dass ein Signal aus Komponenten aufgebaut ist, auf die das Filter unterschiedlich rea-giert, fuhrt zuruck auf die Fourier-Analyse, die eine solche Zerlegung des Signals in Komponentendarstellt.

Wir betrachten zunachst noch einmal das RC-Glied, das wir bereits in Kapitel ?? eingefuhrthatten. Fur die Spannung UC , die uber dem Kondensator anliegt, hatten wir dort die Gleichung

dUC

dt=

1

τ(U(t)− UC(t)) (11.9)

mit der Zeitkonstante τ = RC hergeleitet. Schaltet man einen Gleichstrom U(t) = Uo ein, so falltdie Spannung anfanglich uber dem Widerstand ab. Mit dem Laden des Kondensators steigt jedochauch die dort anliegende Spannung, wahrend der Stromfluss und damit der Spannungsabfall uberdem Widerstand sinkt. Der Kondensator wirkt also als so genannter

”leaky integrator“, ahnlich

einem leckenden Reservoir, in das Wasser stromt. Man bezeichnet solche Filter auch als Tiefpasse.In der Neurobiologie bezeichnet man derartiges Verhalten auch als

”tonisch.“

Betrachtet man im RC-Glied den Spannungsabfall uber dem Widerstand, UR, so erhalt mananalog die Differentialgleichung

dUR

dt= −1

τUR +

dU

dt. (11.10)

Hier misst man eine Spannung vor allem in der Anfangsphase nach dem Einschalten, d.h. allgemeinbei einer Anderung der Eingangsspannung. Solche Systeme heißen Hochpasse; Neurone, die sichso verhalten, nennt man

”phasisch“.

Beide Gleichungen beschreiben Zusammenhange zwischen Funktionen. Liegt zum Beispiel eineSpannung U(t) an, so misst man uber dem Kondensator einen anderen Spannungsverlauf UC(t).Wir schreiben UC(t) = DU(t). Dabei bezeichnet D einen Operator, also eine Abbildung von einerFunktion auf eine andere. Dieser Operator ist linear, d.h. es gilt:

D(U1 + U2) = D(U2) +D(U2) (11.11)

D(λU) = λD(U) fur alle λ ∈ IR (11.12)

Dabei ist zu beachten, dass U1 und U2 hier nicht Zahlen sondern Funktionen sind, also ganzeSpannungsverlaufe.

†In technischen Zusammenhangen sagt man meist”das“ Filter.

Page 98: Datenanlyse Mit Matlab

94 KAPITEL 11. LINEARE SYSTEMTHEORIE

11.3.2 Antwort auf einen Sinusreiz

Im Fall einer konstant anliegenden Spannung und eines Schalters, der zum Zeitpunkt t = 0 ge-schlossen wird, kann man die beiden Gleichungen leicht durch Einsetzen geeigneter Exponential-funktionen losen (vgl. Kapitel ??). Um die Antwort auf einen Sinusreiz zu berechnen, benotigen wirzunachst ein Hilfsresultat uber die Summe eines Sinus und eines Kosinussignals gleicher Frequenz:

a sinωt+ b cosωt (11.13)

Wir definieren hierzu die neuen Großen

ϕ := arctanb

aund A :=

a2 + b2. (11.14)

Man hat sofort:

a = A cosϕ und b = A sinϕ (11.15)

Damit konnen wir die Summe 11.13 umschreiben

a sinωt+ b cosωt = A(cosϕ sinωt+ sinϕ cosωt) (11.16)

= A sin(ωt+ ϕ). (11.17)

Die Gleichheit mit der rechten Seite ergibt sich jetzt aus dem bekannten Additionstheorem fur denSinus, sin(α+ β) = sinα cosβ + cosα sinβ. Mit ψ := arctan a/b = π/2− ϕ erhalt man analog:

a sinωt+ b cosωt = A cos(ωt− ψ). (11.18)

Mit Hilfe diese Resultats konnen wir nun eine wichtige Eigenschaft der Sinusfunktion beweisen:legt man eine sinusformige Spannung an die Hoch- und Tiefpasse der Abb. 11.6 an, erhalt manwieder sinusformige Verlaufe, allerdings mit veranderter Phase und Amplitude. Die Frequenz andertsich nicht. Tatsachlich ist dies eine allgemeine Eigenschaft linearer, zeitinvarianter Systeme.

Wir setzen also als zeitabhangige Spannungsquelle (Eingangsspannung) an

U(t) = Uo sinωt (11.19)

und erwarten die Losungen

UR,C = AUo sin(ωt+ ϕ). (11.20)

Tiefpass. Einsetzen in die Gleichung des Tiefpasses, Gl 11.9, ergibt:

ωAUo cos(ωt+ ϕ) =Uo

τsinωt− AUo

τsin(ωt+ ϕ) (11.21)

Wir kurzen nun Uo heraus, sammeln die Terme mit (ωt+ ϕ) auf die linke Seite und substituierenωt+ ϕ =: α:

ωA cosα+A

τsinα =

1

τsin(α− ϕ). (11.22)

Vergleich mit Gl. 11.17 liefert:

ω2A2 +A2

τ2=

1

τ2⇒ A =

1√1 + ω2τ2

(11.23)

ϕ = − arctanωτ (11.24)

Page 99: Datenanlyse Mit Matlab

11.3. LINEARE ELEKTRONISCHE FILTER 95

Hochpass. Einsetzen in die Gleichung des Hochpasses, Gl 11.10, ergibt:

ωAUo cos(ωt+ ϕ) = −AUo

τsin(ωt+ ϕ) + ωUo cos(ωt) (11.25)

Wir kurzen nun Uo heraus, sammeln die Terme mit (ωt+ ϕ) auf die linke Seite und substituierenωt+ ϕ =: α:

ωA cosα+A

τsinα = ω cos(α− ϕ). (11.26)

Vergleich mit Gl. 11.18 liefert:

ω2A2 +A2

τ2= ω2 ⇒ A =

ωτ√1 + ω2τ2

(11.27)

ϕ = arctan1

ωτ(11.28)

Bemerkung. Formal einfacher geht das mit komplexen Zahlen, unter Verwendung der Euler-schen Formel:

eiφ = cosφ+ i sinφ. (11.29)

Wir fuhren die Rechnung hier fur den Tiefpass noch einmal durch. Sei U(t) = Uoeiωt; wir erwarten

dann die Losung UC = zUoeiωt fur eine komplexe Konstante z. Einsetzen in Gl. 11.9 liefert:

izωUoeiωt =

1

τ(uoe

iωt − zUoeiωt). (11.30)

Der Faktor Uoeiωt kurzt sich jetzt einfach heraus und wir erhalten

izω =1

τ(1− z) (11.31)

und weiter

z =1

1 + iωτ=

1− iωτ

1 + ω2τ2. (11.32)

Den letzten Schritt bezeichnet man als”Rationalmachen des Nenners“ durch Erweiterung des

Bruches mit der konjugiert Komplexen 1− iωτ .Druckt man den komplexen Verstarkungsfaktor z nach Betrag und Phase aus, erhalt man:

|z| = 1/√

1 + ω2τ2 (11.33)

argz = φ = arctanIm z

Rez= − arctanωτ, (11.34)

in Ubereinstimmung mit Gl. 10.15 und 10.16.

A und ϕ hangen von der Frequenz des Eingangssignals ω ab. Man bezeichnet A(ω) als Amplituden-frequenzgang (oder Modulationsubertragungsfunktion) und ϕ(ω) als Phasengang. Eine Auftragungvon A in doppellogarithmischer Darstellung und von φ in einfach logarithmischer Darstellung be-zeichnet man als Bodediagram.

Die Abschwachung A(ω) = cout(ω)/cin(ω) wird in Dezibel gemessen. Dabei bezeichnet eine Ab-schwachung von 10 dB ein Verhaltnis von 1 zu 10.

Hochpass/Tiefpass im Bode-Diagramm

Alle Schaltkreise aus den passiven Elementen haben die Eigenschaft, dass Sinuswellen mit phasen-verschobenen Sinuswellen beantwortet werden. Die Funktionen A(ω) und ϕ(ω) beschreiben diesenZusammenhang vollstandig, wegen der Fourier-Zerlegung und der Linearitat. Phasenverschiebun-gen konnen mit Lissajou-Figuren bestimmt werden.

Page 100: Datenanlyse Mit Matlab

96 KAPITEL 11. LINEARE SYSTEMTHEORIE

11.4 Faltung und Impulsantwort

Neben der Systemidentifikation mit Sinusfunktionen kann man auch andere Funktionen als Ein-gangsfunktionen. Hierfur kommen praktisch Rauschfunktionen (vgl. Abschnitt 10.1.1) und Stu-fenfunktionen in Frage. Theoretisch bedeutsam ist daruberhinaus die Impulsfunktion, ein kurzer,starker Puls, dessen Integral den Wert 1 hat. Formal stellt man sich solche Impulse als Grenzwerteiner Folge von Funktionen vor, z.B.

fi(t) :=

i fur − 1i < t ≤ 0

0 sonst(11.35)

δ(t) = limi→∞

fi(t). (11.36)

Mathematisch etwas unsauber kann man sagen, dass δ(t) = 0 fur alle t 6= 0 und∫∞

−∞δ(t)dt = 1.

Dieses Ergebnis erhalt man auch fur andere Folgen von Funktionen, z.B. Gauß-Funktionen derenBreite gegen null geht wahrend gleichzeitig die Amplitude gegen unendlich geht.

Man nennt δ den Dirac-Impuls oder die δ-Funktion. Mathematisch handelt es sich eigentlichgarnicht um eine Funktion, da der Funktionswert an der Stelle t = 0 (

”∞“) keine Zahl ist. Eine

formal befriedigende Definition von δ erhalt man aus der Theorie der so genannten Distributionenin der Funktionalanalysis.

Die Bedeutung des δ-Impulses ergibt sich aus der Uberlegung, dass jede Funktion f(t) formalin eine Folge zeitlich aufeinanderfolgener Pulse zerlegt werden kann, wobei der Puls an der Stelle t′

die Amplitude f(t′) und damit die Form f(t′)δ(t−t′) hat. Dies ist vollig analog zu der Zerlegung inRechtecke, die wir zur EInfuhrung des Integralberiffs in Abb. 3.5 vorgenommen hatten. Setzt mandie Funktion aus den Pulsen wieder zusammen, erhalt man die (etwas tautologische) Gleichung

f(t) =

∫ ∞

−∞

f(t′)δ(t− t′)dt′ (11.37)

Der Nutzen dieser Gleichung ergibt sich aus der Linearitat des Systems. Nimmt man an, dassman die Antwort des Systems auf einen δ-Impuls kennt, und dass sich diese Impulsantwort inAbhangigkeit vom Zeitpunkt des Anlegens des δ-Impulses nicht verandert, so kann man die Antwortauf eine beliebige Eingangsfunktion jetzt vorhersagen. Wir bezeichnen die Impulsantwort mit g(t).

δ(t) −→ Filter −→ g(t) (11.38)

f(t) =

∫ ∞

−∞

f(t′)δ(t− t′)dt′ −→ Filter −→ h(t) =

∫ ∞

−∞

f(t′)g(t− t′)dt′ (11.39)

11.5 Zusammenhang mit Fourier-Transformation

Sei U(t) ein Signal, das wir als Fourierreihe darstellen konnen:

U(t) = ao +∞∑

k=1

ak cos(2πkt) +∞∑

k=1

bk sin(2πkt) (11.40)

= ao +∞∑

k=1

ck sin(2πkt+ γk) (11.41)

Hierbei wurde die zweite Darstellung mit Gl. 11.17 gewonnen. Legen wir diese Spannung als Ein-gangssignal an einen Schaltkreis mit Amplitudenfrequenzgang A(ω) und Phasengang ϕ(ω) an, soerhalt man:

Page 101: Datenanlyse Mit Matlab

11.5. ZUSAMMENHANG MIT FOURIER-TRANSFORMATION 97

Uout = aoA(0) +

∞∑

k=1

ckA(2kπ) sin(2πkt+ γk + ϕ(2kπ)) (11.42)

Die rechte Seite der letzten Gleichung bezeichnet man als Faltung (engl.: convolution).Impulsantwort und Amplituden/Phasen-Frequenzgang: Frequenzgang ist FT der Impulsant-

wort.

Page 102: Datenanlyse Mit Matlab

98 KAPITEL 11. LINEARE SYSTEMTHEORIE

-input f(t)linear system -output h(t)

Abbildung 11.1: Black box representation of a “system”. A system is defined here by its input-output relations, i.e. as a mapping that maps an input function f(t) to an output function g(t). Inmathematrics (functional analysis), such mappings are known as “operators”.

R

j' $���U

-I

U = R Ia.

C

j' $���U

-I

U = 1C

∫I dt

b.

C

j' $���U

-I

U = LdIdtc.

Abbildung 11.2: Die wichtigsten passiven Schaltelemente. a. Ohmscher Widerstand: Der Span-nungsabfall uber den Widerstand ist proportional zum durchfließenden Strom. b. Kondesator (Ka-pazitat): Die Spannung uber dem Kondensator ist proportional zur hineingeflossenen Ladung. c.Spule (Induktivitat): Die indurierte Spannung ist proporational zur Anderung des Stromflusses.

u- I1

?I2 �I3

6

I4

k Ik = 0a.

u

u u

u'

&zx

���

U1

' $zx���

U2

$

%zx

���

U3

& %zx���

U4

k Uk = 0b.

Abbildung 11.3: Kirchhoffsche Regeln. a.Knotenregel: Die Summe aller Strome, die in einen Knotenhineinfließen (oder aus ihm heraus) ist null. c. Maschenregel: Die Summe aller gleichsinnig (mitoder gegen dem Uhrzeigersinn) gemessenen Spannungen in einer Masche ist null.

Page 103: Datenanlyse Mit Matlab

11.5. ZUSAMMENHANG MIT FOURIER-TRANSFORMATION 99

a.

����Uo

Io

R1 R2

' $zx���

U1 ' $zx���

U2

u-I1

-I2

b.

����Uo

Io

R1

$

%zx

���

U1

R2

$

%zx

���

U2

u

u

?I1 ?I2

Abbildung 11.4: Einfache Schaltkreise aus Widerstanden. a. Schaltung von zwei Widerstanden inSerie. b. Parallelschaltung.

����Uo

Io

C

R

Abbildung 11.5: RC-Glied

Page 104: Datenanlyse Mit Matlab

100 KAPITEL 11. LINEARE SYSTEMTHEORIE

� ��Uo

R1

R2

$

%zx

���

VAllpass

U2(t) = Uo(t)R2

R1 +R2

a.

� ��Uo

C

R

$

%zx

���

VHochpass

dUR(t)

dt= − 1

RCUR(t) +

dUo(t)

dt

b.

� ��Uo

R

C

$

%zx

���

VTiefpass

dUC(t)

dt=

1

RC(Uo(t)− UC(t))

c.

Abbildung 11.6: Einfache Filterschaltungen. a. Spannungsteiler (Allpass). b Hochpass. c Tiefpass.

0.1 0.2 0.5 1 2 5 10 20

90.

0.

30.45.60.

0.1 0.2 0.5 1 2 5 10 200.1

0.20.3

0.5

1.0

Abbildung 11.7: Bode Diagramm des Hochpasses. Oben: Amplitudenfrequenzgang (Modulati-onsubertragungsfunktion), unten: Phasengang.

Page 105: Datenanlyse Mit Matlab

11.5. ZUSAMMENHANG MIT FOURIER-TRANSFORMATION 101

-δ-Puls, δ(t)lineares System -Impulsantwort g(t)

-x(t) =∫x(τ)δ(t− τ)dτ

Faltung mit g -y(t) =∫x(τ)g(t− τ)dτ

-Modulation, exp{iωt}lineares System -MUF, g(ω)

-x(ω) =∫x(t)eiωtdω

Multiplikation mitMUF

-y(ω) =

g(ω)x(ω)

Abbildung 11.8: Systemidentifikation. Oben: Faltung mit der Impulsantwort. Unten: Multiplikationmit der Modulations-Ubertragungsfunktion (MUF). Beide Beschreibungen sind aquivalent (Satzvon Wiener-Khinchin).

Page 106: Datenanlyse Mit Matlab

Kapitel 12

Bildverarbeitung

12.1 Bilder

Bilder sind zweidimensionale Verteilungen von Farb- oder Grauwerten. Im Computer sind solcheBilder immer abgetastet und diskretisiert:

Abtastung: Im Ort ist das Bild in so genannte Pixel (”picture elements“) eingeteilt, die in

Matlab von oben links gezahlt werden, beginnend mit (1, 1). Das Pixel mit der Nummer (i, j)befindet sich in Zeile i und Spalte j. Wir bezeichnen die Breite des Bildes (Anzahl der Spalten)mit I, die Hohe (Anzahl der Zeilen) mit J .

Diskretisierung: Die kontinuierlichen Farb- bzw. Grauwerte naturlicher Bilder werden im Com-puter als diskrete Zahlen dargestellt. Matlab verwendet drei Zahltypen:

• uint8 (unsigned integer, 8 bit). Dies sind die Farb- oder Graustufen von 0 bis 255. DreiFarbwerte zu jeweils acht bit ergeben 24 bit oder 224 = 16.777.216 verschiedene Farben.

• uint16 (unsigned integer, 16 bit). Dies sind die Farb- oder Graustufen von 0 bis 65535.

• double (double precision floating point). In diesem Fall werden die Farb- bzw. Grauwerte imIntervall [0, 1] als Fließkommazahlen dargestellt.

Die Zuordung von Pixel und Farbwert erfolgt auf eine von zwei Weisen:

• RGB-Bilder (”true color image“): Hier werden fur jedes Pixel drei Farbwerte gespeichert. Dies

kann mit jeder oder oben genannten Auflosungen geschehen. Verwendet man z.B. uint8, soist das Bild eine I × J × 3-Matrix von 8-bit-Zahlen.

•”indexed images“: Braucht man weniger Farbabstufungen, so kann man diese in einer Paletteoder Farbkarte (colormap) definieren, deren Farben von 1 bis n durchnummeriert sind. Furjedes Pixel gibt man dann diese Nummer (

”index“) als Integer-Zahl an. Bei der Darstellung

des Bildes muss dann jeweils in der Farbkarte nachgeschlagen werden, welche Farbe zu deram Pixel gespeicherten Nummer gehort. Benutzt man etwa eine Palette von 16 Farb- undIntensitatswerten, so besteht das Bild aus einer I × J-Matrix von Indexwerten, sowie einerFarbkarte von 16 × 3 Farbwerte. Diese Zahlwerte konnen wieder vom Typ uint8, uint16,oder double, sein.

102

Page 107: Datenanlyse Mit Matlab

12.2. FILTERUNG 103

Grauwertbilder werden in Matlab als Spezialfall von indizierten Bildern behandelt, bei demdie Farbkarte nur Eintrage mit jeweils drei gleichen Werten fur R, G, und B enthalt. DerBefehl colormap(gray) erzeugt eine solche Farbkarte.

Der Matlab-Befehl pixval zeigt in einem gegebenen Bild die (i, j)-Koordinaten sowie den Wertdes Pixels an, uber dem sich der Mauszeiger gerade befindet.

Fur den Computer sind Bilder also zunachst nichts anderes als Matrizen von Farb- und In-tensitatswerten, die fur sich genommen keinerlei Bedeutung haben. Will man Regionen im Bildabgrenzen und ausmessen, Objekte auffinden oder Bewegungen detektieren, so muss man von die-sen Matrizen ausgehen. Die Bildverarbeitung untersucht Operationen und Algorithmen, die solcheLeistungen erbringen.

Durch den Einsatz von Kameras fur Messprobleme aller Art kommt der Bildverarbeitung zu-nehmend Bedeutung fur Auswerteprobleme zu. Beispiele sind die Uberwachung von Bewegungenvon Tieren (

”tracking“) in Verhaltenexperimenten, die verschiedenen tomographischen oder bild-

gebenden Verfahren in der Medizin, oder die quantitative Auswertung anatomischer und histo-logischer Bilder. Methoden der Bildverarbeitung kommen daruber hinaus generell zum Einsatz,wenn zweidimensionale Verteilungen von Daten betrachtet werden, zum Beispiel also auch in derChromatographie und in der Akustik (Sonagramme).

12.2 Filterung

Auf Bilder konnen wie auf Matrizen und Vektoren die gangigen Rechenarten angewandt werden,die dann wiederum komponentenweise (pixelweise) erklart sind. Die Addition von zwei Bildernentspricht damit anschaulich dem Uberblenden zweier Bilder aus zwei Projektoren, bei der jaauch die Intensitatswerte der ubereinanderfallenden Pixel addiert werden. Eine weitere wichtigeOperation ist die Verschiebung bei der z.B. jeder Intensitatswert durch den des linken Nachbarpixelsersetzt wird.

Aus Verschiebung, Multiplikation und Addition erzeugt man die wichtigste Bildverarbeitungs-operation, namlich die die Filterung oder Korrelation mit einer Maske. Wir betrachten als einfachesBeispiel ein Bild, das durch eine Grauwertmatrix G gegeben ist. Will man nun das Bild

”glatten“,

d.h. unscharfer machen und damit etwa storende Rauschmuster unterdrucken, so kann man einneues Bild H erstellen, indem man an jedem Pixel (i, j) uber die nachsten Nachbarn mittelt, z.B.:

H(i, j) :=1

5(G(i, j) +G(i− 1, j) +G(i+ 1, j) +G(i, j − 1) +G(i, j + 1)). (12.1)

Eine Verstarkung der Kontraste zwischen verschiedenen Pixeln kann man erzielen, indem man vonjedem Grauwert den mittleren Grauwert der Nachbarschaft abzieht, z.B.:

H(i, j) := G(i, j)− 1

4(G(i− 1, j) +G(i+ 1, j) +G(i, j − 1) +G(i, j + 1)). (12.2)

Fur Pixel, die z.B. am linken Rand des Bildes liegen, wird z.B. i = 1 und daher i− 1 = 0. G(0, j)existiert aber gar nicht. Man muss also die Formel am Rand entsprechend modifizieren. In der Regelsetzt man außerhalb des Bildes liegende Pixel einfach null (G(0, j) := 0) oder setzt die Bildmatrixam Rand konstant fort (G(0, j) := G(1, j)). Matlab bietet beide Moglichkeiten als Optionen an.In jedem Fall ist die Große des Ergebnisbildes gleich der des Eingangsbildes.

Der Einfluss eines Pixels G(i, j) auf ein Pixel H(k, l) des neuen Bildes hangt hier nur von derDifferenz der Koordinaten (k− i, l− j) = (m,n) ab, d.h. es wird an jeder Stelle im Bild die gleicheOperation vollzogen. Solche Operationen heißen

”ortsinvariant“ oder

”translationsinvariant“. Den

Page 108: Datenanlyse Mit Matlab

104 KAPITEL 12. BILDVERARBEITUNG

1

2

3

4

5

1

2

3

4

5

G(l) H(l)

a. Korrelation

qqqqq

����������������������������

XXXXXXX

XXXXXXX

XXXXXXX

XXXXXXX

-

-

-

-

-

������:������:������:������:

XXXXXXz

XXXXXXz

XXXXXXz

XXXXXXz

q�������

XXXXXXX-

������:

XXXXXXzC(0)

C(−1)

C(1)

H(3) =

1∑

n=−1

C(n)G(3 + n)

1

2

3

4

5

1

2

3

4

5

G(l) H(l)

b. Faltung

qqqqq

����������������������������

XXXXXXX

XXXXXXX

XXXXXXX

XXXXXXX

-

-

-

-

-

������:������:������:������:

XXXXXXz

XXXXXXz

XXXXXXz

XXXXXXz

q�������

XXXXXXX

-������:XXXXXXz

C(0)

C(−1)

C(1)

C(1)

C(−1)

H(3) =

1∑

n=−1

C(n)G(3 − n)

Abbildung 12.1: Korrelation und Faltung. Beide Operationen unterscheiden sich nur in der Art,wie die Pixel der Maske numeriert werden. Bei der Korrelation (a.) geschieht das aus der Sicht desErgebnisbildes H. Stellt man sich vor, man blicke von H

”zuruck“ auf G, dann sind die negativ

indizierten Pixel rechts, die positiv indizierten Pixel links. Die Maske beschreibt die Konvergenz(das

”Einsammeln“) von Signalen aus dem Eingangsbild. Zur Bestimmung der Signalstarke an

einem Pixel des Ergebnisbildes muss die Maske nicht bewegt werden. Bei der Faltung (b.) sinddie Pixel der Maske aus der Sicht des Eingangsbildes numeriert. Stellt man sich vor, man blickevon G

”vorwarts“ auf H, dann sind die negativ indizierten Pixel links, die positiv indizierten

rechts. Die Maske beschreibt die Divergenz (das”Verteilen“) von Signalen aus dem Eingangsbild.

Zur Bestimmung der Signalstarke an einem Pixel des Ergebnisbildes muss die Maske uber dasEingangsbild verschoben werden.

allgemeinsten Fall dieser Art von Operation erhalt man, wenn man fur jede Koordinatendifferenz(m,n) ein

”Gewicht“ C(m,n) angibt, mit dem das betrachtete Pixel auf ein anderes einwirkt. Wir

nennen die Matrix C eine Maske und schreiben:

H = G⊗ C,

H(k, l) =M∑

m=−M

N∑

n=−N

C(m,n) G(k +m, l + n). (12.3)

Hierbei sind wir davon ausgegangen, dass die Komponenten der Matrix C nicht wie ublich von0 aus nummeriert sind, sondern von −M bis M bzw. −N bis N . Die Anzahlen der Zeilen undSpalten sind also immer ungerade. Fur die beiden oben genannten Beispiele (Gl. 12.1 und 12.2)hat man

C =

0 1/5 0

1/5 1/5 1/5

0 1/5 0

bzw. C =

0 −1/4 0

−1/4 1 −1/4

0 −1/4 0

. (12.4)

Die Operation aus Gl. 12.3 heißt Korrelation oder Filterung. In Matlab wird sie von derFunktion imfilter(G,C) ausgefuhrt. Zuweilen benutzt man auch die Faltung (engl. convolution),die mathematisch weitgehend aquivalent zur Korrelation ist. Die Intuition ist jedoch anders: beider Korrelation gibt der Maskeneintrag C(m,n) an, wie stark ein um (m,n) verschobenes Pixeldes Eingangsbildes das aktuelle Pixel des Ergebnisbildes beeinflusst. Bei der Faltung geht manvom Eingangsbild aus; der Maskeneintrag C(m,n) gibt dann an, wie stark das aktuelle Pixel desEingangsbildes ein um (m,n) verschobenes Pixel des Ergebnisbildes beeinflusst (vgl. Abb. 12.1).Die Gleichung fur die Faltung lautet:

Page 109: Datenanlyse Mit Matlab

12.2. FILTERUNG 105

H = G ∗ C,

H(k, l) =

M∑

m=−M

N∑

n=−N

C(m,n) G(k −m, l − n). (12.5)

Faltung und Korrelation gehen also ineinander uber, wenn man die Maske um 180◦ dreht, odereine Punktspiegelung an ihrem mittleren Pixel vornimmt. Bei punktsymetrischen Masken (d.h.Masken mit der Eigenschaft C(−m,−n) = C(m,n) liefern Korrelation und Faltung das gleicheErgebnis.

Faltung und Korrelation sind Operationen, die ein Bild in ein anderes uberfuhren. DieseUberfuhrung ist linear, d.h. es gilt:

(F +G) ∗ C = F ∗ C +G ∗ C; (λF ) ∗ C = λ(F ∗ C), (12.6)

(F +G)⊗ C = F ⊗ C +G⊗ C; (λF )⊗ C = λ(F ⊗ C). (12.7)

Dabei ist λ ∈ IR eine reelle Zahl; Addition von Bildern und die Multiplikation mit λ sind pixelweisegemeint. Will man also etwa Bilder mitteln (d.h. die Grauwerte pixelweise addieren und durch dieGesamtzahl der Bilder dividieren), so ist es gleichgultig, ob man eine Filterungsoperation vor odernach der Mittelung anwendet.

Nur fur die Faltung gelten noch zwei weitere Beziehungen:

Assoziativitat: Ist G ein Bild und sind C,D zwei Masken, so gilt

(G ∗ C) ∗D = G ∗ (C ∗D). (12.8)

Statt ein Bild nacheinander mit zwei Masken zu falten, kann man also auch zunachst dieMasken miteinander falten und dann die neue kombinierte Maske auf das Bild anwenden.Die entsprechende Formel fur die Korrelation lautet (G⊗ C)⊗D = G⊗ (C ∗D).

Kommutativitat: Faltet man ein Bild mit zwei Masken C, D nacheinander, so spielt die Rei-henfolge dieser Masken keine Rolle:

G ∗ C ∗D = G ∗D ∗ C. (12.9)

Die Maske ist wie das Bild eine Matrix, wenn auch in der Regel viel kleiner als das Bild. Bisauf die Randeffekte an Stellen, an denen die Maske uber das Bild hinausgreift, gilt jedochauch hier die Vertauschbarkeit: G ∗ C = C ∗G.Die Korrelation ist dagegen nicht kommutativ. Vertauscht man die Reihenfolge von Bild undMaske, so erhalt man ein punktsymetrisch gespiegeltes Ergebnis.

Durch die Faltungsoperation konnen Bildwerte entstehen, die negativ oder großer als 255 sind. 8-bitBilder werden in solchen Fallen

”trunkiert“, d.h. im Intervall von 0 bis 255 wird auf ganze Zahlen

gerundet und Werte uber 255 bzw. unter 0 werden auf 255 bzw. 0 gesetzt. Will man die damitverbundenen Rechenfehler vermeiden, muss man die Bilder vor der Filterung in Gleitkommazahlen(”double“) umwandeln. Bei Masken mit rein positiven Eintragen wird der Wertebereich von 0

bis 255 nicht verlassen, solange man die Summe der Eintrage auf 1 normiert, d.h. jeden Eintragdurch die Summe der Eintrage teilt. In diesem Fall ist allerdings die Maske nicht mehr ganzzahlig;wendet man sie auf ein 8-bit Bild an, entstehen wieder Rundungsfehler. Auch dieses Problementfallt, wenn man von vorne herein mit Gleitkommazahlen rechnet. Da der Bildschirm nur einefeste Grauwertskala von schwarz bis weiß zur Verfugung stellt, muss man bei negativen Bildwertendie 0 durch ein mittleres Grau darstellen. Negative Werte erscheinen dann dunker, positive heller.

Page 110: Datenanlyse Mit Matlab

106 KAPITEL 12. BILDVERARBEITUNG

1 2 3 4 5 6 7 8 9 10 110

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Abbildung 12.2: Iterated convolu-tion of a point image with abox-shaped mask. The first functi-on (g0(x), light black line) shiwsthe original image, the secondfunction(g1(x), heavy black line) re-produces the mask. The further ite-rations are: g2(x), light blue line;g3(x), heavy blue line; g4(x), lightgreen line, and g5(x), heavy greenline.

Fur Farbbilder gestaltet sich die Definition der Filterung etwas schwieriger. Im einfachsten Fallbenutzt man einfach die gleiche Maske fur jeden der drei Farbkanale separat und setzt die dreiErgebnisse wieder zu einem RGB-Bild zusammen. Im Allgemeinen hat man fur jede Verschiebungin der Maske 3× 3 Gewichte, die die Einflusse aller drei Farbkanale des Eingangsbildes auf jedender drei Farbkanale des Ausgangsbildes wiedergeben.

Example 1

Consider a one-dimensional “image” with pixels numbered (−5, ...,−2,−1, 0, 1, 2, ..., 5) and inten-sities

Go(i) =

1 for i = 0

0 for i 6= 0. (12.10)

As a mask, consider the 3-pixel mask m = ( 13 ,13 ,

13 ). We will now denote by

Gk = Gk−1 ∗m (12.11)

the k-fold convolution of Go with the mask m. The result is shown in the following table:

k gk(−5) gk(0) gk(5)

0 0 0 0 0 0 1 0 0 0 0 0

1 0 0 0 0 1 1 1 0 0 0 0 /3

2 0 0 0 1 2 3 2 1 0 0 0 /9

3 0 0 1 3 6 7 6 3 1 0 0 /27

4 0 1 4 10 16 19 16 10 4 1 0 /81

5 1 5 15 30 45 51 45 30 15 5 1 /243

As can be seen from Figure 12.2, the functions gk(x) approach a bell-shaped curve for large k.Indeed, the central limit theorem guarantees that this limit function is the Gaussian.

Page 111: Datenanlyse Mit Matlab

12.2. FILTERUNG 107

Y=2;♯=1

Y=3;♯=2

Y=4;♯=3

Y=5;♯=4

Y=6;♯=5

Y=7;♯=6

Y=8;♯=5

Y=9;♯=4

Y=10; ♯=3

Y=11; ♯=2

Y=12; ♯=1

x2 =

1 2 3 4 5 6

1 1,1 1,2 1,3 1,4 1,5 1,6

2 2,1 2,2 2,3 2,4 2,5 2,6

x1 = 3 3,1 3,2 3,3 3,4 3,5 3,6

4 4,1 4,2 4,3 4,4 4,5 4,6

5 5,1 5,2 5,3 5,4 5,5 5,6

6 6,1 6,2 6,3 6,4 6,5 6,6

Abbildung 12.3: Convolution and the probability distribution of sums. The black table shows thepossible outcomes of a pair of dice rolled together. The blue boxes group all outcomes yieldingthe same sum. Clearly, the sum 2 will occur less frequently than the sum 7, say, since six possibleoutcomes yield 7 while only one possible outcome yields 2.

Example 2

The discrete, two-dimensional convolution operation introduced in Eg. 12.5 is a basic operationoccuring in many fields of mathematics and quite different contexts. In its continuous version, itis the basis of linear systems theory discussed in Chapter 11. Here we briefly discuss a furtherapplication of discrete convolution in probablity theory.

When rolling a pair of dice, the probablity of obtaining a particular number on each individualdie is equally distributed, i.e.

P(xi = j) =1

6for i = 1, 2 and j = 1, ..., 6. (12.12)

Let Y denote the sum of the points from the two dice. Clearly, Y can vary between 2, if both

dice show “1”, and 12, if both dice show “6”. The probability of these results equals(16

)2= 1

36 .Intermediate sums such as 5 can be obtainted by a number of pairs, i.e., (1, 4), (2, 3), (3, 2), (4, 1),and therefore have higher probabilities, in our example 4

36 .In general, all possible outcomes yielding the sum i can be written as (j, i−j), or more explicitly

P(Y = i) =

min(6,i−1)∑

j=max(i−6,1)

P(X1 = j) P(X2 = i− j) (12.13)

As depicted in Fig. 12.3, P(Y = i) takes a triangular shape, just as the convolution of the boxfunction with itself (light blue line in Fig. 12.2. In general, the distribution density function of a

Page 112: Datenanlyse Mit Matlab

108 KAPITEL 12. BILDVERARBEITUNG

sum of two random variables can be shown to equal the convolution of the distribution densityfunctions of the two individual distribution functions.

12.3 Kantendetektion

Kanten sind Stellen im Bild, an denen sich der Grauwert sprunghaft oder zumindest”schnell“

andert. Kanten haben folgende Eigenschaften:

• Orientierung: Kanten sind lokal immer linienhaft; das Bild andert sich senkrecht zur Kanteschnell, in Richtung der Kante jedoch wenig oder gar nicht. Kleine Linienstucke, die denOrt und die lokale Richtung der Kante angeben, heißen

”Kantensegmente“, ihr Winkel zur

Horizontalen”Orientierung“. Er liegt zwischen −90◦ und 90◦.

• Polaritat: Zwei Kanten gleicher Orientierung haben die gleiche Polaritat, wenn der hellereBildteil bei beiden Segmenten auf der gleichen Seite liegt. Orientierung und Polaritat konnenzu einem Winkel zwischen −180◦ und 180◦ zusammen gefasst werden.

• Sprung- und Konturkanten: Sprungkanten sind Grenzen zwischen Regionen unterschiedli-cher Bildintensitat. Sie konnen antisymmetrische durch Masken der Form (−0.5, 0, 0.5) bzw.(0.5, 0,−0.5) betont werden. Konturkanten bestehen aus zwei nahe beieinander liegendenSprungkanten gleicher Orientierung und entgegengesetzter Polaritat. Sie konnen durch sym-metrische Masken der Form (−0.5, 1,−0.5) bzw. (0.5,−1, 0.5) betont werden.

• Auflosung (scale): Kanten treten auf unterschiedlichen Auflosungsniveaus auf, die mitverschiedenen breiten Masken bearbeitet werden mussen.

In einem Kantenbild nimmt ein Pixel den Wert 0 an, wenn dort keine Kante detektiert wurde,und den Wert 1, wenn eine Kante detektiert wurde. Ein einfacher, haufig verwendeter Kantende-tektor ist der Sobel-Operator; er benutzt zwei orientierte Kantenfilter

V =

−1 0 1

−2 0 2

−1 0 1

und H =

1 2 1

0 0 0

−1 −2 −1

fur die Betonung horizontaler und vertikaler Kanten. Die beiden entstehenden Bilder werden pi-xelweise quadriert und dann zusammenaddiert:

Gout = (Gin ⊗ V )2 + (Gin ⊗H)2.

Als Kantenelemente werden solche Pixel angesehen, an denen Gout einen vorgegebenen Schwellwertubersteigt. Der Sobel-Operator wertet die Steigung im Grauwertgebirge in der steilsten Richtungaus; anschaulich liefert er das Quadrat der Lange des Gradienten (Vektor der partiellen Ableitun-gen) des Grauwertgebirges. Er ist nichtlinear.

12.4 Korrelation und Schablonenfilter (matched filter)

Wir haben schon darauf hingewiesen, dass die Maske einer Filteroperation als kleines Bild aufgefasstwerden kann. Dieses Bild schiebt man gewissermaßen uber das zu bearbeitende große Bild. Diepixelweise Multiplikation von Bild und Maske mit anschließender Summation liefert dabei ein umsogroßeres Ergebnis, je ahnlicher sich Bild und Maske lokal sind. Will man z.B. in einem eingescannten

Page 113: Datenanlyse Mit Matlab

12.5. BEWEGUNG 109

Text den Buchstaben “A” in aufrechter Orientierung und in 9 Pixel Große suchen, so kann maneine Maske der Form

A :=

0 0 0 0 1 0 0 0 0

0 0 0 1 1 1 0 0 0

0 0 1 1 1 1 1 0 0

0 0 1 1 0 1 1 0 0

0 1 1 1 0 1 1 1 0

0 1 1 0 0 0 1 1 0

1 1 1 1 1 1 1 1 1

1 1 0 0 0 0 0 1 1

1 1 0 0 0 0 0 1 1

(12.14)

definieren, und mit dieser das Bild korrelieren. An den Stellen, an denen ein “A” weiß auf schwarzemGrund gedruckt ist, wird diese Maske den maximalen Ausgang liefern.

Um dies einzusehen, betrachten wir die Anzahl der in der Maske A mit dem Wert 1 besetztenPixel. Im Beispiel der Gl 12.14 sind das wM = 40. Die restlichen sM = 41 Pixel der Maske sindschwarz (0). Legt man diese Maske auf ein rein weißes Bild, also eine Flache, deren samtliche Pixelden Wert 1 haben, so wird der Ausgang der Filterungsoperation wM = 40 betragen. Da die Maskekeine negativen Gewichte enthalt, ist dies der maximal mogliche Wert. Legt man nun die Maskeauf ein Bild mit schwarzen und weißen Pixeln, so wird das Ergebnis der Filterung H so lange denMaximalwert H = wM annehmen, wie alle schwarzen Pixel des Bildes unter schwarzen Pixeln derMaske liegen. Das

”dunkelste“ Bild, d.h. das Bild mit den meisten schwarzen Pixeln, das noch

H = wM liefert, hat uberall dort schwarze Pixel, wo auch die Maske schwarze Pixel hat, zeigt alsoebenfalls ein

”A“. Wir bezeichnen die Anzahl der weißen Pixel im Bild mit wB und betrachten das

Verhaltnis S := H/wB . Dieses Verhaltnis nimmt seinen Maximalwert an, wenn das Bild mit derMaske ubereinstimmt, da dann H = wM maximal und wB klein ist. Schiebt man nun die Maskeuber das Bild, so kann man ein

”A“ an den Stellen detektieren, wo H/wB oder allgemeiner

S(k, l) =

m

nA(m,n) G(k +m, l + n)√∑

m

nG2(k +m, l + n)

(12.15)

ein Maximum hat. Bezeichnet man mit E eine Maske in gleicher Große wie A, deren samtlicheEintrage 1 sind, und mit G2 das pixelweise Quadrat von G, so kann man auch schreiben:

S =G⊗A√G2 ⊗ E

. (12.16)

Dabei ist die Division punktweise gemeint. Ubersteigt S einen Schwellwert, so deutet dies auf dieGegenwart des Buchstabens A im Bild hin.

Das Verfahren funktioniert auch fur kontinuierliche Grauwerte. Mathematisch ist es eine Kon-sequenz der so genannten Cauchy-Schwarzschen Ungleichung.

12.5 Bewegung

Wir betrachten zwei Bilder einer Zeitfolge, G1 und G2. Veranderungen im Bild kann man detektie-ren, indem man die Bilder einfach voneinander abzieht. Solche Veranderungen gehen jedoch nichtimmer auf Bewegungen zuruck, sondern konnen z.B. auch durch Veranderungen der Beleuchtung

Page 114: Datenanlyse Mit Matlab

110 KAPITEL 12. BILDVERARBEITUNG

verursacht sein. Auch wenn Bilddifferenzen durch Bewegungen erzeugt sind, kann man aus dem Dif-ferenzbild im Allgemeinen nicht ablesen, in welche Richtung die Bewegung erfolgt ist. Ein einfacherBewegungsdetektor, der diese Information liefert, kann folgendermaßen konstruiert werden:

Wir betrachten zunachst den Fall einer Bewegung um 3 Pixel nach rechts und 1 Pixel nachunten. In diesem Fall wird man erwarten, dass in der bewegten Bildregion die Beziehung

G2(i, j) = G1(i− 3, j − 1) (12.17)

gilt. Um dies zu uberprufen, benotigen wir zunachst eine Verschiebungsoperation. Bildverschiebun-gen konnen als Filterungen realisiert werden. Fur die Verschiebung um den Vektor (3, 1) benotigenwir z.B. folgende 7× 3 Maske:

S3,1 =

-3 -2 -1 0 1 2 3

-1 1 0 0 0 0 0 0

0 0 0 0 0 0 0 0

1 0 0 0 0 0 0 0

(12.18)

Man pruft leicht nach, dass die Beziehung G2 = G1 ⊗ S3,1 gilt.Als Evidenz fur die Verschiebung des ganzen Bildes um 3 Pixel nach rechts und 1 Pixel nach

unten betrachten wir jetzt die quadratische Differenz zwischen G2 und G1 ⊗ S3,1:

SSD3,1 := ‖G2 −G1 ⊗ S3,1‖2. (12.19)

Mit den Doppelstrichen ‖·‖ bezeichnen wir dabei die”Norm“ eines Bildes (hier des Differenzbildes),

das dabei als Vektor aller seiner Pixel aufgefasst wird, ‖G‖ :=√∑

i,j G(i, j)2. Die Abkurzung SSD

steht fur sum of squared differences. SSD3,1 ist also eine Zahl, die Null wird, wenn G2 und dieverschobene Version von G1 exakt ubereinstimmen, und die umso großer wird, je mehr die Bildervoneinander abweichen.

Um die Bewegung zu messen, mussen wir diese Operation fur alle Bewegungen (v1, v2) in einemrealistischen Bereich durchfuhren und dann die Bewegung auswahlen, die die kleinste quadratischeDifferenz erzeugt.

Bewegungsdetektion ist eine gut untersuchte Bildverarbeitungsoperation, bei der viele Varian-ten moglich sind. Hier wurde nur die Grundidee des so genannten Korrelationsverfahrens skizziert;detailiertere Darstellungen finden sich in der zitierten Literatur.

12.6 Literatur

B. Jahne. Digitale Bildverarbeitung. Springer Verlag, Berlin, Heidelberg, New York, 5. Auflage,2005.

B. D. Lucas, T. Kanade, An iterative image registration technique with an application to ste-reo vision. Proceedings of the 7th International Joint Conference on Artificial Intelligence(IJCAI’81), pp 674-679, 1981.

H. A. Mallot. Sehen und die Verarbeitung visueller Information. Eine Einfuhrung. Vieweg Verlag,Wiesbaden, 2. Auflage, 2000.

A. Rosenfeld und A. C. Kak. Digital Picture Processing, Vols. 1 und 2. Academic Press, Orlando,Fla. and London, 2. Auflage, 1982.

E. Trucco und A. Verri. Introductory techniques for 3–D computer vision. Prentice Hall, 1998.