Přidejte se do naší facebookové skupiny Free Pub a pojďte s námi diskutovat :o)
Seminární práce na téma „Dolování dat“ (Data mining)
Tato seminární práce na téma Data-mining se zaměřuji spíše na obecnější pojetí data-miningu, tedy v podstatě KDD (Knowledge Discovery in Databases), pojmy jsou dále vysvětleny. V dalších odstavcích této práce nicméně nastiňuji ještě obecnější vývoj generací statistické analýzy dat jak z hlediska statistiky samotné, tak z pohledu aplikací a modelovacích systémů. Po příčinách vzniku a využití data-miningu v různých oborech se zaměřuji na popis typů dat pro data-mining a různých analytických metod a technik. Následně v jednotlivých krocích podrobněji popisuji celý proces na pomezí data-miningu a KDD. Nakonec se zabývám rolí lidského faktoru a uvádím různé chyby, kterých se lidský faktor může dopustit.
Pojem data-mining a KDD
Data-mining (dále jen DM), neboli dolování dat, někdy chápáno jako součást dobývání znalostí z databáze (Knowledge Discovery in Databases – KDD). Za DM se pak považuje technologická a analytická část KDD, obecně tedy získání užitečných informací z dat.
Poněkud přesněji definuje DM Fayyad [5]: „Krok v procesu KDD, který dodává převážně očištěná, transformovaná data, hledá data pomocí algoritmů, a výsledkem jsou vzory a vztahy pro interpretaci/zhodnocení celým procesem KDD.“
Pro úplnost ještě uvádím definici KDD podle [1]: „KDD je oblast managementu znalostí, která se zabývá procesy automatizace vyhledávání znalostí z databází, formalizací výsledků, analýzy dat, modelováním dat i prezentací výsledků.“
U vztahu mezi DM a KDD je problém rozeznání, co tím konkrétní osoba myslí, jelikož někteří chápou DM jako podmnožinu (součást procesu) KDD, ale někteří DM a KDD vidí jako synonyma.
Vývoj statistické analýzy dat
V této kapitole uvádím obecnější vývoj nikoliv samotného DM, ale statistické analýzy jako takové, která je součástí DM. Statistickou analýzu můžeme dle [6] definovat takto: „Sběr, zkoumání, sumarizace, manipulace a interpretace kvantitativních údajů za účelem zjištění základních kauzalit, vzorů, vztahů a trendů.“
Nisbet et al. [2] rozděluje vývoj statistické analýzy na čtyři generace. První generace trvala zhruba do 70. let minulého století. Za předpoklady se považovalo známé rozdělení, konstantní rozptyl (homoscedasticita), nezávislost proměnných, lineární aditivita a proměnné musely být numerické a spojité.
Druhá generace trvající od 80. let minulého století je charakterizována užitím i nelineárních metod a modelů pro diskrétní data, když matematikové zjistili, že předchozí předpoklady jsou příliš omezené pro analýzu vysoce nelineárních vztahů ve velkých kolekcích dat. Tyto metody obsahovaly logitový a probitový model, zobecněný lineární model.
Třetí generace je spojena s algoritmy strojového učení, které je zde zastoupeno většinou neuronovými sítěmi a rozhodovacími stromy. Výhodou neuronových sítí je jejich schopnost modelovat nelineární vztahy.
Čtvrtá generace, někdy nazývána statistickým učením. Používají se zde speciální metody klasifikace a regrese. Jako alternativní přístup je zde použití dat jako vektorů, např. u zákazníků – vektory jsou vytvořeny z elementů (jeden element pro každý atribut zákazníka) a vektorový prostor všech řádků zákazníků v databázi poté může být vyjádřen matematicky jako N-dimenzionální prostor, kde N je počet atributů zákazníka.
Grossman (1998) však vývoj DM systémů rozdělil jinak:
Generace |
Rozlišovací charakteristiky |
Podporované systémy |
Podporované modelovací systémy |
Typy dat |
1. |
Samostatné aplikace |
Samostatné systémy |
Jediný stroj |
Vektorová data |
2. |
Integrace s databázemi a datovými sklady |
Systémy správy dat, včetně databázových systémů a datových skladů |
Lokální sítě a související systémové modely |
Objekty, text a spojitá média |
3. |
Zahrnuje prediktivní modelování |
Správa dat a prediktivní modelování |
Network computing; intranety a extranety |
Zahrnuje polostrukturovaná a webová data |
4. |
Zahrnuje mobilní a všudypřítomná data |
Správu dat prediktivního modelování a mobilních systémů |
Mobilní a všudypřítomný computing |
Všudypřítomná data |
Tab. 1: Vývojové generace DM systému dle Grossmana
Příčiny vzniku a oblasti využití
Hlavní příčinou využití DM bylo především konkurenční prostředí, ve kterém firmy potřebovali co nejpřesnější a nejaktuálnější informace pro rozhodování a plánování. S růstem výkonu výpočetní techniky a s rostoucími objemy skladovaných dat se objevily nové možnosti zpracování těchto dat za účelem zjištěný dosud neznámých souvislostí. S tímto vývojem paralelně probíhal i vývoj přístupů ke statistické analýze – od lineárních modelů po nelineární, od spojitých proměnných k diskrétním atd.
V dnešní době se DM používá při obchodním rozhodování a vědeckém výzkumu aplikovaných oborů jako součást KDD. Uvedu zde několik z nich i s jednoduchými příklady:
- Bankovnictví – klasifikace žadatelů o úvěr
- Přímý marketing – analýza nákupního košíku (vhodné umístění a kombinace zboží)
- Detekce podvodů – detekce neobvyklých vzorců chování
- Bioinformatika/biotechnologie – interakce mezi geny a proteiny, časté kombinace léků
- Pojišťovnictví – charakteristika věrných zákazníků
- Bezpečnost – analýzy za účelem zjištění potenciálních teroristických hrozeb
DM má své využití i v rámci Business Intelligence, dle [3] je DM jedna ze tří částí analytických komponent (další jsou Reporting a OLAP).
Data pro analýzu
Data určená pro analýzu lze rozdělit na data strukturovaná a nestrukturovaná.
Data strukturovaná dodržují určitou danou úpravu. Obvykle se jedná o soubor složený z tabulky obsahující řádky (různé objekty) a sloupce (atribut objektu), soubor dále může obsahovat metadata (data o datech). Taková data jsou pro analýzu nejvhodnější, díky pevně dané úpravě lze k souboru přistupovat snadněji a analýza se tak zaměřuje pouze na samotná data v tabulce (objekty a jejich atributy).
Nestrukturovaná data naopak nemají pevně danou formu, jde především o multimediální soubory, text a geografická data. Tyto data jsou pro analýzu složitější, [1]: „Podle odhadů mají nestrukturovaná data ve firmách zastoupení asi 75 % všech ukládaných dat.“
7 Analytické metody a techniky data-miningu
U DM se používají především metody explorační a verifikační. U některých problémů mohou být využita i jiná hlediska, případně jejich různé kombinace.
Explorační metoda slouží k nalezení hypotézy, kterou předem neznáme, jelikož přesně nevíme, na co se ptát. Uplatňuje se zde např. metoda shlukové analýzy. Pokud je již z dat formulována nějaká hypotéza, musí se ještě ověřit její platnost, případně může být dalším cílem vyhledání netypických objektů či neobvyklých dat. U ověřování platnosti hypotézy se mohou uplatnit Bayesovské metody (Bayesovská statistika), které umožňují zpřesňovat původní hypotézu
Dle [1]: „Verifikační metody napomáhají ověřit, zda výsledek DM je nebo není skutečně validní, zda empiricky zjištěné vztahy nejsou pouze nahodilé a zda je možné potvrdit zákonitost, nalezenou v daných podmínkách sledování.“
Co se týká použitých metod, [1] uvádí např. korelace, lineární a nelineární regrese, logistická regrese, diskriminační analýza, rozhodovací stromy, aj.
Někde lze setkat s rozdělením na metody usměrňované (directed) a neusměrňované (undirected). Neusměrňovaná metoda je podobná jako metoda explorační, usměrňovaná metoda je pak zaměnitelná s metodou verifikační.
[1] uvádí několik příkladů aplikace DM a návrhů vytvářených hypotéz:
- „Korelace nákupních zvyklostí a demografických charakteristik (návrh cílené reklamní kampaně a predikce návratnosti nákladů).“
- „Analýza chování uživatelů určitého webu pro posouzení efektivity jednotlivých webových stránek nebo celého webu. Využití zejména v internetových obchodech.“
- „Sociální analýzy, analýzy sociálních sítí, vyhledávání skupin uživatelů s podobnými postoji, vazby mezi skupinami na hostitelských webech, které nabízejí uchování a sdílení informací (obrazové, blogy, apod.). Má význam například pro umístění nebo nabízení cílené reklamy uživatelům webu.“
Z technik používaných v DM jsou nejznámější rozhodovací stromy, které jsou podle [4]: „Prediktivní model, který zobrazuje data v podobě stromu, kde každý uzel určuje kritérium pro následné rozdělení dat do jednotlivých větv. Strom tak rozděluje veěkerá zdrojová data do segmentů, kde každý list odpovídá určitému segmentu definovaného uzly.“
Neuronové sítě napodobují chování neuronů v lidském mozku, vhodné jsou především pro nelineární modelování. Další použité techniky mohou zahrnovat genetické algoritmy, seskupování a klasifikaci.
Popis procesu data-mining
V procesu KDD, jehož součástí je DM, jde o mezioborový přístup, je totiž přinejmenším potřeba tyto obory:
- Informatika – prostupuje celým KDD (vhodně transformovaná data), vyskytuje se i přímo v DM (samotná analýza).
- Statistika – použitá je především v samotném procesu DM.
- Doména – jedná se o odvětví, ze kterého pocházejí data a pro které používáme KDD
U DM jsou jednotlivé kroky popisovány a rozdělovány různě, v [3] je rozdělení takové: objevování problému, objevování dat, čištění dat, analýza dat, úprava modelu, vytváření modelu a generování výstupu. Tento proces více odpovídá užšímu vymezení DM jako podmnožině KDD.
Proces DM může být rozdělený i jinak, více z pohledu KDD, avšak některé body jsou shodné s výše uvedeným rozdělením:
- Definice/objevování problému (problem definition) – nejdříve je potřeba identifikovat a vhodně formulovat problém, pak je zapotřebí experta na DM a dále experta z domény, které se problém týká. Někdy může být i přítomen business expert, který vše hlídá z pohledu dané firmy.
- Objevování dat (data exploration) – doménový expert vybírá a popisuje vhodná data pro analýzu, avšak s ohledem na komunikaci s DM expertem (např. aby vybraná analýza byla schopna operovat s vybranými daty).
- Příprava dat (data preparation) – doménový expert vytváří datový model pro modelovací proces, sbírají a dávají data do formátu vhodného pro analýzu. Dále vytváří odvozené atributy, např. průměry. Musí se ohlídat případné chybějící údaje v atributech, ty můžou být nahrazeny pomocí různých metod, např. průměrem, avšak ony chybějící údaje nesmí být součástí nějaké odchylky, což by pak mohlo zkreslit výsledek analýzy.
- Modelování (modeling) – expert na DM vybírá a používá různé metody pro analýzu, která často prochází několika iteracemi.
- Zhodnocení (evaluation) – DM expert vyhodnocuje model a v případě nespokojenosti mění parametry, dokud nedosáhne optimálních výsledků. Pokud je spokojený, pak vše předávají business expertovi k posouzení, ten vše zkontroluje, především jestli model uspokojil očekávání a jestli byly zváženy všechny otázky z pohledu firmy.
- Zavedení (deployment) – DM expert použije výsledky analýzy a vytvoří z nich dokumentaci, nebo předá výsledky k dalšímu zpracování, např. nějaké další aplikaci.
Za zmínku uvedenou v [4] také stojí snaha o metodiku pro DM. Jde o metodiku CRISP-DM (CRoss-Industry Standard Process for Data Mining) vzniklou v rámci Evropského výzkumného projektu. DM je zde bráno ze širšího pohledu – od nalezení cílů fimy po zavedení zjištených informací, aby mohlo možné jej aplikovat v různých komerčních sférách. O celé metodice se lze dočíst na www.crisp-dm.org .
Vliv lidského faktoru
Přestože se u DM využívá strojové učení a různé algoritmy, nejedná se zcela o autonomní systémy – je zde stále zapotřebí člověka – DM experta a experta na danou doménu. Analytik (ať již jde o DM či doménového experta) má tedy své nezastupitelné místo, jelikož dostupné technologie ještě nejsou natolik pokročilé, aby mohly dolovat data zcela autonomně. Zvláště je to znát u metodiky CRISP-DM, kde nalezení cílů firmy je výhradně záležitostí člověka, stejně tak jako následná implementace a zhodnocení výstupů DM v rámci firmy.
S nezastupitelností analytika se zde vynořuje též možnost chybovat. Chybovat je možné v kterémkoliv procesu KDD, jde především o výběr vhodných data a následné vyhodnocení. DM software sám o sobě chybovat nemůže (minimálně by neměl), jelikož dle předem stanovených pravidel provede výpočty. Pokud však analytik chybuje u vstupních dat, lze očekávat chybu i u dat výstupních, nebo vstupní data mohou být v pořádku, avšak následné zhodnocení či implementace může být provedeno chybně.
Kdekoliv v procesu KDD může člověk chybovat, proto by se analytik měl vyvarovat především:
- Nesprávnost dat – může jít o duplicitní záznamy (např. při získávání dat z více databází), chybné výpočty v odvozených atributech, atd.
- Nedostatek dat – některé atributy u některých objektů mohou chybět a tak zavést chybu do analýzy, je potřeba zjistit, zda chybějící údaje mají nějakou významnou souvislost, pokud ne, pak tyto údaje nahradit např. průměrem ze zbývajícího atributu u ostatních objektů.
- Chybná extrapolace – člověk může mít tendenci nesprávně extrapolovat, případně se může více upnout na první objev a považovat jej za lepší, i když to tak není.
- Nekonzistence – může jít o neslučitelné hodnoty, různé části databáze používají při stejných atributech jiné označení (část slovní a část číselné označení).
Informační zdroje
[1] Skalská, H.: Data mining a klasifikační modely. Gaudeamus, Hradec Králové, 2010. 978-80-7435-088-7.
[2] Nisbet, R.; Elder, J.; Miner, G.: Handbook of statistical analysis and data mining applications. Elsevier, Amsterdam, Nizozemí, 2009. 978-0-12-375086-0.
[3] Čech, P.; Bureš, V.: Podniková informatika. Gaudeamus, Hradec Králové, 2009. 978-80-7041-479-8.
[4] Petr, P.: Data Mining Díl 1. Univerzita Pardubice, Pardubice, 2006. 978-80-7194-886-1.
[5] Business Intelligence, Knowledge discovery in databases (KDD) and Data mining: Definitions: http://www.kmining.com/info_definitions.html . 29. 04. 2011.
[6] What is statistical analysis? definition and meaning: http://www.businessdictionary.com/definition/statistical-analysis.html. 29. 04. 2011.
[Tab.1] Four generations of data mining technologies/systems: https://www.hasustorm.com/books/English/Idea.Group.Publishing.Business.Intelligence.in.the.Digital.Economy-Opportunities.Limitations.and.Risks.eBook-LiB.chm/7076final/LiB0078.html . 29. 04. 2011.