Analisi comparativa dei motori conversazionali e sviluppo di soluzioni per la creazione semi-automatica di basi di conoscenza per chatbot

Documenti analoghi
Ibridazione di Machine Learning e Semantica per la Named-Entity Recognition

I CHATBOT: UN NUOVO STRUMENTO INTELLIGENTE DI SUPPORTO ALL INTERAZIONE UOMO-COMPUTER

Dipartimento di Ingegneria e Architettura Laurea magistrale in ingegneria clinica

Linguistica Computazionale 2004 Presentazione del Corso

Trattamento Automatico delle Lingue Naturali e Data Science. Francesco Cutugno

Indirizzo Liceo Scientifico opzione Scienze Applicate Classe 1 a sez. F Anno Scolastico

Università di Pisa Facoltà di Scienze Matematiche Fisiche e Naturali

POLITECNICO DI MILANO

Realizzazione di un processo a supporto dell interoperabilità semantica nel Web

PROGRAMMAZIONE DIDATTICA DI DIPARTIMENTO A.S. 2017/2018

Rappresentazione con i diagrammi di flusso (Flow - chart)

Università di Pisa Facoltà di Scienze Matematiche Fisiche e Naturali

Un modello con le reti di Petri ibride per il controllo del traffico urbano

Sistemi Informativi Avanzati

Ingegneria e Scienze Informatiche

Attività Didattica Svolta

Ingegneria Informatica

Università degli studi di Genova

Linee di programmazione

MODELLO SCHEDA INSEGNAMENTO

2. Modellazione dei casi d uso

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

LAUREA TRIENNALE IN INFORMATICA - DM 270/04

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1

Indice. Parte I FondaMentI di InForMatIca. Prefazione alla seconda edizione Gli Autori Ringraziamenti dell Editore Guida alla lettura XIII XV XVI XVII

DIPARTIMENTO DI INFORMATICA. Dipartimento di Informatica sede di Crema

ESEMPI DI PIANO DI STUDI PER STUDENTI A TEMPO PARZIALE

INTRODUZIONE. Premessa. Obiettivi. «Tutto ciò che è scritto unicamente per far piacere all autore è senza valore.»

Allegato 1 Descrizione profili professionali

ANNO ACCADEMICO 2018/2019 LAUREA TRIENNALE 3 ANNI. Informatica

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.

Programma svolto informatica a.s. 2017/2018. Classe 1D

MASTER UNIVERSITARIO

INGEGNERIA DEL SOFTWARE

LAPIS: an integrated design and simulation lab for research and education on industrial robotics

Corso di Laurea Specialistica in Ingegneria Informatica. Correlatore: Ing. Andrea Claudi

Corso di Laurea Magistrale in Ingegneria Informatica

Piano formativo del Master di I livello in Building Information Modeling (B.I.M.)

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :

ISTITUTO ISTRUZIONE SUPERIORE

Thesis Day RAI Radiotelevisione Italiana. Centro Ricerche e Innovazione Tecnologica

Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile.

Rossella Marmo CURRICULUM VITAE PROFILO PERSONALE ISTRUZIONE E FORMAZIONE ULTERIORE FORMAZIONE

Modellazione di Applicazioni Web. Dr. Marco Benini Dipartimento di Informatica e Comunicazione Università degli Studi dell'insubria

Operations Management Team

Operations Management Team

IIS Via Silvestri ITIS Volta Programma svolto di Tecnologie Informatiche A.S. 2016/17 Classe 1 B

Corso di Fondamenti di Informatica L-B

Il Sistema Integrato dei Istat

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile.

Corso di Web Mining e Retrieval. - Introduzione al Corso -

Tecnologie, strumenti e processi alle informazioni e l estrazione della conoscenza

ELEMENTI DI INFORMATICA E PROGRAMMAZIONE

X-SENSE. E un assistente virtuale evoluto in grado di gestire comunicazioni, dati, procedure e dispositivi connessi attraverso il dialogo vocale.

CORSO DI WEB MINING E RETRIEVAL - INTRODUZIONE AL CORSO -

Introduzione al corso

Docenti Marco Cirrito, Pier Luigi Girelli. Disciplina. OBIETTIVI MINIMI (necessari al passaggio alla classe successiva)

Scuola di dottorato in Scienze e Tecnologie XXVIII Ciclo

SCHEDA INSEGNAMENTO A.A. 2018/2019

Studio e implementazione di un Profilo SAML per Trait based Identity Management System nel Session Initiation Protocol

IL PROCESSO di PROGETTAZIONE

Corso di Laurea in Informatica. Manifesto degli Studi A.A (Ordinamento didattico 2008)

Un agente intelligente per la ricerca di sorgenti informative in Internet

