27
Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department of Computer Science, Saarland University, Saarbr¨ ucken, Germany

Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Wie konnen Computer lernen ?

Ringvorlesung “Perspektiven der Informatik”, 18.2.2008

Prof. Jun. Matthias Hein

Department of Computer Science, Saarland University, Saarbrucken, Germany

Page 2: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Inferenz I

Wie lernen wir ? Wie wird neues Wissen gewonnen ?

In den Naturwissenschaften unterscheidet man zwei Typen von Inferenz:

• Induktive Inferenz: Lernen von Zusammenhangen durch

Beobachtungen.

• Deduktive Inferenz: Ableitung spezifischer Aussagen von allgemeinen

Prinzipien (Axiomen).

1

Page 3: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Inferenz II

Deduktive Inferenz:

• Mathematik: System aus Axiomen ⇒ Ableitung von Theoremen

• Physik: Postulate uber Natur ⇒ Naturgesetze

Methoden in der Kunstlichen Intelligenz

• Logik

• Automatisches Beweisen von Theoremen

Probleme:

• fuer nicht-mathematische Probleme existiert keine axiomatische

Darstellung

2

Page 4: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Inferenz III

Indduktive Inferenz:

Induktive Inferenz ist das zentrale Mittel in den Naturwissenschaften.

Vorgehensweise:

1. Sammeln von Beobachtungen.

2. Modellbildung.

3. Vorhersage

Falsifikation

Induktive Aussagen werden verworfen aber nie verifiziert.

Maschinelles Lernen versucht den Prozess der Induktion zu automatisieren.

3

Page 5: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Was ist maschinelles Lernen ?

Lernproblem: Erkennung von handschriftlichen Zahlen

4

Page 6: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Was ist maschinelles Lernen ?

Terminologie im Maschinellen Lernen:

Eingabe Pixeldarstellung des Bildes (Jedes Bild liegt in R28×28)

Merkmal Eigenschaft der Eingabe (hier: Grauwert eines bestimmten Pixels)

Ausgabe eine Zahl {1, 2, . . . , 10} =⇒ Mehrklassenproblem

Klassifikator eine Funktion von Eingabe nach Ausgabe, hier

f : R784 → {1, 2, . . . , 10}. 5

Page 7: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Was ist maschinelles Lernen ?

Terminologie im Maschinellen Lernen:

Training Konstruktion des Klassifikators (Optimierungsproblem)

Test Zahlen der Fehler auf neuen Bildern

Generalisierung Klassifikator macht wenig/keine Fehler auf neuen Bildern

Modell Modell uber den Zusammenhang zwischen Bild und Klasse

6

Page 8: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Anwendungen von maschinellem Lernen

Die wichtigsten Anwendungsgebiete sind:

• Bioinformatik,

• Computer Vision/Image Processing/Computer Graphics,

• Information Retrieval/Collaborative Filtering,

• spam filter/intrusion detection ,

• Robotik,

• jedes Problem wo Daten analysiert werden mussen.

Mehr und mehr Daten werden gesammelt. Ein Mensch allein kann sie nicht

analysieren.

=⇒ Nachfrage nach maschinellem Lernen steigt !

7

Page 9: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Maschinelles Lernen

Man unterscheidet zwischen drei Arten des Lernens:

• uberwachtes Lernen,

• halbuberwachtes Lernen,

• unuberwachtes Lernen.

Im folgenden:

X ist der Eingaberaum , Xi sind die Trainingseingaben,

Y ist der Ausgaberaum, Yi sind die Trainingsausgaben.

8

Page 10: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Uberwachtes Lernen

Uberwachtes Lernen:

Gegeben n Beobachtungen T = (Xi, Yi)ni=1

konstruiere Funktion fn : X → Y.

• Ausgaberaum Y diskret =⇒ Klassifikation.

• Ausgaberaum Y = R or Y = Rd =⇒ (multivariate) Regression.

