La nuova “visione” del web: il
Web Semantico
Il WWW
• Un (immensa) rete di collegamenti fra pagine
che contengono svariati tipi di risorse:
–
–
–
–
Documenti testuali e multimediali
Basi i dati
Servizi: prenotazioni on-line, web assistant..
Programmi
Problema: accessibilità dei contenuti
• Come si accede alle informazioni sul web?
– Parole chiave digitate dall’utente
– Voci di una barra di navigazione
• Nel primo caso l’efficacia dipende dagli algoritmi usati dai
motori di ricerca (che studieremo in questo corso e anche nel
corso algoritmi per il web)
• Nel secondo caso, l’efficacia dipende da chi ha organizzato e
programmato i contenuti del sito
• In entrambe le situazioni, molto dipende dal potere evocativo di
una espressione
Parole e contenuti
• Una espressione, o parola chiave, può avere un rapporto
generico con il contenuto cui si riferisce
• Nel caso di navigazione per parole-chiave, ambiguità: Es:
albero: informatica, botanica, nautica?
• Nel caso di barra di navigazione, come classificare un
documento che parla di finanziamento del governo alle società
calcistiche in pericolo di fallimento? Sport, politica, finanza?
• Nel web, i collegamenti che consentono di raggiungere i
contenuti sono intrinsecamente deboli, troppo generici e vaghi.
Collegamenti sintattici e semantici
• Le pagine web sono collegate sintatticamente mediante indici
che localizzano la URL della pagina. Questi collegamenti
permettono di identificare la pagina in modo univoco, e sono
dunque piuttosto solidi (problemi di aggiornamento a parte)
• La debolezza sta nei collegamenti semantici, cioè quelli che
dovrebbero definire il significato della pagina indicizzata.
• Oltre a portare in un determinato luogo (pagina web) un
collegamento dovrebbe descrivere il luogo in cui porta. Questa
funzione è la capacità semantica.
L’organizzazione delle pagine web
attualmente
Organizzazione delle pagine con
collegamenti semantici
Collegamenti Semantici: ne avete già
sentito parlare!
• Quando interroghiamo una base di dati, ad esempio una
biblioteca on-line, possiamo fare ricerche piuttosto raffinate, ad
esempio, chiedere “quali autori hanno scritto almeno due libri
sull’Information Retrieval”
• L’utente può formulare una richiesta che imponga precise
relazioni (“almeno due libri sull’IR”), e tali relazioni sono
stabilite fra concetti (“autore” e “libro”) anziché fra parole
chiave (non si ricerca la stringa “autore” o “libro”).
• Questo è possibile perché esiste uno schema del DB, cioè un
modello ed un insieme di regole che stabiliscono coe debbano
essere organizzati i dati
Schemi e collegamenti in un DB:
esempio
BOOK
Schema 1
title ISBN authors
name birthdate
AUTHOR
Schema
name
birthdate books
title
ISBN
Web Semantico: utilizzare schemi
per descrivere dominii di
informazione
• Tre livelli
– I dati (le pagine web)
– I metadati o annotazioni (collegamenti semantici)
– Lo schema (o ontologia) del dominio
PLACE
CITY
“..voli fra Parigi e New York
AirPort
kind_of
near
Building
kind_of
Ma cosa è il Semantic Web?
• Il “Semantic Web Wedding Cake”
Livello 1: URI
URI: universal resource identifier
include URL (locator, cioè ftp:.., http://…)
e URN un nome che identifica la risorsa
Unicode: assegna un unico numero ad ogni carattere,
indipendentemente dalla piattaforma, programma,
linguaggio. Lo Standard Unicode è stato adottato da:
Apple, HP, IBM, JustSystem,
Microsoft, Oracle, SAP, Sun, Sybase, Unisys ecc.
http://www.unicode.org/
Livello 2: annotazione
Annotazione: entità artificiali utilizzate per descrivere un
documento, una sua parte, o una intera collezione. Una
annotazione è una coppia (l,def) dove l è un label (ad
esempio creator) e def è una definizione più o meno
formalmente espressa del suo significato ed uso inteso
Annotazione manuali: linguaggi di mark-up (XML,
xmlschema..), metadati
Annotazione automatica: metodi di elaborazione
automatica del linguaggio naturale
Linguaggi di mark-up: XML eXtensible Markup Language
<header>
<title>Extensib le Markup Language (XML)</title>
<version>1.0 (Second Edition)</version>
<w3c-doctype>W3C Recommendation</w3c-doctype>
<pubdate><day>&draft.day;</day><month>&draft.month;
</month><year>&draft.year;</year></pubdate>
</author>
<author role="2e" diff="a dd"><name>Eve
Maler</name><affil iation>Sun Microsystems,
Inc. </affiliation><email
href="ma ilto:[email protected]">[email protected]
</email>
</author>
<abstract>
<p>The Extensible Markup Language (XML) is a subset of
SGML that is completely described in this document. Its
goal is to enable ge neric SGML to be served, receive d, and
processed on the Web in the way that is now possi ble with
HTML.
XML has been designed for ease of implementation and for
interoperability with both SGML and HTML.</p>
</abstract>
Livello 3: RDF resource description framework
Un modello generale (e minimalista) per fare asserzioni
semantiche su oggetti Web
Un “oggetto Web” è detto Risorsa. Una Risorsa è
qualsiasi entità identificabile mediante un URI (Uniform
Resource Identifier); ciò include pagine Web e documenti
XML.
Una Proprietà è una risorsa che ha un nome, per esempio
Author o Title. In molti casi, l’informazione è contenuta
nel nome stesso.
RDF (2)
• Uno Statement (asserzione) è la combinazione di una Risorsa,
una Proprietà ed un valore. Queste parti sono note come
soggetto, predicato e oggetto dell’asserzione.
Per esempio: "The Author of
http://www.textuality.com/RDF/Why.html is Tim Bray."
Il valore può essere una stringa, es: "Tim Bray" oppure un’altra
risorsa, per esempio:
"The Home-Page of
http://www.textuality.com/RDF/Why.html is
http://www.textuality.com."
RDF (3)
Queste proprietà astratte possono essere espresse usando
ancora XML,
Es:
</rdf:Description>
<rdf:Description ID="MotorVehicle">
<rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
<rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdfschema#Resource"/>
</rdf:Description>
<rdf:Description ID="Truck">
<rdf:type resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
<rdfs:subClassOf rdf:resource="#MotorVehicle"/>
Problemi dei linguaggi di
annotazione
RDF e XML hanno una semantica non esplicita,
ed inoltre l’annotazione è manuale.
Gran parte del testo è annotata con “tag”
generiche, che non descrivono il contenuto.
<abstract>
<p>The Extensible Markup Language (XML) is a subset of SGML that is
completely described in this document. Its goal is to enable generic SGML to
be served, received, and processed on the Web in the way that is now possible
with HTML.</p> …..
</abstract>
Il livello ontologico
Uno modello semantico (schema) ed un insieme di regole
per “ragionare” sui dati a disposizione.
Cos’è un’ontologia?
• Alcune definizioni:
– Filosofia: “a systematic explanation of being”
– Neches : “…defines the basic terms and relations including the
vocabulary of a topic area as well as the rules for combining terms and
relations to define extensions to the vocabulary.”
– Gruber, la più citata: “…an explicit specification of a
conceptualization”
– Borst, leggermente modificata:“…a formal specification of a
shared conceptualization”
– Guarino: “…a logical theory which gives an explicit, partial account
of a conceptualization”
Definizione formale di ontologia (1)
• 1. un insieme di concetti (detti anche classi),
• 2. le interconnessioni semantiche tra essi (dette
relazioni concettuali, o attributi semantici)
• 3. 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 microteorie).
Definizione formale di ontologia (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 CC.
– A è un insieme di assiomi (se A =  l’ontologia non
è assiomatizzata)
Definizione formale di ontologia (3)
• Si osservi che gli insiemi C ed R individuano un
grafo G = (V, E) tale che:
– VC
– E = { (c1, c2)  CC : S  R : (c1, c2)  S }
• e una funzione di etichettatura l : CC  2R tale
che l(c1, c2) = { S  R : (c1, c2)  S }.
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(p, a)” })
– è-un = { (Oggetto, Entità), (Persona, Entità), (Meccanico,
Persona), (Automobile, Oggetto), (Motore, Oggetto) }
– ha-un = { (Automobile, Motore) }
– ripara = { (Meccanico, Automobile) }
Esempio (2)
Entity
Kind_of
Kind_of
Person
Object
Kind_of
Kind_of
Kind_of
Engine
Has_part
Car
Repair
Mechanic
A cosa servono le ontologie?
• Migliorare la comunicazione fra persone e organizzazioni
• Favorire l’ interoperabilità fra sistemi
– Condividere metodi di modellazione, paradigmi, linguaggi,
e strumenti software
– Supportare l’ ingegnerizzazione di sistemi IT (Information
Technology):
» favorire riusabilità/condivisibilità : condivisione delle
rappresentazioni formali
» migliorare la ricerca: usata come meta-data per
indicizzare databases documenti e sistemi informativi in
generale
» esprimere specifiche: aiuta nell’identificare i
requirements di un sistema IT
» acquisire conoscenza (generalizzare ragionare)
UN CASO D’USO
SCHEDA
REF
820
TITOLO Discorso di Raffaello Lambruschini in occasione dell’adunanza tenuta in onore di
Vincenzo Gioberti
DESCRIZIONE
/ Raffaello Lambruschini. - [documento manoscritto]. 5 luglio 1853. - 8 c.
AUTORE
Lambruschini, Raffaello
INVENTARIO
58671
COLLOCAZIONE Busta 81.1394
NOTA Pubbl. in Atti, C. 31, 1853, p. 344.
KEYWORDS
Accademia dei Georgofili
Annotazioni o
metadati
Un caso d’uso: recupero/classificazione di
documenti
• Supponiamo che ad un documento storico digitalizzato sia associato il
seguente descrittore: “Discorso di Raffaello Lambruschini in occasione
dell’adunanza tenuta in onore di Vincenzo Gioberti”.
• Un sistema di information retrieval “classico” può estrarre le 4 parole
chiave: discorso, Raffaello Lambruschini , adunanza, Vincenzo Gioberti, e
con queste indicizzare il documento.
• Sinonimia: Ad esempio, la parola adunanza ha, nella lingua italiana, i
seguenti sinonimi : riunione, adunata, incontro, raduno, assemblea,
consiglio, convegno, simposio, compagnia, folla, assembramento, e molti
(se non tutti) fra questi termini avrebbero potuto essere usati dall’autore della
descrizione in esame.
• Una annotazione del tipo “meeting, get toghether” (il nome dell’annotazione
è tratto dal lessico semantico on-line WordNet 1.7 ) potrebbe riconoscere
SCHEDA
REF
820
TITOLO Discorso/ORAL_COMMUNICATION di Raffaello Lambruschini/PEDAGOGIST in
occasione dell’adunanza/MEETING tenuta in onore di Vincenzo Gioberti/PHYLOSOPHER
DESCRIZIONE
/ Raffaello Lambruschini. - [documento manoscritto]. 5 luglio 1853. - 8 c.
AUTORE
Lambruschini, Raffaello
INVENTARIO
58671
COLLOCAZIONE Busta 81.1394
NOTA Pubbl. in Atti, C. 31, 1853, p. 344.
KEYWORDS
Accademia dei Georgofili
GRUPPO
RELAZIONE_SOCIALE
STUDIOSO
GRUPPO_SOCIALE
COMUNICAZIONE
FILOSOFO PEDAGOGO
COMUNICAZIONE_ORALE
discorso
Vincenzo Gioberti
INCONTRO
adunanza
Raffaello Lambruschini
Core Ontology
GRUPPO
RELAZIONE_SOCIALE
STUDIOSO
GRUPPO_SOCIALE
COMUNICAZIONE
FILOSOFO PEDAGOGO
INCONTRO
COMUNICAZIONE_ORALE
Vincenzo Gioberti
Raffaello Lambruschini
DESCRIZIONE: comunicazione_orale, filosofo:Vincenzo_Gioberti,
pedagogo: Raffaello_Lambruschini, incontro
Un caso d’uso: navigazione
assistita e storytelling
“Nel 1483 approntò i disegni preparatori per il m onumento
equestre in bronzo a Francesco Sforza e firmò il co ntratto con
la confraternita della Concezione per la Vergine delle rocce.
Nella "Vergine delle rocce" dipinta tra il 1483 e il 1486, la
composizione a piramide del gruppo costituito dalla Madonna, dal
Bambino, da S. Giovannino e da ll'Angelo è a rricchita e
movimentata dall'incrociarsi di linee convergenti indicate dai
gesti. La tecnica dello sfumato, il morbidissimo chiaroscuro
tipico di Leonardo si sovrappone al disegno, e n e sfalda i
contorni. “
Chiaroscuro
Painting techniques
In drawing, painting, and the graphic
arts, the rendering of forms through a
balanced contrast between light and
dark areas. The technique which was
introduced during the Renaissance, is
effective in creating an illusion of depth
and space around the principal figures
in a composition. ...
Una mini-ontologia delle tecniche
pittoriche (estratta automaticamente)
stipple
technique
painting
rendering
monotype
framing
combining
etching
acquaint
matting
chiaroscuro
photomontage
collage
assemblage
gouache
conservation
framing
dry
mount
color-stencilpainting
serigraph
Esempio 2: Interoperabilità fra
servizi web
Sistema di prenotazioni
ferroviarie (Agente 2)
Segreteria Elettronica
(Agente 1)
KB1
- Riunione
- Orario di lavoro
- Sede di lavoro
- Viaggio
- ……..
- Città di partenza
- Città di arrivo
- Data di partenza
- Ora del giorno
- ……..
KB2
ma:
cittaDiPartenza := sedeDiLavoro;
cittaDiArrivo := luogoDelMeeting;
E se cittaDiPartenza si chiama CittaPart o
DepartureCity?
Interoperabilità fra servizi web (2)
Top Ontology
City
Sede-Lavoro
Agent 1 Ontology
Città_Part
Città_Arr
Agent 2 Ontology
Esempio 3 E-learning
Un messaggio inviato dal destinatario al
mittente per informarlo che il frame è
arrivato correttamente
SebRow - sviluppato nel progetto
2003-2004
E-learning
• E’ un “servizio” quindi in realtà rientra nel caso
dell’esempio precedente
• Navigazione “semantica” dei corsi
• Classificazione materiale didattico
• Reperimento di materiale didattico (ricerca per
concetti)
Problemi (alcuni..)
• Ontologie (punti di vista) non identici, ma
condivisi
• Sistemi già esistenti: possono mantenere la propria
struttura, ma se vogliono comunicare devono avere
un protocollo comune
• Ontologie esistenti compatibili in parte: per ora,
quindi, soluzione parziale
• Poichè necessita anche comunicazione uomo-macchina,
condivisione delle ontologie anche tra macchine ed
esseri umani
Ontologie: Problemi di ricerca
• E’ un’area di ricerca che si è molto
espansa nell’ultima decade
Metodologie
Costruzione
Gestione
Fusione
Ontologie
Traduzione
Mapping
Riuso
Aggiornamento
Strumenti
Apprendimento
Valutazione
Linguaggi
Prossime lezioni
•
•
•
•
Linguaggi
Metodologie
Strumenti
Esempi di ontologie esistenti
Scarica

ppt