Andmekaevanduse uurimisseminar (3AP)
Data Mining Research Seminar (3AP)
Jaak Vilo


Valminud tööd

Kõik lõplikus viimistluses artiklid on saadaval nii PS kui PDF formaadis. Võimalusel lisan ka suulise ettekande slaidimaterjali igaühe kataloogi. Kõik raportid on saadaval siin.
Toimetamine, sisukord ja eessõna
Jaak Vilo [Kataloog] [PDF] [Postscript]

Assotsiatsioonireeglite leidmine suurtest andmehulkadest
Asko Tiidumaa [Kataloog] [PDF] [Postscript]

Otsustuspuudega klassifitseerimine
Kristo Käärmann [Kataloog] [PDF] [Postscript]

Induktiivne loogiline programmeerimine
Igor Kuzmitšov [Kataloog] [PDF] [Postscript]

MDL - lühima kirjelduse printsiip
Meelis Kull [Kataloog] [PDF] [Postscript]

Klasterdamine andmekaevanduses
Mihhail Juhkam [Kataloog] [PDF] [Postscript]

Informatsioonikaugus
Mart Sõmermaa [Kataloog] [PDF] [Postscript]

Sagedasti esinevate sõnemustrite otsimine ja algoritm Teiresias
Ireen Meho [Kataloog] [PDF] [Postscript]

Tõenäosuste leidmine Bayesi võrkudes
Sven Laur [Kataloog] [PDF] [Postscript]

Sissejuhatus tugivektor-masinatesse
Hando Tint [Kataloog] [PDF] [Postscript]

Ülevaade EM-algoritmist
Jelena Zaitseva [Kataloog] [PDF] [Postscript]

Tekstikaevandamine: infoeraldus
Jüri Reimand [Kataloog] [PDF] [Postscript]

Andmete klasterdamise algoritm sündmuste logidest mustrite kaevandamiseks
Risto Vaarandi [Kataloog] [PDF] [Postscript]

Kahendklasterdamine
Ants Aader [Kataloog] [PDF] [Postscript]

Referaatide hindamine

Hindamisele ja esitamisele kuuluvate artiklite numbrid/koodid ja autorid. Klikkides pääseb vastavale hindamise vormile! Taga on link vastava autori enda koduleheküljele kus referaat on ning PXX on viit siin serveril olevale koopiale. Enne hindamist soovitan läbi lugeda Ian Parberry juhendi teoreetilise arvutiteaduse hindamisest.

Hindamine sooritatakse üle (anonüümse) veebi-formi.

P01     Asko Tiidumaa	Assotsiatsioonireeglid   kodulk, P01
P02     Kristo Käärmann	Otsustuspuud  P02
P03     Igor Kuzmits^ov	ILP  P03
P04     Meelis Kull	MDL   P04
P05     Mihhail Juhkam	Klasteranalüüs   P05
P06     Mart Sõmermaa	Sarnasuse mõõtudest (kodulk, P06)
P07     Ireen Meho	Mustrid tekstidest (TEIRESIAS)  P07
P08     Sven Laur	Bayes   P08
P09     Hando Tint	SVM  P09
P10     Jelena Zaitseva	EM  P10
P11     Jüri Reimand	Text mining   P11
P12     Risto Vaarandi (sündmuste logidest huvitavad seosed)   P12
P13     Ants Aader 2-way clustering  P13

Hindamised sooritatakse järgmiselt:

Hindamiseks aega 2 nädalat!

   HINNATAV TÖÖ                        KOLM HINDAJAT
P01     Asko Tiidumaa   by      Igor Kuzmits^ov, Risto Vaarandi, Kristo Käärmann
P02     Kristo Käärmann by      Risto Vaarandi, Asko Tiidumaa, Hando Tint
P03     Igor Kuzmits^ov by      Kristo Käärmann, Jelena Zaitseva, Ants Aader 
P04     Meelis Kull     by      Hando Tint, Sven Laur, Mart Sõmermaa
P05     Mihhail Juhkam  by      Jüri Reimand, Hando Tint, Ants Aader
P06     Mart Sõmermaa   by      Mihhail Juhkam, Meelis Kull, Sven Laur
P07     Ireen Meho      by      Ants Aader, Jüri Reimand, Igor Kuzmits^ov
P08     Sven Laur       by      Meelis Kull, Mart Sõmermaa, Mihhail Juhkam
P09     Hando Tint      by      Ireen Meho, Meelis Kull, Jelena Zaitseva
P10     Jelena Zaitseva by      Mart Sõmermaa, Kristo Käärmann, Ireen Meho 
P11     Jüri Reimand    by      Sven Laur, Risto Vaarandi, Asko Tiidumaa 
P12     Risto Vaarandi  by      Asko Tiidumaa, Jüri Reimand, Ireen Meho
P13     Ants Aader      by      Jelena Zaitseva, Mihhail Juhkam, Igor Kuzmits^ov

