Dall’analisi del Tier 2 – una classificazione semantica specialistica incentrata su pattern lessicali strutturali per contenuti specialistici in italiano – emerge una limitazione cruciale: la categorizzazione temporale rimane spesso astratta o superficiale. L’estrazione automatica di espressioni temporali e la loro assegnazione a una gerarchia precisa – immediato, recente, storico, prospettico – richiede un approccio che superi il riconoscimento superficiale per catturare sfumature morfologiche, sintattiche e contestuali. Questo articolo presenta un processo dettagliato, passo dopo passo, per costruire un sistema di clustering semantico lessicale personalizzato, capace di identificare e classificare automaticamente sottotemi temporali in articoli Tier 2, con applicazione pratica, validazione rigorosa e ottimizzazioni avanzate per il contesto italiano.
—
1. Contesto: Limiti del Tier 2 e necessità di un approccio sperimentale
Il Tier 2 si distingue per l’uso di meta-pattern lessicali e strutturali che consentono una classificazione semantica fine, ma tende a trattare le espressioni temporali come elementi isolati, senza una gerarchizzazione semantica profonda. Nonostante il corpus Tier 2 contenga articoli con tematiche complesse – giuridiche, giornalistiche, accademiche – l’analisi temporale è spesso ridotta a label generiche come “recente” o “storico”, senza una suddivisione granulare che rifletta la dinamica temporale reale.
Già il Tier 1, fondamento della classificazione semantica, ha stabilito principi di base basati su pattern lessicali e strutturali: espressioni avverbiali (“ieri”, “quest’anno”), locuzioni temporali (“nella settimana scorsa”, “nel 2023”), indicatori di durata (“per due giorni”, “da ieri a oggi”) costituiscono la base. Il Tier 3, estendendo questa logica, introduce il clustering semantico per sottotemi temporali, ma rimane focalizzato su applicazioni generiche.
L’esatta definizione di una gerarchia temporale italiana – immediato (giorno presente), recente (ultimi giorni/settimane), storico (periodi definiti), prospettico (anticipazioni future) – richiede un sistema capace di interpretare non solo la presenza di espressioni, ma anche la loro intensità, contesto sintattico e ambiguità semantica, che il Tier 2 non affronta in profondità.
—
2. Estrazione e Classificazione Automatica delle Espressioni Temporali
L’esatto riconoscimento di sottotemi temporali in articoli Tier 2 richiede un’architettura di elaborazione testuale multilivello, integrata con regole linguistiche e analisi contestuale.
**Fase 1: Raccolta e Annotazione del Corpus Tier 2**
Si parte da un corpus rappresentativo di almeno 500 articoli Tier 2, provenienti da settori come giornalismo, diritto e accademia. Ogni documento viene annotato manualmente da linguisti specializzati, marcando espressioni temporali e assegnandole a una delle quattro categorie gerarchiche:
– **Immediato**: “ieri”, “oggi”, “adesso”
– **Recente**: “nella settimana scorsa”, “ultimi sei mesi”, “aggiornato a settembre”
– **Storico**: “nel 2020”, “un anno fa”, “epoca del dopoguerra”
– **Prospettico**: “tra due settimane”, “entro la fine del trimestre”, “si prevede nel 2025”
La qualità dell’annotazione viene validata con accordo inter-annotatore (Kappa ≥ 0.85), garantendo affidabilità semantica.
**Fase 2: Costruzione del Lessico Esteso con Pesi Contestuali**
Dal corpus annotato si estrae un lessico italiano di espressioni temporali, arricchito con:
– **Frequenze d’uso** per lingua
– **Collocuzioni tipiche** (es. “prima di”, “dopo che”, “in seguito a”)
– **Indicatori sintattici** (avverbi, locuzioni, marcatori temporali)
– **Pesi contestuali** derivati da contesto d’uso e intensità temporale (es. “ieri” ha peso più alto di “recente” per immediatezza)
Il lessico viene arricchito con *feature sintattiche* estratte da parser morfosintattici come spaCy con modello italiano esteso, che identifica funzioni grammaticali (avverbiale, nominale) e relazioni semantiche.
**Fase 3: Clustering Semantico Lessicale su Vettori Italiani**
Utilizzando embeddings contestuali in italiano, in particolare **ItalianBERT base** (pre-addestrato su corpora nazionali), si genera una rappresentazione vettoriale in spazio semantico. Ogni espressione temporale viene proiettata in un vettore di dimensione 768, arricchito con feature sintattiche come etichetta grammaticale e posizione nel testo.
Il clustering avviene con un modello **Agglomerative Hierarchical Clustering** su distanza coseno, suddiviso in quattro livelli gerarchici:
1. **Immediato**: espressioni di attualità assoluta (oggi, oggi, adesso)
2. **Recente**: indicatori di durata breve e vicinanza temporale (giorni, settimane)
3. **Storico**: riferimenti a periodi definiti e lontani nel tempo (anni, decenni)
4. **Prospettico**: espressioni di anticipazione o novità futura (tra due settimane, entro fine trimestre)
La pesatura dinamica dei cluster considera la frequenza relativa delle espressioni nel corpus Tier 2 e la coerenza semantica interna, evitando sovrapposizioni ambigue.
**Fase 4: Validazione e Iterazione con Regole di Ambiguità**
I cluster vengono validati tramite:
– **Analisi manuale** di campioni rappresentativi
– **Misure di coerenza**: calcolo di precision/recall rispetto a etichette di riferimento (F1-score ≥ 0.88)
– **Testing contro errori comuni**:
– Ambiguità di “prima” (evento precedente vs ordine temporale relativo)
– Sovrapposizione tra recente e storico (es. “l’ultimo mese” → recente vs “anni passati” → storico)
Le regole di risoluzione includono:
– Analisi del soggetto e verbo temporale per contesto sintattico
– Controllo di indicatori temporali temporali (es. “ieri” + evento presente = immediato)
– Filtro basato su collocazioni sintattiche tipiche per ogni categoria
—
3. Implementazione Pratica e Fasi Operative Dettagliate
**Fase 1: Preparazione del Dataset e Pulizia Testuale**
– Rimozione stopword in italiano (articoli, preposizioni comuni)
– Lemmatizzazione con *lemmatizer* spaCy italiano
– Identificazione automatica con regex e parser linguistico:
– Espressioni avverbiali: “ieri”, “oggi”, “adesso”, “giorni fa X”
– Locuzioni temporali: “nella settimana scorsa”, “tra due giorni”, “durante il 2023”
– Indicatori di durata: “per due giorni”, “da ieri a oggi”, “per un mese”
– Riconoscimento di espressioni prospettiche tramite pattern: “tra due settimane”, “entro la fine del trimestre”, “si prevede nel 2025”
**Fase 2: Creazione del Lessico Contestuale**
| Termine Temporale | Categoria | Peso Contesto | Esempio |
|————————–|———–|—————|——————————–|
| “ieri” | Immediato | 0.95 | ieri, oggi, adesso |
| “nella settimana scorsa” | Recente | 0.90 | nella settimana scorsa |
| “ultimi sei mesi” | Recente | 0.88 | ultimi sei mesi, ultimo trimestre|
| “nel 2020” | Storico | 0.92 | nel 2020, nel 1998 |
| “tra due giorni” | Prospettico | 0.85 | tra ieri e oggi |
| “entro la fine del mese” | Prospettico | 0.87 | entro la fine di settembre |
| “l’ultimo mese” | Storico/Recente (ambiguo) | 0.75 | dipende dal contesto temporale |
I pesi si basano su frequenze di uso nel corpus Tier 2 e frequenza relativa per categoria.
**Fase 3: Clustering e Validazione Iterativa**
– Addestramento del modello Agglomerative su vettori ItalianBERT, con embedding 768D e feature sintattiche concatenate
– Clustering gerarchico con taglio a 4 livelli:
1. Immediato (0–3 giorni)
2. Recente (4–90 giorni)
3. Storico (91 giorni – anni definiti)
4. Prospettico (anticipazioni future)
– Validazione con:
– Precision/recall vs etichette annotate
– Tabelle di confronto: esempi di articoli con etichette ambigue e loro corretta classificazione
– Analisi degli errori: casi di “prima” ambigua risolta con analisi sintattica (soggetto + verbo)
**Fase 4: Integrazione e Automazione con Regole di Ambiguità**
La pipeline include:
– Regole di disambiguazione:
– “Prima di” → riferimento all’evento
