1 / 59

DAL WEB AL SEMANTIC WEB Aspetti teorici e tecnologici Carmagnola Francesca

DAL WEB AL SEMANTIC WEB Aspetti teorici e tecnologici Carmagnola Francesca Dipartimento Informatica C.so Svizzera 185, Torino carmagnola@di.unito.it. TIRIAMO LE FILA DEL DISCORSO.

vevina
Download Presentation

DAL WEB AL SEMANTIC WEB Aspetti teorici e tecnologici Carmagnola Francesca

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DAL WEB AL SEMANTIC WEB • Aspetti teorici e tecnologici • Carmagnola Francesca • Dipartimento Informatica • C.so Svizzera 185, Torino • carmagnola@di.unito.it

  2. TIRIAMO LE FILA DEL DISCORSO • Al momento molti degli sforzi del WWW hanno uno scopo: generare informazioni che non siano soltanto destinati alla lettura, ma che possano essere riutilizzati per applicazioni automatiche • Non c’è niente in un documento HTML che indichi l’argomento trattato o la fonte delle informazioni. L’unico tipo di ricerca che si può fare su un documento è la ricerca manuale sul contenuto • Il W3C considera l’ideale, futura evoluzione del Web quella dal machine-representable al machine-understandable • Le metainformazioni permettono agli autori di specificare informazioni sui loro documenti (informazioni su informazioni) che siano non soltanto leggibili, ma anche interpretabili in maniera intelligente dalle applicazioni di rielaborazione, (es. dai motori di ricerca). • L'utilizzo di meta-informazioni porta al Web di seconda generazione: il Web Semantico

  3. SEMANTIC WEB • L’idea è di generare documenti che possano al tempo stesso essere letti ed apprezzati da esseri umani, ma anche acceduti ed interpretati da agenti automatici che potranno agire come agenti di ricerca, filtri di informazioni o intermediari (brokers) nelle comunicazioni • Il Web si deve dunque dotare di una sovrastruttura per l’interoperabilità semantica tra le applicazioni, in modo da poter svolgere quelle funzioni che oggi debbono essere fatte a mano o codificate dentro ai programmi • Questo porta al web semantico, in cui non esprimo testi (all'interno dei quali le informazioni stanno nascoste e richiedono un umano), ma affermazioni (informazioni non ambigue, che esprimono relazioni tra oggetti, risorse, esseri umani, fatti del mondo reale, e che possono essere utilizzate anche da applicazioni automatiche) • Il Semantic Web NON risulta separato e distinto del Web odierno, ma è piuttosto una sua estensione

  4. OBIETTIVI DEL SEMANTIC WEB Le pagine HTML contengono informazioni che possono essere lette dalle persone Occorre navigare manualmente, leggere diverse pagine prima di trovare le informazioni che interessano

  5. OBIETTIVI DEL SEMANTIC WEB La stessa pagina può essere fornita in RDF con dati e metadati che possono essere letti dalle macchine, per esempio: /Computers/Internet/WWW/ index.rdf Un software può leggere i metadati in RDF e decidere se i dati trovati sono rilevanti o come procedere con la ricerca.

  6. COME REALIZZARE IL SEMANTIC WEB? In questi ultimi anni si sono fatti molti sforzi per fornire tecnologie in grado di estendere il Web così come lo conosciamo oggi verso una dimensione semantica, implementando i concetti di Ontologia, Agente Intelligente e Annotazione semantica Le tecnologie coinvolte per questo sviluppo sono molteplici: • URI, un meccanismo generico per identificare risorse • XML, una meta-sintassi utilizzabile da ogni applicazione • RDF, un linguaggio per esprimere affermazioni Linguaggi per la creazione di ontologie (DAML+OIL, OWL)

  7. SEMANTIC WEB LAYER CAKE Il Web semantico è stato pensato dal W3C come un oggetto costruito attraverso strati sovrapposti di linguaggi. Ogni nuovo strato usa o estende gli strati precedenti { ONTOLOGIE { METADATI Semantic Web Layer Cake [Barners-Lee, 2003] DATI DATI DATI DATI

  8. OBIETTIVI DEL SEMANTIC WEB • Supportare tecnologie che consentano lo scambio globale di informazione • Condividere dati e metadati • Realizzare appieno le potenzialità del Web • Rendere efficiente e conveniente la memorizzazione della conoscenza • Rendere l’informazione accessibile in maniera automatica ad agenti software • Favorire il riuso dell’informazione • Integrare contenuti esistenti sul Web

  9. Ottimizzare la ricerca di informazioni da parte degli utenti coi motori di ricerca • Creare correlazioni semantiche tra pagine appartenenti a domini diversi • Rendere possibile l’automazione di transazioni commerciali • Garantire un livello di fiducia nella bontà delle risposte ottenute

  10. LE ONTOLOGIE

  11. ONTOLOGIE Metadati strutturati secondo un ordine logico. Vengono espresse le relazioni fra i metadati (concetti) METADATI Descrivono i dati riportandoli ai concetti di uno schema. DATI distribuiti nel Web (pagine web) Esigenza di introdurre metadati (dati che descrivonodati) per mappare i dati rispetto a classi, o concetti, di questo schema di dominio

  12. MOTIVAZIONI ALL’USO DELLE ONTOLOGIE • Per raggiungere gli obiettivi evidenziati, occorre perseguire l’integrazione fra le informazioni sul web • Integrazione di informazioni • L’integrazione di dati eterogenei presuppone che le applicazioni condividano lo stesso linguaggio Condivisione di conoscenza Diverse applicazioni accedono alla medesima conoscenza Riuso di conoscenza Diverse applicazioni riusano la medesima conoscenza

  13. ESEMPIO Dominio Psicologico: una disfunzione? Che cos’è? ? In relazione a uomo o animale? Mucca Pazza Zoologia: un tipo di mucca? Dominio Medico: una malattia?

  14. Occorre eliminare la confusione terminologica e concettuale ed individuare le entità cui un pacchetto di conoscenza si riferisce Organizzare e rendere esplicito il significato referenziale permette di comprendere l’informazione Condividere questa comprensione facilita il recupero e il riutilizzo della conoscenza tra agenti e in contesti diversi ONTOLOGIE

  15. COSA SONO LE ONTOLOGIE La parola Ontologia non ha un unico significato Nell’ambito della filosofia, rappresenta una branca della metafisica che studia la natura di ciò che esiste. E’ legato alla teoria dell'esistenza che si occupa di dare risposte a domande del tipo: cos’è l’esistenza? Quali proprietà possono spiegarla? Come queste proprietàla spiegano? Nell’ambito dell’Intelligenza Artificiale, indica la specificazione di unaconcettualizzazione ovvero una descrizione formale di un insieme di concetti e delle relazioni che intercorrono tra essi. Indica in sintesi, una classificazione tassonomica delle componenti di un dominio che vengono rappresentati in classi e sottoclassi In quest’ultima accezione, il termine Ontologia sta diventando sempre più comune tra gli utenti e gli sviluppatoridel Web

  16. QUALCHE DEFINIZIONE “Un’ontologia fornisce i termini per descrivere esplicitamente la concettualizzazione che sta dietro la conoscenza rappresentata nella base di conoscenza” [Bernaras&other, 96] “L’ontologia e’ vista come un vocabolario (tassonomia) di concetti, che rappresenta un determinato dominio di interesse, dotato di un insieme di relazioni tra i concetti stessi che consentono di capire come sono legati fra loro” [Josephson&other, 99] “Un’ontologia e’ una collezione di frasi che definiscono le relazioni tra concetti e specificano le regole logiche” [Tim Berners-Lee, 99]

  17. “L’ontologia e’ una esplicita e formale rappresentazione di una concettualizzazione condivisa” [Gruber, 96] • “concettualizzazione”: modello astratto e semplificato che identifica i concetti rilevanti del mondo che noi desideriamo rappresentare • “esplicita”: i tipi di concetti usati e le restrizioni devono essere definiti dichiaratamente • “formale”: deve essere “machine-understanstandable” • “condivisa”: una ontologia cattura una conoscenza consensuale, non ristretta a qualche individuo

  18. LA CONCETTUALIZZAZIONE “Concettualizzazione”: modello astratto e semplificato che identifica i concetti rilevanti del mondo che noi desideriamo rappresentare Essa e’ indipendente dal vocabolario usato (es.lingua) Differenti situazioni possono coinvolgere lo stesso concetto descritto attraverso vocabolari diversi. Differenti situazioni possono coinvolgere la stessa concettualizzazione MELA APPLE

  19. IN SINTESI… In sintesi, un’ontologia descrive formalmente il dominio di un discorso e consiste in: • una lista finita di termini che denotano concetti (ossia classi di oggetti) del dominio • relazioni: gerarchie di classi, proprietà, restrizioni di valori, relazioni logiche e di disgiunzione • Un’ontologia è un documento che descrive la semantica dei termini di un dominio di conoscenza attraverso le loro relazioni.

  20. ONTOLOGIE E SEMANTIC WEB L’introduzione delle ontologie nel Web consente: • interoperabilità: condividere una comprensione comune della struttura dell’informazione in un gruppo • riuso della conoscenza del dominio, per non duplicare sforzi nello sviluppo di sistemi software • separazione della conoscenza dichiarativa sul dominio dalla conoscenza procedurale • comunicazione tra agenti sw e tra sw e umani, fornendo una terminologia comune • esplicitare le assunzioni sul dominio

  21. ONTOLOGIE E SEMANTIC WEB Web attuale Ontologie informazioni in diversi formati descrivendo in modo formale i contenuti di ogni sorgente, possono essere utile per facilitare il processo di ricerca su fonti eterogenee

  22. ONTOLOGIE E SEMANTIC WEB Web attuale Ontologie Mancanza di struttura descrivono in modo strutturato (XML-based) i contenuti di ogni sorgente

  23. ONTOLOGIE E SEMANTIC WEB Web attuale Ontologie Ambiguità semantica definendo mediante un’ontologia il contesto di riferimento, i termini utilizzati sono relazionati a quell’ambito (interoperabilità semantica)

  24. IN SINTESI… L’introduzione delle ontologie nel Web: • consente la strutturazione delle informazioni • consente di esplicitare relazioni semantiche • permette di superare alcuni aspetti critici del Web tradizionale

  25. ESEMPIO Africa world life Animal Plant Herbivore Carnivore Tree Giraffa Leon Pioppo Dominio: africa world life

  26. TRADUCENDO IN UN FORMALISMO SEMANTICO… <?xml version="1.0" encoding="utf-8"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl="http:// www.w3.org/1999/02/owl#"> ... <owl:Ontology rdf:about =“xml:base “ /> <owl:Class rdf:ID=“animal“ > <rdfs:Comment >classe degli animali </rdfs:Comment > </owl:Class> <owl:Class rdf:ID=“plant“ > <rdfs:Comment >classe delle piante, disgiunta da animali </rdfs:Comment > <owl:DisjointWith rdf:resource=“animal“ > </owl:Class> <owl:Class rdf:ID=“tree“ > <rdfs:Comment >classe delle alberi, sottoclasse d alberi </rdfs:Comment > <rdfs:SubClassOf rdf:resource=“plants“ > </owl:Class>

  27. TIPI DI ONTOLOGIE Domain independent Example:medicine,physics,etc.. Example:selling,teaching,etc..

  28. FEMMINA PERSONA DONNA GENITORE MADRE PADRE ELEMENTI DELLE ONTOLOGIE Classi Generalmente organizzati in tassonomie, ovvero attraverso relazioni di specializzazione e generalizzazione. La “classe” viene utilizzata per descrivere i concetti (le classi di individui) che si vuole rappresentare (es. PERSONA, GENITORE, MADRE…)

  29. v/r FEMMINA PERSONA ha_figli DONNA GENITORE (1,n) is_a PADRE MADRE ELEMENTI DELLE ONTOLOGIE Proprieta’ e attributi Rappresentano le relazioni esistenti tra le classi del dominio (es. “le MADRI sono GENITORI”, “i GENITORI hanno figli che sono PERSONE”…)

  30. GENITORE MADRE PADRE disjoint ELEMENTI DELLE ONTOLOGIE Assiomi • Vengono utilizzati per modellare in maniera esplicita espressioni in ogni caso vere • Possono essere utilizzati per diversi scopi: definire il significato dei vari componenti dell’ontologia, definire relazioni complesse, verificare la correttezza dell’informazione specificata o dedurre nuova informazione (es. disjoint (MADRE, PADRE) esprime il fatto che un elemento della classe PADRE non può mai essere anche un elemento della classe MADRE)

  31. FEMMINA PERSONA DONNA GENITORE MADRE PADRE Luca, Claudio,… Luisa, Anna, Maria,… ELEMENTI DELLE ONTOLOGIE Individui (o Istanze) Sono i singoli oggetti contenuti in una classe, a vari livelli di generalità, a seconda dello scopo dell’ontologia

  32. ELEMENTI DELLE ONTOLOGIE Il contenuto di un’ontologia è quindi rappresentato da: • Un insieme di classi (concetti – astrazioni del mondo reale). • Un insieme di relazioni (tra 2 classi); un esempio è la relazione IS_A • Un insieme di assiomi • Un insieme di individui Una base di conoscenza (knowledge base) sulla quale poter eseguire elaborazioni è data allora da: • Ontologia + Istanze delle classe dell’ontologia

  33. Ontologie: metodologia Progettare un’ontologia significa: • Definire le classi • Organizzare le classi un una gerarchia tassonomica (subclass-superclass) • Definire le proprietà e descrivere i valori leciti per ciascuna di esse • Attribuire i valori alle proprietà per tutte le istanze create

  34. Ontologie: metodologia • L’ontologia deve riflettere la realtà del mondo che cerca di modellare • Non vi è un metodo corretto a priori per modellare un dominio di conoscenza • La soluzione migliore dipende dall’applicazione prevista e dalle sue estensioni future

  35. Ontologie: metodologia Approcci possibili: • Top-down si parte dalla definizione dei concetti più generali e si specializzano tali definizioni in concetti più specifici • Bottom-up: si parte dalla definizione delle classi più specifiche e si cerca di raggrupparle in gruppi concettuali più astratti

  36. Ontologie: metodologia Steps[1] • Determinare il dominio e lo scopo dell’ontologia • Considerare la possibilità di riusare ontologie esistenti • Elencare i termini principali dell’ontologia • Definire le classi e la gerarchia tra le classi • Definire le proprietà delle classi • Definire vincoli sulle proprietà • Creare le istanze [1]Noy, McGuinness, “Ontology Development 101: A Guide to Creating Your First Ontology ”,2001

  37. Ontologia “Associazione Culturale” “Una associazione culturale vuole tenere traccia degli eventi che si svolgono nella propria città: in particolare si vuole sapere la data dell’evento , la sua tipologia, e una sua breve descrizione. Di ogni evento si vuole inoltre sapere il luogo in cui si svolge, specificandone il nome, l’indirizzo, la capienza ed il proprietario. Si vuole inoltre tener traccia degli artisti che partecipano all’evento ed il loro ingaggio. Un artista può partecipare a più eventi. Di ogni artista si vuole sapere nome, cognome e la sua arte. Inoltre ad ognuno viene assegnato un voto di interesse compreso tra 1 (noioso) a 5 (fenomenale). Per ogni evento deve infine essere identificato l’organizzatore (nome, indirizzo, telefono);ogni evento ha un solo organizzatore. ”

  38. Ontologie: Steps AD ESEMPIO Determinare il dominio e lo scopo dell’ontologia • Quale e’ il dominio che deve essere descritto dall’ontologia? • Per quale scopo creiamo l’ontologia? • Come vogliamo utilizzarla? • A quali tipi di domande l’ontologia dovrebbe fornire una risposta? Dominio degli eventi in un comune; l’ontologia sarà usata per tenere traccia di eventi, artisti e luoghi. Le domande tipiche saranno: Quali eventi si svolgono in un dato luogo ? Quali artisti partecipano ad un dato evento ? …

  39. AD ESEMPIO Potrebbe già esistere una ontologia che descrive luoghi fisici, e che potrebbe essere importata nell’ontologia dell’associazione culturale Ontologie: Steps http://swoogle.umbc.edu/ Considerare la possibilità di riusare ontologie esistenti • Perché riusare ontologie esistenti? • Per risparmiare sforzi progettuali • Per usare ontologie che sono state già validate attraverso validatori

  40. Ontologie: Steps Considerare la possibilità di riusare ontologie esistenti • Quali ontologie esistenti? • Ontologie generali • WordNet (www.cogsci.princeton.edu/~wn/) • Ontologie specifiche di dominio • GO-Gene Ontology- (http://www.geneontology.org/)

  41. Ontologie: Steps Considerare la possibilità di riusare ontologie esistenti • Cosa riusare delle ontologie esistenti? • Librerie ontologiche • DAML ontology library (www.daml.org/ontologies) • Ontolingua ontology library (www.ksl.stanford.edu/software/ontololingua) • Protege ontology library (protege.stanford.edu/plugins.html) • Ontologie top level • Cyc (www.cyc.com)

  42. Ontologie: Steps AD ESEMPIO Termini riguardanti il dominio degli eventi potrebbero essere: data dell’evento , luogo dell’evento, artista partecipante, indirizzo, organizzatore, capienza del luogo, tipo di evento ….. Elencare i termini principali dell’ontologia • Quali sono i termini di cui abbiamo necessità di parlare? • Quali sono le proprietà di questi termini? • Cosa vogliamo rappresentare con questi termini?

  43. Ontologie: Steps Definire le classi e la gerarchia tra le classi • Definire le classi • I concetti (le classi) corrispondono solitamente ai sostantivi utilizzati nel dominio di conoscenza • È importante distinguere tra le classi e i relativi nomi • Le classi rappresentano concetti nel dominio,e non le parole usate per esprimere tali concetti • I sinonimi non costituiscono classi diverse

  44. Ontologie: Steps Definire le classi e la gerarchia tra le classi • Definire la gerarchia fra le classi • Le relazioni gerarchiche sono transitive: se B è sottoclasse di A e C è sottoclasse di B, allora C è sottoclasse di A • Le sottoclassi solitamente hanno: • proprietà aggiuntive che la superclasse non possiede, • hanno restrizioni diverse da quelle della superclasse, • partecipano in relazioni diverse dalla superclasse

  45. Ontologie: Steps AD ESEMPIO Dalla lista di termini precedenti: Musicista, scrittore, pittore….sono sottoclassi della classe artista, cioè tipi possibili di artista Definire la gerarchia tra le classi • Definire la gerarchia fra le classi • La gerarchia delle classi rappresenta la relazione “is-a” • Una sottoclasse di una classe rappresenta un concetto che è un “tipo possibile di” rispetto al concetto rappresentato dalla superclasse

  46. Ontologie: Steps AD ESEMPIO La classe artista ha come proprietà: nome, cognome, voto (attributi) e partecipa_a (relazione). La sottoclasse musicista eredita da artista le proprietà nome cognome voto partecipa_a, e possiede in più la proprietà genere_musicale. Definire le proprietà delle classi • Le proprietà (“slot”) degli oggetti possono corrispondere ad aggettivi e a verbi: • Proprietà “intrinsiche” (il gusto di un vino) • Proprietà “estrinsiche” (il nome di un vino) • Relazioni con altri soggetti (costruttore di ...)

  47. Ontologie: Steps AD ESEMPIO Lo slot voto dellaclasse artista è di tipo numerico, di cardinalità singola (un artista può avere un solo voto), ha un valore minimo pari a 1 e un voto massimo pari a 5, ed ha un valore di default pari a 3 (si suppone cioè che un’artista abbia generalmente un gradimento medio). Definire le proprietà delle classi • Le proprietà possono avere diverse restrizioni (“facet”): • Cardinality • Value type • Domain • Range

  48. Ontologie: Steps Definire le proprietà delle classi • Cardinality: quanti valori posso avere in uno slot • Cardinalità minima • Cardinalità minima 1 significa che gli slot devono avere almeno 1 valore • Cardinalità minima 0 significa che gli slot possono avere nessun valore • Cardinalità massima • Cardinalità massima 1 significa che gli slot devono avere al massimo 1 valore

  49. Ontologie: Steps Definire le proprietà delle classi • Value type: tipo di dato • String: stringa di caratteri (“Prof.Silmon”) • Number: un intero o un decimale (“32”, 4,5”) • Boolean: valore vero/falso • Enumerated type: una lista di valori permessi (“alto, medio, basso”) • Complex type: un’istanza di un’altra classe

  50. Ontologie: Steps ADESEMPIO La relazione artista partecipa_aevento viene rappresentata nella classe artista come slot di tipo Instance: a tale slot potranno essere quindi assegnate solo istanze; inserendo l’ulteriore vincolo che tale istanze siano solo quelle della classe evento, la relazione viene quindi realizzata. In un mondo in cui tutti i musicisti sono bravi, si potrebbe inserire una restrizione sullo slot voto che il musicista eredita da artista, imponendo valori solo superiori a 4. Definire le proprietà delle classi • Domain: a quali classi si applica questo slot • Range: classi permesse per gli slot definibili sulle istanze

More Related