Ontológie a sémantický web

Bc. Attila Nagy

 

Slovenská technická univerzita, Fakulta informatiky a informačných technológií
Ústav informatiky a softvérového inžinierstva
Ilkovičova 3, 842 16 Bratislava, Slovenská republika
nagyattila84 at yahoo.com

 

Spracované podľa: [2] SVÁTEK, V. Ontologie a WWW. Datakon 2002. Dostupné na World Wide Web: http://nb.vse.cz/~svatek/onto-www.doc

Abstrakt. Tento dokument pojednáva o ontológiách, sémantickom webe a použitiu týchto technológií. Sémantický web za použitia ontológií predstavuje možného budúceho nasledovníka súčasného internetu. Informácie nachádzajúce sa na internete by tak boli čitateľné a pochopiteľné strojom, čo by umožnilo presné vyhľadávanie v informáciách podľa ich významu. V práci opisujem vlastnosti ontológií, ich rozdelenie a možnosti použitia. Takisto sa venujem sémantickému webu, jeho zloženiu a odlišnostiam od súčasného internetu. Nakoniec analyzujem dostupné ontológie.

Abstract This document is about ontologies, semantic web and application of these technologies. Semantic web using ontologies is the eventual follower of present-day Internet. Informations stored on the Internet would be readable for search machines, which may allow correct search in informations according to meaning. I describe ontologies, their division and occasion of use. I also describe semantic web, its structure and difference between present-day Internet. Then I analyze available ontologies.

 

Obsah

 

1 Úvod

V posledných rokoch narastá celkový počet informácii, ktoré sú prezentované najmä prostredníctvom webových technológii. Doterajšie spôsoby sprístupňovania takýchto informácií sa začínajú s ohľadom na ich narastajúci počet javiť ako nedostatočné. Doteraz používané prístupy už nemôžu zabezpečiť dostatočne efektívne vyhľadávanie a najmä spracovanie údajov. Často krát sa javí výhodnejšie požadované riešenie vytvoriť opätovne od začiatku, ako vyhľadávať informácie a zdroje, ktoré by umožnili využiť už existujúce poznatky. To má za následok najmä zníženie produktivity práce a s tým súvisiace finančné straty.

Závažnejším problémom, ktorý súvisí s uchovávaním informácii je však ich reprezentácia, ktorá je vo veľkej väčšine prípadov realizovaná pomocou prirodzeného jazyka. Vďaka tomu existuje len veľmi malá možnosť takéto údaje spracovávať pomocou automatizovaných nástrojov.

Aj z tohto dôvodu vznikla snaha popísať informácie tak, aby boli strojovo spracovateľné aj na základe ich významu a nie len obsahu. Táto iniciatíva sa nazýva sémantický web. Sémantický web umožňuje poskytovanie kvalitnejších webových služieb a posun k webu, ktorý je viac orientovaný na znalosti. Vďaka strojovému spracovaniu je taktiež možné rýchlejšie spracovanie údajov automatizovanými nástrojmi, ktoré by bolo inak potrebné spracovať ručne.

V prvej časti práce sa zaoberám prezentovaním informácií reprezentovaných ontológiou. Venujem sa všeobecnému úvodu do problematiky, následne rozoberiem členenie a štruktúru ontológií a jej formálnu reprezentáciu. V ďalšej časti práce sa zaoberám popisom sémantického webu. Popisujem v nej, čo vlastne sémantický web je, jeho štruktúru a niektoré technológie, na ktorých je postavený. Na záver vyhodnotím zopár dostupných ontológií.

 

2 Ontológie

[2],[3] Slovo ontológia je dávno známe z filozofie, kde je tento pojem chápaný ako náuka o bytí, prípadne ako univerzálna sústava znalostí popisujúca objekty, javy a zákonitosti sveta. V informatike sa slovo ontológia významovo približuje druhotnému významu slova zaužívanom vo filozofii, popisuje teda existujúce veci, ktoré môžu byť následne použité v informačnom systéme.

