Svaz poznání: Od filozofie k matematice a zpět

Často říkám, že informatika je vlastně jen z jedné třetiny filozofie, z druhé psychologie a z té třetí matematika. Že bez matematiky se informatika neobejde asi nikoho nepřekvapí. V tomto článku bych však chtěl ukázat, že i filozofie má v informatice značný význam. A dost možná i naopak.

Každý trochu méně pasivní student informatiky na Univerzitě Palackého jistě nějakým způsobem už někdy slyšel zkratku FCA. FCA, neboli Formal Concept Analysis, česky Formální a Konceptuální analýza, Formálně-konceptuální analýza, Analýza Formálních konceptů či dokonce Formální analýza konceptů (že je ta čeština krásná, co? Raděj se budu držet anglického FCA). Tím však zřejmě znalosti této ne moc známé informatické disciplíny končí, takže mi dovolte lehký úvod do FCA.

Formálně konceptuální analýza formálních konceptů?

FCA je technika pro zpracování dat, konkrétně tzv. data-miningová, tedy technika pro tzv. dolování dat, nebo jinými slovy získávání znalostí z dat (i zde je angličtina skromná a používá souhrnně pojem data mining). To znamená, že FCA analyzuje obvykle velké množství určitých dat, o kterých toho moc nevíme, a snaží se z nich vytěžit (doslova) co nejvíce informací.

Dobře, a jak, říkáte si? Na pochopení FCA se pojďme vrátit o pár století zpět (pokud tento článek bude číst někdo za pár tisíciletí, tak se omlouvám za nepřesnost). Konkrétně do století sedmnáctého. Ještě konkrétněji, chcete-li, do jeho šedesátých let. V této době totiž tak nějak (přece jen, tehdejší publikační činnost vypadala krapet jinak, než dnes) vznikla tzv. Logika z Port-Royal, resp. Port-Royalská logika. Jedná se o filozofické dílo, resp. myšlenku, názor, či pohled na svět.

Pochopitelně, nejsem filozof, situaci značně zjednodušuji, ale základní myšlenka Port-Royalské Logiky je až děsivě jednoduchá: Svět kolem nás je tvořen různými objekty. Každý takový objekt má určité vlastnosti.

Pokud budeme schopni popsat všechny objekty v našem okolí a budeme schopni popsat jejich vlastnosti, pak získáme přehled o celém světě, univerzu, éteru, či zakouřené putyce, ve které zrovna sedíme. Pro značnou část nefilozofů další důkaz toho, že filozofie je jen smíška … objektů s vlastností „být silně zapáchající“.

Ne však pro jednoho nejmenovaného německého matematika, který přesně toto v osmdesátých letech dvacátého století popsal matematicky. Proč? Protože to byl odborník na tzv. teorii uspořádání a právě v Port-Royalské Logice našel její uplatnění. No a tak vznikla FCA.

Přicházejí kočičky

Jako vždy si odpustím padesát slajdů definice-věta-důkaz a vše osvětlím na příkladu. Představme si, že pozorujeme nějaký fiktivní svět, který je tvořen jen šesticí zvířátek (od každého jedno), jak uvádí následující tabulka:

Tabulka našeho světa

Jak je vidět, v našem světě žije pejsek, který se zcela určitě někdy napije, je to savec a má srst. Stejně tak tam žijí další dva savci – kočka a vydra. Která je spolu s rybou, žábou a kachnou vodní tvor. A tak dále. Jak bylo naznačeno, FCA analyzuje tzv. formální koncepty. Co je to ten formální koncept? No, to je tvrzení, které v našem světě platí. Tvrzení ve tvaru „nějaká zvířátka mají nějaké vlastnosti“. Tedy například „všechna zvířátka pijí„, „ryba, žába, vydra a kachna jsou vodní zvířata“ nebo například „pes, kočka a vydra jsou všichni savci se srstí„. Kteří pijí.

Všimněte si, že všechna zvířata pijí. Poté se nám zvířata dělí na savce/se srstí (to je vlastně v našem světě totéž) a na případně vodní zvěř. Vydra je jak savec se srstí, tak i vodní zvěř. Toto všechno lze graficky znázornit jako tzv. konceptuální svaz (odtud název článku). Černé puntíky znázorňují jednotlivé koncepty. Všimněte si, že čím více je v konceptu zvířátek, tím méně mají souhrnně vlastností (a naopak).

