L’amico Carlo Bruno ha aperto sul suo blog uno spazio di discussione sulle tecnologie di analisi semantica, ecco le nostre considerazioni.
Parlare di analisi “semantica” non è facile. Il termine stesso è oggi ricco di significati molteplici e talvolta doscordanti (ne ho parlato qui).

Il problema è che non è esattemante facile definire che cosa sia il significato (i filosofi ci provano da un po’, almeno da Platone e Aristotele, e certo non sono giunti ad un consenso universale) e non è nemmeno facile definire e valutare un sistema che afferma di utilizzare analisi semantica.
Penso che si debba partire da una definizione un po’ debole”: ci sono alcune attività, legate al significato e alla comprensione, che pur essendo proprie, a quanto ne sappiamo, quasi soltanto degli esseri umani, possono essere in qualche maniera automatizzate ed eseguite da programmi di computer.
In Blogmeter, i nostri programmi manifestano comprensione di un testo in non moltissimi casi, rispetto alla enorme molteplicità dei fenomeni linguistici, ma in casi comunque utili e interessanti.
Riusciamo, con un buon grado di successo, a classificare un testo. La classificazione automatica è da alcuni un po’ snobbata, in quanto può essere fatta anche con tecnologie di machine learning (statistiche, non simboliche), tuttavia, data la nostra definizione debole e pragmatica, ci sentiamo di affermare che dire di che cosa parla un testo è un’attività che è sicuramente semantica.
In molti casi, di solito in domini ristretti, riusciamo a estrarre informazioni di dettaglio a partire dalle descrizioni linguistiche: per esempio riusciamo non soltanto a dire che un certo testo parla di un problema, ma a anche a dire di che problema si tratta, quale è il suo grado di criticità percepita, quali sono gli elementi o gli aspetti di un prodotto / servizio che vengono percepiti come problematici. In generale, possiamo estrarre “fatti”, intesi come descrizioni di eventi e situazionio accaduti e descritti linguisticamente e associarli ad una “ontologia“, intesa come una descrizione formale di cio’ che esiste in un dominio a partire dalla quale si possono effettuare inferenze.
Avendo a disposizione le opportune risorse (nel nostro caso una rete semantica) i nostri programmi manifestano una certa capacità di effettuare inferenze basate sul significato delle parole, per esempio dall’affermazione: “l’operatore del call center non ha saputo rispondere” possiamo inferire che qualcuno ha chiamato il call center.
Tutto questo viene fatto, proprio perche’ incorporiamo un sistema di analisi del testo che è composto di almeno tre elementi principali:

  • un lessico che fornisce significati e relazioni tra significati,
  • un parser, che fornisce analisi sintattiche ricostruendo la struttura della frase,
  • uno o più moduli di interpretazione che trattano fenomeni semantici, dall’identificazione delle relazioni soggetto / oggetto / complementi alla capacità, di solito, come detto, dipendente da dominio, di identificare fatti, eventi e relazioni tra di essi.

La copertura sintattica dei fenomeni della lingua è nel nostro caso piuttosto ampia, così come è ampia la copertura lessicale, anche se il fine tuning è continuo, soprattutto avendo a che fare con testo molti particolari quali quelli presenti nei social media. La precisione delle analisi è buona, talvolta ottima, almeno laddove una misura è possibile.
La direzione in cui stiamo lavorando più alacremente in questo periodo è rinforzare la comprensione del linguaggio emotivo, soggettivo ed emozionale, che in certi settori è quasi la norma. L’idea è che non è soltanto utile e interssante scoprire se l’opinione espressa su un prodotto / servizio è positiva o negativa, ma anche capire quale è l’atteggiamento soggettivo verso quel prodotto / servizio, lungo linee quali la fiducia, il timore, l’engagement in generale.
In ogni caso, e’ chiaro che se l’utente non percepisce alcuna differenza di qualità dei risultati, allora e’ meglio andare avanti con il buon vecchio vector space model. Bisogna pero’ essere consapevoli che per catturare certi fenomeni la statistica delle occorrenze e il pagerank non saranno mai sufficienti, basta provare a catturare concetti come la fiducia o le intenzioni di acquisto. E’ per questo che vale la pena di investire in tecnologie di analisi del linguaggio.
Insomma, consapevoli dei limiti, non soltanto tecnologici ma insiti nella natura stessa del problema (le proprietà computazionali di certi fenomeni linguistici, per esempio la ccordinazione, si sa che non sono sono proprio amichevoli), andiamo avanti nella ricerca e nell’applicazione dei suoi risultati.