Modeling and Control of Plug-In Hybrid Electric Vehicles for Fuel Economy Improvement

Le aree dell informatica

REGISTRI D'ESAME CODICE ESAME CORSO DI LAUREA NOME DEL CORSO LAUREA CFU

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13

Laurea triennale - Comunicazione&DAMS - UNICAL. Dr. Marco Manna 1

Fondamenti di Informatica

Corso di Laurea in Informatica

LAUREA MAGISTRALE IN INGEGNERIA INFORMATICA

A mia moglie Ilaria ed ai miei familiari

Introduzione. A Tecnologie 1

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma

In memoria di mio padre. A mia madre, a tutti gli amici. A tutti voi grazie.

ANNO ACCADEMICO 2017/2018 LAUREA TRIENNALE 3 ANNI. Informatica

Dipartimento di Ingegneria. Corso di Laurea Magistrale classe LM-33 in Ingegneria Meccanica conforme al D.M. 270

SOMMARIO. DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Partecipanti e messaggi.

Strumento e tecnica a supporto del crash testing automatico di applicazioni mobili basato sul sistema operativo Android Anno Accademico 2010/2011

Curriculum IMPIANTI ELETTRICI I anno (42 CFU)

Basi di dati Basi di dati per bioinformatica

UNIVERSITÀ DEGLI STUDI DI PISA

Introduzione all informatica

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Indice Prefazione 1 Il diritto e la società dell informazione La società dell informazione Un nuovo paradigma soc

Funzionalità. Ambiente di sviluppo integrato

Laurea in Ingegneria Gestionale. Corso di Fondamenti di Informatica A.A. 2018/2019

Internal rating e gestione efficiente del credito:

Introduzione alla programmazione strutturata

ALLEGATO A (D.R. n. 832 del ) AREA SCIENTIFICO DISCIPLINARE INGEGNERIA INDUSTRIALE E DELL INFORMAZIONE

Corso di. Fondamenti di Informatica T

Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS

Classificazione e Segmentazione di Gesture per la Human Computer Interaction

Elena Baralis 2007 Politecnico di Torino 1

Linguaggi e Ambienti di Programmazione

PROGRAMMAZIONE ANNUALE DEL DIPARTIMENTO DI INFORMATICA per la classe V SIA A.S.:

Transcript:

UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA DIPARTIMENTO DI INGEGNERIA «ENZO FERRARI» CORSO DI LAUREA MAGISTRALE IN INGEGNERIA INFORMATICA ANNO ACCADEMICO 2016/2017 Analisi comparativa dei motori conversazionali e sviluppo di soluzioni per la creazione semi-automatica di basi di conoscenza per chatbot Giovanni Morrone 24 Ottobre 2017 Relatore: Prof. Domenico Beneventano Correlatori: Prof.ssa Sonia Bergamaschi Ing. Andrea Belli

Agenda 1.Introduzione 2.Motori conversazionali 3.Progetto di knowledge extraction 4.Conclusioni e sviluppi futuri 2

1 INTRODUZIONE

Contesto e motivazione Progetto di tesi svolto presso Expert System S.p.A. Tecnologia semantica: analisi e comprensione di testi Chatbot: programma in grado di conversare attraverso un interfaccia in linguaggio naturale Due fasi: 1. Analisi dei motori conversazionali esistenti 2. Sviluppo di metodi semi-automatici per il supporto alla progettazione 4

Perché i chatbot? Oltre 3.5 miliardi di utenti attivi 5

2 MOTORI CONVERSAZIONALI

Architettura Motore conversazionale 7

Tassonomia Motore conversazionale Rule-based Data-driven Deterministico (Retrieval-based) Generativo 8

Tipologie 1. Script-based system (rule-based) 2. Bot development platform (deterministico/rule-based) 3. End-to-end dialogue system (generativo) 9

1. Script-based system Tipo: rule-based Meta-linguaggi di scripting per la modellazione di dialoghi: Pattern matching dell input Regole if-then per la gestione del flusso conversazionale AIML (A.L.I.C.E.) <category> <pattern>who IS HE</pattern> <template><srai>whoishe <get name="he"/></srai></template> </category> <category> <pattern>whoishe *</pattern> <template>he is <get name="he"/>.</template> </category> <category> <pattern>whoishe UNKNOWN</pattern> <template>i don t know who he is.</template> </category>?: (who is he) if ($name) { He is $name. } else { I don t know who he is. } ChatScript 10

2. Bot development platform Tipo: discriminativi/rule-based AI-as-a-Service (AIaaS): interfaccia Web user-friendly Elaborazione linguaggio naturale e creazione dei dialoghi 3 moduli principali: 1. Categorizzazione di intenti 2. Estrazione di entità 3. Gestione dello stato della conversazione (opzionale) Tantissimi nuovi servizi: API.AI/Dialogflow (Google) IBM Watson Conversation Facebook Messenger Platform/Wit.ai Microsoft Bot Framework/LUIS 11

