Marco Dinarelli con la sua prima pubblicazione in una rivista IEEE    Marco Dinarelli
Web site of Marco Dinarelli in English  Site web de Marco Dinarelli en français  Sito web di Marco Dinarelli in italiano 


LIG (UMR 5217)
Office 327
700 avenue Centrale
Campus de Saint-Martin-d’Hères, France

Email:
marco [dot] dinarelli [at] univ-grenoble-alpes [dot] fr
marco [dot] dinarelli [at] ens [dot] fr
marco [dot] dinarelli [at] gmail [dot] com

                        Curriculum Vitae           Profilo di Marco Dinarelli su LinkedIn


Attualità recenti

08 / 11 / 2018:
Gruppo di lettura sulla risoluzione di coriferimenti al LIG

05 / 11 / 2018:
Il mio progetto locale Emergence é stato accettato al LIG

Argomenti di ricerca

  • Apprendimento automatico con modelli neuronali
  • Elaborazione del Linguaggio
  • Modelli probabilistici, in particolare reti neurali, automi stocastici a stati finiti (FST), Conditional Random Fields (CRF), macchine a vettori di supporto (SVM), grammatiche probabilistiche
  • Studio di features strutturate per l'elaborazione del linguaggio
  • Estrazione automatica d'informazioni semantiche

Progetti di ricerca

  • ANR DEMOCRAT January 2016 - December 2019
    DEscription et MOdélisation des Chaïnes de Référence : outils pour l'Annotation de corpus (en diachronie et en langues comparées) et le Traitement automatique
Progetti precedenti

Attivitˆ

Supervisione

Insegnamento

Applicazioni di ricerca

Rilevamento di entità nominali estese

Il rilevamento di entità nominali è un task comune tra quelli compresi nell'elaborazione del linguaggio naturale. Questo task è utilizzato come tappa preliminare per applicazioni di estrazione di informazione semantica più complesse. Al di là di task di rilevamento di entità nominali piuttosto semplici, come il CoNLL shared task 2003, negli ultimi anni sono stati definiti task di rilevamento di entità nominali ben più complessi, come ad esempio quello descritto in (Sekine and Nobata, 2004). Nonostante la complessità dell'insieme di entità nominali utilizzato possa essere notevole, più o meno tutti i task di rilevamento di entità nominali vengono modellizzati come etichettamento di sequenze.
Durante la prima parte del mio post-doc al LIMSI-CNRS, ho lavorato su un nuovo insieme di entità nominali definito nel contesto del progetto Quaero. Questo nuovo insieme di entità nominali, descritto in (Grouin et Al., 2011), presenta come importante differenza, in confronto alle entità nominali usate precedentemente, l'utilizzo di entità con una struttura ad albero, ossia delle entità semplici e specifiche, dette componenti, sono composte insieme per formare entità più complesse e generiche in una struttura arborea.
Data una tale struttura, questo task di rilevamento di entità nominali non può essere modellizzato come etichettamento di sequenze, come largamente fatto in task precedenti. Questo rende il task più difficile, insieme al tipo di dati utilizzato per il task: trascrizioni manuali e automatiche di emissioni radio, provenienti da diversi canali radio francesi e nord-africani.
Per risolvere questi problemi, dopo aver provato senza successo delle soluzioni utilizzate per l'analisi sintattica, ho proposto un approccio che combina la robustezza dei campi aleatori condizionali (CRF) (Lafferty et Al.,2001) nell'etichettamento di sequenze, con la capacità di gestire strutture arboreee degli algoritmi per l'analisi sintattica (ad esempio (Charniak, 1997)), questa combinazione ha lo scopo di poter generare strutture ad albero a partire da sequenze non strutturate, come avviene per l'analisi sintattica, su dati relativamente rumorosi.
Il mio approccio utilizza i CRF per etichettare le parole della frase in input con i componenti base. Una volta che i componenti son stati etichettati, una grammatica probabilistica libera da contesto (PCFG), con un algoritmo di chart-parsing, è utilizzata per ricostruire gli alberi di entità completi. Il vantaggio di utilizzare questo approccio è che i CRF sono particolarmente efficaci per l'etichettamento di sequenze, ma sono anche molto robusti ai dati rumorosi, possono essere quindi utilizzati per generare etichettamenti accurati dei componenti delle entità, anche quando si utilizzano dati rumorosi come trascrizioni di emissioni radio. Una volta che le parole della frase in input sono state etichettate con i componenti delle entità, le entità nominali hanno una struttura ad albero sufficientemente semplice per poter essere ricostruita efficacemente anche con un modello semplice come una PCFG.
Questo approccio è stato valutato nella campagna di valutazione di sistemi di rilevamento di entità nominali del progetto Quaero, ottenendo il primo posto con un largo margine sugli altri partecipanti.
Maggiori dettagli su questo approccio sono descritti in (Dinarelli Rosset, IJCNLP 2011). Questo approccio è stato in seguito migliorato utilizzando diverse rappresentazioni per la struttura ad albero delle entità nominali, con lo scopo di rappresetare il contesto dei nodi degli alberi nella grammatica PCFG, per maggiori dettagli vedere (Dinarelli Rosset, EACL 2012). Lo stesso approccio è stato applicato anche a dati acquisiti con processo OCR su documenti del 1890, dopo un pre-trattamento dei dati descritto in dettaglio in (Dinarelli Rosset, LREC 2012).

