Glossario

Ricerca semantica

Scopri la potenza della ricerca semantica! Scopri come AI, NLP e ML migliorano l'accuratezza della ricerca grazie alla comprensione dell'intento e del contesto dell'utente.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

La ricerca semantica rappresenta un progresso significativo nel recupero delle informazioni, andando oltre la semplice corrispondenza delle parole chiave per comprendere l'intento e il significato contestuale dietro le query degli utenti. Invece di limitarsi a cercare le occorrenze letterali delle parole, la ricerca semantica utilizza tecniche di intelligenza artificiale (AI), in particolare di elaborazione del linguaggio naturale (NLP), per cogliere le sfumature del linguaggio, le relazioni tra le parole e l'obiettivo di fondo dell'utente. Ciò consente ai sistemi di ricerca di fornire risultati più pertinenti e accurati interpretando ciò che l'utente intende trovare, piuttosto che i termini specifici digitati. Si tratta di una componente fondamentale per rendere più naturali e intuitive le interazioni con i sistemi informativi, dalla ricerca sul web alle basi di conoscenza interne, migliorando in modo sostanziale l'efficacia del recupero delle informazioni.

Come funziona la ricerca semantica

La ricerca semantica sfrutta i concetti della PNL e del Machine Learning (ML) per decifrare il significato incorporato nel testo o in altri tipi di dati. Il processo spesso prevede la conversione dei dati (come parole, frasi, documenti o persino immagini) in rappresentazioni numeriche chiamate embeddings. Questi embeddings, in genere vettori ad alta dimensionalità, catturano l'essenza semantica dei dati. Gli elementi con significati, concetti o contesti simili sono posizionati più vicini tra loro in questo spazio vettoriale.

Quando un utente effettua una ricerca, anche la sua query (che può essere un testo in linguaggio naturale, un'immagine, ecc.) viene convertita in un embedding utilizzando lo stesso modello ML. Il sistema impiega quindi tecniche di ricerca vettoriale, spesso basate su database vettoriali specializzati come Pinecone o Milvus, per trovare in modo efficiente gli elementi nel suo indice i cui embedding sono più vicini (più simili) all'embedding della query. Questa somiglianza viene solitamente misurata utilizzando metriche di distanza come la somiglianza del coseno o la distanza euclidea. I modelli avanzati di deep learning (DL), comprese le architetture come i trasformatori (ad esempio, BERT), sono spesso utilizzati per generare questi embedding potenti e consapevoli del contesto. I principali motori di ricerca come Google Search incorporano da anni la comprensione semantica per migliorare la qualità dei risultati al di là della semplice frequenza delle parole chiave.

Applicazioni della ricerca semantica

La ricerca semantica migliora diverse applicazioni in cui la comprensione dell'intento dell'utente o del contesto dei dati è fondamentale:

  • Ricerca web avanzata: Andare oltre le parole chiave per comprendere l'argomento e l'intento alla base di una ricerca (ad esempio, cercando "il posto migliore per vedere l'aurora boreale in inverno" si ottengono risultati su luoghi specifici e periodi ideali, non solo pagine contenenti quelle parole esatte).
  • Scoperta di prodotti per l'e-commerce: Consentire agli utenti di cercare prodotti utilizzando un linguaggio descrittivo e naturale (ad esempio, trovare "scarpe comode per stare in piedi tutto il giorno" invece di dover conoscere marche o nomi di prodotti specifici). Spesso si integra con i sistemi di raccomandazione.
  • Gestione della conoscenza interna: Consentire ai dipendenti di un'organizzazione di trovare documenti, rapporti o competenze rilevanti effettuando ricerche basate su concetti e significati, migliorando l'accesso alle informazioni all'interno di strumenti come Ultralytics HUB.
  • Chatbot per l'assistenza clienti: Alimentare i chatbot e gli assistenti virtuali per comprendere meglio le domande degli utenti e fornire risposte più accurate o articoli di aiuto pertinenti, spesso sfruttando i Large Language Models (LLM).
  • Raccomandazione di contenuti: Suggerimento di articoli, video o musica in base alla somiglianza semantica con i contenuti con cui l'utente ha interagito in precedenza. Piattaforme come Spotify utilizzano concetti simili.
  • Esplorazione dei dati: Strumenti come Ultralytics Explorer Dashboard possono utilizzare la somiglianza semantica per aiutare gli utenti a navigare e comprendere grandi insiemi di dati, compresi quelli di immagini utilizzati nella computer vision (CV). Ad esempio, è possibile trovare immagini semanticamente simili a un'immagine selezionata in un set di dati come COCO.

Ricerca semantica e concetti correlati

È utile distinguere la ricerca semantica dai termini correlati:

  • Ricerca per parole chiave: Questo approccio tradizionale abbina le parole o le frasi letterali di una query ai documenti che contengono quei termini esatti. Manca la comprensione dei sinonimi, del contesto o dell'intento dell'utente. La ricerca semantica mira a superare queste limitazioni.
  • Ricerca vettoriale: Si tratta di un metodo utilizzato per trovare elementi simili in base alla vicinanza delle loro incorporazioni vettoriali. Mentre la ricerca vettoriale è un componente fondamentale di molte moderne implementazioni di ricerca semantica (che si occupa della parte di recupero efficiente), la ricerca semantica è un concetto più ampio che include la comprensione del significato e del contesto della query e dei dati in primo luogo, spesso attraverso sofisticati modelli NLP.
  • Grafo della conoscenza: Un grafo della conoscenza struttura le informazioni come entità e relazioni. Sebbene possa migliorare significativamente la ricerca semantica fornendo un contesto strutturato e consentendo ragionamenti complessi(le query SPARQL sono comuni in questo caso), la ricerca semantica può anche operare direttamente su dati non strutturati utilizzando embeddings senza una struttura a grafo esplicita. Si tratta di tecnologie complementari.
  • Riconoscimento di entità denominate (NER): Il NER identifica entità specifiche (come nomi, luoghi, organizzazioni) nel testo. Può essere un passo all'interno di una pipeline NLP che alimenta la ricerca semantica estraendo i concetti chiave, ma non è la ricerca semantica in sé, che si concentra sul significato generale e sulla somiglianza.

La ricerca semantica svolge un ruolo fondamentale nella creazione di sistemi di intelligenza artificiale più intelligenti e facili da usare, colmando il divario tra il linguaggio umano e la comprensione delle macchine per un accesso alle informazioni e un'interazione più efficaci in vari ambiti, dalle ricerche quotidiane sul web alle applicazioni di intelligenza artificiale specializzate, come quelle costruite utilizzando Ultralytics YOLO per la ricerca visiva o l'analisi all'interno di Ultralytics HUB.

Leggi tutto