Ontológie v informatike si môžeme predstaviť ako formálny opis konceptov a vzťahov medzi nimi. Koncept je pojem, abstraktný útvar predstavujúci entitu reálneho sveta. Vzťah medzi dvoma konceptmi je reláciou. Konceptualizácia (t.j. systém pojmov modelujúci určitú časť sveta) musí byť špecifikovaná explicitne, to znamená, že nemôže byť skrytá iba v hlave autora. Takisto je tu požiadavka na formalizáciu, čiže použitie jazyka s presne definovanou syntaxou a na zdieľanie, pretože ontológia nie je individuálnou záležitosťou, ale výsledkom konsenzu určitej záujmovej skupiny ľudí.

Ontológiami môžeme popísať reálne situácie a vzťahy, napríklad vzťahy na pracovisku, roztriedenie živočíchov a pod. Najväčšie ontológie sa snažia popísať maximum z reálneho sveta a pokryť tak čo najväčší počet vyskytujúcich sa informácií a vzťahov. Pomocou nich sa dajú následne modelovať situácie v reálnom svete. Na Obr. 1 uvádzam zjednodušený náčrt ontológie, ktorá modeluje ľudí a vzťahy medzi nimi.

Obr. 1. Ontologia

Obr. 1: Zjednodušený náčrt ontológie



Z hľadiska znalostného inžinierstva možno ontológie používané v procese vývoja znalostnej aplikácie ( aplikácie ktorá využíva množinu znalostí ) takisto chápať ako znalostné modely, teda abstraktné popisy znalostného systému, ktoré sú relatívne nezávislé na reprezentácii a na implementácii znalostí. Znalostné inžinierstvo sa zaoberá systematickým prístupom k tvorbe znalostných systémov, najmä činnosťou spojenou so znalosťami.

Medzi základné spôsoby využitia ontológií patrí najmä podpora porozumenia medzi ľuďmi (napr. znalostnými inžiniermi a expertmi), podpora komunikácie (interoperability) medzi počítačovými systémami a uľahčenie návrhu znalostne orientovaných aplikácií.

 

2.1 Členenie ontológií

[2],[3] Pod pojmom ontológie rozumieme množstvo heterogénnych informačných artefaktov.

V nasledujúcich riadkoch uvediem ich hlavné dimenzie členenia.

Členenie podľa historických paradigiem

Ontológie nie sú v informatike pojmom zcela novým a zásadne rozdielnym. Informačné zdroje s podobnou štruktúrou sa vyskytovali už dávnejšie v rôznych disciplínach a tak sa v dôsledku toho problematika ontológií rozdeľuje na prinajmenšom tri hlavné oblasti :

V dôsledku vzájomných kontaktov všetkých troch odborných komunít sa existencia týchto odlišností pomaly stráca.

Členenie podľa miery formalizácie

Napriek tomu, že formalizácia je do istej miery definičnou vlastnosťou ontológií, zmysluplné využitie majú takisto semi-formálne a neformálne ontológie. Ide spravidla o glosáre, v ktorých sú jednotlivé pojmy vysvetlené pomocou prirodzeného jazyka, či už voľnou alebo štruktúrovanou formou.

Ontológie vyjadrené vo formálnych jazykoch môžeme ďalej členiť podľa formálnelogických vlastností daného jazyka, ako je jeho úplnosť a rozhodnuteľnosť. Tieto vlastnosti vychádzajú z logického kalkulu, na ktorom je daný jazyk založený, napríklad z deskriptívnej logiky.

Väčšina formálnych ontológií svojím spôsobom takisto obsahuje aj ontológie neformálne. Následne sú jednotlivé koncepty vybavené dokumentačnou položkou, umožňujúcou vyjadriť obsah prirodzeným jazykom.

Členenie podľa predmetu formalizácie

Ide o tradičné členenie s množstvom variant, navrhnutých rôznymi autormi. Uvediem len hlavné typy.

 

2.2 Štruktúra ontológií

[2] Napriek tomu, že základná štruktúra ontológií je prakticky vo všetkých hlavných projektoch rovnaká, terminológia, ktorá sa používa je značne odlišná a tak dochádza ku zníženej orientácii medzi pojmami, preto uvediem viacero možných pomenovaní daných pojmov.

