programmi che chiacchierano i chatbots: un approccio riduzionista
DESCRIPTION
Programmi che chiacchierano I Chatbots: un approccio riduzionista. Fabio Massimo Zanzotto. Un semplice dialogo (circostanziato). A: Buongiorno sono Fabio. B: Salve Fabio, cosa vuoi sapere? A: Quando comincia il corso? B: Il corso comincerà quando cominciano i corsi del secondo semestre. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/1.jpg)
Programmi che chiacchieranoI Chatbots: un approccio riduzionista
Fabio Massimo Zanzotto
![Page 2: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/2.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un semplice dialogo (circostanziato)
A: Buongiorno sono Fabio.B: Salve Fabio, cosa vuoi sapere?A: Quando comincia il corso?B: Il corso comincerà quando cominciano i corsi del secondo semestre.A: Chi lo insegna?B: Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua pagina web e farti quattro risate.A: Quando finisce il corso?B: Il corso finirà quando finisco i corsi del secondo semestre.A: Chi sono io?B: Tu sei fabio
![Page 3: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/3.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Obiettivi
• Imitare il comportamento umano nel parlare:– Imitare la capacità di immagazinamento informazioni– Imitare abilità linguistica
• Se essere umano il nostro obbiettivo, esistono modelli dell’essere umano?
• Modello “scientifico” del comportamentismo– Essere umano = sistema osservabile– Modello principale: dato stimolo S l’essere vivente è un
sistema f che fornisce risposte R dipendenti dallo stimolo S:
R=f(S)
![Page 4: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/4.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Approccio ad Aree Funzionali
Good Grief!
Syntax Processing
Lexical Acquisition
Ontology Learning
SemanticProcessing
World Model
DiscoursePlanner
![Page 5: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/5.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Approccio Comportamentista
• Assunto base: Essere umano è una scatola nera (black box)
Good Grief!
![Page 6: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/6.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un programma chiacchierone
• Assunto Base: percorriamo la via più breve dallo stimolo alla risposta
Good Grief!Stimolo
![Page 7: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/7.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un programma chiacchierone
• Manteniamo il percorso semplice:Realizziamo la funzione f
R=f(S)dove
• R è la risposta • S è lo stimolo
Domanda: Quanto dobbiamo complicare il linguaggio di descrizione di S e di R affinché si possa ottenere un risultato credibile?
![Page 8: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/8.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ricapitoliamo
• Vogliamo vedere quanto lontano riusciamo ad andare con approccio comportamentista:– Minima struttura interna che lega lo stimolo alla
risposta• Quindi vogliamo scrivere una funzione f(S)=R,
ovvero coppie:(S1,R1)(S2,R2)
…(Sn,Rn)
![Page 9: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/9.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Come deve essere il linguaggio?
• Ipotesi di lavoro (programma del chatbot)– Dato uno stimolo (attuale) S,
• cercare lo stimolo (potenziale) Si attivabile• Emettere Ri
• Caratteristiche:– Deve permettere di riconoscere gli stimoli S– Deve permettere di attivare le giuste risposte R
![Page 10: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/10.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio : prima ipotesi
• Il linguaggio potrebbe essere il linguaggio naturale
• Ad es.:(S1,R1)=(Buongiorno,Buongiorno)
• Dunque, se arriva S=Buongiorno, le operazioni sono:– Se S=S1 allora emetti R1
• Quindi essendo:Buongiorno=Buongiorno
• emette: Buongiorno
![Page 11: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/11.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio : prima ipotesi
Ci basta?• Prendiamo la prima interazione:
A: Buongiorno sono Fabio.B: Salve Fabio, cosa vuoi sapere?
• E’ sufficiente il linguaggio di prima ipotesi?• SI e NO
![Page 12: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/12.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio : prima ipotesi
• Cominciamo a scrivere le regole:– (Buongiorno sono Fabio., Salve Fabio, cosa vuoi sapere?)– (Buongiorno sono Giovanni., Salve Giovanni, cosa vuoi sapere?)– (Buongiorno sono Giandomenico., Salve Giandomenico, cosa vuoi
sapere?)
• Noioso! Cosa gradiremmo?(Buongiorno sono <X>., Salve <X>, cosa vuoi sapere?)
– Concetto di variabile!!! = * - star
![Page 13: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/13.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
I desiderata per il linguaggio
• Riconoscere uguaglianza tra stringhe• Concetto di variabile (semplice)
– Riconoscere una porzione di testo per poterla presentare nella risposta
– L’uguaglianza diventa unificazione
![Page 14: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/14.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: seconda ipotesi
Ci basta?• Utente antipatico:
A: Salve sono Fabio.B: Salve Fabio, cosa vuoi sapere?
• Altro utente sciolto:A: Ciao sono Fabio.B: Salve Fabio, cosa vuoi sapere?
• Utente non educato:A: Sono Fabio.B: Salve Fabio, cosa vuoi sapere?
![Page 15: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/15.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: seconda ipotesi
• Potremmo:(Buongiorno sono <X>., Salve <X>, cosa vuoi sapere?) (Salve sono <X>., Salve <X>, cosa vuoi sapere?) (Ciao sono <X>., Salve <X>, cosa vuoi sapere?)(Sono <X>., Salve <X>, cosa vuoi sapere?)
• Osservazione:– A tutte le interazioni precedenti, vorremmo che
si rispondesse allo stesso modo indipendentemente dalla forma di saluto
– Come possiamo fare?
![Page 16: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/16.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
I desiderata per il linguaggio
• Riconoscere uguaglianza tra stringhe• Concetto di variabile (semplice)
– Riconoscere una porzione di testo per poterla presentare nella risposta
• Dato uno stimolo vorremmo attivare un altro coppia stimolo-risposta lanciando un nuovo stimolo
![Page 17: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/17.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: terza ipotesi
• Potremmo fare:(Buongiorno sono <X>., RISTIMOLA(Sono <X>.)) (Salve sono <X>., RISTIMOLA(Sono <X>.)) (Ciao sono <X>., RISTIMOLA(Sono <X>.))(Sono <X>., Salve <X>, cosa vuoi sapere?)
Stimolo Secondario: Salve sono Maria. X=MariaStimolo Primario: Sono MariaRisposta: Salve Maria, cosa vuoi sapere?
![Page 18: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/18.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: terza ipotesi
Ci basta?• Utente antipatico:
A: Salve sono Fabio.B: Salve Fabio, cosa vuoi sapere?A: Quanto dura il corso?B: Il corso è di 5 Crediti. Vuoi sapere quanto dura temporalmente?A: Si, dimmi.B: Il corso è di dura 40 ore.
![Page 19: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/19.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Soluzione col modello attuale
(si *, il corso dura 40 ore)(si, il corso dura 40 ore)(no, ciao!)
![Page 20: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/20.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: terza ipotesi
Ci basta?• Utente antipatico:
A: Salve sono Fabio.B: Salve Fabio, cosa vuoi sapere?A: Quanto dura il corso?B: Il corso è di 5 Crediti. Vuoi sapere quanto dura temporalmente?A: Si, dimmi.B: Il corso è di dura 40 ore.
Per risolvere il problema, appare sufficiente ricordare l’interazione di B precedente
![Page 21: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/21.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
I desiderata per il linguaggio
• Riconoscere uguaglianza tra stringhe• Concetto di variabile (semplice)
– Riconoscere una porzione di testo per poterla presentare nella risposta
• Dato uno stimolo vorremmo attivare un altro coppia stimolo-risposta lanciando un nuovo stimolo
• Memorizzare la “nostra interazione” precedente a quella attuale
![Page 22: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/22.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: quarta ipotesi
• Potremmo fare:(Si <x>,
INTERAZIONE_PREC(Il corso è di 5 Crediti. Vuoi sapere quanto dura temporalmente)? , Il corso dura 40 ore)
![Page 23: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/23.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: quarta ipotesi
Ricapitoliamo:• Siamo partiti da:
– Scrivere (Si,Ri): coppie stimolo-risposta• Abbiamo introdotto:
– Ristimolazione: (Si,RISTIMOLA(Sj))– Memoria di un passo precedente:
(Si, INTERAZIONE_PREC(Rk)?,Rj)
![Page 24: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/24.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ci basta?• Utente antipatico:
A: Buongiorno sono Fabio.B: Salve Fabio, cosa vuoi sapere?A: Quando comincia il corso?B: Il corso comincerà quando cominciano i corsi del secondo
semestre.A: Chi sono io?B: Tu sei fabio
Linguaggio: quarta ipotesi
Servono delle variabili, ad es. interlocutore.
![Page 25: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/25.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: quinta ipotesi
• Potremmo fare:(Sono <x>,
MEMORIZZA(INTERLOCUTORE=<x>), Salve <x>, cosa desideri?)
(Chi sono io?, Tu sei RECUPERA_VALORE(INTERLOCUTORE))
• Abbiamo introdotto il concetto di variabile:– ha un nome, ad es. INTERLOCUTORE– ha un valore, ad es. Fabio– Può essere riempita: MEMORIZZA(variabile=valore)– Può essere letta: RECUPERA_VALORE(variabile)
![Page 26: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/26.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Variabili in azione(Sono <x>,
MEMORIZZA(INTERLOCUTORE=<x>), Salve <x>, cosa desideri?)
(Chi sono io?, Tu sei RECUPERA_VALORE(INTERLOCUTORE))
Chi sono io?
Tu sei pinopino
Interlocutore
![Page 27: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/27.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: quinta ipotesi
Ricapitoliamo:• Siamo partiti da:
– Scrivere (Si,Ri): coppie stimolo-risposta• Abbiamo introdotto:
– Ristimolazione: (Si,RISTIMOLA(Sj))– Memoria di un passo precedente:
(Si, INTERAZIONE_PREC(Rk)?,Rj)
– Memoria di variabili:(Si, MEMORIZZA(Vk=valk),Rj)(Si, RECUPERA_VALORE(Vk) Rj)
![Page 28: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/28.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un programma chiacchierone
• Assunto Base: percorriamo la via più breve dallo stimolo alla risposta
Good Grief!Stimolo
![Page 29: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/29.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un programma chiacchierone
• Assunto Base: percorriamo la via più breve dallo stimolo alla risposta
• Stiamo complicando il nostro modello!!!!
Good Grief!Stimolo
IPV1
Vk
…
IP=interazione precedenteVi=variabile
![Page 30: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/30.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ci basta?• Utente antipatico:
A: Buongiorno sono Fabio.B: Salve Fabio, cosa vuoi sapere?A: Quando comincia il corso?B: Il corso comincerà quando cominciano i corsi del secondo
semestre.A: Quando finisce?B: Il corso finirà quando finisco i corsi del secondo semestre.A: Chi lo insegna?B: Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua pagina web e
farti quattro risate.A: Chi sono io?B: Tu sei fabio
Linguaggio: quinta ipotesi
![Page 31: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/31.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
(quando finisce?,IP(Il corso comincerà quando cominciano i corsi del secondo
semestre.)?,Il corso finirà quando finisco i corsi del secondo semestre.)(Chi lo insegna?,IP(Il corso comincerà quando cominciano i corsi del secondo
semestre.)?, Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua pagina web e
farti quattro risate.)(Chi lo insegna?,IP(Il corso finirà quando finisco i corsi del secondo semestre.)?, Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua pagina web e
farti quattro risate.)
![Page 32: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/32.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
(Quando comincia il corso?, MEMORIZZA(ARGOMENTO=corso),Il corso comincerà quando cominciano i corsi del secondo
semestre)(Quando comincia,
(ARGOMENTO=corso)?,Il corso comincerà quando cominciano i corsi del secondo semestre)(quando finisce?,
(ARGOMENTO=corso)?,Il corso finirà quando finisco i corsi del secondo semestre.)
(quando finisce il corso?,
MEMORIZZA(ARGOMENTO=corso),Il corso finirà quando finisco i corsi del secondo semestre.)
![Page 33: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/33.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
(Quando comincia il corso?, MEMORIZZA(ARGOMENTO=corso),Il corso comincerà quando cominciano i corsi del secondo
semestre)
(quando finisce?,(ARGOMENTO=corso)?,Il corso finirà quando finisco i corsi del secondo semestre.)
![Page 34: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/34.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
(Quando comincia il corso?, MEMORIZZA(ARGOMENTO=corso),Il corso comincerà quando cominciano i corsi del secondo semestre)
(Quando finisce il corso?, MEMORIZZA(ARGOMENTO=corso),Il corso finirà quando finisco i corsi del secondo semestre.)
(quando finisce?,(ARGOMENTO=corso)?,Il corso finirà quando finisco i corsi del secondo semestre.)
(quando comincia?,(ARGOMENTO=corso)?,Il corso comincerà quando cominciano i corsi del secondo semestre)
![Page 35: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/35.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
(<x> il corso?, MEMORIZZA(ARGOMENTO=corso),RISTIMOLA(<x>))
(quando finisce?,(ARGOMENTO=corso)?,Il corso finirà quando finisco i corsi del secondo semestre.)
(quando comincia?,(ARGOMENTO=corso)?,Il corso comincerà quando cominciano i corsi del secondo semestre)
![Page 36: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/36.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: sesta ipotesi
• Potremmo fare:– Utilizzare la nozione di ARGOMENTO– Quando si entra in un certo ARGOMENTO, le domande sono
relative allo stesso.
(Quando comincia il corso?, MEMORIZZA(ARGOMENTO=CORSO), Il corso comincerà quando cominciano i corsi del secondo semestre.)
SE_SIAMO_IN_ARGOMENTO=CORSO {(Quando finisce?, Il corso finirà quando finisco i corsi del secondo semestre.) (Chi lo insegna?, Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua pagina
web e farti quattro risate.) }
![Page 37: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/37.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: sesta ipotesi
Ricapitoliamo:• Siamo partiti da:
– Scrivere (Si,Ri): coppie stimolo-risposta• Abbiamo introdotto:
– Ristimolazione: (Si,RISTIMOLA(Sj))– Memoria di un passo precedente:
(Si, INTERAZIONE_PREC(Rk)?,Rj)– Memoria di variabili:
(Si, MEMORIZZA(Vk=valk),Rj)(Si, RECUPERA_VALORE(Vk) Rj)
– Memoria di argomento:• MEMORIZZA(ARGOMENTO=A)• SE_SIAMO_IN_ARGOMENTO=A {(S1,R1)…(Sn,Rn)}
![Page 38: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/38.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Interessante aspetto del sesto linguaggio
• Possiamo scrivere:
(<X> il corso?, MEMORIZZA(ARGOMENTO=CORSO), RISTIMOLA(<X>))
SE_SIAMO_IN_ARGOMENTO=CORSO {(Quando inizia?, Il corso inizia quando iniziano i corsi del secondo
semestre.) (Quando finisce?, Il corso finirà quando finisco i corsi del secondo
semestre.) (Chi lo insegna?, Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua
pagina web e farti quattro risate.) }
![Page 39: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/39.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Dubbio:• Utente antipatico:
A: Buongiorno sono Fabio.B: Salve Fabio, cosa vuoi sapere?A: Quando comincia il corso?B: Il corso comincerà quando cominciano i corsi del secondo
semestre.A: Chi lo insegna?B: Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua pagina web e
farti quattro risate.A: Quando finisce?B: Il corso finirà quando finisco i corsi del secondo semestre.A: Chi sono io?B: Tu sei fabio
Linguaggio: sesta ipotesi
![Page 40: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/40.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Dubbio:• Utente antipatico:
A: Buongiorno sono Fabio.B: Salve Fabio, cosa vuoi sapere?A: Quando comincia il corso?B: Il corso comincerà quando cominciano i corsi del secondo
semestre.A: Chi lo insegna?B: Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua pagina web e
farti quattro risate.A: Dove lo trovo?B: Nello studio al piano –1 dell’edificio BA: Chi sono io?B: Tu sei fabio
Linguaggio: sesta ipotesi
![Page 41: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/41.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Linguaggio: sesta ipotesi
NON VI PREOCCUPATE CI RIMARRA’ IL DUBBIO!!!!
![Page 42: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/42.jpg)
AIML e i Chatbot
Technology Box
![Page 43: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/43.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Piano di lavoro
• Osservare i desiderata del nostro sesto linguaggio• Vedere come si realizzano attraverso il linguaggio
Artificial Intelligence Mark-up Language (AIML)• Presentare un interprete di stimoli-risposte scritti
in AIML: programd• Fare dei piccoli esercizi
![Page 44: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/44.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Piccolissimo richiamo ML
• Cos’è un mark-up language?– Un linguaggio che permette di dare un ruolo ad una porzione di
testo• Prendiamo un linguaggio semplice tipo XML o HTML:
<RUOLO>TESTO</RUOLO>
In questo linguaggio, così si indica che il testo TESTO ha il ruolo RUOLO
Esempio in HTML:<B>pluto</B> pluto
![Page 45: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/45.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Piccolissimo richiamo ML
• OSSERVAZIONE: Il ruolo è una parentesi tipata intorno ad un testo
• Consequenza:– Le parentesi tipate debbono essere aperte e chiuse– Le parentesi tipate non si possono incrociare
<B>gennaro <I>pluto </B> paperino</I> E’ VIETATO!!!!!
<b></b> === <b/>
![Page 46: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/46.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Piccolissimo richiamo ML
• OSSERVAZIONE: – Avendo la possibilità di definire i tipi (ad esempio B
per grassetto), possiamo memorizzare qualsiasi tipo di informazione
• Un linguaggio di Mark-up in cui si possono definire i tipi è XML
• Useremo (hanno usato) XML per definire il nostro linguaggio per i chatbot detto AIML
![Page 47: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/47.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Riguardiamo il nostro linguaggio
• Siamo partiti da:– Scrivere (Si,Ri): coppie stimolo-risposta
• Abbiamo introdotto:– Variabile base che lega stimolo con risposta <X>– Ristimolazione: (Si,RISTIMOLA(Sj))– Memoria di un passo precedente:
(Si, INTERAZIONE_PREC(Rk)?,Rj)– Memoria di variabili:
(Si, MEMORIZZA(Vk=valk),Rj)(Si, RECUPERA_VALORE(Vk) Rj)
– Memoria di argomento:• MEMORIZZA(ARGOMENTO=A)• SE_SIAMO_IN_ARGOMENTO=A {(S1,R1)…(Sn,Rn)}
![Page 48: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/48.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Elemento Base: Stimolo-Risposta
(Si,Ri): coppie stimolo-risposta • In AIML è detto categoria
– Stimolo è detto pattern– Risposta è detta template
• Si scrive:<category>
<pattern> Si </pattern> <template>Ri</template>
</category>
• N.B. nello stimolo – non si devono usare simboli di interpunzione (ed alcuni altri
caratteri)– i caratteri debbono essere tutti maiuscoli
![Page 49: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/49.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio 1
Codificate:(Buongiorno,Buongiorno)
<category><pattern>BUONGIORNO</pattern> <template>Buongiorno!</template>
</category>
B?u!o.n!g!iorno!!!!!!!!BUONGIORNO
![Page 50: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/50.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Variabile Base: Stimolo-Risposta
<X> variabile usabile solo in stimolo-risposta • In AIML è detto star• Si scrive:
– * nello stimolo– <star/> nella risposta
![Page 51: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/51.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio 2
Codificate:(Buongiorno sono <X>., Salve <X>, cosa vuoi sapere?)
<category><pattern> BUONGIORNO SONO *</pattern><template>Salve <star/>, cosa vuoi sapere?</template>
</category>
![Page 52: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/52.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ristimolazione
(Si,RISTIMOLA(Sj))• In AIML è detto srai: symbolic reduction • Si scrive:
<category><pattern> Si </pattern> <template><srai>Sj</srai></template>
</category>
![Page 53: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/53.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio 3
Codificate:(Sono <X>., RISTIMOLA(Buongiorno Sono <X>.)) (Salve sono <X>., RISTIMOLA(Buongiorno Sono <X>.)) (Ciao sono <X>., RISTIMOLA(Buongiorno Sono <X>.))(Buongiorno sono <X>., Salve <X>, cosa vuoi sapere?)
<category><pattern> BUONGIORNO SONO *</pattern> <template><srai>SONO <star/></srai></template>
</category><category>
<pattern> SALVE SONO *</pattern> <template><srai>SONO <star/></srai></template>
</category><category>
<pattern> CIAO SONO *</pattern> <template><srai>SONO <star/></srai></template>
</category>
![Page 54: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/54.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Memoria di un passo precedente
(Si, INTERAZIONE_PREC(Rk)?,Rj)• In AIML è detto that• Si scrive:
<category><pattern> Si </pattern> <that> Rk </that> <template>Ri</template>
</category>
![Page 55: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/55.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio 4
Codificate:(Si <x>,
INTERAZIONE_PREC(Il corso è di 5 Crediti. Vuoi sapere quanto dura temporalmente)? , Il corso dura 40 ore)
<category><pattern>SI *</pattern> <template> Il corso dura 40 ore
</template><that>Il corso è di 5 Crediti. Vuoi sapere quanto dura
temporalmente</that> </category>
![Page 56: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/56.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio 4.1
Codificare:
(Quanto dura il corso?, Il corso è di 5 Crediti. Vuoi sapere quanto dura temporalmente?)
![Page 57: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/57.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Memoria di variabili
(Si, MEMORIZZA(Vk=valk),Rj)(Si, RECUPERA_VALORE(Vk) Rj)
• In AIML è si usa:– set per memorizzare – get per recuperare– Entrambi vanno scritte nel template
• Si scrive:<set name=“Vk”> valk </set> <get name=“Vk”/><set name=“interlocutore”>pippo </set> <get name=“interlocutore”/>
![Page 58: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/58.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio 5
Codificate:(Sono <x>,
MEMORIZZA(INTERLOCUTORE=<x>), Salve <x>, cosa desideri?)
(Chi sono io?, Tu sei RECUPERA_VALORE(INTERLOCUTORE))
<category><pattern>SONO *</pattern> <template>Salve, <star/> cosa desideri?
<set name=“INTERLOCUTORE”> <star/> </set></template>
</category><category>
<pattern>CHI SONO IO</pattern> <template>Tu sei <get name=“INTERLOCUTORE”/></template>
</category>
![Page 59: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/59.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Memoria di argomentoMEMORIZZA(ARGOMENTO=A)SE_SIAMO_IN_ARGOMENTO=A {(S1,R1)…(Sn,Rn)}
• In AIML è si usa:– la variabile topic per memorizzare argomento– una parentesi tipata per indicare l’insieme degli stimoli-risposta di
un topic• Si scrive:
<set name=“topic”> A</set>
<topic name=“A”>(S1,R1)…(Sn,Rn)(stimoli-risposta del topic)
</topic>
![Page 60: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/60.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio 6
Codificate:(<X> il corso?,
MEMORIZZA(ARGOMENTO=CORSO), RISTIMOLA(<X>))
SE_SIAMO_IN_ARGOMENTO=CORSO {(Quando inizia?, Il corso inizia quando iniziano i corsi del secondo
semestre.) (Quando finisce?, Il corso finirà quando finisco i corsi del secondo
semestre.) (Chi lo insegna?, Il Prof. Fabio Massimo Zanzotto. Puoi vedere la sua
pagina web e farti quattro risate.)
}
![Page 61: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/61.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
<category><pattern>* IL CORSO</pattern><template>
<think><set name=“topic”>insegnamento</set></think><srai><star/></srai></template>
</category>
Quando comincia il corso?
![Page 62: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/62.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
<topic name=“insegnamento”><category>
<pattern>QUANDO INIZIA</pattern><template>Il corso inizia il giorno in cui inizia.</template>
</category><category>
<pattern>QUANDO FINISCE</pattern><template>Il corso finisce il giorno in cui finisce.</template>
</category></topic>
![Page 63: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/63.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Altri operatori
• Il caso:– Risposta casuale in un insieme di risposte– In AIML si scrive:
<random><item> R1</ item >…< item > Rn-1 </template><template> Rn </template>
</random>
![Page 64: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/64.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Altri operatori
• Il pensare:– Non palesare quello che si stà facendo in un template– In AIML si scrive:
<template> R <think> pensiero </think>….</template>
![Page 65: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/65.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ricapitoliamo AIML
• Scrivere (Si,Ri): coppie stimolo-risposta<category><pattern>…</pattern><template>…</template></category>
• Variabile base che lega stimolo con risposta <X> in stimolo: * in risposta: <star/>
• Ristimolazione: (Si,RISTIMOLA(Sj))<srai>…</srai>
• Memoria di un passo precedente:(Si, INTERAZIONE_PREC(Rk)?,Rj)<that>…</that>
• Memoria di variabili:<set name=“xxx”> yyy </set> <get name=“xxx”/>
• Memoria di argomento:<set name=“topic”> yyy </set> <topic name=“xxx”> … </topic>
• Altri operatori:<random> <think>
![Page 66: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/66.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Presentare un figlio di Eliza
• programd:– Come si lancia– Come si caricano le basi di stimolo-risposta– Come si termina
![Page 67: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/67.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un esercizio
Costruiamo il tutor elettronico del corsoProcedimento• Individuiamo le macroaree di interesse• Costruiamo dei topic per le macroaree• Analizziamo le domande nelle macroaree
![Page 68: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/68.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Individuiamo le macroaree
• Introduzione/presentazione studente• Corso
– Luogo – Orari
• Professore– Chi è?– Dove trovarlo
• Esame• Piano di studi (posso inserirlo)• E’ interessante/non è interessante
![Page 69: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/69.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Organizzare un dialogo
• Atti del discorso: una classificazione superficiale• Automa degli stati del discorso• Trattamento della ricchezza espressiva• Un esempio con esercizi
![Page 70: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/70.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Atti del discorso (Speech Acts)
Alcune classi di speech acts• Opening: The first interaction allows to open the dialogue,
this is the welcome phase where the dialogue agent presents yourself and asks to the user to do the same thing.
• Info-Request: A question by the speaker, it is used to ask information, as questioning about an artwork particular or a question used to change topic.
• Answer: The act to aswer a question.• Closing : Farewells.
![Page 71: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/71.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Automa degli stati del discorso
![Page 72: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/72.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Trattamento della ricchezza espressiva
• Riconoscimento nello stimolo delle varie forme e risposta centralizzata Forme: Buongiorno, Salve, CiaoClasse: CLASSE_SALUTO
• Emissione di forme diverse in rispostaClasse: CLASSE_SALUTOForme: Buongiorno, Salve, Ciao
Classe: RICHIESTA_NOMEForme: Come ti chiami?, Presentiamoci! Tu sei?, Chi
sei?, Qual è il tuo nome?
![Page 73: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/73.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Trattamento della ricchezza espressiva
• Riconoscimento nello stimolo delle varie forme e risposta centralizzata Forme: Buongiorno, Salve, CiaoClasse: CLASSE_PRESENTAZIONEMezzo usabile nel modello stimolo-risposta:
(Buongiorno,RISTIMOLA(CLASSE_PRESENTAZIONE))(Salve,RISTIMOLA(CLASSE_PRESENTAZIONE))(Ciao,RISTIMOLA(CLASSE_PRESENTAZIONE))
![Page 74: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/74.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Trattamento della ricchezza espressiva
• Emissione di forme diverse in rispostaClasse: CLASSE_SALUTOForme: Buongiorno, Salve, Ciao
(CLASSE_SALUTO, RISPOSTA_CASUALE(Buongiorno, Salve, Ciao))
![Page 75: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/75.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Trattamento della ricchezza espressiva
• Emissione di forme diverse in risposta
(RICHIESTA_NOMERISPOSTA_CASUALE(Come ti chiami?, Presentiamoci! Tu sei?, Chi sei?, Qual è il tuo nome?))
(CLASSE_PRESENTAZIONE, RISTIMOLA(CLASSE_SALUTO) RISTIMOLA(RICHIESTA_NOME))
![Page 76: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/76.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ricapitolando
(Buongiorno,RISTIMOLA(CLASSE_PRESENTAZIONE))(Salve,RISTIMOLA(CLASSE_PRESENTAZIONE))(Ciao,RISTIMOLA(CLASSE_PRESENTAZIONE))
(CLASSE_SALUTO, RISPOSTA_CASUALE(Buongiorno, Salve, Ciao))
(RICHIESTA_NOMERISPOSTA_CASUALE(Come ti chiami?, Presentiamoci! Tu sei?, Chi sei?, Qual è il tuo nome?))(CLASSE_PRESENTAZIONE, RISTIMOLA(CLASSE_SALUTO) RISTIMOLA(RICHIESTA_NOME))
![Page 77: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/77.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Esercizio
• Realizzare in AIML il seguente automa di discorso
Presentazione reciproca
Domanda su autore quadro
![Page 78: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/78.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
TravelSending
TravelSource
TravelGoal
TravelTicket
sendingSource
SemdingGoal
SendingTheme
![Page 79: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/79.jpg)
Limiti dell’approccio comportamentista
![Page 80: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/80.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Il nostro modello
Good Grief!Stimolo
IPV1
Vk
…
IP=interazione precedenteVi=variabile
![Page 81: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/81.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Proviamo…
• A costruire un macchina chiacchierona che gestisce tutti i corsi della facoltà:
(Quando comincia il corso di letteratura?, Il corso inizia il RECUPERA_VALORE(INIZIO_CORSO_LETTERATURA))
(Quando finisce il corso di letteratura?, Il corso finisce il RECUPERA_VALORE(FINE_CORSO_LETTERATURA))
(Quando crediti ha il corso di letteratura?, Il corso è articolato su RECUPERA_VALORE(CFU_CORSO_LETTERATURA) crediti)
![Page 82: Programmi che chiacchierano I Chatbots: un approccio riduzionista](https://reader033.vdocuments.pub/reader033/viewer/2022051317/568163c8550346895dd4fdae/html5/thumbnails/82.jpg)
F.M.Zanzotto Linguaggi e Modelli dei Dati e della ConoscenzaFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Proviamo…
• Variabili necessarie:INIZIO_CORSO_LETTERATURAFINE_CORSO_LETTERATURACFU_CORSO_LETTERATURAINIZIO_CORSO_AB_INFFINE_CORSO_AB_INFCFU_CORSO_AB_INFINIZIO_CORSO_LMDCFINE_CORSO_LMDCCFU_CORSO_LMDC…
Osservazioni:- Il numero di variabili
cresce a dismisura- I nomi delle variabili
possono avere una struttura ripetitiva
Abbiamo bisogno di un modello migliore per la
RAPPRESENTAZIONE DELLA MEMORIA
INTERNA