🚀 Prova Zilliz Cloud, la versione completamente gestita di Milvus, gratuitamente—sperimenta prestazioni 10 volte più veloci! Prova Ora>>

milvus-logo
LFAI
  • Home
  • Blog
  • Creare un sistema intelligente di personalizzazione del guardaroba grazie al database vettoriale di Milvus

Creare un sistema intelligente di personalizzazione del guardaroba grazie al database vettoriale di Milvus

  • Engineering
July 08, 2022
Yiyun Ni

cover image immagine di copertina

Se state cercando un armadio che si adatti perfettamente alla vostra camera da letto o al vostro camerino, scommetto che la maggior parte delle persone penserà a quelli su misura. Tuttavia, non tutti hanno a disposizione un budget così ampio. E allora che dire di quelli già pronti? Il problema di questo tipo di armadi è che è molto probabile che non soddisfino le vostre aspettative, perché non sono abbastanza flessibili da soddisfare le vostre esigenze di spazio. Inoltre, quando si effettua una ricerca online, è piuttosto difficile riassumere il tipo di armadio che si sta cercando con delle parole chiave. È molto probabile che la parola chiave digitata nella casella di ricerca (ad esempio, un armadio con vassoio portagioie) sia molto diversa da come viene definita nel motore di ricerca (ad esempio, un armadio con vassoio estraibile con inserto).

Ma grazie alle tecnologie emergenti, c'è una soluzione! IKEA, il conglomerato di vendita al dettaglio di mobili, fornisce un popolare strumento di progettazione PAX wardrobe che consente agli utenti di scegliere tra una serie di armadi già pronti e di personalizzarne il colore, le dimensioni e il design interno. Che abbiate bisogno di spazio per appendere, di più ripiani o di cassetti interni, questo sistema intelligente di personalizzazione degli armadi è sempre in grado di soddisfare le vostre esigenze.

Per trovare o costruire il vostro guardaroba ideale utilizzando questo sistema intelligente di progettazione di armadi, è necessario:

  1. Specificare i requisiti di base: forma (normale, a L o a U), lunghezza e profondità dell'armadio.
  2. Specificare le esigenze di stoccaggio e l'organizzazione interna dell'armadio (ad esempio, è necessario uno spazio per appendere, un portapantaloni estraibile, ecc.)
  3. Aggiungete o rimuovete parti dell'armadio come cassetti o ripiani.

Il progetto è completato. Semplice e facile!

pax system sistema pax

Un componente molto importante che rende possibile un sistema di progettazione di armadi è il database vettoriale. Per questo motivo, questo articolo si propone di presentare il flusso di lavoro e le soluzioni di ricerca per similarità utilizzate per costruire un sistema intelligente di personalizzazione del guardaroba basato sulla ricerca per similarità vettoriale.

Vai a:

Panoramica del sistema

Per fornire uno strumento di personalizzazione del guardaroba così intelligente, dobbiamo innanzitutto definire la logica aziendale e comprendere gli attributi degli articoli e il percorso dell'utente. Gli armadi e i loro componenti, come cassetti, vassoi e scaffali, sono tutti dati non strutturati. Pertanto, il secondo passo consiste nello sfruttare gli algoritmi e le regole dell'intelligenza artificiale, le conoscenze pregresse, la descrizione degli articoli e altro ancora, per convertire questi dati non strutturati in un tipo di dati comprensibili ai computer: i vettori!

Customization tool overview Panoramica dello strumento di personalizzazione

Con i vettori generati, abbiamo bisogno di potenti database vettoriali e motori di ricerca per elaborarli.

tool architecture architettura dello strumento

Lo strumento di personalizzazione sfrutta alcuni dei motori di ricerca e dei database più diffusi: Elasticsearch, Milvus e PostgreSQL.

Perché Milvus?

