stub Frank Liu, Operations Director på Zilliz - Intervjuserie - Unite.AI
Anslut dig till vårt nätverk!

Intervjuer

Frank Liu, Operations Director på Zilliz – Intervjuserien

mm

publicerade

 on

Frank Liu är verksamhetschef på Zilliz, en ledande leverantör av vektordatabas- och AI-teknik. De är också ingenjörerna och forskarna som skapade LF AI Milvus®, världens mest populära vektordatabas med öppen källkod.

Vad lockade dig från början till maskininlärning?

Min första exponering för kraften i ML/AI var som student vid Stanford, trots att det var lite långt borta från min huvudämne (elektroteknik). Jag drogs till en början till EE som ett område eftersom förmågan att destillera komplexa elektriska och fysiska system till matematiska approximationer kändes väldigt kraftfull för mig, och statistik och maskininlärning kändes likadant. Det slutade med att jag tog fler klasser i datorseende och maskininlärning under gymnasiet, och det slutade med att jag skrev min masteruppsats om att använda ML för att bedöma den estetiska skönheten i bilder. Allt detta ledde till mitt första jobb i Computer Vision & Machine Learning-teamet på Yahoo, där jag var i en hybridroll för forskning och mjukvaruutveckling. Vi var fortfarande i pre-transformatorernas AlexNet & VGG-dagar då, och att se ett helt område och en bransch röra sig så snabbt, från dataförberedelse till massivt parallell modellutbildning till modellproduktion, har varit fantastiskt. På många sätt känns det lite löjligt att använda frasen "då" för att referera till något som hände för mindre än 10 år sedan, men sådana framsteg har gjorts på detta område.

Efter Yahoo fungerade jag som CTO för en startup som jag var med och grundade, där vi utnyttjade ML för lokalisering inomhus. Där var vi tvungna att optimera sekventiella modeller för mycket små mikrokontroller – en helt annan men ändå relaterad ingenjörsutmaning till dagens massiva LLM:er och diffusionsmodeller. Vi byggde också hårdvara, instrumentpaneler för visualisering och enkla molnbaserade applikationer, men AI/ML fungerade alltid som en kärnkomponent i det arbete vi gjorde.

Även om jag har varit i eller intill ML i mer än 7 eller 8 år nu, har jag fortfarande en stor kärlek till kretsdesign och digital logikdesign. Att ha en bakgrund inom elektroteknik är på många sätt otroligt hjälpsamt för mycket av det arbete som jag är involverad i nuförtiden också. Många viktiga koncept inom digital design som virtuellt minne, grenförutsägelse och samtidig exekvering i HDL hjälper till att ge en fullstackvy till många ML och distribuerade system idag. Även om jag förstår tjusningen med CS, hoppas jag att se en återväxt inom mer traditionella teknikområden – EE, MechE, ChemE, etc... – inom de närmaste åren.

För läsare som inte är bekanta med termen, vad är ostrukturerad data?

Ostrukturerad data hänvisar till "komplex" data, som i huvudsak är data som inte kan lagras i ett fördefinierat format eller passa in i en befintlig datamodell. Som jämförelse hänvisar strukturerad data till alla typer av data som har en fördefinierad struktur – numeriska data, strängar, tabeller, objekt och nyckel-/värdelager är alla exempel på strukturerad data.

För att verkligen förstå vad ostrukturerad data är och varför det traditionellt har varit svårt att beräkningsmässigt bearbeta den här typen av data, hjälper det att jämföra det med strukturerad data. I enklaste termer kan traditionell strukturerad data lagras via en relationsmodell. Ta till exempel en relationsdatabas med en tabell för lagring av bokinformation: varje rad i tabellen kan representera en viss bok indexerad med ISBN-nummer, medan kolumnerna skulle beteckna motsvarande informationskategori, såsom titel, författare, publiceringsdatum , och så vidare. Nuförtiden finns det mycket mer flexibla datamodeller – breda kolumnlager, objektdatabaser, grafdatabaser, så vidare och så vidare. Men den övergripande idén förblir densamma: dessa databaser är avsedda att lagra data som passar en viss dataform eller datamodell.

Ostrukturerad data, å andra sidan, kan ses som i huvudsak en pseudo-slumpmässig klump av binär data. Den kan representera vad som helst, vara godtyckligt stor eller liten, och kan transformeras och läsas på ett av otaliga olika sätt. Detta gör det omöjligt att passa in i någon datamodell, än mindre en tabell i en relationsdatabas.

