Strukturalizacja otoczenia agentów: ontologie, CYC, sieci semantyczne

Podobne dokumenty
Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009

Ontologie, czyli o inteligentnych danych

Internet Semantyczny i Logika II

Wykład 11a. Składnia języka Klasycznego Rachunku Predykatów. Języki pierwszego rzędu.

Wprowadzenie do logiki Zdania, cz. III Język Klasycznego Rachunku Predykatów

Internet Semantyczny. Schematy RDF i wnioskowanie

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

3 grudnia Sieć Semantyczna

Reprezentacja wiedzy ontologie, logiki deskrypcyjne

Internet Semantyczny i Logika I

Wykład I. Wprowadzenie do baz danych

Internet Semantyczny. Logika opisowa

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Ministerstwo Finansów

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Semantic Web Internet Semantyczny

1 XML w bazach danych

*Później okazało się, że model w postaci sieci semantycznej pasuje także do reprezentacji wiedzy.

Internet Semantyczny. Wstęp do OWL 2

Języki programowania zasady ich tworzenia

PODSTAWY SZTUCZNEJ INTELIGENCJI

Adam Meissner.

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Ontologie. Materiały do wykładu Komputerowe Przetwarzanie Wiedzy Tomasz Kubik

JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE?

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

Rola języka XML narzędziem

Wprowadzenie do XML. Joanna Jędrzejowicz. Instytut Informatyki

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Podstawy języka XML. UEK w Krakowie Janusz Stal & Grażyna Paliwoda-Pękosz

Programowanie i projektowanie obiektowe

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Programowanie deklaratywne

Modelowanie i Programowanie Obiektowe

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Projektowanie systemów baz danych

Wprowadzenie do multimedialnych baz danych. Opracował: dr inż. Piotr Suchomski

2

Rozszerzenie funkcjonalności systemów wiki w oparciu o wtyczki i Prolog

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Modelowanie danych, projektowanie systemu informatycznego

1 Projektowanie systemu informatycznego

Zaawansowane programowanie obiektowe - wykład 5

Plan dzisiejszego wykładu. Narzędzia informatyczne w językoznawstwie. XML - Definicja. Zalety XML

Wykład 2. Relacyjny model danych

Dodatkowe możliwości RDF. Seminarium magisterskie Paweł Chrząszczewski

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

Programowanie w logice

Paweł Kurzawa, Delfina Kongo

Np. Olsztyn leży nad Łyną - zdanie prawdziwe, wartość logiczna 1 4 jest większe od 5 - zdanie fałszywe, wartość logiczna 0

Bazy danych - wykład wstępny

Ziemia obraca się wokół Księżyca, bo posiadając odpowiednią wiedzę można stwierdzić, czy są prawdziwe, czy fałszywe. Zdaniami nie są wypowiedzi:

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

BAZY DANYCH. Dr hab. Sławomir Zadrożny, prof. PR

Elementy kognitywistyki III: Modele i architektury poznawcze

Otwarte protokoły wymiany informacji w systemach ITS

Metody Kompilacji Wykład 3

Programowanie w logice

PLAN WYKŁADU BAZY DANYCH MODEL DANYCH. Relacyjny model danych Struktury danych Operacje Integralność danych Algebra relacyjna HISTORIA

Analiza znaczeniowa sterowana składnią

WZORCE LOGIKI APLIKACJI Reużywalne składniki wymagań

Co to jest znaczenie? Współczesne koncepcje znaczenia i najważn. i najważniejsze teorie semantyczne

Wprowadzenie do Prologa

Kultura logicznego myślenia

WYMAGANIA EDUKACYJNE. Witryny i Aplikacje Internetowe klasa I

Oracle11g: Wprowadzenie do SQL

Algorytmy zachłanne. dr inż. Urszula Gałązka

Podstawy Programowania Obiektowego

Język RDF. Mikołaj Morzy Agnieszka Ławrynowicz. Instytut Informatyki Poznań, rok akademicki 2013/2014