Esimese versiooni vormistus

Esimene artikli versioon 4.11. läheb hindamisele teiste tudengitele. Tihti nõutakse, et ajakirjale saadetud versioon peab olema hindamiseks kirjutatud kahekordse reavahega et jääks piisavalt ruumi kommentaaride jaoks.

Kommentaarid kogume aga kokku elektrooniliselt ja nii võib olla praegu täiesti piisavm, et kasutate tavalist kirja - 11 või 12pt suuruset. Kas ühes või kahes veerus, see on igaühe enda otsustada. Lehekülje suurus peaks olema A4.

4.11. valmis olev versioon tuleb kohale tuua ühes eksemplaris paberil ning lisaks tuleb Jaak Vilole saata PDF ning kasutatud kirjanduse artiklite elektroonilised versioonid nii palju kui neid on olemas.

Kõige parem oleks kui saaksite oma kodulehele panna välja kataloogi kus oleks PDF ning kasutatud artiklid elektrooniliselt. Siis saaksin need teha kättesaadavaks a) linkides käesolevalt lehelt ja b) vajadusel tõmmata alla failid, et kõik materjalid saaksid üheks tervikuks kokku.


Annotatsioon

Andmekaevandus on teadusharu mis uurib meetodeid (väga) suurtest andmekogudest huvitavate reeglite, seaduspärasuste, trendide ja muu olulise informatsiooni kättesaamiseks. Uurimisseminar käsitleb andmekaevanduse ja -analüüsi algoritme ja meetodeid. Osalejatelt eeldatakse olulisel määral iseseisvat tööd teaduskirjandusega andmekaevanduse aspektide väljaselgitamisel. Seminari käigus tuleb igal osalejal koostada põhjalik referaat valitud teemal ning see seminari vormis ette kanda.

Annotation

Data Mining (DM, Knowledge Discovery from Databases) studies methods for analyzing (very) large data collection in order to discover new information about the data - rules, regularities, trends, etc. In the Data Minig Research Seminar we will study aspects of Data Mining. Seminar requires independent work with scientific literature and preparation of a substantial essay about the chosen DM-related topic. Each student will also have to present their work in detail during the seminar.

Praktiline korraldus - kes pääsevad osalema?

Maksimaalselt 15 inimest võetakse seminari (rohkem ei mahu) Osalejate loetelu otsustab seminari korraldaja Jaak Vilo. Osalemise soovist märku andmiseks tuleb saata e-mail Jaak Vilo aadressile Kirjas tuleks põhjendada oma soovi osaleda just sellel seminaril.

Osalejate valikuks lähtume järgmistest kriteeriumidest -


Eesmärgid:

  1. Õppida iseseivalt kirjandusega töötama ja nii kogutud infot süstematiseerime
  2. Õppida kirjutama teaduslike tekstide ülevaateid
  3. Õppida andmekaevanduse aluseid
  4. Arendada iseseisvat ülesandepüstituse esitust ja vastuste otsimist
  5. Tekitada ülevaateartiklite kogum andmekaevandusest
  6. Eskperimenteerida iseseisval tööl ja seminaril põhineva õppemeetodiga

Esmane seminari ajakava

Seminari ajad - Teisipäeviti, kell 12-14 (511)

1. 16.09 kell 12.00 ATI, 511

2. 30.9 kontakt e-mailiga pluss konsultatiiv-seminar

Iga osaleja poolt tagasiside meili teel J. Vilole -

oma teema lühisissejuhatus
peamise lähtematerjali loetelu-tutvustus. Sisukord ja kava mis sinna kirjutada Küsimused ja probleemid voiks olla enda jaoks juba sonastatud

Osa referaadist peab olema meetodi(te) lihtne kirjeldus Selle tutorial-tüüpi materjali kohta peaks olema juba materjal koos

Artiklisse tuleks sisse tuua ka 1-2 rakendust kus just antud meetod on hiljutistes publikatsioonides osutunud kasulikuks, st kus on mingi praktiline tulemus

3. 14.10 Kogunemine, kell 12.00 ATI, 511

