Categorizzazione frammenti (Calcolo TFIDF)
Previous Top Next

L'indice TFIDF nasce nell'ambito della disciplina dell'Information Retrieval come strumento per ordinare i risultati di una ricerca in base alla pertinenza tra i documenti estratti e le keywords di ricerca. L'indice rappresenta un peso attribuito ad ogni parola sulla base della sua frequenza e della sua distribuzione all'interno della collezione dei documenti, ed è questo peso che viene preso in considerazione per effettuare l'ordinamento dei risultati.

Le forme che meglio discriminano il contenuto di un documento (ovvero di un frammento) saranno, quindi, quelle in grado di far risaltare quel documento rispetto a tutta la collezione (il corpus) in quanto sono molto frequenti ma solo in quello o in pochi altri documenti. Questa affermazione è sintetizzata nell'indice TFIDF:

TFIDF = graphic

dove il primo fattore (tf - term frequency) misura il numero di occorrenze di una forma, mentre il secondo (idf - inverse document frequency) è logaritmo del rapporto tra il numero di documenti costituenti un corpus (N) e il numero di documenti che presentano quella forma (n).

NOTA: In realtà TaLTaC2 calcola un TFIDF normalizzato che annulla l'effetto della diversa lunghezza dei frammenti, altrimenti i documenti più lunghi avrebbero maggiore probabilità di essere recuperati rispetto a quelli più corti. L'indice calcolato come appena descritto viene quindi rapportato ad un opportuno fattore di normalizzazione (per i dettagli si veda l'illustrazione delle opzioni di normalizzazione nel seguito).

Quindi, quando si misura l'indice TFIDF di una forma per tutto il Vocabolario l'obiettivo è quello di estrarre il linguaggio rilevante, cioè le forme più significative in quanto concentrate solo in pochi documenti e non disperse in tutto il corpus; quando, invece, si calcola su un sottoinsieme tematico del Vocabolario (una query) ha l'obiettivo di individuare i soli frammenti significativi rispetto a quelle parole/lessie chiave.

Le parole/lessie devono essere organizzate in un file di testo <.txt> in formato lista, dove ogni parola/lessia (compresa l'ultima) occupa una singola riga con un "a capo", come nell'esempio:

multa
multe
multare
multando
lucciola
lucciole
prostituta
prostitute
cliente
clienti
luci rosse

SUGGERIMENTO: La lista può essere creata in TaLTaC2 (come risultato di una selezione sui campi della tabella Vocabolario) e, successivamente, esportata.

Attraverso la lista dell'esempio si vuole recuperare, tramite il calcolo dell'indice TFIDF, i frammenti che trattino il fenomeno della prostuzione e, in particolare delle multe applicate ai clienti colti in flagranza di reato.

Per eseguire il calcolo del TFIDF dal menù Analisi scegliere Analisi Testuale/Categorizzazione frammenti (Calcolo TFIDF)

Si aprirà la maschera Calcolo del TFIDF

graphic

Sono disponibili due modalità di utilizzo, a seconda che si voglia sottoporre una singola lista (o una selezione del vocabolario del corpus attualmente in uso) oppure una serie di liste. In quest'ultimo caso, ovviamente, verranno calcolati tanti indici quante saranno le liste indicate.

Con la modalità Lista singola/soglia di occorrenze, si deve indicare la lista utilizzando il bottone graphic, oppure si può digitare il percorso del file da utilizzare come lista nella casella Lista da utilizzare (Query), e premere OK. In alternativa si può definire una soglia di occorrenze delle forme del vocabolario per il calcolo del TFIDF.

Con la modalità Serie di liste, si devono indicare le varie liste da utilizzare utilizzando il pulsante Aggiungi. Una volta terminato di alimentare l'elenco, visibile nel riquadro File, si può lanciare l'esecuzione premendo OK. Si consiglia comunque di utilizzare il pulsante Salva elenco per salvare l'elenco appena creato in un file di testo. Successivamente, i medesimi file potranno essere sottoposti nuovamente al calcolo in maniera più comoda utilizzando il pulsante Apri elenco e scegliendo appunto questo file-elenco. Per cancellare un file dalla lista, selezionarlo nel riquadro File e premere Rimuovi. Il riquadro della lista dei file accetta la selezione multipla (usando i tasti della tastiera CTRL o Maiusc) e quindi si possono cancellare più file in un'unica mossa.

ATTENZIONE: Questa funzione NON comporta nessuna lessicalizzazione. Pertanto, se nella lista/e sono presenti poliformi, affinché possano essere presi in considerazione per il calcolo del TFIDF, dovranno essere già stati lessicalizzati in precedenza.

Il riquadro Normalizzazione permette due diverse opzioni:

- In base alla query - il fattore di normalizzazione sarà dato dalla radice quadrata della somma dei TFIDF delle sole forme della query che figurano nel frammento. In questo senso i frammenti vengono visti come se fossero composti dalle sole forme indicate nella query (eventualmente presenti nei frammenti stessi).

- In base al frammento - il fattore di normalizzazione sarà dato dalla radice quadrata della somma dei TFIDF di tutte le forme che figurano nel frammento, anche quelle non comprese nella query. In questo caso si considera l'effettiva lunghezza totale dei frammenti in termini di forme.

ATTENZIONE: nel caso di Normalizzazione in base al frammento, per questioni di complessità computazionale, su corpus molto grandi e/o con molti frammenti, talvolta TaLTaC2 non è in grado di tener conto dell’intero vocabolario, ma si limiterà a considerare solo le forme al di sopra di una determinata soglia di frequenza, determinata in automatico come la minima soglia trattabile. L’entità di tale soglia è eventualmente indicata nel Giornale.

L'opzione Matrice TFIDF su file consente di salvare in un file .txt una tabella avente in riga i frammenti ed in colonna le forme della query, e contenente i valori dei TFIDF di ogni forma per ogni frammento. Il file (TFIDF_norm.txt) verrà salvato nella cartella di Sessione. Spuntando anche l'opzione Trasponi la matrice i ruoli di righe e colonne verranno invertiti, ottenendo una matrice avente in riga i frammenti ed in colonna le forme grafiche.

ATTENZIONE: Se si esegue nuovamente il calcolo del TFIDF il file precedente viene automaticamente sovrascritto da TaLTaC2 . Quindi, se si ha necessità di eseguire più volte il calcolo del TFIDF, si consiglia, volta per volta, di copiare ed incollare il vecchio file in un'altra cartella di destinazione diversa da quella default oppure di rinominarlo.

Nota: l'opzione Matrice TFIDF su file è attiva solo con la modalità Lista singola/soglia di occorrenze.

Per avviare il calcolo premere OK.

Nel caso si sia utilizzata la modalità Lista singola/soglia di occorrenze, verrà richiesto il nome da attribuire al campo che verrà creato nelle tabelle Vocabolario (dove riporta la somma dei TFIDF della forma per tutti i documenti) e nella tabella Frammenti con var categoriali e/o ex-post (testuali/quantitative) (dove riporta la somma dei TFIDF di tutte le parole del frammento).

Se invece si è utilizzata la modalità Serie di liste tali campi assumeranno il nome del file a cui si riferiscono.

Per visualizzare i frammenti significativi - secondo il calcolo del TFIDF - rispetto alle parole chiave selezionate, aprire la tabella Frammenti con var categoriali e/o ex-post (testuali/quantitative) dal DB di Sessione e ordinare i valori del campo TFIDF in senso descrescente.

Calcolando il TFIDF della selezione di forme dell'esempio precedente su un Corpus composto da articoli di giornale sul tema dell'immigrazione si rendono subito evidenti i frammenti più significativi rispetto a quella selezione (p.e. il 3294)

graphic

Visualizzando il testo del frammento 3294 in modalità full-text, come risultato della query <multa* OR multe OR lucciol? OR prostitu* OR client?> (questa query è in pratica la trasposizione della lista in forma di espressione regolare) da modulo Ricerca Entità (RE), si nota che il frammento è stato correttamente recuperato in quanto altamente significativo rispetto all'obiettivo dell'analisi (si noti la presenza di forme della query evidenziate in giallo).

graphic