Sistemi di dialogo automatico uomo-macchina

I sistemi di dialogo sono applicazioni per l'interazione uomo-macchina che permettono alle persone di interagire con un computer tramite la voce con lo scopo di risolvere un qualche compito o reperire informazioni.
Durante il mio dottorato di ricerca ho lavorato sul sistema di dialogo realizzato nel progetto europeo LUNA, in particolare sul modulo di comprensione dell'applicazione. L'obiettivo principale di questo lavoro è stato la realizzazione di un'evoluzione di un'applicazione per la redirezione delle chiamate, in italiano, per aiutare gli utenti nella risoluzione di problemi con componenti hardware e software. Il modulo di comprensione integra modelli allo stato dell'arte per la comprensione automatica del linguaggio naturale, ed è complementato da un modello per la classificazione di frasi in linguaggio naturale.
Una volta che il sistema ha riconosciuto il problema dell'utente, come appartenente a uno dei 10 possibili problemi previsti nell'applicazione, redireziona l'utente verso un operatore in grado di fornire assistenza ulteriore.
Per maggiori dettagli su questo sistema vedere l'articolo (Dinarelli et Al., ICASSP 2010).

Ontologie per la comprensione del linguaggio naturale

Da un punto di vista informatico, un'ontologia è una tassonomia di classi legate da un qualche tipo di relazione. Nel dominio della comprensione del linguaggio naturale, le classi sono semantiche, chiamate anche concetti, le relazioni sono appunto relazioni semantiche tra concetti.
Al di là delle relazioni ontologiche definite tradizionalmente, come ad esempio "is-a" e "part-of", abbiamo definito anche delle relazioni semantiche più specifiche estratte dal corpus italiano di dialoghi uomo-macchina descritto nell'articolo (Dinarelli et Al., EACL 2009b).
Il corpus copre un dominio di risoluzione di problemi con componenti hardware e software ed è stato utilizzato per lo sviluppo e la valutazione di sistemi per la comprensione automatica del linguaggio naturale (vedere ad esempio in (Dinarelli et Al., EACL 2009a)).
Abbiamo utilizzato le relazioni semantiche definite nell'ontologia per valutare le ipotesi di interpretazione di una frase prodotte da un sistema di comprensione automatica del linguaggio naturale, basato su automi a stati finiti come quello descritto in (Dinarelli et Al., EACL 2009a).
Scegliamo come migliore interpretazione finale la più consistente rispetto ad una metrica di relazione semantica definita nell'articolo (Quarteroni et Al., ASRU 2009).
Sebbene i risultati finali in termini di accuratezza del modello non migliorassero lo stato dell'arte, quest'idea ha ricevuto commenti molto positivi alla conferenza Interspeech 2009 e al workshop ASRU 2009.

Tesi di dottorato

