Interviste

Frank Liu, Direttore delle Operazioni di Zilliz – Serie di Interviste

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Frank Liu è il Direttore delle Operazioni di Zilliz, un fornitore leader di tecnologie di database vettoriali e intelligenza artificiale. Sono anche gli ingegneri e gli scienziati che hanno creato LF AI Milvus®, il database vettoriale open-source più popolare al mondo.

Cosa ti ha inizialmente attratto verso il machine learning?

La mia prima esposizione al potere del ML/AI è stata come studente universitario a Stanford, nonostante fosse un po’ lontano dalla mia materia di studio (Ingegneria Elettrica). Ero inizialmente attratto dall’ingegneria elettrica come campo perché la capacità di ridurre sistemi elettrici e fisici complessi in approssimazioni matematiche mi sembrava molto potente, e le statistiche e il machine learning mi sembravano la stessa cosa. Ho finito per frequentare più classi di visione artificiale e machine learning durante la scuola di specializzazione, e ho scritto la mia tesi di master sull’uso del ML per valutare la bellezza estetica delle immagini. Tutto ciò mi ha portato al mio primo lavoro nel team di Visione Artificiale e Machine Learning di Yahoo, dove ero in un ruolo ibrido di ricerca e sviluppo software. Eravamo ancora nei giorni pre-transformer di AlexNet e VGG, e vedere un intero settore e industria muoversi così rapidamente, dalla preparazione dei dati all’addestramento dei modelli in parallelo alla produzione dei modelli, è stato incredibile. In molti modi, sembra un po’ ridicolo usare la frase “ai tempi” per riferirsi a qualcosa che è successo meno di 10 anni fa, ma tale è il progresso che è stato fatto in questo campo.

Dopo Yahoo, ho ricoperto il ruolo di CTO di una startup che ho co-fondato, dove abbiamo sfruttato il ML per la localizzazione indoor. Lì, abbiamo dovuto ottimizzare modelli sequenziali per microcontroller molto piccoli – una sfida di ingegneria molto diversa ma comunque correlata ai grandi LLM e modelli di diffusione di oggi. Abbiamo anche costruito hardware, dashboard per la visualizzazione e applicazioni cloud-native semplici, ma l’AI/ML ha sempre costituito un componente fondamentale del lavoro che stavamo svolgendo.

Anche se sono stato nel ML o in campi ad esso correlati per la maggior parte degli ultimi 7 o 8 anni, conservo ancora molta passione per la progettazione di circuiti e la logica digitale. Avere una formazione in Ingegneria Elettrica è, in molti modi, incredibilmente utile per molto del lavoro in cui sono coinvolto questi giorni come Direttore delle Operazioni. Molti concetti importanti nel design digitale come la memoria virtuale, la predizione dei rami e l’esecuzione concorrente in HDL aiutano a fornire una visione a tutto tondo di molti aspetti del ML e dei sistemi distribuiti di oggi. Sebbene capisca l’attrazione della CS, spero di vedere un ritorno ai campi di ingegneria più tradizionali – Ingegneria Elettrica, Meccanica, Chimica, ecc. – nei prossimi due anni.

Per i lettori che non conoscono il termine, cosa sono i dati non strutturati?

I dati non strutturati si riferiscono a “dati complessi”, che sono essenzialmente dati che non possono essere archiviati in un formato predefinito o adattarsi a un modello di dati esistente. A confronto, i dati strutturati si riferiscono a qualsiasi tipo di dati che abbia una struttura predefinita – dati numerici, stringhe, tabelle, oggetti e archivi chiave/valore sono tutti esempi di dati strutturati.

Per capire veramente cosa siano i dati non strutturati e perché siano stati tradizionalmente difficili da elaborare, aiuta confrontarli con i dati strutturati. In termini semplici, i dati strutturati tradizionali possono essere archiviati tramite un modello relazionale. Prendiamo ad esempio un database relazionale con una tabella per archiviare informazioni sui libri: ogni riga all’interno della tabella potrebbe rappresentare un libro specifico indicizzato per numero di ISBN, mentre le colonne denoterebbero le corrispondenti categorie di informazione, come titolo, autore, data di pubblicazione, e così via. Oggi ci sono modelli di dati molto più flessibili – archivi a colonne larghe, database di oggetti, database grafici, e così via. Ma l’idea generale rimane la stessa: questi database sono progettati per archiviare dati che si adattano a un particolare modello di dati.

I dati non strutturati, d’altra parte, possono essere pensati come un blocco pseudo-casuale di dati binari. Possono rappresentare qualsiasi cosa, essere arbitrariamente grandi o piccoli e possono essere trasformati e letti in uno dei molti modi diversi. Ciò rende impossibile adattarli a un modello di dati, per non parlare di una tabella in un database relazionale.

