pracaanalityka

Co to jest ta ontologia w kontekście IT

Posted by admin

Cześć!

Każdy kto trochę siedzi w tej analizie i interesuje się tematem to słyszał takie słowo jak ontologia. Każda osoba którą znam i nie jest ona związana z Analizą biznesową(no może prawie każda) jak usłyszy słowo ontologia to jedyne co zrobi to wywali oczy na wierzch i będzie mnie się pytać a co to jest i do czego się to wykorzystuje? No i uważam to trochę za wymarłe pojęcie bo jak wpiszemy w google hasło „Ontologia” i występowanie ostatni rok to wyszukiwarka zwróci nam takie oto wyniki

Za dużo to tutaj IT nie ma. A właściwie to nie ma jej wcale. Nie przeszkadza mi to jednak w tym żeby przybliżyć co to za wymarłe pojęcie jest(a może wcale takie wymarłe nie jest tylko nie udało mi się odnaleźć kogokolwiek kto by tego aktywnie używał? Jak wiesz to napisz mi proszę maila kontakt@analizowac.pl Już słynę z tego że mam dziwne zainteresowania :D)

Definicja ontologii w kontekście IT

Wiec zobaczmy co nam podpowiada Wikipedia

Ontologia – podstawowy (obok epistemologii i aksjologii) dział filozofii starający się badać strukturę rzeczywistości i zajmujący się problematyką związaną z pojęciami bytu, istoty, istnienia i jego sposobów, przedmiotu i jego własności, przyczynowości, czasu, przestrzeni, konieczności i możliwości.

Czy coś wyjaśniła? Wątpliwe. Ale nie poddajemy się i szukamy dalej. Znajdujemy definicje ontologii w kontekście informatyki na naszej kochanej Wikipedii

Ontologia – formalna reprezentacja pewnej dziedziny wiedzy, na którą składa się zapis zbiorów pojęć (ang. concept) i relacji między nimi. Zapis ten tworzy schemat pojęciowy, który będąc opisem danej dziedziny wiedzy, może służyć jednocześnie jako podstawa do wnioskowania o właściwości opisywanych ontologią pojęć.

Mamy trochę lepsze źródła informacji. W naszym przypadku weźmy Konsorcjum W3C.

Zgodnie z W3C ontologie to definicje terminów użytych w opisie i reprezentacji danego obszaru wiedzy. Więc w skrócie ontologie powinny dostarczać opisy znaczenia dla różnych artefaktów. Ontologia jest definiowana jako uproszczony widok całej domeny wiedzy. Jeszcze inni opisują ontologię jako nową strukturę służącą do agregowania i porządkowania informacji

No! to już mamy trochę więcej jasności. Ontologie „uprawiał” każdy z nas tworząc słowniki pojęć i różne opisy biznesowe tylko nie wiedział że to robi! KONIEC WPISU MOŻNA ROZEJŚĆ SIĘ DO DOMU

Dobra, dla tych ciekawszych lecimy dalej

Pojęcie ontologii wywodzi się z filozofii(nie bez powodu wstawiłem to pierwsze pojęcie z wiki). Po raz pierwszy słowo ontologia zostało użyte jako synonim do słowa abstrakcja. W informatyce tego słowa pierwszy raz użyto w przypadku jako pojęcie pomocnicze przy technikach modelowania danych jednak wraz z rozwojem informatyki nadano jej kolejnego znaczenia.

Więc idąc dalej z kolejnym źródłem zobaczmy kolejną definicję ontologii(ta jest najczęściej podawana definicja Thomasa Grubera)

Generalnie sformalizowane definicje pojęć i ich konceptualizację oraz formalne określenie powiązań zachodzących pomiędzy nimi.

Patrząc na tą definicję widzimy podobieństwo do W3C ale dla większej pewności weźmy sobie kolejne źródło. I kolejną definicję która trochę się różni od tych powyżej a jest to definicja Alexandra Maedche. A pan Alexander ontologię przedstawia jako dwa zbiory.

Zbiór O – zbiór definiujący strukturę ontologii

Zbiór L – zbiór definiujący słownik

No i do zbioru O zaliczamy takie fajne artefakty jak O = {C, R, Hc,rel, A}

C – zbiór wszystkich wykorzystanych pojęć w modelu występującym w opisywanej rzeczywistości

R – zbiór wszystkich relacji nietaksonomicznych występujących pomiędzy pojęciami

Hc – zbiór wszystkich relacji taksonomicznych występujących pomiędzy pojęciami