Triedy (koncepty, kategórie, rámce )

Základom znalostných ontológií sú triedy, ktoré označujú množiny konkrétnych objektov. Takisto môže byť použitý termín koncept, kategória alebo rámec. Oproti objektovo orientovaným modelom neobsahujú tieto triedy procedurálne metódy. Na množine tried je definovaná hierarchia (taxonómia). Aj napriek tomu, že je niekedy zo strany „filozofického“ smeru požadovaná stromová štruktúra, v praxi umožňujú všetky hlavné ontologické jazyky mnohonásobnú dedičnosť a táto možnosť je aj v praxi často využívaná .

Indivíduá (Inštancie)

Indivíduum predstavuje konkrétny objekt v reálnom svete. Termín inštancia je často chápaný ako ekvivalentný, čo ale nemusí byť vždy pravda. Inštancia asociuje príslušnosť k určitej triede, kdežto indivíduum môže byť do ontológie vložené aj bez väzby na triedu. Ontológia však principiálne slúži k popísaniu tried a nie konkrétnych faktov o objekte. Preto niektoré jazyky indivíduá ako súčasť ontológie interne nepodporujú a pri potrebe využiť indivíduum, pracujú s ním ako s atomickou triedou. Rozhodnutie, či je jednotlivá entita triedou alebo inštanciou nie je často dané objektívnym stavom sveta, ale závisí aj od uhla pohľadu. Príkladom môže byť posudzovanie živočíšnych druhov. V ontológii popisujúcej chovanie zvierat budú druhy reprezentované triedami, zatiaľ čo v ontológii fylogenetického vývoja zvierat pôjde skôr o indivíduá, medzi ktorými budú definované relácie typu „predchodca“.

Relácie (funkcie, sloty, vlastnosti, role, atribúty)

Podobne ako v databázových modeloch sú podstatnou zložkou ontológií vzťahy, čiže relácie n-tíc objektov (indivíduí). Oproti „odľahčeným“ webovým jazykom, v tradičných jazykoch môžu byť relácie definované pomocou ľubovoľnými logickými podmienkami. Odľahčené webové jazyky sú obmedzené na binárne relácie, pre ktoré sa používa pojem slot, prípadne vlastnosť („property“). Zvláštnym typom relácie sú funkcie. Ide v súlade s bežným matematickým chápaním o relácie, pri ktorých je hodnota n-tého argumentu jednoznačne určená hodnotou predchádzajúcich n- 1 argumentov. Takisto ako triedy, tak aj relácie môžu mať nad sebou definovanú určitú hierarchiu. Príkladom môže byť dvojica binárnych relácií má-otca a má predka.

Primitívne hodnoty a dátové typy

V predchádzajúcom odstavci boli relácie definované ako vzťahy medzi objektmi. Nie je to však úplne presné. Argumentami relácie môžu byť takisto primitívne hodnoty, ktoré nezodpovedajú žiadnemu objektu. V tomto prípade ide o takzvané dátovo-typové sloty, na rozdiel od objektových slotov. Obor hodnôt tohto dátovo-typového slotu je obmedzený niektorým základným dátovým typom (napríklad integer, string, float a pod. ). Zaujímavé je, že sloty (v rámci dátovo-typových) môžu nadobúdať viacero hodnôt súčasne, čo vyplýva z ich relačnej podstaty (napríklad inštancia človek môže nadobudnúť viacero hodnôt telefónneho čísla). Nejde tu teda o analógiu s objektovo orientovaným programovaním. Sloty odpovedajúce jednoznačným vlastnostiam, ako napríklad vek a pod. , sa preto explicitne deklarujú ako funkčné.

Axiómy

Spolu s výrazmi vymedzujúcimi príslušnosť k triedam a reláciám je obvykle možné v ontológiách zostaviť ďalšie logické funkcie, vyjadrujúce napríklad ekvivalenciu tried či relácií. Najčastejšie sú označované ako axiómy a majú buď v ontológii samostatné postavenie, alebo sú syntakticky zaradené ako súčasť definícií tried a relácií.

 

