Knowledge Graph
Impara come i knowledge graph organizzano entità e relazioni del mondo reale per l'IA. Scopri come usare Ultralytics YOLO26 per estrarre nodi e migliorare i modelli ML.
Un knowledge graph è una rappresentazione strutturata di entità del mondo reale e delle relazioni tra di esse. A differenza di un database standard che archivia i dati in righe e colonne rigide, un knowledge graph organizza le informazioni come una rete di nodi (che rappresentano oggetti, persone o concetti) e archi (che rappresentano le connessioni o interazioni tra tali nodi). Questa struttura imita il modo in cui gli esseri umani organizzano le informazioni, consentendo ai sistemi di intelligenza artificiale (AI) di comprendere il contesto, dedurre nuovi fatti e ragionare sui dati in modo più semantico e interconnesso.
Comprendere la struttura#
Al centro di un knowledge graph ci sono tre componenti principali che formano "triple" (Soggetto-Predicato-Oggetto):
- Nodi (Entità): Sono i punti dati distinti, come "Londra", "Python" o "Ultralytics YOLO26". Nelle attività di computer vision, questi potrebbero rappresentare oggetti rilevati come una "Auto" o un "Pedone".
- Archi (Relazioni): Queste linee distinte collegano i nodi e definiscono come si relazionano tra loro. Ad esempio, un arco potrebbe etichettare la relazione tra "Londra" e "UK" come "is_capital_of".
- Attributi (Proprietà): Dettagli aggiuntivi che descrivono un nodo, come la popolazione di una città o lo score di confidenza di un rilevamento di oggetti.
Questa struttura simile a una rete consente ai sistemi di eseguire la ricerca semantica, in cui il motore comprende l'intento dell'utente anziché limitarsi a trovare corrispondenze di parole chiave. Ad esempio, sapere che "Jaguar" è sia un animale che un marchio automobilistico consente al sistema di differenziare i risultati in base al contesto.
Integrazione con il Machine Learning#
I knowledge graph sono sempre più fondamentali per potenziare i modelli di machine learning (ML). Sebbene i modelli di deep learning eccellano nel riconoscimento di pattern statistici, spesso mancano di un fondamento fattuale. L'integrazione di un knowledge graph consente ai modelli di accedere a una "visione del mondo" verificata.
- Retrieval-Augmented Generation (RAG): I modelli generativi possono talvolta produrre informazioni plausibili ma errate. Basando i Large Language Models (LLMs) su un knowledge graph, gli agenti AI possono interrogare una fonte di verità verificata prima di generare una risposta. Ciò riduce significativamente le allucinazioni nei LLMs e migliora l'accuratezza fattuale per le applicazioni aziendali.
- Sistemi di raccomandazione: Nell'AI nel settore retail, i grafi mappano relazioni complesse tra utenti e prodotti. Se un cliente acquista una fotocamera, il grafo comprende il legame funzionale con "Schede SD" o "Treppiedi", consentendo suggerimenti più intelligenti rispetto al semplice filtraggio collaborativo.
Esempio di codice: Estrarre entità per un grafo#
I modelli di computer vision fungono da eccellenti punti di ingresso per popolare i knowledge graph identificando entità fisiche nel mondo reale. Il seguente frammento in Python dimostra come utilizzare il modello Ultralytics YOLO26 per rilevare oggetti in un'immagine. Queste classi rilevate possono fungere da nodi, che possono poi essere collegati in un database a grafo (come Neo4j o Amazon Neptune).
from ultralytics import YOLO
# Load the latest YOLO26 model (released Jan 2026)
model = YOLO("yolo26n.pt")
# Run inference on an image to find entities
results = model("https://ultralytics.com/images/bus.jpg")
# Extract unique detected object names to serve as graph nodes
# e.g., {'bus', 'person'}
detected_entities = {results[0].names[int(c)] for c in results[0].boxes.cls}
print(f"Graph Nodes: {detected_entities}")Applicazioni nel mondo reale#
-
Scoperta di farmaci nell'assistenza sanitaria: I ricercatori nell'AI in ambito sanitario utilizzano i knowledge graph per modellare interazioni biologiche. Collegando entità come geni, proteine e composti chimici da database come UniProt, gli algoritmi possono prevedere potenziali bersagli farmacologici ed effetti collaterali, accelerando lo sviluppo di nuovi trattamenti.
-
Digital twin della supply chain: Le aziende di logistica impiegano i knowledge graph per creare un "digital twin" delle loro operazioni. I nodi rappresentano fornitori, magazzini e inventario, mentre gli archi rappresentano rotte di spedizione e dipendenze. Questa struttura facilita l'analisi dei Big Data, consentendo ai manager di prevedere i ritardi e ottimizzare le rotte in modo dinamico.
Knowledge Graph vs. database relazionali#
È importante distinguere un knowledge graph da un tradizionale Relational Database (RDBMS). Un database relazionale archivia i dati in tabelle rigide collegate da chiavi esterne, il che è efficiente per dati strutturati e transazionali (come i registri bancari). Tuttavia, interrogare relazioni complesse (ad esempio, "Trova amici di amici a cui piace la fantascienza") richiede costose operazioni di "join".
Al contrario, un knowledge graph (spesso memorizzato in un Graph Database) tratta la relazione come un cittadino di primo livello. L'attraversamento delle connessioni è istantaneo, rendendo i grafi superiori per attività che coinvolgono dati altamente interconnessi, come reti di rilevamento delle frodi o analisi di social network. Mentre i RDBMS eccellono nell'archiviazione e nel recupero di record specifici, i knowledge graph eccellono nella scoperta di pattern e insight nascosti all'interno delle connessioni stesse.
Prospettive future con l'AI multi-modale#
Il futuro dei knowledge graph risiede nel multi-modal learning. Man mano che modelli come Ultralytics YOLO26 continuano a progredire nel rilevamento di oggetti e nella stima della posa, alimenteranno automaticamente i grafi con il contesto visivo. Questo crea sistemi che non solo "leggono" il testo ma "vedono" il mondo, collegando i concetti visivi alle definizioni linguistiche. Usando la Ultralytics Platform, gli sviluppatori possono addestrare questi modelli di visione specializzati a riconoscere entità personalizzate, costruendo di fatto gli organi sensoriali per la prossima generazione di sistemi di IA consapevoli della conoscenza.






