09.07.2015 Views

LISp-Miner: systém pro získávání znalostí z dat1 - ResearchGate

LISp-Miner: systém pro získávání znalostí z dat1 - ResearchGate

LISp-Miner: systém pro získávání znalostí z dat1 - ResearchGate

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Vztahy mezi antecedentem a sukcedentem nemusí odpovídat pouze implikacím, tak jakje tomu u asociačních pravidel v Agrawalově pojetí, tedy vztahům, kdy základnícharakteristika počítaná ze čtyřpolní tabulky má podobuaa + b.Dalším typem vztahu jsou tzv. dvojité implikace, charakterizované hodnotoua,a + b + cnebo ekvivalence, charakterizované hodnotoua + da + b + c + d.Vztah mezi antecedentem a sukcedentem můžeme hodnotit i na základě chí-kvadrátnebo Fischerova testu (seznam všech typů vztahů je uveden v dodatku).Při generování pravidla se nejprve vytvoří nějaký antecedent, k němu se pak naleznouvšechny sukcedenty tak, aby pravidlo vyhovovalo zadaným parametrům. Při vytvářeníkombinací se postupuje do hloubky, literály jsou přitom uspořádány podle abecedy(podle názvů atributů resp. názvů hodnot). Parametry zadávané uživatelem jsou:• seznam literálů, které se mohou vyskytnout v antecedentu, sukcedentu apodmínce,• maximální délka konjunkce tvořící antecedent, sukcedent a podmínku• typ vztahu a prahové (dolní) hodnoty kritérií <strong>pro</strong> hledané hypotézyPodívejme se nyní na naše ilustrační data. Zadání parametrů vidíme na obrázku 3, částvýpisu nalezených pravidel ukazuje tabulka 3, detail jednoho pravidla (vizualizacepříslušné kontingenční tabulky) je pak na obrázku 4.Považujeme za nutné zdůraznit, že pouze tato <strong>pro</strong>cedura vychází z klasických pracíspojených s metodou GUHA (jde o nejnovější implementaci GUHA <strong>pro</strong>ceduryASSOC). Všechny dále uvedené <strong>pro</strong>cedury jsou výsledkem práce kolektivu autorůz VŠE (Berka – návrh <strong>pro</strong>cedury KEX, Rauch – návrh ostatních <strong>pro</strong>cedur, Šimůnek –implementace).