Vahekokkuvõte
Artikli vormistamise küsimused
KUIDAS KIRJUTADA - loeng?

Osalejatelt oodatakse:

      Sisukorra ja astrakti mustandit, kirjatöö tervikust ca 2/3 ulatuses valmis
      Igaüks saab ca 5 minutit 1-2 kile pealt oma teema tutvustamiseks

5. 28.10 Artiklid hindamisele kaastudengitele

NB! Uus tähtaeg: 4.11 Artiklid hindamisele kaastudengitele

Artiklite esimene versioon peab olema valmis ja vormistatud (10-15 lk)

Artiklid edastatakse refereerimiseks 3-le hindajale

(kas anonüümsus on vajalik?)

Loeng hindamiskriteeriumide kohta ja kuidas retsenseerida Soovitused kirjutajale kuidas paremaks teha.

Hindamine sooritatakse üle (anonüümse) veebi-formi

Hindamiseks aega 2 nädalat!

6. 18.11. Hindamistulemuste kokkukogumine, laialijagamine

Korjatakse kokku iga artikli kohta käivad retsensioonid ja hinnangud. Hinnangud ja kommentaarid edastatakse autorile

Autor peab viima sisse muudatused ja parandused Samuti jälgima et soovitused on sisse viidud teksti

Muudatuste sisse viimiseks ja lõpliku versiooni valmimiseks on aega 2 nädalat.

7. 2.12 Lõplike versioonide valmis saamise tähtaeg!

Lõplikud versioonid edastatakse elektrooniliselt köitmisele

Kõik tööd tuleb esitada

Kogu töö peab olema ühes kataloogis milles on ka väike shelli skript tar czvf DM_nr_perekonnanimi.tgz DM_nr_perekonnanim

Organiseerijatele aega ca 1-2 nädalat toimetamiseks

Selle aja jooksul tulerb teha korralik loengu-esitus slaididega Hiljem kõik slaidid ka avalikult veebi...

8. 18.-19. detsember -- Konverents!

(alternatiiv oleks 4-5. detsember?)

"Konverents"


Sissejuhatus

Andmekaevandus (Data Mining, DM, vahel ka Knowledge Discovery from Databases, KDD) on suhteliselt noor uurimisvaldkond mis on saanud mõjutusi eri aladelt nagu statistika, andmebaaside teooria, masinõppimine, algoritmiline arvutiteadus ning paljud erinevad rakendusvaldkonnad kust on tavaliselt pärit tegelikud analüüsivajadused. Andmekaevanduse eesmärk on leida andmetest seaduspärasusi, trende, reegleid või muid aspekte mis osutuvad mingis mõttes huvitavaks, üllatavaks või millele lihtsalt pole varajasemalt mõeldud. Kui need leitud infokillud esitada mõistlikult lõppkasutajale kasutades visualiseerimist, olulisuse järgi sortimist või muid tehnikaid siis aitab see eeldatavasti kasutajal paremini mõista andmete olemust. Üheks iseloomulikuks omaduseks andmekaevanduses võrreldes näiteks traditsioonilisema masinõppimisega on tavaliselt andmete väga suur maht. Järelikult on vaja analüüsimeetodeid mis oleksid rakendatavad ka reaalselt tere suure andmekogu peal mitte ainult väikeses skaalas. Tüüpilisi andmekaevanduse meetodeid on assotsiatsioonireeglite otsimine kasutades näiteks apriori algoritmi ja selle variante või ka sagedaste episoodide otsimist ajas mõõdetud sündmuste loendist.

Tavaliselt jagatakse andmeanalüüsi (ka DM) meetodid juhitud (supervised) ja juhtimata (unsupervised) või ka osaliselt juhitud (semisupervised) meetoditeks. Tüüpilised juhtimete analüüsimeetodid on klasteranalüüs, aga samuti ka assotsiatsioonireeglite ja mustrite otsimine (pattern discovery). Masinõppimise meetodid on tavaliselt juhitud, st seal tuleb leida reegleid teatud klasside, mis on ette antud, eristamiseks. Näiteks otsustuspuud, -listid, -reelid, närvivõrgud (NN), reeglite hierarhiad ja eranditega reeglid, või hiljuti ka väga laialdaselt levinud kernelmeetodid nagu Support Vector Machines (SVM).

Tüüpiline andmekaevanduse projekt ise on protsess mis koosneb sammudest:

