Estrazione di informazione (Ricerca entità)
Previous Top Next

Attraverso questa funzione, TaLTaC2 consente di ricercare parole o frasi direttamente sul testo, mediante interrogazioni complesse (espressioni regolari) che consentono di individuare tutti i frammenti che presentino una o più determinate parole, sequenze di parole o quasi-sequenze.

Accanto a questa possibilità di recupero di informazione, la maschera offre l'opportunità di creare una nuova variabile, per mezzo della quale categorizzare quei frammenti che soddisfano l'interrogazione. Così facendo, la matrice dei frammenti si arricchisce di ulteriore informazione ricavata direttamente dal testo. Una matrice così arricchita può produrre risultati molto più interessanti e precisi in sede di analisi multidimensionale effettuata con software statistici (si pensi ad un questionario sulla soddisfazione della clientela a cui si può aggiungere una variabile "non soddisfatto" per tutti quei record che presentino, nel testo di una risposta ad una specifica domanda aperta, le espressioni "non sono soddisfatta" o "mi hanno trattato male" o "scarsa professionalità").

Dal Menù Analisi selezionare Analisi Testuale\Estrazione d'informazione() Ricerca Entità) oppure premere il bottone graphic dalla barra delle applicazioni.

Si aprirà la maschera Ricerca Entità (RE)

graphic

La finestra è suddivisa in tre riquadri principali, evidenziati dai titoli in grassetto nero, ognuna corrispondente ad un particolare aspetto della funzione in esame: Espressione regolare da cercare (entità), Ambito della ricerca, Azioni/risultati.

Pertanto, per operare una ricerca è necessario inserire un'espressione regolare, definire l'ambito della ricerca (in termini di sezioni e/o frammenti), scegliere una delle azioni/risultati e premere il tasto OK.

Il risultato di ogni ricerca viene visualizzato all'interno di un'istanza della finestra Esplora il corpus, che indica, nel proprio titolo, il numero di documenti che rispondono alla query sul totale dei documenti costituenti il corpus e l'espressione regolare che ha originato il risultato. All'interno della scheda Testo sono indicate, tramite evidenziazione, tutte le parole/poliformi/sequenze di testo recuperate dalla ricerca.

E' possibile eliminare le evidenziazioni premendo il bottone graphic nella barra dei pulsanti o selezionando la voce Azzera Evidenziatore del menù Modifica. In questo modo il risultato di un'estrazione precedente (le entità evidenziate) non si confonderà con quello di una successiva.

NOTA: l'effetto del comando Azzera Evidenziatore non è visibile immediatamente. Le evidenziazioni, infatti, verranno eliminate non appena si passerà alla visualizzazione di un altro frammento.

Inserimento di un'espressione regolare

Il primo passo da compiere è, ovviamente, l'inserimento dell'espressione regolare che si intende rilevare nel testo. Per espressione regolare si intende uno schema di ricerca che può comprendere parole semplici, poliformi lessicalizzati, sequenze di parole, classi di unità lessicali ed operatori (per queste ultime due voci si veda il paragrafo Operatori di ricerca più sotto).

NOTA: Per espressioni regolari lunghe più di 255 caratteri, premere il pulsante query lunghe più di 255 caratteri e digitare/copiare l'espressione regolare nella casella semplice che apparirà al posto di quella a tendina. Premere il tasto Ricerca standard per tornare a visualizzare la casella con il menu a tendina.

Se si desidera che la ricerca tenga conto di come sono scritte le parole dell'espressione regolare (in termini di lettere maiuscole e minuscole) spuntare la casella Maiuscole/minuscole presente in basso a sinistra (scrivendo Onu verrà individuata solo Onu e non anche ONU, onu, oNu ecc.). Lasciando deselezionata la casella verranno individuate tutte le varianti di ogni forma dell'espressione regolare (scrivendo Onu verranno individuate Onu, ONU, onu, oNu ecc.).

Le ricerche già effettuate possono essere recuperata dal menù tendina della casella Espressione regolare da cercare (entità).

graphic

NOTA: Nell'elenco della casella con menu a tendina non compariranno eventuali query lunghe oltre 255 caratteri digitate nella apposita modalità.

NOTA: L'elenco delle espressioni regolari presenti nel menu a tendina è contenuto nel file <hstRegExp.txt> presente nella cartella di installazione di TaLTaC2 . In caso di disinstallazione e/o reinstallazione del programma è opportuno procedere al salvataggio su supporto esterno di questo file al fine di non perderne il contenuto.

Operatori di ricerca

All'interno di tale casella possono essere usati tutti gli operatori descritti nel seguito. Opportunamente combinati ed utilizzati garantiscono all'utente di recuperare solo l'informazione rilevante per le proprie analisi.