L'argomento principale del mio dottorato di ricerca è stato lo studio di modelli per la comprensione automatica del linguaggio naturale, sia orale che scritto, nel contesto dei sistemi di dialogo automatico. Il mio lavoro ha mirato in particolare all'integrazione di modelli differenti per la comprensione automatica, utilizzando algoritmi discriminativi di riordinamento (Collins,2000).
Per la generazione delle ipotesi da riordinare ho utilizzato 2 modelli: uno basato su automi probabilistici a stati finiti (SFST dall'inglese Stochastic Finite State Transducers), che rappresentavano un modello probabilistico di linguaggio semantico come proposto in (Raymond et Al.,2006), e i campi aleatori condizionati (CRF dall'inglese Conditional Random Fields) descritti in (Lafferty et Al.,2001). I modelli di riordinamento erano basati su macchine a vettori di supporto (SVM) (Vapnik,1998) con kernel particolari per l'elaborazione del linguaggio naturale, come gli "String Kernels" (Shawe-Taylor&Cristianini,2004) e i "Tree Kernels" (Collins&Duffy,2001) (Moschitti,2006).
Per rappresentare al meglio le ipotesi di interpretazione semantica, prodotte dai modelli per la comprensione automatica, nei modelli SVM, ho studiato delle nuove strutture ad albero da utilizzare nei tree kernels, per più dettagli vedere (Dinarelli et Al., EMNLP 2009).
Un'importante contribuzione ai modelli di riordinamento, seppur legata al dominio della comprensione del linguaggio naturale, è un criterio di selezione delle ipotesi: un'heuristica che fornisce una misura d'inconsistenza semantica delle ipotesi, permettendo di selezionare le migliori tra quelle prodotte dai modelli SFST o CRF, per più dettagli vedere (Dinarelli et Al., SLT 2010), (Dinarelli Rosset, EMNLP 2011), and (Dinarelli et Al., IEEE 2011).
Questa soluzione per l'integrazione di modelli di comprensione, basata su modelli di riordinamento di ipotesi, è stata valuata su 4 differenti corpora in 4 lingue diverse: ATIS (inglese), MEDIA (francese), più i corpora in italiano e polacco acquisiti durante il progetto europeo LUNA (vedere le mie pubblicazioni per maggiori dettagli sul corpus italiano). La soluzione proposta è stata confrontata in modo esaustivo con diversi modelli allo stato dell'arte, confermando la sua efficacia, tutti i dettagli sono nella mia tesi di dottorato (Dinarelli, Ph.D. Dissertation 2010).

Tesi della laurea specialistica

La mia tesi di laurea specialistica ha visto come obiettivo lo studio l'implementazione e la valutazione di un'applicazione per la clusterizzazione e la compressione di dati.
Gli algoritmi di compressione dei dati possono essere visti come funzioni che trasformano i dati in modo da ridurre la ridondanza locale. La ridondanza dei dati è rilevata da un algoritmo di compressione all'interno di una finestra sul flusso di dati in ingresso. La capacità di rilevare la ridondanza dei dati è limitata, in termini di distanza, da questa finestra. Questo può costituire una limitazione notevole quando si comprimono quantità di dati relativamente grandi. Gli algoritmi di compressione più comuni, come la famiglia di algoritmi Lempel-Ziv, utilizzata dai programmi zip e gzip libermente disponibili sotto Linux, oppure gli algoritmi che utilizzano la Trasformata di Burrows-Wheeler (BWT dall'inglese) , come nel programma bzip2 disponibile sotto Linux, usano una finistra di dimensione fissata a priori (ad esempio le opzioni da riga di comando -1,...,-9, usate in mutua esclusione, fissano la finestra a 100KB,...,900KB).
Una possibile soluzione per migliorare le prestazioni di compressione è l'utilizzo di una finestra arbitrariamente grande, in modo da rilevare la ridondanza dei dati a distanza arbitraria. Sfortunatamente questa soluzione non è proponibile in quanto incrementa anche il tempo di elaborazione del programma che, nel peggior caso non può essere stimato a priori.
La soluzione studiata nella mia tesi di laurea specialistica funziona dal punto di vista opposto: invece di ingrandire la finestra arbitrariamente per rilevare ridondanze dei dati molto distanti, viene applicato un algoritmo di clusterizzazione molto veloce che avvicina possibilmente porzioni dei dati molto simili, aumentando quindi la ridondanza locale dei dati. Dopo la fase di clusterizzazione, i dati vengono compressi con un algoritmo basato sulla trasformata di Burrows-Wheeler. In particolare, per ottenere un rapporto di compressione migliore, l'algoritmo adottato utilizza una finestra di dimensione variabile, il cui valore viene determinato con un'ottimizzazione su dei dati di sviluppo. La fase di clusterizzazione consiste nell'applicare le cosiddette "min-wise independent linear permutation" (Bohman, Cooper, Frieze 2000) per convertire porzioni di documenti in vettori di features. Questi vengono in seguito proiettati sulla retta reale usando le "Locality Sensitive Hashing" (LSH) (Andoni, Indyk 2006). Sfruttando le poprietà delle LSH (vettori simili, e quindi porzioni di documenti simili, vengono proiettati vicini), riordiniamo le porzioni dei documenti secondo i valori forniti dalle LSH, costruendo quindi dati con una forte ridondanza locale. La fase finale di compressione dei dati è realizzata con un algoritmo basato sulla BWT, fornito dal mio relatore di tesi il professor Paolo Ferragina