Tabulka 3. Hypotézy nalezené <strong>pro</strong>cedurou 4FT-<strong>Miner</strong>Konto( nízké) ∧ Nezaměstnaný( ano) ⇒ Pohlaví( žena)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Pohlaví( žena) ∧ Příjem(nízký) ⇒ Úvěr( ne)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Pohlaví( žena) ∧ Příjem(vysoký) ⇒ Úvěr( ano)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Pohlaví( žena) ∧ Úvěr( ano) ⇒ Příjem(vysoký)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Pohlaví( žena) ∧ Úvěr( ne) ⇒ Příjem(nízký)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Příjem(nízký) ⇒ Úvěr( ne)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Příjem(nízký) ⇒ Pohlaví( žena)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Příjem(nízký) ∧ Úvěr( ne) ⇒ Pohlaví( žena)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Příjem(vysoký) ⇒ Úvěr( ano)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Příjem(vysoký) ⇒ Pohlaví( žena)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Příjem(vysoký) ∧ Úvěr( ano) ⇒ Pohlaví( žena)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Úvěr( ano) ⇒ Pohlaví( žena)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Úvěr( ano) ⇒ Příjem(vysoký)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Úvěr( ne) ⇒ Pohlaví( žena)Konto( nízké) ∧ Nezaměstnaný( ano) ∧ Úvěr( ne) ⇒ Příjem(nízký)Konto( nízké) ∧ Nezaměstnaný( ne) ⇒ Pohlaví( muž)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Pohlaví( muž) ∧ Příjem(nízký) ⇒ Úvěr( ne)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Pohlaví( muž) ∧ Příjem(vysoký) ⇒ Úvěr( ano)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Pohlaví( muž) ∧ Úvěr( ano) ⇒ Příjem(vysoký)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Pohlaví( muž) ∧ Úvěr( ne) ⇒ Příjem(nízký)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Příjem(nízký) ⇒ Úvěr( ne)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Příjem(nízký) ⇒ Pohlaví( muž)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Příjem(nízký) ∧ Úvěr( ne) ⇒ Pohlaví( muž)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Příjem(vysoký) ⇒ Úvěr( ano)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Příjem(vysoký) ⇒ Pohlaví( muž)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Příjem(vysoký) ∧ Úvěr( ano) ⇒ Pohlaví( muž)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Úvěr( ano) ⇒ Pohlaví( muž)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Úvěr( ano) ⇒ Příjem(vysoký)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Úvěr( ne) ⇒ Pohlaví( muž)Konto( nízké) ∧ Nezaměstnaný( ne) ∧ Úvěr( ne) ⇒ Příjem(nízký)Konto( nízké) ∧ Pohlaví( muž) ⇒ Nezaměstnaný( ne)Konto( nízké) ∧ Pohlaví( muž) ∧ Příjem(nízký) ⇒ Úvěr( ne)Konto( nízké) ∧ Pohlaví( muž) ∧ Příjem(nízký) ⇒ Nezaměstnaný( ne)Konto( nízké) ∧ Pohlaví( muž) ∧ Příjem(nízký) ∧ Úvěr( ne) ⇒ Nezaměstnaný( ne)Tabulka 3 ukazuje stručnou část výpisu nalezených hypotéz; vidíme jen syntaxijednotlivých implikací. K úplnému obrázku chybí kvantitativní údaje z příslušnýchkontingenčních tabulek. K tomu dodejme, že všechna zobrazené implikace majíspolehlivost rovnou 1 – tedy pokud nějaký klient splňuje předpoklad splňuje i závěr.Implikace jsou uvedeny v tom pořadí v jakém byly generovány. Interpretační modul<strong>pro</strong>cedury 4FT-<strong>Miner</strong> ale nabízí řadu dalších možností třídění, vybírání ze seznamunalezených hypotéz a vizualizace (obrázek 4); interpretační moduly jsou součástí ivšech dalších <strong>pro</strong>cedur).


3.2 Procedura KL-<strong>Miner</strong>Hypotézy generované a testované <strong>pro</strong>cedurou KL-<strong>Miner</strong> mají podobuR ~ C / γ.Tato <strong>pro</strong>cedura tedy nabízí kontingenční analýzu dvou vícehodnotových kategoriálníchatributů. Počítané charakteristiky vzájemného vztahu mezi oběma atributy vychází zestatistických kritérií (např. Chí-kvadrát nebo Kendallův test), nebo z kritérií z oblastiteorie informace (např. entropie nebo vzájemná informace). Zpracovávají se přitompouze příklady vyhovující podmínce γ. Pokud není podmínka γ definována, analyzuje secelá datová matice.V našem příkladu můžeme analyzovat celkem 20 kontingenčních tabulek, lze tedyzískat až 20 KL hypotéz. Vizualizaci jedné z nich vidíme na obrázku 5.Obrázek 5. Vizualizace kontingenční tabulky jedné konkrétní hypotézy <strong>pro</strong>cedury KL-<strong>Miner</strong>


