Cosa sono le ontologie, a cosa servono e quali strumenti esistono per trattale?
Le ontologie sono rappresentazioni dinamiche di un particolare dominio di interesse.
Per essere definite tali, le ontologie devono avere tre caratteristiche imprescindibili:
- devono essere esplicite,
- devono essere formali,
- devono essere condivise.
Questa ambivalenza lessicale, matematica e sociale rende le ontologie strumenti preziose per moltissime attività di grande valore per una azienda.
Da un punto di vista lessicale, per essere esplicitate, le ontologie vanno espresse in un linguaggio comprensibile. I vocabolari, i tesauri, le classificazioni, le folksonomies, i dizionari dei sinonimi e contrari forniscono validi strumenti per esplicitare i termini di una ontologia ( es. “uomo” appartiene alla specie “homo sapiens” ).
Da un punto di vista matematico, le ontologie sono teorie assiomatiche del primo ordine che possono essere espresse con assiomi e teoremi della logica descrittiva. In questo modo è possibile scrivere algoritmi in grado di trattare ontologie per costruire deduzioni logiche. Questa caratteristica ne ha fatto uno strumento indispensabile nel campo dell’Intelligenza Artificiale.
Infine, non meno importante, l’aspetto sociale determina la reale utilità pratica di una ontologia: infatti solo se essa è riconosciuta da una comunità (più o meno ampia) può avere una utilità. Ignorare l’aspetto sociale delle ontologie porta inevitabilmente a conflitti perchè comunità diverse potrebbero associare significati profondamente diversi alla stessa parola (i.e. fare riferimento ad ontologie differenti).
L’ultimo aspetto riguarda la dinamicità delle ontologie. Le ontologie evolvono di continuo: alcuni termini si aggiungono, altri cadono in disuso, altri ancora mutano di significato: ad esempio il termine “IoT” solo qualche anno fa non esisteva. Le ontologie vanno quindi manutenute nel tempo.
A cosa servono le ontologie
Uno dei tipici problemi che si risolvere grazie alle ontologie è quello di individuare, in un insieme di contenuti, quelli collegati ad un determinato argomento (es. “Industria 4.0”). Per fare questo è necessario individuare nel testo del contenuto uno o più argomenti presenti in un vocabolario condiviso. Le ontologie permettono proprio di definire tale vocabolario e di definire una serie di relazioni che poi un programma può analizzare automaticamente.
Ad esempio, supponiamo che si decida che un articolo parli di un sensore.
Esiste una ontologia pubblica in cui termine “sensore” è definito come un
componente di un “device” che a suo volta è un componente dell “IoT” che a suo volta è un termine
che può essere utilizzato nel tema “Industria 4.0”.
Un programma in grado di comprendere tale l’ontologia potrebbe essere in grado di dedurre
che l’articolo che parla del sensore potrebbe essere interessante a chi ha espresso interesse sul tema
“industria 4.0”
Quali strumenti esistono per maneggiare le ontologie
Gli standard del Semantic Web, da oltre dieci anni, hanno definito alcune specifiche che consentono di scrivere ontologie utilizzando un linguaggio comprensibile ma che nel contempo è formale (ovvero trasformabile in un teorema).
La condivisione è invece lasciata al web stesso che in questi anni ha prodotto una moltitudine di ontologie in moltissimi domini della conoscenza. Alcune di queste ontologie erano tesauri e classificazioni preesistenti che sono state formalizzate, moltissime altre sono state create per far fronte alle esigenze di singole comunità o di applicazioni. Ad esempio schema.org è una ontologia condivisa da Google, Microsoft e Yahoo per taggare le pagine web rispetto alle esigenze dei loro motori di ricerca.
Il W3C ha standardizzato vari linguaggi con cui descrivere le ontologie, più o meno espressivi, più o meno facili da computare nei differenti contesti. Proprio questa standardizzazione ha prodotto una nutrita serie di strumenti per editare, visualizzare e condividere ontologie; a sua volta la disponibilità di strumenti ha prodotto una grande quantità di ontologie modulari e riutilizzabili.
Perchè le ontologie hanno valore per le aziende
Ogni società ha il proprio linguaggio e quindi necessita delle proprie ontologie. Ma ogni società non è un isola, ed è quindi essenziale che, nel limite del possibile, le sue ontologie siano condivise, o almeno abbiano una relazione chiara con le ontologie dei suoi stakeholder.
Nel descrivere formalmente le ontologie è quindi bene cercare di riferirsi quanto più possibile ad ontologie standard. Questa operazione ha tre valori:
- aumenta la consapevolezza delle peculiarità della azienda;
- accresce la cultura aziendale su uno specifico dominio incorporando quanto già fatto da altri:
- abilita all’utilizzo di algoritmi di Intelligenza Artificiale
Ad esempio, se si vogliono taggare i propri contenuti, le attività consisteranno:
- in interviste per determinare i “topic”,
- nella analisi delle ontologie esistenti,
- nella formalizzazione delle ontologie dei contenuti ,
- nel setup degli strumenti per editare e visualizzare le ontologie,
- nel taggare un insieme di contenuti campione utilizzando un mix di automatismi e attività di verifica manuale.
I contenuti taggati e le ontologie prodotte saranno poi utilizzabili, come modelli di apprendimento per taggare tutti i contenuti attraverso algoritmi di machine learning.