Design av AI kan förändras med Apache TVM med öppen källkod och lite hjälp från uppstarten OctoML

0
141

Tiernan Ray

Av Tiernan Ray | 25 november 2021 | Ämne: Artificiell intelligens

Under de senaste åren har artificiell intelligensprogram lett till förändringar i designen av datorchips, och nya datorer har också möjliggjort nya typer av neurala nätverk inom AI. Det pågår en återkopplingsslinga som är kraftfull.

I centrum av det sitter mjukvarutekniken som konverterar neurala nätprogram till att köras på ny hårdvara. Och i centrum av det sitter ett nyligen öppet projekt med öppen källkod som tar fart.

Apache TVM är en kompilator som fungerar annorlunda än andra kompilatorer. Istället för att förvandla ett program till typiska chipinstruktioner för en CPU eller GPU, studerar den “grafen” för beräkningsoperationer i ett neuralt nät, i TensorFlow- eller Pytorch-form, såsom faltningar och andra transformationer, och tar reda på hur man bäst kartlägger dessa operationer till hårdvara baserat på beroenden mellan operationerna.

I hjärtat av den verksamheten sitter en två år gammal startup, OctoML, som erbjuder ApacheTVM som en tjänst. Som undersökt i mars av ZDNets George Anadiotis, är OctoML inom området MLOps, vilket hjälper till att operationalisera AI. Företaget använder TVM för att hjälpa företag att optimera sina neurala nät för en mängd olika hårdvara.

Även: OctoML får 28 miljoner USD för att gå ut på marknaden med Apache TVM med öppen källkod, en de facto-standard för MLOps

I den senaste utvecklingen inom hårdvaru- och forskningsfeedbacksslingan kan TVM:s optimeringsprocess redan forma aspekter av hur AI utvecklas.

“Redan i forskningen kör folk modellkandidater genom vår plattform och tittar på prestandan”, sa OctoMLs grundare Luis Ceze, som fungerar som VD, i en intervju med ZDNet via Zoom. De detaljerade prestandamåtten innebär att ML-utvecklare kan “faktiskt utvärdera modellerna och välja den som har de önskade egenskaperna.”

Idag används TVM uteslutande för slutledning, den del av AI där ett fullt utvecklat neuralt nätverk används för att göra förutsägelser baserade på ny data. Men på vägen kommer TVM att expandera till träning, processen att först utveckla det neurala nätverket.

“Redan i forskningen kör människor modellkandidater genom vår plattform och tittar på prestandan”, säger Luis Ceze, medgrundare och VD för startup OctoML, som kommersialiserar Apache TVM-kompilatorn med öppen källkod för maskininlärning och förvandlar den till en molntjänst. De detaljerade prestandamåtten innebär att ML-utvecklare kan “faktiskt utvärdera modellerna och välja den som har de önskade egenskaperna.”

“Utbildning och arkitektursökning finns i vår färdplan”, sa Ceze och syftade på processen att designa neurala nätarkitekturer automatiskt, genom att låta neurala nät söka efter den optimala nätverksdesignen. “Det är en naturlig förlängning av vårt land-och-expandera tillvägagångssätt” för att sälja TVM:s kommersiella tjänst, sa han.

Kommer utvecklare av neurala nät att använda TVM för att påverka hur de tränar?

“Om de inte är det än, misstänker jag att de kommer att börja göra det”, sa Ceze. “Någon som kommer till oss med ett träningsjobb, vi kan träna modellen åt dig” samtidigt som man tar hänsyn till hur den utbildade modellen skulle prestera på hårdvara.

Den växande rollen för TVM, och OctoML-tjänsten, är en konsekvens av det faktum att tekniken är en bredare plattform än vad en kompilator vanligtvis representerar.

“Du kan tänka på TVM och OctoML i förlängning som ett flexibelt, ML-baserat automatiseringslager för acceleration som körs ovanpå alla möjliga olika hårdvaror där maskininlärningsmodeller körs – GPU:er, processorer, TPU:er, acceleratorer i molnet, säger Ceze till ZDNet.

“Var och en av dessa delar av hårdvara, det spelar ingen roll vilken, har sitt eget sätt att skriva och exekvera kod,” sa han. “Att skriva den koden och ta reda på hur man bäst använder den här hårdvaran idag görs för hand mellan ML-utvecklarna och hårdvaruleverantörerna.”

Kompilatorn och tjänsten ersätter den handjusteringen – idag på slutledningsnivån, med modellen redo för driftsättning, i morgon, kanske, i själva utvecklingen/utbildningen.

Också: AI förändrar hela datorns natur

Kärnan i TVM:s överklagande är bättre prestanda när det gäller genomströmning och latens, och effektivitet när det gäller datorns strömförbrukning. Det blir allt viktigare för neurala nät som hela tiden blir större och mer utmanande att springa.