2.3 Formálna reprezentácia ontológií

[2] Počas dlhej histórie vývoja ontológií bolo vyvinuté množstvo viac či menej používaných formálnych jazykov. Spomeniem len tie najhlavnejšie a podrobnejšie popíšem takzvané „webové“ ontologické jazyky, pretože tie sú relevantnejšie vzhľadom na technológie používané v súčasnosti. Medzi ontologické jazyky patria jazyky :

 

3 Sémantický web

[1] Sémantický web je niekedy označovaný aj ako „web s významom“. Táto technológia popísaná v deväťdesiatých rokoch Timom Berners-Leeom a vedená pod krídlami W3C konzorcia stojí na idei rozšírenia webových stránok určitým značkovaním, ktoré podchytí aspoň časť významu stránky. To znamená pridať k webovým stránkam určité metadáta, ktoré poskytujú formálnu sémantiku obsahu webu. Rozdiel medzi dnešným webom a sémantickým webom je zobrazený na Obr. 2.

Obr. 2. Semanticky web

Obr. 2: Rozdiel medzi súčasným webom (vľavo) a sémantickým webom (vpravo)

Z Obr. 3 je viditeľné, že sémantický web obsahuje vrstevnú architektúru, pričom vyššie položený jazyk dedí konštrukcie nižšie položeného jazyka. Základom je XML súbor, v ktorom sú jednotlivé metadáta ukladané. Nasleduje schéma RDF/RDFS a na vrchole architektúry sa nachádza samotná ontológia. Prednosťou tejto architektúry je čiastočná spätná kompatibilita, prejavujúca sa hlavne v situácii, kde by mala byť ontológia využitá webovým agentom schopným pracovať iba s RDFS. Ten bude schopný uskutočniť základnú syntaktickú analýzu kódu ( vyjadrenú v RDF ) a identifikovať explicitnú hierarchiu tried (popísanú pomocou RDFS ). Stratí sa iba „sofistikovaná“ časť informácie obsiahnutá v logických výrazoch ontologického jazyka.

Hrubými čiarami sú zvýraznené prvky sémantického webu.

Obr. 2. Semanticky web

Obr. 3: Architektúra sémantického webu

 

3.1 RDF a RDFS schéma

[1] RDF (Resource Description Framework) je druh dátového modelu. Základný pojem je takzvaný zdroj, myslený všeobecne, nie je to iba odkaz na ďalšiu webovú stránku. Zdroj je identifikovaný pomocou URI (Uniform Resource Identifier) a tak môže byť priradený akémukoľvek objektu, abstraktnému pojmu, osobe, URL adrese a pod. Pri tvorbe URI sa uplatňujú priestory mien (namespace) a notácie v tvare priestor mien:notácia.

Výroky v RDF sú reprezentované takzvanými tripletmi. Triplety predstavujú výrok zložený z trojice subjekt, vlastnosť a objekt, pričom objekt môže byť subjektom ďalšieho tripletu. Subjekt je zdroj, na ktorý sa môžeme odkazovať pomocou URI. Vlastnosť definuje binárnu reláciu medzi subjektom a objektom a môže byť definovaná buď pomocou URI alebo atomickou hodnotou. Objekt špecifikuje hodnotu vlastnosti a môže byť definovaný takisto pomocou URI alebo atomickou hodnotou. Tieto triplety sú v grafickom vyjadrení zobrazené pomocou RDF grafu, kde ovály predstavujú zdroje, obdĺžniky atomickú hodnotu a orientované hrany vlastnosti. RDF graf je zobrazený na Obr. 4.

Obr. 2. Semanticky web

Obr. 4: RDF graf

Za pomocou RDF schémy (RDFS) sú popísané koncepty v RDF dátach a typové obmedzenia na objekty a hodnoty v tripletoch. Pomocou RDFS je možné vyjadrovať vlastnosti daných objektov, ako sú napríklad určovanie inštancie, hierarchie tried a pod. Na Obr.5 je zobrazený RDF graf obohatený o RDFS a pod ním je reprezentácia dát RDF a RDFS v súbore XML.

