1Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Machinaal leren
2Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Opdracht 1
Deadline:
Vandaag, om 12u!
3Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Waar zijn we nu?
machinaal leren
gesuperviseerd leren
4Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Gesuperviseerd leren: classificatie
classificatie-principes
classificatie-principes
Hoe goed hebben we geleerd?
5Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Classificatie: technieken
• versieruimtes
• beslisbomen
• statistische modellen
• inductief leren
• …
Begin met een model.Herhaal.
Gegeven een voorbeeld pas het model aan.
Stop als• er geen voorbeelden meer zijn, of• het model inconsistent is.
6Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Bierdrinkerprobleem
De bierdrinker
• proeft verschillende soorten pils
• geeft aan of het hem smaakt
Doel:
• geef een raad welk pilsje hem zal smaken (classificatieprincipe)
• gegeven nieuwe pilssoorten voorspel of ze gaan smaken
7Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Belgische pilssoorten Naam % Kleur Smaak Blik smaakt?
5% Blond Bitter ja -
5,2% Blond Lichtbitter ja +
4,9% Goudgeel Lichtbitter ja -
5% Goudgeel Bitter nee -
5,5% Blond Lichtbitter ja +
5,1% Blond Lichtbitter nee -
8Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Het model dekt alle positieve voorbeelden en geen enkel
negatief voorbeeld.
Alle mogelijke situaties+
-
-
-
-
+
9Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Het model dekt alle positieve voorbeelden en geen enkel
negatief voorbeeld.
++
+
+ --
--
Alle mogelijke situaties
10Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Meerdere modellen?
++
+
+ --
--
Alle mogelijke situaties
11Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
++
+
+ --
--
Allen de positieve voorbeelden zijn goed
Alles behalve de negatieve voorbeelden is goed
Zijn dat goede modellen?
A.Ja
B.Nee
12Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Wat verwachten we van een model?
+-
-
-
-
+
dekt de positieve voorbeelden
dekt de negatieve voorbeelden niet
++
+
+ --
--
kan positief/negatief goed voorspellen door een hypothese op te stellen
13Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Hypotheseruimte
• Vaste taal om modellen om te schrijven– Model is een hypothese in de ruimte– Forceert veralgemening– Vermijdt “nutteloze” modellen
• Hypotheses kunnen mekaar veralgemenen of verfijnen
14Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Hypotheseruimte
• Voor ieder attribuut:
• Hypothese – verzameling voorbeelden:– Blonde 5% soorten [>, 5%, Blond, >, >]– Stella [Stella Artois, 5%, Blond, Bitter, ja]– Speciale hypothese: ?
?
>
waarde 1 waarde n…
15Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Minimale veralgemening
• [z1, …, zn] is een minimale veralgemening van [x1,…, xn] en [y1,…, yn]
– voor ieder paar (xi, yi) vind zi zodanig dat
• zi xi, zi yi en
• voor ieder z (z xi, z yi) (z zi)
• Vanaf hier spreken we van veralgemening ipv minimale veralgemening
16Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Hoeveel > zijn er in de veralgemening van[4,9%, Goudgeel, Lichtbitter] en [5%, Goudgeel, Bitter] ?
?
>
waarde 1 waarde n…Gegeven hypotheseruimte voor ieder attribuut:
A.geen
B.één
C.twee
D.drie
17Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
“Find S” algoritme
Begin met een model.
Herhaal.
gegeven een voorbeeld
pas het model aan.
Stop als
er geen voorbeelden meer zijn
of het model inconsistent is.
Begin met ?
Herhaal
alleen voor positieve vb:
veralgemeen het model om het nieuwe vb te dekken
Stop als
er geen voorbeelden meer zijn
Kan niet voorvallen.
18Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Begin met ?
Herhaalalleen voor positieve vb
veralgemeen het model
Stop alser geen voorbeelden meer zijn
?
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
5,2% Blond Lichtbitter ja +
5,5% Blond Lichtbitter ja +
[>, >,Blond, Lichtbitter, ja]
19Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
• Andere hypotheseruimte
• Positieve en negatieve
voorbeelden
Wat leert “Find S”?A. informaticus
B. student ?
>
Jan Marijke Geert
informaticusstudent
wiskundige
20Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Problemen met “Find S”
• Kan inconsistente situaties missen
• Kan niet uitdrukbare situaties missen
• Kan zich niet deterministisch gedragen
• Kan verkeerde hypothese kiezen tov de negatieve voorbeelden
?
JanMarijke Geert
student
21Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Een betere oplossing…
• Positieve en negatieve voorbeelden
• Model: ({a1, …, an}, {s1, …, sm})
– deel van de hypotheseruimte
– algemene hypothesen {a1, …, an}
– specifieke hypothesen {s1, …, sm}
– dekken alle hypothesen die • meer specifiek () zijn dan een zekere ai
• meer algemeen () zijn dan een zekere sj
22Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
• Hoeveel hypothesen telt
het model (>, {Marijke, Geert})?
A. 5
B. 6
?
>
Jan Marijke Geert
informaticusstudent
wiskundige
23Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Versieruimtes algoritme 1
Begin met een model.
Herhaal.
gegeven een voorbeeld
pas het model aan.
Stop als
er geen voorbeelden meer zijn
of het model inconsistent is.
Begin met (>,?)
Herhaal met (A,S)
positieve vb: veralgemeen alle S om het nieuwe vb te dekken
negatieve vb: verfijn alle A om het nieuwe vb uit te sluiten
Stop als
er geen voorbeelden meer zijn
of het model inconsistent is.
24Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
?
[>, >, >, >, >]
25Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
5,2% Blond Lichtbitter ja +
?
[>, >, >, >, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
26Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
5% Blond Bitter ja -
?
[>, >, >, >, >]
[Jupiler, >, >, >, >] … [>, >, >, >, nee]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
27Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
5% Blond Bitter ja -
?
[>, >, >, >, >]
[Jupiler, >, >, >, >] … [>, >, >, >, nee]
5 biersoorten + 4 alcoholgehaltes + kleur + smaak + geen blik = 12 mogelijkheden
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
28Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Maar…
[Jupiler, >, >, >, >] [>, 5,1%, >, >, >]
[Maes, >, >, >, >] [>, 5,2%, >, >, >]
[Bavik, >, >, >, >] [>, 5,5%, >, >, >]
[OpsAle, >, >, >, >] [>, >, Goudgeel, >, >]
[Romy, >, >, >, >] [>, >, >, Lichtbitter, >]
[>, 4,9%, >, >, >] [>, >, >, >, nee]
S tot nu toe: {[Jupiler, 5,2%, Blond, Lichtbitter, ja]}
29Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Maar…
[Jupiler, >, >, >, >] [>, 5,1%, >, >, >]
[Maes, >, >, >, >] [>, 5,2%, >, >, >]
[Bavik, >, >, >, >] [>, 5,5%, >, >, >]
[OpsAle, >, >, >, >] [>, >, Goudgeel, >, >]
[Romy, >, >, >, >] [>, >, >, Lichtbitter, >]
[>, 4,9%, >, >, >] [>, >, >, >, nee]
S tot nu toe: {[Jupiler, 5,2%, Blond, Lichtbitter, ja]}
30Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Versieruimtes algoritme 2
Begin met (>,?)
Herhaal met (A,S)
positieve vb: veralgemeen alle S
negatieve vb: verfijn alle A
Stop als
er geen voorbeelden meer zijn
of het model inconsistent is.
Verfijn alle A z.d. iedere nieuwe algemene hypothese is een veralgemening van een specifieke hypothese.
Zoals voor de negatieve vb.
31Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
5% Blond Bitter ja -
?
[>, >, >, >, >]
[Jupiler, >, >, >, >]
[>, 5,2%,
>, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
32Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
5,5% Blond Lichtbitter ja +
?
[>, >, >, >, >]
[Jupiler, >, >, >, >]
[>, 5,2%,
>, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, ja]
33Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
5,5% Blond Lichtbitter ja +
?
[>, >, >, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, ja]
34Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
4,9% Goudgeel Lichtbitter ja -
?
[>, >, >, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, ja]
A.[>, >, Blond, Lichtbitter, >]B.[>, >, Blond, >, ja]C.[>, >, >, Lichtbitter, ja]
?
35Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
5,1% Blond Lichtbitter nee -
?
[>, >, >, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, >]
[>, >, Blond, Lichtbitter, ja]Hetzelfde
hypothese!
Blonde lichtbittere pilssoorten in blik!
36Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Versieruimtes
Houdt rekening met pos en neg voorbeelden Behandelt pos en neg op hetzelfde manier Kan waarde voorspellen zelfs als het concept niet
volledig geleerd is Kan “het meest interessante voorbeeld” kiezenKan niet tegen ruisEist veel verschillende eigenschappenPast niet als er meerdere klassen zijn
37Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Waarde voorspellen als het concept niet volledig geleerd is
?
[>, >, >, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, >]
5% Goudgeel
Bitter nee
Wij weten al dat Bavik niet gaat smaken!
38Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
“Het meest interessante voorbeeld” kiezen
?
[>, >, >, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, >]
[>, >, >, Lichtbitter, ja]
Voorbeeld = scheiding van hypotheses
Interessante voorbeeld:
~50% vd hypotheses: “positief”,
~50% vd hypotheses: “negatief”
39Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
?
[>, >, >, >, >]
[>, >, >, Lichtbitter, >]
[Jupiler, 5,2%, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, ja]
[>, >, Blond, Lichtbitter, >]
[>, >, >, Lichtbitter, ja]
Welke voorbeeld is beter:
of ?
40Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Classificatie: technieken
• versieruimtes
• beslisbomen
• statistische modellen
• inductief leren
• …
Wat is dat?
Hoe bouw je zo’n boom?
41Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Beslisbomen voor classificatie
• Boom– knopen: eigenschappen– kanten: waarden– bladeren: klassen
kleur
bitterheid- -
blondgoudgeel
amber
-
bitterlichtbitter
verpakking
blik fles
-+
42Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
ID3(Voorbeelden, Eigenschappen, Klassen)1. Voorbeelden =
- Boom met één knop “Fail”
2. kKlassen vVoorbeelden klasse(v)=k- Boom met één knop k
3. Eigenschappen = - Boom met één knop k, z.d. k het meest voorkomende klasse is in
Voorbeelden
4. Anders, kies eEigenschappen
- Waarden van e: w1, …, wn.
- Splits Voorbeelden in V1, …, Vn
z.d. vVi klasse(v) = wi - Boom met
wortel: e
kanten: w1, …, wn.
subbomen: ID3(V1, Eigenschappen\{e}, Klassen),…, ID3(Vn,Eigenschappen\{e}, Klassen)
43Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Wat is de maximale diepte van een beslisboom gebouwd door
ID3(Voorbeelden, Eigenschappen, Klassen)?
44Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Kiezen van een eigenschap
• Doel: zo ondiep mogelijke beslisboom
• Keuze van e: – afhankelijk van Voorbeelden– moet ons zo veel mogelijk informatie
opleveren • het is niet hetzelfde informatie als in {gegevens,
informatie, kennis}
45Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Informatietheorie in een notendop (1)
• Zelfinformatie van een gebeurtenis
• Entropie = verwachting van de zelfinformatie
• Entropie van een verzameling = entropie tov kans dat een voorbeeld bij een klasse hoort
Claude E. Shannon 1916-2001
))(
1(log)( 2 XP
XI
n
i ii xXPxXPXIEXH
12 )
)(
1(log)())(()(
46Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Informatietheorie in een notendop (2)
• Entropie van een verzameling, dus
• Bereken H(Voorbeelden)– 10 voorbeelden– 2 klassen (5 en 5)
n
i i
i
Klasse
nVoorbeelde
nVoorbeelde
KlassenVoorbeeldeH
12 )(log)(
47Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Informatietheorie in een notendop• Informatiewinst op eigenschap e die
Voorbeelden in V1, …, Vn opsplitst
n
ii
i VHnVoorbeelde
VnVoorbeeldeHenVoorbeeldeGain
1
)()(),(
Ltijd Alt? SW/HW Klasse Ltijd Alt? SW/HW Klasse
oud ja software verlies mid nee software winst
oud nee software verlies mid nee hardware winst
oud nee hardware verlies nieuw ja software winst
mid ja software verlies nieuw nee software winst
mid ja hardware verlies nieuw nee hardware winst
Welke eigenschap geeft meer winst?
A. Leeftijd B. SW/HW
48Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Dus
• Kies e z.d. Gain(Voorbeelden,e) het grootst is.
leeftijd
alt?
verlies
oud
winst
nieuwe
mid
verlies
ja
winst
nee
49Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Huiswerk 15
• ID3 kan verbeterd worden – Verbeterde versies heten C4.5 en C5.0
• Bespreek de optimalisaties van C4.5 en/of C5.0.• Geef een voorbeeld die de voordelen van
C4.5/C5.0 tov ID3 aantoont.
• In te leveren ten laatste op 5 juni 2007
50Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Classificatie: technieken
• versieruimtes
• beslisbomen
• statistische modellen
• inductief leren
• …
Lineaire modellen met kleinste kwadraten.
k dichtstbijzijnde buren
51Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Lineaire modellen
• Classificatieprincipe (model):– lineaire combinatie van de invoer
• Gegeven een voorbeeld
voorspel
• Coëfficiënten?– Kleinste kwadraten
pXX ,,1
p
T
p
p
jjj
XXY
XY
,,,,,1
of
101
10
52Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Kleinste kwadraten
• Idee: minimaliseer– waar een klasse is van een oefenvoorbeeld
– NB: Euclidische afstand
• Maar hoe?
– waar Z een N*(p+1) matrix is• N – het aantal oefenvoorbeelden
• p – het aantal eigenschappen van een voorbeeld – vergeet de vrije coëfficiënt niet!
– y – een klasse van een oefenvoorbeeld
N
i
Tii zyRSS
1
2)(
iy iz
)()()( ZyZyRSS T
53Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
yZZZ
ZZyZRSS
ZZyZyyRSS
ZZZyyZyyRSS
ZyZyRSS
TT
TT
TTT
TTTT
T
1)(
rkregen voo wordt verminimumhet Dus
)(22)(
)()()(2)(
)()()(
)()()(
54Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
• Onder welke voorwaarden kunnen we
berekenen?
yZZZ TT 1)(
55Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Classificatie en lineaire modellen
• Schrijf op Z en y– Positieve voorbeelden: yi = 1
– Negatieve voorbeelden: yi = 0
– vergeet de vrije coëfficiënten niet!
• Bereken • Controleer op de nieuwe voorbeelden
– x is positief als x 0.5– x is negatief als x < 0.5
56Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
• Voorbeelden – positief: (1,3) (3,2) – negatief: (2,1) (3,1)
• Schrijf op Z en y
113
112
123
131
Z
0
0
1
1
y
57Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
113
112
123
131
Z
0
0
1
1
y
yZZZ TT 1)(
1825
1813
185
58Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
1825
1813
185
• Hoe worden de volgende voorbeelden geclassificeerd?
A.(1,1) positief, (4,2) negatiefB.(1,1) negatief, (4,2) positiefC.Beide voorbeelden – negatiefD.Beide voorbeelden – positief
59Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
• Stelling: “Alle oefenvoorbeelden worden correct geclassificeerd”
A.Ik ben er mee eens.B.Ik ben er niet mee eens.
60Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Huiswerk 16
• Een andere lineaire model aanpak is
LDA = Linear Discriminant Analysis
• Wat is LDA? • Hoe wordt die berekend?• Voorbelden van succesvolle toepassingen• In te leveren ten laatste op 5 juni 2007
61Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Dichtstbijzijnde buren
• Kijk naar de klassen van k dichtstbijzijnde buren– Euclidische afstand
• De meerderheid beslist– 1:1 wordt willekeurig beslist
• Succesvol voor – handschriftherkenning (cijfers)– satellietbeelden
62Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
• Voorbeelden – positief: (1,3) (3,2) – negatief: (2,1) (3,1)
• Hoe worden de volgende voorbeelden geclassificeerd voor k = 3?
A.(1,1) positief, (4,2) negatiefB.(1,1) negatief, (4,2) positiefC.Beide voorbeelden – negatiefD.Beide voorbeelden – positief
63Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
0
1
2
3
0 1 2 3 4
k (1,1) (4,2)
1 negatief positief
3 negatief negatief
lineair model
64Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
• Stelling: “Alle oefenvoorbeelden van een willekeurig dataset worden correct geclassificeerd”
A.Waar voor alle k.B.Waar voor geen enkele k.C.Waar voor sommige k en niet voor andere.
65Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Problemen
• Alle voorbeelden moeten in de geheugen zijn– voor grotere voorbeelden: k > 1 – onmogelijk!
• Aanname: alle richtingen (eigenschappen) zijn – even belangrijk– voor alle voorbeelden– Betere oplossing zie Hastie, Tibshirani 1996.
66Kl. kwadraten Dichtstbijzijnde burenBeslisbomen VersieruimtesIntro
Wat hebben we vandaag gedaan?
• Classificatie als een vb van gesuperviseerd leren
• 4 aanpakken:– versieruimtes– beslisbomen– lineaire modellen (met kl. kwadraten)– k dichtstbijzijnde buren
Top Related