SUGGERIMENTO: Una guida all'uso degli operatori è presente anche all'interno di TaLTaC2 . Dalla maschera DB di Sessione premere il tasto Legenda e posizionarsi sul tab Sintassi ricerca entità.

Tali operatori sono:

1.   i comuni operatori logici OR, AND, AND NOT, NULL

                        Per esempio casa AND amici OR presidente AND NOT repubblica;

2.   i caratteri jolly <*>, <?>,  <#>,  <[...]>

 
Carattere/i in criterio
Corrispondenze in stringa
Esempio
?
Qualsiasi carattere singolo
tg? = tgv, tg1, tg-
*
Zero o più caratteri
tele* = tele, televisione, televisore
#
Qualsiasi cifra singola (0-9)
tg# = tg1, tg2, tg3
[elencocaratteri]
Qualsiasi carattere singolo in elencocaratteri
cen[aeò] = cena, cene, cenò

3.   il carattere <"> per recuperare sequenze di parole e/o poliformi lessicalizzati <"parola1 parola2 ... parolaN">

Per esempio "io non vengo a casa"

All'interno delle sequenze è possibile utilizzare i caratteri jolly (ma solo alla fine di una parola, oppure all'inizio e alla fine). Due o più sequenze possono essere combinate utilizzando gli operatori logici.