Vilka är några exempel på denna typ av data?

Människogenererad data – bilder, video, ljud, naturligt språk, etc – är bra exempel på ostrukturerad data. Men det finns också en mängd mindre vardagliga exempel på ostrukturerad data. Användarprofiler, proteinstrukturer, genomsekvenser och till och med läsbar kod är också bra exempel på ostrukturerad data. Den främsta anledningen till att ostrukturerad data traditionellt har varit så svår att hantera är att ostrukturerad data kan ta vilken form som helst och kan kräva väldigt olika körtider att bearbeta.

Med bilder som exempel kan två foton av samma scen ha väldigt olika pixelvärden, men båda har ett liknande övergripande innehåll. Naturligt språk är ett annat exempel på ostrukturerad data som jag gärna refererar till. Fraserna "Electrical Engineering" och "Computer Science" är extremt nära besläktade - så mycket att EE- och CS-byggnaderna på Stanford ligger intill varandra - men utan ett sätt att koda den semantiska innebörden bakom dessa två fraser, kan en dator tror naivt att "Datavetenskap" och "Samhällsvetenskap" är mer relaterade.

Vad är en vektordatabas?

För att förstå en vektordatabas hjälper det först att förstå vad en inbäddning är. Jag kommer till det ett ögonblick, men den korta versionen är att en inbäddning är en högdimensionell vektor som kan representera semantiken hos ostrukturerad data. I allmänhet kommer två inbäddningar som är nära varandra vad gäller avstånd mycket sannolikt att motsvara semantiskt liknande indata. Med modern ML har vi kraften att koda och omvandla en mängd olika typer av ostrukturerad data – bilder och text, till exempel – till semantiskt kraftfulla inbäddningsvektorer.

Ur en organisations perspektiv blir ostrukturerad data oerhört svår att hantera när mängden växer förbi en viss gräns. Det är här en vektordatabas som t.ex Zilliz moln kommer in. En vektordatabas är specialbyggd för att lagra, indexera och söka över enorma mängder ostrukturerad data genom att utnyttja inbäddningar som den underliggande representationen. Att söka i en vektordatabas görs vanligtvis med frågevektorer, och resultatet av frågan är de N mest lika resultaten baserat på avstånd.

De allra bästa vektordatabaserna har många av användbarhetsfunktionerna hos traditionella relationsdatabaser: horisontell skalning, cachning, replikering, failover och frågekörning är bara några av de många funktioner som en riktig vektordatabas bör implementera. Som kategoridefinierare har vi också varit aktiva i akademiska kretsar, efter att ha publicerat artiklar i SIGMOD 2021 och VLDB 2022, de två bästa databaskonferenserna där ute idag.

Kan du diskutera vad en inbäddning är?

Generellt sett är en inbäddning en högdimensionell vektor som kommer från aktiveringarna av ett mellanskikt i ett flerlagers neuralt nätverk. Många neurala nätverk är tränade för att mata ut inbäddningar själva och vissa applikationer använder sammanlänkade vektorer från flera mellanliggande lager som inbäddning, men jag ska inte gå för djupt in på någon av dem för tillfället. Ett annat mindre vanligt men lika viktigt sätt att skapa inbäddningar är genom handgjorda funktioner. Istället för att låta en ML-modell automatiskt lära sig de rätta representationerna för indata, kan gammal god funktionsteknik också fungera för många applikationer. Oavsett den underliggande metoden, är inbäddningar för semantiskt liknande objekt nära varandra när det gäller avstånd, och det är denna egenskap som driver vektordatabaser.

Vilka är några av de mest populära användningsfallen med den här tekniken?

Vektordatabaser är utmärkta för alla applikationer som kräver någon form av semantisk sökning – produktrekommendationer, videoanalys, dokumentsökning, upptäckt av hot och bedrägerier och AI-drivna chatbots är några av de mest populära användningsfallen för vektordatabaser idag. För att illustrera detta, Milvus, vektordatabasen med öppen källkod skapad av Zilliz och den underliggande kärnan i Zilliz Cloud, har använts av över tusen företagsanvändare i en mängd olika användningsfall.