Sageli on vaja eri sammude järel tagasi minna varajasemate juurde, protsess pole alati lineaarne. Rääkides andmekaevandusest arvutiteaduse seisukohast saab eristada neli etappi.
  1. Tulemuste esitamise "keele" või formalismi valik
  2. Tulemuste headuse hindamise kriteeriumide valik
  3. Algoritm andmete analüüsiks, ehk parimate reeglite otsimine punkti 1 otsimisruumis, vastavalt punkti 2 kriteeriumidele.
  4. Andmebaaside ja andmete haldamise probleemid efektiivseks reeglite otsimiseks

Assotsiatsioonireeglid

Tüüpiline andmekaevanduse näide on ostukorvi analüüs. Näiteks, olgu poes ostetud selliseid tarbeid:
klient1  t1 t3 t6 t7
klient2  t3 t6 t8 t9
klient3  t3 t9
klient4  t5 t9
...
Tüüpiline assotsiatsioonireegel on:
t3 & t6 => t9   (tugi: 10%, usaldus 80%)

Seda tuleks tõlgendada, et 10% klientidest on ostnud tooteid t3 ja t6 ning lisaks 80% juhtudest mil on ostetud t3 ja t6 on sama isik ostnud veel toodet t9.

Assotsiatsioonireegli saab kätte näiteks teades, et alamhulk {t3,t6} esineb andmebaasis näiteks 1000 korda ning alamhulk {t3,t6,t9} 800 korda. Seega on ülesanne koostada algoritm kuidas kiiresti leida kõik sagedased alamhulgad...

Masinõppimine

Masinõppimises antakse tavaliselt näited ning masin peab õppima reeglid. Näiteks võib tuua õppida ära käsitsi kirjutatud numbrite ära tundmise, patsiendi diagnossi määramine tunnuste põhjal jne. Näiteks allolevatest andmetest võiks õppida reegleid ennustamaks kas hakkab sadama vihma või mitte...
nr 	temp	pilvisus	tuul	õhurõhk	vihm
1	kõrge	pilves		tugev	700	jah
2	kõrge	pilvitu		nõrk	770	ei
3	madal	pilves		keskm	760	ei (lumi)
4	keskm	pilvitu		keskm	720	ei
...

Tüüpiline "lihtne" masinõppimise meetod on otsustuspuud ja listid. Otsustuspuude puhul hakatakse sisuliselt jagama ainestikku rekursiivselt väiksemateks osadeks, ning jätkatakse kuni puu lehes saab teha otsuse, kumba klassi näide kuulub. Puu tippudes testitakse näiteks atribuutide väärtusi.

Tüüpiline probleem õppimisel on "üleõppimine", st puu tehakse näiteks nii spetsiifiliseks et tegelikult kaob ennustamise võime. Selle vastu on meetode kuidas vältida üleõppimist või pügada juba õpitud otsustuspuud lihtsalt väiksemaks.

Hierarhilised reeglid lähtuvad teisest intuitsioonist - et on olemas reeglid mis kehtivad üldjoontes, kuid millele leidub alati erandeid. Hierarhilised reeglite hulgad luvbavad esitada just neid erandeid. Samas klassifitseerimise ajal võib olla kahte eri tüüpi erandeid - kas püüda kõigepealt välja erandid (globaalne erand) ja siis klassifitseerida üldisemate reeglite järgi, või teha vastupidi - kõigepealt kasutada reeglit ning siis erandreeglit. Pange táhele et ühel juhul on erand globaalne ja teisel lokaalne.

Lineaarne eraldamine - perceptron, SVM, linear regression etc. Eeldab et andmepunktide vahele saab tõmmata lihtsalt sirgjoone (ehk hypertasandi paljumõõtmelises ruumis). Pertseptron, ehk lihtne ühe sõlmega närvivõrk teebki lihtsalt tasandiga eraldamist. Tihti on võimalik tõmmata PALJU eraldusjooni. Milline on neist parim? Tihti on kasulik maksimeerida marginaali eraldusjoonest tegelike andmepunktideni.

Bayesi reegel lubab hinnata mudeli headust: parim mudel on see mis ise pole liiga ebatõenäoline ning lisaks kirjeldab hästi andmeid. Bayesi reegel:

		 P( D | M ) · P( M ) 
P( M | D )  =   --------------------
                       P( D ) 