rel – opis nietaksonomicznych relacji ze zbioru R

A – zbiór aksjomatów wyrażonych w odpowiednim języku logiki

Tutaj pojawia się słowo taksonomiczny które dla niektórych może być trochę niejasne więc postaram się wytłumaczyć co to jest. Jak wpiszesz w Google to dostaniesz informacje że jest to klasyfikacja gatunków zwierząt(mało szczęśliwe porównanie do naszego poletka) jednak taksonomia dotyczy właśnie danych usystematyzowanych o danej domenie wiedzy. Więc w naszym przypadku taksonomiczną relacją jest że np. dana osoba ma określoną płeć lub dany pracownik ma określone stanowisko pracy.

A do zbioru L zaliczamy L = {Lc,Lr,F,G}

Lc – definicje leksykonu dla zbioru pojęć

Lr– definicje leksykonu dla zbioru relacji

F – referencje dla pojęć

G – referencje dla relacji

Aby było przyjemniej to weźmy przykładzik

C – {Pracownik, Dział, Stanowisko}

Hc – {Dział, Stanowisko, Pracownik}

R – {Zatrudniony w, Pełni funkcję}

rel – {Zatrudniony w(Pracownik, dział), Pełni funkcję(Pracownik, stanowisko),

Według autora tej definicji ontologia zdefiniowana w ten sposób jest niezależna od języków narodowych.

Nie można jednak zostawić tego w ten sposób. Kolejną rzeczą jest lista cech charakterystycznych ontologii która też rozjaśnia temat.

• Ontologia nie stanowi listy, katalogu czy taksonomii obiektów, stwarza natomiast formalne przesłanki, wedle których takowe mogą być budowane
• Ontologia jest oderwana od epistemologii (teorii poznania), powiązana jest z obiektem a nie jego subiektywnym odbiorem
• Ontologia musi uchwycić rzeczywistość na różnych poziomach atomizacji, jak również relacje pomiędzy tak wyodrębnionymi warstwami
• Naturalne jest istnienie wielu ontologii – uznanie braku możliwości stworzenia jednej ogólnej ontologii, przy czym każda ontologia może być poprawna
• W przeciwieństwie do typowego podejścia analitycznego relacje między obiektami nie są ujęte w postaci funkcji – zależności nie muszą być ilościowe
• Nauka rozpoczyna proces od mierzenia i predykcji, ontologia zaś od stworzenia taksonomii.

Zasady tworzenia ontologii

Tak jak w przypadku wymagań biznesowych gdzie muszą one spełniać określone cechy(Przypominajka: Zaakceptowane, Niedwuznaczne, Aktualne, Spójne, Sprawdzalne, Realne, Możliwe do śledzenia, Kompletne, Zrozumiałe) tak przy ontologii też są zdefiniowane różne cechy. Pan Thomas Gruber proponuje następujące sześć kryteriów

  1. Jasność(to według T.Grubera jest najważniejsze)
  2. Spójność
  3. Przejrzystość
  4. Rozszerzalność
  5. minimalne zaangażowanie formalizacyjne
  6. minimalne zaangażowanie ontologiczne

Jasność

Ontologia powinna w sposób efektywny pokazywać znaczenie definiowanych terminów. Definicje powinny być obiektywne i wykorzystywać formalne aksjomaty, zaś definicja pełna jest bardziej preferowana niż definicja cząstkowa. Wszystkie ujęcia powinny mieć opis w języku naturalnym.

Spójność

Ontologia powinna wykluczać wszystkie stwierdzenia które są w sprzeczności pomiędzy sobą. Jeśli jedna definicja lub przykład przeczy drugiej definicji lub przykładowi to taka ontologia nie jest spójna.

Przejrzystość

Cecha związana z samą prezentacją tekstu pisanego. Oznacza że przedstawiane pojęcia mają być łatwe do zrozumienia.

Rozszerzalność

Ontologia powinna być tworzona w taki sposób aby można było rozszerzać lub zmniejszać jej zakres w sposób monotoniczny. Oznacza to że dodanie kolejnych pojęć nie powinno wprowadzać zmian w już istniejących.

Minimalne zaangażowanie formalizacyjne

Ontologia powinna być tworzona w taki sposób żeby była niezależna od kodowania na poziomie symbolu. Powinno się minimalizować występowanie symboli ponieważ komplikuje to rozumienie pojęć. Błąd tworzenia zmiennych powstaje najczęściej z powodu wygody osoby tworzącej definicję pojęcia.

Minimalne zaangażowanie ontologiczne

Ontologia powinna mieć jak najmniej założeń i ograniczeń, a przy tym tylko takie, które są niezbędne dla systemów reprezentacji wiedzy, istnieje bowiem ryzyko, że w przyszłości nowe definicje mogą nie być zgodne z przyszłymi potrzebami reprezentacji.

Budowanie ontologii

Jest strasznie dużo metod tworzenia ontologii. Zagłębiać się w nie nie mam zamiaru ponieważ nie chcę rozwlekać tego postu. Po prostu je wymienię a ci co będą chcieli to sobie doczytają.

  • On-To-Knowledge
  • MENTHOLOGY
  • Metoda Uschold&King’a
  • Metoda Cyc
  • Metoda Gruninger&Fox’a (TOVE)
  • CommonKADS and KACTUS
  • DILIGENT
  • SENSUS
  • Metoda Noy&McGuiness
  • NeON methodology
  • FAO-Based Methodology
  • KBSI IDEF5
  • Ontolingua
  • MENELAS
  • UPON
  • 101 method
  • Enterprise Model Approach
  • PLINIUS
  • Mikrokosmos
  • PHYSSYS

Patrząc na ilość tych metod można dojść do wniosku że idealnej metody nie ma – jak we wszytkim(a w ontologii niektórzy autorzy uważają to za naturalną kolej rzeczy). Dlatego przejdźmy do ogólnych wytycznych jak tworzyć ontologie.

Mi najbardziej podoba się metoda pokazana przez F.N. Noy i D.L. McGuinness a składa się ona z 7 kroków:

  1. Ustalenie domeny i zasięgu ontologii. Czyli odpowiedź na pytania
  • Jaki jest cel tworzonej ontologii?
  • Jaka jest dziedzina, czyli zbiór obiektów tworzonej ontologii?
  • Jak szeroki zakres jest brany pod uwagę w tworzonej ontologii?
  • Na jakie pytanie będzie odpowiadać tworzona ontologia?
  • Kto będzie odbiorcą ontologii i kto będzie ją utrzymywał?

2. Wykorzystanie istniejących ontologii.

Tutaj pojawia się sugestia reużycia istniejących ontologii. Jest to podpierane tym że przyszły system będzie w interakcji z innymi systemami które już korzystają z istniejących ontologii.

3. Ustalenie wszystkich najważniejszych terminów w projektowanej ontologii

4. Definiowanie klas i hierarchii klas.

Tutaj chodzi o zdefiniowanie własności obiektów w danej dziedzinie i na ich podstawie zdefiniowanie klas i jej hierarchii. W pierwszej kolejności należy utworzyć kilka definicji układając je w odpowiedniej
hierarchii, następnie przejść do analizy własności tych pojęć.

5. Definiowanie własności klas.

6. Definiowanie typów własności w danych klasach

Każda klasa ma swoje atrybuty. Po ich zdefiniowaniu w pkt. 5 należy przejść do zdefiniowania typu tych atrybutów. Tutaj autorzy podkreślają że musi być zachowana informacja jak wiele wartości może mieć dany atrybut. Niektóre atrybuty mają wartości pojedyncze, które mogą mieć tylko jedną własność, inne umożliwiają określenie minimalnej i maksymalnej dopuszczalnej liczby wartości.

7. Tworzenie wystąpień klas.

Podsumowanie

Sama ontologia była szeroko badana i bardziej popularna w ubiegłych latach. Teraz czasami słyszy się to pojęcie jednak wydaje mi się że to pojęcie wymiera w kontekście rozwoju systemów. Tak jak pisałem na początku postu. Wystarczy wpisać w wyszukiwarkę „Ontologia” i zakres dat ten rok i łatwo się można przekonać że ontologia wróciła do korzeni. Czyli do przedmiotu używanego w filozofii

Źródła

FOCA: A Methodology for Ontology Evaluation

Witold Abramowicz, Piotr Stolarski, Tadeusz Tomaszewski. – Ontologie jako narzędzie budowy modeli w ubezpieczeniowych systemach informacyjnych – wprowadzenie.

A Review on Ontology Development Methodologies for Developing Ontological Knowledge Representation Systems for various Domains

An Analysis of Ontology Engineering Methodologies: A Literature Review

Wojciech Grzelak – Ontologia – Próba usystematyzowania pojęć

SZKOLENIE "Czy zawód Analityk IT jest dla mnie?"

Zapisz się na listę mailową a prześlę za darmo szkolenie Czy zawód Analityk IT jest dla mnie? Co muszę umieć żeby być Analitykiem IT?