3.3 Procedura CF-<strong>Miner</strong>Hypotézy generované a testované <strong>pro</strong>cedurou CF-<strong>Miner</strong> mají podobu~C / γAnalyzuje se zde tedy histogram frekvencí kategorií atributu C u příkladů splňujícíchpodmínku γ. Cílem <strong>pro</strong>cedury je hledání okolností, za kterých jsou zajímavýmzpůsobem rozloženy frekvence jednotlivých kategorií některého kategoriálního atributu.Zajímavost je zde chápána jako to, že frekvence splňují požadavek definovaný vztahem~ . Příkladem vztahu ~ může být požadavek, aby všechny kategorie dosahovaly alespoňzadané četnosti a, či aby rozptyl hodnot byl menší než zadaná hodnota.Obrázek 6. Vizualizace kontingenční tabulky jedné konkrétní hypotézy <strong>pro</strong>cedury CF-<strong>Miner</strong>


3.4 Procedura SD4FT-<strong>Miner</strong>Procedura SD4FT-<strong>Miner</strong> je jednou ze tří tzv. „set differs from set“ <strong>pro</strong>cedur. Tyto<strong>pro</strong>cedury hledají hypotézy, jejichž numerické charakteristiky se liší na dvoupodmnožinách analyzovaných dat. Hypotézy generované a testované <strong>pro</strong>cedurouSD4FT-<strong>Miner</strong> mají podobuφ ≈ ψ / (α, β, γ)Hledáme tedy situace, kdy při splněné podmínce γ je vzájemný 4ft-vztah mezi φ a ψ namnožině α je jiný než na množině β. Tedy např. hledáme situace, kdy spolehlivostimplikace φ ⇒ ψ na množině příkladů splňujících α je jiná než spolehlivost implikaceφ ⇒ ψ na množině příkladů splňujících β:a1a2−a + b a + b1122≥ 0.2Příklad takovéto situace vidíme na obrázku 7. Ve skupině nezaměstnaných jespolehlivost implikace konto(střední) ⇒ příjem(nízký) rovna 1 zatímco ve skupinězaměstnaných je spolehlivost této implikace rovna 0.5.Obrázek 7. Vizualizace kontingenční tabulky jedné konkrétní hypotézy <strong>pro</strong>cedury SD4FT-<strong>Miner</strong>


3.5 Procedura SDKL-<strong>Miner</strong>Hypotézy generované a testované <strong>pro</strong>cedurou SDKL-<strong>Miner</strong> mají podobuR ~ C / (α, β, γ)Hledáme tedy dvojice podmnožin definovaných booleovskými atributy α, β, podmínkudefinovanou booleovským atributem γ a kategoriální atributy R, C tak, že za podmínkyγ se podmnožiny α, β liší vzhledem k vzájemnému vztahu atributů R a C. Podmínka γnemusí být zadána, pak se výpočet <strong>pro</strong>vádí <strong>pro</strong> celou datovou matici.V našich datech můžeme například zjistit, že vztah mezi výší konta a výší příjmu unezaměstnaných je jiný než vztah mezi výší konta a výší příjmu u zaměstnaných(obrázek 8).Obrázek 8. Vizualizace kontingenční tabulky jedné konkrétní hypotézy <strong>pro</strong>cedury SDKL-<strong>Miner</strong>


3.6 Procedura SDCF-<strong>Miner</strong>Hypotézy generované a testované <strong>pro</strong>cedurou SDCF-<strong>Miner</strong> mají podobu~C / (α, β, γ).Hledáme dvojice podmnožin definovaných booleovskými atributy α, β, podmínkudefinovanou booleovským atributem γ a kategoriální atribut C tak, že za podmínky γ sepodmnožiny α, β liší vzhledem k frekvencím jednotlivých kategorií atributu C.Podmínka γ nemusí být zadána, pak se výpočet <strong>pro</strong>vádí <strong>pro</strong> celou datovou matici.Obrázek 9 ukazuje, že rozdělení četností hodnot atributu příjem je různé <strong>pro</strong> skupinunezaměstnaných a skupinu zaměstnaných.Obrázek 9. Vizualizace kontingenční tabulky jedné konkrétní hypotézy <strong>pro</strong>cedury SDCF-<strong>Miner</strong>3.7 Procedura KEXZ pojetí metody GUHA se vymyká <strong>pro</strong>cedura KEX. Tato <strong>pro</strong>cedura slouží <strong>pro</strong> hledáníklasifikačních pravidel, tedy pravidel, která je možno přímo použít v <strong>pro</strong>cesuautomatizovaného rozhodování (Berka, Ivánek, 1994). Při specifikaci tohoto <strong>pro</strong>cesumusíme rozhodnout o:• podobě báze znalostí,• podobě inferenčního mechanismu,• způsobu, jak v souboru vztahů nalézt znalosti.


