Embedding nell’apprendimento automatico: un esempio con ChromaDB
Nell’apprendimento automatico, gli embedding sono utilizzati per convertire gli oggetti multidimensionali (come immagini, testo, video o dati audio) in vettori. In questo modo, i modelli di machine learning sono in grado di riconoscerli e classificarli meglio. Questo metodo è già stato utilizzato con grande successo soprattutto in database vettoriali come ChromaDB.
Che cos’è l’embedding nell’apprendimento automatico?
L’embedding nel machine learning è una tecnica utilizzata dai sistemi per rappresentare oggetti reali in forma matematica e renderli comprensibili da parte dell’intelligenza artificiale (IA). Questi embedding (traducibili in italiano come “incorporamenti”) semplificano la rappresentazione degli oggetti reali, pur mantenendone le caratteristiche e le relazioni con altri oggetti. Questo metodo è utilizzato per insegnare ai modelli di apprendimento automatico a individuare gli oggetti che presentano similitudini. Tali oggetti possono essere, tra gli altri, testi naturali, immagini, dati audio o video. Per gli oggetti di questo tipo si parla di dati ad alta dimensionalità perché, ad esempio, un’immagine può contenere numerosi valori di colore dei pixel.
In senso stretto, gli embedding per l’IA sono vettori. In matematica, per vettore si intende una serie di numeri che definisce un punto all’interno di uno spazio dimensionale.
- Conformità al GDPR e hosting sicuro in Europa
- Potenti modelli basati sull'intelligenza artificiale
- Assenza di vendor lock-in grazie all'open source
L’idea di base degli embedding nell’apprendimento automatico è che un algoritmo di ricerca all’interno di un database vettoriale identifica due vettori il più vicini possibile tra loro. Maggiore è la complessità di questi vettori, tanto più preciso sarà il risultato nella maggior parte dei casi, se due di essi si assomigliano. Pertanto, per l’embedding nel machine learning è necessario vettorizzare e considerare nel confronto il maggior numero possibile di fattori o dimensioni. Per ottenere un buon risultato, un modello viene addestrato con i set di dati più grandi ed eterogenei possibile.
In determinati scenari, ad esempio per evitare un sovradattamento (“overfitting”) o per ottimizzare le prestazioni di calcolo, può essere opportuno utilizzare anche un minor numero di dimensioni per ottenere un buon risultato dagli embedding per l’IA.
Quali sono le applicazioni degli embedding nel machine learning?
Gli embedding nel machine learning trovano applicazione soprattutto nei modelli linguistici di grandi dimensioni, ossia i Large Language Model (LLM). Questi modelli sono utilizzati da numerosi strumenti di IA. Il metodo non si limita a incorporare solo una parola, ma anche il relativo contesto. In questo modo, le soluzioni come ChatGPT sono in grado di analizzare sequenze di parole, frasi o interi testi. Per l’embedding nel machine learning sono inoltre disponibili le seguenti possibilità applicative:
- Miglioramento di ricerche e query: l’embedding nel machine learning può essere utilizzato per perfezionare interrogazioni e query di ricerca, ottenendo quindi risultati più precisi a lungo termine.
- Contestualizzazione: è possibile ottenere risposte più precise anche attraverso la messa a disposizione di ulteriori informazioni di contesto.
- Adattamenti personalizzati: utilizzando gli embedding per l’IA è possibile specificare e personalizzare i modelli linguistici di grandi dimensioni. La soluzione permette quindi di adattarli con precisione a situazioni o terminologie specifiche.
- Integrazione: gli incorporamenti possono essere utilizzati anche per integrare dati provenienti da fonti esterne. I set di dati diventano quindi ancora più estesi ed eterogenei.
Come funziona l’embedding? (esempio: ChromaDB)
La soluzione migliore per un’archiviazione efficace e per il successivo recupero dei dati incorporati è un database vettoriale. Questi spazi di archiviazione non soltanto memorizzano i dati risparmiando spazio, ma consentono anche di eseguire query che non restituiscono il risultato esatto, bensì risultati simili. Una delle memorie vettoriali open source più note è ChromaDB, che permette di memorizzare gli embedding per il machine learning insieme ai metadati in modo da poterli riutilizzare con i modelli linguistici di grandi dimensioni in un secondo momento. Questa soluzione consente di capire meglio il funzionamento degli embedding. In generale sono sufficienti i tre passaggi descritti qui di seguito.
Primo passaggio: creazione di una nuova raccolta
Il primo passaggio consiste nel creare una raccolta che presenti somiglianze con le tabelle archiviate in un database relazionale. Tali somiglianze vengono convertite in incorporamenti. ChromaDB utilizza la conversione all-MiniLM-L6-v2 come standard per gli embedding. È comunque possibile cambiare questa impostazione e utilizzare un modello diverso. Se hai bisogno di una raccolta specializzata, ad esempio, la scelta di un modello diverso consente una migliore adattabilità a esigenze specifiche, come l’elaborazione di immagini o testi specializzati. La flessibilità nella scelta del modello rende ChromaDB uno strumento versatile per dati di testo, audio o immagini.
Secondo passaggio: aggiunta di nuovi documenti
A questo punto, aggiungi documenti di testo con metadati e un proprio ID alla nuova raccolta. Se il testo è presente nella raccolta, ChromaDB lo converte automaticamente in embedding. I metadati fungono da informazioni aggiuntive per perfezionare successivamente la query in modo mirato, ad esempio filtrando per categorie o per marca temporale. Questa strutturazione ti permette di gestire grandi quantità di dati in modo chiaro e di trovare risultati pertinenti più rapidamente.
Terzo passaggio: query dei documenti cercati
Nel terzo passaggio puoi quindi eseguire query degli embedding in ChromaDB o dei testi. Come output otterrai risultati che saranno simili alla tua richiesta. Inoltre, è possibile richiedere l’emissione dei documenti desiderati inserendo i metadati. I risultati sono ordinati in base alla loro somiglianza, mostrando più in alto quelli più rilevanti. Per ottimizzare la query, puoi anche impostare soglie di somiglianza oppure applicare filtri supplementari con cui aumentare ulteriormente la precisione.
- Partner IONOS Cloud
- Soluzioni flessibili e su misura
- Data center situati in Europa

