
La comunità del Natural Language Processing (NLP) è da tempo in fermento grazie al successo riscosso da ChatGPT, Transformers e Large Language Models. Questo tipo di approcci sono estremamente complessi e costosi da replicare, e verranno prossimamente descritti nella rubrica “Alla scoperta dell’Intelligenza Artificiale” di Red Hot Cyber!
Tuttavia, in questi giorni, i professionisti e ricercatori in campo NLP sono stati scossi da un nuovo lavoro pubblicato dalla Association for Computational Linguistics e disponibile in ACL Anthology.
Il paper discute un approccio per la classificazione del testo che utilizza una tecnica molto semplice ma con risultati sorprendenti! Di fatto, l’approccio proposto si basa sulla compressione del testo attraverso gzip (esatto, la stessa compressione che viene usata per comuni archivi di file!) e la più semplice tecnica di classificazione, l’algoritmo kNN (k-Nearest-Neighbor).
Ma vediamo più in dettaglio l’approccio e perché sta riscuotendo attenzione nel mondo AI!
La classificazione del testo è un problema molto intuitivo: data una descrizione, un tweet o una qualsiasi sequenza di frasi, si vuole associare ad essi una classe, ovvero una categoria di appartenenza. Ad esempio, in un problema di categorizzazione di notizie, si vuole associare ad ogni articolo un tag, come “cronaca”, “politica” o “sport”.
Nella sentiment-analysis su social network si potrebbe essere interessati a discriminare i post che trasmettono un pensiero positivo da quelli negativi. Anche per le la posta elettronica, componenti di filtri anti-spam sono spesso basati su classificatori di testo.
Attualmente, le tecniche più performanti di classificazione del testo si basano su reti neurali profonde (Deep Neural Networks, DNN), modelli che apprendono come classificare attraverso molti testi forniti in un insieme di dati chiamato training-set.
Tra le architetture più diffuse c’è BERT (Bidirectional Encoder Representations from Transformers), una rete neurale sviluppata da Google basata su Transformers. L’addestramento di queste reti ha l’obiettivo di ottimizzare centinaia di milioni di parametri attraverso l’utilizzo di enormi insiemi di testi. Questi addestramenti sono molto costosi computazionalmente e non sono alla portata di tutti.
Il lavoro recentemente pubblicato non richiede una fase di addestramento e si è dimostrato migliore dei modelli allo stato dell’arte per il problema di classificazione, con un giusto bilanciamento tra efficacia e semplicità.

La semplicità dell’algoritmo proposto si basa su gzip, un compressore loss-less di dati, una misura di distanza e un classificatore kNN. L’idea è utilizzare il compressore per individuare i pattern regolari nel testo e tradurli in punteggi di similarità utilizzando la metrica di distanza.
Questi punteggi vengono quindi utilizzati per classificare il testo con l’algoritmo kNN, che assegna un nuovo testo ad una classe basandosi sui K testi più vicini nel set di addestramento, come si può vedere nell’immagine seguente.
In questo esempio, il nuovo elemento da classificare è assegnato alla classe sport, dato che tra i 3 elementi più vicini è la classe maggiormente rappresentata. Come si può intuire, il kNN è tra gli algoritmi più semplici del Machine Learning. Questo algoritmo, inoltre, non ha bisogno di una vera fase di addestramento.

La semplicità del metodo proposto ha stupito gli esperti di NLP. L’algoritmo ideato è implementabile attraverso sole 14 righe di codice in Python, come mostrato di seguito.

Il metodo è stato testato su diversi set di dati, mostrando performance migliori rispetto reti neurali allo stato dell’arte, superando anche BERT su alcuni dataset. Si dimostra anche eccellente quando c’è solo una piccola quantità di dati etichettati disponibili.
La comunità è in fermento per questo lavoro innovativo, i cui risultati suscitano grande interesse e certamente saranno oggetto di approfondimenti nei prossimi mesi.
L’importante lezione che possiamo trarre è che ogni problema ha la sua soluzione. Spesso, soprattutto nell’intelligenza artificiale, i problemi più semplici possono trarre enormi vantaggi da soluzioni altrettanto semplici.
Ti è piaciuto questo articolo? Ne stiamo discutendo nella nostra Community su LinkedIn, Facebook e Instagram. Seguici anche su Google News, per ricevere aggiornamenti quotidiani sulla sicurezza informatica o Scrivici se desideri segnalarci notizie, approfondimenti o contributi da pubblicare.

InnovazioneL’evoluzione dell’Intelligenza Artificiale ha superato una nuova, inquietante frontiera. Se fino a ieri parlavamo di algoritmi confinati dietro uno schermo, oggi ci troviamo di fronte al concetto di “Meatspace Layer”: un’infrastruttura dove le macchine non…
CybercrimeNegli ultimi anni, la sicurezza delle reti ha affrontato minacce sempre più sofisticate, capaci di aggirare le difese tradizionali e di penetrare negli strati più profondi delle infrastrutture. Un’analisi recente ha portato alla luce uno…
VulnerabilitàNegli ultimi tempi, la piattaforma di automazione n8n sta affrontando una serie crescente di bug di sicurezza. n8n è una piattaforma di automazione che trasforma task complessi in operazioni semplici e veloci. Con pochi click…
InnovazioneArticolo scritto con la collaborazione di Giovanni Pollola. Per anni, “IA a bordo dei satelliti” serviva soprattutto a “ripulire” i dati: meno rumore nelle immagini e nei dati acquisiti attraverso i vari payload multisensoriali, meno…
Cyber ItaliaNegli ultimi giorni è stato segnalato un preoccupante aumento di truffe diffuse tramite WhatsApp dal CERT-AGID. I messaggi arrivano apparentemente da contatti conosciuti e richiedono urgentemente denaro, spesso per emergenze come spese mediche improvvise. La…