Sviluppo di un algoritmo di similarità a supporto dell'annotazione semantica di web services
-
Upload
michele-filannino -
Category
Technology
-
view
1.440 -
download
3
description
Transcript of Sviluppo di un algoritmo di similarità a supporto dell'annotazione semantica di web services
| | ||
Relatori: Prof. G.Semeraro, Prof. P.LopsCorrelatrice: Dott.ssa E.Tinelli“Laureando: Michele Filannino
Sviluppo di un algoritmo di similarità a supporto dell’annotazione semantica di web services
cdl informatica magistraleUniversità degli Studi di Bari tesi di laureaaa 2009/2010
>
| | ||
*
Titolo sezione parte 1Titolo sezione parte 2
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
della tesi
Realizzazione di un algoritmo per il calcolo della similarità semantica tra testi, che sia di supporto alla fase di annotazione semantica di web service tramite standard SAWSDL.
Obiettivo
| | ||
dall’architettura SOA ai semantic web services1 Introduzione ai[Semantic]* Web Services
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
>
| | ||
Introduzione aiSemantic Web Services
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
WEB SERVICE
In una SOA, quando il mezzo di trasmissione è il Web, la componente più utilizzata per implementare i servizi offerti dal Service Provider è il Web Service. Ogni attore di una rete offre servizi ed usa quelli offerti dagli altri attori.
<wsdl:description targetNamespace="http://www.w3.org/2002/ws/sawsdl/spec/wsdl/order#" xmlns="http://www.w3.org/2002/ws/sawsdl/spec/wsdl/order#" xmlns:wsdl="http://www.w3.org/ns/wsdl" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<wsdl:types> <xs:schema targetNamespace="http://www.w3.org/2002/ws/sawsdl/spec/wsdl/order#" elementFormDefault="qualified"> <xs:element name="OrderRequest"> ... </xs:element> <xs:complexType name="item"> ... </xs:complexType> <xs:element name="OrderResponse" type="confirmation" /> <xs:simpleType name="confirmation"> <xs:restriction base="xs:string"> <xs:enumeration value="Confirmed" /> <xs:enumeration value="Pending" /> <xs:enumeration value="Rejected" /> </xs:restriction> </xs:simpleType> </xs:schema> </wsdl:types>
<wsdl:interface name="Order"> <wsdl:operation name="order" pattern="http://www.w3.org/ns/wsdl/in-‐out"> <wsdl:input element="OrderRequest" /> <wsdl:output element="OrderResponse" /> </wsdl:operation> </wsdl:interface></wsdl:description>
Web
ser
vice
Definizione dei TIPI DI DATO con sintassi in linguaggio XML.
Definizione dell’interfaccia (insieme di operazioni) con i relativi INPUT ed OUTPUT attesi.
>
| | ||
*
Introduzione aiSemantic Web Services
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
evoluzione dei web serviceSemantic Web Service
sono costruiti a partire dai web service
integrano annotazioni semantiche
migliorano la fase di ricerca
migliorano la fase di composizione
>
| | ||
**
Introduzione aiSemantic Web Services
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
SAWSDLAnnotazione semantica
Standard W3C: SAWSDL
estende lo standard WSDL (Web Service Description Language)
associa ad un elemento WSDL un insieme di riferimenti URL a classi ontologiche
è ulteriormente estendibile
Sem
an
tic
web
ser
vice
(S
AW
SD
L)
ONTOLOGIE di dominio contenenti classi ontologiche alle quali puntano i RIFERIMENTI SEMANTICI.
Un servizio web per la prenotazione di biglietti di voli aerei, rappresentato in WSDL (con XML).
<wsdl:description targetNamespace="http://www.w3.org/2002/ws/sawsdl/spec/wsdl/order#" xmlns="http://www.w3.org/2002/ws/sawsdl/spec/wsdl/order#" xmlns:wsdl="http://www.w3.org/ns/wsdl" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sawsdl="http://www.w3.org/ns/sawsdl"> <wsdl:types> <xs:schema targetNamespace="http://www.w3.org/2002/ws/sawsdl/spec/wsdl/order#" elementFormDefault="qualified"> <xs:element name="OrderRequest" sawsdl:modelReference="http://www.w3.org/2002/ws/sawsdl/spec/ontology/purchaseorder#OrderRequest" sawsdl:loweringSchemaMapping="http://www.w3.org/2002/ws/sawsdl/spec/mapping/RDFOnt2Request.xml"> ... </xs:element> <xs:complexType name="item"> ... </xs:complexType> <xs:element name="OrderResponse" type="confirmation" /> <xs:simpleType name="confirmation" sawsdl:modelReference="http://www.w3.org/2002/ws/sawsdl/spec/ontology/purchaseorder#OrderConfirmation"> <xs:restriction base="xs:string"> <xs:enumeration value="Confirmed" /> <xs:enumeration value="Pending" /> <xs:enumeration value="Rejected" /> </xs:restriction> </xs:simpleType> </xs:schema> </wsdl:types> <wsdl:interface name="Order" sawsdl:modelReference="http://example.org/categorization/products/electronics"> <wsdl:operation name="order" pattern="http://www.w3.org/ns/wsdl/in-out" sawsdl:modelReference="http://www.w3.org/2002/ws/sawsdl/spec/ontology/purchaseorder#RequestPurchaseOrder"> <wsdl:input element="OrderRequest" /> <wsdl:output element="OrderResponse" /> </wsdl:operation> </wsdl:interface></wsdl:description>
File
WS
DL
arr
icch
ito
Esempio di PUNTATORE SEMANTICO al concetto di “conferma ordine”.
| | ||
caso di studio, caratteristiche, annotazione semantica, architettura generale, ontologia2Semantic WS Oriented Platformil progetto SWOP
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
>
| | ||
*
semantic web service oriented platformil progetto SWOP
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
semantic web service oriented platformProgetto SWOP
Progetto SWOP: POR 2007-‐2013, Asse I, Linea intervento 1.1, Regione Puglia
Obiettivo: creare una piattaforma di annotazione e ricerca di web services
Caso d’uso: Adventure Works (vendita/acquisto di beni e servizi)
* SWOP: A Semantic Web services Oriented Platform, E. Tinelli, M. Filannino, D. Casulli, and L. Iaquinta, 6th Workshop on Semantic Web Application and Perspective SWAP2010 21-22 Sept 2010, Bressanone, Italy, (2010)
>
| | ||
Ogni documento WSDL viene annotato in linguaggio naturale da uno sviluppatore e tali annotazioni vengono elaborate per
suggerire dei concetti ontologici pertinenti. Lo sviluppatore, previo controllo, produce il file SAWSDL.
semantic web service oriented platformil progetto SWOP
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
Annotazione semantica
DocumentoWSDL Tool di annotazione
Descrizioni inlinguaggio naturale
DocumentoSAWSDLTool di annotazione
Approvano/respingonoi suggerimenti prodotti
SA
WA
logo
Arc
hit
ettu
ra g
ener
ale
Ontologia contenente tutti i CONCETTI DEL DOMINIO APPLICATIVO di riferimento.
Algoritmo per il calcolo della SIMILARITÀ SEMANTICA tra frasi espresse in linguaggio naturale.
>
| | ||
**
semantic web service oriented platformil progetto SWOP
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
caratteristicheOntologia
1064 classi
ogni classe ha una definizione in lingua inglese
| | ||
Similarity Algorithm based on Wikipedia3L’algoritmo di similarità semanticaSAWA
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
>
| | ||
Sia E l’insieme di entità che con caratteristiche comuni, allora è possibile definire la funzione che ad ogni coppia di elementi e₁, e₂ ∈ E associa un numero reale com-‐preso tra 0 ed 1. Tale valore è noto con il nome di Coefficiente di similarità.
L’algoritmo di similarità semanticaSAWA
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
Similarità
* A semantic similarity measure for expressive description logics, C. d'Amato, N. Fanizzi, and F. Esposito, Proceedings of Convegno Italiano di Logica Computazionale CILC05 21-22 June 2005, Rome, Italy, (2005)
>
| | ||
*
L’algoritmo di similarità semanticaSAWA
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
algoritmi, corpusSimilarità tra parole
API:
LinguaTools
Corpus:
WikipediA
Algoritmo di similarità:
Lin
* DISCO: A Multilingual Database of Distributionally Similar Words, P. Kolb, In Proceedings of KONVENS-2008, Berlin, Germany, (2008).
>
| | ||
Si procede alla rimozione di tutte le parole che occorrono molto spesso nel c o r p u s , a v e n t i s c a r s o p o t e r e
discriminatorio, oltre che degli articoli e dei segni di punteggiatura.
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
Dalla similarità tra parole a quella tra testi
| name | customer | categorized | individual | consumer |
“Returns the first and last name of each customer who is categorized as an individual consumer”
STOPWORD
L’algoritmo di similarità semanticaSAWA
>
| | ||
Per ogni parola della prima frase si moltiplica il coefficiente di similarità ottenuto dal confronto con la parola più simile nella seconda frase e si moltiplica per la frequenza del termine nel corpus. Tutti gli score vengono sommati e normalizzati in base alle frequenze dei termini nei corpus. La funzione non è simmetrica.
L’algoritmo di similarità semanticaSAWA
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
Algoritmo di Corley, Mihalcea
* Corpus-based and knowledge-based measures of text semantic similarity, Rada Mihalcea, Courtney Corley, and Carlo Strapparava, In AAAI'06, page 775-780. (2006)
>
| | ||
L’algoritmo di similarità semanticaSAWA
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
**complessità
Costo computazionale
SAWA: O(n)
Annotazione:
SAWA * #onto_classi * #wsdl_elem ≈
SAWA * 1064 * 10 =
SAWA * 10640
| | ||
performance, qualità, interfacce 4Risultati &sviluppi futuri
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
>
| | ||
*
Risultati &sviluppi futuri
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
tempo di computazionePerformance
10 elementi WSDL da annotare (media di 13 parole ciascuno)
31 classi ontologiche (media di 7 parole ciascuna)
tempo di accesso al disco: 26ms
11 minuti -‐> 4,39 secondi (-‐93,35%)
>
| | ||
**
Risultati &sviluppi futuri
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
qualità dei risultatiPerformance
Spearman’s ρ Pearson’s r
STATIS 0,8126 0,8162
LSA 0,8714 0,8384
STS 0,8380 0,8530
Omiotis 0,8905 0,8560
SAWA 0,8935 0,8740
* Sentence Similarity Based on Semantic Nets and Corpus Statistics, Y. Li, et al., IEEE Transactions on Knowledge and Data Engineering, 18(8), page 1138-1150, (2006)
inte
rfac
cia
web
*http://tinyurl.com/sawa-filannino
inte
rfac
cia
web
>
| | ||
*
Risultati &sviluppi futuri
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010
breve e lungo periodoSviluppi futuri
sperimentazione in vivo dell’algoritmo
sviluppo di un algoritmo di similarità tra parole
rilascio del codice sorgente sotto licenza open-‐source
| | ||
;)”A tutti voi,grazie per l’attenzione.
cdl informatica magistraleUniversità degli Studi di Bari tema: tesi di laureaaa 2009/2010