Specyfikacja API Runtime BAS 3.0

Technologia inteligentnych agentów. Autor: dr Jacek Jakieła

Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA Relacyjny model danych. Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe

Programowanie w logice Prolog 2

Logika stosowana. Ćwiczenia Wnioskowanie przez abdukcję. Marcin Szczuka. Instytut Matematyki, Uniwersytet Warszawski

Semantic Web. Grzegorz Olędzki. prezentacja w ramach seminarium Protokoły komunikacyjne. luty 2005

Reguły gry zaliczenie przedmiotu wymaga zdania dwóch testów, z logiki (za ok. 5 tygodni) i z filozofii (w sesji); warunkiem koniecznym podejścia do

Logika dla socjologów Część 2: Przedmiot logiki

Projektowanie BAZY DANYCH

Parsowanie semantyczne wypowiedzi w języku polskim z użyciem parsera ENIAM

Pojęcie systemu informacyjnego i informatycznego

Politechnika Warszawska Wydział Geodezji i Kartografii. GEO-SYSTEM Sp. z o.o. Waldemar Izdebski. Implementacja GML w praktyce

Kurs języka Python Wykład 8. Przetwarzanie tekstu Wyrażenia regularne Biblioteka urllib Parsowanie html'a XML

Przestrzenne bazy danych Podstawy języka SQL

Bazy danych. dr inż. Andrzej Macioł

Wykład 11b. System aksjomatyczny Klasycznego Rachunku Predykatów. Aksjomaty i reguły inferencyjne

Zasady Nazewnictwa. Dokumentów XML Strona 1 z 9

Programowanie obiektowe

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?

XHTML - Extensible Hypertext Markup Language, czyli Rozszerzalny Hipertekstowy Język Oznaczania.

IMIĘ I NAZWISKO... Wykorzystując wyszukiwarkę Google wykonaj poniższe polecenia:

Rachunek zdań i predykatów

Predykat. Matematyka Dyskretna, Podstawy Logiki i Teorii Mnogości Barbara Głut

Systemy ekspertowe. System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro

LAB 7. XML EXtensible Markup Language - Rozszerzalny Język Znaczników XSD XML Schema Definition Definicja Schematu XML

Programowanie w logice Wykład z baz danych dla

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Logika formalna SYLABUS A. Informacje ogólne

Bazy danych. dr inż. Andrzej Macioł

Transkrypt:

