KAPITOLA 1.: REPREZENTACE ZNALOSTÍ

Co je reprezentace znalostí?

Dělení typů reprezentací znalostí



Co je reprezentace znalostí?

Reprezentace znalostí je jednou z nejdůležitějších a zároveň nejobtížnějších oblastí umělé inteligence. V souvislosti s rozvojem umělé inteligence se o znalostech začalo živěji hovořit od 80. let na základě potřeby vyvíjet efektivnější systémy [1]. Kladl se důraz na to, co má být znalostní aplikací řešeno a až pak, jak to má být řešeno. Znalost se tak stala klíčovým prvkem znalostně orientovaných aplikací, např. expertních systémů. Na tvůrcích znalostního systému je zvolit vhodný způsob zviditelnění (zachycení, reprezentace) znalostí, tzv. reprezentační schéma. Takové schéma si lze představit jako soubor pravidel a postupů, které mají být dodržovány pro zachycení znalostí. Schéma by mělo být pro člověka dostatečně srozumitelné, univerzální, resp. schopné zachytit širokou škálu znalostí – od obecnějších po specifičtější. Dále by mělo podporovat snadnou modularitu (rozšiřování) znalostí.

Dělení typů reprezentace

Různé zdroje uvádějí podobné rozdělení typů reprezentace znalostí. Dle [2] je lze dělit na procedurální, deklarativní a rámcová schémata.

Sousloví „procedurální reprezentace“ znalostí nám už samo napovídá, že hlavním prvkem této reprezentace je procedura. Tu si lze představit jako určitý výkonný programový kód (menší prográmek), který řeší otázky typu „Jak?“, nikoliv „Co?“. Jistě Vám je pojem procedura znám z takových programovacích jazyků jako Java, C, Pascal, ale vůbec se nemusíme omezovat jen na ně. Ve spojení s touto formou reprezentace můžeme hovořit i o tzv. pravidlech (produkcích), které se vyskytují např. v produkčních systémech, resp. expertních. Slouží k přenosu znalostí expertů do počítačové podoby. Pravidlo má odlišnou podobu od procedur používaných třeba v Javě. Obsahuje různé podmínky a akce, které jsou proveditelné na základě splnění těchto podmínek. Jestliže budeme chtít získat určitou znalost reprezentovanou procedurálně, tak musíme proceduru nebo pravidlo provést. Řešenou úlohou v případě procedurální reprezentace může být např. zjištění většího čísla ze dvou možných. Obrázek Procedura a pravidlo demonstruje způsob zjištění většího čísla ze dvou možných pomocí procedury zapsané v jazyce Java a pravidel zapsaných v prostředí Clips (prostředí pro tvorbu znalostních aplikací).


Procedura a pravidlo

Obrázek: Procedura a pravidlo

Jsou zde patrné určité odlišnosti v syntaxi i sémantice jednotlivých příkazů. Detailní vysvětlení jednotlivých příkazů ale necháme stranou.

Deklarativní způsob reprezentace znalostí naopak zodpovídá otázku „Co má být řešeno?“, nikoliv „Jak to má být řešeno?“. Neptáme se tedy například na způsob výpočtu největšího čísla, ale spíš na to, jak je největší číslo definováno. Expertní systém má svoji procedurální i deklarativní znalostní reprezentaci – fakty obsažené v bázi faktů. Tato fakta jsou používána pravidly např. pro vyvozování dalších souvislostí a znalostí. Obrázek Deklarativní a procedurální reprezentace ukazuje procedurální a deklarativní složku znalostní aplikace, např. expertního systému.


Deklarativní a procedurální reprezentace

Obrázek: Deklarativní a procedurální reprezentace

Typickými představiteli deklarativního způsobu reprezentace znalostí jsou logická schémata (výroková logika, predikátová logika prvního a vyšších řádů), sémantické sítě a stavový prostor.

Rámcová schémata jsou kombinací procedurálního a deklarativního přístupu. Deklarativnost spočívá ve způsobu zachycování informací o objektech reality pomocí slotů (vlastnosti rámce) a facet (hodnoty vlastností rámce). Procedurálnost je obsažena v procedurách, které mohou být součástí rámcové struktury. Příklad rámce je uveden na obrázku Rámec.


Rámec

Obrázek: Rámec

Obrázek Způsoby reprezentace znalostí shrnuje dosud řečené.


Způsoby reprezentace znalostí

Obrázek: Způsoby reprezentace znalostí

ZDROJE

[1] Mařík, V. A kol. Umělá inteligence 1. Academia Praha 1993. ISBN 80-200-0502-1
[2] Olej, V. Petr, P. Expertní systémy. Univerzita Pardubice 1997. ISBN 80-7194-095-X