Machinaal leren Intro Versieruimtes Beslisbomen Kl kwadraten Dichtstbijzijnde
Machinaal leren Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 1
Opdracht 1 Deadline: Vandaag, om 12 u! Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 2
Waar zijn we nu? machinaal leren Intro Versieruimtes Beslisbomen Kl. kwadraten gesuperviseerd leren Dichtstbijzijnde buren 3
Gesuperviseerd leren: classificatieprincipes Intro Versieruimtes Beslisbomen Kl. kwadraten Hoe goed hebben we geleerd? Dichtstbijzijnde buren 4
Classificatie: technieken • • • Intro versieruimtes beslisbomen statistische modellen inductief leren … Versieruimtes Beslisbomen Kl. kwadraten Begin met een model. Herhaal. Gegeven een voorbeeld pas het model aan. Stop als • er geen voorbeelden meer zijn, of • het model inconsistent is. Dichtstbijzijnde buren 5
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 Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 6
Belgische pilssoorten Naam % Kleur Smaak Blik smaakt? 5% Blond Bitter ja - Lichtbitter ja + 4, 9% Goudgeel Lichtbitter ja - 5, 2% Blond 5% Intro Versieruimtes Goudgeel Bitter nee - 5, 5% Blond Lichtbitter ja 5, 1% Blond Lichtbitter nee - Beslisbomen Kl. kwadraten Dichtstbijzijnde buren + 7
Het model dekt alle positieve voorbeelden en geen enkel negatief voorbeeld. + - Alle mogelijke situaties + - - - Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 8
Het model dekt alle positieve voorbeelden en geen enkel negatief voorbeeld. + Alle mogelijke situaties + + + - - Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 9
Meerdere modellen? + Alle mogelijke situaties + + + - - Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 10
Allen de positieve voorbeelden zijn goed Alles behalve de negatieve voorbeelden is goed + Zijn dat goede modellen? + + + - - Intro Versieruimtes Beslisbomen Kl. kwadraten A. Ja B. Nee Dichtstbijzijnde buren 11
Wat verwachten we van een model? + + - - - dekt de negatieve voorbeelden niet Versieruimtes + + dekt de positieve voorbeelden Intro + Beslisbomen Kl. kwadraten + - - - kan positief/negatief goed voorspellen door een hypothese op te stellen Dichtstbijzijnde buren 12
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 Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 13
Hypotheseruimte > • Voor ieder attribuut: waarde 1 … waarde n ? • Hypothese – verzameling voorbeelden: – Blonde 5% soorten [>, 5%, Blond, >, >] – Stella [Stella Artois, 5%, Blond, Bitter, ja] – Speciale hypothese: ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 14
Minimale veralgemening • [z 1, …, zn] is een minimale veralgemening van [x 1, …, xn] en [y 1, …, 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 Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 15
Gegeven hypotheseruimte voor waarde 1 ieder attribuut: > … waarde n ? Hoeveel > zijn er in de veralgemening van [4, 9%, Goudgeel, Lichtbitter] en [5%, Goudgeel, Bitter] ? Intro Versieruimtes A. geen C. twee B. één D. drie Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 16
“Find S” algoritme Begin met een model. Herhaal. Begin met ? Herhaal gegeven een voorbeeld pas het model aan. Stop als alleen voor positieve vb: veralgemeen het model om het nieuwe vb te dekken Stop als er geen voorbeelden meer zijn of het model inconsistent is. er geen voorbeelden meer zijn Kan niet voorvallen. Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 17
5, 2% Blond Lichtbitter ja + 5, 5% Blond Lichtbitter ja + Begin met ? Herhaal [>, >, Blond, Lichtbitter, ja] alleen voor positieve vb veralgemeen het model Stop als er geen voorbeelden meer zijn [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 18
• Andere hypotheseruimte • Positieve en negatieve voorbeelden informaticus Wat leert “Find S”? A. informaticus B. student Intro Versieruimtes Beslisbomen Jan > student wiskundige Marijke Geert ? Kl. kwadraten Dichtstbijzijnde buren 19
Problemen met “Find S” • Kan inconsistente situaties missen student • Kan niet uitdrukbare situaties missen Jan Marijke Geert • Kan zich niet deterministisch gedragen ? • Kan verkeerde hypothese kiezen tov de negatieve voorbeelden Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 20
Een betere oplossing… • Positieve en negatieve voorbeelden • Model: ({a 1, …, an}, {s 1, …, sm}) – deel van de hypotheseruimte – algemene hypothesen {a 1, …, an} – specifieke hypothesen {s 1, …, sm} – dekken alle hypothesen die • meer specifiek ( ) zijn dan een zekere ai • meer algemeen ( ) zijn dan een zekere sj Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 21
• Hoeveel hypothesen telt het model (>, {Marijke, Geert})? A. 5 informaticus B. 6 Jan > student wiskundige Marijke Geert ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 22
Versieruimtes algoritme 1 Begin met een model. Herhaal. Begin met (>, ? ) Herhaal met (A, S) gegeven een voorbeeld pas het model aan. positieve vb: veralgemeen alle S om het nieuwe vb te dekken negatieve vb: verfijn alle A om Stop als het nieuwe vb uit te sluiten er geen voorbeelden meer. Stop zijn als of het model inconsistent is. er geen voorbeelden meer zijn of het model inconsistent is. Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 23
[>, >, >] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 24
5, 2% Blond Lichtbitter ja + [>, >, >] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 25
5% Blond Bitter ja - [>, >, >] [Jupiler, >, >] … [>, >, nee] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 26
5% Blond Bitter ja - [>, >, >] [Jupiler, >, >] [>, >, nee] … 5 biersoorten + 4 alcoholgehaltes + kleur + smaak + geen blik = 12 mogelijkheden [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 27
Maar… S tot nu toe: {[Jupiler, 5, 2%, Blond, Lichtbitter, ja]} Intro [Jupiler, >, >] [Maes, >, >] [>, 5, 1%, >, >, >] [>, 5, 2%, >, >, >] [Bavik, >, >] [>, 5, 5%, >, >, >] [Ops. Ale, >, >] [>, >, Goudgeel, >, >] [Romy, >, >] [>, >, >, Lichtbitter, >] [>, 4, 9%, >, >, >] [>, >, nee] Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 28
Maar… S tot nu toe: {[Jupiler, 5, 2%, Blond, Lichtbitter, ja]} Intro [Jupiler, >, >] [Maes, >, >] [>, 5, 1%, >, >, >] [>, 5, 2%, >, >, >] [Bavik, >, >] [>, 5, 5%, >, >, >] [Ops. Ale, >, >] [>, >, Goudgeel, >, >] [Romy, >, >] [>, >, >, Lichtbitter, >] [>, 4, 9%, >, >, >] [>, >, nee] Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 29
Versieruimtes algoritme 2 Begin met (>, ? ) Herhaal met (A, S) positieve vb: veralgemeen alle S negatieve vb: verfijn alle A Stop als Verfijn alle A z. d. iedere nieuwe algemene hypothese is een veralgemening van een specifieke hypothese. er geen voorbeelden meer zijn of het model inconsistent is. Intro Versieruimtes Beslisbomen Kl. kwadraten Zoals voor de negatieve vb. Dichtstbijzijnde buren 30
5% Blond Bitter ja - [>, >, >] [Jupiler, >, >] [>, >, >, Lichtbitter, >] [>, 5, 2%, >, >, >] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 31
5, 5% Blond Lichtbitter ja + [>, >, >] [Jupiler, >, >] [>, >, >, Lichtbitter, >] [>, 5, 2%, >, >, >] [>, >, Blond, Lichtbitter, ja] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 32
5, 5% Blond Lichtbitter ja + [>, >, >] [>, >, >, Lichtbitter, >] [>, >, Blond, Lichtbitter, ja] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 33
4, 9% Goudgeel Lichtbitter ja - [>, >, >] [>, >, >, Lichtbitter, >] ? A. [>, >, Blond, Lichtbitter, >] B. [>, >, Blond, >, ja] C. [>, >, >, Lichtbitter, ja] [>, >, Blond, Lichtbitter, ja] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 34
5, 1% Blond Lichtbitter nee - [>, >, >] [>, >, Blond, Lichtbitter, >] [>, >, >, Lichtbitter, >] Hetzelfde hypothese! Blonde lichtbittere pilssoorten in blik! Intro Versieruimtes Beslisbomen Kl. kwadraten [>, >, Blond, Lichtbitter, ja] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Dichtstbijzijnde buren 35
Versieruimtes C Houdt rekening met pos en neg voorbeelden C Behandelt pos en neg op hetzelfde manier C Kan waarde voorspellen zelfs als het concept niet volledig geleerd is C Kan “het meest interessante voorbeeld” kiezen D Kan niet tegen ruis D Eist veel verschillende eigenschappen D Past niet als er meerdere klassen zijn Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 36
Waarde voorspellen als het concept niet volledig geleerd is [>, >, >] [>, >, Blond, Lichtbitter, >] [>, >, >, Lichtbitter, >] 5% Goudgeel Bitter nee Wij weten al dat Bavik niet gaat smaken! Intro Versieruimtes Beslisbomen Kl. kwadraten [>, >, Blond, Lichtbitter, ja] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Dichtstbijzijnde buren 37
“Het meest interessante voorbeeld” kiezen [>, >, >] Voorbeeld = scheiding van hypotheses [>, >, >, Lichtbitter, ja] [>, >, Blond, Lichtbitter, ja] Interessante voorbeeld: ~50% vd hypotheses: “positief”, ~50% vd hypotheses: “negatief” Intro Versieruimtes Beslisbomen [>, >, >, Lichtbitter, >] [>, >, Blond, Lichtbitter, >] Kl. kwadraten [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Dichtstbijzijnde buren 38
[>, >, >] Welke voorbeeld is beter: of [>, >, >, Lichtbitter, >] [>, >, Blond, Lichtbitter, >] [>, >, >, Lichtbitter, ja] ? [>, >, Blond, Lichtbitter, ja] [Jupiler, 5, 2%, Blond, Lichtbitter, ja] ? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 39
Classificatie: technieken Wat is dat? • • • Intro versieruimtes beslisbomen statistische modellen inductief leren … Versieruimtes Beslisbomen Kl. kwadraten Hoe bouw je zo’n boom? Dichtstbijzijnde buren 40
• Boom Beslisbomen voor classificatie – knopen: eigenschappen – kanten: waarden blond – bladeren: klassen kleur amber bitterheid lichtbitter Intro + Versieruimtes - - verpakking blik - goudgeel fles Beslisbomen - Kl. kwadraten Dichtstbijzijnde buren 41
ID 3(Voorbeelden, Eigenschappen, Klassen) 1. Voorbeelden = - Boom met één knop “Fail” 2. k Klassen v Voorbeelden 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 e Eigenschappen - Waarden van e: w 1, …, wn. - Splits Voorbeelden in V 1, …, Vn z. d. v Vi klasse(v) = wi - Boom met wortel: e kanten: w 1, …, wn. subbomen: ID 3(V 1, Eigenschappen{e}, Klassen), …, ID 3(V , Eigenschappen{e}, Klassen) Intro Versieruimtes Beslisbomen Kl. kwadratenn Dichtstbijzijnde buren 42
Wat is de maximale diepte van een beslisboom gebouwd door ID 3(Voorbeelden, Eigenschappen, Klassen)? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 43
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} Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 44
Informatietheorie in een notendop (1) • Zelfinformatie van een gebeurtenis Claude E. Shannon 1916 -2001 • Entropie = verwachting van de zelfinformatie • Entropie van een verzameling = entropie tov kans dat een voorbeeld bij een klasse hoort Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 45
Informatietheorie in een notendop (2) • Entropie van een verzameling, dus • Bereken H(Voorbeelden) – 10 voorbeelden – 2 klassen (5 en 5) Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 46
Informatietheorie in een notendop • Informatiewinst op eigenschap e die Voorbeelden in V 1, …, Vn opsplitst Ltijd Alt? SW/HW Klasse oud ja software nee software verlies mid nee software winst nee hardware winst oud mid nee hardware verlies nieuw ja software winst ja software verlies nieuw nee software winst ja hardware verlies nieuw nee hardware winst Welke eigenschap geeft meer winst? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren A. Leeftijd B. SW/HW 47
Dus • Kies e z. d. Gain(Voorbeelden, e) het grootst is. oud verlies leeftijd mid winst alt? ja Versieruimtes Beslisbomen nee winst verlies Intro nieuwe Kl. kwadraten Dichtstbijzijnde buren 48
Huiswerk 15 • ID 3 kan verbeterd worden – Verbeterde versies heten C 4. 5 en C 5. 0 • Bespreek de optimalisaties van C 4. 5 en/of C 5. 0. • Geef een voorbeeld die de voordelen van C 4. 5/C 5. 0 tov ID 3 aantoont. • In te leveren ten laatste op 5 juni 2007 Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 49
Classificatie: technieken • • • Intro versieruimtes beslisbomen statistische modellen inductief leren … Versieruimtes Beslisbomen Kl. kwadraten Lineaire modellen met kleinste kwadraten. k dichtstbijzijnde buren Dichtstbijzijnde buren 50
Lineaire modellen • Classificatieprincipe (model): – lineaire combinatie van de invoer • Gegeven een voorbeeld voorspel • Coëfficiënten? – Kleinste kwadraten Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 51
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! Intro – y – een klasse van een oefenvoorbeeld Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 52
Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 53
• Onder welke voorwaarden kunnen we berekenen? Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 54
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 Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 55
• Voorbeelden – positief: (1, 3) (3, 2) – negatief: (2, 1) (3, 1) • Schrijf op Z en y Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 56
Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 57
• Hoe worden de volgende voorbeelden geclassificeerd? A. (1, 1) positief, (4, 2) negatief B. (1, 1) negatief, (4, 2) positief C. Beide voorbeelden – negatief D. Beide voorbeelden – positief Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 58
• Stelling: “Alle oefenvoorbeelden worden correct geclassificeerd” A. Ik ben er mee eens. B. Ik ben er niet mee eens. Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 59
Huiswerk 16 • Een andere lineaire model aanpak is LDA = Linear Discriminant Analysis • • Intro Wat is LDA? Hoe wordt die berekend? Voorbelden van succesvolle toepassingen In te leveren ten laatste op 5 juni 2007 Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 60
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 Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 61
• 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) negatief B. (1, 1) negatief, (4, 2) positief C. Beide voorbeelden – negatief D. Beide voorbeelden – positief Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 62
lineair model k 1 3 Intro Versieruimtes (1, 1) negatief Beslisbomen Kl. kwadraten (4, 2) positief negatief Dichtstbijzijnde buren 63
• 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. Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 64
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. Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 65
Wat hebben we vandaag gedaan? • Classificatie als een vb van gesuperviseerd leren • 4 aanpakken: – versieruimtes – beslisbomen – lineaire modellen (met kl. kwadraten) – k dichtstbijzijnde buren Intro Versieruimtes Beslisbomen Kl. kwadraten Dichtstbijzijnde buren 66
- Slides: 66