Tom Heskes, hoogleraar kunstmatige intelligentie

advertisement
Machinaal leren, neurale netwerken,
en deep learning
Prof. dr. Tom Heskes
KNAW-symposium
Go en machinale intelligentie
11 oktober, 2016
Inhoud
• Inleiding
- Supervised, reinforcement, unsupervised leren
• Neurale netwerken
• Deep learning
2
Inleiding
• Leren is een essentieel onderdeel van (kunstmatige) intelligentie
- Flexibel gedrag
- Jezelf verbeteren
- Minder afhankelijk van reeds aanwezige kennis
- Voorkom herhaling van dezelfde domme fouten
3
Definitie
• Arthur Samuel (1959). “Machine Learning:
Field of study that gives computers the ability
to learn without being explicitly programmed”
• Tom Mitchell (1998). “A computer program is said to learn from
experience E with respect to some task T and some performance
measure P, if its performance on T, as measured by P, improves
with experience E”
4
Toepassingen
automatische tagging
spam filtering
aanbevelingen doen
5
Toepassingen
detectie van creditcard fraude
spraakherkenning
sterrenstelsels classificeren
6
Big Data: McKinsey 2011 Rapport
7
Deloitte advertorial
8
Waar kun je van leren?
• Het wordt je verteld (programmeren)
• Je krijgt voorbeelden (inductie)
• Aan de hand van analogiën
• Door zelf ervaringen op te doen
9
Lerende Agent (Russell & Norvig)
10
Lerende Agent (Poole & Mackworth)
Learning agent
11
Soorten feedback
• Supervised leren
• Reinforcement leren
• Unsupervised leren
12
Supervised leren
pictures courtesy: Simon Dennis
13
Reinforcement leren
14
Unsupervised leren
15
Inhoud
• Inleiding
- Supervised, reinforcement, unsupervised leren
• Neurale netwerken
• Deep learning
16
Kunstmatige Neurale Netwerken
• Computationele structuur bestaande uit individuele units
• Individuele unit = “neuron”
• Hersenstructuur als inspiratie
• Model voor neurowetenschappen
17
Neuronen in onze hersenen
• Synapsen van andere zenuwcellen laten transmitters vrij in de
dendrieten (input)
• Wanneer de electrische
potentiaal in het soma over de
drempel gaat, vuurt het neuron
(trigger) en ...
• wordt een actiepotentiaal via
de axon naar andere neuronen
gestuurd (output)
18
McCullogh-Pitts Neuron
neuron output =
een activatiefunctie
van de input
X1
1 if Z  
 Z   
0 if Z  
w1
…
input van
andere
neuronen
Xp
synaptische
sterkte
19
drempel
Σ
Z
σ
Y
wp
neuron input =
gewogen som van
inkomende activiteiten
Z  w1 X1  ...  w j X j  ...  w p X p
Geschiedenis
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
20
1943 McCulloch & Pitts: eerste studie van neurale netwerken
1948 Wiener: feedback loops
1949 Hebb: eerste neurale leerregel
1951 Minsky: eerste neurale netwerk systeem
1956 Geboorte van de Kunstmatige Intelligentie
1957 Rosenblatt: perceptron
1960 Widrow & Hoff: adaline
1960s Systemen bestaande uit perceptrons en adalines
1969 Minsky & Papert: “Perceptrons”
1969 Bryson & Ho: back-propagation
1970s Perceptron winter
1980s Connectionisme
1986 Rumelhart & McClelland: “Parallel Distributed Processing”
1990s Meer gebruik en begrip; NNs voor toepassingen versus hersenmodellen
2000s “Gewoon” een van de machine learning technieken ||| Meer gedetailleerde hersenmodellen
2010s Revival van diepe neurale netwerken ||| Enorme neurale architecturen
Meerlaags perceptron
• Bryson & Ho (1969), en vele anderen daarna: McCullogh-Pitts neuronen in
verschillende lagen
• Typisch één laag met verborgen
(“hidden”) units
• Feedforward model: geen cycles
• Back-propagation leerregel
• Hidden units leren zich te specialiseren
om karakteristieke kenmerken te coderen
(“high-level features”)
• Output units combineren deze features tot een voorspelling/classificatie
21
Inhoud
• Inleiding
- Supervised, reinforcement, unsupervised leren
• Neurale netwerken
• Deep learning
22
Convolutionele Neurale Netwerken
• Convolutie: matrixoperatie schuift over het beeld
• Filters voor edge detection, blurring, sharpening
• Neural netwerk leert nuttige filters
• Herhalen: meer en meer lagen → diepe neurale netwerken
23
Unsupervised leren op Youtube frames
Le et al., ICML 2012
24
Succesfactoren
• Uitstekend parallelliseerbaar op GPUs: enorme rekenkracht
• Grote datasets
• Veel nieuwe slimme “trucs” (ReLU, dropout, batch normalization, ...)
• Beschikbaarheid open source software, cursussen en tutorials
• Voor computer vision, spraakherkenning, natuurlijke taalverwerking
onverslaanbaar (maar niet daarbuiten...)
25
Conclusie
• Meer rekenkracht, meer data, betere methoden, complexere modellen →
betere systemen voor machinaal leren
• Convolutionele neurale netwerken als paradepaardje: ideaal voor computer
vision en andere taken met een lokale structuur in ruimte/tijd
26
Download