SlideShare a Scribd company logo
UNIVERSITÀ DEGLI STUDI DI TRIESTE
Dipartimento di Ingegneria e Architettura
Corso di Studi in Ingegneria Elettronica e Informatica
Predisposizione di un dataset per applicazioni
di Natural Language Generation nel dominio
della critica artistica
Tesi di Laurea Triennale
Laureando:
Stefano FURLAN
Relatore:
prof. Eric MEDVET
_____________________________________
ANNO ACCADEMICO 2017-2018
1
Sommario
1. Introduzione....................................................................................................2
2. Natural Language Generation (NLG) ..........................................................3
2.1 Applicazioni di NLG .........................................................................................4
2.2 Applicazioni di NLG in ambito artistico.........................................................5
3. Generatore di critiche artistiche ...................................................................6
3.1 Definizione degli esempi ...................................................................................7
3.2 Raccolta dati ......................................................................................................9
3.3 Pre-elaborazione dati......................................................................................11
4. Conclusioni....................................................................................................18
Bibliografia...........................................................................................................19
2
1. Introduzione
La generazione automatica di linguaggio naturale (Natural language generation o
NLG) è una procedura che ai giorni nostri trova una moltitudine di possibili
applicazioni. In questa tesi si è voluto analizzare il caso di un’applicazione di un
sistema di NLG nell’ambito della critica artistica. Nello specifico l’obiettivo di
questa tesi è stato quello di predisporre un dataset pronto ad essere utilizzato per
allenare un sistema di NLG tramite un approccio supervisionato nell’ambito della
critica artistica.
Nel capitolo 1 si andrà a fare un’introduzione sulla Natural Language Generation
e sulle sue possibili applicazioni, con una particolare attenzione per un possibile
utilizzo nel contesto della critica artistica.
Nel capitolo 2 invece si discuterà circa la raccolta dati e la predisposizione di un
dataset che possa essere utilizzato per l’addestramento di un sistema di NLG da
implementare in un ipotetico generatore automatico di critiche artistiche.
3
2. Natural Language Generation (NLG)
Con il termine Natural Language Generation (NLG) si intende, in linea generale,
il processo di generazione automatica di un testo in linguaggio naturale a partire da
un qualche tipo di dati iniziali. Un sistema di NLG può quindi essere visto in
qualche modo come un “traduttore” che converte dati in un testo in linguaggio
umano. Il testo generato deve chiaramente essere comprensibile, di senso compiuto
e attinente ai dati di partenza. I dati di partenza che vengono presi in input dal
sistema di NLG possono essere di svariate tipologie ad esempio immagini, valori
numerici o anche testuali [1].
Le tecniche per la realizzazione di un sistema di NLG sono svariate e di molteplici
tipologie ed approcci. L’approccio più immediato e tradizionale è quello di creare
delle regole, dei templates in modo da poter riuscire a generare frasi sensate e
significative a partire da un set di dati strutturato. I sistemi basati su questo
approccio tendono ad essere particolarmente robusti e affidabili, a produrre frasi
grammaticalmente corrette e tendenzialmente prive di errori e a generare un output
facilmente prevedibile. Tuttavia, essi sono predisposti per accogliere solamente
determinate e ben conosciute tipologie di input, non sono flessibili e soprattutto non
sono in grado di imparare. Essi risultano infatti molto specifici e di difficile
generalizzazione [2]. Per ovviare agli svantaggi correlati all’utilizzo dei modelli
basati su regole e templates, è possibile utilizzare dei modelli come ad esempio le
reti neurali che necessitano di un approccio supervisionato, ovvero una tecnica di
apprendimento automatico che mira a istruire un determinato sistema fornendogli
degli esempi ideali di coppie input-output. Il sistema quindi, grazie a tali esempi, è
in grado di apprendere e di fornire per ogni input futuro un output adeguato. Questi
modelli tuttavia funzionano bene quando gli esempi input-output che vengono
forniti in fase di allenamento sono in gran numero; è quindi necessario un dataset
di partenza ben popolato [3].
4
2.1 Applicazioni di NLG
La generazione automatica di testo è un campo che presenta numerose applicazioni;
ambito pubblicitario, giornalismo, finanza ed assicurazione, viaggi e turismo, e-
commerce e molti altri. Sistemi di NLG potrebbero essere adottati dai venditori
nell’ambiente dell’e-commerce per generare ad esempio in maniera automatica le
descrizioni di migliaia di prodotti presenti all’interno del catalogo, dai pubblicitari
per creare inserzioni e pubblicità efficienti e mirate, dai giornalisti per creare articoli
e report. Come esempio di un sistema di NLG proprio nel campo del giornalismo
si può prendere in considerazione ad esempio il caso del Los Angeles Times. Nel
2014 infatti, appena tre minuti dopo una forte scossa di terremoto che colpì la
California, sul Los Angeles Times apparve un breve report, generato
automaticamente da un software, contenente informazioni e dati precisi riguardo il
fatto appena avvenuto. Si tratta forse di uno dei primi casi di “giornalismo
automatico” [4].
L’NLG può essere utilizzata poi per generare report metereologici, cartelle cliniche,
chatbot, riassunti a documenti, review di articoli scientifici e molto altro.
Sistemi di NLG possono però essere utilizzati anche in altri contesti, come ad
esempio per generare critiche ed opinioni riguardo un determinato set di dati. Come
esempio di implementazione di un sistema di NLG in tal senso si può prendere in
considerazione un generatore automatico di recensioni di ristoranti realizzato
dall’Università degli Studi di Trieste. Tale generatore, prendendo in considerazione
dati riguardanti un certo ristorante provvede a generare una recensione verosimile,
proprio come se fosse stata scritta da un essere umano [5].
5
2.2 Applicazioni di NLG in ambito artistico
Tra i numerosissimi ambiti a cui un processo di NLG può essere applicato si può
citare ancora il mondo dell’arte, e nello specifico, il caso della critica ad opere
d’arte. Il rapporto tra intelligenza artificiale ed arte non è un tema del tutto nuovo;
esistono infatti già numerosi esempi di immagini e quadri, generati autonomamente
da un’intelligenza artificiale, che possono essere catalogati come “opere d’arte”. Il
fatto che una macchina sia in grado di generare “arte” è un tema molto discusso e
controverso, che fa sorgere spontanee domande come cosa può essere classificato
come opera d’arte? oppure può una macchina possedere creatività? [6] La risposta
a quesiti del genere non è certamente facile e immediata; è tuttavia innegabile che
“macchine” in grado di generare autonomamente immagini o dipinti che possono
assomigliare molto a opere create da una persona umana esistono, e funzionano
anche parecchio bene. È notizia dell’ottobre 2018, ad esempio, quella del primo
dipinto, interamente generato da un’intelligenza artificiale, ad essere venduto
all’asta per un prezzo di ben $432,000. Il quadro era stato creato da un algoritmo
utilizzando un data set di 15,000 ritratti dipinti tra il 14° e il 20° secolo [7].
Il rapporto tra arte ed intelligenza artificiale quindi esiste ed è tuttora studiato e
dibattuto; è quindi lecito poter pensare di provare ad applicare una branca
dell’intelligenza artificiale come l’NLG al mondo dell’arte e, nello specifico, alla
critica di opere d’arte.
6
3. Generatore di critiche artistiche
Il problema preso in considerazione in questa tesi è quindi quello della generazione
automatica di critiche artistiche. L’idea generale è quella di immaginare un
generatore automatico che presa in input un’immagine di un’opera d’arte (un
dipinto nella fattispecie), e forse qualche altro parametro, possa restituire, grazie ad
un sistema di NLG, una critica relativa all’immagine fornita in input. La critica
chiaramente deve sembrare scritta da un critico d’arte umano, e deve essere
coerente con il dipinto a cui è associata.
Figura 1: Generatore critiche artistiche (idea generale)
In Figura 1 è riportato lo schema generale di quello che potrebbe essere un
generatore di critiche artistiche. All’interno del generatore sarà inserito in qualche
modo un sistema di NLG in grado di convertire in testo gli input forniti, in questo
caso sotto forma di immagine. Senza entrare troppo nello specifico riguardo i
dettagli di realizzazione del generatore e del sistema di NLG, si può però
realisticamente ipotizzare che il sistema di NLG possa venir implementato tramite
le reti neurali, ad esempio le Long Short Term Memory Recurrent Neural Networks
(LSTM-RNN), già usate per questo scopo in [5], e quindi attraverso un approccio
supervisionato. Come discusso in precedenza, le tecniche supervisionate, per
7
funzionare al meglio, necessitano di una grande quantità di esempi ideali input-
output attraverso i quali un sistema, come ad esempio una rete neurale, può
imparare in modo da creare un modello adeguato in grado di prevedere
correttamente in futuro gli output desiderati in base a nuovi input forniti. Nel
seguito verrà illustrato il lavoro svolto durante il tirocinio, ovvero la raccolta di
esempi ideali input-output per la predisposizione di un dataset che possa prestarsi
ad essere implementato per allenare un sistema di NLG basato su reti neurali in
grado di generare critiche artistiche.
3.1 Definizione degli esempi
Ragionando nell’ambito della critica artistica e, come discusso in precedenza, gli
esempi ideali, ovvero le coppie input-output, saranno in questo caso del tipo
immagine-testo. L’immagine sarà necessariamente una foto dell’opera d’arte che si
vuole criticare. Per la raccolta non verranno prese in considerazione tutte le
tipologie di opere d’arte ma solamente i dipinti, in quanto l’associazione di un
dipinto a un’immagine risulta più facile e immediata e anche perché i dipinti sono
la tipologia di arte figurativa forse più facilmente realizzabile automaticamente da
un’intelligenza artificiale. Definito l’input occorre ora effettuare un qualche
ragionamento sull’output, che equivale a porsi la domanda: cos’è una critica
artistica? Una critica infatti non deve essere una pura descrizione dell’opera ma
piuttosto un’analisi e un’interpretazione della stessa che faccia emergere ciò che
l’artista intendeva esprimere attraverso l’opera e le emozioni che essa provoca nei
confronti di un osservatore. Di seguito sono presi in considerazione due esempi
immagine-critica.
8
“Widely heralded as one of the most
influential painters working today, Luc
Tuymans uses deceptively
straightforward imagery to plumb the
complexities of politics, culture, and
memory. His large-scale oil
painting Dad’s Heat, which depicts a
space heater given to him by his father,
beautifully showcases the artist’s
alchemy, transforming a banal object
into a mesmerizing composition.”
“The painting illustrates a scene from
Shakespeare's The Tempest.”
Figura 2: Esempio coppia immagine-critica (1)
Figura 3: Esempio coppia immagine-critica (2)
9
In Figura 2 si può osservare un “buon” esempio di coppia immagine-critica. Il testo
associato all’immagine infatti contiene elementi di interpretazione e descrive in
qualche modo ciò che l’artista intendeva esprimere attraverso l’opera. Questo testo
si potrebbe avvicinare a ciò che è stato inteso come critica.
In Figura 3 invece è riportato un “cattivo” esempio di coppia immagine-critica; il
testo associato all’immagine infatti risulta essere un testo di pura natura descrittiva
e perlopiù anche molto breve e scarno. In questo caso la componente interpretativa
ed emotiva è totalmente assente.
3.2 Raccolta dati
Una volta definite le tipologie di esempi adatte è necessario trovare una fonte
adeguata da cui estrarre i dati. Trattandosi di una raccolta dati volta
all’addestramento di una rete neurale attraverso un approccio supervisionato, le
fonti scelte devono contenere una grande quantità di dati in quanto sono necessari
un gran numero di esempi per poter permettere al sistema di funzionare al meglio.
Per questo lavoro sono state scelte due sorgenti dati differenti. La prima, The Web
Gallery of Art [8], è un database online che contiene oltre 46.000 riproduzioni di
opere d’arte europee di ogni tipo appartenenti ad un periodo che va dall’8° al 19°
secolo. Ogni opera è presente all’interno del database sotto forma di immagine ed
è accompagnata da una didascalia che si avvicina molto alla tipologia di critica
desiderata. La seconda fonte invece è la galleria online del Tate [9], complesso di
quattro musei britannici. Questa seconda fonte raccoglie riproduzioni di opere
d’arte sotto forma di immagine, con critica annessa, appartenenti ad un periodo
storico che va dal 19° secolo ad oggi. L’intenzione era quella di concentrare la
raccolta sui dipinti di arte “contemporanea” o in generale il più astratta possibile. È
stata presa una tale decisione in quanto l’arte contemporanea e astratta risulta
tendenzialmente più difficile da interpretare e i soggetti o gli elementi presenti
all’interno di un dipinto astratto sono più difficili da definire e da individuare.
Nell’ottica di un generatore di critiche artistiche, una critica per un dipinto
10
contemporaneo o astratto può risultare in qualche modo più credibile e meno
discutibile rispetto ad una critica generata per un dipinto classico ad esempio,
proprio grazie al fatto che spesso gli elementi presenti all’interno di dipinti
contemporanei sono più liberamente interpretabili. La sorgente dati del Tate
risultava adatta a questo scopo tuttavia la raccolta dei dati non risultava facilmente
automatizzabile. Si è quindi deciso di ricorrere anche alla sorgente dati The Web
Gallery of Art perché, nonostante contenesse dipinti realizzati fino al 19° secolo, la
raccolta dei dati per questa sorgente risultava più facilmente automatizzabile.
Mentre per la sorgente dati delle opere contemporanee è stata effettuata una raccolta
manuale, per la sorgente dati The Web Gallery of Art quindi la raccolta è stata
automatizzata. Si è infatti realizzato uno script in Java che selezionasse solamente
le opere d’arte appartenenti alla categoria dipinti e che scaricasse automaticamente
tutte le suddette opere, salvandole come un file immagine .jpg, e i commenti ad esse
associati, salvati in un file di testo .txt rinominato con lo stesso nome del file
immagine corrispondente. Al termine del procedimento si sono quindi ottenute
1000 coppie di esempi immagine-critica per i dipinti contemporanei e 23.945
coppie immagine-critica per i non contemporanei. Di seguito è riportata una tabella
con dimensione media di una critica e dimensione media di un’immagine per
ognuno dei due dataset.
Dimensione media
critica
Dimensione media
immagine
Dataset opere
"contemporanee"
560 byte (100 parole
circa) 220 KB
Dataset opere "non
contemporanee"
440 byte (75 parole
circa) 126 KB
Tabella 1: Dimensioni medie del dataset immagine-critica
11
3.3 Pre-elaborazione dati
Si è riuscito quindi ad ottenere un dataset di circa 26.000 esempi input-output
pronto per essere utilizzato per addestrare un sistema di NLG basato sulle reti
neurali in grado di generare automaticamente critiche ad opere d’arte.
Lo schema approssimativo di generatore considerato precedentemente, per
produrre un output testuale, considerava un singolo input, ovvero un file immagine.
Si potrebbe però ora provare a immaginare il generatore in un modo leggermente
diverso, ipotizzando ad esempio che l’input del sistema di NLG non sia più
un’immagine (o almeno non più solamente un’immagine), bensì un certo tipo di
informazioni estraibili in una qualche maniera a partire dalle immagini.
Figura 4: Generatore di critiche artistiche (possibile miglioramento)
Dalla Figura 4 si può osservare come lo schema a blocchi del generatore sia stato
leggermente modificato; è stato infatti aggiunto un blocco intermedio di pre-
elaborazione tra l’immagine in input e l’ingresso del generatore vero e proprio. Tale
blocco di pre-elaborazione ha lo scopo di estrarre informazioni di alto livello dalle
immagini. Si vuole infatti elaborare un’immagine in modo da ottenere delle
informazioni utili su di essa, che siano di tipo testuale o numerico, e che possano
eventualmente essere fornite in input al generatore in modo da permetterne un
funzionamento ancora migliore. Si è quindi cercato un qualche strumento che
potesse prestarsi ad un tipo di elaborazioni del genere. Lo strumento doveva essere
gratuito, applicabile all’intero set di immagini raccolte precedentemente senza
12
troppe difficoltà, e soprattutto essere in grado di fornire una certa quantità di
informazioni utili e sensate sulle immagini. Lo strumento che si è deciso di
utilizzare è stato l’API Artificial Vision di Microsoft Azure, la piattaforma cloud
pubblica di Microsoft che offre servizi di cloud computing. L’API Artificial Vision,
nello specifico, fornisce algoritmi per l’elaborazione avanzata di immagini e la
restituzione di informazioni dettagliate sugli elementi visivi e sulle caratteristiche
delle immagini. Di seguito è illustrato un “buon” esempio di elaborazione di
un’immagine attraverso l’API e sono stati messi in evidenza i risultati ottenuti.
Figura 5: Immagine elaborata attraverso l'API Artificial Vision (1)
13
NOME DELLA FUNZIONALITÀ: VALORE
Description { "tags": [ "person", "indoor", "man", "sitting", "front", "woman",
"playing", "window", "holding", "table", "room", "living", "young", "laptop",
"people", "standing", "phone", "computer", "video", "group", "wii" ], "captions":
[ { "text": "a man and a woman standing in front of a window", "confidence":
0.706796467 } ] }
Tag [ { "name": "person", "confidence": 0.975730956 } ]
Format "Jpeg"
Height 1078
Width 1536
Is BW false
Is Adult Content false
Adult Score 0.0500234924
Is Racy Content false
Racy Score 0.0279251579
Categories [ { "name": "abstract_", "score": 0.0078125 } ]
Faces [ { "age": 23, "gender": "Female", "faceRectangle": { "top": 262, "left":
535, "width": 68, "height": 68 } } ]
Dominant Color Background "Grey"
Dominant Color Foreground "Grey"
Dominant Color #644540
Nella voce description sono raggruppati dei tag relativi agli elementi visivi
contenuti all’interno dell’immagine e un breve testo descrittivo dell’immagine
considerata. A fianco alla descrizione dell’immagine compare inoltre la voce
confidence che indica il livello di attendibilità della descrizione. Alla voce Tag è
invece indicato il tag principale. Sono poi presenti informazioni come formato e
dimensione dell’immagine e riguardanti il fatto che un’immagine sia in bianco e
nero o meno. Le voci Is Adult Content e Adult Score segnalano l’eventuale presenza
14
di un contenuto adatto agli adulti e il grado di attendibilità di tale contenuto, mentre
le voci Is Racy Content e Racy Score indicano la presenza di un contenuto “spinto”
e il grado di attendibilità di tale contenuto. La voce Categories indica una o più
categorie alla quale l’immagine può essere assegnata mentre la voce Faces rileva
gli eventuali volti presenti indicandone età, sesso e posizione all’interno
dell’immagine. Sono infine forniti anche i colori dominanti presenti.
Di seguito invece è illustrato un “cattivo” esempio di elaborazione delle immagini
attraverso l’API, ovvero un esempio dove i risultati ottenuti non sono del tutto
soddisfacenti.
Figura 6: Immagine elaborata attraverso l'API Artificial Vision (2)
NOME DELLA FUNZIONALITÀ: VALORE
Description { "tags": [ "building", "person", "man", "old", "holding", "front",
"sitting", "standing", "wearing", "stone", "black", "door", "suit", "glass", "cat",
"blue", "white", "brick" ], "captions": [ { "text": "a man standing in front of a
building", "confidence": 0.590537548 } ] }
15
Tag [ { "name": "person", "confidence": 0.916289 }, { "name": "building",
"confidence": 0.840875268 }, { "name": "old", "confidence": 0.446174175 },
{ "name": "building material", "confidence": 0.374418557 }, { "name": "stone",
"confidence": 0.2538755 } ]
Formato dell'immagine "Jpeg"
Height 1536
Width 1270
Is BW false
Is Adult Content false
Adult Score 0.0705073848
Is Racy Content false
Racy Score 0.113356553
Categories [ { "name": "abstract_nonphoto", "score": 0.26171875 } ]
Faces []
Dominant Color Background "Grey"
Dominant Color Foreground "Grey"
Dominant Color #374C5B
Una volta scelto e provato il funzionamento dello strumento per l’estrazione di
informazioni dalle immagini, esso è stato applicato in maniera automatizzata a tutto
il set di immagini raccolto in precedenza grazie ad uno script in Java. I risultati
ottenuti sono stati raccolti in un unico file .csv formato da una riga per ogni opera
d’arte. Di seguito sono riportati alcuni esempi estratti dal file .csv.
16
Figura 7: Esempi informazioni estratte dalle immagini (1)
Figura 8: Esempi informazioni estratte dalle immagini (2)
17
Figura 9: Esempi informazioni estratte dalle immagini (3)
18
4. Conclusioni
La raccolta dati svolta ha portato alla creazione di un dataset finale composto da
circa 26.000 coppie di esempi immagine-critica e da un file .csv contenente
informazioni di alto livello per ogni immagine raccolta. Qualora in futuro si volesse
decidere di implementare il generatore di critiche artistiche ipotizzato, si potrebbe
far uso dei dati ottenuti in questa tesi per effettuare l’addestramento di una rete
neurale con cui realizzare il sistema di NLG presente all’interno del generatore.
19
Bibliografia
[1] R. Evans, P. Piwek e L. Cahill, What is NLG?, Brighton, UK.
[2] J. Tang, Y. Yang, S. Carton, M. Zhang e Q. Mei, Context-aware Natural
Language Generation with Recurrent Neural Networks, 2016.
[3] M. Freitag e S. Roy, Unsupervised Natural Language Generation with
Denoising Autoencoders, 2018.
[4] «BBC,» 18 Marzo 2014. [Online]. Available:
https://www.bbc.com/news/technology-26614051.
[5] A. Bartoli, A. De Lorenzo, E. Medvet, D. Morello e F. Tarlao, “Best Dinner
Ever!!!”: Automatic Generation of Restaurant Reviews with LSTM-RNN, 2016.
[6] L. Spinney, «nature, International journal of science,» 27 Aprile 2018. [Online].
Available: https://www.nature.com/articles/d41586-018-04989-2.
[7] «BBC,» 25 Ottobre 2018. [Online]. Available:
https://www.bbc.com/news/technology-45980863.
[8] «Web Gallery of Art,» [Online]. Available: https://www.wga.hu/.
[9] «Tate,» [Online]. Available: https://www.tate.org.uk/.

More Related Content

Similar to Predisposizione di un dataset per applicazioni di natural language generation nel dominio della critica artistica

Progetto di ergonomia cognitiva / relazione
Progetto di ergonomia cognitiva / relazioneProgetto di ergonomia cognitiva / relazione
Progetto di ergonomia cognitiva / relazione
Giulia Camedda
 
Blockchain e AI: verso una nuova finanza
Blockchain e AI: verso una nuova finanzaBlockchain e AI: verso una nuova finanza
Blockchain e AI: verso una nuova finanza
Alessandro Greppi
 
Information Design: Visualizzazione di Informazioni Quantitative
Information Design: Visualizzazione di Informazioni QuantitativeInformation Design: Visualizzazione di Informazioni Quantitative
Information Design: Visualizzazione di Informazioni QuantitativeDuccio Schiavon
 
Tesi
TesiTesi
Un modello per la valutazione dei siti web 2024.pdf
Un modello per la valutazione dei siti web 2024.pdfUn modello per la valutazione dei siti web 2024.pdf
Un modello per la valutazione dei siti web 2024.pdf
Marco Accossato
 
Tecnologie per la mente mind tools - robotica
Tecnologie per la mente mind tools - roboticaTecnologie per la mente mind tools - robotica
Tecnologie per la mente mind tools - robotica
pitagoraclasse20
 
Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...
Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...
Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...Social Media Lab
 
Informatica Presente e Futuro
Informatica Presente e FuturoInformatica Presente e Futuro
Informatica Presente e Futuro
Francesco De Angelis
 
I principi base dell’intelligenza artificiale spiegata ai non tecnici
I principi base dell’intelligenza artificiale spiegata ai non tecnici I principi base dell’intelligenza artificiale spiegata ai non tecnici
I principi base dell’intelligenza artificiale spiegata ai non tecnici
KEA s.r.l.
 
AreaMVC: un'architettura software basata sulla semplicità
AreaMVC: un'architettura software basata sulla semplicitàAreaMVC: un'architettura software basata sulla semplicità
AreaMVC: un'architettura software basata sulla semplicità
Giulio Destri
 
Scienza 2.0 - Un'introduzione
Scienza 2.0 - Un'introduzioneScienza 2.0 - Un'introduzione
Scienza 2.0 - Un'introduzione
Riva Giuseppe
 
Progettazione e sviluppo di un applicativo web e della sua base di dati per l...
Progettazione e sviluppo di un applicativo web e della sua base di dati per l...Progettazione e sviluppo di un applicativo web e della sua base di dati per l...
Progettazione e sviluppo di un applicativo web e della sua base di dati per l...dudinestefano
 
Cmplx school spoleto_ve_reti1su3_22ago2016
Cmplx school spoleto_ve_reti1su3_22ago2016Cmplx school spoleto_ve_reti1su3_22ago2016
Cmplx school spoleto_ve_reti1su3_22ago2016
Valerio Eletti
 
IC2009 Introduzione all'ingegneria della conoscenza
IC2009 Introduzione all'ingegneria della conoscenzaIC2009 Introduzione all'ingegneria della conoscenza
IC2009 Introduzione all'ingegneria della conoscenzaEmanuele Della Valle
 
IC2008 Introduzione all'Ingegneria Della Conoscenza
IC2008 Introduzione all'Ingegneria Della ConoscenzaIC2008 Introduzione all'Ingegneria Della Conoscenza
IC2008 Introduzione all'Ingegneria Della ConoscenzaEmanuele Della Valle
 
Sviluppo di un software in Java per il controllo di un braccio robotico trami...
Sviluppo di un software in Java per il controllo di un braccio robotico trami...Sviluppo di un software in Java per il controllo di un braccio robotico trami...
Sviluppo di un software in Java per il controllo di un braccio robotico trami...
Glauco Lorenzut
 
SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...
SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...
SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...
guest12aaa586
 
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Stefano Costanzo
 

Similar to Predisposizione di un dataset per applicazioni di natural language generation nel dominio della critica artistica (20)

Progetto di ergonomia cognitiva / relazione
Progetto di ergonomia cognitiva / relazioneProgetto di ergonomia cognitiva / relazione
Progetto di ergonomia cognitiva / relazione
 
Blockchain e AI: verso una nuova finanza
Blockchain e AI: verso una nuova finanzaBlockchain e AI: verso una nuova finanza
Blockchain e AI: verso una nuova finanza
 
Information Design: Visualizzazione di Informazioni Quantitative
Information Design: Visualizzazione di Informazioni QuantitativeInformation Design: Visualizzazione di Informazioni Quantitative
Information Design: Visualizzazione di Informazioni Quantitative
 
Tesi
TesiTesi
Tesi
 
Un modello per la valutazione dei siti web 2024.pdf
Un modello per la valutazione dei siti web 2024.pdfUn modello per la valutazione dei siti web 2024.pdf
Un modello per la valutazione dei siti web 2024.pdf
 
Tecnologie per la mente mind tools - robotica
Tecnologie per la mente mind tools - roboticaTecnologie per la mente mind tools - robotica
Tecnologie per la mente mind tools - robotica
 
Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...
Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...
Duccio Schiavon - Information Design: Visualizzazione di Informazioni Quantit...
 
Informatica Presente e Futuro
Informatica Presente e FuturoInformatica Presente e Futuro
Informatica Presente e Futuro
 
Tesi_Adamou
Tesi_AdamouTesi_Adamou
Tesi_Adamou
 
Tesi_Adamou
Tesi_AdamouTesi_Adamou
Tesi_Adamou
 
I principi base dell’intelligenza artificiale spiegata ai non tecnici
I principi base dell’intelligenza artificiale spiegata ai non tecnici I principi base dell’intelligenza artificiale spiegata ai non tecnici
I principi base dell’intelligenza artificiale spiegata ai non tecnici
 
AreaMVC: un'architettura software basata sulla semplicità
AreaMVC: un'architettura software basata sulla semplicitàAreaMVC: un'architettura software basata sulla semplicità
AreaMVC: un'architettura software basata sulla semplicità
 
Scienza 2.0 - Un'introduzione
Scienza 2.0 - Un'introduzioneScienza 2.0 - Un'introduzione
Scienza 2.0 - Un'introduzione
 
Progettazione e sviluppo di un applicativo web e della sua base di dati per l...
Progettazione e sviluppo di un applicativo web e della sua base di dati per l...Progettazione e sviluppo di un applicativo web e della sua base di dati per l...
Progettazione e sviluppo di un applicativo web e della sua base di dati per l...
 
Cmplx school spoleto_ve_reti1su3_22ago2016
Cmplx school spoleto_ve_reti1su3_22ago2016Cmplx school spoleto_ve_reti1su3_22ago2016
Cmplx school spoleto_ve_reti1su3_22ago2016
 
IC2009 Introduzione all'ingegneria della conoscenza
IC2009 Introduzione all'ingegneria della conoscenzaIC2009 Introduzione all'ingegneria della conoscenza
IC2009 Introduzione all'ingegneria della conoscenza
 
IC2008 Introduzione all'Ingegneria Della Conoscenza
IC2008 Introduzione all'Ingegneria Della ConoscenzaIC2008 Introduzione all'Ingegneria Della Conoscenza
IC2008 Introduzione all'Ingegneria Della Conoscenza
 
Sviluppo di un software in Java per il controllo di un braccio robotico trami...
Sviluppo di un software in Java per il controllo di un braccio robotico trami...Sviluppo di un software in Java per il controllo di un braccio robotico trami...
Sviluppo di un software in Java per il controllo di un braccio robotico trami...
 
SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...
SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...
SVILUPPO DI UNA APPLICAZIONE PER L’ACQUISIZIONE DI DATI DA SUPPORTO CARTACEO:...
 
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
Definizione e sviluppo di un algoritmo genetico multiobiettivo per problemi d...
 

Predisposizione di un dataset per applicazioni di natural language generation nel dominio della critica artistica

  • 1. UNIVERSITÀ DEGLI STUDI DI TRIESTE Dipartimento di Ingegneria e Architettura Corso di Studi in Ingegneria Elettronica e Informatica Predisposizione di un dataset per applicazioni di Natural Language Generation nel dominio della critica artistica Tesi di Laurea Triennale Laureando: Stefano FURLAN Relatore: prof. Eric MEDVET _____________________________________ ANNO ACCADEMICO 2017-2018
  • 2. 1 Sommario 1. Introduzione....................................................................................................2 2. Natural Language Generation (NLG) ..........................................................3 2.1 Applicazioni di NLG .........................................................................................4 2.2 Applicazioni di NLG in ambito artistico.........................................................5 3. Generatore di critiche artistiche ...................................................................6 3.1 Definizione degli esempi ...................................................................................7 3.2 Raccolta dati ......................................................................................................9 3.3 Pre-elaborazione dati......................................................................................11 4. Conclusioni....................................................................................................18 Bibliografia...........................................................................................................19
  • 3. 2 1. Introduzione La generazione automatica di linguaggio naturale (Natural language generation o NLG) è una procedura che ai giorni nostri trova una moltitudine di possibili applicazioni. In questa tesi si è voluto analizzare il caso di un’applicazione di un sistema di NLG nell’ambito della critica artistica. Nello specifico l’obiettivo di questa tesi è stato quello di predisporre un dataset pronto ad essere utilizzato per allenare un sistema di NLG tramite un approccio supervisionato nell’ambito della critica artistica. Nel capitolo 1 si andrà a fare un’introduzione sulla Natural Language Generation e sulle sue possibili applicazioni, con una particolare attenzione per un possibile utilizzo nel contesto della critica artistica. Nel capitolo 2 invece si discuterà circa la raccolta dati e la predisposizione di un dataset che possa essere utilizzato per l’addestramento di un sistema di NLG da implementare in un ipotetico generatore automatico di critiche artistiche.
  • 4. 3 2. Natural Language Generation (NLG) Con il termine Natural Language Generation (NLG) si intende, in linea generale, il processo di generazione automatica di un testo in linguaggio naturale a partire da un qualche tipo di dati iniziali. Un sistema di NLG può quindi essere visto in qualche modo come un “traduttore” che converte dati in un testo in linguaggio umano. Il testo generato deve chiaramente essere comprensibile, di senso compiuto e attinente ai dati di partenza. I dati di partenza che vengono presi in input dal sistema di NLG possono essere di svariate tipologie ad esempio immagini, valori numerici o anche testuali [1]. Le tecniche per la realizzazione di un sistema di NLG sono svariate e di molteplici tipologie ed approcci. L’approccio più immediato e tradizionale è quello di creare delle regole, dei templates in modo da poter riuscire a generare frasi sensate e significative a partire da un set di dati strutturato. I sistemi basati su questo approccio tendono ad essere particolarmente robusti e affidabili, a produrre frasi grammaticalmente corrette e tendenzialmente prive di errori e a generare un output facilmente prevedibile. Tuttavia, essi sono predisposti per accogliere solamente determinate e ben conosciute tipologie di input, non sono flessibili e soprattutto non sono in grado di imparare. Essi risultano infatti molto specifici e di difficile generalizzazione [2]. Per ovviare agli svantaggi correlati all’utilizzo dei modelli basati su regole e templates, è possibile utilizzare dei modelli come ad esempio le reti neurali che necessitano di un approccio supervisionato, ovvero una tecnica di apprendimento automatico che mira a istruire un determinato sistema fornendogli degli esempi ideali di coppie input-output. Il sistema quindi, grazie a tali esempi, è in grado di apprendere e di fornire per ogni input futuro un output adeguato. Questi modelli tuttavia funzionano bene quando gli esempi input-output che vengono forniti in fase di allenamento sono in gran numero; è quindi necessario un dataset di partenza ben popolato [3].
  • 5. 4 2.1 Applicazioni di NLG La generazione automatica di testo è un campo che presenta numerose applicazioni; ambito pubblicitario, giornalismo, finanza ed assicurazione, viaggi e turismo, e- commerce e molti altri. Sistemi di NLG potrebbero essere adottati dai venditori nell’ambiente dell’e-commerce per generare ad esempio in maniera automatica le descrizioni di migliaia di prodotti presenti all’interno del catalogo, dai pubblicitari per creare inserzioni e pubblicità efficienti e mirate, dai giornalisti per creare articoli e report. Come esempio di un sistema di NLG proprio nel campo del giornalismo si può prendere in considerazione ad esempio il caso del Los Angeles Times. Nel 2014 infatti, appena tre minuti dopo una forte scossa di terremoto che colpì la California, sul Los Angeles Times apparve un breve report, generato automaticamente da un software, contenente informazioni e dati precisi riguardo il fatto appena avvenuto. Si tratta forse di uno dei primi casi di “giornalismo automatico” [4]. L’NLG può essere utilizzata poi per generare report metereologici, cartelle cliniche, chatbot, riassunti a documenti, review di articoli scientifici e molto altro. Sistemi di NLG possono però essere utilizzati anche in altri contesti, come ad esempio per generare critiche ed opinioni riguardo un determinato set di dati. Come esempio di implementazione di un sistema di NLG in tal senso si può prendere in considerazione un generatore automatico di recensioni di ristoranti realizzato dall’Università degli Studi di Trieste. Tale generatore, prendendo in considerazione dati riguardanti un certo ristorante provvede a generare una recensione verosimile, proprio come se fosse stata scritta da un essere umano [5].
  • 6. 5 2.2 Applicazioni di NLG in ambito artistico Tra i numerosissimi ambiti a cui un processo di NLG può essere applicato si può citare ancora il mondo dell’arte, e nello specifico, il caso della critica ad opere d’arte. Il rapporto tra intelligenza artificiale ed arte non è un tema del tutto nuovo; esistono infatti già numerosi esempi di immagini e quadri, generati autonomamente da un’intelligenza artificiale, che possono essere catalogati come “opere d’arte”. Il fatto che una macchina sia in grado di generare “arte” è un tema molto discusso e controverso, che fa sorgere spontanee domande come cosa può essere classificato come opera d’arte? oppure può una macchina possedere creatività? [6] La risposta a quesiti del genere non è certamente facile e immediata; è tuttavia innegabile che “macchine” in grado di generare autonomamente immagini o dipinti che possono assomigliare molto a opere create da una persona umana esistono, e funzionano anche parecchio bene. È notizia dell’ottobre 2018, ad esempio, quella del primo dipinto, interamente generato da un’intelligenza artificiale, ad essere venduto all’asta per un prezzo di ben $432,000. Il quadro era stato creato da un algoritmo utilizzando un data set di 15,000 ritratti dipinti tra il 14° e il 20° secolo [7]. Il rapporto tra arte ed intelligenza artificiale quindi esiste ed è tuttora studiato e dibattuto; è quindi lecito poter pensare di provare ad applicare una branca dell’intelligenza artificiale come l’NLG al mondo dell’arte e, nello specifico, alla critica di opere d’arte.
  • 7. 6 3. Generatore di critiche artistiche Il problema preso in considerazione in questa tesi è quindi quello della generazione automatica di critiche artistiche. L’idea generale è quella di immaginare un generatore automatico che presa in input un’immagine di un’opera d’arte (un dipinto nella fattispecie), e forse qualche altro parametro, possa restituire, grazie ad un sistema di NLG, una critica relativa all’immagine fornita in input. La critica chiaramente deve sembrare scritta da un critico d’arte umano, e deve essere coerente con il dipinto a cui è associata. Figura 1: Generatore critiche artistiche (idea generale) In Figura 1 è riportato lo schema generale di quello che potrebbe essere un generatore di critiche artistiche. All’interno del generatore sarà inserito in qualche modo un sistema di NLG in grado di convertire in testo gli input forniti, in questo caso sotto forma di immagine. Senza entrare troppo nello specifico riguardo i dettagli di realizzazione del generatore e del sistema di NLG, si può però realisticamente ipotizzare che il sistema di NLG possa venir implementato tramite le reti neurali, ad esempio le Long Short Term Memory Recurrent Neural Networks (LSTM-RNN), già usate per questo scopo in [5], e quindi attraverso un approccio supervisionato. Come discusso in precedenza, le tecniche supervisionate, per
  • 8. 7 funzionare al meglio, necessitano di una grande quantità di esempi ideali input- output attraverso i quali un sistema, come ad esempio una rete neurale, può imparare in modo da creare un modello adeguato in grado di prevedere correttamente in futuro gli output desiderati in base a nuovi input forniti. Nel seguito verrà illustrato il lavoro svolto durante il tirocinio, ovvero la raccolta di esempi ideali input-output per la predisposizione di un dataset che possa prestarsi ad essere implementato per allenare un sistema di NLG basato su reti neurali in grado di generare critiche artistiche. 3.1 Definizione degli esempi Ragionando nell’ambito della critica artistica e, come discusso in precedenza, gli esempi ideali, ovvero le coppie input-output, saranno in questo caso del tipo immagine-testo. L’immagine sarà necessariamente una foto dell’opera d’arte che si vuole criticare. Per la raccolta non verranno prese in considerazione tutte le tipologie di opere d’arte ma solamente i dipinti, in quanto l’associazione di un dipinto a un’immagine risulta più facile e immediata e anche perché i dipinti sono la tipologia di arte figurativa forse più facilmente realizzabile automaticamente da un’intelligenza artificiale. Definito l’input occorre ora effettuare un qualche ragionamento sull’output, che equivale a porsi la domanda: cos’è una critica artistica? Una critica infatti non deve essere una pura descrizione dell’opera ma piuttosto un’analisi e un’interpretazione della stessa che faccia emergere ciò che l’artista intendeva esprimere attraverso l’opera e le emozioni che essa provoca nei confronti di un osservatore. Di seguito sono presi in considerazione due esempi immagine-critica.
  • 9. 8 “Widely heralded as one of the most influential painters working today, Luc Tuymans uses deceptively straightforward imagery to plumb the complexities of politics, culture, and memory. His large-scale oil painting Dad’s Heat, which depicts a space heater given to him by his father, beautifully showcases the artist’s alchemy, transforming a banal object into a mesmerizing composition.” “The painting illustrates a scene from Shakespeare's The Tempest.” Figura 2: Esempio coppia immagine-critica (1) Figura 3: Esempio coppia immagine-critica (2)
  • 10. 9 In Figura 2 si può osservare un “buon” esempio di coppia immagine-critica. Il testo associato all’immagine infatti contiene elementi di interpretazione e descrive in qualche modo ciò che l’artista intendeva esprimere attraverso l’opera. Questo testo si potrebbe avvicinare a ciò che è stato inteso come critica. In Figura 3 invece è riportato un “cattivo” esempio di coppia immagine-critica; il testo associato all’immagine infatti risulta essere un testo di pura natura descrittiva e perlopiù anche molto breve e scarno. In questo caso la componente interpretativa ed emotiva è totalmente assente. 3.2 Raccolta dati Una volta definite le tipologie di esempi adatte è necessario trovare una fonte adeguata da cui estrarre i dati. Trattandosi di una raccolta dati volta all’addestramento di una rete neurale attraverso un approccio supervisionato, le fonti scelte devono contenere una grande quantità di dati in quanto sono necessari un gran numero di esempi per poter permettere al sistema di funzionare al meglio. Per questo lavoro sono state scelte due sorgenti dati differenti. La prima, The Web Gallery of Art [8], è un database online che contiene oltre 46.000 riproduzioni di opere d’arte europee di ogni tipo appartenenti ad un periodo che va dall’8° al 19° secolo. Ogni opera è presente all’interno del database sotto forma di immagine ed è accompagnata da una didascalia che si avvicina molto alla tipologia di critica desiderata. La seconda fonte invece è la galleria online del Tate [9], complesso di quattro musei britannici. Questa seconda fonte raccoglie riproduzioni di opere d’arte sotto forma di immagine, con critica annessa, appartenenti ad un periodo storico che va dal 19° secolo ad oggi. L’intenzione era quella di concentrare la raccolta sui dipinti di arte “contemporanea” o in generale il più astratta possibile. È stata presa una tale decisione in quanto l’arte contemporanea e astratta risulta tendenzialmente più difficile da interpretare e i soggetti o gli elementi presenti all’interno di un dipinto astratto sono più difficili da definire e da individuare. Nell’ottica di un generatore di critiche artistiche, una critica per un dipinto
  • 11. 10 contemporaneo o astratto può risultare in qualche modo più credibile e meno discutibile rispetto ad una critica generata per un dipinto classico ad esempio, proprio grazie al fatto che spesso gli elementi presenti all’interno di dipinti contemporanei sono più liberamente interpretabili. La sorgente dati del Tate risultava adatta a questo scopo tuttavia la raccolta dei dati non risultava facilmente automatizzabile. Si è quindi deciso di ricorrere anche alla sorgente dati The Web Gallery of Art perché, nonostante contenesse dipinti realizzati fino al 19° secolo, la raccolta dei dati per questa sorgente risultava più facilmente automatizzabile. Mentre per la sorgente dati delle opere contemporanee è stata effettuata una raccolta manuale, per la sorgente dati The Web Gallery of Art quindi la raccolta è stata automatizzata. Si è infatti realizzato uno script in Java che selezionasse solamente le opere d’arte appartenenti alla categoria dipinti e che scaricasse automaticamente tutte le suddette opere, salvandole come un file immagine .jpg, e i commenti ad esse associati, salvati in un file di testo .txt rinominato con lo stesso nome del file immagine corrispondente. Al termine del procedimento si sono quindi ottenute 1000 coppie di esempi immagine-critica per i dipinti contemporanei e 23.945 coppie immagine-critica per i non contemporanei. Di seguito è riportata una tabella con dimensione media di una critica e dimensione media di un’immagine per ognuno dei due dataset. Dimensione media critica Dimensione media immagine Dataset opere "contemporanee" 560 byte (100 parole circa) 220 KB Dataset opere "non contemporanee" 440 byte (75 parole circa) 126 KB Tabella 1: Dimensioni medie del dataset immagine-critica
  • 12. 11 3.3 Pre-elaborazione dati Si è riuscito quindi ad ottenere un dataset di circa 26.000 esempi input-output pronto per essere utilizzato per addestrare un sistema di NLG basato sulle reti neurali in grado di generare automaticamente critiche ad opere d’arte. Lo schema approssimativo di generatore considerato precedentemente, per produrre un output testuale, considerava un singolo input, ovvero un file immagine. Si potrebbe però ora provare a immaginare il generatore in un modo leggermente diverso, ipotizzando ad esempio che l’input del sistema di NLG non sia più un’immagine (o almeno non più solamente un’immagine), bensì un certo tipo di informazioni estraibili in una qualche maniera a partire dalle immagini. Figura 4: Generatore di critiche artistiche (possibile miglioramento) Dalla Figura 4 si può osservare come lo schema a blocchi del generatore sia stato leggermente modificato; è stato infatti aggiunto un blocco intermedio di pre- elaborazione tra l’immagine in input e l’ingresso del generatore vero e proprio. Tale blocco di pre-elaborazione ha lo scopo di estrarre informazioni di alto livello dalle immagini. Si vuole infatti elaborare un’immagine in modo da ottenere delle informazioni utili su di essa, che siano di tipo testuale o numerico, e che possano eventualmente essere fornite in input al generatore in modo da permetterne un funzionamento ancora migliore. Si è quindi cercato un qualche strumento che potesse prestarsi ad un tipo di elaborazioni del genere. Lo strumento doveva essere gratuito, applicabile all’intero set di immagini raccolte precedentemente senza
  • 13. 12 troppe difficoltà, e soprattutto essere in grado di fornire una certa quantità di informazioni utili e sensate sulle immagini. Lo strumento che si è deciso di utilizzare è stato l’API Artificial Vision di Microsoft Azure, la piattaforma cloud pubblica di Microsoft che offre servizi di cloud computing. L’API Artificial Vision, nello specifico, fornisce algoritmi per l’elaborazione avanzata di immagini e la restituzione di informazioni dettagliate sugli elementi visivi e sulle caratteristiche delle immagini. Di seguito è illustrato un “buon” esempio di elaborazione di un’immagine attraverso l’API e sono stati messi in evidenza i risultati ottenuti. Figura 5: Immagine elaborata attraverso l'API Artificial Vision (1)
  • 14. 13 NOME DELLA FUNZIONALITÀ: VALORE Description { "tags": [ "person", "indoor", "man", "sitting", "front", "woman", "playing", "window", "holding", "table", "room", "living", "young", "laptop", "people", "standing", "phone", "computer", "video", "group", "wii" ], "captions": [ { "text": "a man and a woman standing in front of a window", "confidence": 0.706796467 } ] } Tag [ { "name": "person", "confidence": 0.975730956 } ] Format "Jpeg" Height 1078 Width 1536 Is BW false Is Adult Content false Adult Score 0.0500234924 Is Racy Content false Racy Score 0.0279251579 Categories [ { "name": "abstract_", "score": 0.0078125 } ] Faces [ { "age": 23, "gender": "Female", "faceRectangle": { "top": 262, "left": 535, "width": 68, "height": 68 } } ] Dominant Color Background "Grey" Dominant Color Foreground "Grey" Dominant Color #644540 Nella voce description sono raggruppati dei tag relativi agli elementi visivi contenuti all’interno dell’immagine e un breve testo descrittivo dell’immagine considerata. A fianco alla descrizione dell’immagine compare inoltre la voce confidence che indica il livello di attendibilità della descrizione. Alla voce Tag è invece indicato il tag principale. Sono poi presenti informazioni come formato e dimensione dell’immagine e riguardanti il fatto che un’immagine sia in bianco e nero o meno. Le voci Is Adult Content e Adult Score segnalano l’eventuale presenza
  • 15. 14 di un contenuto adatto agli adulti e il grado di attendibilità di tale contenuto, mentre le voci Is Racy Content e Racy Score indicano la presenza di un contenuto “spinto” e il grado di attendibilità di tale contenuto. La voce Categories indica una o più categorie alla quale l’immagine può essere assegnata mentre la voce Faces rileva gli eventuali volti presenti indicandone età, sesso e posizione all’interno dell’immagine. Sono infine forniti anche i colori dominanti presenti. Di seguito invece è illustrato un “cattivo” esempio di elaborazione delle immagini attraverso l’API, ovvero un esempio dove i risultati ottenuti non sono del tutto soddisfacenti. Figura 6: Immagine elaborata attraverso l'API Artificial Vision (2) NOME DELLA FUNZIONALITÀ: VALORE Description { "tags": [ "building", "person", "man", "old", "holding", "front", "sitting", "standing", "wearing", "stone", "black", "door", "suit", "glass", "cat", "blue", "white", "brick" ], "captions": [ { "text": "a man standing in front of a building", "confidence": 0.590537548 } ] }
  • 16. 15 Tag [ { "name": "person", "confidence": 0.916289 }, { "name": "building", "confidence": 0.840875268 }, { "name": "old", "confidence": 0.446174175 }, { "name": "building material", "confidence": 0.374418557 }, { "name": "stone", "confidence": 0.2538755 } ] Formato dell'immagine "Jpeg" Height 1536 Width 1270 Is BW false Is Adult Content false Adult Score 0.0705073848 Is Racy Content false Racy Score 0.113356553 Categories [ { "name": "abstract_nonphoto", "score": 0.26171875 } ] Faces [] Dominant Color Background "Grey" Dominant Color Foreground "Grey" Dominant Color #374C5B Una volta scelto e provato il funzionamento dello strumento per l’estrazione di informazioni dalle immagini, esso è stato applicato in maniera automatizzata a tutto il set di immagini raccolto in precedenza grazie ad uno script in Java. I risultati ottenuti sono stati raccolti in un unico file .csv formato da una riga per ogni opera d’arte. Di seguito sono riportati alcuni esempi estratti dal file .csv.
  • 17. 16 Figura 7: Esempi informazioni estratte dalle immagini (1) Figura 8: Esempi informazioni estratte dalle immagini (2)
  • 18. 17 Figura 9: Esempi informazioni estratte dalle immagini (3)
  • 19. 18 4. Conclusioni La raccolta dati svolta ha portato alla creazione di un dataset finale composto da circa 26.000 coppie di esempi immagine-critica e da un file .csv contenente informazioni di alto livello per ogni immagine raccolta. Qualora in futuro si volesse decidere di implementare il generatore di critiche artistiche ipotizzato, si potrebbe far uso dei dati ottenuti in questa tesi per effettuare l’addestramento di una rete neurale con cui realizzare il sistema di NLG presente all’interno del generatore.
  • 20. 19 Bibliografia [1] R. Evans, P. Piwek e L. Cahill, What is NLG?, Brighton, UK. [2] J. Tang, Y. Yang, S. Carton, M. Zhang e Q. Mei, Context-aware Natural Language Generation with Recurrent Neural Networks, 2016. [3] M. Freitag e S. Roy, Unsupervised Natural Language Generation with Denoising Autoencoders, 2018. [4] «BBC,» 18 Marzo 2014. [Online]. Available: https://www.bbc.com/news/technology-26614051. [5] A. Bartoli, A. De Lorenzo, E. Medvet, D. Morello e F. Tarlao, “Best Dinner Ever!!!”: Automatic Generation of Restaurant Reviews with LSTM-RNN, 2016. [6] L. Spinney, «nature, International journal of science,» 27 Aprile 2018. [Online]. Available: https://www.nature.com/articles/d41586-018-04989-2. [7] «BBC,» 25 Ottobre 2018. [Online]. Available: https://www.bbc.com/news/technology-45980863. [8] «Web Gallery of Art,» [Online]. Available: https://www.wga.hu/. [9] «Tate,» [Online]. Available: https://www.tate.org.uk/.