Quali sono alcuni esempi di questo tipo di dati?

I dati generati dagli esseri umani – immagini, video, audio, linguaggio naturale, ecc. – sono ottimi esempi di dati non strutturati. Ma ci sono anche molti altri esempi meno comuni di dati non strutturati. I profili utente, le strutture proteiche, le sequenze del genoma e persino il codice leggibile dall’uomo sono tutti esempi di dati non strutturati. Il motivo principale per cui i dati non strutturati sono stati tradizionalmente così difficili da gestire è che possono assumere qualsiasi forma e possono richiedere tempi di esecuzione molto diversi per l’elaborazione.

Usando le immagini come esempio, due foto della stessa scena potrebbero avere valori di pixel molto diversi, ma entrambe hanno un contenuto generale simile. Il linguaggio naturale è un altro esempio di dati non strutturati che mi piace citare. Le frasi “Ingegneria Elettrica” e “Informatica” sono estremamente correlate – tanto che gli edifici di Ingegneria Elettrica e Informatica a Stanford sono adiacenti – ma senza un modo per codificare il significato semantico dietro queste due frasi, un computer potrebbe ingenuamente pensare che “Informatica” e “Scienze Sociali” siano più correlate.

Cosa è un database vettoriale?

Per capire un database vettoriale, aiuta prima capire cosa sia un’incorporazione. Ci arriverò a momenti, ma la versione breve è che un’incorporazione è un vettore ad alta dimensionalità che può rappresentare la semantica dei dati non strutturati. In generale, due incorporazioni che sono vicine l’una all’altra in termini di distanza sono molto probabilmente correlate a dati di input semanticamente simili. Con il ML moderno, abbiamo il potere di codificare e trasformare una varietà di tipi di dati non strutturati – immagini e testo, ad esempio – in vettori di incorporazione semanticamente potenti.

Dal punto di vista di un’organizzazione, i dati non strutturati diventano incredibilmente difficili da gestire una volta che la quantità supera un certo limite. È qui che entra in gioco un database vettoriale come Zilliz Cloud. Un database vettoriale è progettato per archiviare, indicizzare e cercare attraverso grandi quantità di dati non strutturati sfruttando le incorporazioni come rappresentazione sottostante. La ricerca attraverso un database vettoriale viene solitamente eseguita con vettori di query, e il risultato della query sono i primi N risultati più simili in base alla distanza.

I migliori database vettoriali hanno molte delle funzionalità di usabilità dei database relazionali tradizionali: scalabilità orizzontale, caching, replica, failover e esecuzione della query sono solo alcune delle molte funzionalità che un vero database vettoriale dovrebbe implementare. Come definitori di categoria, siamo stati attivi nei circoli accademici, avendo pubblicato articoli in SIGMOD 2021 e VLDB 2022, le due principali conferenze sui database di oggi.

Potresti discutere cosa sia un’incorporazione?

In generale, un’incorporazione è un vettore ad alta dimensionalità che deriva dalle attivazioni di uno strato intermedio in una rete neurale multistrato. Molte reti neurali sono addestrate per produrre incorporazioni e alcune applicazioni utilizzano vettori concatenati da più strati intermedi come incorporazione, ma non mi addentrerò troppo in questi argomenti per ora. Un altro modo meno comune ma altrettanto importante per generare incorporazioni è attraverso funzionalità create manualmente. Piuttosto che avere un modello ML che impara automaticamente le rappresentazioni corrette per i dati di input, la buona vecchia ingegneria delle funzionalità può funzionare per molte applicazioni. Indipendentemente dal metodo sottostante, le incorporazioni per oggetti semanticamente simili sono vicine l’una all’altra in termini di distanza, e questa proprietà è ciò che alimenta i database vettoriali.

Quali sono alcuni dei casi d’uso più popolari con questa tecnologia?

I database vettoriali sono ideali per qualsiasi applicazione che richieda una forma di ricerca semantica – raccomandazione di prodotti, analisi di video, ricerca di documenti, rilevamento di minacce e frodi e chatbot alimentati da AI sono alcuni dei casi d’uso più popolari per i database vettoriali oggi. Per illustrare ciò, Milvus, il database vettoriale open-source creato da Zilliz e il nucleo centrale di Zilliz Cloud, è stato utilizzato da oltre mille utenti aziendali in una varietà di casi d’uso diversi.

Mi piace sempre discutere queste applicazioni e aiutare le persone a capire come funzionano, ma mi piace anche discutere alcuni dei casi d’uso meno noti dei database vettoriali. La scoperta di nuovi farmaci è uno dei miei “niche” preferiti per i database vettoriali. La sfida per questa applicazione specifica è cercare potenziali candidati farmaci per trattare una certa malattia o sintomo all’interno di un database di 800 milioni di composti. Una società farmaceutica con cui abbiamo comunicato è riuscita a migliorare significativamente il processo di scoperta dei farmaci e a ridurre le risorse hardware combinando Milvus con una libreria di chemioinformatica chiamata RDKit.

