Memorie di Guerra Un proge)o di linguistica computazionale per le Digital Humanities
Alessandro Lenci et al.
CoLing Lab – Laboratorio di Linguistica Computazionale
Università di Pisa
Seminario di Cultura Digitale Pisa, 22 o@obre 2014
• Coordinamento: • Alessandro Lenci (Università di Pisa, CoLing Lab) • Simone@a Montemagni (ILC-‐‑CNR, ItaliaNLP Lab)
• Analisi linguistico-‐‑computazionali: • ILC-‐‑CNR, CoPhi Lab » Federico Bosche@i, Paolo Picchi
• ILC-‐‑CNR, ItaliaNLP Lab » Andrea Cimino, Felice dell’Orle@a, Giulia Venturi
• Università di Pisa, CoLing Lab » Gianluca Lebani, Lucia Passaro
• Informatica Umanistica » Giacomo Corsini, Michele Mallia, Federica Semplici
• Consulenza storica: • Nicola Labanca (Università di Siena)
• Software di ricerca e interfaccia grafica: • Stefano Dei Rossi (WebSoup)
Il gruppo di ricerca
• La IGM e la IIGM sono le prime guerre documentate in maniera massiccia in ogni tipo di media • documenti ufficiali, giornali, le@ere, diari • immagini, cartoline, posters
Le guerre mondiali e la memoria storica
• La storiografia contemporanea è interessata a ricostruire la “storia culturale” e la “storia linguistica” della guerra • come i diversi a@ori della guerra (governi, soldati, ecc.) rappresentavano e auto-‐‑rappresentavano gli eventi di guerra
• la IGM è stata la prima guerra di massa e anche la prima guerra di propaganda » giornali ufficiali, giornali di trincea, ecc.
• la IGM è stata non solo una guerra di morte di massa, ma anche di scri@ura di massa » la prima esperienza di scri@ura per intere fasce della popolazione » ca. 2 miliardi di le@ere movimentate solo in Italia
Analisi storica e analisi linguistica
• Quantità enormi di materiale testuali, in progressiva digitalizzazione • h@p://www.europeana1914-‐‑1918.eu • h@p://www.14-‐‑18.it/ • h@p://www.nationalarchives.gov.uk/first-‐‑world-‐‑war/
• Fonti storiche che richiedono metodi nuovi per la ricerca ed esplorazione delle informazioni • analisi semantica dei testi • analisi statistico-‐‑linguistiche • link tra fonti diverse
Big (Historical) Data
• Proge@o finlizzato all’analisi computazionale di testi della I e della II GM • consulenza storica: Nicola Labanca
• Prima applicazione: analisi dei Bolle@ini di Guerra • digitalizzazione e OCR • estrazione delle informazione • analisi statistica • georeferenziazione e data linking
• Applicazioni • ricerca storica • insegnamento della storia
Memorie di Guerra
• Emessi quotidianamente dal Comando Supremo italiano durante la IGM e la IIGM come resoconto ufficiale delle operazioni • IGM: 1.342 testi dal 24 Maggio 1915 all’11 Novembre 1918 » pubblicati nel 1923, mai digitalizzati prima d’ora (189.783 tokens)
• IIGM: 1.201 testi dal 10 Giugno 1940 all’8 Se@embre 1943 » pubblicati nel 1970, disponibili in HTML (211.854 tokens)
Bolle@ini di guerra
• Gli storici assumono che la IGM e la IIGM siano due episodi di un unico confli@o europeo trentennale
• I bolle@ini di guerra sono una fonte storica importante per • ricostruire lo svolgimento delle operazioni • studiare le strategie di propaganda • comparare le due guerre mondiali » differenti tipi di guerra (posizione vs. movimento) » differenti governi (liberale vs. fascista)
• studiare il cambiamento della lingua italiana » all’inizio del ‘900, l’italiano standard era ancora in fase di definizione
Perché i bolle@ini della IGM e della IIGM?
digitalizzazione dei bollettini della IGM
annotazione automatica dei bollettini
estrazione dell’informazione
data linking a risorse esterne
interfaccia di ricerca
Fasi del proge@o
• L’OCR è stato realizzato con Tesseract • 97.87% di accuratezza e 98.68% di F-‐‑score calcolato su un campione
casuale di 10 pagine • Correzione manuale con metadati XML
• è previsto il rilascio dei testi in formato TEI-‐‑XML
Digitalizzazione dei bolle@ini della IGM
<doc url="http://www.ilc.cnr.it/w2m/doc49.html" index="49" day="39" date="1 luglio 1915” firma=“Cadorna”> <date>1 luglio.</date> <p>Nella zona del Tonale le nostre artiglierie aprirono il fuoco sulle posizioni di Monticello e di Saccarana, disperdendovi reparti nemici intenti a lavori di apprestamenti e difesa.</p> <p>In Val Padola pattuglie di ufficiali arditamente spinte sul Seikofl vi accertarono la costruzione, per parte del nemico, di trinceramenti con reticolati, che la nostra artiglieria batté poi con efficacia.</p> <p>In Carnia il nemico ha tentato vigorosi attacchi notturni contro le nostre posizioni del Passo di Monte Croce e del Pal Piccolo, aiutandosi con razzi e riflettori e lanciando bombe contenenti gas asfissianti. Fu in entrambi i punti respinto. Disperdemmo, mediante tiri di artiglieria, nuclei di lavoratori apparsi sulle pendici settentrionali del Freikofel e del Pal Grande e lungo la mulattiera di Val Bombasch.</p> <p>Fu ripreso con buoni risultati il tiro sul forte Hensel.</p> <p>Alla testata di Valle Resia l’importante posizione di Banjski Skedenj, dominante la conca di Plezzo, venne da noi solidamente occupata.</p>
• Annotazione automatica con il PoS-‐‑tagger Dell’Orle@a (2009) e il parser a dipendenze DeSR (A@ardi et al. 2009)
• I testi, sopra@u@o quelli della IGM, sono particolarmente difficili da analizzare con strumenti addestrati sull’Italiano standard contemporaneo • brevi testi elli@ici, con costruzioni desuete • molti gap lessicali » terminologia militare, variazioni ortografiche rcaiche (es., riparto invece di reparto, schiatori invece di sciatori, ecc.)
Annotazione linguistica dei bolle@ini
<doc url="http://www.ilc.cnr.it/w2m/doc49.html" index="49" day="39" date="1 luglio 1915"> 1 Nella in E EA num=s|gen=f 8 comp 2 zona zona S S num=s|gen=f 1 prep 3 del di E EA num=s|gen=m 2 comp 4 Tonale Tonale S SP _ 3 prep 5 le il R RD num=p|gen=f 7 det 6 nostre nostro A AP num=p|gen=f 7 mod 7 artiglierie artiglieria S S num=p|gen=f 8 subj 8 aprirono aprire V V num=p|per=3|mod=i|ten=s 0 ROOT 9 il il R RD num=s|gen=m 10 det 10 fuoco fuoco S S num=s|gen=m 8 obj 11 sulle su E EA num=p|gen=f 8 comp 12 posizioni posizione S S num=p|gen=f 11 prep
• “S. M. il Re dichiara che l'ʹ Italia si considera in istato di guerra con l'ʹ Austria-‐‑Ungheria da domani.”
• “Benché fa@a segno a violento fuoco di fucileria e di artiglieria, rientrò incolume nelle nostre linee.”
• “Nella no@e dal 26 al 27 la squadra delle nostre aereonavi compiè una incursione su territorio nemico”
• “Le nostre aeronavi, fa@e segno al fuoco nemico, compirono egualmente la loro missione.”
• “hanno lanciato undici bombe senza cagionare gravi danni”
• “Nell'ʹ alta valle Furva, schiatori nemici …vennero scoperti e obbligati ad allontanarsi, inseguiti da schiatori nostri.”
Il linguaggio dei bolle@ini della IGM
• CoLingLab NER • Stanford CoreNLP NER (Finkel et al. 2005), addestrato su I-‐‑CAB (Magnini et al. 2006) » 525 articoli del giornale locale ‘L’Adige’ (periodo: Se@embre-‐‑O@obre, 2004)
Named Entity Recognition
Participant FB1 Prec. Recall GPE LOC ORG PER
FBK_Alam_ro1 63.56 65.55 61.69 80.38 56.38 53.24 51.51
UniPi_SimiDeiRossi_ro1 58.19 65.90 52.09 76.25 48.78 40.60 48.75
UniPi_SimiDeiRossi_ro2 52.15 54.83 49.72 72.25 30.62 33.77 46.19
ColingLab 65,66 76,96 59,76 72,19 46,72 58,85 84,91
BASELINE 44.93 38.84 53.28 69.00 36.49 43.37 18.10
• Classi di entità rilevanti per i bolle@ini di guerra: • Luoghi (LOC) » Monte Nero
• Persone (PER) » Francesco Baracca
• Unità militari (MIL) » Brigata Sassari
• Navi (SHP) » Czepel
• Aeroplani (PLN) » Aviatik
Il ColingLab NER sui bolle@ini della IGM
I-‐‑CAB Bolle6ini
B-‐‑LOC LOC
LOC B-‐‑LOC
I-‐‑LOC B-‐‑GPE
GPE I-‐‑LOC I-‐‑GPE B-‐‑ORG
ORG MIL B-‐‑MIL
I-‐‑ORG I-‐‑MIL B-‐‑PER
PER PER B-‐‑PER
I-‐‑PER I-‐‑PER −
− SHP B-‐‑SHP
− I-‐‑SHP −
− PLN B-‐‑PLN
− I-‐‑PLN
Mapping del tagset I-‐‑CAB e dei bolle@ini
• Training corpus: I-‐‑CAB • Test corpus: Bolle@ini della IGM
• senza uso di gaze@eers
Risultati
• Creazione semi-‐‑automatica di un corpus di dominio annotato con NE • l’edizione cartacea dei bolle@ini della IIGM include un indice analitico
con NE (anch’esso dispinibile in HTML) » luoghi, persone, unità militari, navi, aerei, ecc.
• il corpus WBII è stato creato proie@ando automaticamente l’indice analitico sul testo, successivamente rivisto manualmente
Ada@amento al dominio del NER
1 Ieri ieri B B _ 3 mod_temp O 2 i il R RD num=p|gen=m 3 det O 3 combattimenti combattimento S S num=p|gen=m 10 subj O 4 nella in E EA num=s|gen=f 3 comp O 5 regione regione S S num=s|gen=f prep O 6 di di E E _ 5 comp_loc O 7 el el S SP _ 8 mod B-LOC 8 Alamein Alamein S SP _ 6 prep I-LOC 9 hanno avere V VA num=p|per=3|mod=i|ten=p 10 aux O 10 assunto assumere V V num=s|mod=p|gen=m 0 ROOT O 11 carattere carattere S S num=s|gen=m 10 obj O 12 di di E E _ 14 comp O 13 particolare particolare S S num=s|gen=m 12 prep O 14 violenza violenza S S num=s|gen=f 11 mod_rel O
Ada@amento al dominio del NER
• Training corpus: I-‐‑CAB + WBII • Test corpus: Bolle@ini della IGM
• senza uso di gaze@eers
Ada@amento al dominio del NER
• Training corpus: WBII • Test corpus: Bolle@ini della IGM
• senza uso di gaze@eers
<doc url="http://www.ilc.cnr.it/w2m/doc49.html" index="49" day="39" date="1 luglio 1915"> <date>1 luglio.</date> <p>Nella zona del Tonale le nostre artiglierie aprirono il fuoco sulle posizioni di Monticello e di Saccarana, disperdendovi reparti nemici intenti a lavori di apprestamenti e difesa.</p> <p>In Val Padola pattuglie di ufficiali arditamente spinte sul Seikofl vi accertarono la costruzione, per parte del nemico, di trinceramenti con reticolati, che la nostra artiglieria batté poi con efficacia.</p> <p>In Carnia il nemico ha tentato vigorosi attacchi notturni contro le nostre posizioni del Passo di Monte Croce e del Pal Piccolo, aiutandosi con razzi e riflettori e lanciando bombe contenenti gas asfissianti. Fu in entrambi i punti respinto. Disperdemmo, mediante tiri di artiglieria, nuclei di lavoratori apparsi sulle pendici settentrionali del Freikofel e del Pal Grande e lungo la mulattiera di Val Bombasch.</p> <p>Fu ripreso con buoni risultati il tiro sul forte Hensel.</p> <p>Alla testata di Valle Resia l’importante posizione di Banjski Skedenj, dominante la conca di Plezzo, venne da noi solidamente occupata.</p>
• Linking automatico a Google Map e Bing Map dei nomi di luogo nei bolle@ini e revisione manuale delle coordinate
• Problemi nella georefenziazione • nomi non indicati sulle carte geografiche on line
» es. toponimi in Etiopia, luoghi in montagna, ecc. • varianti ortografiche dei toponimi (es. toponimi arabi, ma non solo)
» es. val Furva, valle Furva, Valfurva
Georeferenziazione dei luoghi nei bolle@ini
Georeferenziazione dei luoghi nei bolle@ini
• Identificazione automatica di URL di Wikipedia associate a NE menzionate nei testi • estrazione delle NE e creazione di stringhe unificate » es. Valle_Lagarina
• concatenazione della stinga della NE alla forma base dell’URL Wikipedia » h@p://it.wikipedia.org/wiki/<NamedEntity>
• Risultati: • IGM: 7.441 recuperati / 5.867 non trovati • IIGM: 11.266 recuperati / 1.785 non trovati
Link a Wikipedia
Link a Wikipedia
1 Nella in E EA num=s|gen=f 7 comp O O 2 mattinata mattinata S S num=s|gen=f 1 prep O O 3 sei sei N N _ 5 mod O O 4 « « F FB _ 5 punc O O 5 Caproni Caproni S SP _ 2 mod B-PLN http://it.wikipedia.org/wiki/Caproni 6 » » F FB _ 5 punc O O 7 eseguirono eseguire V V num=p|per=3 0 ROOT O O 8 un' uno R RI num=s|gen=f 10 det O O 9 ardita ardito A A num=s|gen=f 10 mod O O 10 incursione incursione S S num=s|gen=f 7 obj O O 11 su su E E _ 10 comp_loc O 12 Adelsberg Adelsberg S SP _ 11 prep B-LOC O
Link a Wikipedia
1 Le il R RD num=p|gen=f 2 det O O O 2 posizioni posizione S S num=p|gen=f 20 subj O O O 3 britanniche britannico A A num=p|gen=f 2 mod O O O 4 di di E E _ 2 comp O O O 5 el el S SP _ 6 mod B-LOC O http://it.wikipedia.org/wiki/El_Alamein 6 Alamein Alamein S SP _ 4 prep I-LOC O http://it.wikipedia.org/wiki/El_Alamein 7 ( ( F FB _ 8 punc O O O 8 Golfo Golfo S SP _ 6 mod B-LOC O O 9 degli di E EA num=p|gen=m 8 comp I-LOC O O 10 Arabi Arabi S SP _ 9 prep I-LOC O O 11 ) ) F FB _ 8 punc O O O 12 , , F FF _ 14 punc O O O 13 fortemente fortemente B B _ 14 mod O O O 14 apprestate apprestare V V num=p|mod=p|gen=f 2 mod O O O 15 e e C CC _ 14 con O O O 16 tenacemente tenacemente B B _ 17 mod O O O 17 difese difesa S S num=p|gen=f 14 conj O O O
• Variazione ortografica delle NE • Ambiguità semantica
• “Quasi contemporaneamente veniva segnalato che un'ʹ altra squadra inglese costituita da due corazzate: la Hood da 41.500 tonnellate, armata con o@o pezzi da 381”
Link a Wikipedia problemi aperti
• Database: MySQL 5.6 • Linguaggio programmazione applicativo: PHP
• Framework PHP utilizzato: Yii 1.1.15 • Modalità di ricerca
• Testuale » ricerca di parole (lemmi) e NE nei testi
• Ngram » ricerche diacroniche
• Spazio-‐‑temporali » esplorazione dei luoghi menzionati nei bolle@ini
• Eventi (da implementare) » ricerca di bolle@ini che si riferiscono a macro-‐‑eventi (es. la prima ba@aglia dell’Isonzo)
Software di ricerca e interfaccia
• La linguistica computazionale offre grandi prospe@ive per l’analisi e la valorizzazione della memoria storica delle guerre mondiali • creare una rete di fonti documentali interconnesse a livello semantico
• Una grande sfida per l’analisi computazionale del testo • necessità di metodi in grado di gestire testi rumorosi » errori di digitalizzazione, variazione diacronica e distratica della lingua dei testi, ecc.
• Prossimi passi • completamento delle funzionalità di ricerca • rilascio dei dati estra@i come Linked Open Data • analisi di memorie di guerra » diari, giornali, ecc.
Conclusioni e prospe@ive
Grazie!
Domande?