Bayesova sieť je typ grafu používaný na modelovanie náhodných javov a vzťahov medzi nimi, najmä keď niektoré premenné nie sú priamo pozorovateľné. Graf je smerový acyklický graf (DAG), teda obsahuje orientované hrany a neobsahuje žiadne cykly. Uzly predstavujú náhodné premenné (diskrétne alebo spojité) a každá orientovaná hrana vyjadruje závislosť medzi premennými; ku každej takejto hrane sú priradené podmienené pravdepodobnosti opisované pomocou podmienených pravdepodobnostných tabuliek (CPT) alebo vhodných hustôt.
Základné princípy
- Markovská vlastnosť lokality: Každý uzol je podmienečne nezávislý od svojich nelokálnych predkov vzhľadom na svoje priame rodičovské uzly. Táto vlastnosť umožňuje faktorizovať spoločnú hustotu pravdepodobnosti celej siete ako súčin lokálnych podmienených rozdelení.
- Faktorizácia: Pre premenné X1,...,Xn reprezentované v sieti platí P(X1,...,Xn) = ∏ P(Xi | rodičia(Xi)). Táto faktorizácia výrazne znižuje počet potrebných parametrov oproti úplnému rozdeleniu.
- D-separácia a podmienená nezávislosť: Topológia grafu umožňuje určiť, ktoré premenné sú navzájom podmienečne nezávislé. Princíp d-separácie je nástrojom na odvodzovanie týchto nezávislostí.
- Bayesova veta: Základy inferencie v Bayesových sieťach vychádzajú z Bayesovej vety, ktorá umožňuje prepojiť apriórne informácie a pozorovania na výpočet posteriorných pravdepodobností.
Inferencia (odvodenie)
Hlavným cieľom používania Bayesových sietí je vykonávať inferenciu — t. j. vypočítať rozdelenie jednej alebo viacerých nepozorovaných premenných za podmienky pozorovaní iných premenných. Typy inferencie zahŕňajú:
- diagnostická inferencia (z príznakov k príčinám),
- prediktívna inferencia (z príčín k príznakom),
- intervenčná (kauzálna) inferencia — pri pokuse o interpretáciu sietí ako kauzálnych modelov treba byť opatrný; pre tvrdé kauzálne závery sú potrebné dodatočné predpoklady a metódy (napr. do-calculus).
Algoritmy pre inferenciu možno rozdeliť na presné (napr. variable elimination, junction tree / clique tree) a aproximačné (napr. Monte Carlo metódy ako Gibbsov vzorkovač, variacne metódy, loopy belief propagation). Presná inferencia je často NP-ťažká v závislosti od štruktúry grafu (veľkosť klík v triangulovanom grafe), preto sa v praxi bežne používajú aproximačné prístupy pre veľké siete.
Učenie sietí
Bayesovské siete možno učiť z dát v dvoch hlavných aspektoch:
- učenie parametrov: Keď je štruktúra známa, parametre (CPT alebo parametre kontinuálnych hustôt) sa odhadujú napr. pomocou maximum likelihood alebo bayesovských odhadov (s priormi), aj pri chýbajúcich údajoch možno použiť EM algoritmus;
- učenie štruktúry: Keď je štruktúra neznáma, pristupuje sa buď score-based (hľadanie štruktúry maximalizujúcej skóre ako BIC alebo BDe), alebo constraint-based (testy podmienených nezávislostí), prípadne kombinovane. Učenie štruktúry je výpočtovo náročné (kombinatorické), preto sa používajú heuristiky a optimalizačné metódy.
Rôzne typy Bayesových sietí
- Naivný Bayes: Zjednodušený model, kde sú všetky rysové premenné podmienečne nezávislé vzhľadom na triedu; veľmi efektívny pri klasifikácii a rýchly na učenie.
- Gaussian Bayesovské siete: Pre spojité premenné s predpokladom lineárnych vzťahov a normálneho rozdelenia (multivariátne Gaussovské siete).
- Hybridné siete: Kombinujú diskrétne a spojité premenné (vyžadujú špeciálne metódy pre inferenciu).
- Dynamické Bayesovské siete (DBN): Rozšírenie pre časové (sekvenčné) dáta — napr. skryté Markovovské modely sú osobitným prípadom DBN.
Aplikácie
Bayesovské siete sa široko používajú v mnohých oblastiach vďaka svojej schopnosti modelovať neistotu a zložité závislosti:
- medicínska diagnostika a rozhodovacia podpora,
- detekcia porúch a údržba (fault diagnosis),
- spracovanie prirodzeného jazyka a rozpoznávanie reči,
- počítačové videnie a rozpoznávanie obrázkov,
- recommendation systems a personalizácia,
- robotika a plánovanie za neistoty,
- analýza rizík a rozhodovanie v podnikaní,
- vyhľadávanie informácií a zlučovanie neúplných dát.
Výhody a obmedzenia
- Výhody: modelovanie neistoty formálne a konzistentne, zrozumiteľná reprezentácia závislostí, možnosť začleniť apriórne informácie, flexibilita pri kombinovaní dát a znalostí odborníkov.
- Obmedzenia: učenie štruktúry a presná inferencia môže byť výpočtovo náročná; sieť sama o sebe neurčuje kauzalitu bez ďalších predpokladov; pre veľmi veľké alebo husté siete môže byť nevyhnutné použiť aproximačné metódy.
Praktické poznámky
- Pri implementácii natrafíte na množstvo softvérových knižníc (R, Python — napr. pgmpy, bnlearn, pomegranate, Java a iné), ktoré poskytujú nástroje na učenie a inferenciu.
- Naivný Bayes je jednoduchý príklad Bayesovej siete, ktorý sa často používa ako rýchly baseline pri klasifikačných úlohách.
- Pri uvažovaní o kauzálnych otázkach pamätajte, že pre spoľahlivé kauzálne závery je potrebné zvážiť experimentálne alebo identifikačné predpoklady (napr. randomizované štúdie, nástroje pre identifikáciu kauzálnych efektov).
Bayesovské siete predstavujú silný rámec pre prácu s neistotou v rôznych doménach. Ich úspešné použitie vyžaduje pochopenie grafovej štruktúry, princípov faktorizácie, zvolených algoritmov na inferenciu a obozretné interpretovanie výsledkov, obzvlášť pri tvrdeniach o kauzalite.