A cura di Mirko Dimartino, Data Engineer Prima Assicurazioni
Ogni azienda oggi raccoglie enormi quantità di dati. Eppure, la maggior parte di queste informazioni resta inutilizzata, perché estrarne valore non è semplice. Spesso i dati sono sparsi in sistemi diversi e le query tradizionali riescono a rispondere solo a domande molto precise, senza “comprendere” il significato più ampio di ciò che cerchiamo. Servirebbero strumenti capaci di interpretare cosa vogliamo davvero sapere, anche quando le informazioni non sono immediatamente evidenti nei database. È qui che entrano in gioco le ontologie e l’Intelligenza Artificiale applicata ai dati.
In un recente articolo pubblicato sul Journal of Artificial Intelligence Research (JAIR), insieme ad altri ricercatori, ho proposto un nuovo approccio per interrogare grandi basi di dati utilizzando le ontologie in modo efficiente. In pratica, abbiamo insegnato al database a comprendere meglio le domande, collegando fra loro concetti correlati, senza rallentare le prestazioni. Ciò significa poter porre query più complesse e ottenere comunque risposte rapide e accurate. Una simile innovazione apre prospettive interessanti per aziende e enti pubblici che vogliono sfruttare a pieno il loro patrimonio informativo.
Dare significato ai dati: come funzionano le ontologie
In informatica un’ontologia è, in parole semplici, un modello concettuale di un certo dominio, una sorta di mappa della conoscenza fatta di definizioni e relazioni. Ad esempio, un’ontologia nel settore automobilistico potrebbe sapere che “SUV” è una sottocategoria di “automobile”. Oppure, in un contesto aziendale, che “manager” è un tipo di “dipendente”. Queste relazioni permettono al computer di inferire nuove informazioni.
Come ci aiuta tutto ciò nelle query? Immaginiamo di avere un database di dipendenti dove solo alcuni sono etichettati come manager. Se chiediamo “elencami tutti i dipendenti”, un sistema tradizionale potrebbe restituire solo quelli non manager, perché tratta le categorie in modo rigido. Un sistema basato su ontologie, invece, sa che ogni manager è comunque un dipendente, e includerà anche i manager nella risposta. In altre parole, l’ontologia aggiunge contesto e logica alle query: la query diventa intelligente perché il sistema capisce le relazioni sottostanti ai dati.
Questa capacità è cruciale quando i dati sono frammentati su più fonti o quando le informazioni richieste non sono esplicitamente presenti ma deducibili. L’open-world assumption tipica delle ontologie permette infatti di considerare vero tutto ciò che potrebbe essere vero secondo le regole definite, ampliando la portata delle interrogazioni. Il risultato sono risposte più complete, senza dover pre-elaborare manualmente tutti i collegamenti tra i dati.
Un nuovo approccio efficiente per query “smart”
Il punto debole, finora, era che aggiungere questa “intelligenza” alle query poteva costare caro in termini di performance. I motori inferenziali tradizionali rischiavano di rallentare molto quando le basi di conoscenza diventavano grandi o le regole troppo complesse. Per questo motivo, gli esperti avevano definito linguaggi di ontologie semplificati (come OWL 2 QL, basato su DL-Lite) con cui era garantito un tempo di risposta rapido, a scapito però di qualche funzionalità espressiva.
Nel nostro lavoro su JAIR, abbiamo fatto un passo avanti, estendendo i limiti di questi linguaggi pur mantenendo l’efficienza. In particolare, abbiamo combinato i punti di forza di due approcci: uno orientato alle interrogazioni su database relazionali, l’altro efficace nel gestire gerarchie e relazioni complesse. Così abbiamo introdotto un linguaggio di ontologie esteso che supporta regole più ricche – ad esempio, la possibilità di includere relazioni inverse o condizioni esistenziali più articolate – ma in modo “harmless”, cioè limitato quanto basta per non esplodere in complessità computazionale.
Il vero traguardo è che anche con queste capacità aggiuntive, il sistema riesce a tradurre le query avanzate in una serie di operazioni che un database tradizionale o un motore di ricerca semantica può eseguire in tempi brevi. Abbiamo sviluppato un algoritmo di riscrittura della query che scompone la domanda ad alto livello in query più semplici, utilizzando anche automi a stati finiti per gestire i percorsi logici possibili. Senza entrare nei dettagli tecnici, significa che sotto il cofano le query complesse vengono ricondotte a qualcosa che i sistemi esistenti sanno già gestire bene.
Importante: il nuovo metodo è stato dimostrato teoricamente efficiente. Le analisi mostrano che il tempo di risposta cresce in modo simile a una normale interrogazione su database al crescere dei dati (complessità “data complexity” in NLOGSPACE, quindi altamente scalabile). Anche considerando la complessità totale (dati + dimensione delle query), l’approccio resta gestibile. In breve, si possono ottenere query smart senza sacrificare le prestazioni, anche con dataset imponenti.
Vale la pena notare che una delle tecnologie di base da noi estesa (DL-Lite_R) è già utilizzata in molti settori pratici, tra cui energia, sanità, pubblica amministrazione, trasporti e altri. Ciò significa che migliorare le capacità espressive mantenendo l’efficienza non è solo un esercizio teorico, ma può avere impatto diretto in contesti di utilizzo reali.
Benefici concreti per aziende e servizi digitali
Quali vantaggi tangibili porta quindi l’interrogazione di dati mediata da ontologie, resa più efficiente da questo nuovo approccio? Ecco alcuni esempi di scenari d’uso possibili:
- Imprese con basi di dati eterogenee: aziende grandi (banche, assicurazioni, retail) spesso hanno dati sparsi in diversi silos. Un’ontologia di dominio permette di unificare la visione e porre domande trasversali ottenendo risposte immediate, senza dover prima integrare manualmente le tabelle di vari dipartimenti.
- Enti pubblici e smart city: nelle Pubbliche Amministrazioni i dati su cittadini, servizi, territori e infrastrutture sono enormi e distribuiti. Con ontologie ben strutturate si potrebbero interrogare le informazioni pubbliche in modo integrato, aiutando a prendere decisioni di pianificazione in pochi secondi.
- Servizi digitali e AI conversazionale: un assistente virtuale o un motore di ricerca avanzato può beneficiare di ontologie per comprendere la domanda dell’utente. Il sistema può collegare concetti e categorie anche se non menzionati esplicitamente, restituendo risposte più pertinenti.
In definitiva, questa ricerca mostra come l’evoluzione dell’AI passi anche dalla capacità di dare “significato” ai dati in modo scalabile. Per le imprese, sfruttare ontologie efficienti significa poter estrarre insight complessi dai propri database senza investire in costose rielaborazioni. Per i cittadini e i servizi pubblici, potrebbe voler dire accedere a informazioni integrate con tempi di risposta ridotti. In un mondo sempre più guidato dai dati, far sì che i database comprendano le nostre domande è un passo chiave per ottenere decisioni più informate e sistemi più reattivi.