Obr. 2. Semanticky web

Obr. 5: Jednoduchý RDF graf s RDFS

RDF a RDFS schémy používajú formát XML na zapisovanie. V príklade 1 uvádzam RDF a RDFS schémy uložené vo formáte XML.

Obr. 2. Semanticky web

Príklad 1: RDF a RDFS schémy uložené vo formáte XML

 

3.2 Prehľad ontologických jazykov sémantického webu

[2] Na najvyššom stupni v architektúre sémantického webu sa nachádzajú samotné ontologické jazyky, ktoré majú väčšiu vyjadrovaciu silu ako RDFS. Medzi tieto jazyky patria jazyky OIL, DAML-OIL a OWL. Tieto jazyky pridávajú rôzne axiómy, pomocou ktorých je možné manipulovať s ontológiami, sú to napríklad vlastnosti ekvivalencie, prieniku tried a pod. Jazyk DAML-OIL vznikol spojením jazyka DAML vyvíjaného pod záštitou agentúry DARPA a jazyka OIL. Tento jazyk predstavuje v dnešnej dobe jazyk prvej voľby. Novým jazykom je jazyk OWL, ktorý je vyvíjaný W3C konzorciom.

 

3.3 Vyhodnotenie dostupných ontológií

S postupným prenikaním technológií sémantického webu vznikajú takisto ontológie potrebné na modelovanie danej problémovej oblasti. Sú to napríklad ontológie popisujúce problematiku ekonómie alebo zdravotníctva. Tak isto existujú ontológie, ktoré sa neviažu iba na určitú problémovou doménou. Sú to všeobecné ontológie, ktoré popisujú čo najviac z reálneho sveta. Sú to napríklad lexikálne ontológie popisujúce slovnú zásobu anglického jazyka.

 

Záver

V tejto práci som sa zaoberal analýzou ontológií a sémantického webu. Popísal som hlavné spôsoby súčasného vyhľadávania a ich nevýhody. Následne som sa venoval ontológiam, ich rozdeleniu, štruktúre a zápisu. Spomenul som sémantický web, jeho štruktúru a architektúru a používané technológie.

Cieľom práce bolo oboznámenie sa s problematikou sémantického webu a to najmä s problematikou prezentácie dát definovaných pomocou RDF modelov. Spomedzi vyhodnotených ontológií je najperspektívnejšia prvá, teda WordNet. Hlavným dôvodom je, že poskytuje širokospektrálne vlastnosti, aké sú hlavne vyhľadávanie synoným , hyponým a hyperoným. V neprospech FrameNetu svedčí odlišná práca so slovami ale hlavne nedostatok slov pokrývajúcich prírodu a prírodné javy.

Množstvo informácií dostupných na Internete rastie neuveriteľným tempom a tým sa vyhľadávanie informácií stáva čo raz zložitejšou a náročnejšou. Z tohto dôvodu považujem vývoj IT v tejto oblasti za veľmi potrebnú.

 

Použitá literatúra

[1] POKORNÝ, J. Digitální knihovny v prostredí sémantického webu. AKP 2005.

[2] SVÁTEK, V. Ontologie a WWW. Datakon 2002.
     Dostupné na World Wide Web: http://nb.vse.cz/~svatek/onto-www.doc [cit. 26-10-2008]

[3] SKLENÁK, V. Ontologie a sémantický web. Ikaros 2003.

[4] WodrNet - Cognitive Science Laboratory,Princeton University, 221 Nassau St.
     Dostupné na World Wide Web: http://wordnet.princeton.edu/ [cit. 02-11-2008]

[5] FrameNet - The Berkeley FrameNet project.
     Dostupné na World Wide Web: http://framenet.icsi.berkeley.edu/ [cit. 02-11-2008]

[6] FOAF Project
     Dostupné na World Wide Web: http://www.foaf-project.org/ [cit. 02-11-2008]

 


Attila Nagy, 2. ročník, Ing. stupeň, odbor IS
Znalostné systémy
Zimný semester 2008/2009