Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
HKGABB0 Artificiell Intelligens HT 06 [email protected] Anton Aspgren 840529-7535 Data mining 1 HKGABB0 Artificiell Intelligens HT 06 [email protected] Anton Aspgren 840529-7535 Kortfattat.....................................................................................................................................3 Begränsningar .........................................................................................................................3 Tillvägagångssätt ....................................................................................................................4 Statistik ...................................................................................................................................4 Data mining and hardware/software...........................................................................................5 Trender....................................................................................................................................5 Applikationer ..........................................................................................................................5 Data Mining Modeller och Algoritmer.......................................................................................6 Neurala Nätverk......................................................................................................................6 Beslutsträd ..............................................................................................................................7 Regelinduktion........................................................................................................................8 K-nearest neighbour ...............................................................................................................8 Logistisk regression................................................................................................................9 Discriminant analysis .............................................................................................................9 Generalized Additive Models .................................................................................................9 Boosting..................................................................................................................................9 Genetiska Algoritmer ...........................................................................................................10 Referenser .............................................................................................................................11 2 HKGABB0 Artificiell Intelligens HT 06 [email protected] Anton Aspgren 840529-7535 .RUWIDWWDW Datamining är ett verktyg som finner samband i stora datamängder organiserad information, SK databaser. Ett exempel presenteras nedan. 5HVXOWDWWDYODXUW\VNVFKDFNWXUQHULQJ Dessa databaser används nog sällan i kontexten data mining dock. I regel är det vinstdrivande grupper med mycket stora databaser som behöver hjälp att mina sin data. Dessa inkluderar främst företag och olika slags forskningsgrupper. Företag särskilt för databaser över sina produkter, kunder och transaktioner. Butikskedjor klarar av att ha det system av tillfälliga produkter, rabatter och specialerbjudanden tack vare att de sparar alla dina kvitton, kompletta med inköpta varor, datum och tid för inköpet. Möjligen sparar de även din personinformation, om du skulle betala med kort, och spara ditt personnummer, kön och ålder. Särskilt dessa sista uppgifter använder företaget sedan för att genom data mining klargöra trender och mönster som de kan använda för att marknadsföra sig själva och utöka sitt sortiment av tjänster. Men data mining används även för att upptäcka till exempel stölder eller bedrägeri inom företaget, samt vanligt hederlighet spill. Desto mer data man har i sin databas, desto bättre. Man väljer sedan ut relevanta data, och sätter sitt dataminingprogram till att arbeta fram mönster. Dessa används sedan för att bygga en modell som sammanfattar dessa mönster i en modell(till exempel att människor köper mer choklad från Marocko under juni-augusti eftersom marockanerna har kakaobönesäsong då, och nyligen har slopat sin exportskatt på just kakao). Det sista steget är att verifiera detta, genom att undersöka om modellen stämmer genom att vända sig till ett begränsat urval ur sin målgrupp som man tror köper chokladen. %HJUlQVQLQJDU Data mining är ett verktyg I händerna på erfarna företagsanalytiker, och kan själv inte förstå värdet av de samband den beordras hitta. Resultaten representerar trender mer än orsak->samband. Mönstren som hittas kan användas för sina syften, men man skall inte räkna med att sambandet stämmer för hela populationen som har de drag analysen identifierar. 3 HKGABB0 [email protected] Artificiell Intelligens Anton Aspgren HT 06 840529-7535 Data miner algoritmen kan inte förväntas göra det bästa av vilken data som helst. Det är viktigt att städa upp den, och lämna ute onödiga kolumner, samt formatera datan så att applikationen lättare kan läsa och bearbeta den. Man måste förstå vad man skall be sin miner om. Till exempel kan man be den att se trender i antingen ’folk som kontaktar mitt företag till svar på reklam’ eller ’folk som kontaktar mitt företag i svar på reklam och genomför ett stort köp’. Minern arbetar ofta mycket olika i hur den svarar på dessa, för oss nästan identiska frågor. även om ett bra verktyg besparar dig teknikaliteterna, behöver du som användare ändock veta hur verktyget fungerar och kunna göra det bästa av det. Data mining ersätter kort och gott inte erfaren personal. Företag vet i regel själva vad de är bra på och hur de marknadsför sig, annars skulle de aldrig kommit till en punkt där de behöver data mining. Det verktyget kan göra dock är att empiriskt bevisa dessa samband, samt hitta mer dolda, inte direkt intuitiva mönster som hjälper företag någon bråkdels procentenhet i taget. Stora genombrott genom data mining är ofta sällsynta, men existerar. Data mining and data warehousing 7LOOYlJDJnQJVVlWW Oftast måste datan utvinnas innan den kan minas. Datan utvinns ur spridda källor så som tusentals internt lagrade kvitton, eller ofta ur ett så kallat ’data warehouse’(ung. datalager) och överförs sedan till en ’datamine database’ eller en ’data mart’(sk. databutik). Denna utvinning omfattar att leta reda på felaktigheter och formateringsfel i datan, samt organisera den. Datan i ett data warehouse uppdateras förmodligen redan automatiskt centralt så att folk slipper sitta och mata in kvitton manuellt, men denna data är redan organiserad för företagets syften, men denna organisering är inte duglig för själva miningen. Till exempel har nog företag personnummer på alla sina kunder, et cetera. Och det är inget produktivt i att genom mining komma fram till att Lisa Svensson(778899-1234) regelbundet köper bindor, vilket gör att sådana saker som personnummer är sådant rensas bort i förberedandet av datan. Företaget behöver större trender för att effektivt kunna tjäna några pengar på detta pilliga arbete. Den nya databasen kan antingen vara en fysisk eller logisk subklass, dvs antingen vara en helt egen databas, eller så räknar data warehouset enbart automatiskt bort den data som inte skall beräknas av minern när minern väl körs. Arbete underlättas ofta av att ha ett färdigt data warehouse, men att sätta upp ett sådant från grunden är ett arbete som kan ta åratal, och kosta tiotals miljoner. Tänk bara på kassaapparaterna på hemköp, som helt sonika ibland strejkar för kortköp ’eftersom maskinen tappat kontakt med banken’. 6WDWLVWLN Data mining gynnas av framgångar I både artificiell intelligens och statistik. Båda dessa grenar har arbetat med mönsterigenkänning och klassifiering, och bidragit till att förstå och applicera neurala nät och beslutsträd. Data mining ersätter inte traditionell statistik. Traditionell statistik har hanterat små mängder matematiskt förtabulerade och kontrollerade mängder data. Detta har varit ett manuellt och oöverskådligt arbete i många fall, och data mining erbjuder bara ett verktyg att genomföra samma processer i oerhört mycket större och varierade mängder data. Data mining använder sig alltmer av neurala när och beslutsträd, och ställer sig oberoende av en statistiker att(fullständigt) reda ut datan för förbehandling. Kort sagt applicerar data mining statistik med hjälp av AI och presterar resultat som en bredare grupp proffisionella användare klarar av. Kort och gott hjälper den produktiviteten av dem som försöker bygga modeller som förutser trender. 4 HKGABB0 Artificiell Intelligens HT 06 'DWDPLQLQJDQGKDUGZDUHVRIWZDUH [email protected] Anton Aspgren 840529-7535 7UHQGHU Den senaste tidens massiva prisfall I lagringsutrymme, processorkraft, minne och fysisk storlek på hårdvaran tillåter I allt store mängd data mining att komma att användas. Många företag använder servrar med dussintals upp emot hundratalet sammankopplade processorer som arbetar gemensamt i dess data mining. Ett exempel på samma område är företagsjätten Google. Dessa framgångar har lett till att många prestationsbarriärer inom data mining alltmer tunnas ut. $SSOLNDWLRQHU Data mining kontrollerar bade kostnader och inkomster. Många företag använder sig av data mining för alla steg i kundens livscykel. De hittar kunden, ökar inkomster från kunden, och behåller sina goda kunder. Genom att gruppera bra drag i ’goda’ kunder, profilerar(sk profiling) man dem. Sedan kan man sikta in sig på individer med just de dragen. Till exempel kan man när en av dessa kunder köpt en viss vara vända sig till de andra kunderna i samma grupp och skicka ut erbjudanden till dem(sk. cross-selling). Genom att profilera kunder som lämnat företaget, kan man agera och förhindra att kunder med liknande drag försvinner, kanske genom specialerbjudanden. För det kostar oftast mycket mindre att genom detta sätt behålla en kund, än att attrahera en helt ny kund. Många olika slags företag använder sig av data mining. Tyvärr måste jagsäga att teleföretag och kreditkortsföretag är två av ledarna i att tillämpa data mining för att felanvända deras tjänster. Försäkringsföretag och aktiehandlare är också intresserade av att använda denna teknologi för att förminska FRAUD. Data mining kan också användas inom sjukvården för att förutspå en given patients reaktioner på kirurgi, medicinska tester och medicinering. Företag aktiva inom den finansiella världen använder ofta data mining för att förutspå börsen och kursen hos specifika företags aktievärden. Varukedjor använder sig även av data mining för att bestämma vilka produkter de skall ha i lager, samt placeringen av dessa i butiken, liksom specialerbjudanden. Apoteksföretag använder sig av data mining för att identifiera potential hos olika ämnen, som de sedan potentiellt kan använda sig av för att utveckla nya läkemedel. %UDPHWRGHU Det finns två sätt att lyckas I data mining, ett av dem är att komma upp med en précis formulering over problemet du vill lösa. Ett enkelt fokuserat uttallande har oftast bäst effekt. Det andra sättet är att använda rätt data. Efter att du valt ut det data du vill använda, eller till och med köpt in, måste du formatera om det och kombinera det på anmärkningsvärda sätt. Desto mer modellbyggarprogrammet kan leka runt och experimentera med datan, bygga hypotesermodeller, evaluera dessa och ombearbeta datan, desto bättre kommer självklart den slutliga trendmodellen. Algoritmen som används är mindre viktig än själva modellbyggarprogrammet som använder sig av algoritmen. Ideellt så är självklart också outputen från programmet välintegrerad med algoritmen som bygger modellerna. Dels för att få ett överskådligt och förståeligt resultat, men också kunna vara medveten om själva processen allt eftersom den fortskrider. 5 HKGABB0 Artificiell Intelligens HT 06 [email protected] Anton Aspgren 840529-7535 'DWD0LQLQJ0RGHOOHURFK$OJRULWPHU De flesta dataminingprogram använder sig av algoritmer som publicerats I t.ex. ’computer science’ eller statistikjournaler. Dessa har sedan modifierats efter kundernas behov. Till exempel säljer många företag miners som kör CART och CHAID på parallellprocessorer. Det finns dock vissa som har egenprogrammerade algoritmer, som inte baserats på tidigare modeller, som fungerar mycket bra. Man har arbetat mycket med att göra sig av med begränsningarna som linjära regressionsmodeller innebär, och göra mönstermatchingen datadriven snarare än användardriven. Det vill säga att programmet inte bara analyserar de explicita samband användaren ber om, som ’kommer vi sälja per produkter om vi sänker priset’, utan VMlOY hittar på sätt att sälja produkter utifrån sin data(kanske genom att sälja dem i flerpack). 1HXUDOD1lWYHUN Neurala nätverk är intressanta eftersom man genom dem effektivt kan modellera stora komplexa problem., i vilka det kan finnas hundratals PREDIKTIVA variabler, interagerar med sin omgivning. Neurala nätverka kan användas för att klassifiera problem, eller för regression där utvariablen är konstant. Ett neuralt närverk börjar med ett inputlager, där varje nod representerar en prediktorvariabel. Dessa inputnoder är sammanlänkade till ett antal noder i ett så kallat ’dolt lager’. Varje inputnod är sammankopplad till varje nog i det dolda lagret, och noderna i det dolda lagret kan vara sammanlänkade till ett till dolt lager, eller sluta i ett ’output layer’ som är det sista lagret. Outputlagret består av en eller fler svarvariabler. Efter inputlagret, tar varje dold nod ett set input, multiplicerar dem med en ’förbindelsevikt’ som är unik för den specifika kopplingen mellan skickande och mottagande nod, och adderar sedan ihop resultatet, varpå den sedan tillämpar en funktion på det och skickar sedan resultatet vidare till nästa nod. Om det dolda lagret vore tomt, skulle neurala när direkt motsvara linjär regression. Förbindelsevikterna är okända parametrar som uppskattas med hjälp av en träningsmetod. Den första träningsmetoden var backpropagation, nyare metoder inkluderar konjungatgradienten, quasi-Newton, Levenberg-Marquardt, och genetiska algoritmer. Varje träningsmetod har en uppsättning parametrar för att unvika logiska optima eller för att justera konverteringshastigheten. Arkitekturen(topologin) i ett neuralt nätverk är antalet noder, och antalet dolda lager, och hur de är sammanbundna. När man designar ett neuralt nätverk måste antingen användaren eller nätverket välja dessas placering, nodernas algoritmer, och begränsningar på vikterna. Backpropagation fungerar så att man låter invärdena falla genom systemet, och sedan om outputen är fel, går man tillbaka till noden som ger fel svar, och ändrar isnställningarna på dess vikter propotionerligt mot felet. Systemet tränas med testdata som skall representera ett tvärsnitt på datamarten. Efter systemet tränats med backpropagation, kan man bruka det och då ändras inte vikterna. Under träningen är det viktigt att man inte tränar för hårt, för då kommer systemet att perfekt lära sig testdatan, men blir oduglig på data som inte ingår i den. Det är alltså viktigt att man inte övertränar sitt system, och vet när man ska sluta. Vissa implementationer kollar periodiskt under träningen hur det neurala nätet sköter sig jämfört med datamarten. Nätet kommer alltid att gradvis bli bättre med sin testdata, men när trenden vänder för datamining databasen och man ackumulerar fler och fler fel, avbryts träningen omgående. 6 HKGABB0 [email protected] Artificiell Intelligens Anton Aspgren HT 06 840529-7535 Till skillnad från de flesta statistiska metoder, bryr sig neurala nätverk inte om att skapa en perfekt lösning. De har massor av sammankopplade variabler, som alla kan ge upphov till samma lösning. Flera olika neurala nätverk kan fungera för samma problem trots att dess respektive träningsvikter skiljer sig avsevärt från varandra. Man kan då inte heller enkelt gå tillbaka och förstå hur viktandet logiskt lett till slutsatsen, eftersom det mestadels beror på slumpen. Saker som data mining är bra på är bland annat att modellera mönsterigenkännningsfel som språk, syn och handskriven text. Neurala nätverk kan enkelt implementeras att köras på parallella datorer, där varje datornod kär sina egna beräkningar. En nackden är att de är svårtolkade. Det finns ingen explicit rationalitet bakom hur dess beslut och förusägningar utförs. Sedan har vi som sagt problemet med överträning. Sedan behöver i regel neurala nätverk P\FNHW lång tid på sig att träna sig inför varje problem, men när de väl är tränade så har de inga problem att snabbt komma fram till lösningar. Neurala nät är känsliga för noise(störningar), och kommer enkelt att hitta fel i störd eller felformaterad data. %HVOXWVWUlG Beslutsträd är sätt att representera serier av regler som leder till värden eller klassindelningar. Du kanske vill klassifiera lånsökare, för att se om de är risker eller inte. Trädet börjar vid en rotnod, som sedan grenar av sig neråt, och slutar i sk 'löv'. Varje gren motsvarar ett svar på frågan, och man kommer slöutligen fram till en slutsats genom att jämföra hela databasen. Beroende på algortimen, har varje förgrening två eller fler grenar. Till exempel genererar CART träd med bara två förgreningar. Det kallas ett binärt träd. Träd med fler förgreningar vid varje gren är sk 'multiway-trees'(multipla vägar-träd). Varje förgrening kommer leda till ytterligare en klyka med en beslutsnod, eller till botten av trädet, ett sk löv. Genom att navigera trädet genom att börja vid roten, och sedan klättra neråt i trädet uppför grenarna tills du når ett löv, finner du ett svar. Varje nog använder information från det specifika 'caset'(en 'individ' ur datan). Till exempel kan man mata in personakter för att ta reda på om de är säkra att låna ut pengar till. Beslutsträdmodeller används vanligen i data mining för att undersöka datan och skapa trädet och dess regler som kommer användas för att förutspå. Ett stort antal algoritmer kan användas för att skapa beslutsträd, inkluderande CHAID(Chi-squared Automatic Interaction Detection), CART(Classification And Regression Trees, Quest och C5.0. Beslutsträd växer fram genom en iterativ delning av miningdatabasen, där man strävar efter att sära på mängderna så långt man kan vid varje split. till exempel om man vill finna jordens fetaste kvinna, skulle man börja med att utesluta alla män, sedan alla flickor, etcetera. Att grena av först män är ett bra val eftersom inga män alls kan räknas som kvinnor. Att sedan dela av flickor vore ett bra alternativ, men de kan sedan om de har värdet 'superjättefeta' kunna räknas in bland de fall som kan räknas som 'världens fetaste kvinna'. Beslutsträd som hittar kategoriska variabler kallas klassifieringsträd. Beslutsträd som finner kontinuerliga variabler kallas regressionsträd. Även i stora databaser där man använder hundratals förgreningar kan man spåra tillbaka trädets logik till skillnad från neurala nätverk. Denna trygghet kan det vara farligt att förlita sig på dock. Ingenting säger att trädens avskärningar kan representera verkligheten. Till exempel kanske man har beslutsnoden 'män över 80 år har svåra hälsoproblem', något som kan vara högst subjektivt. Datan tar bara ett varv genom trädet, och klarar av extremt många variabler snabbt, därför används de ofta eftersom de också är lätta att implementera. Träden kan snabbt springa iväg dock och bli oöverskådliga. Därför har man ofta en begränsning på hur många lager neråt de kan förgrena sig till. En annan populär metod är att begränsa antalet löv längst ner i trädet. 7 HKGABB0 [email protected] Artificiell Intelligens Anton Aspgren HT 06 840529-7535 Ett annat alternativ är att beskära träden. Antingen görs det manuellt, eller så kan träden själva bestämma att vissa träffar är så små att de inte är värda att söka efter. Till exempel kan- man grena av småflickor när man söker efter tjocka kvinnor, men eftersom det är en så liten chans att de faktist bär på någon fetma, skulle trädet efter analysering av ett antal individer komma fram till att det inte är värt frågeställandet eftersom resulatet inte kommer att utgöra någon bra trend. Kritik mot beslutsträd är att de använder sig av en 'greedy' algoritm som betyder att trädet inte bryr sig om hur splitten den gör nu påverkar nästkommande splits. Sedan så beror hela trädet på noden ovanför sig, vilket betyder att hela lösningen förändras drastiskt om rotnoden skulle bytas ut. Splittingalgoritmer tar i regel bara en predictorvariabel i taget, och medan detta gör att modellen snabbt blir klar, begränar den antalet splitregler att testa, och den har svårt att se samband i det stora perspektivet. De som inte är univariata(tar en predictorvariabel i taget), kan ta flera variabler i beaktning(som 'VIKT * LÄNGD > 2300'). 'VIKT * LÄNGD > 2300 OR VIKT * 100' är ett annat exempel på en 'multivariat' split. Beslutsträd klarar av icke-numerisk data(som neurala nät inte kan), och är därmed mycket snabbare i sådana databaser, eftersom de inte behöver konvertera all textdata till olika sorts variabler. 5HJHOLQGXNWLRQ Regelinduktion är en metod för att framställa ett regelsätt för att klassificera cases. Trots att beslutsträd genererar regler, är dessa oberoende av andra noder. Regelinducerade regler är universala, och formar sällan träd. Den kan hitta andra, och ibland bättre mönster för klassifiering. Olikt träd, så klarar inte dessa regler alla möjliga problem, och deras regler motsäger ofta varandra. För att kringgå dessa kan man tillge en prioritet till alla olika regler, och låta den avgöra vilka som används. Eller så kan man skapa en funktion som till exempel ’röstar’ om vilken funktion som är viktigast, utifrån dess prioritet. .QHDUHVWQHLJKERXU När man löser nya problem tenderar man att kolla på gamla lösningar som har fungerat förut. K-nearest neighbour(k-NN; 'K-närmaste granne') är en klassifieringsteknik som använder en version av samma metod. Det bestämmer vilken klass att placera ett nytt case i genom att jämföra ett nummer - 'k' i k-NN - av de närmaste casen(eller grannarna). Det räknar antalet cases, och sätter sedan det nya caset till samma klass som de övriga. Till exempel om du har 12 miljoner sparade, och grannarna som ahr 13 respektive 8 miljoner är 'rika', är också någon med 12 miljoner 'rik'. Det första du bör göra är att hitta ett sätt att jämföra värden. Det är lätt för numeriska värden, men svårare med saker som till exempel nationalitet, eller ögonfärg. Sedan kan du inom dessa skapade grupper hitta nya jämförelser, och skapa nya klasser(till exempel 'snuskigt rik', till skillnad från bara rik), samt att sätta en limit på hur långt du skall se dig omkring när du grupperar in dessa cases. Till exempel borde inte någon med bara sex tusen på banken anses rik, gränsen kanske borde sättas runt fyra miljoner kanske. Medan systemen i träd och neurala nätverk är försatt, måste man beräkna hela processen igen för varje nytt case som skall fattas in, genom att faktist kolla på sina grannar. K-NN modeller är lätta och intuitiva att förstå, och hanterar alla former av data bra, så länge man kan sätta dem i ett mätsystem som gör att de kan mätas sins emellan.. 8 HKGABB0 Artificiell Intelligens HT 06 [email protected] Anton Aspgren 840529-7535 /RJLVWLVNUHJUHVVLRQ Logistisk regression är en generalisering av lineär regression. Det används primärt för att förutspå binära variabler. och ibland multi-klass variabler. Eftersom responsvariabeln är diskret, kan den itne modelleras direkt av linear regression. Därför istället för att förutspå själva variabeln, bygger vi modellen som förutspår logaritmen av oddsen att den kommer att hända. Denna kallas 'log odds', eller 'logit transformationen'. Orrs ration är i detta format: 'chans att lyckas'/'chans att itne lyckas', så odds på 3/1 betyder att det ahr 75% chans att lyckas, 25% att misslyckas. Så när vi säger att någonting har 3/1 chans att lyckas, menar vi att det är tre gånger så stor chans att lyckas , jämfört att misslyckas. Efter att vi fastställt procentchansen, kan vi sedan anta, att de binära svaren ja/nej kan sättas med det förnämnda procentantalet säkerhet. 'LVFULPLQDQWDQDO\VLV Discriminant analysis(‘särskiljande analysering’), är den äldsta matematiska klassifieringstekniken. Den finner hyperplan(linjer i två dimensioner, plan i tre, etcetera), som separerar klasserna. Resultatmodellen är väldigt enkel att förstå eftersom denna linje/plan separerar vart de olika klasserna hör hemma. Träning av systemet är väldigt enkel och skalbar. Tekniken är känslig för mönster i datan. Den används ofta i vetenskapliga grenar som medicin, samhällsvetenskap, och fältbiologi. Diskriminant analys är inte populär inom data mining dock, av tre anledningar. Dels förmodar den att prediktorvariablerna är jämnt utspridda(bellkurveformade), vilket inte behöver vara fallet. För det andra kan inte variabler oordnade till systemet användas alls, sedan sist så kan ofta data helt enkelt inte separeras enbart med hjälp av raka linjer. Senare versioner av diskriminant analys tillåter även kvadratiska avgränsningar, och tillåter även värden att uppträda i histogramform, och inte bara i bellkurveform. *HQHUDOL]HG$GGLWLYH0RGHOV Det finns en klass av modeller som sträcker sig längre än både lineär och logistisk regression, känd som generaliserade additiva modeller(GAM). De kallas additiva eftersom vi förutsätter att modellen kan skrivas som summan av möjliga icke-linjära funktioner, en för varje predikator. GAM kan användas antingen för regression eller klassificering av binära svar. Svarvariabeln kan vara så gott som vilken funktion av predikatorerna som helst, så länge alla steg är logiskt sammanhållna. Om vi säger att pengaansvarighet inte vore linjärt med mängd pengar men skapa en fin kurva som först går ner, och sen går upp, så skulle inte linjära modeller se något samband mellan pengar och pengaansvarighet. GAM skulle däremot se och förstå denna kurva. GAM tar olikt neutrala nät, bara ett inputvärde per outputvärde, och genererar en kurva automatiskt, väljer komplexitetsvärde baserat på datan. %RRVWLQJ Om du skulle bygga en modell med en provmängd data, och sen bygger en till modell med en annan provmängd data, skulle du kunna få två olika modeller. Efter att du validerat dem, kan du välja den som bäst möter dina behov. Bättre resultat kan uppnås om du skapar flera olika modeller, och sedan låta dem rösta, och sedan förutspår med den modell som de rekommenderade. Självklart kan du inte tolka riktigt varför den modellen valdes framför alla andra, men resultatet kan uppväga det. Detta är boosting. Denna teknik tar en stor mängd testprov ur samma data, och bygga en klassificeringsmodell för varje. Träningssettet(testdatan) ändras baserat på resultatet av tidigare modeller. Den sista klassificeringen är den klass som tilldelas oftast av modellerna. 9 HKGABB0 [email protected] Artificiell Intelligens Anton Aspgren HT 06 840529-7535 De exakta algoritmerna har förbättrats från dessa enkla principer, men de håller fortfarande i grunden. *HQHWLVND$OJRULWPHU Genetiska algoritmer används inte för att hitta mönster, utan används snarare för att ledsaga inlärningsprocessen hos dataminging algoritmer, som neurala nät. De kallas genetiska algoritmer, eftersom de löst följer teorierna bakom biologisk evolution. Varje generation av modeller tävlar för att föra vidare sina goda drag till nästa generation, tills den bästa modellen har hittats. Informationen förs vidare i sk 'kromosomer', vilka innehåller information som innehåller parametrarna för att bygga modellen. Till exempel, kan neurala nät användas för att ersätta backpropagation som ett sätt att justera vikterna. Kromosomen i detta fall skulle innehålla de nya vikterna. Alternativt skulle kromosomerna innehålla rätt nummer noder, förbindelser och dolda lager. Medans genetiska algoritmer är intressanta för att optimera modeller, lägger det till massor av datorarbete. 10 HKGABB0 Artificiell Intelligens HT 06 [email protected] Anton Aspgren 840529-7535 5HIHUHQVHU Wikipedias artikel på Data Mining, 15 okt 2006 http://en.wikipedia.org/wiki/Data_mining Kurt Thearling’s data mining tuorial, 14 okt 2006 http://www.thearling.com/text/dmwhite/dmwhite.htm Introduction to Data mining and Knowledge Discovery av Two Crows Corporation, 12 okt 2006 http://www.twocrows.com/intro-dm.pdf Bildkälla, 15 okt 2006 http://www.lokasoft.nl/uploads/images/12/database.jpg 11