• Ausgaberaum Y allgemeiner =⇒ Lernen mit strukturierter

Ausgabe.

9

Page 11: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Unuberwachtes Lernen

Unuberwachtes Lernen: Gegeben n Eingabepunkte (Xi)ni=1

:

• Clustering: Einteilung von (Xi)ni=1

in Gruppen ahnlicher Punkte,

sogenannter Cluster.

• Dichtesschatzung: Schatzung der Verteilung auf X . Verwandtes

Problem: Detektion von Ausreißern.

• Dimensionsreduktion: Konstruktion einer Abbildung φ : X → Rm,

wobei die Dimension m des Bildraums viel kleiner als die des

Eingaberaums X ist. The Abbildung sollte gewisse Eigenschaften von X

erhalten z.B. Distanzen.

10

Page 12: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Statistisches Lernen I

• Annahme: Es existiert ein datengenerierendes Wahrscheinlichkeitsmass

P on X × Y.

• Was bedeutet das ?

1. Trainingsdaten sind eine zufallige Stichprobe von P,

2. Die Ausgaben y ∈ Y sind nicht-deterministisch, d.h. es existiert

nicht notwendigerweise y = g(x). Stattdessen fur ein x gibt es eine

Verteilung uber Y.

3. Letzteres heißt, daß eine “perfekte” Losung nicht existiert.

11

Page 13: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Statistisches Lernen II

Binare Klassifikation, d.h. Y = {−1, 1}, and X = Rd. Die gemeinsame

Dichte p(x, y) des Wahrscheinlichkeitsmaßes P auf X ×Y kann aufgespalten

werden in

• Die Verteilung einer Klasse p(x|y) modelliert die Verteilung der

Eingaben einer Klasse.

• Die bedingte Verteilung p(y|x) ist die Wahrscheinlichkeit fur eine

Klasse y gegeben die Eingabe x.

Die wahrscheinlichste Klasse y wird zur Vorhersage verwendet.

• Die Randverteilung p(x) modelliert die Verteilung der Eingabe x uber

alle Klassen.

• Die Klassenwahrscheinlichkeiten p(y). Die Gesamtwahrscheinlichkeit

von Klasse y.

12

Page 14: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Statistical Learning III

Lernproblem: Vorhersage des Geschlechts, Y = {male, female}, basierend

auf der Korpergroße (Eingaberaum: X = R).

1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.1 2.20

0.5

1

1.5

2

2.5

3

3.5

4

x

Den

sity

val

ue

p(x|man)p(x|woman)p(x)p(woman|x)

13

Page 15: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

But !

14

Page 16: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Herausforderungen im maschinellen Lernen

Herausforderungen im maschinellen Lernen:

• Was fur Merkmale sind diskriminativ ?

• Wie kann man Vorwissen uber das Problem integrieren ?

• Komplexitat,

• “curse of dimensionality”,

• “over-and underfitting” ⇒ Generalisierung ?

15

Page 17: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Overfitting and underfitting I

Regression: Eingabe X = R, Ausgabe Y = R, Trainingsdaten (Xi, Yi)ni=1

.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

x

y

True functionSampled PointsInterpolationLinear ModelPolynomial Model

Figure 1: blaue Kurve: wahre Funktion, blaue Kreise: 20 verrauschte Daten-

punkte, rote Kurve: Interpolation der Trainingspunkte, black solid line:

lineares Modell, dotted black line: Polynomiales Modell.16

Page 18: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Overfitting and underfitting II

• Mit Hilfe von Interpolation kann man die Daten immer perfekt

anpassen! (falls keine Widerspruche, d.h. Yi 6= Yj fur Xi = Xj),

=⇒ Overfitting der Daten.

=⇒ keine Generalisierung

• ein sehr einfaches Modell z.B. ein lineares fuhrt zu underfitting, d.h.

die gelernte Funktion kann den Zusammenhang von Eingabe und

