230 likes | 406 Views
Data Mining: Schatgraven in Gegevensbergen Peter van der Putten ALP Group, LIACS & KiQ Ltd 6 April 2004. Agenda (ovb). College: 1400 -1500 Pauze: 1500 -1515 Practicum: 1515 -1615 Bespreken: 1615 -1645. Bronnen van (kunstmatige) intelligentie.
E N D
Data Mining: Schatgraven in Gegevensbergen Peter van der Putten ALP Group, LIACS & KiQ Ltd 6 April 2004
Agenda (ovb) • College: 1400 -1500 • Pauze: 1500 -1515 • Practicum: 1515 -1615 • Bespreken: 1615 -1645
Bronnen van (kunstmatige) intelligentie • Redeneren versus leren • Leren uit data: • Klantgegevens • Beurskoersen • Pianomuziek • Foto’s van verdachten • Websites op het internet • Robotwaarnemingen • Etc.
Data Mining & Knowledge Discovery in Databases • Werkdefinitie • Het ontdekken van interessante, nuttige en verborgen kennis in grote hoeveelheden data met intelligente patroonherkenningstechnieken • Data mining is een interdisciplinair vakgebied: • Kunstmatige intelligentie, machine learning, information retrieval, statistiek, statistische patroonherkenning, econometrie, cognitieve psychologie, neuroscience, etc.
Voorbeelden van data mining taken • Zoeken • Matching: het zoeken naar best matchende objecten / patronen • Voorspellen • classificatie: het toekennen van een bekende klasse aan een object (‘nominale/categoriale voorspelling’) • predictie/regressie: het voorspellen van een numerieke kenmerk voor een object (‘numerieke voorspelling’) • Beschrijven • clusteren: het vinden van groepen van objecten (groepen/klassen van te voren niet bekend) • rule discovery: het afleiden van interessante regels en verbanden (‘associatieregels’)
Zoeken in de patroonruimte Zoeken naar best matchende patronen / objecten Elk object is een punt in de ‘patroonruimte’. Dimensies zijn de eigenschappen van het object, bvb leeftijd en inkomen voor een klantendatabase, of aantal keren ‘Matej’ en ‘Kezman’ op een webpagina. Patroonruimtes zijn vaak hoogdimensionaal (10 tot duizenden dimensies) bvb. inkomen bvb. leeftijd
Voorbeelden van voorspelalgoritmen • Beslisbomen (decision trees) • Nabuuralgoritmen (nearest neighbor) • Neurale netwerken • Good old statistics • Genetische algoritmen / evolutionairy computing • Artificial Immune Systems • …..
Voorbeeld voorspel algoritme 1:Decision Trees (Beslisbomen) • Vraag-antwoord spel
Decision trees in de patroonruimte Doel classifier is onderscheid te maken tussen klasse ‘cirkel’ en klasse ‘vierkant’ op basis van leeftijd en inkomen. Decision tree heeft lijnstukken loodrecht op assen beschikbaar Elk lijnstuk stelt een beslissing voor (splitsing in de boom) bvb. inkomen bvb. leeftijd
Decision trees in de patroonruimte Lijnstukken loodrecht op assen beschikbaar Elk lijnstuk stelt een beslissing voor (splitsing in de boom) bvb. inkomen bvb. leeftijd
Voorbeeld voorspel algoritme 2:Nearest Neighbour • Data zelf is het voorspellingsmodel, dus geen abstracte representatie zoals een boom oid • Voor een gegeven object x zoek die n objecten waarvan de klasse bekend is en die het meest lijken op x • Voorspel voor object x de klasse die het meest voorkomt bij de best lijkende objecten
Nearest Neighbor in de patroonruimte Voorspellen = nieuw geval Elk willekeurig complex scheidingsvlak mogelijk Voorwaarde: er moet wel genoeg data aanwezig zijn bvb. inkomen bvb. leeftijd
Nearest Neighbor in de patroonruimte Voorspellen Elk willekeurig complex scheidingsvlak mogelijk Voorwaarde: er moet wel genoeg data aanwezig zijn bvb. inkomen bvb. leeftijd
Voorspel algoritme 3:Neurale Netwerken • Geinspireerd door werking neuronen in hersenen (McCullough & Pitts 1943 (!)) • Invoer (bvb klantkenmerken) wordt gecodeerd op invoerlaag, activatie stroomt door netwerk over verbindingen en leidt tot uitvoer op output laag (bvb interesse in product) • Netwerk leert verbanden (gewicht verbindingen) aan de hand van voorbeelden en leerregel
Neurale Netwerken • Voorbeeld simpel netwerk (2 lagen) • Interesse in product = leeftijd * gewichtleeftijd + inkomen * gewichtinkomen leeftijd inkomen gewichtleeftijd gewichtinkomen interesse in product
Neurale netwerken in de patroonruimte Voorspellen Simpel netwerk: slechts een lijn beschikbaar Meerlaags netwerk: Elk willekeurig scheidingsvlak mogelijk bvb. inkomen bvb. leeftijd
e Beslisboom demo in WEKA, Een open source mining tool
Beschrijvende data mining:Clusteren • Het vinden van groepen van objecten • Binnen een groep (cluster, segment) lijken objecten op elkaar, groepen onderling zijn juist verschillend • Toepassingen bvb: • Welke verschillende soorten wodkadrinkers bestaan er? • Voor een gegeven ziekte, zijn er verschillende groepen patienten te onderscheiden die elk een verschillende behandeling nodig hebben? • Etc.
Clusteren in de patroonruimte Clusteren is het vinden van groepen in de patroon ruimte In 2 of 3 dimensionale patroonruimtes zou je de data set kunnen visualiseren en het herkennen van clusters aan een gebruiker kunnen overlaten bvb. inkomen bvb. leeftijd
Clusteren in de patroonruimte Clusteren is het vinden van groepen in de patroon ruimte In 2 of 3 dimensionale patroonruimtes zou je de data set kunnen visualiseren en het herkennen van clusters aan een gebruiker kunnen overlaten Met meer dimensies kan dat niet bvb. inkomen bvb. leeftijd
Beschrijvende data mining:associatie regels • Ontdekken van regelmatigheden • Vorm: als A en B dan C • Voorbeeld: • als aardappelen en boerenkool dan worst • Belangrijke maten • Support regel: hoe vaak komen aardappelen en boerenkool (A,B) voor (hoeveelheid ‘bewijs’) • Confidence regel: hoe vaak komt worst dan voor / support (geldt A,B C altijd?)
e Associatie regel demo in WEKA,
Wat is behandeld? • Leren versus redeneren • Definitie data mining • Overzicht data mining taken • Voorbeeldalgoritmen voor voorspelling • Voorbeeldalgoritme associatieregels • Demo’s in WEKA • En nu: pauze en practicum (305)