1. Úvod Techniky strojového učení [1] jsou metody, které umožní vytvořit z trénovací množiny případů model pro kategorie dat, takže mohou být nové (neznámé) případy zařazeny do jedné nebo více kategorií schématem odpovídajícím modelu. Techniky strojového učení byly úspěšně použity k řešení předpovědních úloh u řady různých problémů a dat. Základním úkolem je zjistit, jak použít algoritmů strojového učení na tato data s cílem odhalit vztahy mezi atributy a vytvořit predikce, které by mohly být užitečné pro podporu rozhodování. Medicínská data jsou specifický druh dat, protože při jejich sběru je zaznamenáváno mnoho různých druhů atributů. Nicméně, medicínská data mají několik známých problémů: chybějící, nesprávné nebo málo četné informace a časově omezená data. Pro tento typ dat jsou velmi vhodné metody strojového učení [2]. Řada prací KDD (knowledge discovery from databases – získávání znalostí z databází) se snaží pracovat s rozsáhlým množstvím lékařských informací. V práci [3] se autoři pokoušejí určit typ zánětu jater tím, že vyberou krátký sled charakteristik z časově ohraničeného záznamu. V práci [4] byla podobná úloha řešena pomocí metody čtyřpolních tabulek (tj. statistických tabulek s dvěma řádky a dvěma sloupci), aby bylo možno stanovit zánět jater typu B a C z rozdílů onemocnění. Autoři v [5] se pokusili řešit úlohu jednoduchými boolen údaji (ano-ne), které mohou předpovídat stadium jaterní cirhózy. Podobné aplikace užili autoři v [6], ale v tomto případě byly vybrané příznaky spojeny a tyto bloky příznaků byly přiřazeny ke stadiu jaterní cirhózy, což záviselo na zahrnutých případech. Tato technika byla také použita při určování rizika aterosklerózy [7]. Pro analýzu jsou velmi vhodné studie se sledováním osob a opakovaným shromažďováním dat stejného typu. Další příklady získávání znalostí z biomedicínckých dat ukazují práce [8] a [9]. Pro pokusy v tomto sdělení byla použita data z dvacetileté longitudinální primárně preventivní studie rizikových faktorů (RF) aterosklerózy u mužů středního věku. Studie se nazývá STULONG (LONGitudinální STUdie) [10], [11]. Hlavním cílem těchto pokusů je vyhodnotit strojové učení jako způsob vyhledávání asociací a zhodnotit výstup klasifikace pro měření charakteristických rysů nalezených asociací. Algoritmy strojového učení jsou také používány pro testování pro předpověď poruch ve vzdálené budoucnosti. V následující části jsou uvedeny podrobnosti o souboru dat studie STULONG. V části 3 jsou popsány testované algoritmy strojového učení. Část 4 předkládá měření pro hodnocení a Část 5 popisuje validaci pokusů. Na závěr jsou v části 6 uvedeny závěrečné poznámky a návrh další práce. 2. Popis studie a souboru dat Data studie STULONG (http://euromise.vse.cz/challenge2004/index.html) [10], [11] byla získávána v letech 1975-1999 na II. interní klinice 1. lékařské fakulty Univerzity Karlovy v Praze a Všeobecné fakultní nemocnice v Praze. Data byla převáděna do elektronické formy Evropským centrem pro lékařskou informatiku, statistiku a epidemiologii Univerzity Karlovy v Praze a Akademie věd České republiky v Praze v letech 1994-1999 a poté analyzována statisticky. Hlavní cíle studie byly:
- Zjistit prevalenci rizikových faktorů (RF) aterosklerózy v populaci, která je všeobecně považována za nejohroženější možnými komplikacemi aterosklerózy, tj. u mužů středního věku.
- Sledovat vývoj těchto RF a jejich dopad na zdraví vyšetřených mužů, zejména na vznik aterosklerotických srdečně-cévních onemocnění.
- Zhodnotit dopad komplexní intervence RF na vývoj těchto RF a na srdečně-cévní nemocnost a úmrtnost sledovaných mužů.
V roce 1975 byli z volebních seznamů Prahy 2 vybráni muži narození v letech 1926-1937 a žijící v obvodu Prahy 2. Na první vyšetření se dostavilo z 2370 pozvaných 1419 mužů. Vstupní vyšetření byla provedena v letech 1976-1979. V dopisu, kterým byli muži zváni k vyšetření, byly krátce vysvětleny cíle studie, průběh vstupního vyšetření a účel dalšího sledování. Muži byli požádáni o spolupráci. V té době nebyl vyžadován k účasti na studii podpis informovaného souhlasu. Pokud muž reagoval na pozvání a přišel na první vyšetření, považovali jsme to za dostatečný souhlas s vyšetřením, dalším sledováním a analýzou výsledků. Pokud muž na první pozvání nereagoval, zaslali jsme mu další, maximálně dvě, pozvání. Rizikové faktory byly stanoveny podle tehdejších definic následovně: -
hypertenze – krevní tlak ≥ 160/95 mm Hg nebo muži, užívající léky ke snížení krevního tlaku, -
hypercholesterolemie – celkový cholesterol ≥ 260mg% (6,7 mmol/l), -
hypertriglyceridemie – triglyceridy ≥ 200mg% (2,2 mmol/l), -
kouření: ≥ 15 cigaret/den v současné době nebo stejné množství cigaret kouřených denně v době kratší než 1 rok před vstupem do studie (kuřáci dýmek nebo doutníků byli zařazeni mezi nekuřáky), -
nadváha: Brocka index > 115 % (Brocka index: výška v cm - 100 = 100 %), -
pozitivní rodinná anamnéza: úmrtí otce nebo matky na ischemickou chorobu srdeční nebo cévní mozkovou příhodu před jejich 65. rokem věku. Podle přítomnosti RF, celkového zdravotního stavu a nálezu na záznamu EKG byli muži rozděleni do následujících skupin: - NG = Normální skupina – skupina mužů bez RF definovaných výše, bez manifestního aterosklerotického onemocnění nebo jiného závažného onemocnění, které by bránilo jejich desetiletému sledování a beze změn na EKG záznamu.
- RG = Riziková skupina – skupina mužů s alespoň jedním RF podle výše uvedené definice, bez manifestního aterosklerotického onemocnění nebo jiného závažného onemocnění, které by bránilo jejich desetiletému sledování a beze změn na EKG záznamu.
- PG = patologická skupina – skupina mužů s manifestním aterosklerotickým onemocněním nebo jiným závažných onemocněním, které by bránilo jejich desetiletému sledování (např. maligní onemocnění, pokročilé jaterní nebo ledvinné selhání, závažné neurologické nebo psychické poruchy). V patologické skupině byli též muži s cukrovkou, léčení perorálními antidiabetiky nebo inzulínem a muži s patologickým nálezem na EKG záznamu podle Minnesotského kódu.
Pro dlouhodobé sledování byli pacienti rozděleni do následujících skupin: -
Riziková skupina RG byla randomizovaně rozdělena na dvě podskupiny označené jako RGI (intervenovaná riziková skupina) a RGC (kontrolní riziková skupina). Pacienti RGI skupiny byli zváni na kontrolu nejméně dvakrát ročně, při farmakologické intervenci byli zváni podle potřeby. Pacienti z RGC skupiny obdrželi krátkou písemnou zprávu včetně laboratorních výsledků a popisu EKG záznamu s doporučením, aby tyto výsledky předali svému ošetřujícímu lékaři. Případná intervence RF byla ponechána na rozhodnutí tohoto lékaře. Muži ze skupiny RGC byli zváni na kontrolu jedenkrát ročně. Při prvním vyšetření nebyly mezi skupinami RGI a RGC signifikantní rozdíly ve věku, socio-ekonomických ukazatelích, ani ve výskytu RF. -
10 % mužů z NG skupiny bylo kontrolováno jedenkrát ročně podobně muži rizikových skupin (byli označeni jako NGS – sledovaní). V této skupině – podobně jako ve skupině RGI – byla zahájena intervence RF co nejdříve po jejich zjištění (hypertenze, hyperlipidemie). Ostatní muži z NG byli pozváni na kontrolu za 10-12 let po prvním vyšetření. -
Muži z PG skupiny byli ze sledování vyloučeni. Intervence RF měla ve studii klíčové postavení a byla vždy zahájena nefarmakologickými opatřeními. Snažili jsme se o úpravu RF a dosažení jejich optimálních hodnot. - Nefarmakologická intervence: pohovor o životním tylu, tj. stravování, tělesné aktivitě, vhodnosti, resp. nutnosti zanechat kouření a snížit váhu. Tyto pohovory byly při každé kontrole opakovány a kromě obecných doporučení byly zaměřeny na RF u daného pacienta.
- Farmakologická intervence: léčba arteriální hypertenze a hyperlipoproteinemie – v počátku studie byly velmi omezené a v širším měřítku byly užity až v posledních letech studie. Farmakologická léčba byla doporučena podle celkového rizika a případných dalších onemocnění pacienta.
K analýze byly použity čtyři soubory dat: - Soubor ENTRY (Vstup) obsahuje 244 atributů ze vstupního vyšetření každého muže; tyto atributy jsou výsledky různých veličin, často kódované, nebo jsou výsledkem transformací původních veličin (identifikace muže, rodinná a osobní anamnéza, sociální faktory – vzdělání, tělesná aktivita, kouření, stravovací návyky, spotřeba alkoholu, poté antropometrická měření – výška, váha, kožní řasy, fyzikální vyšetření včetně změření krevního tlaku, zjištění tepové frekvence, laboratorní hodnoty a kódovaný EKG záznam).
- Soubor CONTROL (Kontroly) obsahuje 66 atributů zaznamenaných při kontrolním vyšetření. Tyto atributy odpovídají identifikaci muže, záznamům o změnách ve způsobu života, v osobní anamnéze, fyzikální vyšetření, výsledky biochemického vyšetření a údaje o hypertenzi, hypercholesterolemia, hypertriglyceridemii a prodělaných onemocněních, zejména srdečních a nádorových. Tento soubor obsahuje 10 572 záznamů z dlouhodobého sledování.
- Dodatečné informace o zdravotním stavu 403 mužů, kteří ukončili studii předčasně, byly získány dotazníkem zaslaným mužům poštou. Bylo získáno 62 atributů a jsou v souboru LETTER (Dopis).
- V souboru DEATH (Úmrtí) je 5 atributů o každém z 389 pacientů, kteří během studie zemřeli. Tyto atributy jsou identifikace pacienta a datum a příčina úmrtí.
3. Popis použitých metod Všechny použité algoritmy patří mezi učící postupy s učitelem. To znamená, že je třeba mít učící množinu k vytvoření modelu trénovacích případů a poté použít tento model k předpovědi kategorie neznámých případů. Bylo testováno několik algoritmů ve snaze podchytit řadu způsobů učení s učitelem. V následující části je velmi krátce vysvětlena každá z těchto metod. 3.1 Naivní Bayes Naivní Bayes [11] počítá pro každý pár „atribut a jeho hodnota" (např. vzdělání, vysokoškolské) pravděpodobnost příslušnosti ke každé kategorii a to tak, že dělí počet případů v dané kategorii, kde se pár vyskytuje, celkovým počtem případů v celém souboru, kde se pár vyskytuje. Každý pár bude mít určitou pravděpodobnost pro každou uvažovanou kategorii. Metoda je založena na předpokladu, že každý pár „atribut-hodnota" je nezávislý na jakémkoliv jiném páru. Takže, když je klasifikován neznámý případ, pravděpodobnost příslušnosti ke každé kategorii je násobkem pravděpodobností každého páru, který tvoří případ, pro odpovídající kategorii. Předpověděná kategorie je ta s největší pravděpodobností. 3.2 Vícevrstevný perceptron Klasifikační model neuronové sítě vícevrstevného perceptronu [13] je tvořen sítí složenou z vrstev vzájemně propojených neuronů. Mezi neurony jedné vrstvy nejsou žádné vazby, ale neuron z jedné vrstvy je propojen se všemi neurony vrstvy sousední. Architektura modelu užitého v našem souboru je ukázána na Grafu 1.  Graf 1. Architektura užité neuronové sítě vícevrstevného perceptronu. S každým spojením je asociována určitá váha. Vstup (input) do každého neuronu je vážený součet spočtený z asociovaných vah všech přicházejících hodnot. Výstup z každého neuronu je výsledek použité funkce. V tomto případě je u všech neuronů použita typická sigmoidní funkce. Graf 2 ukazuje vyjádření a zobrazení této funkce. Graf 2. Vyjádření a zobrazení esovité funkce. Každá hodnota atributu ze vzorku z datového souboru je vložena do odpovídajícího neuronu ve vstupní vrstvě a hodnoty procházejí neuronovou sítí k výstupní vrstvě, kde výstupní hodnota neuronu znamená předpovídanou kategorii. Trénovací fáze spočívá ve vložení každého označeného případu z trénovacího datového souboru s daným souhrnem původních vážených hodnot do modelu a porovnání výstupní hodnoty s předpokládanou kategorií. Podle chyby v předpověděné kategorii jsou při zpětném šíření algoritmu změněny váhy z výstupní vrstvy do vstupní vrstvy tak, aby předpovídaná hodnota byla předpokládané hodnotě podobnější. Tento proces je prováděn s určitým počtem iterací. V našem případě je tento počet 500. Rozsah, o který se mění váhy při zpětném šíření, tzv. učící poměr, je 0,3. Pokud algoritmus zpětného šíření nedosahuje dobrého přiblížení k předpokládanému výstupu po jedné iteraci, potom se model obnoví a směřuje ke snížení učícího poměru. 3.3 Support Vector Machines (SVM) SVN (Support Vector Machines) [14] se pokouší rozdělit případy založené na jejich kategoriích do n-rozměrného prostoru; n je počet atributů nebo charakteristik, nadrovina má vyjádření w + b, takže x w + b ≥ +1 → kategorie = správně x w + b ≥ -1 → kategorie = nesprávně při čemž x je případ reprezentovaný jako vektor n komponent. Zde je w pomocný (Support) vektor, kolmý k nadrovině a odpovídá případům, které jsou mimo nebo nad limitem jejich kategorie (viz Graf 3).  Graf 3. Schema podpůrných vektorů. Pomocný vektor také svým modulem definuje rozpětí mezi nadrovinou a prvním pozitivním a prvním negativním případem (platí to pro prahy +1, -1). Pro každou kategorii se algoritmus snaží najít w s maximálním rozpětím, resp. se snaží najít nadrovinu, která má největší odstup od příkladů z trénovací množiny. Pro klasifikaci nezpracovaného případu se jednoduše použije výše uvedeného algoritmu. Tato jednoduchá realizace metody je jednou z metod použitých v našich pokusech, existují však další mnohem sofistikovanější přístupy a techniky. 3.4 K-nejbližší soused (K-Nearest Neighbour) KNN (K-Nearest Neighbour) je algoritmus založený na paměti [15], jehož základní myšlenkou je, že zhodnocené případy nám analogií mohou pomoci řešit současný případ. Posuzuje každý případ jako vektor o n komponentách, přičemž n je počet atributů nebo charakteristik. Metoda nepotřebuje učící fázi. K předpovědi třídy řešeného případu porovná algoritmus řešeného případu se všemi případy trénovací množiny nebo s pamětí a vypočte vzdálenost mezi nimi. Potom je většinová třída pro K nejpodobnějších trénovacích případů předpovědí pro řešený případ. Vzdálenost použitá v případech je eukleidovská vzdálenost mezi vektory. Literatura uvádí řadu dalších možností. 3.5 ID3 a C4.5 rozhodovací stromy Model vytvořený tímto algoritmem je strom [16], kde každý uzel odpovídá jednomu atributu a každá hrana odpovídá možné hodnotě uzlového atributu. Učící algoritmus vytváří strom z trénovacích dat. Výběr atributu, který bude tvořit uzel, vzniká v každém momentě výpočtem entropie dat po výběru uzlu. Pro každý atribut se počítá entropie zbývajících dat bez atributu podle různých hodnot uzlového atributu. Pro uzel je vybrán atribut, který vykazuje minimální entropii. Proces se opakuje do té doby, dokud nezbývá žádný atribut nebo je počet zbývajících případů pod uzlem menší než určitý limit. Příklad můžeme vidět na Grafu 4.  Graf 4. Příklad rozhodovacího stromu. V příkladu jsou 4 atributy: hmyz (flies), povrch těla (body covering), místo výskytu (habitat), dýchací průduchy (breathes air), a 4 možné kategorie, m, b, f a r. První atribut je zde hmyz, protože je jediný, který rozděluje data na této úrovni s minimální entropií, atd. Pro klasifikaci řešeného případu stačí procházet strom směrem dolů a poslední listový atribut je předpovídaná kategorie. Na cestu od počátečního uzlu ke konečnému listovému atributu je možno nahlížet jako na pravidla, kde je pravidlo vytvořeno AND funkcí termínů (node=arc). C4.5 je rozšíření ID3. Metoda umožňuje pracovat se spojitými číselné atributy, s chybějícími hodnotami a prořezávat strom při velkém množství dat. V experimentech použitý J48 strom je implementací C4.5. 3.6 RIDOR učení pravidel RIDOR je název pro učení RIpple-DOwn pravidel [17]. Vytváří nejprve vstupní pravidlo a potom odchylky od vstupního pravidla s nejmenší (váženou) odchylkou a tímto klasifikuje trénovací data. Vznikají tak „nejlepší“ odchylky pro každou kategorii a proces se opakuje až do vyčištění souboru. Odchylky se jakoby řadí stromovitě a poslední list má pouze vstupní pravidla, ale žádné výjimky. Odchylky tvoří soubor pravidel, které předpovídají jiné třídy než jsou třídy ve vstupních pravidlech. Pro nalezení našich odchylek bylo užito algoritmu IREP. Tento algoritmus vytváří pravidla postupným přidáváním vždy jen jednoho výrazu do podmínek v každém kroku, takže počet omylů je minimalizován. Výraz pravidla podmínky je např. (atribut {=,≠,≤,≥} hodnota). 4. Hodnocení Hodnotící procesy a měření jsou stejné pro všechny pokusy. Z části dat byl vytvořen trénovací soubor, ostatní data byla testovaný soubor. Modely se učí z trénovacího souboru a snaží se předpovídat kategorii případů v testovaném souboru. Protože je známa kategorie dat testovaných případů, lze omezit předpovědi. Pro každou kategorii byly počítány tři různé typické míry: přesnost, úplnost a F-měření [18]. Přesnost je procento předpovědí v jedné kategorii, které jsou správné. Přesnost vyjadřuje Rovnice 1. 
(1) Úplnost je procento všech případů v testovaném souboru v dané kategorii, které byly předpověděny správně. Výpočet je uveden v Rovnici 2. 
(2) F-měření je kombinace výše uvedených výpočtů. Vyjadřuje jakoby průnik mezi případy, přesnost a úplnost standardizuje jejich součtem. Rovnice 3 ukazuje vyjádření F-měření. 
(3) Tyto tři míry byly počítány pro každou kategorii testovaného souboru. Jak bylo řečeno dříve, sesbíraná data je třeba rozdělit na soubor trénovací a testovaný. Společná cesta pro jejich vytvoření je křížová kontrola (cross-validation). Sesbíraná data jsou rozdělena na n stejně velkých částí. Každá n-1 část kombinace je trénovací, zbytek je testovaný, algoritmus je n-1 krát opakován a konečný výsledek je průměr z těchto n-1 pochodů. Pro všechny níže popsané pokusy, má n hodnotu 3, takže je vždycky 66 % trénovacích a 33 % testovaných dat a každý algoritmus se třikrát opakuje. Obvykle je hodnota n vyšší než 3, typicky to bývá 10, ale v tomto případě jsme měli v některých kategoriích velmi málo případů a vyšší hodnota n by mohla vytvořit soubor, který by nebyl reprezentativní pro danou kategorii, což je nežádoucí. 5. Pokusy Byly provedeny dva druhy pokusů. První byl určený pro zjištění asociací mezi atributy, kde byla ukazatelem síly asociace charakteristika klasifikace. Druhý typ pokusů testoval předpověď budoucích příhod. Je třeba poznamenat, že pozorování v souboru dat s chybějícími hodnotami nebyly vyloučeny z hodnocení ani nebyly dopočítávány, protože implementovaný učící algoritmus dokáže s chybějícími daty pracovat. Tyto implementace jsou vloženy do WEKA prostředí [19], které dokáže provést výše uvedené pokusy i s neúplnými daty. 5.1 Nalezené odpovědi První pokusy se vztahují k analytickým otázkám, které byly připraveny pro Výzvu k odhalování na konferenci ECML/OKDD 2004, konkrétně k těm, které se týkají souboru Vstup (Entry). Úlohy měly nalézt vztahy ve třech různých skupinách pacientů: normální skupina, riziková skupiny a patologická skupina. Tyto skupiny odpovídaly riziku aterosklerózy – viz výše a jsou nazývány úrovní skupin. Konkrétně jsme hledali vybrané vztahy mezi sociálními faktory a tělesnou aktivitou, spotřebou alkoholu, kouřením, hmotnostním indexem, krevním tlakem a HDL cholesterolem. Další úloha měla zjistit vztah mezi tělesnou aktivitou a ostatními faktory a mezi spotřebou alkoholu a ostatními faktory. Data každé skupiny byla použita v algoritmu strojového učení se snahou předpovědět hodnotu každého faktoru v jedné skupině podle hodnot tohoto faktoru v druhé skupině s ohledem na možné hodnoty uvažované kategorie. Např. čtyři sociální faktory byly vloženy do algoritmu jako trénovací faktory, aby bylo možno předpovídat hodnotu každého atributu tělesné aktivity apod. pro ostatní skupiny faktorů. Pro každý vztah byly počítány maximální hodnoty z výsledků různých algoritmů, aby bylo možno provést porovnání mezi úrovněmi skupin. Pokud byla předpověď přesná, lze říci, že jde o silný vztah mezi faktory trénovacími a faktorem, jehož hodnota byla předpovídána, a to se stupněm síly odpovídajícím přesnosti předpovědi. Lze také porovnat míru předpovědi mezi faktory a úrovní skupiny ke stanovení, které vztahy jsou silnější než jiné. Vzhledem k omezené délce sdělení jsou prezentovány jen některé typické výsledky. Na Grafu 5 jsou uvedeny výsledky předpovědi, a to míry maximální přesnosti, úplnosti a F-měření pro sociální atribut „Kouření (Smoking)“ proti ostatním sociálním faktorům v každé úrovni skupin, a to a) Normální, b) Patologické a c) Rizikové, a proti tělesné aktivitě ve skupinách d) Normální, e) Patologické a f) Rizikové. Je vidět, že pro Normální skupinu jsou nejlepší předpovědi pro nekuřáky, a to jak v sociálních faktorech tak v tělesné aktivitě, zatímco pro ostatní stupně „Kouření“ byly výsledky nevýznamné. Zdá se, že pro vztah mezi sociálními faktory a kouřením je vztah poněkud silnější než je vztah mezi tělesnou aktivitou a kouřením, protože jsou lepší výsledky ve všech stupních atributu kouření. V Patologické a Rizikové skupině je vztah mezi trénovacími faktory a nekuřáctvím silnější než je vztah mezi kouřením a tělesnou aktivitou – zvláště silný byl tento vztah v Patologické skupině. V této skupině byly osoby, které kouří 15 nebo více cigaret za den lépe předpověděny než v Normální skupině, ale nekuřáci byli detekováni mnohem hůř než v Normální skupině.  a) 
b) 
c) 
d) 
e) 
f) Graf 5. Hodnoty maximální přesnosti, maximální úplnosti a maximálního F-měření ve všech algoritmech pro předpověď atributu „Kouření (Smoking)“ z ostatních sociálních faktorů v a) Normální skupině, b) Patologické skupině, c) Rizikové skupině a z faktorů tělesné aktivity v d) Normální skupině, e) Patologické skupině, f) Rizikové skupině. Vysvětlivky: Max. Precision – maximální přesnost, Max. Recall – maximální úplnost, Max. Fmeasure – maximální F-měření Non-Smoker – nekuřáci, 1-4 cig/day a další – kuřáci 1-4 cigaret/den a další, Cigars or Pipes – kuřáci doutníků nebo dýmky. Podívejme se na jiný charakteristický příklad. Graf 6 ukazuje výsledky předpovědi hladiny cholesterolu ze sociálních faktorů – a), b), a c) a z faktorů tělesné aktivity, d), e) a f) pro každou úroveň skupin. V tomto případě jsou výsledky předpovědi velmi podobné ve vztahu mezi sociálními faktory a cholesterolem a mezi faktory tělesné aktivity a cholesterolem ve všech úrovních skupin, takže můžeme říci, že síla těchto vztahů je také podobná. Nicméně se liší mezi úrovněmi skupin. V Normální skupině je průměrná absolutní chyba předpovědi okolo 24, zatím co v Patologické a Rizikové skupině je okolo 50, resp. 40. Lze učinit závěr, že je snadnější předpovědět hladinu cholesterolu z obou skupin faktorů – sociálních i faktorů tělesné aktivity pro osoby z Normální skupiny než pro osoby z ostatních dvou skupin. Ukazuje to na silný vztah mezi trénovacími faktory a hladinou cholesterolu v posledně jmenované skupině.  a) 
b) 
c) 
d) 
e) 
f) Graf 6. Hodnoty průměrné absolutní chyby, odmocniny střední kvadratické chyby, podílu absolutních chyb a odmocniny relativní kvadratické chyby ze všech algoritmů předpovědi hladiny cholesterolu ze sociálních faktorů v a) Normální skupině, b) Patologické skupině a c) Rizikové skupině a z faktorů tělesné aktivity v d) Normální skupině, e) Patologické skupině a f) Rizikové skupině. Vysvětlivky: Mean Abs.Error – průměr absolutní chyby, Root Mean Sqr. Error – odmocnina střední kvadratické chyby, Relative Abs. Error – podíl absolutních chyb, Root Rel. Sqr. Error – odmocnina relativní kvadratické chyby. A konečně, Graf 7 ukazuje výsledky pro předpověď hodnot příjmu alkoholu, zvlášť ze sociálních faktorů a z faktorů tělesné aktivity jako trénovacích, pro každou úroveň, podobně jako bylo uvedeno výše.  a) 
b) 
c) 
d) 
e) 
f) Graf 7. Hodnoty maximální přesnosti, maximální úplnosti a F-měření ze všech algoritmů pro předpověď atributu „Alkohol“ pouze ze sociálních faktorů v a) Normální skupině, b) Patologické skupině, c) Rizikové skupině a pouze z faktorů tělesné aktivity v d) Normální skupině, e) Patologické skupině, f) Rizikové skupině. Vysvětlivky: Max. Precision – maximální přesnost, Max Recall – maximální úplnost, Max Fmeasure – maximální F-měření. Výsledky v Grafu 7 ukazují, že je ve všech úrovních skupin jasný vztah mezi trénovacími faktory a osobami, které pijí alkohol příležitostně. Osoby, které pijí alkohol pravidelně, jsou mnohem hůře detekovatelní a hůře se z trénovacích faktorů předpovídají, takže tento vztah je nevýrazný, snad poněkud silnější v Patologické skupině. Totéž lze říci o vztahu osob, které alkohol nepijí a jejich tělesné aktivitě. Nicméně významně vyšší je přesnost předpovědi ze sociálních faktorů v Normální a v Rizikové skupině. Osoby, které nepijí alkohol, jsou přesně identifikovány ze sociálních faktorů v Rizikové skupině, což ukazuje na významný vztah mezi danými atributy. Trénovací skupinu faktorů tvořily všechny atributy dohromady. Z lékařského pohledu je také zajímavé tyto faktory oddělit a vytvořit z nich podsoubor. Takže se např. předpovídala tělesná aktivita v zaměstnání ze všech možných kombinací sociálních faktorů. Výsledky ukázaly, že pro Normální skupinu a Rizikovou skupinu dává mnohem lepší předpovědní výsledek samotný faktor „Vzdělání (Education)“, než jakákoliv jiná kombinace sociálních faktorů. V Patologické skupině je to podobné, ale rozdíl není tak velký jako v ostatních skupinách, nejlepší kombinace je v této skupině „Věk + Vzdělání (Age + Education)“. 5.2 Předpověď budoucích příhod Hlavní cíl následujících pokusů bylo testovat přesnost předpovědních algoritmů. Bylo užito souboru Vstup (Entry), ale i Kontroly (Control). Nejprve byli vybráni pacienti, kteří měli kontrolní záznam v souboru Control po deseti letech od vstupu do studie. Poté byl proveden pokus předpovědět z atributů Vstup (Entry), zda u nich vznikne nějaká příhoda. Jako příhody byly vybrány systolicko-diastolická hypertenze, systolická hypertenze, diastolická hypertenze, hypercholesterolemie a hypertriglyceridemie. Možné hodnoty těchto atributů byly „správně“ nebo „nesprávně“. Stejně tak byly zhodnoceny záznamy po dvaceti letech. Výsledky ukázaly, že nejlepším algoritmem byl vícevrstevný perceptron, který dosáhl téměř 85% přesnosti a 65% úplnosti v detekci všech poruch. Zatímco riziko vzniku hypertenze bylo v Rizikové skupině 0, protože někteří pacienti této skupiny měli hypertenzi do začátku studie, je z lékařského hlediska mnohem zajímavější provést tyto pokusy jen pro Normální skupinu. Takže pro tuto skupinu byl proveden stejný proces pro deset a pro dvacet let. Výsledky pro různé uvažované poruchy ukazuje Graf 8, a to a) až e) pro desetileté předpovědi a f) až j) pro dvacetileté předpovědi. Pro každou příhodu je uvedena maximální hodnota ze všech použitých algoritmů. V tomto případě výsledky ukázaly, že není jeden nejlepší algoritmus. Podle předpovídané příhody a pro některé kategorie je některý algoritmus lepší než ostatní (ukazované maximální hodnoty odpovídají různým algoritmům), takže je zajímavé použít všechny algoritmy a rozhodnout podle výsledků všech algoritmů. Nutno upozornit na to, že přesnost předpovědi je mnohem vyšší pokud jsou pro vstup dána data všech tří skupin dohromady s tím, že prvotní zájem je na Normální skupině.  a) 
b) 
c) 
d) 
e) 
f) 
g) 
h) 
i) 
j) Graf 8. Hodnoty maximální přesnosti, úplnosti a F-měření pro předpověď a) systolicko-diastolické hypertenze, b) systolické hypertenze, c) diastolické hypertenze, d) hypercholesterolemie a e) hypertriglyceridemie v deseti letech, a f) systolicko-diastolické hypertenze, g) systolické hypertenze, h) diastolické hypertenze, i) hypercholesterolemie a j) hypertriglyceridemie ve dvaceti letech. Vysvětlivky: Max. Precision – maximální přesnost, Max Recall – maximální úplnost, Max Fmeasure – maximální F-měření. Hodnoty v Grafu 8 ukazují, že předpověď příhody je přesněji odvozena po 20 letech, ale velmi špatně předpověděna po 10 letech s výjimkou diastolické hypertenze. Nepřítomnost příhody je stejně dobře předpověděna pro deset jako pro dvacet let. Ze všech příhod vychází nejlepší předpověď pro diastolickou hypertenzi, kde je hodnota přesnosti předpovědi téměř 100 % pro její přítomnost i pro její nepřítomnost. Nejhorší byla předpověď pro systolickou hypertenzi – přítomnost v deseti letech nebyla detekovatelná. Pro předpověď některých dalších příhod, např. anginy pectoris, srdečního infarktu, mozkových příhod a dalších nebylo možné pro malý počet pozorování těchto příhod, takže výsledky nejsou relevantní. 5.3 Předpověď příčiny úmrtí Tento pokus je podobný jako předcházející, byla zde ale předpovídána příčina úmrtí místo onemocnění nebo poruch. Bylo užito souboru Úmrtí (Death). Algoritmy byly pro zemřelé osoby trénovány na jejich datech ze Vstupu (Entry). Pokusy byly provedeny samostatně pro tři úrovně skupin a poté pro všechna vstupní data všech tří úrovní skupin dohromady. Výsledky ukazuje Graf 10. V Normální skupině – Graf 10b) byla nejlépe předpověděnou příčinou nádorová onemocnění a ostatní příčiny úmrtí. V Rizikové skupině – Graf 10 d), byla nejlepší předpověď pro ostatní příčiny, ale též pro srdeční infarkt a ischemickou chorobu srdeční, které nebyly vůbec předpověděny v Normální skupině. V Patologické skupině – Graf 10 c), byly nejlépe předpověděny srdeční infarkt a nádorová onemocnění, ale předpověď mozkové mrtvice a celkové aterosklerózy byla nedokonalá, dostali jsme mnohem horší výsledky pro tyto příhody než v ostatních skupinách. Souhrnně – Graf 10a), předpověď příčiny úmrtí byla velmi nedokonalá a to proto, že data ze souboru Vstup (Entry) neměla dostatek informací pro předpověď příčiny úmrtí a/nebo by možná bylo třeba více pozorování. Ale, kolik je to dostatek informací? 
a) 
b) 
c) 
d) Graf 9 Hodnoty maximální přesnosti, výpovědní hodnoty a F-měření pro předpověď příčiny úmrtí, a) všechny skupiny dohromady, b) Normální skupina, c) Patologická skupina a d) Riziková skupina. Vysvětlivky: Myocardial infarction – srdeční infarkt, coronary heart disease – ischemická choroba srdeční, stroke – mozková mrtvice, other causes – jiné příčiny, sudden death – náhlá smrt, cause of the death unknown – neznámá příčina úmrtí, tumorous disease – nádorové onemocnění, general atherosclerosis – celková ateroskleróza, Ostatní - viz vysvětlivky u Grafu 8. 6. Závěry Různé typy algoritmů strojového učení byly použity k vyhledávání znalostí z lékařských dat, a to dvojím způsobem: za prvé, metody byly použity k předpovědi hodnoty jednoho atributu z databáze pacienta, zatímco ostatní atributy vytvořily trénovací soubor. Záměrem bylo stanovit maximální přesnost mezi všemi algoritmy jako míru síly vztahu mezi trénovací částí a cílovým atributem. Toto měření se ukázalo užitečné i pro porovnání vztahů mezi atributy v různých skupinách pacientů. Za druhé, učící techniky byly použity k předpovědi budoucích příhod. Výsledky ukázaly, že některé metody předpovídají některé příhody lépe než ostatní, takže je zajímavé použít všechny algoritmy najednou a zhodnotit spolehlivost výsledků podle známého trendu každé metody. Všechny testované metody poskytly lepší předpověď pro dvacet let než pro deset let sledování a pro některé příhody dosáhly výborných výsledků, takže by to mohly být metody vhodné pro podporu rozhodování. Algoritmy strojového učení byly použity také pro předpověď příčin úmrtí, v tomto případě bylo dosaženo špatných výsledků, možná pro malé množství informací (vstupů) v tomto souboru dat. Do budoucna by mohlo být zajímavé zjemnit nastavení parametrů algoritmů a testovat více technik. V úmyslu je také spojit všechny významné a použitelné metody z této práce a vytvořit expertní systém a výzkumně odvodit z výsledků systému srozumitelná pravidla. Poděkování Výzkum byl částečně podpořen Výzkumným plánem Ústavu informatiky AV ČR AV0Z10300504 a Výzkumným plánem Španělské Rady pro Vědecký výzkum spolu s podporou Ústavu průmyslové automatizace„María Bueno“ . Literatura | [1] | Mitchell, T.: Machine Learning. McGraw Hill, 1997. | | [2] | Lavraĉ, N.: Selected Techniques for Data Mining in Medicine. Artificial Intelligence in Medicine, vol. 16 (1), pp. 3-23, 1999. | | [3] | Aseervatham, S. and Osmani A.: Mining Short Sequential Patterns for Hepatitis Type Detection. ECML/PKDD Discovery Challenge, 2005. | | [4] | Aubrecht, P., Kejkula, M., Kremen, P., Novakova, L., Rauch, J., Simunek, M., Stepankova, O.: Mining in Hepatitis Data by LISp-Miner and SumatraTT. ECML/PKDD Discovery Challenge, 2005. | | [5] | Pizzi, L.C., Ribeiro, M.X., Vieira, M.T.P.: Analysis of Hepatitis Dataset using Multirelational Association Rules. ECML/PKDD Discovery Challenge, 2005. | | [6] | Durand, N., Soulet, A.: Emerging Overlapping Clusters for Characterizing the Stage of Liver Fibrosis. ECML/PKDD Discovery Challenge, 2005. | | [7] | Durand, N., Cleuziou, G., Soulet, A.: Discovery of Overlapping Clusters to Detect Atherosclerosis Risk Factors. ECML/PKDD Discovery Challenge, 2004. | | [8] | Cios, K. J.: Medical data mining and Knowledge Discovery. Physica – Verlag, 2001. | | [9] | Chen, H., Fuller, S. S., Friedman, C. and Hersh, W.: Medical Informatics: Knowledge Management and Data Mining in Biomedicine. Integrated Series in Information Systems (2), Springer Science and Business Media Inc., 2005. | | [10] | Boudik F., Reissigova J., Hrach K., Tomeckova M., Bultas J., Anger Z., Aschermann M., Zvarova J.: Primary Prevention of Coronary Artery Disease Among Middle Aged Men in Prague: Twenty-year Follow-up Results. Atherosclerosis. 2006 Jan;184(1):86-93. | | [11] | Tomeckova, M.: The Challenge on Atherosclerosis Data Viewed by the Experts. ECML/PKDD Discovery Challenge, 2004. | | [12] | Rish, I.: An Empirical Study of the Naive Bayes Classifier. IJCAI-01 Workshop on Empirical Methods in AI, 2001. | | [13] | Haykin, S.: Neural Networks: A comprehensive Foundation (2nd edition). Pearson Education, 1998. | | [14] | Scholkopf, B., Smola, A. J., Mtiller, K.-R., Burges, C. J. C., and Vapnik, V.: Support Vector Methods in Learning and Feature Extraction. In Down, T., Frean, M., and Gallagher, M., editors. Proceedings of the Ninth Australian Congress on Neural Networks, Brisbane, Australia. University of Queensland, 1998. | | [15] | Teknomo, K.: K-Nearest Neighbors Tutorial. http:people.revoledu.comkardi tutorialKNN, 2004. | | [16] | Quinlan, J. R.: C4.5: Programs for Machine Learning. Morgan Kauffman, 1993. | | [17] | Compton, P., Edwards, G., Kang, B., Malor, R., Menzies, T., Preston, P., Srinivasan, A. and Sammut, S.: Ripple Down Rules: Possibilities and Limitations. Boose, J.H. & Gaines, B.R., Ed. Proceedings of the Sixth AAAI Knowledge Acquisition for Knowledge-Based Systems Workshop. pp.6-1-6-20. Calgary, Canada, University of Calgary, 1991. | | [18] | Van Rijsbergen, C. J.: Information Retrieval. Butterworths, London, 1979. | | [19] | Witten, I. H. and Frank, E.: Data Mining: Practical Machine Learning Tools and Techniques. 2nd Edition, Morgan Kaufmann, San Francisco, 2005. |
|