Bibliografia

(Dinarelli et Al., IEEE 2012)
Marco Dinarelli, A. Moschitti, G. Riccardi
Discriminative Reranking for Spoken Language Understanding
IEEE Journal of Transactions on Audio, Speech and Language Processing (TASLP), volume 20, issue 2, pages 526 - 539, 2012.

(Dinarelli Rosset, LREC 2012)
Marco Dinarelli, S. Rosset
Tree-Structured Named Entity Recognition on OCR Data: Analysis, Processing and Results
In Proceedings of the Language Resources and Evaluation Conference (LREC), Istanbul, Turkey, 2012.

(Dinarelli Rosset, EACL 2012)
Marco Dinarelli, S. Rosset
Tree Representations in Probabilistic Models for Extended Named Entity Detection
In Proceedings of the European chapter of the Association for Computational Linguistics (EACL), Avignon, France, 2012.

(Dinarelli Rosset, IJCNLP 2011)
Marco Dinarelli, S. Rosset
Models Cascade for Tree-Structured Named Entity Detection
In Proceedings of International Joint Conference on Natural Language Processing (IJCNLP), Chiang Mai, Thailand, 2011.

(Dinarelli Rosset, EMNLP 2011)
Marco Dinarelli, S. Rosset
Hypotheses Selection Criteria in a Reranking Framework for Spoken Language Understanding
In Proceedings of Empirical Methods for Natural Language Processing (EMNLP), Edinburgh, U.K., 2011.

(Dinarelli et Al., SLT 2010)
Marco Dinarelli, A. Moschitti, G. Riccardi
Hypotheses Selection For Re-ranking Semantic Annotations
IEEE Workshop on Spoken Language Technology (SLT), Berkeley, U.S.A., 2010.

(Dinarelli, Ph.D. Dissertation 2010)
Marco Dinarelli
Spoken Language Understanding: from Spoken Utterances to Semantic Structures
Ph.D. Dissertation, University of Trento
Department of Computer Science and Information Engineering (DISI), Italy, 2010.

(Dinarelli et Al., ICASSP 2010)
Marco Dinarelli, E. Stepanov, S. Varges, G. Riccardi
The LUNA Spoken Dialog System: Beyond Utterance Classification
In Proceedings of International Conference of Acoustics, Speech and Signal Processing (ICASSP), Dallas, USA, 2010.

(Dinarelli et Al., EMNLP 2009)
Marco Dinarelli, A. Moschitti, G. Riccardi
Reranking Models Based On Small Training Data For Spoken Language Understanding
In Proceedings of Empirical Methods for Natural Language Processing (EMNLP), Singapore, 2009.

(Dinarelli et Al., EACL 2009a)
Marco Dinarelli, A. Moschitti, G. Riccardi
Reranking Models for Spoken Language Understanding
In Proceedings of the European chapter of the Association for Computational Linguistics (EACL), Athens, Greece, 2009.

(Dinarelli et Al., EACL 2009b)
Marco Dinarelli, S. Quarteroni, S. Tonelli, A. Moschitti, G. Riccardi
Annotating Spoken Dialogs: from Speech Segments to Dialog Acts and Frame Semantics
EACL Workshop on Semantic Representation of Spoken Language, Athens, Greece, 2009.

(Quarteroni et Al., ASRU 2009)
S. Quarteroni, Marco Dinarelli, G. Riccardi
Ontology-Based Grounding Of Spoken Language Understanding
IEEE Automatic Speech Recognition and Understanding Workshop (ASRU), Merano, Italy, 2009.