1 / 44

Metodi e strumenti per l’annotazione semantica

Metodi e strumenti per l’annotazione semantica. Nunzia Osimi Tesista di Informatica presso il LEKS-CNR 14 Novembre 2003. Indice. Introduzione al Web Semantico Interoperabilità e ontologie L’annotazione semantica Criteri di classificazione delle AS Alcuni tool per l’annotazione semantica

york
Download Presentation

Metodi e strumenti per l’annotazione semantica

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. Metodi e strumenti per l’annotazione semantica Nunzia Osimi Tesista di Informatica presso il LEKS-CNR 14 Novembre 2003

  2. Indice • Introduzione al Web Semantico • Interoperabilità e ontologie • L’annotazione semantica • Criteri di classificazione delle AS • Alcuni tool per l’annotazione semantica • Conclusioni

  3. Semantic Web: Motivazioni • Intento Originale: rendere la semantica delle informazioni accessibile agli elaboratori • Nel web attuale: necessario l’intervento umano per comprendere il contenuto di risorse • Obiettivo: rendere l’informazione “machine-understandable” • Soluzione: Utilizzare i metadati • Passo successivo: Interoperabilità Semantica • combinare informazioni provenienti da sorgenti diverse ai fini di realizzare: • estrazione intelligente, cioè semantica (“Smart” retrieval) • Scambio di informazioni tra applicazioni software • Web Services: ricerca e composizione di servizi

  4. Come realizzare l’interoperabilità? • Vocabolario controllato l’interoperabilità migliora se gli stessi termini sono usati per denotare gli stessi concetti • Ontologie • Elementi principali • Un vocabolario controllato • Relazioni tassonomiche tra concetti • Altre relazioni tra concetti

  5. Cos’è un’ ontologia? • Definizioni • “…an explicit specification of a conceptualization” (Gruber) • “…a formal specification of a shared conceptualization” (Borst) • “explicit” i tipi di concetti utilizzati e i vincoli su di essi sono definiti in modo esplicito. • “formal” definita in un ling. formale. • “shared” la conoscenza rappresentata in un’ontologia non è scaturita dalla decisione di un singolo individuo, ma è riconosciuta da una collettività. • “conceptualization“ perchè un’ ontologia identifica i concetti rilevanti di un dominio applicativo stabilito.

  6. Generalità sulle ontologie • Come costruire un ontologia? • Nominando una commissione ad hoc … ma è necessaria una metodologia • Ad esempio, il Dublin Core ha impiegato anni per enucleare 15 elementi metadato principali. • approccio “Darwiniano” : • l’ontologia migliore/la più popolare prevale • Come combinazione di standard officiali e de-facto • Sono in corso progetti per la def. di “upper ontology” • le Ontologie consentono deduzioni (reasoning) • Ciò permette di spostarsi dall’elaborazionedella “sintassi” a quella della “semantica” . • ma: da dove scaturiscono i “dati semantici”? • Semantic Annotation

  7. Annotazioni Semantiche • Sono informazioni semantiche associate a risorse web. • Perché si usano? • Per arricchire il contenuto informativo dei documenti • Per esprimere in maniera formale, il significato di : • Porzione di testo in un documento • Web service • Strutture dati coinvolte in un processo di collaborazione (interoperabilità tra applicazioni software)

  8. Knowledge Resource Management Ontologia The Internet Utenti Meta-KR KR: Knowledge Resources

  9. Criteri per classificare le annotazioni • Livello di formalità del linguaggio usato • Posizionamento dell’annotazione • Destinatario dell’annotazione • Tipo di risorsa annotata • Livello di restrizione imposto sullinguaggio. • Modalità di annotazione

  10. Livello di formalità del linguaggio usato • formale • espressa in un linguaggio formale di rappresentazione della conoscenza • Alcuni linguaggi • RDF e RDFS: un framework per esprimere i metadati nel web • DAML, DAML+OIL, OWL sono usati per la definizione di ontologie • Permette di processare i dati senza l’intervento umano (machine understandable) • informale • Espressa in linguaggio naturale o in un linguaggio controllato • Permette di aggiungere informazioni su documenti o risorse, fruibili da un utente umano

  11. Esempio • Esempio Annotazione Formale in RDF <Researcher rdf:about=“file:///C:\…\PagineHtml\Michele Missikoff.htm#Michele Missikoff"> <first_Name> Michele </first_Name> <last_Name> Missikoff </last_Name> <has_affiliation rdf:resource=“file:///C:\…\Michele Missikoff.htm#IASI - CNR"/> </Researcher> • Esempio Annotazione Informale in linguaggio naturale Michele Missikoff un ricercatore dello IASI-CNR.

  12. Posizionamento dell’annotazione • Embedded • inserita all’interno dello stesso documento annotato • Attached • Memorizzata separatamente, collegata al documento da un link. <html> … <annot> … </html> annot <html> … </html>

  13. Destinatario dell’annotazione • Human user • Ha lo scopo di fornire informazioni aggiuntive su una risorsa • in questo caso l’annotazione in genere sarà pocoformale probabilmente realizzata in linguaggio naturale • Computer • Ha lo scopo di esplicitare il significato di una risorsa • in tal caso l’annotazione deve essere di tipo formale per poi essere processabile da una macchina

  14. Tipo di risorsa annotata • Annotazione di documenti • Frammento di testo, pagina HTM, immagini, ecc. • Annotazione di Web Services • Esprimere cosa fa un servizio, descrivere i parametri di input e l’output • Solitamente è di tipo formale • Annotazione di strutture dati, processi,… • coinvolti nello scambio di informazioni tra applicazioni software che cooperano • Solitamente è di tipo formale, ontology-based

  15. Livello di restrizione imposto al linguaggio • Absence • i termini del linguaggio possono essere usati senza vincoli • Advised (consigliato…) • si è liberi di scegliere se utilizzare o meno un glossario, un ontologia, (o anche parole chiavi) in alternativa al linguaggio naturale. • Mandatory (vincolante) • C’è l’obbligo di usare un glossario di riferimento o un ontologia (Annotazione Ontology-based)

  16. Modalità di Annotazione NB. questa classificazione riguarda solo le SA Ontology-based • Annotazione attraverso istanze di concetti • L’annotazione consiste in • Associazione di una istanza all’elemento annotato • Valorizzazione delle proprietà che descrivono l’istanza • Annotazione attraverso concetti • L’annotazione consiste in • Associazione di un concetto dell’ontologia all’elemento annotato • Associazione di una composizione di concetti dell’ontologia (attraverso opportuni operatori) all’elemento annotato

  17. Annotazione attraverso concetti Ontologia Person name Michele Missikoff è un <Researcher> ricercatore </Researcher> dello IASI CNR address Is a Is a Is a Student Researcher Annotazione attraverso istanze Faculty_Member <IDMicheleMissikoff> Michele Missikoff </IDMicheleMissikoff> è un ricercatore dello IASI CNR Instance of IDMicheleMissikoff

  18. Classificazione di alcuni tool documenti Si Annotea Melita

  19. Tool Analizzati • Si è riuscito ad annotare con: • OntoMat-Annotizer • Mnm • Smore • Problemi : • Cohse (problemi d’istallazione) • Melita (eseguibile non fornito)

  20. Esempio Has_affiliate Person Organization Has affiliation Is a Is a Is a Is a Is a Researcher Student Is a University Reserch funding Institution Faculty_Member Instance of Michele Missikoff Instance of IASI-CNR

  21. Ontomat (caratteristiche generali) • Visualizzazione dell’ontologia (in DAML+OIL) mediante albero • Browser per l’esplorazione dell’ontologia e delle istanze • Browser Html che visualizza le parti di testo annotate. • Implementato in Java, permette l’estensione tramite plugin • Le annotazioni avvengono mediante drag’n’drop

  22. Ontomat • Input : • ontologia (DAML+OIL) • pagina html • Output : • Pagina Html con annotazioni inserite nell’ header • Istanze esportate (annotazione in DAML+OIL) • Ontologia (DAML+OIL) • Ontologia + Istanze (DAML+OIL).

  23. Annotazione(istanza esportata da OntoMat) <rdf:RDF ... > <Research_Funding_Institution rdf:about="http://…\Michele Missikoff.htm#IASI-CNR"> <address> Viale Manzoni,30 </address> <country> Italy </country> <location> Rome </location> <name> IASI-CNR </name> <has_affiliate rdf:resource="http://…\Michele Missikoff.htm#Michele Missikoff"/> </Research_Funding_Institution> …

  24. …esempio … <Researcher rdf:about="http://…\Michele Missikoff.htm#Michele Missikoff"> <first_Name> Michele </first_Name> <last_Name> Missikoff </last_Name> <has_affiliation rdf:resource="http://…\Michele Missikoff.htm#IASI-CNR"/> </Researcher> </rdf:RDF>

  25. Pro e contro di OntoMat (1) PRO • Interfaccia User-friendly • Chiara distinzione tra classi, attributi, relazioni e istanze • Fornisce l’help on line (Wizard) • Estendibile ad altri linguaggi tramite plugin.

  26. Pro e contro di OntoMat (2) CONTRO • Impone vincoli sulla visualizzazione delle proprietà che descrivono una classe: una proprietà P può essere utilizzata per descrivere una istanza di una classe C, soltanto se C è stata definita attraverso un "restriction“ su P • Non effettua reasoning: non gestisce in modo automatico l’inversa di una relazione • L’importazione di “ontologia+istanze” non avviene in modo corretto: le istanze non vengono caricate automaticamente.

  27. Mnm (caratteristiche generali) • Browser • Browser Html • Browser dell’ontologia • Mark-up del testo • Apprendimento automatico (Amilcare) • Annotazione semi-automatica

  28. Mnm (I/O) • Input: • ontologia in DAML/ DAML+OIL/ RDF • Pagina Html. • Output: • Base di conoscenza rappresentante l’annotazione del documento in DAML/ DAML+OIL/ RDF • File “dummy” (proprietario) che mantiene il collegamento tra annotazione e documento.

  29. Annotazione (base di conoscenza salvata con MNM) <rdf:RDF…. > <rdf:Description rdf:about='file:/…/MnM2/ KbCreated/Misha1.rdf#Michele Missikoff'> <rdf:type rdf:resource='file:/…/MnM2/Ontologies/ s_community.rdfs#Person'/> <NS0:name>Michele Missikoff</NS0:name> <NS0:worksAt>LEKS</NS0:worksAt> </rdf:Description> …

  30. …esempio … <rdf:Description rdf:about='file:/…/MnM2/ KbCreated/Misha1.rdf#LEKS'> <rdf:type rdf:resource='file:/…/MnM2/Ontologies/ s_community.rdfs#Organisation'/> <NS0:title>Lab for Ent. Knowledge Systems </NS0:title> <NS0:location>IASI-CNR</NS0:location> </rdf:Description> … </rdf:RDF>

  31. Pro e contro di MNM (1) PRO • La parte di testo annotata è facilmente riconoscibile perché evidenziata in diversi colori • Possibilità di definire le annotazioni attraverso form o tramite selezione del testo • Effettua Apprendimento automatico (Amilcare)

  32. Pro e contro di MNM (2) CONTRO • Struttura ontologia è poco intuitiva • Presuppone conoscenza dell’ RDF da parte dell’utente • Impone vincoli sulla visualizzazione delle proprietà che descrivono una classe: una proprietà P può essere utilizzata per descrivere una istanza di una classe C soltanto se C è stata dichiarata come dominio di P. OSS: OntoMat e MNM non interpretano l’ input allo stesso modo

  33. Smore (caratteristiche generali) • Fornisce Editor pagine html • Fornisce un collegamento alle esistenti ontologie su Internet per renderle utilizzabili all’interno della propria web-page. • Possibile creazione di una propria ontologia personalizzata costruibile a partire dall’esistenti (Editor di Ontologie)

  34. Smore • Input: • ontologia in RDF, DAML, DAML+OIL, OWL • Pagina html • Output • file dataset proprietario (.dat) (rappresentante la struttura usata per annotare) • Pagina html • annotazione in RDF (è possibile salvare sia l’annotazione pura sia il documento con annotazione “embeded” nell’header)

  35. Annotazione (file RDF salvato con Smore) <rdf:RDF … xmlns:personal1.0="http://www.cs.umd.edu/projects/plus/DAML/onts/personal1.0.daml#"> <personal1.0:Organization rdf:ID="LEKS"> <personal1.0:member> Michele Missikoff </personal1.0:member> </personal1.0:Organization> <personal1.0:Person rdf:ID="Michele_Missikoff"> </personal1.0:Person> </rdf:RDF> Si è perso il link all’istanza Michele Missikoff dell’ontologia

  36. Pro e contro di Smore (1) PRO • E’ necessaria una minima conoscenza della sintassi e dei termini del RDF da parte dell’utente. • Unico tool esaminato che permette di annotare anche in OWL

  37. Pro e contro di Smore (2) CONTRO • Poco comprensibile come creare effettivamente le istanze di classi e le relazioni tra istanze definite a partire da una ontologia fissata • Help in linea poco dettagliato, molte funzionalità rimangono oscure • Poco stabile, genera eccezioni durante l’esecuzione

  38. Conclusioni (1) Obiettivo di questo lavoro era trovare un tool che avesse le seguenti caratteristiche: • Formale • Machine-oriented • Per annotare qualsiasi tipo di risorsa • documenti, • webServices, • risorse coinvolte in un processo di interoperabilità tra applicazioni soft. • Ontology-based • Possibilità di annotare sia concetti che istanze • Di facile utilizzo (anche da utente inesperto) • Escluso OntoMat gli altri tool sono risultati poco stabili e poco user-friendly.

  39. Conclusioni (2) Soluzioni possibili: • Estendere OntoMat con Plugin per la gestione di OWL (lasciando comunque cosi’ irrisolta l’ annotazione attraverso concetti ) • Creare una nuova applicazione che soddisfi tutte le esigenze elencate.

  40. References (1) • S. Bechhofer, C. Goble. Towards Annotation using DAML+OIL K-CAP 2001 workshop on Knowledge Markup and Semantic Annotation, Victoria B.C, October 2001. (COHSE) • M. Denny.Ontology Building: A Survey of Editing Tools November 06, 2002 http://www.xml.comp/pub/a/2002/11/06/ontologies.html?pages=2 • S. Handschuh, S. Staab, A. Mädche . CREAM - Creating relational metadata with a component-based, ontology driven annotation framework . K-CAP 2001 • S. Handschuh, S. Staab, A. Maedche. An AnnotationFramework for the Semantic Web Karlsruhe, Germany 2001 • M. Missikoff, F. Schiappelli, F.Taglino A Controlled Language for Semantic Annoatation and Interoperability in e-Business Application IASI-CNR (Italy) 2003 • M. Missikoff F. Schiappelli. Semantic Annotation for Enterprises Interoperability IASI_CNR (Italy) 2003

  41. References (2) • M. Vargas-Vera, E. Motta, J. Domingue, M. Lanzoni, A. Stutt and F. Ciravegna. "MnM: Ontology Driven Semi-Automatic and Automatic Support for Semantic Markup",The 13th International Conference on Knowledge Engineering and Management (EKAW 2002), ed Gomez-Perez, A., Springer Verlag, 2002. • M. Vargas-Vera, E. Motta, J. Domingue, M. Lanzoni, A. Stutt and F. Ciravegna."MnM: Ontology Driven Tool for Semantic Markup", European Conference on Artificial Intelligence (ECAI 2002). In proceedings of the Workshop Semantic Authoring, Annotation & Knowledge Markup (SAAKM 2002). Lyon France, July 22-23, 2002. • M. Vargas-Vera, J. Domingue, E. Motta, S. Buckingham Shum and M. Lanzoni. "Knowledge Extraction by using an Ontology-based Annotation Tool“. In proceedings of the Workshop Knowledge Markup & Semantic Annotation, K-CAP'01, Victoria Canada, October 2001. • A. Wolff, Z. Zdrahal, Z. Kouba. Tools for Personalised Annoatation and Organization of Diverse Web Resources KMI • WWW.semanticweb.org

More Related