Presentazione della tesi di laurea in Informatica presso l'Università degli Studi di Napoli Federico II.
La tesi è il risultato dell'attività di tirocinio svolta presso l'azienda Neatec S.p.a. che è consistita nell'analisi, la progettazione e lo sviluppo di un Intelligent Question Answering System nell'ambito del progetto di ricerca PIUCultura (Paradigmi Innovativi per l'Utilizzo della Cultura). Il software PIUCultura sarà realizzato per garantire a chiunque visiti un sito culturale un'esperienza unica e partecipativa, realizzando, tra le varie funzionalità, l'interazione tra l'utente e il sistema in linguaggio naturale. E' stato proposto un approccio innovativo per la classificazione delle domande basato sulla modellazione sintattica attraverso il formalismo logico Answer Set Programming.
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Intelligent Question Answering System nell'ambito del progetto di ricerca PIUCultura
1. UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II
DIPARTIMENTO DI INGEGNERIA ELETTRICA E TECNOLOGIE DELL'INFORMAZIONE
CORSO DI LAUREA IN INFORMATICA
Intelligent Question Answering System
nell’ambito del progetto di ricerca
PIUCultura
Relatore
Prof. Luigi Sauro
Tutor Aziendale
Vincenzo Piccolo
Candidato
Monica Daniele
Matr. 566003123
A.A 2016/2017
2. PIUCultura: Paradigmi Innovativi per l’Utilizzo della Cultura
• dialogare con il sistema
• profilazioneunivoca
• modalità Social Network
Realizzazione di un innovativo sistema software
per il miglioramento della fruizione dei beni culturali
SCOPO DEL PROGETTO:
SOGGETTI:
• inquadrare un’opera d’arte e ricevere informazioni
CARATTERISTICHE:
2/12Monica Daniele, 566003123
3. PROGETTAZIONE QUESTION ANSWERING SYSTEM
FASI:
APPROCCIO:
Classificazione delle domande basata sulla modellazione
sintattica attraverso un formalismo logico che ne favorisce
l’interpretazione semantica
Elaborazione della domanda
Interrogazione base di conoscenza
Risposta diretta in linguaggio naturale
OBIETTIVO:
Permettere all’utente di interagire in linguaggio naturale
con il software PIUCultura
I.
II.
III.
3/12Monica Daniele, 566003123
4. KNOWLEDGE-BASED QAS
• ONTOLOGIADI DOMINIO: CIDOCConceptualReference Model(CRM)
ResourceDescriptionFramework Schema(RDFs)• LINGUAGGIOFORMALE:
• LINGUAGGIODI INTERROGAZIONE: SPARQLProtocol and Rdf Query Language (SPARQL)
Triple Pattern Matching
Insieme di Triple Soggetto-Predicato-Oggetto
O g g e t t i C l a s s i
Leonardo Da Vinci
Gioconda
Louvre
E21_Person
E22_Man-Made_Object
E55_Place
R e l a z i o n i P r o p r i e t à
Luogo in cui è conservata un’opera P55_has_current_location
(Domain: E22 Man-Made Object, Range: E53 Place )
<www.piucultura.com/resources/Leonardo Da Vinci>
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://www.cidoc-crm.org/cidoc-crm/E21_Person> .
Notazione Turtle
Esempio «Leonardo Da Vinci è una persona»
4/12Monica Daniele, 566003123
5. ANSWER SET PROGRAMMING (ASP)
Regola head :- body
▪ bodyè un insieme di atomi (senza negazioni)della forma a(t1,…tn)
• a è un predicato che individuauna proprietà sintattica della domanda
• t1,…tn sono termini (variabili o costanti)
• Le soluzionidel programma sono ottenute come «insieme di risposte»
• utilizzato per modellare le proprietà sintattiche della domanda in modo da
ottenere una rappresentazione semantica:
• L’insieme delle regole costituisce il ProgrammaASP POSITIVO
TEMPLATELOGICO
▪ :- è l’implicazione (da body a head)
▪ head è un atomo che individua il template (la soluzione)
5/12Monica Daniele, 566003123
6. Template Matching
(Programma ASP)
Intent Determination
Query Generator
Endpoint SPARQL
Cidoc-CRM
RDF
Domanda in linguaggio naturale
Natural Language Processing 1 Modulo NLP
2 Modulo dei template e degli Intenti
Query Service
3 Modulo di Query Service
Trasforma la domanda dal linguaggio naturale
in una rappresentazione formale:
insieme di atomi ASP
Esegue il programma ASP e costruisce la
query formale attraverso il template logico
Realizza l’interrogazione SPARQL verso la
base di conoscenza RDF
PROCESSO DI TRASFORMAZIONE DELLA DOMANDA
6/12Monica Daniele, 566003123
Linguaggio:JAVA
1
2
3
7. Definizione Implementazione Utilizzo
TEMPLATE
Pattern che riguarda le
proprietà sintattiche della
domanda rappresentate
tramite regole ASP
Classi annotate con
@Template
In fase di avvio il sistema di QA
raccoglie automaticamente
tutte le classi annotate con
@Template e costruisce il
programma di matching ASP
INTENTO Scopo della domanda
Classi
• AtomicRelation
• IntentRelation
Mapping degli intenti in query
SPARQL
MODULO DEI TEMPLATE E DEGLI INTENTI
• Classificazione della domanda intemplate tramite il ProgrammaASP
• Trasformazione della domanda tramite l’intento in query SPARQL
7/12Monica Daniele, 566003123
8. <<Abstract Class>>
AbstractIntentBasedTemplate
+constructResults()
<<Abstract Class>>
AspTemplate
+ getProgram() :String
<<Interface>>
IntentBasedTemplate
+ getQuestionIntent(): IntentRelation
@Template
AspWhoActionTemplate
ESTENSIONE CATEGORIE DOMANDE
• Regola ASP
• Query Expansion
1) Creare nuova classe
2) Sovrascrivere il metodo
getProgram()
+ getProgram() :String
+ getQuestionIntent(): IntentRelation
3) Creare nuovo intento
4) Sovrascrivere il metodo
getQuestionIntent()
8/12Monica Daniele, 566003123
11. RISULTATO:
SVILUPPI FUTURI:
• il modulo che gestisce il collegamento con i servizi
esterni quali Wikipedia, YouTube, Google immagini
• il modulo di profilazione
DOMANDA: «Chi dipinse la Gioconda?»
RISPOSTA: «La Gioconda è stata dipinta da Leonardo Da Vinci.»
+ INFORMAZIONI CORRELATE
«E’ un dipinto a olio su tavola,dalle dimensioni di 77 cm d'altezzae
53 cm di larghezza, che è conservato al museo di Louvre di Parigi»
11/12Monica Daniele, 566003123
CONCLUSIONI