INFORMATICA UMANISTICA B RAPPRESENTAZIONE DELLA CONOSCENZA ONTOLOGIE SEMANTIC WEB RAPPRESENTAZIONE DELLA CONOSCENZA ED ONTOLOGIE La ricerca sul modo ‘ideale’ per rappresentare le informazioni nelle basi di dati e in intelligenza artificiale ha portato alla nascita di ricerca sulla KNOWLEDGE ENGINEERING o rappresentazione della conoscenza anche in senso non applicato Particolarmente interessante per domini piu’ complessi che ‘studenti’ e gli ‘esami’ Quest’area si focalizza sulle ONTOLOGIE Ontologie base teorica del lavoro sul Ontologie applicate in domini come la medicina Il SEMANTIC WEB RAPPRESENTAZIONE DELLA CONOSCENZA IN INFORMATICA In informatica sono stati sviluppati numerosi modelli della rappresentazione della conoscenza TESAURI Modelli concettuali sviluppati per le basi di dati RETI SEMANTICHE e TASSONOMIE ONTOLOGIE TESAURI Rappresentazioni di ASSOCIAZIONI tra parole Tipicamente raggruppate in CATEGORIE ESEMPIO DI TESAURO RETI SEMANTICHE E TASSONOMIE Rappresentazioni in cui Vengono identificate relazioni come nei modelli concettuali Viene anche rappresentata informazione TASSONOMICA Si esprimono anche RESTRIZIONI su relazioni TASSONOMIE RELAZIONI E TASSONOMIE NELLE RETI SEMANTICHE DESCRIPTION LOGICS Una famiglia di logiche che permettono di descrivere reti semantiche specificando oltre che informazioni su relazioni e tassonomie anche COMPLEMENTARITA: MALE e FEMALE sono disgiunti CARDINALITA’: una bici ha 2 ruote, un’auto ne ha 4 etc ONTOLOGIE IN INFORMATICA In FILOSOFIA, ONTOLOGIA e’ lo studio di cio’ che esiste – una delle aree piu’ importanti della METAFISICA In INFORMATICA, un’ ONTOLOGIA e’ una DEFINIZIONE dei TERMINI usati in un certo dominio e delle relazioni tra di loro Concepts and definitions “Philosophers have long assumed that definitions are the appropriate way of characterizing word meaning and category membership” (MU, ch.2, p.11) Aristotle’s Metaphysics, Book Z “a definition is an account, and every account has parts, and part of the account stands to part of the thing in just the same way that the whole account stands to the whole thing” = Most concepts encode necessary and sufficient conditions for their own application Aristotle’s Metaphysics: Definitions MAN = RATIONAL ANIMAL DEFINIENDUM DEFINIENS Definition by genus and differentia The ‘method of division’: Begin with the broadest genus containing the species to be defined (‘ANIMAL’) Divide the genus in two sub-parts by some differentia (‘FOOTED’) Then divide the two sub-types again (CLOVENFOOTED) Other philosophers The greatest part of the Ideas, that make our complex Idea of GOLD, are YELLOWNESS, great WEIGHT, FUSIBILITY, and SOLUBILITY IN AQUA REGIA (Locke) In the case of many words … it is possible to specify their meaning by reference to other words. E.g., “ARTHROPODES” are ANIMALS with SEGMENTED BODIES and JOINTED LEGS. (Carnap) Other philosophers The English noun “chair” can be decomposed into a set of concepts which might be represented by the semantic markers: OBJECT, PHYSICAL, NON-LIVING, ARTIFACT, FURNITURE, PORTABLE, SOMETHING WITH LEGS, SOMETHING WITH A BACK, SEAT FOR ONE (Katz) The classical theory in a nutshell (Most) concept descriptions are structured mental representations that encode a set of NECESSARY and SUFFICIENT conditions for membership in the category These descriptions are learned through a process of ABSTRACTION by eliminating those properties which are not shared by all members of a category (Locke) Disegno di ontologie Identificazione dei CONCETTI Identificazione dei loro ATTRIBUTI Identificazione delle relazioni di dipendenza tra questi concetti e di restrizioni, usando description logics o linguaggi logici piu’ potenti ONTOLOGIA IN INFORMATICA • Un artefatto progettato con lo scopo di esprimere il significato inteso di un vocabolario (condiviso) • Un vocabulario condiviso più una specificazione (caratterizzazione) del suo significato inteso “An ontology is a specification of a conceptualization” [Gruber 95] cioè, un’ontologia rende conto dell’impegno di un linguaggio verso una certa concettualizzazione ONTOLOGIA APPLICATA IN INFORMATICA Interoperabilità Semantica Integrazione di Database Imprese Virtuali Concurrent engineering e-commerce Web services Information Retrieval Distinguere il vocabolario dell’utente da quello dei dati Rispondere alle Query su insiemi di documenti Natural Language Processing ONTOLOGIE NELL’AMBITO DELLA BIOLOGIA Protein Ontology: un’ontologia sviluppata per codificare la nostra conoscenza sulle proteine in modo sistematico http://pir.georgetown.edu/pro/ Altre ontologie elencate sul sito OPEN BIOMEDICAL ONTOLOGY http://www.obofoundry.org/ Gene ontology, C. elegans, etc PROTEIN ONTOLOGY ALTRI DOMINI IN CUI VENGONO USATE ONTOLOGIE Geografia (per scambiare informazioni tra sistemi satellitari etc) Software Specifica di processi (management) PSL: http://www.mel.nist.gov/psl/ Ontologie ‘generali’ ed ontologie ‘di dominio’ Esistono ora molte ontologie per domini specifici Esistono anche tentativi di ‘riunificare’ queste ontologie tramite cosiddette ‘ontologie di livello superiore’ SUMO DOLCE DOLCE Ontologia generale sviluppata dal Laboratorio di Ontologia Applicata del CNR (LOA) La tassonomia di DOLCE PT Particular ED Endurant PED Physical Endurant M Amount of Matter F Feature PD Perdurant NPED Non-physical Endurant POB Physical Object … AS Arbitrary Sum NPOB Non-physical Object Q Quality EV Event STV Stative ACH ACC Achievement Accomplishment … … TQ Temporal Quality ST State PRO Process … … … TL Temporal Location PQ Physical Quality AB Abstract … Fact AQ Abstract Quality … SL Spatial Location … TR Temporal Region … APO Agentive Physical Object NAPO Non-agentive Physical Object MOB Mental Object SOB Social Object ASO Agentive Social Object SAG Social Agent NASO Non-agentive Social Object SC Society T Time Interval Set PR Physical Region … S Space Region R Region AR Abstract Region … Scelte Ontologiche di base in DOLCE (1) Oggetti (Enduranti o Continuanti) ed Eventi (Perduranti o Occorrenti) queste sono categorie distinte connesse attraverso la relazione di partecipazione. Le Qualità formano una categoria esse ineriscono agli Oggetti (Qualità Fisiche) o agli Eventi (Qualità Temporali) e corrispondono a “proprietà individualizzate”, cioè sono inerenti solo a una specifica entità , per esempio “il colore di questa particolare rosa”, “la velocità di questo movimento”, ecc. Scelte Ontologiche di base in DOLCE (2) Ogni tipo di Qualità è associato a uno Spazio di Qualità che rappresenta lo spazio dei valori che le qualità (di uno specifico tipo) possono assumere. Gli spazi di qualità non sono né nello spazio né nel tempo, ma sono ammessi diversi spazi di qualità associati allo stesso tipo di Qualità. Spazio e Tempo sono specifici spazi di qualità; Sono ammessi diversi tipo di spazio e tempo. Diversi Oggetti/Eventi possono essere co-localizzati spaziotemporalmente: in questo caso si considera la relazione di costituzione. Entità Astratte vs. Concrete Concrete: collocate nello spazio-tempo (le regioni di spazio-tempo sono collocate in se stesse) Astratte (questo termine può avere due significati): - Resultato di un processo di astrazione (qualcosa di comune a molte esemplificazioni) - Non collocato nello spazio-tempo (questo è il sognificato in DOLCE) Somme mereologiche (di entità cocnrete) sono concrete, gli insiemi che corrispondono a esse sono astratti... Enduranti vs. Perduranti Enduranti: Tutte le loro parti proprie sono presenti ogni volta che essi sono presenti (interamente presenti, non attraverso le loro parti temporali) Esistono nel tempo Possono genuinamente cambiare nel tempo Possono avere parti non essenziali La relazione di parte sugli endurtanti include un argomento temporale Perduranti: Solo alcune delle loro parti proprie sono presenti ogni volta che essi sono presenti (presenza parziale, parti temporali) Accadono nel tempo Non cambiano nel tempo Tutte le loro parti sono essenziali La relazione di parte sui perduranti non considera il tempo SEMANTIC WEB Il Semantic Web (Berners-Lee Hendler et al 2001) e’ un progetto per realizzare una versione del Web in cui i testi sono annotati SEMANTICAMENTE e quindi e’ possibile ritrovarli sulla base del CONTENUTO invece che di keywords INGREDIENTI DEL SEMANTIC WEB XML come linguaggio di markup, ed in particolare URI per identificare nomi namespaces RDF per la rappresentazione di informazioni OWL (Web Ontology Language) per rappresentare concetti, attributi, e relazioni Una o piu’ ontologie LIVELLI DEL SEMANTIC WEB URI ed URL URL: indirizzo fisico URI: indirizzo ‘concettuale’ RESOURCE DESCRIPTION FRAMEWORK (RDF) Linguaggio per esprimere asserzioni del tipo <RISORSA, PROPRIETA’, VALORE> ‘Il presidente Ciampi vive a Roma’ ESEMPIO DI RDF <?xml version='1.0'?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:wikipedia="http://it.wikipedia.org/wiki/" xmlns:wikidizionario="http://it.wiktionary.org/wiki/"> <rdf:Description rdf:about="http://www.quirinale.it/presidente/ciampi.htm"> <wikidizionario:vivere rdf:resource="http://www.comune.roma.it/index.asp"/> <wikipedia:codice_fiscale> CMPCLZ20T09E625V </wikipedia:codice_fiscale> </rdf:Description> </rdf:RDF> OWL: LINGUAGGIO PER DESCRIVERE ONTOLOGIE Una serie di linguaggi che permettono di descrivere ontologie piu’ sofisticate OWL-LITE: tassonomie, restrizioni OWL-DL: livello delle description logics OWL-FULL: massima espressivita’ (logica) OWL <owl:Class rdf:ID="ProteinComplex"> <owl:disjointWith> <owl:Class rdf:ID="SiteGroup"/> </owl:disjointWith> <owl:disjointWith> <owl:Class rdf:about="#Chains"/> </owl:disjointWith> <owl:disjointWith> <owl:Class rdf:about="#Residues"/> </owl:disjointWith> UN ESEMPIO DI PAGINA MARCATA PER SEMANTIC WEB JIM HENDLER’S PAGE, SEMANTIC WEB INFO <BODY> <INSTANCE KEY="http://www.cs.umd.edu/users/hendler/"> <USE-ONTOLOGY ID="cs-dept-ontology" VERSION="1.0" PREFIX="cs" URL= "http://www.cs.umd.edu/projects/plus/SHOE/cs.html" /> <CATEGORY NAME="cs.Professor" FOR="http://www.cs.umd.edu/users/hendler/"/> <RELATION NAME="cs.member"> <ARG POS=1 VALUE="http://www.cs.umd.edu/projects/plus/"> <ARG POS=2 VALUE="http://www.cs.umd.edu/users/hendler/"> </RELATION> <RELATION NAME="cs.name"> <ARG POS=2 VALUE="Dr. James Hendler"> </RELATION> <RELATION NAME="cs.doctoralDegreeFrom"> <ARG POS=1 VALUE="http://www.cs.umd.edu/users/hendler/"> <ARG POS=2 VALUE="http://www.brown.edu"> </RELATION> <RELATION NAME="cs.emailAddress"> <ARG POS=2 VALUE="[email protected]"> </RELATION> ….. </INSTANCE> <b>As of January 1, 2007 Professor Hendler has moved from the University of Maryland to <a href="http://www.rpi.edu">Rensselaer Polytechnic Institute</a></b>. VALUTAZIONE L’uso di ontologie in informatica e’ ancora controverso In alcune aree come la biomedicina chiaramente utili ed utilizzate In altre aree meno chiaro Semantic Web compreso RIASSUNTO CONCETTI FONDAMENTALI Forme di organizzazione della conoscenza in informatica: tesauri, reti semantiche, ontologie Ontologie: filosoficamente, applicazioni informatiche, di dominio / generali Semantic Web: RDF, OWL LETTURE Tomasi, capitolo 8 Wikipedia Ontologie: http://www.ontologyportal.org/ http://www.loa-cnr.it/ Semantic Web: http://www.sciam.com/article.cfm?articleID=00048 144-10D2-1C70-84A9809EC588EF21