Presentazione corso - Computer Science Corso di laurea in
Download
Report
Transcript Presentazione corso - Computer Science Corso di laurea in
Modulo3
Introduzione alla semantica
UNIVERSITA’ DI CAMERINO
Corso di laurea in Informatica (classe 23/S)
Barbara Re
[email protected]
Anno Accademico 2007-08
Agenda
Dal Web al Web Semantico
Soluzioni semantiche per le imprese
Le ontologie
2
Letture
Tim Berners-Lee, James Hendler and Ora Lassila (2001).The
Semantic Web, Scientific American, May 2001.
Nigel Shadbolt, Tim Berners-Lee and Wendy Hall (2006). The
Semantic Web Revisited. IEEE Intelligent Systems 21(3) pp.
96-101, May/June 2006.
Li Ding, Pranam Kolari, Zhongli Ding, Sasikanth Avancha, Tim
Finin, Anupam Joshi. Using Ontologies in the Semantic Web: A
Survey. Technical Report CS-05-07. Department of Computer
Science and Electrical Engineering, University of Maryland
Baltimore County.
Lee Feigenbaum, Ivan Herman, Tonya Hongsermeier, Eric
Neumann, and Susie Stephens. The Semantic Web in Action.
Scientific American, 297(6), pp. 90-97, (December 2007).
…..
,,,,,
;;;;;
3
Un sogno per il Web
“Ho un sogno per il Web … ed esso è diviso in due
parti. Nella prima parte, il Web diventa un mezzo
molto più potente per la collaborazione tra le
persone. Ho sempre immaginato lo spazio delle
informazioni come qualcosa cui chiunque potesse
avere accesso immediato ed intuitivo, e non solo di
consultarlo, ma di crearlo. […] Inoltre, il sogno della
comunicazione tra le persone, attraverso la
condivisione della conoscenza, deve essere
possibile per gruppi di ogni dimensione, interagenti
elettronicamente con la facilità con la quale essi
comunicano di persona”
4
Il sogno continua
“Nella seconda parte del sogno, le collaborazioni si
estendono ai computer. Le macchine diventano
capaci di analizzare tutti i dati sul Web – il
contenuto, i link e le transazioni tra le persone ed i
computer. Un “Web Semantico”, che dovrebbe
rendere questo possibile, deve ancora emergere,
ma quando lo farà, i meccanismi quotidiani del
commercio, della burocrazia, e delle nostre vite
quotidiane saranno gestiti da macchine che
interagiscono con macchine, lasciando agli umani il
compito di fornire l’ispirazione e l’intuizione. “
5
Scenario
Peter
A casa
Lucy –
dal dottore
6
Scenario
Recupera le informazioni dall’agenda del dottore
Ricerca una lista di fornitori per le cure della mamma
Nella lista recupera le soluzioni
In linea con le garanzie di assicurazione sanitaria della mamma
Localizzato entro un raggio di 20 miglia da casa della mamma
Con un livello di trust eccellente o molto buono
Trova un match tra l’agenda del fornitore di servizi (recuperata
attraverso il web site del fornitore) e l’agenda di Pete e Lucy
7
Scenario
Peter
Lucy
8
Scenario
9
Web di oggi e Web di domani
Web di oggi per gli umani
Semantic Web permette di creare struttura e
contenuti della pagine ricchi di significati dove gli
agenti software svolgono compiti complicati per
conto degli umani
10
Dal Web di ieri a quello di domani
L’evoluzione che a portato il Web dalla sua concezione iniziale
all’architettura attuale assegna un ruolo fondamentale all’XML
ed individua nel Semantic Web la nuova frontiera di sviluppo
Due chiavi di lettura
La separazione del contenuto dalla presentazione
Il passaggio dall’interazione uomo-Web all’interazione macchina
macchina
11
L’idea del Semantic Web
“The Semantic Web is an extension of the current
Web in which information is given well-defined
meaning, better enabling computers and people to
work in cooperation”
–Tim Berners-Lee, James Hendler, Ora Lassila
L’idea è inserire sul Web informazioni leggibili ed al
tempo stesso comprensibili dalle macchine
Viene permessa l’introduzone di servizi intelligenti
come search agents, information filters, ed
information brokers
12
Perchè il Semantic Web?
Ad oggi il WWW supporta principalemente l’human
browsing
Esso è leggibile ma non comprensibile dalle
macchine
La difficoltà di automatizzare ogni cosa nel Web è
causata dall’enorme volume di informazioni in esso
disponibili
Si necessita di programmi che sono capaci di
interpretare le informazioni dando loro un
significato ben definito dando così la possibilità a
computer e persone di lavorare insieme in
cooperazione
13
Sfide del Semantic Web
Sviluppare un ambiente software che consente ad
ogni utente di fare il miglior uso possibile delle
risorse disponibili
Supportare standard, tecnologie e politiche che
devono essere disegnate perchè le macchine
possano capire dal Web
Definire un linguaggio che può esprimere
informazioni e relazioni tra le informazioni
14
Alcune precisazioni
Per chiarezza di terminologia, va ricordato che la filosofia
di base del Web è quella di uno spazio informativo
universale, navigabile, con un mapping da URI (Uniform
Resource Identifier) alle risorse
Nel contesto del Semantic Web, il termine semantico
assume la valenza di "elaborabile dalla macchina" e non
intende fare riferimento alla semantica del linguaggio
naturale e alle tecniche di intelligenza artificiale
Il Semantic Web è, come l’ XML, un ambiente
dichiarativo, in cui si specifica il significato dei dati, e non
il modo in cui si intende utilizzarli
La semantica dei dati consiste nelle informazioni utili
perché la macchina possa utilizzarli nel modo corretto,
eventualmente convertendoli
15
Un mondo di asserzioni
Semantic Web è visto come la riformulazione del Web
odierno in un insieme di asserzioni semantiche
La conoscenza è espressa attraverso un insieme di
asserzioni
Le asserzioni sono affermazioni descrittive dei legami che
esistono tra una cosa ed un’altra
Gran parte della conoscenza umana può essere descritta
mediante espressioni simili a queste
“Giorgio ha una madre, Marta”
“Marta è la madre di Giorgio”
“Il prodotto #4521 ha un prezzo, €19.95”
“Luca ha una città di residenza, Torino”
“Gli stati uniti hanno un presidente George W. Bush”
16
Sino al …. Semantic Web
17
La piramide del Semantic Web
19
URIs e Unicode
URI – Universal Resource Identification
sono identificatori unici
per risorse di ogni tipo
dagli schemi alle persone
URL Uniform Resource Locators
sono gli URI più comuni permettendo di identificare
qualcosa sul Web
Esempi
ISBN - International Standard Book Numbers
in campo librario
CF - codice fiscale
in campo anagrafico
20
XML + NS + XML Schema
XML- eXtensible Markup Language
«Linguaggio di marcatura estensibile» è un
metalinguaggio creato e gestito dal World Wide Web
Consortium (W3C), e più precisamente dal presidente
di tale "consorzio", Michael Sunshine
XML Schema
Linguaggio di descrizione del contenuto di un file XML
che abbia per ora raggiunto la validazione ufficiale del
W3C
NS - namespace
Permette di evitare confusione ed equivoci nel caso
siano necessarie molte entità con nomi simili,
fornendo il modo di raggruppare i nomi per categorie
21
RDF e RDF Schema
La famiglia dei linguaggi RDF fa da supporto per
l’interoperabilità a livello semantico
Gli sviluppi dell’RDF costituiscono il linguaggio base
del Web, consentendo agli agenti di effettuare le
inferenze logiche di cui necessitano per svolgere i
loro compiti
RDF permette di strutturare il web attraverso
insieme di triple soggetto verbo e oggetto
Particolari cose (pagine web, persone, …) hanno
proprietà (come “è sorella di” “è autore di”) con
certo valore (un’altra persona, un’altra pagina web)
RDF W3C reccomandation dal 1999
RDFS W3C reccomandation dal 2004
22
Vocabolario delle Ontologie
Le ontologie permettono di distinguere quando due differenti
identificatori fanno riferimento allo stesso concetto
Attraverso le ontologie si possono sviluppare ricerche più accurate
es: jaguar – giaguaro macchina
Pagine web dove il contenuti sono rappresentati da ontologie
permettono un processo di strutturazione della conoscenza su cui
applicare regole di inferenze
Come un umano/una macchina è in grado di comprendere che
l’indirizzo in una home page è l’indirizzo dell’ufficio piuttosto che
dell’abitazione?
Nel contesto del web le ontologie sono insiemi di tassonomie che
definiscono classi di oggetti (classi e sottoclassi) e relazioni tra esse
e regole di inferenza
Le regole di inferenza forniscono ulteriore potenza alle ontologie
“se un codice città è associato con un codice stato e un indirizzo
associato al codice città, allora l’indirizzo è associato al codice stato”
23
Per chiarezza …
Un controlled vocabulary è una lista di termini che sono stati elencati
esplicitamente da una propria autorità
Una taxonomy è una collezione di vocabolari controllati organizzati in una
struttura gerarchica, ciascun termine in una tassonomia è legato ad un altro
termine della tassonomia attraverso relazioni padre-figlio
Un thesaurus è una collezione di reti di vocabolari controllati di termini –
un tesauro usa relazioni associative oltre a relazioni padre-figlio
ONTOLOGY
Un meta-model è un modello esplicito di costrutti e regole necessarie per
costruire specifici modelli all’interno del dominio di interesse
Glossari, dizionari, tesauri, tassonomie, schemi, modelli di dati, ontologie
formali
Un’ontologia formale è un vocabolario controllato espresso attraverso un
linguaggio ontologico di rappresentazione
Un valido meta-model sono le ontologie ma non tutte le ontologie sono
modellate esplicitamente come meta-model
Un meta-model può essere visto da tre prospettive
Un insieme di blocchi e regole per costruire modelli
Un modello del dominio di interesse
Un istanza di un modello
24
Logica
Noi effettuiamo continuamente inferenze nella nostra vita quotidiana
Per esempio
se N denota il numero di messaggi non letti nella nostra casella di
posta elettronica, allora se il messaggio è formattato in grassetto,
il messaggio fa parte degli N non letti
Questa inferenza è basata sulla prova fornita dalla diversa
formattazione
Il livello logico lavora con il medesimo principio base attraverso la logica
elementare dei predicati (First Order Predicate Logic)
Un agente può derivare una conclusione logica (o ragionamento) nel
corso di esecuzione di uno dei suoi task basandosi essenzialmente su
“fatti”, messi a disposizione da dati codificati in maniera semantica
Naturalmente la capacità logica del Semantic Web non si esaurisce a
trarre conclusioni da una serie di ipotesi
25
Livello logico
Responsabilità:
Inferenza
Regole al top dell’ontologia
26
Prove e Trust
Gli ultimi due livelli orizzontali, costruiti al di sopra del livello logico, lo completano
fornendo i concetti di prova e fiducia (trust)
Livelli ancora non definiti ma fondamentali per il pieno sviluppo del Semantic Web
Esempio: se una persona dice che x è blu ed un’altra persona dice che x non è blu può il
web capire chi dice la verità? NO il Web NO ma il Semantic Web in futuro SI
No perché SI perchè
Il funzionamento di questi due livelli è fortemente dipendente dall’accuratezza della
preparazione dei dati e dall’affidabilità delle fonti
Responsabilità dei due livelli
Tecnologie (standard) - Nessuno standard
Attualmente l’applicazione del Semantic Web dipende dal contesto
In futuro si inseriranno meccanismi di fiducia che permettono il concetto di integrità
della prova (che fornisce una validazione di un fatto slegandosi dall’attività di
inferenza)
Risoluzione dei conflitti
Web of Trust
27
Firme Digitali
Il livello delle firme digitali si posiziona in verticale a
partire dal livello dell’RDF fino al livello delle prove
Attraverso le firme digitali computer ed agenti
possono verificare che i dati che vengono scambiati
sono forniti da specifiche sorgenti in grado di
garantire dettagliati livelli di trust
28
L’organizzazione delle pagine web attualmente
29
Organizzazione delle pagine con collegamenti semantici
30
Web e Semantic Web a confronto
31
Swoogle
Swoogle is a search engine for Semantic Web documents, terms and data
found on the Web
Swoogle employs a system of crawlers to discover RDF or OWL documents
and HTML documents with embedded RDF or OWL content
Swoogle reasons about these documents and their constituent parts (e.g.,
terms and triples) and records and indexes meaningful metadata about
them in its database
Swoogle provides services to human users through a browser interface and
to software agents via web services
Several techniques are used to rank query results inspired by the PageRank
algorithm developed at Google but adapted to the semantics and use
patterns found in semantic web documents
32
Il semantic web rivisto
33
Folksonomies
Folksonomies
They represent a structure that emerges organically
when individuals manage their own information
requirements
Folksonomies arise when a large number of people
are interested in particular information and are
encouraged to describe it—or tag it
34
Challenges for data ubiquity
How do we effectively query huge numbers of
decentralized information repositories of varying
scales?
How do we align and map between ontologies?
How do we construct a Semantic Web browser that
effectively visualizes and navigates the huge
connected RDF graph?
How do we establish trust and provenance of the
content?
35
Semantic web in Action
36
Casi di successo
British Telecom has built a prototype online service to
help its many vendors more effectively develop new
products together
Boeing is exploring the technologies to more effi ciently
integrate the work of partners involved in airplane design
Chevron is experimenting with ways to manage the life
cycle of power plants and oil refineries
MITRE Corporation is applying Semantic Web tool kits to
help the U.S. military interpret rules of engagement for
convoy movements
37
Casi di successo
The U.K.’s national mapping agency, Ordnance Survey, uses the
Semantic Web internally to more accurately and inexpensively
generate geographic maps
Vodafone Live!, a multimedia portal for accessing ring tones,
games and mobile applications, is built on Semantic Web
formats that enable subscribers to download content to their
phones much faster than before
Harper’s Magazine has harnessed semantic ontologies on its
Web site to present annotated timelines of current events that
are automatically linked to articles about concepts related to
those events
Joost, which is putting television on the Web for free, is using
Semantic Web software to manage the schedules and program
guides that viewers use online
38
Ontologie
39
Cosa sono le ontologie!!
Cosa sono le ontologie?
Specifica di un vocabolario condiviso dei termini utilizzati
in un dominio applicativo ?
Collezioni di definizioni di termini e relazioni fra questi ?
Schema che cattura il significato dell’informazione
contenuta in un sottostante archivio ?
40
Cos’è un’ontologia
In termini astratti
Sul piano filosofico: area della metafisica che
studia come è realmente fatto l’universo che ci
circonda
Sul piano informatico: area dell’intelligenza
artificiale che studia i metodi per
rappresentare correttamente l’universo che ci
circonda
In termini pratici
Specifica un vocabolario comune tra sistemi
differenti …
… basandosi su una descrizione semantica del
dominio dei dati …
… che agevoli la comunicazione sia tra agenti
software sia tra agenti software e esseri umani
41
Definizioni
Philosophy (400BC)
Systematic explanation of Existence
Neches (91)
Ontology defines basic terms and relations comprising the
vocabulary of a topic area as well as the rules for
combining terms and relations to define extensions to the
vocabulary
Gruber (93)
Explicit specification of a conceptualization
Borst (97)
Formal specification of a shared conceptualization
Studer(98)
Formal, explicit specification of a shared conceptualization
Una specifica esplicita e formale di una
concettualizzazione condivisa
42
Cos’è un’ontologia
In termini formali…
“Un’ontologia è una specificazione esplicita e formale di una
concettualizzazione condivisa”
in cui si usa…
CONCETTUALIZZAZIONE
perché ci si riferisce a
modello astratto di
fenomeno
CONDIVISA perché cattura
conoscenza riconosciuta da
un gruppo
FORMALE perché
automaticamente
decodificabile
ESPLICITA perché basata
su strutture di immediata
applicazione
43
Formalmente (1)
Un insieme di concetti (detti anche classi)
Le interconnessioni semantiche tra essi (dette relazioni
concettuali, o attributi semantici)
Un eventuale livello logico che permetta di inferire nuovi fatti
a partire da quelli codificati all’interno della risorsa (ad
esempio, un insieme di assiomi o micro-teorie)
44
Formalmente (2)
Un’ontologia O può dunque essere definita come
una tripla (C, R, A) dove
C è un insieme di concetti
R è un insieme di relazioni concettuali tali che ogni
relazione in R è definita su CC
A è un insieme di assiomi (se A = l’ontologia non è
assiomatizzata)
45
Definizione formale di ontologia (3)
Si osservi che gli insiemi C ed R individuano un
grafo G = (V, E) tale che
VC
E = { (c1, c2) CC : S R : (c1, c2) S }
e una funzione di etichettatura:
CC 2R tale che
(c1, c2) = { S R : (c1, c2) S }
46
Esempio
Un semplice esempio di ontologia è il seguente
O’ = (C’, R’, A’) dove:
C’ =
{Entità, Oggetto, Persona, Meccanico, Automobile, Motore}
R’ = {è-un, ha-un, ripara}
A’ = { “a Automobile m Meccanico : ripara(m, a)” })
è-un = { (Oggetto, Entità), (Persona, Entità), (Meccanico,
Persona), (Automobile, Oggetto), (Motore, Oggetto) }
ha-un = { (Automobile, Motore) }
ripara = { (Meccanico, Automobile) }
47
I componenti di un’ontologia
48
I componenti di un’ontologia
Un concetto…
…anche noto come classe, può
rappresentare un oggetto, una
nozione o un’idea
…può essere astratto o concreto,
elementare o composto, reale o
fittizio…
…è caratterizzato da un termino o un
simbolo, da una “estensione” e da
una “intensione”
49
I componenti di un’ontologia
Una relazione…
…è una forma di interazione tra
concetti del dominio del tipo
R: C1xC2x…xCn
…è caratterizzata da un termine,
da una intenzione e da una
estensione…
…può essere, ad esempio,
“genitore” che lega due concetti
o due istanze
50
I componenti di un’ontologia
Una funzione…
…è un tipo speciale di
relazione in cui l’n-esimo
argomento dipende dagli
altri, nella forma
F: C1xC2x…xCn-1 Cn
…può essere, ad esempio,
“madre di”, calcolata a
partire da un concetto
“genitore” e dall’attributo
“sesso”
51
I componenti di un’ontologia
Un assioma
…è un affermazione sempre vera sul
modello
…serve per specificare la semantica
dei concetti
…può essere usato per descrivere una
relazione: il tipo, la cardinalità, le
proprietà algebriche (simmetria,
transitività), le proprietà
concettuali (esclusività, genericità,
identità)
52
I componenti di un’ontologia
Un elemento aggiuntivo
può essere…
…un’istanza rappresenta i singoli
elementi del dominio
…un fatto rappresenta una
relazione tra due istanze
…un individuo rappresenta
qualsiasi elemento del dominio
che non sia un concetto
…una claim rappresenta
l’asserzione di un fatto tramite
un’istanza
53
Tipologie dipendenti dal linguaggio
Knowledge representation ontologies
General/common ontologies
Meta-ontologies
Domain ontologies
Task ontologies
Domain-task ontologies
Application ontologies
Cattura le primitive utilizzate per formalizzare la conoscenza seguendo il paradigma di
knowledge representation
Include vocabolari relativi a cose, eventi, tempo, spazio, casualità, comportamento,
funzioni, …
Ontologie riusabili attraverso domini diversi
Ontologie riusabili in uno specifico dominio
Fornisce un sistematico vocabolario di termini usati per risolvere problemi associati a task
che possono o meno far riferimento allo stesso dominio
Task ontology riutilizzabile in uno specifico dominio
Contiene la conoscenza necessaria per modellare un dominio particolare
54
I criteri della progettazione…
Chiarezza: il significato intenzionale deve essere oggettivo
Completezza: quanto espresso deve essere necessario e sufficiente
Coerenza: si può inferire solo ciò che è consistente con le definizioni
Estendibilità: successive estensioni o specializzazioni devono essere
monotone, senza richiedere revisione
Massimizzare l’estendibilità monotonica: significa che nuovi termini
generali o specializzati devono essere inclusi nell’ontologia senza una
revisione delle attuali specifiche
Minima dipendenza dalla codifica: la concettualizzazione non deve
dipendere da vincoli del linguaggio di rappresentazione
Minimo commitment ontologico: la conoscenza deve essere
rappresentata col minor numero possibile di dichiarazioni
Minimizzare la distanza semantica tra concetti fratelli
Modularità per minimizzare l’accoppiamento tra moduli
55
Il ciclo di vita della progettazione
56
Processo di sviluppo di un’ontologia
Studio di
Fattibilità
Identificazione
dominio e campo
di applicazione
1)
2)
3)
Costruzione
Catturare l’ontologia
Codificare l’ontologia
Integrare con ontologie esistenti
Valutazione
Documentazione
Mantenimento
Utenti, Esperti di dominio
e Sviluppatori
Ontologia
• chiarezza
• coerenza
• estensibilità
• min impegno ontologico
• min dipendenza codice
57
Ontologie: Problemi di ricerca
E’ un’area di ricerca che si è molto espansa nell’ultima decade
Metodologie
Costruzione
Gestione
Fusione
Ontologie
Traduzione
Riuso
Aggiornamento
Strumenti
Mapping
Apprendimento
Valutazione
Linguaggi
58
Ci sono domande?
59