Il progetto AI ArtLens del Cleveland Museum of Art (CMA) è un altro esempio che mi piace citare. AI ArtLens è uno strumento interattivo che prende un’immagine di query come input e recupera immagini visivamente simili dal database del museo. Ciò è solitamente chiamato ricerca inversa di immagini ed è un caso d’uso abbastanza comune per i database vettoriali, ma il valore unico che Milvus ha fornito al CMA è stata la capacità di mettere in funzione l’applicazione in una settimana con un team molto piccolo.

Potresti discutere cosa sia la piattaforma open-source Towhee?

Quando comunicavamo con persone della comunità di Milvus, abbiamo scoperto che molte di loro volevano avere un modo unificato per generare incorporazioni per Milvus. Ciò era vero per quasi tutte le diverse organizzazioni con cui abbiamo parlato, ma soprattutto per le aziende che non avevano molti ingegneri di machine learning. Con Towhee, miriamo a colmare questa lacuna attraverso ciò che chiamiamo “ETL dei dati vettoriali”. Mentre i tradizionali pipeline ETL si concentrano sull’unire e trasformare i dati strutturati da più fonti in un formato utilizzabile, Towhee è progettato per lavorare con dati non strutturati e include esplicitamente il ML nel pipeline ETL risultante. Towhee realizza ciò fornendo centinaia di modelli, algoritmi e trasformazioni che possono essere utilizzati come blocchi predefiniti in un pipeline ETL dei dati vettoriali. Inoltre, Towhee fornisce anche un’API Python facile da usare che consente agli sviluppatori di costruire e testare questi pipeline ETL in una sola riga di codice.

Sebbene Towhee sia un progetto indipendente, fa anche parte dell’ecosistema più ampio dei database vettoriali centrato su Milvus che Zilliz sta creando. Immaginiamo Milvus e Towhee come due progetti altamente complementari che, quando utilizzati insieme, possono veramente democratizzare l’elaborazione dei dati non strutturati.

Zilliz ha recentemente raccolto 60 milioni di dollari in una serie B. Come ciò accelererà la missione di Zilliz?

Vorrei prima di tutto ringraziare Prosperity7 Ventures, Pavilion Capital, Hillhouse Capital, 5Y Capital, Yunqi Capital e altri per aver creduto nella missione di Zilliz e per averci sostenuto con questo round di finanziamento di serie B. Abbiamo ora raccolto un totale di 113 milioni di dollari, e questo ultimo round di finanziamento sosterrà i nostri sforzi per scalare i team di ingegneria e di mercato. In particolare, miglioreremo la nostra offerta cloud gestita, che è attualmente in accesso anticipato ma dovrebbe aprirsi a tutti più tardi quest’anno. Continueremo anche a investire nella ricerca di database e intelligenza artificiale all’avanguardia, come abbiamo fatto negli ultimi 4 anni.

C’è qualcos’altro che vorresti condividere su Zilliz?

Come azienda, stiamo crescendo rapidamente, ma ciò che veramente distingue il nostro team attuale da altri nel settore dei database e del ML è la nostra passione unica per ciò che stiamo costruendo. Siamo in missione per democratizzare l’elaborazione dei dati non strutturati, ed è assolutamente incredibile vedere così tanti talenti a Zilliz che lavorano verso un obiettivo comune. Se qualcuno di voi è interessato a ciò che stiamo facendo, non esitate a contattarci. Ci piacerebbe avervi a bordo.

Se desiderate sapere un po’ di più, sono anche personalmente aperto a discutere di Zilliz, database vettoriali o progressi nelle incorporazioni dell’AI/ML. La mia “porta” è sempre aperta, quindi non esitate a contattarmi direttamente su Twitter/LinkedIn.

Last but not least, grazie per la lettura!

Grazie per la grande intervista, i lettori che desiderano saperne di più possono visitare Zilliz.

Antoine è un leader visionario e socio fondatore di Unite.AI, guidato da una passione incrollabile per plasmare e promuovere il futuro dell'AI e della robotica. Un imprenditore seriale, crede che l'AI sarà così disruptiva per la società come l'elettricità, e spesso si lascia trasportare dall'entusiasmo per il potenziale delle tecnologie disruptive e dell'AGI.

Come futurista, è dedicato a esplorare come queste innovazioni plasmeranno il nostro mondo. Inoltre, è il fondatore di Securities.io, una piattaforma focalizzata sugli investimenti in tecnologie all'avanguardia che stanno ridefinendo il futuro e riplasmando interi settori.