Ausgabe nicht darstellen.

=⇒ keine Generalisierung

17

Page 19: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Komplexitat einer Funktion

0 0.2 0.4 0.6 0.8 1−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0 0.2 0.4 0.6 0.8 1−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

Figure 2: Links: Relativ einfache Function, sehr glatt, Rechts: Komplexe

Funktion, weniger glatt.

18

Page 20: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Ockham’s Rasiermesser

Allgemeines Prinzip: bevorzuge weniger komplexe Funktion falls die

Daten gleich gut von beiden Funktionen erklart werden .

“Occam’s razor”:

Pluralitas non est ponenda sine necessitas.’ (Plurality should not be posited

without necessity.),

oder ahnlich:

“Von zwei Theorien, die die gleichen Vorhersagen treffen,

ist die einfachere, zu bevorzugen.”

19

Page 21: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Curse of dimensionality I

Oft hat man sehr viele Merkmale =⇒ Eingaberaum ist hoch-dimensional.

Naiver Histogramschatzer auf X = [0, 1]d.

• unterteile das Interval [0, 1] jeder Dimension in k gleichgroße Intervalle,

• das ergibt kd verschiedene Zellen,

• Klassifiziere jede Zelle durch Mehrheitsentscheidung.

Um den ganzen Eingaberaum klassifizieren zu konnen, benotigt man

wenigstens n = kd Traingsdaten.

die Anzahl der benotigten Trainingsdaten steigt exponentiell mit der

Dimension !

Curse of dimensionality !

20

Page 22: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Curse of dimensionality III

In 10 Dimensionen benotigt man mit k = 10 schon mindestens n = 1010

samples.

⇒ Lernen ist unmoglich (mit dem naiven Histogramm-Schatzer).

Wie can man den “curse of dimensionality” vermeiden ?

• die Eingabe-Merkmale sind nicht unabhangig voneinander,

• Der Eingabe-Ausgabe-Zusammenhang ist “einfach” d.h. Ausgabe

verandert sich nur wenig wenn sich die Eingabe verandert (glatte

Funktion).

⇒ In diesen Fallen ist Lernen immer noch moglich.

21

Page 23: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Curse of dimensionality IV

Distanzen sind alle fast gleich !

Lemma 1. Sei x, y ∈ Rd und ε1, ε2 ∼ N(0, σ2) und X = x + ε1 and

Y = y + ε2,

E ‖X − Y ‖2 = ‖x − y‖2 + 2 d σ2.

• Datenpunkte sind alle fast gleich voneinander entfernt,

⇒ Differenzierung zwischen “nah” und “fern” existiert nicht mehr !

• ahnlich: In hohen Dimensionen ist das Volumen eines Balls unterhalb

der Oberflache konzentriert.

22

Page 24: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Zusammenfassung

Computer konnen lernen

aber

vollstandig automatisches Lernen derzeit noch nicht moglich.

23

Page 25: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Forschungsthemen

Aktuelle Forschungsthemen:

• strukturierte Eingabe (Graphen, Baume, ...),

• strukturierte Ausgabe,

• Transfer von Wissen von einer Aufgabe auf die nachste,

• Lernen von kausalen Zusammenhangen.

Aktuelle/Neue Anwendungen:

• Machine Learning in Computer Games,

• Machine Learning in Software Engineering.

24

Page 26: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Matting

User-guided image segmentation - Example of Semisupervised

Learning:

Left: Input Image with user labels, Right: Image segmentation25

Page 27: Wie k¨onnen Computer lernen - rw.cdl.uni-saarland.de · Wie k¨onnen Computer lernen ? Ringvorlesung “Perspektiven der Informatik”, 18.2.2008 Prof. Jun. Matthias Hein Department

Geometric modelling

Left: Thin-Plate splines + Proj., Middle: Harmonic energy, Right: Eells energy (the

Eells energy is distortion minimizing)

26