4ft-Miner pro začátečníky Získávání znalostí z databází
Dobývání znalostí z databází (DZD) Knowledge Discovery in (from) Databases (KDD) Data Mining (DM)
Materiál pro posluchače kurzů IZI211 Metody zpracování informací a IZI212 Metody zpracování informací – praktika Martin Kejkula
[email protected] 1. října 2004
Slovo čtenáři Tento studijní materiál (sylabus) je doplňkem k přednášce IZI211 a ke cvičením IZI212, který má studentům pomoci při výuce úvodu do DZD/KDD. Není to však samostatný studijní materiál, ale jen a pouze doplňkový sylabus – např. jsou zde použity některé termíny, které nejsou vysvětleny (koeficient, kvantifikátor, literál). Kromě zmiňovaných přednášek a cvičení slouží studentům ke studiu DZD/KDD literatura [1] a zdroje dostupné na Internetu: [2], [4], [6] a LISp-Miner. První část tohoto materiálu obsahuje velmi stručné charakteristiky procesu DZD/KDD, včetně stručných poznámek o metodice CRISP-DM. Druhá část je stručným průvodcem, který umožňuje čtenáři, aby si vytvořil v systému 4ft-Miner svou první úlohu DZD. DZD/KDD je v rámci předmětů IZI211 a IZI212, pro které je určen tento materiál, přednášen na seznamovací (začátečnické) úrovni, katedra IZI však vypisuje několik pokročilých kurzů DZD/KDD pro vyšší ročníky: IZI456 získávání znalostí z databází, IZI461 umělé neuronové sítě, IZI462 zpracování nejistoty v umělé inteligenci (bayesovské sítě), IZI495 specifické přístupy k získávání znalostí z databází. Protože si je autor vědom, že přes několikeré přečtení a překontrolování textu, v něm čtenáři můžou najít chyby, omlouvá se za ně tímto čtenářům. Své připomínky k tomuto sylabu můžete posílat na níže uvedenou adresu.
V Praze, 1. října 2004 Martin Kejkula
[email protected]
Získávání znalostí z databází (data mining): • cca od 60. let 20. století • největší rozvoj cca od roku 1990 • typicky je součástí business intelligence (BI)1 • induktivní charakter (z konkrétních dat se vyvozují obecná tvrzení o datech) Definice: Data mining je analýza (často obrovských) souborů dat, za účelem nalezení netušených vztahů a shrnutí dat novým způsobem tak, aby byly (tyto nalezené vztahy a nová shrnutí) pro vlastníka užitečné, a aby jim byl vlastník dat schopen porozumět [5]. Aplikační oblasti: snad všechny obory lidské činnosti (lékařství, výroba, finance, pojišťovnictví, marketing, státní a veřejná správa a mnoho dalších) aplikace: • segmentace a klasifikace (např. klasifikace družicových snímků Země, rentgenových snímků pacientů, rozpoznávání problémových a bonitních klientů bank a pojišťoven (např. pojišťovacích podvodů), segmentace zákazníků (komu nabídnout jaký produkt), . . . ) • predikce (vývoje kursu akcií, spotřeby elektrické energie v dané lokalitě, predikce spotřeby plynu, vody, . . . ) • analýza příčin (onemocnění pacientů, účinnost léků, poruchy telekominikačních zařízení, poruchy technických zařízení, . . . ) • hledání zajímavých vyjímek v datech (analýza dopravních nehod, hledání chyb v datech, . . . ) • spousta dalších Používají se: • databázové technologie • statistika • metody strojového učení (umělá inteligence) 1 Zejména
v komerční sféře. BI představuje aplikaci datových skladů (data warehouse, DWH), reportů z databází – reporting, OLAP technologií, získávání znalostí z databází a CRM (customer relationship management). Koncept BI má konsekvence s řízením podnikání (management). . .
3
Proces (projekt) dobývání znalostí z databází se skládá ze šesti fází: (podle [6])
Porozumění problematice (Business understanding) – dívat se na problém (úlohu) z úhlu pohledu koncového uživatele (bankéře, lékaře, managera, . . . ). Co je cílem projektu (identifikace skupiny zákazníků, kteří brzy odejdou ke konkurenci; identifikace, který z podaných léků je původcem uzdravení; které z faktorů ovlivňují nejvíce obezitu; predikce cen akcií, . . . )? Sbírání background knowledge na začátku projektu. Sepsání kritérií úspěchu projektu – jak poznáme, že byl projekt úspěšný nebo neúspěšný ? Popsání problému, který má být vyřešen. Jak je tento problém řešen dnes – výhody a nevýhody ? Kdo bude uživatelem výstupů projektu ? Co uživatelé od projektu očekávají a co pro svou práci nutně potřebují ? Převedení cílů projektu na technický popis (v terminologii data miningu) požadavků na výstupy data miningu (tj. modely). Porozumění datům (Data understanding) – Sepsání všech dat, která se budou používat. Zvážit významnost atributů. Jsou všechna potřebná data k dispozici? Převedení dat do formátu, ve kterém se budou připravovat. Popsání dat (počet záznamů v tabulkách, počet atributů tabulek, významy atributů a hodnot, kontrola typů atributů, frekvenční analýza, základní statistické charakteristiky atributů – průměry, minimální a maximální hodnoty, modus, směrodatná odchylka). Vizualizace dat (histogramy, . . . ) Obsahují data chyby? Jak se chyby rozpoznají? Jak časté jsou chyby v datech ? Jaké významy mají chybějící hodnoty? 4
Příprava dat (Data preparation) – Výběr dat, která budou použita pro fázi modelování. Čištění dat – Je možné chybné hodnoty opravit? Jak byly ošetřeny chybné hodnoty – opraveny (jak?), odstraněny, ignorovány? Jaký význam mají speciální hodnoty a jak tyto hodnoty ošetřit? Integrace dat z více tabulek do jediné tabulky. Transformace dat do formátu, se kterým pracuje nástroj, který bude použit pro modelování. Vytvoření odvozených (derived) atributů. Testování významností a korelací atributů. Zkušenosti z praxe ukazují, že fáze přípravy dat zaberou okolo 80 % času projektu DZD (KDD). Modelování (Modeling) – Data mining. Výběr vhodné techniky (asociační pravidla, bayesovské sítě, neuronové sítě, rozhodovací pravidla a stromy, regresní stromy, induktivní logické programování, genetické algoritmy, shlukové analýzy) závisí na typu úlohy (segmentace, klasifikace, predikce, analýza závislostí). Nastavení parametrů úlohy, spuštění úlohy modelování. Problém (úloha) definovaný ve fázi porozumění problematice se obvykle rozpadne do řady úloh modelování. Každá úloha modelování se typicky ladí opakovaným spouštěním s upravenými parametry úlohy, dokud se nedosáhne uspokojivých výsledků. Testování a posouzení kvality modelu (jak je model přesný nebo obecný, pomůže vyřešit uživatelův problém)? Vyhodnocení výsledků (Evaluation) – Do jakého stupně pomůže model vyřešit problém (jak přispívá k řešení)? Proč (v čem) je model nevhodný? Interpretace modelu, aby mu uživatel (bankéř, lékař, manager, . . . ) rozuměl. Porovnání výsledků modelu s background knowledge – bylo objeveno něco nového? Bylo potvrzeno, co se už dávno vědělo? Bylo objeveno něco, co odporuje dosavadním znalostem ? Porovnání interpretace modelu se sepsanými kritérii úspěchu. Jak by bylo možné model zlepšit? Co by se příště mělo dělat jinak (poučení z tohoto projektu)? Jaké jsou současné možnosti nasazení modelu v praxi ? Využití výsledků (Deployment) – Zavedení modelu do praktického používání (např. při rozhodování o poskytnutí úvěru). Sepsání modelů, které je možné nasadit (použít). Aktualizace modelu. Sledování přínosů používání modelů a vlivu používání modelů na na fungování procesů ve firmě. Sepsání závěrečné zprávy. Některé metody dobývání znalostí - data mining: rozhodovací stromy, rozhodovací pravidla, regresní stromy, asociační pravidla, neuronové sítě, genetické algoritmy, hledání nejbližšího souseda, bayesovské sítě, support vector machines (SVM), induktivní logické programování. V rámci předmětu IZI212 se studenti seznamují pouze s asociačními pravidly2 .
2 Katedra
IZI však vypisuje specializované předměty pro studenty vyšších ročníků – např. bayesovské sítě, neuronové sítě, . . .
5
softwarové nástroje pro KDD komerční sw nástroj
producent
URL
Clementine
SPSS
http://www.spss.com http://www.spss.cz
Enterprise Miner
SAS
http://www.sas.com
Intelligent Miner
IBM
http://www-3.ibm.com/software/data/miner
Knowledge Studio
Angoss
http://www.angoss.com
Statistica Data Miner
StatSoft
http://www.statsoft.com http://statsoft.cz
PolyAnalyst
Megaputer
http://www.megaputer.com
akademické nástroje SumatraTT FEL ČVUT
http://krizik.felk.cvut.cz/Sumatra/
nástroj pro předzpracování a transformaci dat WEKA University of Waikato (Nový Zéland)
http://www.cs.waikato.ac.nz/ml/weka/
klasifikace: několik desítek algoritmů včetně neuronové sítě, bayesovských metod, shlukovacích metod, rozhodovacích stromů shlukování: 5 metod asociační pravidla: algoritmus apriori vizualizace výsledků
6
LISp-Miner FIS VŠE
http://lispminer.vse.cz/
LM Admin: modul pro nastavení datových zdrojů LM DataSource: modul pro předzpracování dat (včetně vizualizace) LM 4ftTask: modul pro dobývání asociačních pravidel LM 4ftResult: modul pro zpracování objevených asociačních pravidel LM dále obsahuje moduly pro: Knowledge EXplorer (KEX): indukci rozhodovacích pravidel KL-Miner: analýzu dvoudimenzionálních kontingenčních tabulek CF-Miner: hledání podmínek, které určují splnění zvoleného rozdělení hodnot atributu TimeTransf: předzpracování časových řad
4ft-Miner pro začátečníky Pro 4ft data mining analýzu budeme potřebovat: 1. Data, která chceme analyzovat. Je třeba, mít je ve formátu, dostupném přes ODBC (např. tabulka uložená v souboru databáze MS Access). Každý řádek tabulky nese data o jednom objektu. 2. Metabáze. Metabáze je databáze, do které se při používání LMDataSource, 4ftTask, 4ftResult (a dalších) modulů ukládají data – např. parametry úloh, výsledky (objevená asociační pravidla). Prázdnou metabázi je možné získat na http://lispminer.vse.cz (jako soubor LMEmpty.mdb) 3. Modul LMAdmin.exe pro propojení databáze a metabáze. LMAdmin.exe je možné získat na http://lispminer.vse.cz 4. Modul LMDataSource.exe pro přípravu dat. 5. Modul 4ftTask.exe pro dobývání asociačních pravidel. 6. Modul 4ftResult.exe pro analýzu objevených asociačních pravidel. Moduly DataSource, 4ftTask i 4ftResult je možné získat na http://lispminer.vse.cz Na adrese lispminer.vse.cz (sekce download) získáme prázdnou metabázi (LMEmpty.mdb) a potřebné exe soubory (z balíčku LISp-Miner.4ft zip použijeme 4ftResult.exe, 4ftTask.exe, LMAdmin.exe a LMDataSource.exe). V tomto příkladu budeme používat na ukázku data 7
fiktivní banky BARBORA, která také získáme na lispminer.vse.cz. Soubor s analyzovanými daty Barbora.mdb rozbalíme z balíčku Barbora.zip a přejmenujeme na data Barbora.mdb, metabázi LMEmpty.mdb si přejmenujeme na meta Barbora.mdb. Spustíme soubor LMAdmin.exe a v okně, které se nám zobrazilo vybereme volbu Create new data source. V následujícím okně vybereme tlačítkem Browse analyzovaná data (data Barbora.mdb) a LISp-Miner metabázi (meta Barbora.mdb), jako na obrázku:
Všiměme si nastavení typu DSN: na počítačových učebnách musíme zvolit User a tuto proceduru nastavování pomocí LMAdmin opakovat po každém novém přihlášení ke školní síti. Doma můžete používat i volbu System; nastavování nebudete muset opakovat a nastavení zůstane uloženo, dokud jej sami neodstraníte. Po potvrzení nastavení databáze a metabáze se nám objeví základní obrazovka modulu LMAdmin. Tento modul již nebudeme potřebovat, můžeme jej tedy ukončit (exit nebo prostým zavřením okna). Nyní spustíme soubor LMDataSource.exe, vybereme datový zdroj, který jsme právě vy8
tvořili a dostaneme se na základní obrazovku modulu DataSorce. Vidíme, že naše analyzovaná data obsahují jedinou tabulku, která se jmenuje Loans. Když na základní obrazovce zvolíme tlačítko Columns, zjistíme, že tabulka má osm sloupců. Tlačítkem Rows zjistíme, že v naší tabulce Loans je 6 181 záznamů (řádků). Pro práci s analyzovanými daty potřebujeme nejprve označit primární klíč. Primární klíč jednoznačně identifikuje každý řádek v jedné tabulce (musí obsahovat vzájemně různé hodnoty a nikdy nemůže nabýt hodnoty NULL). Primární klíč se může skládat z jediného nebo z několika sloupců tabulky. Stiskneme klávesu F5 nebo tlačítko nebo v menu Database zvolíme Data Matrices. V seznamu tabulek máme označenou naši jedinou tabulku, můžeme tedy pokračovat tlačítkem Details. Naše tabulka má jednoduchý primární klíč, tvořený sloupcem loan id – vybereme tento sloupec a zvolíme tlačítko Primary key. Kontrolu duplicit spustíme tlačítkem Check. V tomto okně vidíme sloupce tabulky, ve které máme data, která budeme analyzovat. Vidíme, že tu máme například sloupec birth number (rodné číslo), ale nás by spíše zajímal věk. Vytvoříme tedy nový sloupec – zvolíme tlačítko Add derived. Věk z rodného čísla zjistíme – viz obrázek:
Abychom mohli používat 4ftTask pro dobývání asociačních pravidel, musíme si v modulu LMAdmin vytvořit atributy. Stiskneme tlačítko nebo v menu Database zvolíme Attributes Lists. Zjistíme, že seznam atributů je zatím prázdný. Stiskneme tlačítko Add a v následujícím okně vybereme naši jedinou tabulku tlačítkem Select. Tím získáme okno se seznamem sloupců naší tabulky s analyzovanými daty, ze kterých budeme vytvářet atributy. Vybereme sloupec Amount a zvolíme tlačítko Create attribute. V okně Attribute definition začneme definovat nový atribut (Amount jsme přejmenovali na Castka – výše poskytnutého 9
úvěru):
V následujícím okně Automatic creation of categories přečteme, že atribut Castka byl vytvořen ze sloupečku amount, nejnižší poskytnutý úvěr představoval půjčenou částku 4 980, největší částka, kterou banka půjčila 590 820. 646 různých částek je rozumné sloučit do několika intervalů. Zvolíme ekvidistantní (stejně dlouhé) intervaly, začínající od nuly, s délkou 50 000:
10
Dostaneme se na okno Attribute. Tlačítkem Fr. analysis získáme frekvenční analýzu. Z důvodu relativně nízkého počtu můžeme sloučit poslední (nejvyšší) dvě hodnoty – označíme je a poté je sloučíme tlačítkem Join (poté ji můžeme přejmenovat – tlačítko Category, Edit Category). Máme vytvořen první atribut. Dále vytvoříme atribut ze sloupce District. V okně Automatic creation of categories ponecháme volbu Each value – one category. Třetím atributrem bude doba splácení úvěru – duration (počet měsíců). Opět ponecháme volbu Each value – one category. V okně Attribute pak sloučíme hodnoty 12 a 13. Dalším atributem budou výše splátek – Payments. V okně Automatic creation of categories zvolíme ekvidistanční intervaly, od nuly, s délkou 2 000. Odlehlou hodnotu (maximální splátka) můžeme spolu s nulovými hodnotami odstranit (Del). Ze sloupce salary (výše mzdy) vytvoříme atribut (ekvidistantní intervaly od 8 000 s délkou intervalu 1 000). Jako předposlední vytvoříme atribut status (each value – one category). Interpretace hodnot atributu status: A = půjčka splacena bez problémů, B = půjčka nebyla řádně splacena, C = půjčka je splácena (zatím bez problémů), D = půjčka je splácena, splátky jsou ale se zpožděním. Nakonec vytvoříme atribut z námi vytvořeného sloupce věk (ekvidistantní intervaly od 20, délky 5). Tím jsme si připravili atributy pro dobývání asociačních pravidel, než však ukončíme práci s modulem DataSource, ukážeme si
11
ještě jednu možnou analýzu, kterou nám DataSource nabízí: v menu Analysis vybereme KxL Contingency Table. Například pro analýzu závislosti výše úvěru na věku klienta dostaneme:
Z této kontingenční analýzy vidíme, že skupiny mladých a starších klientů si půjčovali spíše menší částky, zatímco klienti ve středním věku si půjčovali nejen menší, ale i vyšší částky. Nyní již modul DataSource opustíme. Spustíme modul 4ftTask.exe a vybereme náš zdroj dat. Novou úlohu dobývání asociačních pravidel vytvoříme, když stiskneme klávesu F6 nebo tlačítko nebo vybereme v menu Task description položku New task. Úlohu si pojmenujeme, zařadíme do nějaké skupiny (můžeme si vytvořit několik skupin úloh, skupiny slouží pro naši lepší orientaci), kdykoli si můžeme k úlohám editovat své poznámky – komentáře. Dostaneme se na základní okno s parametry naší první úlohy. Úkolem naší první úlohy bude najít příčiny, které vedly k nesplacení půjček (status B). V okně Task zvolíme tlačítko ANTECEDENT. Tlačítkem Edit změníme
12
minimální délku antecedentu na 1, maximální délku na 4 literály. Literál do antecedentu přidáme tlačítkem Add a v následujícím okně vybereme atribut, ze kterého má být literál vytvořen. U každého literálu specifikujeme typ literálu, typ gace, typ koeficientu, minimální a maximální délky koeficientu: Každé asociační pravidlo musí v antecedentu obsahovat alespoň jeden literál typu Basic. (Dále může obsahovat i literály Remaining.) Typ gace literálu specifikuje, zda se daný literál v asociačních pravidlech může vyskytovat jen v pozitivní formě nebo jen ve své negaci, nebo v zda se může současně vyskytovat v některém asociačním pravidle v pozitivním tvaru a v jiném pravidle ve své negaci. Typ koeficientu říká, jakým způsobem se z hodnot atributu (tedy kategorií, viz modul DataSource, vytváření atributů ze sloupců tabulek) vytvářejí literály: Subset (podmnožiny kategorií atributu), Interval (intervaly kategorií atributu), Cyclical intervals (intervaly, včetně intervalů, které začínají posledními kategoriemi a končí počátečními kategoriemi), Left cut (levé řezy, intervaly, které obsahují první kategorii), Right cut (pravé řezy, intervaly, které obsahují poslední kategorii), Cuts (řezy, levé nebo pravé řezy), Boolean true (pouze u atributů, které mají u kategorií nastavenou hodnotu Boolean true nebo false), . . . Speciální typem koeficientu je typ One category (jediná kategorie), kdy současně musíme specifikovat i konkrétní kategorii. Poznamenejme ještě, že u koeficientů typu intervaly, řezy (i levé a pravé) a cyklické intervaly záleží na pořadí kategorií! Na tuto skutečnost musíme dát pozor v případech, kdy jsme v modulu DataSource slučovali nebo jinak editovali kategorie atributů. Zadání antecedentu pro náš první příklad:
13
Když nás zajímá pouze status půjčky B, nastavíme parametry sukcedentu takto: sukcedent bude obsahovat jediný literál – Status, typ koeficientu One category, vybereme kategorii B. Protože hledáme asociační pravidla ve tvaru implikace: JESTLIŽE vypůjčená částka, okres bydliště klienta banky, doba splácení, velikost splátky, plat klienta, věk klienta POTOM půjčka nebyla splacena, zvolíme kvantifikátor fundované implikace (Founded Implication) s parametry p=0.9 a BASE 15 (parametr BASE nastavíme ve volbě Params, kde současně odznačíme dvě volby Options). Úlohu spustíme tlačítkem Generate. Úloha trvala cca 20 vteřin, bylo provedeno 169 090 verifikací a bylo objeveno 23 asociačních pravidel (hypotéz – hypotéza je metodologicky správnější označení pro méně správné asociační pravidlo; termín asociační pravidlo je však v literatuře příliš rozšířen). Objevená asociační pravidla si můžeme prohlédnout v modulu 4ftResult, který můžeme spustit tlačítkem
na hlavní obrazovce modulu 4ftTask, nebo spuštěním 4ftResult.exe souboru.
Modul 4ftResult slouží pro analýzu objevených asociačních pravidel (jak již víme – hypotéz). V dolní polovině hlavního okna modulu vidíme všechna objevená asociační pravidla dané úlohy. Tlačítkem nebo klávesou F7 vybíráme úlohu, jejíž výsledky chceme analyzovat. Pravidla můžeme třídit tlačítkem Sort nebo můžeme jejich počet snížit vyfiltrováním pravidel, které splňují naše požadavky – tlačítko Filter.
14
Podívejme se na detail jednoho asociačního pravidla, na kartu TEXT:
Toto asociační pravidlo říká: Antecedent: klient je z Prahy a současně délka splácení úvěru je 24 nebo 36 měsíců a současně výše měsíční splátky je v intervalu od 6 do 8 tisíc a současně věk klienta je 65 nebo více let. Sukcedent: půjčka nebyla řádně splacena V databázi existuje 18 úvěrů, které současně splňují antecedent i sukcedent; 271 úvěrů, které současně splňují sukcedent a nesplňují antecedent; 5 892 úvěrů, které současně nesplňují ani antecedent ani sukcedent. V databázi neexistuje úvěr, který by současně splňoval antecedent a nesplňoval sukcedent. Z těchto číselných údajů – čtyřpolní kontingenční tabulky (4ft) můžeme získat zajímavé ukazatele, které asociační pravidlo charakterizují: a Confidence a+b nabývá pro naše pravidlo hodnotu 1.00. Představuje podmíněnou pravděpodobnost sukcedentu za předpokladu, že platí antecedent. Měří sílu platnosti implikace: JESTLIŽE platí antecedent POTOM platí sukcedent. a Support a+b+c+d představuje pravděpodobnost, že současně platí antecedent i sukcedent. Naše ukázkové pravidlo má hodnotu support 0.0029. Vybrané asociační pravidlo můžeme interpretovat takto: V analyzovaných datech platí 100 % implikace3 : klient, který je z Prahy a vypůjčil si na 24 nebo 36 měsíců a výše jeho měsíční splátky je vyšší než 6 tisíc a nižší než 8 3 Kdyby
hodnota Confidence byla např. 0.85, říkali bychom, že jde o 85 % implikaci.
15
tisíc a je starší 65 let, potom půjčka nebyla řádně splacena; takových půjček bylo poskytnuto 18. Confidence je samozřejmě asymetrická, když vzájemně zaměníme sukcedent s antecedentem, hodnota Confidence se změní (až na specifické případy); implikace ANTECEDENT implikuje SUKCEDENT je něco jiného než implikace SUKCEDENT implikuje ANTECEDENT. Support je symetrický, vzájemnou záměnou cedentů zůstane hodnota support stejná. Zajímavou charakteristikou asociačních pravidelje charakteristika Average difference a(a+b+c+d) (a+b)(a+c) − 1. Pro naše pravidlo nabývá hodnoty 20.3875. Pokud k této hodnotě přičteme jedničku, zjistíme, kolikrát se zvýší pravděpodobnost sukcedentu, když platí antecedent oproti případu, kdy nevíme, zda antecedent platí nebo neplatí – jinými slovy: kolikrát musíme vynásobit apriorní pravděpodobnost sukcedentu, abychom dostali hodnotu posteriorní pravděpodobnosti sukcedentu pro případ, kdy antecedent platí. Zajímavostí (na první pohled dokonce docela paradoxní) je, že Average difference je symetrická! Tedy vzájemnou záměnou cedentů se hodnota Average difference nezmění. Naše asociační pravidlo tedy můžeme interpretovat také následujícím způsobem: pravděpodobnost, že úvěr nebude řádně splacen, je 21.3875 krát větší, pokud se jedná o klienta z Prahy, který bude půjčku splácet 24 nebo 36 měsíců a výše jeho měsíční splátky je vyšší než 6 tisíc a nižší než 8 tisíc a je starší 65 let, než jaká je pravděpodobnost nesplacení úvěru v případě, že o půjčce a klientovi nevíme žádné informace (myšlena pravděpodobnost nesplacení půjčky v celé naší fiktivní bance).
16
Literatura [1] BERKA, Petr: Dobývání znalostí z databází. Praha : Academia 2003. ISBN 80-200-10629. [2] BERKA, Petr: Aplikace systémů dobývání znalostí pro analýzu medicínských dat [online, citováno dne 18. 2. 2004]. Dostupné z Internetu: http://euromise.vse.cz/kdd/index.php. [3] BURIAN, Jan: Datamining a AA (Above Average) kvantifikátor. Sborník 2. ročníku konference Znalosti. Ostrava, 2003. ISBN 80-248-0229-5. [4] FAYYAD, Usama – PIATETSKY-SHAPIRO, Gregory – SMYTH, Padhraic: From Data Mining to Knowledge Discovery in Databases [online]. AI Magazine, Fall 1996. American Association for Artificial Intelligence, [citováno dne 16. 3. 2001]. Dostupné z Internetu: http://www.kdnuggets.com/gpspubs/aimag-kdd-overview-1996-Fayyad.pdf. [5] HAND, David – MANNILA, Heikki – SMYTH, Padhraic: Principles of Data Mining. Cambridge : A Bradford Book – MIT Press 2001. 546 s. ISBN 0-262-08290-X. [6] CHAPMAN, Pete – kolektiv: CRISP-DM 1.0 Step-by-step data mining guide [online]. CRISP-DM consortium, [citováno 5. 10. 2000]. Dostupné z Internetu: http://www.crisp-dm.org. [7] KEJKULA, Martin: 4ft analýza sekvencí událostí. Sborník 2. ročníku konference Znalosti. Ostrava, 2003. ISBN 80-248-0229-5. [8] LÍN, Václav: Příspěvek k formalizaci úloh pro dobývání asociačních pravidel. Sborník 2. ročníku konference Znalosti. Ostrava, 2003. ISBN 80-248-0229-5. [9] MÁŠA, Petr: Relevance a interpretace asociačních pravidel. Sborník 2. ročníku konference Znalosti. Ostrava, 2003. ISBN 80-248-0229-5. [10] RAUCH, Jan – ŠIMŮNEK, Milan: Systém LISp-Miner. Sborník 2. ročníku konference Znalosti. Ostrava, 2003. ISBN 80-248-0229-5. [11] ŠLESINGER, Jan: Předzpracování časových řad pro systém LISp-Miner. Sborník 2. ročníku konference Znalosti. Ostrava, 2003. ISBN 80-248-0229-5.
17