Hindamise kriteeriumid Kui rääkida masinõppimise meetodi headusest siis tuleb kuidagi seda osata hinnata. Eesmärk on üldiselt õppida klassifitseerima uusi, seni nägemata andmeid. Selleks et seda oskust hinnata tuleb meil tavaliselt kasutada õpetamise andmeid reegli õpetamiseks ning testandmeid testimiseks. Muidugi ei tohi need kattuda. Kuna andmeid pole alati piisavalt siis tehakse mitmekordset ülekontrolli, st. õpitaks reegleid korduvalt ja hinnatakse alati allesjäänud osa peal klassifitseerija headust. Jäta üks válja "leave one out jacknife" on meetod mis lubab ühe kaupa seda testida. Samas on vaja siis õppida palju kordi. Ning jääb küsimus, mis juhtub siis kui klassifitseerijad on tavaliselt erinevad üksteisest. Pange táhele, et vajalik on ka et õpetamise andmed oleks sõltumatud omavahel.

Precision, recall, false positive rate, false negative rate, jne.

MDL printsiip (lühima kirjelduse printsiip) on suguluses Bayesi reegliga. Sisuliselt hinnatakse seda, et kui usutav on ennustav reegel ning kui hästi see kodeerib andmeid. Tuleneb see vanast teaduslikust printsiibist (Occhami habemenuga - kahest samavõrd heast teooriast parem on see mis on lihtsam).

ROC - Receiver Operator Curve - lubab hinnata klassifitseerijat ka siis kui on võimalik olla oma otsustustes kas rohkem või vähem põhjalik. Tegelikult tuleks optimeerida mingit kulufunktsiooni. Näiteks kõikide inimeste saatmine mingile meditsiinilisele uuringule on kallis, arst peaks suutma hinnata riskigruppi võimalikult täpselt. Kui risk on väike pole asi hull kui keegi jääb skriiningust välja. Samas kui risk on suur siis kahju kui keegi jääb välja võib olla suur.

Võimendamine (boosting) on meetod mis kombineerib palju "nõrku" ennustajaid et tõsta nende usaldusväärsust kombinatsioonis.

Muid meetode

Induktiivne loogiline programmeerimine on meetod mis lubab pöörata ümber loogilise programmeerimise teoreemitõestuse sammu... (vt. materjale).

Närvivõrgud said uue hoo sisse peale mitmetasemeliste (peidetud tasemed) närvivõrkude võidukäiku (sest perceptron ei oska "isegi" XOR tehet ära õppida).

Rakendusi

Struktureerimata andmete (tekstide) kaevandamine eesmärgiga leida seoseid, klassifitseerida, jne.

Bioinformaatika on ala mis uurib bioloogiliste andmete analüüsi - neid andmeid on palju ja see on väga viljakas eriala rikkalike huvitavate probleemide poolest.

Meditsiini-informaatikas võib pidada peamiseks eesmärgiks õppida meditsiini-andmetest inimese tervisega seonduvat informatsiooni, õppida andme automaatselt diagnoose jne. Aga ka andmete haldamise kning isikute privaatsuse küsimused on seal väga tähtsal kohal.


Teemad

Siin on esialgne teemade loetelu. Enne esimest seminari proovin leida algatuseks vähemalt ühe artikli iga teema kohta. Muidugi võib üles näidata ka oma initsiatiivi ja otsida veebist, CiteSeer-ist ja mujalt.

Assotsiatsioonireeglid ja episoodid

Assotsiatsioonireeglid (sagedased hulgad) ja apriori algoritm

Sagedased episoodid

Reeglipõhised masinõppimise meetodid

Otsustuspuud ja -listid

Tree-pruning methods

Inductive Logic Programming

Rough Sets in Machine Learning

Hierarchical Rule sets and Ripple Down Rules

Reeglite headuse hindamiskriteeriumid

MDL (ja MML)

Measuring the quality of learned predictors

Masinõppimise treenimise ja parandamise meetodid

Klassifitseerijate kombineerimine

Klasteranalüüs

Klasteranalüüs

Sarnasuse mõõdust klasteranalüüsis

Mustrite otsimine

Sagedasti esinevate stringi-mustrite otsimine

Arvutuslikud, tõenäosuslikud, jne meetodid

Närvivõrgud

Bayesi võrgud (alused)

Kernel methods and SVM (Support Vector Machines)

Expectation Maximization

Andmekaevanduse rakendusi

Text mining

Data Mining Bioinformaatikas

Data Mining Meditsiini-informaatikas

Muid rakendusi, arengusuundi jne


Võib valida ka järgmisi teemasid -

Mixture Modelling and LVQ - learning vector quantization.

Independent Copmponent Analysis


Materjale veebis

Course material in web