WYKŁAD 8 Strukturalizacja otoczenia agentów: ontologie, CYC, sieci semantyczne Jan widział X, gdy leciał nad miastem. Jan widział samolot, gdy leciał nad miastem. Jan widział dom, gdy leciał nad miastem. Wieczorem Tomek dojdzie do Y. Wieczorem Tomek dojdzie do celu. Wieczorem Tomek dojdzie do siebie. Dla poprawnego zinterpretowania w/w zdań potrzebna jest rozległa wiedza zdroworozsądkowa, która obecnie jest trudno dostępna dla komputerów:! Ludzie śpią w swoich domach! (#$forall?x (#$forall?y (#$forall?z (#$implies (#$and (#$isa?x #$Czlowiek (#$isa?y #$Spanie (#$performer?y?x (#$location?y?z (#$home?x?z! Jeżeli obiekt X jest człowiekiem i jeżeli wykonuje operację Y, a operacja Y jest spaniem, to miejscem Z wykonywania tego spania, jest dom obiektu X 1

W obecnych systemach informatycznych brakuje dostatecznie szerokiej bazy wiedzy. Nawet niewielkie bazy wiedzy rzędu 100-1000 reguł prowadzą do interesujących rezultatów ale w bardzo wąskiej dziedzinie (systemy doradcze ekspertowe. Oczekujemy, że reprezentacja podstawowych pojęć i własności: czas, przestrzeń, materia, obiekt, wydarzenie, kolekcja, rodzaj substancji itp, powinna być wspólna dla wszystkich systemów (podobnie jak dla ludzi pochodzących z różnych ras czy kontynentów ONTOLOGIA! wywodzi się z filozofii,! ogólna teoria bytu,! dziedzina metafizyki, która para się badaniem i wyjaśnianiem natury, kluczowych właściwości oraz relacji rządzących wszystkimi bytami, bądź głównych zasad i przyczyn bytu (Webster! reprezentacja dystrybuowanej konceptualizacji określonej domeny (formalna specyfikacja konceptualizacji gdzie konceptualizacja oznacza abstrakcyjny ogląd świata.! to para {D,R}, gdzie D jest opisywaną domeną / dziedziną a R jest zestawem relacji określonych na D Ontologia łączy terminy ze słownika (tej ontologii z jednostkami identyfikowanymi w trakcie konceptualizacji oraz udostępnia definicje służące uściśleniu znaczenia tych terminów (M.Nahotko! jest logiczną teorią reprezentowaną przez intencjonalne znaczenie sformalizowanego słownika,! pozwala na jednoznaczne rozumienie domeny, które to rozumienie może być przekazywane osobom i systemom aplikacyjnym,! zawiera hierarchiczny opis istotnych pojęć w danej domenie oraz przedstawia zasadnicze właściwości każdego pojęcia przy pomocy mechanizmu atrybut-wartość! spełnia rolę trochę podobną do schematów baz danych. 2

Przykład prostej ontologii wyrażonej w języku OIL ( Ontology Inference Layer - http://www.ontoknowledge.org/oil/ class-def zwierzę class-def roślina subclass-of NOT zwierzę class-def drzewo subclass-of roślina class-def gałąź slot-constraint is-part-of has-value drzewo class-def liść slot-constraint is-part-of has-value gałąź class-def definicja drapieżników slot-constraint zjada value-type zwierzę class-def definicja roślinożernych slot-constraint zjada value-type roślina OR (slot-constraint is-part-of has-value roślina class-def żyrafa slot-constraint zjada value-type liść class-def lew slot-constraint zjada value-type roślinożerne class-def rośliny jadalne subclass-of roślina slot-constraint zjadany has-value roślinożerny, drapieżnik %zwierzęta są klasą %rośliny są klasą %wyłączenie ze zwierząt %drzewa są rodzajami roślin %gałęzie są częścią drzew %liście są częścią gałęzi %drapieżniki są zwierzętami %które zjada tylko inne zwierzęta %roślinożerne są zwierzętami %które zjada tylko rośliny lub części roślin %żyrafy są zwierzętami %oraz jedzą liście %lwy też są zwierzętami %ale zjadają one roślinożerne %rośliny jadalne to rośliny zjadane %przez drapieżników i roślinożerców (z artykułu Marka Nahotko Semantyczny Web i jego ontologie 3

Projekt CYC! zbudowanie zdroworozsądkowej bazy wiedzy o otaczającym świecie, wspólnej dla większości ludzi,! projekt prowadzony od roku 1984 (prof. Douglas Lenat! na początku MIT, Stanford, od 1995 firma Cycorp! nazwa pochodzi od współbrzmienia z ang. psych! 600 osobolat pracy, 155 tys. koncepcji, 2.5 miliona reguł (w r.2004 Przy czym liczba reguł jaką powinien posiadać system zdroworozsądkowy jest szacowana na rzędu 100 milionów.! OpenCyc otwarta, publicznie dostępna wersja systemu Cyc oprogramowanie dostępne nieodpłatnie pod adresem http://sourceforge.net/project/showfiles.php?group_id=27274 Wersja 0.9 zawiera 50 tys. koncepcji wyższej ontologii opisującej podstawowe elementy rzeczywistości oraz 300 tys. asercji definiujących wzajemne relacje tych podstawowych koncepcji! Składowe systemu Cyc: leksykon parser syntaktyczny interpreter semantyczny! reprezentacja wiedzy za pomocą języka CycL Język CycL:! rachunek predykatów logiki pierwszego rzędu! oparty o język Lisp: o notacja prefiksowa: (+ 2 3 o każde wyrażenie nie będące stałą musi być otoczone nawiasami! Słownik języka CycL składa się z termów. Termami mogą być stałe, zmienne, formuły (składające się ze stałych, zmiennych, spójników, kwantyfikatorów 4

Stałe: Określają pojedyncze obiekty-indywidua lub kolekcje Nazwy stałych rozpoczynają się od znaków #$ np. #$Zielony (kolor #$Dostateczna (ocena #$Sienkiewicz (nazwisko Nazwy stałych oznaczających predykaty muszą się rozpoczynać od małej litery: #$isa (predykat jest #$implies (predykat jeżeli to #$comment (predykat komentarza #$forall (kwantyfikator dla każdego Przykłady wykorzystania stałych: (#$isa #$Zielony #$Color (#$colorofobject #$MojSamochod #$Zielony Zmienne: Identyfikują stałe, które nie zostały jawnie podane. Nazwy zmiennych rozpoczynają się od znaku zapytania? Formuły: Mają strukturę listy ograniczonej nawiasami. Obiekt występujący na początku listy może być predykatem, spójnikiem logicznym lub kwantyfikatorem. Najprostszym rodzajem są formuły atomowe, których pierwszym elementem jest predykat a pozostałymi elementami są termy. (#$mother #$TomekKowalski #$AnnaKowalska (#$isa #$Guest #$HumanCyclist (#$implies (#$mother?dziecko?mama (#$loves?mama?dziecko (#$forall?x (#$implies (#$isa?x #$Lisc (#$colorofobject?x #$Zielony 5

Przykładowe polecenia Cyc API:! (+ 2 3! (GENLS #$Person! (FIND-CONSTANT nazwa funkcja zwracająca stałą o zadanej nazwie lub NIL np. (FIND-CONSTANT Guest! (CREATE-CONSTANT nazwa [id] funkcja tworząca nową stałą o zadanej nazwie, jeżeli stała już istnieje to wystąpi błąd! (RENAME-CONSTANT stała nowa-nazwa zmienia nazwę istniejącej stałej np. (RENAME-CONSTANT #$Error Blad! (REMOVE-CONSTANT stała usuwa istniejącą stałą! (CYC-ASSERT zdanie mt funkcja dodaje nowy fakt zdanie do zadanej mikroteorii mt np. (CYC-ASSERT ' (#$isa #$Marek #$MalePerson #$InferencePSC! (CYC-QUERY zapytanie [mt] wykonuje zapytanie- kwerendę, opcjonalnie można podać mikroteorię. np. (CYC-QUERY '(#$isa #$Collection?what-collection #$InferencePSC 6

SIEĆ SEMANTYCZNA Jak człowiek widzi informacje prezentowane przez komputer np. wynik wyszukiwania z zadanym hasłem mysz : Jak komputer widzi te same informacje: ( Ilustracje z artykułu Mariusza Jacyno Sieci Semantyczne... Narzędzia umożliwiające rozwój sieci semantycznych:! URI (Uniform Resource Identifier Uniwersalny identyfikator zasobu definiujący dany obiekt. (w sieci WWW najczęściej spotykanym URI jest adres URL! XML (extensible Markup Language Rozszerzalny język znaczników, który pozwala wprowadzić do dokumentów dowolną strukturę znaczników, ale nie określa ich znaczenia.! RDF (Resource Description Framework Schemat opisu zasobów system definiowania informacji, pozwalający określać znaczenie różnych terminów i pojęć, tak, aby było ono rozpoznawane przez komputery. Można przy tym posługiwać się składnią języka XML i stosować URI do specyfikacji obiektów, pojęć, własności i relacji. 7