Un componente del guardaroba contiene informazioni molto complesse, come il colore, la forma, l'organizzazione interna, ecc. Tuttavia, il modo tradizionale di conservare i dati del guardaroba in un database relazionale non è sufficiente. Un metodo molto diffuso è quello di utilizzare tecniche di embedding per convertire i guardaroba in vettori. Pertanto, è necessario cercare un nuovo tipo di database specificamente progettato per l'archiviazione vettoriale e la ricerca di similarità. Dopo aver sondato diverse soluzioni popolari, è stato scelto il database vettoriale Milvus per le sue eccellenti prestazioni, stabilità, compatibilità e facilità d'uso. Il grafico che segue è un confronto tra le diverse soluzioni di ricerca vettoriale più diffuse.

solution comparison confronto tra le soluzioni

Flusso di lavoro del sistema

System workflow Flusso di lavoro del sistema

Elasticsearch viene utilizzato per un filtraggio grossolano in base alle dimensioni del guardaroba, al colore, ecc. Poi i risultati filtrati passano attraverso Milvus, il database vettoriale, per una ricerca di similarità e i risultati vengono classificati in base alla loro distanza/similarità rispetto al vettore della query. Infine, i risultati vengono consolidati e ulteriormente raffinati in base alle intuizioni aziendali.

Flusso di dati

Il sistema di personalizzazione del guardaroba è molto simile ai tradizionali motori di ricerca e sistemi di raccomandazione. Si compone di tre parti:

  • Preparazione dei dati offline, compresa la definizione e la generazione dei dati.
  • Servizi online, tra cui richiamo e classificazione.
  • Postelaborazione dei dati basata sulla logica aziendale.

Data flow Flusso di dati

Flusso di dati offline

  1. Definire i dati utilizzando le intuizioni aziendali.
  2. Utilizzare le conoscenze pregresse per definire il modo in cui combinare i diversi componenti e formarli in un guardaroba.
  3. Riconoscere le etichette delle caratteristiche degli armadi e codificare le caratteristiche nei dati Elasticsearch in un file .json.
  4. Preparare i dati di richiamo codificando i dati non strutturati in vettori.
  5. Utilizzare il database vettoriale Milvus per classificare i risultati richiamati ottenuti nella fase precedente.

offline data flow flusso di dati offline

Flusso di dati online

  1. Ricevere le richieste di informazioni dagli utenti e raccogliere i profili degli utenti.
  2. Comprendere le richieste degli utenti identificando i loro requisiti per il guardaroba.
  3. Ricerca grossolana con Elasticsearch.
  4. Attribuire un punteggio e classificare i risultati ottenuti dalla ricerca grossolana in base al calcolo della similarità vettoriale in Milvus.
  5. Post-processare e organizzare i risultati sulla piattaforma back-end per generare i risultati finali.

online data flow flusso di dati online

Post-elaborazione dei dati

La logica aziendale varia da un'azienda all'altra. È possibile aggiungere un tocco finale ai risultati applicando la logica aziendale.

Demo del sistema

Vediamo ora come funziona il sistema che abbiamo costruito.

L'interfaccia utente (UI) mostra la possibilità di diverse combinazioni di componenti del guardaroba.

Ogni componente viene etichettato in base alle sue caratteristiche (taglia, colore, ecc.) e memorizzato in Elasticsearch (ES). Quando si memorizzano le etichette in ES, si devono compilare quattro campi di dati principali: ID, tag, percorso di archiviazione e altri campi di supporto. ES e i dati etichettati vengono utilizzati per il richiamo granulare e il filtraggio degli attributi.

es es

Quindi vengono utilizzati diversi algoritmi di intelligenza artificiale per codificare un guardaroba in un insieme di vettori. Gli insiemi di vettori vengono memorizzati in Milvus per la ricerca di similarità e la classificazione. Questa fase restituisce risultati più raffinati e accurati.

Milvus Milvus

Elasticsearch, Milvus e altri componenti del sistema formano complessivamente la piattaforma di progettazione della personalizzazione. Durante il richiamo, il linguaggio specifico del dominio (DSL) in Elasticsearch e Milvus è il seguente.

dsl dsl

Cercate altre risorse?

Scoprite come il database vettoriale Milvus può alimentare altre applicazioni di intelligenza artificiale:

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started

Like the article? Spread the word

Continua a Leggere