PERSPEKTYWY WYKORZYSTANIA ONTOLOGII W PROCESIE PRZETWARZANIA JĘZYKA NATURALNEGO W SYSTEMACH ZARZĄDZANIA WIEDZĄ Barbara Filipczyk, Jerzy Gołuchowski Wprowadzenie Znacząca część wiedzy wykorzystywanej we współczesnych organizacjach gospodarczych jest nadal reprezentowana za pomocą języków naturalnych. Języki naturalne co jest w pełni zrozumiałe - są i pozostaną bezsprzecznie podstawowym środkiem komunikowania się i dzielenia się wiedzą. Jednocześnie coraz szerzej w procesy te wkracza informatyzacja. Zasadne jest zatem dąŝenie do tego, aby zadania realizowane w systemach zarządzania wiedzą, szczególnie w zakresie metod reprezentacji wiedzy, wspomagała technologia przetwarzania języka naturalnego. Zadaniem poszukiwanych technologii reprezentacji wiedzy jest modelowanie i reprezentacja struktur wiedzy w sposób zarówno czytelny dla człowieka jak i zapewniający jej przetwarzanie przez komputer. Co więcej, powinny one pozwalać na duŝą rozszerzalność siły ekspresji (ang. expressiveness) reprezentacji wiedzy. Wiedza zaś powinna być wyraŝana w sposób właściwy dla danej dziedziny i rozwiązywanych problemów. UŜyteczność technologii opartych na przetwarzaniu języka naturalnego w systemach zarządzania wiedzą wynika z faktu, Ŝe jej wykorzystanie uwalnia uŝytkownika od problemów ekstrakcji wiedzy i interpretacji relewantnej informacji znajdującej się w tekstach napisanych w języku na-
turalnym. Tym samym zwiększa efektywność komunikowania się dostarczając dodatkowych narzędzi analizy wypowiedzi w języku naturalnym. W artykule wskazano na kierunki prac nad przetwarzaniem języka naturalnego w systemach zarządzania wiedzą. Szczególną uwagę zwrócono na rolę ontologii w procesie rozumienia wypowiedzi w języku naturalnym. Pojecie ontologii jako modelu wiedzy Obecnie ontologie są obiektem badań w róŝnych środowiskach naukowych, m.in. w inŝynierii języka naturalnego, w inŝynierii systemów informatycznych, w inŝynierii wiedzy, a takŝe w teorii zarządzania wiedzą. Idea praktycznych zastosowań ontologii i ich pierwsze zastosowania w informatyce wywodzą się ze sztucznej inteligencji, gdzie zostały zastosowane w celu ułatwienia współdzielenia i ponownego uŝycia zgromadzonej wiedzy [Gołu2005]. Ontologia, rozpatrywana pierwotnie jako dziedzina filozofii, jest nauką o rodzajach i naturze bytu (bytów), próbującą znaleźć zasady, na jakich świat istnieje. Zagadnienia te zostały zapoczątkowane w staroŝytnej filozofii greckiej, zwłaszcza przez Arystotelesa. Prekursorem współczesnej ontologii formalnej był natomiast Stanisław Leśniewski (1886 1939), wybitny matematyk i filozof, którego badania nad wykorzystaniem składnię języka naturalnego w semantyce przyczyniły się do rozwoju współczesnej informatyki. W dziedzinie baz danych z kolei, często powołuje się na prace ontologiczne współczesnego filozofa amerykańskiego M. A. Bunge [Bung1974]. Pojęcie ontologii nie jest jednoznaczne. Począwszy od 1993 roku, kiedy po raz pierwszy w dziedzinie informatyki sformułowano definicję on-
tologii powstało wiele nowych definicji ontologii, traktujących ją analogicznie jak w teorii sztucznej inteligencji jako formalną, jawną specyfikację wspólnej (ang. shared) konceptualizacji, czyli abstrakcyjną uproszczoną reprezentację świata, który chcemy opisywać [Grub1993]. Oznacza to, Ŝe ontologia moŝe być traktowana jako model pojęciowy dziedziny, który opisuje semantykę struktur wiedzy dziedzinowej, tzn. model opisujący sensownie kontekst. Tworzenie ontologii jest ukierunkowane na osiągnięcie konsensusu w rozumieniu dziedziny akceptowanego przez zainteresowanych uŝytkowników systemu wiedzy. Definicja ontologii sformułowana przez T. Grubera Najczęściej przytaczaną definicją ontologii jest sformułowana przez T. Grubera: ontologia jest formalną, jawną specyfikacją współdzielonej konceptualizacji [Grub1993]. Z definicji tej wynika, Ŝe ontologie tworzy się w celu zapewnienia danym, reprezentującym informacje i wiedzę semantyki zrozumiałej i moŝliwej do przetwarzania przez komunikujących się agentów (programy i ludzi). Stanowi ona wspólną dla nich konceptualizację rzeczywistości. W stwierdzeniu tym konceptualizacja odnosi się do abstrakcyjnego modelu pewnego zjawiska lub bytu, który identyfikuje odpowiednie koncepcje rzeczywistego obiektu. Formalizm konceptualizacji, charakteryzujący ontologię, potrzebny jest dla umoŝliwienia maszynom jednoznacznej identyfikacji i interpretacji wiedzy. Termin współdzielenie występujący w powyŝszej definicji, wskazuje natomiast, Ŝe uŝycia ontologii nie ogranicza się do jednej aplikacji, ale moŝe być ona wykorzystywana przez większą grupę. Własność współdzielenia wiedzy stała się punktem wyjścia do tworzenia
technik łączenia ontologii, co umoŝliwia wykorzystanie pojęć i relacji zdefiniowanych w róŝnych ontologiach składowych. Słabe strony definicji sformułowanej przez T. Grubera wykazał A. Bassara [Bass2004]. Zwrócił on uwagę na szereg niejasności dotyczących jednoznacznej interpretacji zapisu ontologicznego odnoszącego się do róŝnych języków narodowych, róŝnego rozumienia tych samych pojęć itp. Ontologię specyfikuje się uŝywając takich konstrukcji jak [Cybu2004], [Maed2004]: pojęcia/ klasy opisujące elementy/klasy dziedziny modelu (ang. classes, concepts), własności opisujących cechy poszczególnych pojęć (ang. slots, roles, properties) ograniczenia nałoŝone na wartości, jakie mogą przyjmować cechy danego pojęcia (ang. facets, role description), związki między pojęciami (taksonomie), relacje między pojęciami i aksjomaty (opisujące prawdziwe zdania). Interesującą definicję ontologii sformułował w 2002 roku A. Meadche. Definicja ontologii sformułowana przez A. Meadche W ujęciu A. Meadche struktura ontologii definiująca pojęcia i występujące między nimi relacje ma postać [Mead2002]: O={C, R, Hc, rel, A} gdzie: C - zbiór wszystkich pojęć wykorzystanych w modelu, R - zbiór nietaksonomicznych relacji (zwanych właściwościami, slotami, rolami), definiowanych jako nazwane połączenie między pojęciami,
Hc- zbiór taksonomicznych relacji pomiędzy pojęciami, Rel zbiór nietaksonomicznych relacje pomiędzy pojęciami, A - zbiór aksjomatów. Leksykon zawiera interpretacje rozumienia pojęć i relacji występujących między nimi. Leksykon ma postać: L={Lc, Lr, F,G} gdzie: Lc - definicje zbioru pojęć, Lr - definicje zbioru relacji, F - referencje pojęć, G - referencje relacji. Tak zdefiniowana ontologia cechuje się niezaleŝnością od języków narodowych i stałością interpretacji przez róŝnych uŝytkowników. Bazę wiedzy tworzy, zatem ontologia wraz ze zbiorami instancji klas (pojęć) i związków między nimi. Podobna zaleŝność występuje pomiędzy bazą danych a modelem (schematem) danych. Modelowaniem rzeczywistości zmierzającym do uchwycenia w modelu jej niezmiennych (statycznych) elementów zajmowała się i nadal się zajmuje teoria baz danych. Pojęcie ontologii stosowane w systemach zarządzania wiedzą jest podobne do pojęcia modelu (schematu) bazy danych. W systemie zarządzania wiedzą pełni podobną rolę modelu wiedzy, jak model danych w systemach zarządzania bazą danych. Główne róŝnice polegają na tym, Ŝe [CGP2000]: języki definiujące ontologie są syntaktycznie i semantycznie bogatsze niŝ języki opisu baz danych,
informacja opisywana przez ontologię składa się z częściowo ustrukturalizowanych tekstów w języku naturalnym, a nie informacji zapisanych w postaci tabel, ontologie muszą być współdzielone i uŝywają uzgodnionej terminologii, która jest wykorzystywana podczas wymiany wiedzy między systemami, ontologie dostarczają wiedzę z danej dziedziny, a nie tylko strukturę przechowywania danych. Ontologie, podobnie jak modele konceptualne i logiczne baz danych definiuje się w wybranym języku opisu danych. Języki opisu ontologii Jak zostało przedstawione, ontologie są opisem fragmentu świata, który słuŝy do realizacji zadań tworzenia i przetwarzania wiedzy dlatego niezbędne jest zdefiniowanie języka, który pozwoli na opis danych oraz operacji, moŝliwych do wykonania na ontologiach. Obecnie najpopularniejszymi językami opisu ontologii są Resource Description Framework (RDF) oraz Web Ontology Language (OWL). RDF Celem projektantów (organizacja W3C http://www.w3.org/) RDF było opracowanie języka, w którym moŝna tworzyć [Srze2003]: metadane: dostarczające informacji o zasobach w Sieci oraz o systemach, które je wykorzystują, aplikacje wymagające otwartych modeli i rozszerzalnych modeli systemu informacyjnego,
modele danych, które mogą być przetwarzane poza środowiskiem, dla którego zostały stworzone; modele, pozwalające na łączenie danych z róŝnych źródeł i homogeniczne ich przetwarzanie, procedury zautomatyzowanego przetwarzania danych zgromadzonych w Sieci; poprzez stworzenie wspólnego języka opisu danych, zrozumiałego dla maszyn. OWL OWL jest językiem wyŝszego poziomu, opierającym się na XML oraz RDF. Ontologia OWL moŝe zawierać następujące elementy [Srze2003]: usystematyzowaną relację pomiędzy klasami, właściwościami typu danych, opisującymi atrybuty elementów klas, właściwości obiektów, opisujące relacje pomiędzy elementami klas, instancje klas, instancje właściwości. Ze zbioru twierdzeń zapisanych za pomocą OWL moŝna tworzyć własną bazę wiedzy. Twierdzenia mogą dotyczyć faktów o poszczególnych przedstawicielach klas, ale takŝe róŝnych faktów pochodnych, wywnioskowanych za pomocą semantyki OWL. OWL jest rodziną trzech róŝnych produktów, o rosnącym stopniu komplikacji: 1. OWL Lite. Ta wersja została zaprojektowana z intencją stworzenia prostego języka, wystarczającego dla uŝytkowników potrzebujących prostych klasyfikacji i prostych ustalonych cech. Przykładowo, mamy wprowadzone ograniczenia liczebności (ang. cardinality), ale mogą one przyjmować wartości jedynie 0 i 1.
2. OWL DL. Wersja ta zawiera pełny zbiór słownictwa, interpretowanego pod kątem zbioru prostych ustalonych cech. 3. OWL Full. Wersja zawiera pełne słownictwo OWL, interpretowane znacznie szerzej niŝ w wersji OWL DL, z pełnymi moŝliwościami zapewnianymi przez RDF. Klasa moŝe być traktowana równocześnie jako zbiór jednostek a takŝe jako jednostka jako taka. Wśród innych języków opisu ontologii moŝna wskazać: język RDFS, który jest rozszerzeniem RDF, język OIL, języki DAML, DAML-ONT, DAML+OIL i inne. Korzyści ze stosowania ontologii w systemie zarządzania wiedzą Jawny opis struktury wiedzy pozwala poprawić zrozumienie dziedziny oraz uprościć komunikowanie się. Zastosowanie technologii ontologii umoŝliwia zatem uzyskanie [Gołu2005]: jednoznacznych określeń terminologicznych, co pozwala na zmniejszenie nieporozumień w procesach komunikacji oraz niezrozumienia wiedzy dziedzinowej. Ontologia moŝe być traktowana jako wspólne rozumienie wiedzy dziedzinowej, którą poszczególne osoby mogą przypisywać (refer) jako wspólny model pojęciowy pozwalający identyfikować relewantną informacje oraz koherentną wymianę informacji w obrębie grupy i społeczności, modelu pojęciowego zamiast reprezentacji wiedzy dziedzinowej związanej z określoną metodą, bogatszej ekspresywności reprezentacji świata niŝ zwykłe techniki modelowania (takie jak diagramy encji czy techniki obiektowe stosowane do opisu struktur wiedzy),
formalnie wyspecyfikowanej przetwarzanej maszynowo semantyki danych, która moŝe być wykorzystana jako modele danych w aplikacjach przetwarzania wiedzy, co wzbogaca znacząco jakość procesów przetwarzania informacji. przetwarzania ontologii przez komputer dzięki jej wyspecyfikowaniu w języku formalnym, utrzymania (ang. maintenance) ontologii umoŝliwiającego doskonalenie (ang. evolvement) ontologii w trakcie jej uŝytkowania, a zatem wprowadzanie zmian w dynamicznie zmieniającej się dziedzinie wiedzy RozwaŜając znaczenie ontologii w aspekcie systemów wiedzy moŝna stwierdzić, Ŝe stanowią one narzędzia definiowania struktur wiedzy i procesów, jak równieŝ zagnieŝdŝania (ang. nested) dziedzin wiedzy poprzez reprezentacje ich jako sieci ontologii. Ontologie umoŝliwiają takŝe śledzenie uczenia się organizacji. Gdy zmienia się wiedza organizacji, zmiany ontologii pozwalają śledzić zmiany tej wiedzy. Ontologie umoŝliwiają równieŝ redukcję (zmniejszenie) złoŝoności, poniewaŝ pozwalają strukturalizować wiedzę oraz jawnie opisywać struktury informacyjne. Pozwalają takŝe łatwiej odnaleźć poszukiwaną wiedzę. Znaczenie ontologii w procesie przetwarzania języka naturalnego w systemach zarządzania wiedzą W dziedzinie przetwarzania języka osiągnięto juŝ znaczące postępy. Świadczą o tym, chociaŝby zastosowania tej technologii w systemach sztucznej inteligencji. Budzi to nadzieję na szerokie wykorzystanie tych osiągnięć w dziedzinie zarządzania wiedzą w organizacjach gospodarczych.
Działania w obrębie przetwarzania języka obejmują siedem poziomów analizy (zob. [SZF2004]). Ich charakterystykę przedstawiono w Tabeli 1. Charakterystyka poziomów analizy języka Lp Poziom Opis poziomu analizy języka 1 Fonologii 2 Leksyki 3 Morfologii 4 Syntaktyki 5 Semantyki 6 Dyskursu 7 Pragmatyki Tabela.1. Dotyczy rozpoznawania i generowania mowy. Działania na tym poziomie nie pojawiają się często w obszarze ZW, poniewaŝ zwykle tylko niewielka część wiedzy jest prezentowana w postaci plików dźwiękowych lub strumieni. Procesy na tym poziomie traktują jako wejście tekst w języku naturalnym. Tekst powinien przejść przez fazę tokenizacji, w czasie której są identyfikowane jednostki leksykalne (paragrafy, zdania, słowa itd.) oraz opisywane za pomocą znaczników części mowy. W niektórych statystycznych podejściach, faza tokenizacji moŝe być uproszczona i proces znakowania pominięty. Działania na tym poziomie są najistotniejsze dla wszystkich podejściach opartych na analizie słów. Działania na tym poziomie obejmują rozpoznawanie sufiksów, prefiksów i fleksyjnych (ang. inflectional) form słów, analizę złoŝonych wyraŝeń ang. compound analysis) oraz stemming. Stemming jest procesem przekształcenia słowa z formy w jakiej wystąpiło (ang. word-form) w jego postać podstawową lub rdzeń. Działania na tym poziomie są istotne dla wyszukiwań i powiązania ontologii z konkretami. Niezbędne są dwa zadania. 1. identyfikacja fragmentów zdań oraz (2) przypisywanie ról do poszczególnych słów, z uwzględnieniem reguł gramatycznych języka oraz opisem (gramatyką) tego, jak słowa mogą być łączone w analizowanym języku. Działania na tym poziomie są pomocne dla schematów ontologicznych i wyszukiwanych konkretnych danych. Obejmuje 3 główne zadania: (1) reprezentację wiedzy (2)usuwanie niejednoznaczności sensu słów, (3) rozszerzanie reprezentacji wiedzy o synonimy i słowa pokrewne. Proces dodawania semantyki (znaczeń) do reprezentacji tekstu w ustalonym języku wymaga zadowalającego formalizmu reprezentacji wiedzy. Ontologia jest przykładem formalizmu jawnej reprezentacji wiedzy z semantyką formalnie wyspecyfikowaną i przetwarzalną przez komputer. Zrozumienie języka znacząco zaleŝy od kontekstu. Podczas gdy poziom semantyki wprowadza pierwszą analizę znaczenia (głównie na poziomie zdania), poziom dyskursu bierze pod uwagę kontekst, opierając się na doświadczeniu, i analizie całej narracji. Poziom ten wprowadza rozwiązywanie wszystkich wypowiedzi (ang. utterances), niejednoznaczności z wykorzystaniem moŝliwie jak najwięcej wiedzy o świecie. Techniki przetwarzania języka naturalnego są tu wykorzystywane do interpretowania intencji, intuicji oraz wyjaśnienia wyraŝeń metaforycznych z pomocą wiedzy zdroworozsądkowej. Źródło: opracowanie własne na podstawie [SZF2004], [Fili2002] Technologie przetwarzania języka naturalnego moŝna wskazywać jako jedne z podstawowych dla technologii zarządzania wiedzą, poniewaŝ umoŝliwiają: automatyczne przetwarzanie dokumentów (treści ) WWW,
maszynowo przetwarzane opisywanie (ang. annotation) tekstów w języku naturalnym za pomocą pojęć zawartych w ontologii, odkrywanie nowych elementów ontologii (tj. pojęć, klas, instancji, atrybutów, relacji, twierdzeń), automatyczne wyszukiwanie elementów wiedzy. Wymienione zagadnienia moŝna traktować jako automatyzację tłumaczenia tekstów zapisanych w języku naturalnym na sformalizowany język reprezentacji wiedzy. Tak postawione zagadnienie, tzn. automatyzacja translacji tekstów w języku naturalnym na język formalny, jest jednym z najbardziej poŝądanych i obiecujących kierunków badań w dziedzinie systemów zarządzania wiedzą. Celem automatyzacji jest tworzenie baz wiedzy zapisanej w języku sformalizowanym, umoŝliwiającym operowanie tą wiedzą w sposób automatyczny. Podstawową trudnością występującą nieuchronnie podczas wszelkich prób zautomatyzowania translacji jest wieloznaczność wypowiedzi (tekstów) sformułowanych w języku naturalnym. Wieloznaczność ta gwarantująca nadzwyczajną elastyczność języka oraz nieograniczoną niemal siłę wyrazu tworzy istotne bariery w przekładzie na inny język zarówno na poziomie słownictwa, gramatyki (syntaktyki) jak i znaczenia (semantyki) wypowiedzi. Do wyeliminowania wieloznaczności wypowiedzi i tekstów konieczne jest posiadanie ogólnej wiedzy o świecie oraz zdrowego rozsądku, a w przypadku tekstów specjalistycznych takŝe specyficznej wiedzy dziedzinowej. Są to cechy, w które w naturalny sposób wyposaŝony jest kaŝdy człowiek. U podstaw ludzkiej inteligencji, co akceptuje coraz więcej badaczy języka, leŝy istotny czynnik o charakterze niealgorytmicznym.
Translacja wymaga, zatem kreatywności, wyobraźni i intuicji tłumacza. W tym świetle jest zrozumiałe, Ŝe zapisanie wiedzy o świecie oraz napisanie programu symulującego rozumowania zdroworozsądkowe nadal napotyka na trudności, a wątpliwości, czy moŝna całkowicie zautomatyzować proces tłumaczenia tekstu na zapis w języku sformalizowanym są zasadne. Ułatwień w automatyzacji procesu tworzenia formalnej reprezentacji wiedzy wyraŝonej w języku naturalnym, zmierzającego do jej zapisanie w języku sformalizowanym w bazie wiedzy moŝemy spodziewać się, gdy uŝyjemy języka kontrolowanego, będącego podzbiorem języka naturalnego [Fili2002]. Okrojeniu podlega zazwyczaj gramatyka i semantyka wyraŝeń, natomiast słownik moŝna rozbudowywać w miarę potrzeb, stosownie do określonej dziedziny wiedzy. Język kontrolowany jest, zatem językiem sztucznym, w którym precyzyjnie określono zasady jego interpretacji, usuwając w ten sposób niejednoznaczności i ograniczając kontekstowość wypowiedzi [SzKr2000]. Niestety prace nad tym zagadnieniem są rzadkością w odniesieniu do języka polskiego. Zapis wiedzy ani w języku naturalnym, ani np. w HTML nie jest zadowalający dla automatycznego przetwarzania wiedzy. Stąd dąŝenie do opracowania języków sformalizowanego zapisu wiedzy, a takŝe narzędzi do automatycznej translacji tekstów z języka naturalnego a takŝe dokumentów hipertekstowych na język reprezentacji wiedzy. Jednym z perspektywicznych kierunków badawczych jest dostarczanie wiedzy w formie umoŝliwiającej jej automatyczne przetwarzanie przez komputer, w sposób, w jaki czyniłby to ekspert w danej dziedzinie. Wymaga to zapisania wiedzy w postaci semantycznej. Zrozumiałe są w tym przypadku
duŝe nadzieje wiąŝące się z ontologiami jako sformalizowanymi modelami wiedzy. Podejście to daje szerokie moŝliwości specyfikowania semantyki danych (wiedzy). Literatura [Bass2004] Bassara: I weź tu dogadaj się Ontologie. Gazeta IT nr 1(20) 2004 [Bung1974] Bunge M. A.: The relations of logic and semantic to ontology. Journal of Philosophical Logic, 1974, vol. 3 [CGP2000] Corcho O., Gomez-Perez A.: A Roadmap to Ontology Specification Language, ECAI 2000. [Cybu2004] Cybulka J.: OWL język definiowania ontologii w semantycznej sieci WWW. ProDialog 2004, nr 18, s.71-82. [Fili2002] Filipczyk B.: Zastosowanie metod analizy tekstu w procesie tworzenia baz wiedzy inteligentnych systemów informatycznych zarządzania. Praca doktorska, AE Katowice, 2002 [Gołu2005] Gołuchowski J.: Technologie informatyczne w zarządzaniu wiedzą w organizacji. AE Katowice 2005. [Grub1993] Gruber T. R.: A translation approach to portable ontologies, Knowledge Acquisition, 5(2), 1993, pp. 199-220. [Maed2002] Maedche A.: Ontology Learning for the Semantic Web. Kluwer Aademic Publishers 2002. [Maed2004] Maedche A.: Web information tracking using ontologies. Intelligent systems in accauting, finance and management, 2004, nr 12, p215-225.
[Srze2003] Srzednicki J.: Przegląd języków i metod do opisu ontologii. (2003) http://wrzask.pl/studia/tai/semantic_web.html [SzKr2000] [SzKr2000] Szczepaniak L., Królikowski Z: Kontrolowane języki naturalne przegląd rozwiązań i zastosowań. Pro Dialog,11,2000, s.47-67. [SZF2004] Stollberg M., Zhadanova A., Fensel D.: h-techsight A next Generation Knowledge Management. Journal of Information & Knowledge Management. Vol 3.no 1 (March 2004), pp 47-66 Informacje o autorach prof. dr hab. Jerzy Gołuchowski dr Barbara Filipczyk Katedra Informatyki Akademia Ekonomiczna ul. Bogucicka 3 40-226 Katowice Polska numer telefonu (fax) +48/32/2577277 e-mail: jgoluchowski@ae.katowice.pl bfilipczyk@ae.katowice.pl