Jag är alltid glad att chatta om dessa applikationer och hjälpa folk att förstå hur de fungerar, men jag tycker definitivt mycket om att gå igenom några av de mindre kända användningsfallen för vektordatabas också. Nya läkemedelsupptäckter är ett av mina favoritanvändningsfall för vektordatabas med "nisch". Utmaningen för just denna applikation är att söka efter potentiella läkemedelskandidater för att behandla en viss sjukdom eller symtom bland en databas med 800 miljoner föreningar. Ett läkemedelsföretag som vi kommunicerade med kunde avsevärt förbättra läkemedelsupptäcktsprocessen utöver att skära ner på hårdvaruresurserna genom att kombinera Milvus med ett kemiformatikbibliotek som heter RDKit.

Cleveland Museum of Art's (CMA) AI ArtLens är ett annat exempel som jag gärna tar upp. AI ArtLens är ett interaktivt verktyg som tar en frågebild som indata och hämtar visuellt liknande bilder från museets databas. Detta brukar kallas omvänd bildsökning och är ett ganska vanligt användningsfall för vektordatabaser, men det unika värdeförslaget som Milvus gav till CMA var möjligheten att få igång applikationen inom en vecka med ett mycket litet team.

Kan du diskutera vad open source-plattformen Towhee är?

När vi kommunicerade med folk från Milvus-gemenskapen upptäckte vi att många av dem ville ha ett enhetligt sätt att skapa inbäddningar för Milvus. Detta gällde för nästan alla olika organisationer som vi pratade med, men särskilt för företag som inte hade många maskininlärningsingenjörer. Med Towhee strävar vi efter att lösa detta gap via vad vi kallar "vektordata ETL." Medan traditionella ETL-pipelines fokuserar på att kombinera och omvandla strukturerad data från flera källor till ett användbart format, är Towhee tänkt att arbeta med ostrukturerad data och inkluderar uttryckligen ML i den resulterande ETL-pipelinen. Towhee åstadkommer detta genom att tillhandahålla hundratals modeller, algoritmer och transformationer som kan användas som byggstenar i en ETL-pipeline för vektordata. Utöver detta tillhandahåller Towhee också ett lättanvänt Python API som tillåter utvecklare att bygga och testa dessa ETL-pipelines i en enda kodrad.

Även om Towhee är ett eget oberoende projekt, är det också en del av det bredare vektordatabasekosystemet centrerat kring Milvus som Zilliz skapar. Vi föreställer oss att Milvus och Towhee är två mycket kompletterande projekt som, när de används tillsammans, verkligen kan demokratisera ostrukturerad databehandling.

Zilliz nyligen samlade in en serie B-omgång på $60 miljoner. Hur kommer detta att påskynda Zilliz-uppdraget?

Jag vill först och främst tacka Prosperity7 Ventures, Pavilion Capital, Hillhouse Capital, 5Y Capital, Yunqi Capital och andra för att de tror på Zillizs uppdrag och stöttar oss med denna serie B-förlängning. Vi har nu samlat in totalt 113 miljoner USD, och den här senaste finansieringsomgången kommer att stödja våra ansträngningar att skala ut ingenjörs- och go-to-market-team. Framför allt kommer vi att förbättra vårt hanterade molnerbjudande, som för närvarande är i tidig åtkomst men planerat att öppna upp för alla senare i år. Vi kommer också att fortsätta att investera i banbrytande databas- och AI-forskning som vi har gjort under de senaste fyra åren.

Finns det något mer du skulle vilja dela med dig av om Zilliz?

Som företag växer vi snabbt, men det som verkligen skiljer vårt nuvarande team från andra i databasen och ML-utrymmet är vår unika passion för det vi bygger. Vi har ett uppdrag att demokratisera ostrukturerad databehandling, och det är helt fantastiskt att se så många begåvade människor på Zilliz arbeta mot ett unikt mål. Om något av det vi gör låter intressant för dig, gör det gärna kontakta oss. Vi vill gärna ha dig ombord.

Om du vill veta lite mer är jag också personligen öppen för att chatta om Zilliz, vektordatabaser eller inbäddningsrelaterade framsteg inom AI/ML. Min (figurativa) dörr är alltid öppen, så kontakta mig gärna direkt på Twitter/LinkedIn.

Sist men inte minst, tack för att du läste!

Tack för den fina intervjun, läsare som vill veta mer bör besöka Zilliz.

En av grundarna av unite.AI och en medlem av Forbes Technology Council, Antoine är en futurist som brinner för framtiden för AI och robotik.

Han är också grundare av Securities.io, en webbplats som fokuserar på att investera i disruptiv teknik.