4.   l'operatore <LAGn>. Opera solo all'interno di sequenze (ossia solo all'interno di virgolette) e deve essere posto tra due forme estreme della sequenza stessa. Recupera tutte le sequenze di testo che iniziano e finiscono con le due forme estreme ma comprendono nel mezzo da 0 ad n parole/poliformi.

Per esempio "mercat? LAG2 geografic*" recupera <mercato non propriamente geografico>, <mercati geografici> e <mercati altamente interessanti geograficamente>;

ATTENZIONE: ai fini della ricerca i separatori sono considerati come forme e non come un singolo carattere. Cioè, se si devono recuperare sequenze del tipo <voleva salutarlo, ma era già partito>, la query "voleva LAG4 partito" non risulterà efficace, mentre lo sarà "voleva LAG5 partito" poichè alle 4 parole "salutarlo", "ma", "era", "già" deve esserne aggiunta una quinta: il separatore <,>.

5.   il carattere <\> per estrarre forme lessicalizzate, attraverso la sintassi <\poliforme\>

Per esempio la query \presidente della repubblica\ recupera nel testo ogni occorrenza del poliforme <presidente della repubblica> (se già lessicalizzato, ovviamente!)

Il carattere <\> si può utillizzare con l'operatore <"> descritto al punto 4.

Per esempio "il \presidente della repubblica\ ha parlato di"

Il poliforme deve essere considerato come una singola occorrenza quando si usa l'operatore <LAGn> (descritto al punto 5).

Per esempio la query "il LAG1 ha parlato di" recupera "il presidente della repubblica ha parlato di" e "il presidente del consiglio ha parlato di", se <presidente della repubblica> e <presidente del consiglio> sono forme lessicalizzate, ma non "il presidente in carica ha parlato di" se <presidente in carica> non è lessicalizzato.

6.   le classi di unità lessicali <LEMMA(lemma)>, <CATSEM(categoria semantica>, <CATGR(categoria grammaticale>, <CATAC(categoria grammaticale>.

Per esempio CATSEM(cibo) considera nella query (come alternative) tutte le entrate del Vocabolario con tag <,cibo,> nel campo CATSEM. LEMMA(mangiare) considera, invece, come alternative tutte le entrate del Vocabolario che presentano <mangiare> nel campo LEMMA. CATGR(N) considera come alternative tutte le entrate del Vocabolario che abbiano la categoria grammaticale (campo CAT) N, ovvero tutti i sostantivi non ambigui dal punto di vista grammaticale. CATAC(N) considera invece tutte le entrate del Vocabolario che, tra le categorie grammaticali attribuibili (campo CAT_AC), presentino N, ovvero tutti i sostantivi, ambigui e non ambigui.

Le classi operano solo all'interno di sequenze. E' possibile tuttavia scrivere un'espressione del tipo "CATSEM(parenti)" (comprese le virgolette) per individuare tutti i frammenti che contengano una forma grafica categorizzata semanticamente (vedi Tagging semantico) con l'etichetta <,parenti,>.

Per esempio "LEMMA(mangiare) LAG10 CATSEM(cibo)" recupera <mangerei volentieri una mela>, <mangiamo qualcosa prima di partire, magari un panino>

Oppure "CATAC(N) CATGR(PREP) CATAC(N)" consente di individuare i gruppi nominali del tipo <carta di credito>, <presidente del consiglio>, <mercato del lavoro> ecc.

Se la query supera i 255 caratteri è necessario attivare la modalità di ricerca per query lunghe premendo il bottone Modalità di inserimento per query lunghe più di 255 caratteri. Con questa modalità le query lunghe non vengono troncate, ma si perde la possibilità di recuperarle dal menù a tendina come per le query standard. Per tornare a questa modalità di ricerca, premere il tasto Ricerca standard.

Definizione dell'ambito della ricerca

Sezioni in cui limitare la ricerca

Se si desidera che la ricerca avvenga solo in determinate sezioni dei frammenti, selezionare le sezioni di interesse. Se si vuole invece operare una ricerca a tutto campo, selezionare tutte le sezioni, magari sfruttando l'apposito pulsante. Questo filtro sulle sezioni è abbinabile al filtro sui frammmenti esposto nel paragrafo seguente.

Campo filtro nella tabella frammenti

E' possibile limitare la ricerca ai soli frammenti che presentino una particolare modalità di una delle variabili presenti nella tabella frammenti, impostando una condizione di filtro nel riquadro Campo filtro nella tabella Frammenti. Ciò consente di applicare le ricerche solo ad una selezione di frammenti, in particolare di quelli che presentano il Valore filtro nel rispettivo Nome del Campo. Scegliere la variabile dal menù a tendina e scegliere (o scrivere) il valore per il filtro. Se non si intende porre alcun filtro sui frammenti, scegliere <nessun campo> dalla casella Nome del Campo.

Scelta delle Azioni/Risultati

Quattro sono i possibili tipi di Azioni/Risultati ottenibili, evidenziati in grassetto azzurro nella finestra. Queste Azioni/Risultati sono liberamente combinabili, nel senso che è possibile ottenerli tutti insieme o solo alcuni di essi lanciando un'unica ricerca.

Pubblica i frammenti

Marcando questa casella, il risultato sarà costituito dalla visualizzazione dei frammenti che soddisfano la ricerca all'interno di un'istanza della finestra Esplora il corpus. Nel proprio titolo, la finestra indicherà il numero di documenti che rispondono alla query sul totale dei documenti costituenti il corpus e l'espressione regolare che ha originato il risultato. All'interno della scheda Testo sono indicate, tramite evidenziazione, tutte le parole/poliformi/sequenze di testo recuperate dalla ricerca.

E' possibile eliminare le evidenziazioni premendo il bottone graphic nella barra dei pulsanti o selezionando la voce Azzera Evidenziatore del menù Modifica. In questo modo il risultato di un'estrazione precedente (le entità evidenziate) non si confonderà con quello di una successiva.

NOTA: l'effetto del comando Azzera Evidenziatore non è visibile immediatamente. Le evidenziazioni, infatti, verranno eliminate non appena si passerà alla visualizzazione di un altro frammento.

Creazione della lista di entità rinvenute nel testo

Quando si ricercano sequenze di testo tramite l'utilizzo degli operatori sopra descritti, si attiva l'opzione Crea lista di sequenze rinvenute nel testo. Selezionandola TaLTaC2, alla fine della ricerca, aggiunge nel DB di Sessione una lista con tutte le entità rinvenute, indicante anche il codice del frammento in cui è stata rinvenuta. Questa funzione si attiva solo se la sequenza contiene almeno un caratteri jolly e/o un operatore LAG e/o un operatore CATSEM() e/o un operatore LEMMA() e/o un operatore CATGR() e/o un operatore CATAC().

SUGGERIMENTO: Operando una fusione sulla colonna Entità di questa lista, è possibile ottenere i conteggi, e quindi le frequenze, di ogni attualizzazione presente nel testo dell'espressione regolare cercata.

Popola un campo della tabella Frammenti (creazione di una variabile testuale)

Per creare una nuova variabile testuale per mezzo della quale categorizzare i frammenti che soddidisfano un'interrogazione, scrivere il nome della variabile nella casella Nome del campo del box Popola un campo della tabella Frammenti. Si può anche decidere di scegliere di scrivere nel campo di una variabile già esistente selezionandola dall'elenco a tendina della medesima casella. Per quanto riguarda ciò che si può scrivere nella variabile (ovvero le modalità della variabile stessa) si può scegliere tra:

·           un Valore a piacere, da scrivere/scegliere nell'omonima casella. Il menu a tendina di questa casella mostra l'elenco dei valori eventualmente già presenti nella variabile in cui si intende scrivere;

·           le occorrenze, per ogni frammento, dell'espressione regolare cercata. Le occorrenze sono calcolate solo per sequenze di testo poste in OR tra di loro;

·           le n parole precedenti/successive all'entità cercata, dove n indica il numero massimo di parole da scrivere. Ad esempio, scegliendo questa opzione di scrittura ed indicando 5 per le parole successive, con l'espressione regolare "denunc* per" si può scrivere nella variabile il motivo per cui qualcuno risulta essere stato denunciato (furto negli appartamenti della città, lesioni, abbandono ecc.) stando a quanto scritto in quel frammento. E' possibile inoltre "stoppare" il rilevamento della modalità indicando uno o più caratteri nella casella entro i seguenti separatori (per indicare il ritorno a capo spuntare la casella CRLF). Pertanto, indicando ad esempio il carattere punto <.> in questa casella, pur avendo indicato 5 come numero di parole precedenti/successive, per alcuni frammenti, nella variabile, potrà figurare un numero di parole inferiore (o addirittura nulla nel caso in cui l'entità sia immediatamente preceduta/seguita da uno dei separatori suddetti).

Uno stesso campo creato nella tabella Frammenti può essere popolato più volte con valori diversi, come risultato di categorizzazioni da altre espressioni regolari. Il menù a tendina del campo Nome del campo consente di recuperare facilmente le variabili testuali già create. In tal caso, prestare attenzione in quanto i record già valorizzati da una query precedente verranno sovrascritti con il nuovo valore.

I campi creati per mezzo della finestra Ricerca Entità (RE) sono visualizzabili nella tabella Frammenti con var categoriali e/o ex-post (testuali/quantitative) (accessibile dal DB di Sessione) oppure nella scheda Variabili personalizzate della finstra Esplora il Corpus (sia aprendola in visualizzazione completa del corpus, sia nelle istanze di questa finestra che si creano a seguito delle ricerche entità, ovviamente se si è spuntata l'opzione Pubblica i frammenti).

Scrittura ed esecuzione Metaquery (piano di lavoro testuale)

Da questo riquadro si possono eseguire due tipi di operazioni:

·           Salvare le impostazioni (espressione regolare, sezioni in cui cercare, variabile da creare e valore da scrivere ecc.) della ricerca che si sta effettuando in una Metaquery, ovvero un file di testo nominabile a piacere, che eventualmente può già contenere le impostazioni di altre ricerche effettuate in precedenza.

·           Eseguire tutte le ricerche contenute in una Metaquery precedentemente creata.

In questo modo si ha la possibilità di ripetere tutta una serie di ricerche e/o categorizzazioni di frammenti e/o estrazione di liste di entità con un unico comando. Questa possibilità risulta fondamentale nel caso in cui si debbano ripetere queste operazioni su corpus diversi (ma aventi possibilmente la stessa struttura di sezioni e di variabili associate ai frammenti - si pensi ad una rilevazione eseguita regolarmente nel tempo). Oppure quando le ricerche si eseguono una prima volta per testarne la "bontà", e quindi si rieseguono per fissare i risultati sulla tabella frammenti.

Si ricorda che le metaquery sono dei normali file di testo, e quindi possono essere modificabili a piacere dall'utente, che può quindi modificare le impostazioni di tutte o solo alcune delle ricerche in esso contenute per poterle migliorare o riadattare ad altri scopi/situazioni. Ad esempio si potrebbero modificare le sezioni di testo su cui la ricerca deve insistere, oppure il valore da scrivere nella variabile testuale creata, oppure si può aggiungere l'opzione di creare una variabile testuale ad una ricerca che in origine non la prevedeva.

Per creare una metaquery, o per aggiungere le impostazioni di una ricerca ad una metaquery creata in precedenza, spuntare l'opzione Registra le operazioni nella seguente metaquery, quindi premere il pulsante graphic e definire il nome del file da creare/modificare.

Per eseguire una metaquery creata in precedenza, spuntare l'opzione Esegui la seguente metaquery, quindi premere il pulsante graphic ed indicare il nome del file contenente la metaquery che si intende eseguire.

Esempio di categorizzazione di frammenti

Supponiamo di voler categorizzare, in prima istanza, i soli frammenti che trattino il tema dell'immigrazione, distinguendo tra quella clandestina e regolare. Con una query molto generale (per esempio "immigr*") operiamo una prima selezione creando una nuova variabile testuale <IMMIGRAZIONE> da popolare con il valore <si>


graphic


Con una seconda semplice query (clandestin*) ricerchiamo la "clandestinità" solo nei frammenti precedentemente categorizzati. Creiamo una nuova variabile <CLANDESTINA> (da popolare con "si"), filtrando la query sui soli frammenti nei quali è presente il tema dell'immigrazione.

graphic



Aprendo la tabella Frammenti con var categoriali e/o ex-post (testuali/quantitative) e filtrando sui due campi creati (tramite la funzione Text/Data Mining) si ottiene la lista dei frammenti che trattano il tema dell'immigrazione clandestina.

graphic

Dall'Esplora il Corpus possiamo leggere uno qualsiasi dei frammenti per scoprire se è stato categorizzato correttamente.

graphic