In questo lavoro descriviamo un progetto di ricerca, attualmente in corso, dedicato all’analisi dell’universo linguistico e semantico della musica rap, con particolare attenzione rivolta alla realtà italiana. L’obiettivo del lavoro è quello di arrivare ad offrire una mappatura panoramica, una “distant reading” della lingua usata dal rap italiano.
La scelta di questo genere è motivata dal fatto che il rap è tra i fenomeni più vitali e dal maggiore impatto socioculturale della musica e delle sottoculture giovanili degli ultimi decenni (Lena, 1995; Toop, 1999; Forman and Neal, 2004; Pinkney, 2007), esteso ormai ben oltre gli originari confini statunitensi per divenire fenomeno globale (Androutsopoulos and Arno 2003; Osumare, 2007; Alim et al., 2008) e all’interno del quale è possibile riscontrare una ricchissima produzione testuale ed un alto tasso di innovazione e sperimentazione di forme linguistiche (Cutler, 2007; Bradley, 2009; Terkourafi, 2010).
L’idea alla base del lavoro è quella di ottenere una “cartografia” della lingua del rap, che permetta di osservare e analizzare nel suo complesso un settore della produzione culturale contemporanea estremamente diffuso e popolare anche in Italia (Pacoda 1996; Filippone and Papini, 2002; Attolino, 2003; Scholz, 2005). In questo lavoro focalizziamo l’attenzione principalmente sulla dimensione testuale del rap piuttosto che su quella musicale, pur trattandosi di un genere in cui il rapporto tra parola e ritmo è inestricabile (Bradley, 2009). In ogni caso, è possibile affermare che la componente testuale nel rap occupa un ruolo centrale e che la specificità del vocabolario, dei temi, della capacità di invenzione linguistica nonché l’importanza dell’aspetto narrativo (Attolino, 2012) fanno dei testi del rap un corpus linguistico interessante da analizzare in sè.
A tal fine, piuttosto che soffermare l’attenzione su di un numero limitato di testi da analizzare in profondità, mettiamo in campo una metodologia di lavoro multidisciplinare - in cui convergono web data-mining, linguistica e information design – con l’obiettivo di giungere alla costruzione di un database testuale molto ampio da sottoporre ad analisi mediante strumenti di text-mining e di linguistica computazionale e da rendere esplorabile mediante una serie di visualizzazioni interattive elaborate ad-hoc.
In una prima fase si è proceduto all’individuazione di alcune web-repository contenenti le trascrizioni dei testi delle canzoni rap in lingua italiana. Non essendo le fonti ufficiali (siti personali degli artisti, siti delle etichette, libretti dei CD, ecc.) particolarmente ricche di informazioni, sono stati individuati alcuni popolari siti di text-sharing, dove fan e ascoltatori forniscono spontaneamente le proprie trascrizioni dei testi degli artisti.
Sulle fonti selezionate è stato addestrato uno script di web-scraping, sviluppato appositamente, in grado di estrarre, per ogni brano presente sul sito, il testo e i meta-dati di riferimento (titolo brano, nome autore, collaborazioni, album). Una volta addestrato lo script si è passati alla fase di estrazione dati vera e propria che ha portato alla costruzione di un database di circa quindicimila brani. Il risultante database è stato poi sottoposto ad una prima fase di pre-processing e data-wrangling per renderlo disponibile all’analisi successiva. Sul testo estratto dal web è stata effettuata una profonda ripulitura con metodi semi-automatici in modo da ottenere un corpus omogeneo di testi trattabili computazionalmente.
Alla fase di estrazione e standardizzazione del dataset segue la fase di analisi linguistica. In questa fase teniamo conto di alcuni studi precedenti condotti nell’ambito del MIR - Music Information Retrieval, in particolare quelli rivolti all’analisi automatica dei testi delle canzoni (Mahedero et al., 2005; Kleedorfer et al., 2008; Hu et al., 2009) e dei testi rap in particolare (Hirjee and Brown, 2009; Hirjee and Brown, 2010; Malmi et. al, 2015).
Il corpus è processato usando l’intera pipeline di analisi linguistica (Manning and Schütze, 1999) già ampiamente nota nei task di NLP: tokenizzazione, lemmatizzazione e pos tagging. Successivamente si è passato ad un’analisi statistica per ottenere le frequenze assolute dei termini, le frequenze relative per autore, le collocazioni, i bigrammi e i trigrammi ricorrenti e la forza di associazione tra le parole espressa in termini di PMI (Pointwise Mutual Information). Gli strumenti utilizzati per effettuare queste analisi sono basati sulla libreria NLTK in Python (Loper and Bird, 2002). Una volta estratti i Lemmi con le rispettive frequenze, viene calcolato il valore di Term Frequency/ Inverse Document Frequency (TF/IDF) per ogni lemma in modo da estrarre le parole più significative per ciascun autore. Una matrice di co-occorrenza, precedentemente costruita su un corpus di circa 3 milioni di parole, attraverso l'applicazione di un algoritmo di Distributional Semantics chiamato HAL - Hyperspace Analogue to Language (Burges and Lund, 1995), è utilizzata per estrarre le parole con valori di similitudine semantica maggiori per ogni lemma, allo scopo di creare un network di significati che identifichi lo spazio semantico di ciascun autore e permetta la loro classificazione attraverso algoritmi di machine learning (clustering).
I dati risultanti dall’analisi linguistica sono strutturati in un database adatto all’elaborazione dei software e dei processi di data visualization. L’obiettivo di questa parte del progetto è quello di costruire un tool interattivo che utilizzi tecnologie web (html, css, javascript) per rendere il dataset esplorabile, comunicabile e analizzabile ulteriormente. Per l’elaborazione del sistema di visualizzazione prendiamo in esame le specifiche problematiche poste dalla visualizzazione di grandi corpora testuali (Wise et al., 1995; Fortuna et al., 2005; Alencar et al., 2012; Sinclair et al., 2013; Kucher, 2014; Brath and Banissi, 2015) e le soluzioni approntate da alcuni lavori precedenti sulla visualizzazione di database composti da testi di canzoni (Labrecque, 2009; Baur et al., 2010; Oh, 2010; Sasaki et al., 2014).
Il tool di visualizzazione si compone di una serie di “viste” e di filtri di navigazione che permettono di osservare il dataset da più angolazioni e attraverso diversi livelli di dettaglio, secondo il classico pattern Overview first, zoom and filter, then details-on-demand (Shneidermann, 1996). Oltre agli approcci classici dell’Information Visualization, la progettazione delle visualizzazioni tiene conto dell’approccio maturato dal design della comunicazione nell’ambito delle Digital Humanities (Uboldi and Caviglia, 2015) in paritcolare per quanto riguarda la definizione della user experience.
Una serie di layer di visualizzazione sono combinati in delle viste panoramiche che offrono uno sguardo complessivo su diversi aspetti del database: statistiche di base come le frequenze e le distribuzioni dei termini più utilizzati; la varietà complessiva del vocabolario; una serie di ranking; reti bipartite tra autori e termini; reti tra parole e relativi cluster semantici più evidenti.
Filtri e viste secondarie sono progettati invece per muoversi rapidamente tra diversi livelli e prospettive sul dataset e di scendere nel dettaglio per analizzare i dati relativi al singolo autore (termini più frequenti, temi dominanti, ecc) o al singolo brano. E’ inoltre possibile operare comparazioni tra autori (o gruppi di autori), o tra brani (o gruppi di brani). La visualizzazione è progettata dunque principalmente come strumento esplorativo in modo tale da rendere possibile l’analisi dell’universo testuale del rap a diversi livelli di profondità e granularità.