Interviews
Frank Liu, driftsdirektør i Zilliz – Intervju-serie

Frank Liu er driftsdirektør i Zilliz, en ledende leverandør af vektor-database og AI-teknologier. De er også ingeniørerne og videnskabsmændene, der skabte LF AI Milvus®, verdens mest populære open-source vektor-database.
Hvad tiltrak dig til maskinlæring?
Min første introduktion til kraften af ML/AI var som bachelorstuderende på Stanford, på trods af at det var lidt uden for mit hovedområde (elektroteknik). Jeg blev tiltrukket af EE som felt, fordi evnen til at destillere komplekse elektriske og fysiske systemer til matematiske approximationer føltes meget kraftfuldt for mig, og statistik og maskinlæring føltes på samme måde. Jeg endte med at tage flere computer vision- og maskinlæringskurser under min kandidatuddannelse, og jeg endte med at skrive min kandidatafhandling om at bruge ML til at score den æstetiske skønhed af billeder. Alt dette ledte til mit første job i Computer Vision & Machine Learning-teamet på Yahoo, hvor jeg havde en hybrid forsknings- og softwareudviklingsrolle. Vi var stadig i den pre-transformatoriske AlexNet & VGG-dage dengang, og at se et helt felt og en industri bevæge sig så hurtigt, fra dataforberedelse til massivt parallelt modeltræning til modelproduktion, har været fantastisk. På mange måder føles det lidt latterligt at bruge udtrykket “dengang” til at referere til noget, der skete mindre end 10 år siden, men sådan er fremgangen i dette felt.
Efter Yahoo fungerede jeg som teknisk direktør i en startup, som jeg var med til at grundlægge, hvor vi udnyttede ML til indendørs lokalisation. Der skulle vi optimere sekventielle modeller til meget små mikrokontrollere – en meget anden, men relateret ingeniørmæssig udfordring i forhold til dagens massive LLM’er og diffusionsmodeller. Vi byggede også hardware, dashboards til visualisering og simple cloud-native applikationer, men AI/ML fungerede altid som en kernekomponent i det arbejde, vi lavede.
Selv om jeg har været i eller tæt på ML i bedre del af 7 eller 8 år nu, har jeg stadig en stor kærlighed til kredsløbsdesign og digital logikdesign. At have en baggrund i elektroteknik er på mange måder utroligt hjælpsomt for meget af det arbejde, jeg er involveret i disse dage. Mange vigtige koncepter i digital design, såsom virtuel hukommelse, grenprædiktions- og samtidig eksekvering i HDL, giver en fuld-stack-vision til mange ML- og distribuerede systemer i dag. Mens jeg forstår tiltrækningskraften af CS, håber jeg at se en genopblomstring i mere traditionelle ingeniørfag – EE, MechE, ChemE osv. – inden for de næste par år.
For læsere, der ikke er bekendt med begrebet, hvad er ustruktureret data?
Ustruktureret data henviser til “kompleks” data, som i virkeligheden er data, der ikke kan gemmes i en foruddefineret format eller passe ind i en eksisterende datamodel. Til sammenligning henviser struktureret data til enhver type data, der har en foruddefineret struktur – numeriske data, streng, tabeller, objekter og nøgle/værdi-lagre er alle eksempler på struktureret data.
For at virkelig forstå, hvad ustruktureret data er, og hvorfor det traditionelt har været svært at bearbejde dette datatyp komputationelt, hjælper det at sammenligne det med struktureret data. I de simpleste termer kan traditionel struktureret data gemmes via en relationel model. Tag for eksempel en relationel database med en tabel til at gemme boginformation: hver række i tabellen kunne repræsentere en bestemt bog indekseret efter ISBN-nummer, mens kolonnerne ville betegne den tilsvarende kategori af information, såsom titel, forfatter, udgivelsesdato osv. I dag er der langt mere fleksible datamodeller – wide-column stores, objekt-databaser, graf-databaser osv. – men den overordnede idé forbliver den samme: disse databaser er designet til at gemme data, der passer ind i en bestemt datamold eller datamodel.
Ustruktureret data, på den anden side, kan betragtes som værende en pseudo-tilfældig blob af binær data. Det kan repræsentere noget som helst, være arbitrært stort eller småt og kan omformes og læses på en af utallige forskellige måder. Dette gør det umuligt at gemme det i en datamodel, endsige en tabel i en relationel database.
Hvad er nogle eksempler på denne type data?
Menneskeskabt data – billeder, video, lyd, naturligt sprog osv. – er gode eksempler på ustruktureret data. Men der er også en række mindre almindelige eksempler på ustruktureret data. Brugerprofiler, proteinstrukturer, genomsekvenser og endda menneskelæseligt kode er også gode eksempler på ustruktureret data. Den primære grund til, at ustruktureret data traditionelt har været så svært at håndtere, er, at ustruktureret data kan tage enhver form og kan kræve væsentligt forskellige køretider til at bearbejde.
Ved at bruge billeder som eksempel kunne to billeder af samme scene have væsentligt forskellige pixelværdier, men begge har en lignende samlet indhold. Naturligt sprog er et andet eksempel på ustruktureret data, som jeg gerne henviser til. Udtrykkene “Elektroteknik” og “Datavidenskab” er ekstremt tæt beslægtede – så meget, at EE- og CS-bygningerne på Stanford er næsten side om side – men uden en måde at kodificere den semantiske betydning bag disse to udtryk på, kan en computer naivt tro, at “Datavidenskab” og “Samfundsvidenskab” er mere beslægtede.
Hvad er en vektor-database?
For at forstå en vektor-database hjælper det at forstå, hvad en indlejring er. Jeg kommer til det om lidt, men den korte version er, at en indlejring er en højdimensional vektor, der kan repræsentere semantikken af ustruktureret data. Generelt set er to indlejringe, der er tæt på hinanden i forhold til afstand, meget sandsynligt at svare til semantisk lignende inputdata. Med moderne ML har vi mulighed for at kodificere og omforme en række forskellige typer ustruktureret data – billeder og tekst for eksempel – til semantisk kraftfulde indlejringvektorer.
Fra en organisations synspunkt bliver ustruktureret data utroligt svært at håndtere, så snart mængden overstiger en bestemt grænse. Her kommer en vektor-database som Zilliz Cloud ind i billedet. En vektor-database er designet til at gemme, indekserer og søge tværs over massive mængder ustruktureret data ved at udnytte indlejringe som den underliggende repræsentation. Søgning tværs over en vektor-database udføres typisk med forespørgselsvektorer, og resultatet af forespørgslen er de top N mest lignende resultater baseret på afstand.
De bedste vektor-databaser har mange af de samme brugervenlighedsfunktioner som traditionelle relationelle databaser: horisontal skalerbarhed, cachelagring, replikering, failover og forespørgselskørsel er blot nogle af de mange funktioner, som en sand vektor-database bør implementere. Som en kategori-definerer har vi været aktive i akademiske kredse og har udgivet papirer i SIGMOD 2021 og VLDB 2022, de to bedste databasekonferencer der findes i dag.
Kunne du diskutere, hvad en indlejring er?
Generelt set er en indlejring en højdimensional vektor, der kommer fra aktiveringen af en mellemlag i et multilag-neuralt netværk. Mange neurale netværk er trænet til at udgive indlejringe selv, og nogle anvendelser bruger konkatenerede vektorer fra multiple mellemLAGer som indlejringen, men jeg kommer ikke til at gå for dybt ind i nogen af disse for nu. En anden mindre almindelig, men lige så vigtig måde at generere indlejringe på er gennem håndlavet funktioner. I stedet for at lade en ML-model automatisk lære de rigtige repræsentationer for inputdata kan god gammel funktionsteknisk arbejde fungere for mange anvendelser. Uanset den underliggende metode er indlejringe for semantisk lignende objekter tæt på hinanden i forhold til afstand, og denne egenskab er, hvad der driver vektor-databaser.
Hvad er nogle af de mest populære anvendelser med denne teknologi?
Vektor-databaser er ideelle til enhver anvendelse, der kræver en form for semantisk søgning – produktanbefalinger, videoanalyse, dokumentsøgning, trusel- og svigagtigelse og AI-drevne chatbots er nogle af de mest populære anvendelser for vektor-databaser i dag. For at illustrere dette har Milvus, den open-source vektor-database skabt af Zilliz og den underliggende kerne i Zilliz Cloud, været brugt af over 1000 virksomhedsbrugere på tværs af en række forskellige anvendelser.
Jeg er altid glad for at tale om disse anvendelser og hjælpe folk med at forstå, hvordan de fungerer, men jeg nyder også at gå over nogle af de mindre kendte vektor-database-anvendelser. Opdagelse af nye lægemidler er en af mine yndlings-“niche”-vektor-database-anvendelser. Udfordringen for denne specifikke anvendelse er at søge efter potentielle kandidat-lægemidler til at behandle en bestemt sygdom eller symptom blandt en database på 800 millioner forbindelser. Et farmaceutisk selskab, som vi kommunikerede med, kunne betydeligt forbedre lægemiddel-opdagelsesprocessen samt reducere hardware-resourcerne ved at kombinere Milvus med en kemioinformatik-bibliotek kaldet RDKit.
Cleveland Museum of Arts (CMA) AI ArtLens er et andet eksempel, jeg gerne henviser til. AI ArtLens er et interaktivt værktøj, der tager et forespørgselsbillede som input og trækker visuelt lignende billeder fra museets database. Dette kaldes normalt for omvendt billedsøgning og er en ret almindelig anvendelse for vektor-databaser, men den unikke værdiposition, som Milvus tilbød CMA, var muligheden for at få applikationen op og kørende inden for en uge med et meget lille team.
Kunne du diskutere, hvad det open-source-platform Towhee er?
Når vi kommunikerer med folk fra Milvus-fællesskabet, fandt vi, at mange af dem ønskede at have en samlet måde at generere indlejringe til Milvus på. Dette var sandt for næsten alle de forskellige organisationer, vi talte med, men især for virksomheder, der ikke havde mange maskinlæringsingeniører. Med Towhee søger vi at løse denne åbning gennem, hvad vi kalder “vektor-data ETL.” Mens traditionelle ETL-pipelines fokuserer på at kombinere og omforme struktureret data fra multiple kilder til en brugbar format, er Towhee designet til at arbejde med ustruktureret data og inkluderer eksplizit ML i den resulterende ETL-pipeline. Towhee opnår dette ved at tilbyde hundredvis af modeller, algoritmer og transformationer, der kan bruges som byggesten i en vektor-data ETL-pipeline. Oven i dette tilbyder Towhee også en letanvendelig Python-API, der giver udviklere mulighed for at bygge og teste disse ETL-pipelines i en enkelt linje kode.
Selv om Towhee er et selvstændigt projekt, er det også en del af den bredere vektor-database-økosystem, der er centreret omkring Milvus, som Zilliz skaber. Vi forestiller os, at Milvus og Towhee skal være to højst komplementære projekter, der, når de bruges sammen, kan virkelig demokratisere ustruktureret data-behandling.
Zilliz har nyligt samlet 60 millioner dollars i serie B-runden. Hvordan vil dette accelerere Zilliz-missionen?
Jeg vil først og fremmest gerne takke Prosperity7 Ventures, Pavilion Capital, Hillhouse Capital, 5Y Capital, Yunqi Capital og andre for at tro på Zilliz-missionen og støtte os med denne serie B-udvidelse. Vi har nu samlet i alt 113 millioner dollars, og denne seneste runde af finansiering vil støtte vores bestræbelser på at skalerer vores ingeniør- og markedsføringshold. Specifikt vil vi forbedre vores managed cloud-tilbud, der i øjeblikket er i tidlig adgang, men planlagt til at åbne op for alle senere i år. Vi vil også fortsætte med at investere i fremme af database- og AI-forskning, som vi har gjort i de sidste 4 år.
Er der noget andet, du gerne vil dele om Zilliz?
Som virksomhed vokser vi hurtigt, men det, der virkelig adskiller vores nuværende hold fra andre i database- og ML-rummet, er vores enestående passion for, hvad vi bygger. Vi er på en mission for at demokratisere ustruktureret data-behandling, og det er absolut fantastisk at se så mange talentfulde mennesker på Zilliz arbejde mod et fælles mål. Hvis noget af det, vi laver, lyder interessant for dig, så føl gerne i kontakt med os. Vi elsker at have dig om bord.
Hvis du gerne vil vide lidt mere, er jeg også personligt åben for at tale om Zilliz, vektor-databaser eller indlejring-relaterede fremskridt i AI/ML. Min (figurative) dør er altid åben, så føl gerne i kontakt med mig direkte på Twitter/LinkedIn.
Til sidst, men ikke mindst, tak for læsningen!
Tak for det gode interview, læsere, der ønsker at lære mere, skal besøge Zilliz.