Konceptuální svaz

Bohužel, v praxi se s takto „primitivním“ světem obvykle nesetkáme. V reálném světě by byla jak tabulka, tak konceptuální svaz ji zobrazující pochopitelně vskutku obrovský. Kupříkladu, výřez ze spodní části konceptuálního svazu reálného světa by mohl vypadat například takto (za předpokladu, že v Praze žije paní Nováková a má …):

Kdesi dole ve svazu...

Můžete pozorovat, že úplně dole máme vždy jeden jediný konkrétní objekt. Například kočka Mourek paní Novákové z Prahy. O takovém objektu můžeme určit opravdu nespočet vlastností. Kromě vlastností, které mají všechny kočky paní Novákové z Prahy (a tudíž i všechny kočky z Prahy a tudíž i všechny kočky)(např. jméno majitelky, adresu bydliště, počet končetin), můžeme o Mourkovi říct, jakou má barvu srsti, kolik má let či jakou má nejraděj konzervu.

And we need to go deeper…

Dobře, to je Mourek. Ale, co když se vydáme v konceptuálním svazu směrem nahoru? Mourek je paní Novákové, je z Prahy, je to kočka, to vím. A dál? Kočka je určitě šelma a současně náš oblíbený savec. Tudíž je určitě obratlovec. A tedy i zvíře. Každé zvíře je živým tvorem. Živý tvor je něco, co najdeme v přírodě na planetě Zemi. Co najdeme v přírodě na planetě Zemi je něco, co najdeme ve Sluneční soustavě. A tak dále. Všimněte si, že jsme začali používat slovo „něco„. Neurčitost vzrostla tak vysoko, že už vlastně ani nepopisujeme žádný objekt, ale jen „něco“ splňující pár vlastností (např. nachází se na planetě Zemi, je tvořen atomy a molekulami).

Téměř celý svaz poznání

Dříve nebo později (dobře, spíš později, vzhledem k tomu, že vesmír je nekonečný), bychom se dostal k něčemu natolik obecnému, že bychom o něm nemohli říct vůbec nic konkrétního. K něčemu, co obecně nesplňuje naprosto žádnou vlastnost. (Tedy, krom jedné – že toto něco je rovno číslu čtyřicet dva.) Dostali bychom se k něčemu, co popisuje celý svět, celý vesmír, prostě úplně všechno. A tomu se, nepletu-li se, říká vyvrcholení filozofie.

Hledání nekonečna

Dobře, toť teorie. Ale k čemu je nám to v praxi? A proč je v názvu článku „svaz poznání“? Jistě, poznat celý svět a najít ono mýtické něco je snad snem kdejakého filozofa. Takže konceptuální svaz popisující celý vesmír vlastně popisuje všechno naše poznání. Ale ono je to ještě praktičtější. Tedy, pravda, pro vědce, či další profese, které produkují určité poznání.

Často se říká, že životní cyklus vědy je následující: hypotéza – teorie – experiment – vyhodnocení. Pohledem svazu poznání není věda nic jiného, než objevování nových končin právě v tomto svazu. Pravda, zjistit, že paní Nováková z Prahy má kocoura Mourka asi zrovna není téma na dizertaci. Nicméně, objevit nový druh motýla, vymyslet Eulerovu větu či zobecnit Speciální teorii relativity, to už vědou docela zavání.

Vědci totiž obvykle dělají jednu ze dvou věcí. Buďto se snaží zobecnit nějaké poznatky („co mají společného tito motýli?“, „platí Pythagorova věta pro libovolný exponent?“) nebo naopak snažit se situaci zpřesnit („všechny kovy vodí teplo, který kov nejlépe?“, „za těchto podmínek soustava nemá řešení, co když se omezíme jen na x = 0?“). Tyto postupy odpovídají hledání nového konceptu, nového puntíku ve svazu poznání, a to buď někde nad (zobecnění) nebo někde pod (zpřesnění) puntíky, které odpovídají naší teorii/hypotéze. Nemám pravdu?

Je jasné, že nikdy nepoznáme svaz celý, ale je pěkné, že někde uprostřed nekonečna se nachází malinkatý flíček, který máme zmapovaný a velmi pomalu se zvětšuje.