“Vissa av dessa modeller använder en galen mängd beräkningar”, observerade Ceze, särskilt modeller för bearbetning av naturligt språk som OpenAI:s GPT-3 som skalas till en biljon neurala vikter, eller parametrar, och mer.

Eftersom sådana modeller skalas upp kommer de med “extrem kostnad”, sa han, “inte bara under träningstiden, utan även serveringstiden” för slutsatser. “Så är fallet för alla moderna maskininlärningsmodeller.”

Som en konsekvens, utan att optimera modellerna “med en storleksordning”, sa Ceze, är de mest komplicerade modellerna inte riktigt lönsamma i produktion, de förblir bara forskningskuriosa.

Men att utföra optimering med TVM innebär sin egen komplexitet. “Det är massor av arbete att få resultat som de behöver vara,” observerade Ceze.

OctoML förenklar saker och ting genom att göra TVM mer av en tryckknappsaffär.

“Det är en optimeringsplattform”, är hur Ceze karakteriserar molntjänsten.

“Från slutanvändarens synvinkel laddar de upp modellen, de jämför modellerna och optimerar värdena på en stor uppsättning hårdvarumål”, är hur Ceze beskrev tjänsten.

“Nyckeln är att det här är automatiskt – ingen svett och tårar från lågnivåingenjörer som skriver kod”, sa Ceze.

OctoML gör utvecklingsarbetet för att se till att modellerna kan optimeras för en ökande konstellation av hårdvara.

“Nyckeln här är att få ut det bästa av varje hårdvara.” Det betyder att “specialisera maskinkoden till de specifika parametrarna för den specifika maskininlärningsmodellen på ett specifikt hårdvarumål.” Något som liknar en individuell faltning i ett typiskt faltningsneuralt nätverk kan bli optimerat för att passa ett visst hårdvarublock i en viss hårdvaruaccelerator.

Resultaten är påvisbara. I benchmark-tester som publicerades i september för MLPerf-testsviten för neural nätinferens, hade OctoML ett toppbetyg för slutledningsprestanda för den ärevördiga ResNet-bildigenkänningsalgoritmen när det gäller bilder bearbetade per sekund.

OctoML-tjänsten har varit i pre-release, tidig åtkomsttillstånd sedan december förra året.

För att främja sin plattformsstrategi meddelade OctoML tidigare denna månad att de hade fått 85 miljoner dollar i en serie C-runda av finansiering från hedgefonden Tiger Global Management, tillsammans med befintliga investerare Addition, Madrona Venture Group och Amplify Partners. Finansieringsrundan bringar OctoML:s totala finansiering till 132 miljoner dollar.

Finansieringen är en del av OctoML:s försök att sprida inflytandet från Apache TVM till mer och mer AI-hårdvara. Även denna månad tillkännagav OctoML ett partnerskap med ARM Ltd., det brittiska företaget som håller på att köpas av AI-chipkraftverket Nvidia. Det följer på tidigare annonserade partnerskap med Advanced Micro Devices och Qualcomm. Nvidia arbetar också med OctoML.

ARM-partnerskapet förväntas sprida användningen av OctoML:s tjänst till licenstagarna av ARM CPU-kärnan, som dominerar mobiltelefoner, nätverk och Internet of Things.

Återkopplingsslingan kommer troligen att leda till andra förändringar utöver utformningen av neurala nät. Det kan påverka mer allmänt hur ML är kommersiellt utplacerat, vilket trots allt är hela poängen med MLOps.

Eftersom optimering via TVM sprider sig kan tekniken dramatiskt öka portabiliteten i ML-servering, förutspår Ceze.

Eftersom molnet erbjuder alla typer av kompromisser med alla typer av hårdvaruerbjudanden, innebär det att kunna optimera i farten för olika hårdvarumål i slutändan att kunna röra sig smidigare från ett mål till ett annat.

“I grund och botten är det användbart att kunna pressa ut mer prestanda ur alla hårdvarumål i molnet eftersom det ger mer målflexibilitet”, är hur Ceze beskrev det. “Att kunna optimera automatiskt ger portabilitet, och portabilitet ger val.”

Det inkluderar att köra på all tillgänglig hårdvara i en molnkonfiguration, men också att välja den hårdvara som råkar vara billigare för samma SLA, såsom latens, genomströmning och kostnad i dollar.

Med två maskiner som har samma latens på ResNet, till exempel, “tar du alltid den högsta genomströmningen per dollar”, den maskin som är mer ekonomisk. “Så länge jag träffar SLA vill jag köra det så billigt som möjligt.”

Molnprioriteter | Digital transformation | CXO | Internet of Things | Innovation | Företagsprogramvara