Sistemi basati su conoscenza
Semantic Web
Prof. M.T. PAZIENZA
a.a. 2006-2007
Introduzione
Internet contiene enormi quantità di dati memorizzati in
milioni di pagine che vengono usate per lo scambio di
informazioni.
In maggioranza sul web vengono create pagine a contenuto
testuale ma prive di qualunque tipo di annotazione
semantica. A causa di ciò il processo di ricerca si basa
ancora quasi esclusivamente su keywords vanificando
gli obiettivi ambiziosi di accesso alle informazioni
supportato dal web
Tim Berners-Lee visione (2001)
“... a goal of the Web was that, if the interaction between person and hypertext could
be so intuitive that the machine-readable information space gave an accurate
representation of the state of people's thoughts, interactions, and work patterns,
then machine analysis could become a very powerful management tool, seeing
patterns in our work and facilitating our working together through the typical
problems which beset the management of large organizations.”
T. Berners Lee (ed altri) continuano a lavorare per la
realizzazione di un tale progetto ambizioso ormai
universalmente noto come Semantic Web
Situazione attuale: syntactic Web
[Hendler & Miller 02]
Il syntactic Web è…
...un luogo in cui
i calcolatori si preocupano della presentazione (attività facile da fare)
gli uomini curano l’interpretazione ed i collegamenti (possono fare
deduzioni da informazion parziali, associazioni mentali, possono
combinare tra loro informazioni diverse, in lingue diverse etc).
– hypermedia, una digital library
• Una libreria di documenti (web pages) interconnessi da link ipermediali
– Un database, una piattaforma per applicazioni
• Un comune portale, accessibile da pagine web, di applicazioni che
presentino i propri risultati come pagine web.
– Una piattaforma per multimedia
• BBC Radio 4 anywhere in the world! Terminator 3 trailers!
– Uno schema unico per i nomi
• Identificatori unici per questi documenti
... e gli agenti?
…
Perchè le informazioni siano processabili da un
agente c’è bisogno di:
– nomi non ambigui per le risorse (URIs) che possono
anche collegare dati ad oggetti del mondo reale
– un modello di dati comune: RDF
• unitamente a modalità di accesso a quei dati sul Web
– vocabolari comuni: RDFS, OWL
– logiche per il ragionamento: OWL, Regole
The “Semantic Web” is an infrastructure for the
interchange and the integration of data on the Web
che estende il web sintattico e non lo sostituisce
Resource Description Framework (RDF)
RDF permette di scrivere statements che siano machine-processable.
Uno statement RDF è come una frase in cui quasi tutte le parole sono
URI (Uniform Resource Identifier). Ciascuno statement RDF ha tre
componenti: un soggetto, un predicato e un oggetto.
Esempio di statement RDF:
<http://aaronsw.com/>
<http://love.example.org/terms/reallyLikes>
<http://www.w3.org/People/Berners-Lee/Weaving/> .
Cosa è scritto nello statement? Il primo URI è il soggetto (in questo
caso la pagina di Aaron Swartz ). Il secondo URI è il predicato e
mette in relazione il soggetto con l’oggetto. (In questo esempio il
predicato è "reallyLikes“). Il terzo URI è l’oggetto. (Qui l’oggetto è
il libro di Tim Berners-Lee "Weaving the Web“), così nell’esempio
si dice che Aaron Swartz really likes "Weaving the Web."
Resource Description Framework (RDF)
RDF è un grafo.
Una tripla (s,p,o) soggetto-proprietà-oggetto può
essere vista come un arco etichettato in un grafo
– i.e., un insieme di statements RDF è un grafo diretto
etichettato
• “oggetti” e “soggetti” sono nodi del grafo
• “proprietà” sono gli archi
Il Semantic Web è…
Il Semantic Web è un web di dati, una sorta di enorme database
globale.
La motivazione per la creazione di una tale infrastruttura è
altrove, qui si può solo identificare l’architettura per sè.
Semantic web roadmap
La parte a sinistra, il web, mostra
come una URI, tramite l’HTTP,
viene convertita nella
rappresentazione di un
documento. E’ poi convertita in
XML e poi in RDF, per produrre
un grafo RDF o, a livello logico,
in una formula logica.
La parte a destra, la parte semantica,
mostra come il grafo RDF
contiene un riferimento all’URI.
Il syntactic Web è…
Un luogo dove
1. gli elaboratori gestiscono la visualizzazione dei
documenti (compito ben definito e facilmente
implementabile)
2. le persone realizzano i collegamenti concettuali e
l’interpretazione (compito ancora non ben definito e
difficile da realizzare)
Sarebbe interessante sviluppare processi automatici
per il punto 2
Aspettative per il SW
Porre domande complesse che implichino
background knowledge (vorrei informazioni su chi
insegna“basi di dati”)
Localizzare informazioni specifiche all’interno di
data repositories (ricerche di percorsi di viaggio,
prezzi di prodotti di una categoria merceologica,
risultati di esperimenti, …)
Delegare a web “agents” compiti complessi
(mostrami un sito dove comprare un laptop potente, non
molto costoso e soprattutto leggero)
Qual è il problema?
Consideriamo una pagina web
Qual è il problema?
Consideriamo un’altra pagina web
Qual è il problema?
Consideriamo ancora un’altra pagina web
Qual è il problema?
Le pagine sono state visualizzate negli opportuni
formati e colori, i link ipertestuali sono
opportunamente visualizzati e collegati ad altri
contenuti; il tutto indipendentemente dal linguaggio
in cui le pagine sono state scritte
Il contenuto (semantico) di ciascuna pagina è
accessibile solo agli umani ma non agli elaboratori
…
Un esempio: analisi della query
Who holds the Database course?
syntactic analysis
lsubj
lobj
[Who] [holds] [the Database course]?
NPK VPK
NPK:course_c
semantic analysis
list_all(X).
relation(E,teach),
arg1(E, person_c(X)),
arg2(E,course_c(“Database course“))
Un esempio: matching della query
list_all(X).
relation(E,teach),
arg1(E, person_c(X)),
arg2(E,course_c(“Database course“))
teach
L’informazione vista dalla macchina…
WWW2002
The eleventh international world wide web
conference
Sheraton waikiki hotel
Honolulu, hawaii, USA
7-11 may 2002
1 location 5 days learn interact
Registered participants coming from
australia, canada, chile denmark, france,
germany, ghana, hong kong, india,
ireland, italy, japan, malta, new zealand,
the netherlands, norway, singapore,
switzerland, the united kingdom, the united
states, vietnam, zaire
Register now
On the 7th May Honolulu will provide the
backdrop of the eleventh international world
wide web conference This prestigious event 
Speakers confirmed
Tim berners-lee
Tim is the well known inventor of the Web, 
Ian Foster
Ian is the pioneer of the Grid, the next
generation internet 
Solutione: XML markup con tag ricchi
di significato
<name>WWW2002
The eleventh international world wide webcon</name>
<location>Sheraton waikiki hotel
Honolulu, hawaii, USA</location>
<date>7-11 may 2002</date>
<slogan>1 location 5 days learn interact</slogan>
<participants>Registered participants coming from
australia, canada, chile denmark, france,
germany, ghana, hong kong, india, ireland,
italy, japan, malta, new zealand, the
netherlands, norway, singapore, switzerland,
the united kingdom, the united states,
vietnam, zaire</participants>
<introduction>Register now
On the 7th May Honolulu will provide the
backdrop of the eleventh international world
wide web conference This prestigious event 
Speakers confirmed</introduction>
<speaker>Tim berners-lee</speaker>
<bio>Tim is the well known inventor of the
Web,</bio>…
C’è bisogno di semantica
External agreement sul significato delle annotazioni
Accordo sul significato di un insieme di tag di annotazione
Problemi possibili
Scarsa flessibilità
Numero limitato di fatti che possono essere espressi
Uso di Ontologie per specificare il significato delle
annotazioni
– Le ontologie forniscono un vocabolario di termini
– Nuovi termini posso essere formati combinando termini
preesistenti: “Conceptual Lego”
– Il significato (semantica) di tali termini è formalmente specificato
– E’ possibile specificare relazioni tra termini in ontologie diverse.
[AKT 2003]
Quali le difficoltà?
I linguaggi ontologici sono complessi
Le ontologie sono complesse (le persone le
realizzano facilmente usando l’intuizione piuttosto
che la logica; ma l’intuizione è difficile da
formalizzare)
La complessità del problema è nota sin dall’antichità
(Aristotele), ed ora torna di attualità perché il SW
diventa significativo una volta definiti i problemi di
rappresentazione della conoscenza
Struttura delle ontologie
Le ontologie in genere si basano su due componenti principali:
• Vengono usati nomi per indicare concetti di dominio
– Elefante è un concetto i cui membri sono degli animali
– Erbivoro è un concetto i cui membri sono proprio quegli animali
che mangiano solo piante o parti di piante
– Elefante adulto è un concetto i cui membri sono proprio quegli
elefanti con età superiore a 20 anni
• Conoscenza di background /vincoli sul dominio
– Gli elefanti adulti pesano almeno 2000 kg
– Tutti gli elefanti sono o elefanti africani o elefanti indiani
– Nessun individuo può essere contemporaneamente un erbivoro ed
un carnivoro
Gestione delle ontologie
• Necessità di definire tool e servizi per aiutare gli utenti a:
– Disegnare e mantenere ontologie di qualità, ovvero:
•
•
•
•
Ricche di significato — tutte le classi definite devono avere istanze
Corrette — catturare le intuizioni degli esperti
Scarsamente ridontanti — evitare sinonimi inutili
Ampiamente assiomatizzate — descrizioni dettagliate
– Memorizzare numerose istanze di classi di dominio, ovvero:
• Annotazioni dalle pagine web
– Rispondere a query relative a classi ed istanze dell’ontologia,
ovvero:
• Trovare classi più generali/specifiche
• Trovare pagine/annotazioni corrispondenti ad una data descrizione
– Integrare ed allineare più ontologie
Premise: a promise
The concept of machine-understandable documents does not imply some
magical artificial intelligence which allows machines to comprehend
human mumblings.
It only indicates a machine's ability to solve a well-defined problem by
performing well-defined operations on existing well-defined data.
Instead of asking machines to understand people's language, it involves
asking people to make the extra effort.
Tim Berners-Lee, “What the Semantic Web can represent”, 1998.
http://www.w3.org/DesignIssues/RDFnot.html
…quindi…
Soluzioni per il SW
• L’adesione a linguaggi per la rappresentazione della
conoscenza sul web, come RDF e OWL, dovrebbe
garantire una effettiva interoperabilità della conoscenza
distribuita tra più sorgenti informative autonomamente
definite.
• Il passaggio da syntactic a semantic web più che
richiedere una maggiore intelligenza da parte dei sistemi
di calcolo, può avvenire se si definiscono metodologie
condivise (standard) per la rappresentazione della
conoscenza.
• …ma…
Modelli e Meta-modelli
OWL, RDF etc.. non sono modelli del mondo/dominio, sono
modelli per la rappresentazione della conoscenza e, di
conseguenza, meta-modelli per descrivere oggetti del
mondo reale.
Se si afferma A is-a B, si intende:
che tutte le istanze di A sono anche istanze di B
che tutte le istanze di A sono soggette alle restrizioni delle proprietà
che sono specificate su B
…
Non si può affermare:
come le istanze di A (o B) si relazionino con oggetti del mondo
reale
Soluzioni per il SW
Per tornare alle parole di Berners-Lee, non c’è
alcuna necessità di
– “magical artificial intelligence”
– natural language understanding
bensì soltanto di aderire ad un livello ontologico
– non necessariamente ad una sola ontologia generale …
– …ma un insieme di ontologie di fiducia che vengono
condivise in un dato contesto.
Semantica di una ontologia
La semantica di una ontologia viene definita tramite:
– l’interpretazione data da coloro che usano l’ontologia stessa
all’interno di un framework specifico (red car è una macchina rossa o un
modellino di macchina rossa?)
– l’uso che le applicazioni fanno dei concetti dell’ontologia
all’interno del framework in cui sono coinvolte
Lo spazio dei nomi si comporta, sotto tutti gli aspetti, come
referente degli oggetti all’interno dello stesso framework.
Si ipotizza che:
– gli umani siano capaci di interpretare nella stessa maniera gli
stessi nomi nello stesso spazio dei nomi, così come
– le macchine siano capaci di usare tali dati consistentemente.
Cosa accade in caso di mancato
agreement semantico?
Esistono molte ontologie tra loro diverse e continuamente
altre vengono sviluppate relativamente allo stesso dominio o
a domini parzialmente sovrapposti
Integrare le loro informazioni è importante sia:
a livello di schema
SI
Migrazione della conoscenza ed interrogazioni remote
SJ
a livello di dati
Espandere la conoscenza relativa agli stessi oggetti
SK
Tale integrazione può essere realizzata attraverso processi di
Ontology Merging (produzione di una sola risorsa globale da altre
pre-esistenti)
Ontology Alignment (mappings tra due risorse esistenti)
Cosa accade in caso di mancato
agreement semantico?
La mancanza di un qualsivoglia accordo rende
difficile che:
– concettualizzazioni analoghe in diverse ontologie siano
facilmente “mappate” una con l’altra
– questi mappings siano “semanticamente conservativi”
Ciò implica che i sistemi di calcolo siano coinvolti
in attività ulteriori di processing per rendere la
conoscenza :
– “comprensibile”
– interoperabile
Ruolo del linguaggio naturale
Su quale informazione possono basarsi le macchine? Il linguaggio
Il linguaggio (naturale), alla fine, può essere considerato l’ultima risorsa sfruttabile
Rimane l’unico modo per trasferire la semantica dei dati
Aiuta gli umani a capire come oggetti formali corrispondano alla loro conoscenza sul
mondo
Può essere d’aiuto alle macchine nell’armonizzare differenti concettualizzazioni
Pro: offre un modo ricco ed universalmente accettato per esprimere il significato
Contro: è ambiguo; fenomeni di synonimia ed omonimia
L’importanza del linguaggio è spesso sottostimata, sotto molti aspetti:
– Risultati sperimentali (e.g. nel Ontology Alignment)
– Standard (nessuno standard nè per associare il linguaggio alla conoscenza
concettuale, nè per rappresentare la stessa conoscenza linguistica)
– Risorse / Infrastrutture