3. End-to-End dialogue system Tipo: generativi Modelli Sequence-to-Sequence (seq2seq). Due reti neurali ricorrenti: Encoder Decoder 12

3 PROGETTO KNOWLEDGE EXTRACTION

Base di conoscenza Knowledge Base Sistema conversazionale: motore conversazionale + base di conoscenza Base di conoscenza: tutte le informazioni strutturate necessarie sia in fase di progettazione dei dialoghi sia per supportare le interrogazioni del sistema Bot development platform e sistemi script-based richiedono una base di conoscenza: Quali intenti? Quali entità? Quali risposte? 14

Ciclo di sviluppo chatbot Sono definite in modo preciso? 15

Caso di studio Bot per Intesa Sanpaolo: gestione delle carte di credito Specifiche in un manuale operativo (lingua italiana) Documento diviso in tre sezioni: Elenco attori e carte di credito Sintesi fasi Descrizione attività fasi Obiettivo: sviluppo di uno strumento automatico per supportare il lavoro di analisi dei progettisti dei dialoghi Estrazione automatica informazioni di interesse 16

Analisi documento Input: attività di una fase Sequenza azioni Output: Workflow 17

Tecnologie utilizzate Tecnologia core Expert System 18

Fasi 1. Estrazione frasi 19

1. Estrazione frasi Il Sistema in automatico provvede a verificare l'eventuale presenza di elementi negativi in capo al Richiedente. Il sistema verifica sul Richiedente che: * lo stato amministrativo di Gruppo (SAG) sia in bonis * l'anzianità di rapporto sia pari ad almeno 6 mesi * la condizione lavorativa del Cliente sia: - per lavoratori dipendenti e pensionati, regolare accredito dello stipendio su c/c presso il nostro Gruppo Bancario per un importo superiore ad 1.000 mensili - per lavoratori autonomi, professionisti, imprenditori (quindi senza stipendio), movimentazione regolare e AFI superiori a 5.000 ["Il Sistema in automatico provvede a verificare l'eventuale presenza di elementi negativi in capo al Richiedente", 'Il sistema verifica sul Richiedente che lo stato amministrativo di Gruppo sia "in bonis"', "Il sistema verifica sul Richiedente che l'anzianità di rapporto sia pari ad almeno 6 mesi", 'Il sistema verifica sul Richiedente che la condizione lavorativa del Cliente sia per lavoratori dipendenti e pensionati, regolare accredito dello stipendio su c/c presso il nostro Gruppo Bancario per un importo superiore ad 1.000 mensili', 'Il sistema verifica sul Richiedente che la condizione lavorativa del Cliente sia per lavoratori autonomi, professionisti, imprenditori, movimentazione regolare e AFI superiori a 5.000 ] 20

Fasi 1. Estrazione frasi 2. Conversione RDF 21

2. Conversione RDF Output disambiguazione: oggetto XML o JSON Grafo RDF Standard per la rappresentazione di metadati strutturati nel Web semantico 22

Fasi 1. Estrazione frasi 2. Conversione RDF 3. Ricerca pattern 23

3. Ricerca pattern Interrogazioni sul grafo per estrapolare informazioni SPARQL: linguaggio di interrogazione per grafi RDF Ricerca di pattern che rappresentano azioni specifiche SELECT?sbj?pred?obj WHERE {?pred a :Check ; :predicateof?clause.?clause :hastype IND ; Esempio pattern: azione di controllo?obj :obj_who :obj_what?clause. } OPTIONAL {?sbj :sbj_who :sbj_what?clause ; } 24

Fasi 1. Estrazione frasi 2. Conversione RDF 3. Ricerca pattern 4. Estrazione entità e relazioni 25

Workflow attività Struttura dati: 1. Cella 2. Livello 3. Attività CELLA LIVELLO 26

4 CONCLUSIONI E SVILUPPI FUTURI

Conclusioni e sviluppi futuri I chatbot seq2seq sembrano promettenti, ma ancora immature Approcci data-driven discriminativi necessitano di molto lavoro umano: metodi automatici possono ridurre tempi e costi Miglioramenti: aggiunta pattern rilevamento ramificazioni del flusso algoritmo di auto-detection di procedure generazione automatica del codice del bot Dottorato di Ricerca in Ingegneria Industriale e del Territorio curricula «Industria 4.0»: interfacce in linguaggio naturale per HMI 28

Grazie per l attenzione! Giovanni Morrone 24 Ottobre 2017 Per ulteriori informazioni: giovanni.morrone@unimore.it giovanni.morrone.8@gmail.com