Báze znalostí je vytvářena v podobě souboru pravidel tvořených vztahy implikace kzadané cílové kombinaci. Vztahy jsou opatřeny váhou která vyjadřuje neurčitost veznalostech. Pravidla v bázi znalostí tedy mají podobupředpoklad ⇒ třída (w),kdepředpoklad je kombinace kategorií vstupních atributů,třída je kombinace definující pozitivní příklady,w z intervalu [0,1] je váha vyjadřující neurčitost pravidla.Inferenční mechanismus budovaného systému pracuje metodou přímého řetězení. Vprůběhu konzultace se <strong>pro</strong> nový objekt popsaný hodnotami vstupních atributů (popisobjektu nemusí být úplný!) naleznou všechna aplikovatelná pravidla. Příspěvky těchtopravidel se složí pomocí kombinační funkce ⊕ a tak se naleznou výsledné váhy všechcílů. Jako kombinační funkce se používá pseudobayesovské skládání vah známé zexpertního systému PROSPECTOR (Duda, Gasching, 1979). Jsou-li w 1 , w 2 váhy dvoupravidel, spočítá se jejich kombinace jako:w1× w2w1⊕ w2=.w × w + 1−w ) × (1 − w )12(12Při tvorbě báze pravidel se vlastně <strong>pro</strong>vádí postupné zpřesňování a zjemňování jižexistujících znalostí (knowledge refinement). Bázi pravidel vytváříme „shora dolů“postupným přidáváním nových (speciálnějších) pravidel ve chvíli, kdy báze přestane býtkonsistentní s trénovacími daty reprezentovanými souborem všech implikací kzadanému cíli. Na počátku obsahuje báze pravidel tzv. prázdný vztah, který odpovídározdělení tříd v trénovacích datech. Do báze pravidel se pak postupně zařazují jen tyimplikace, které nejsou odvoditelné z již získaných kratších pravidel. Obrázek 10ukazuje bázi pravidel získaných z našich ukázkových datObrázek 10. Klasifikační pravidla nalezená <strong>pro</strong>cedurou KEX


Při klasifikaci nového příkladu použijeme všechna aplikovatelná pravidla a pomocífunkce ⊕ poskládáme jejich váhy. Příklad zařadíme ke třídě, <strong>pro</strong> kterou odvodímenejvyšší váhu.3.8 Struktura a implementace systémuStruktura systému <strong>LISp</strong>-<strong>Miner</strong> je naznačena na obrázku 11. Systém je tvořen řadousamostatných modulů (exe souborů), které pracují nad analyzovanými daty a nadmetadaty. Analyzovaná data jsou uložena v databázi MS Access. Koncept metadat,rovněž realizovaný jako databáze MS Access, umožňuje uchovávat zadání i výsledkyjednotlivých analýz. <strong>LISp</strong>-<strong>Miner</strong> je tedy z implementačního pohledu zasazen do<strong>pro</strong>středí MS Windows. Z pohledu metodiky CRISP-DM, standardní metodiky <strong>pro</strong>řešení úloh dobývání znalostí z databází (viz obrázek 12), systém <strong>LISp</strong>-<strong>Miner</strong>podporuje kroky porozumění datům, přípravy dat, modelování a evaluace. Systém jevolně dostupný na http://lispminer.vse.cz.ANALYZED DATApParams(ODBC DSN)METABASELM AdminAdministrationRead-OnlyData Exploration &Preparation modulesObrázek 11. Schéma systému <strong>LISp</strong>-<strong>Miner</strong>Data ProcessingmodulesInterpretationmodulesObrázek 12. Metodika CRISP-DM


4 PoděkováníSystém <strong>LISp</strong>-<strong>Miner</strong> je vyvíjen s podporou grantů MSMT č. MSM138439910, GAČR č.201/05/0325. Na návrhu <strong>pro</strong>cedur, jejich implementaci či testování se kromě autorůpříspěvku podílela řada studentů a doktorandů VŠE, za všechny zmiňme V. Lína, M.Kejkulu a P. Dolejšího.5 ZávěrPříklady popisované v příspěvku jsou výhradně ilustrační. Z rozsáhlejších (aserióznějších) aplikací systému <strong>LISp</strong>-<strong>Miner</strong> můžeme zmínit analýzu dat o rizikovýchfaktorech aterosklerózy u mužů středního věku <strong>pro</strong>váděnou v rámci výzkumného centraEuroMISE (Lín a kol. 2004), analýzu dat o příčinách dopravních nehod ve VelkéBritánii <strong>pro</strong>váděnou v rámci evropského výzkumného <strong>pro</strong>jektu Sol-Eu-Net (Flach akol., 2003), analýzu dat o názorech obyvatel Prahy na kvalitu života v hlavním městě(Svátek, Rauch, Ralbovský, 2006) nebo analýzu popisů událostí vztahujících sek fotbalovým utkáním (v rámci evropského výzkumného <strong>pro</strong>jektu K-Space). Již tentoneúplný výčet ukazuje, že <strong>LISp</strong>-<strong>Miner</strong> je vhodným nástrojem všude tam, kde hledámezajímavé souvislosti mezi hodnotami atributů v datech z různých oblastí.LiteraturaAgrawal, R., Imielinski, T., Swami,A.: Mining associations between sets of items inmassive databases. In: Proc. of the ACM-SIGMOD 1993 Int Conference onManagement of Data, Washington D.C., May 1993, 207-216.Agrawal, R., a kol.: Fast discovery of association rules. In: (Fayyad, Piatetsky-Shapiro,Smyth, Uthurusamy, eds.) Advances in Knowledge Discovery and Data Mining,AAAI/MIT Press, 1996Berka, P.: Dobývání znalostí z databází. Academia Praha, 2003Berka, P., Ivánek, J.: Automated knowledge acquisition for PROSPECTOR-like expertsystems. In. (Bergadano, de Raedt eds.) Proc. ECML'94, Springer 1994, 339-342.Clark, P., Niblett, T.: The CN2 induction algorithm. Machine Learning, 3 (1989), 261-283.Duda, R.O., Gasching, J.E.: Model design in the Prospector consultant system formineral exploration. In: Michie, D. (ed.), Expert Systems in the Micro Electronic Age,Edinburgh University Press, UK, 1979.Fayyad,U. a kol.. eds.: Advances in Knowledge Discovery and Data Mining. AAAIPress/MIT Press, 1996Hájek, P., Havránek, T.: Mechanising Hypothesis Formation – MathematicalFoundations for a General Theory. Springer, 1978.Flach, P. a kol.: On the Road to Knowledge. In: Mladenič, a kol. (ed.). Data mining andDecision Support. Integration and Collaboration. Boston : Kluwer AcademicPublishers, 2003, 143–155.Hájek, P., Havránek, T., Chytil, M.K.: Metoda GUHA. Automatická tvorba hypotéz.Academia, 1983.


Chapman, P. a kol.: CRISP-DM 1.0 Step-by-step data mining guide. SPSS Inc. 2000.Lín, V., a kol.: The KL-<strong>Miner</strong> Procedure for Datamining. Neural Network World , 2004,č. 5, 411–420.Michalski, R.S.: On the Quasi-minimal solution of the general covering <strong>pro</strong>blem. In:Proc. 5th Int. Symposium on Information Processing FCIP’69, Bled, Yugoslavia, 1969,125-128.Rauch, J., Šimůnek, M.: System <strong>LISp</strong>-<strong>Miner</strong>. In: Svátek,V. (ed.). Znalosti 2003.Ostrava: TU Ostrava, 2003, 83–92.Rauch, J., Šimůnek, M.: GUHA Method and Granular Computing. In: Hu, a kol. (ed.).IEEE Int. Conf. On Granular Computing 2005. 2005, 630–635.Svátek, V., Rauch, J., Ralbovský, M.: Ontology-Enhanced Association Mining. In:Ackermann, M., a kol. (eds): Semantics, Web and Mining. Berlin Springer, 2006, 163–179Šimůnek, M.: Academic KDD Project <strong>LISp</strong>-<strong>Miner</strong>. In: Abraham,A., Franke,K.,Koppen, K. (eds.). Advances in Soft Computing – Intelligent Systems Desing andApplications. Heidelberg: Springer-Verlag, 2003, 263–272


Dodatek: seznam kvantifikátorů <strong>pro</strong>cedury 4FT-<strong>Miner</strong>Název parametry podmínka platnostiZákladní(fundovaná)implikaceDolní kritickáimplikaceHorní kritickáimplikaceZákladní(fundovaná)dvojitá implikaceDolní kritickádvojitá implikaceHorní kritickádvojitá implikaceZákladní(fundovaná)ekvivalenceDolní kritickáekvivalenceHorní kritickáekvivalence0 < p ≤ 1Base > 00 < p ≤ 10 < α < 1Base > 00 < p ≤ 10 < α < 1Base > 00 00 < p < 10 < α < 1Base > 00 < p < 10 < α < 1Base > 00 00 < p < 10 < α < 1Base > 00 < p < 10 < α < 1Base > 0E-kvantifikátor 0 < δ < 1aa + b ≥ p ∧ a ≥ Basea+b∑i=aa∑i=0(a + b)!i!(a + b - i)! pi (1 - p) a+b-i≤ α ∧ a ≥ Base(a + b)!i!(a + b - i)! pi (1 - p) a+b-i > α ∧ a ≥ Baseaa + b + c ≥ p ∧ a ≥ Basea+b+c(a + b + c)!∑ i!(a + b + c - i)! pi (1 - p) a+b+c-ii=aa∑i=0≤ α ∧ a ≥ Base(a + b + c)!i!(a + b + c - i)! pi (1 - p) a+b+c-i > α ∧ a ≥ Basea + da + b + c + d ≥ p ∧ a ≥ Basea+b+c+d∑(a + b + c + d)!i!(a + b + + d - i)! pi (1 - p) a+b+c+d-i ≤ α ∧i=aa ≥ Basea∑i=0a ≥ Base(a + b + c + d)!i!(a + b + c +d - i)! pi (1 - p) a+b+c+d-i > αa + b > 0 ∧ba + b < δ ∧ c + d > 0 ∧∧cc + d < δ


název parametry podmínka platnostiProstévychýleníFisherůvkvantifikátorChi-kvadrátkvantifikátorδ > 0Base > 00 < α ≤ 0.5Base > 00 < α ≤ 0.5Base > 0ab > e δ cd ∧ a ≥ Basemin(r,k)r!s!k!l!∑ n!i!(r-i)!(k-i)!(n-r-k-i)! ≤ α ∧ a ≥ Basei=aad > bc ∧n(ad - bc)klrs> α ∧ a ≥ Basepodpora 0 < σ ≤ 1 aa + b + c + d ≥ σabove average -1 < pa(a + b + c + d)a + b > 0 ∧ a + c > 0 ∧(a + b) (a + c) ≥ (1-p)below average -1 < pa(a + b + c + d)a + b > 0 ∧ a + c > 0 ∧(a + b) (a + c) < (1-p)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!