Ontwerp van AI kan veranderen met de open-source Apache TVM en een beetje hulp van startup OctoML

0
156

Tiernan Ray

Door Tiernan Ray | 25 november 2021 | Onderwerp: kunstmatige intelligentie

De afgelopen jaren hebben kunstmatige-intelligentieprogramma's geleid tot veranderingen in het ontwerp van computerchips, en nieuwe computers hebben eveneens nieuwe soorten neurale netwerken in AI mogelijk gemaakt. Er is een feedbacklus gaande die krachtig is.

Centraal daarin staat de softwaretechnologie die neurale netwerkprogramma's omzet om op nieuwe hardware te draaien. En in het middelpunt daarvan staat een recent open-sourceproject dat aan kracht wint.

Apache TVM is een compiler die anders werkt dan andere compilers. In plaats van een programma om te zetten in typische chipinstructies voor een CPU of GPU, bestudeert het de “grafiek” van rekenbewerkingen in een neuraal net, in TensorFlow- of Pytorch-vorm, zoals windingen en andere transformaties, en zoekt uit hoe die het beste in kaart kunnen worden gebracht bewerkingen naar hardware op basis van afhankelijkheden tussen de bewerkingen.

In het hart van die operatie zit een twee jaar oude startup, OctoML, die ApacheTVM als een service aanbiedt. Zoals in maart werd onderzocht door George Anadiotis van ZDNet, bevindt OctoML zich op het gebied van MLOps en helpt het om AI te operationaliseren. Het bedrijf gebruikt TVM om bedrijven te helpen hun neurale netwerken te optimaliseren voor een breed scala aan hardware.

Ook: OctoML scoort $ 28 miljoen om op de markt te komen met open source Apache TVM, een de facto standaard voor MLOps

In de nieuwste ontwikkeling in de hardware- en onderzoeksfeedbacklus, kan het optimalisatieproces van TVM al aspecten vormen van hoe AI wordt ontwikkeld.

“Al in onderzoek laten mensen modelkandidaten door ons platform lopen, kijkend naar de prestaties”, zei OctoML-medeoprichter Luis Ceze, die als CEO fungeert, in een interview met ZDNet via Zoom. De gedetailleerde prestatiestatistieken betekenen dat ML-ontwikkelaars “de modellen daadwerkelijk kunnen evalueren en degene kunnen kiezen die de gewenste eigenschappen heeft”.

Vandaag de dag wordt TVM uitsluitend gebruikt voor inferentie, het deel van AI waar een volledig ontwikkeld neuraal netwerk wordt gebruikt om voorspellingen te doen op basis van nieuwe gegevens. Maar later zal TVM uitbreiden naar training, het proces van het ontwikkelen van het neurale netwerk.

“Al in onderzoek laten mensen modelkandidaten door ons platform lopen, kijkend naar de prestaties”, zegt Luis Ceze, mede-oprichter en CEO van startup OctoML, dat de open-source Apache TVM-compiler voor machine learning commercialiseert en er een een clouddienst. Dankzij de gedetailleerde prestatiestatistieken kunnen ML-ontwikkelaars “de modellen daadwerkelijk evalueren en degene kiezen die de gewenste eigenschappen heeft.”

“Training en het zoeken naar architectuur staat op onze routekaart”, zegt Ceze, verwijzend naar het proces van het automatisch ontwerpen van neurale netarchitecturen, door neurale netwerken te laten zoeken naar het optimale netwerkontwerp. “Dat is een natuurlijke uitbreiding van onze land-and-expander-aanpak” op het verkopen van de commerciële dienst van TVM, zei hij.

Zullen ontwikkelaars van neurale netwerken dan TVM gebruiken om te beïnvloeden hoe ze trainen?

“Als ze dat nog niet zijn, vermoed ik dat ze dat wel zullen doen,” zei Ceze. “Iemand die bij ons komt met een trainingsopdracht, wij kunnen het model voor je trainen” rekening houdend met hoe het getrainde model zou presteren op hardware.

Die groeiende rol van TVM en de OctoML-service is een gevolg van het feit dat de technologie een breder platform is dan wat een compiler doorgaans vertegenwoordigt.

“Je kunt TVM en OctoML bij uitbreiding zien als een flexibele, op ML gebaseerde automatiseringslaag voor versnelling die bovenop allerlei verschillende hardware draait waarop machine learning-modellen draaien: GPU's, CPU's, TPU's, versnellers in de cloud”, vertelde Ceze aan ZDNet.

“Elk van deze stukjes hardware, het maakt niet uit welke, heeft zijn eigen manier om code te schrijven en uit te voeren”, zei hij. “Het schrijven van die code en uitzoeken hoe deze hardware vandaag het beste kan worden gebruikt, wordt vandaag de dag met de hand gedaan door de ML-ontwikkelaars en de hardwareleveranciers.”

De compiler en de service vervangen die handmatige afstemming – vandaag op het inferentieniveau, met het model klaar voor gebruik, morgen misschien, in de daadwerkelijke ontwikkeling/training.

Ook: AI verandert de hele aard van computers

De kern van de aantrekkingskracht van TVM zijn betere prestaties in termen van doorvoer en latentie, en efficiëntie in termen van stroomverbruik van de computer. Dat wordt steeds belangrijker voor neurale netwerken die steeds groter en uitdagender worden om te rennen.

“Sommige van deze modellen gebruiken een waanzinnige hoeveelheid rekenkracht”, merkte Ceze op, vooral natuurlijke taalverwerkingsmodellen zoals OpenAI's GPT-3, die schaalbaar zijn tot een biljoen neurale gewichten, of parameters, en meer.

Naarmate dergelijke modellen opschalen, komen ze met “extreme kosten”, zei hij, “niet alleen in de trainingstijd, maar ook in de diensttijd” voor gevolgtrekking. “Dat is het geval voor alle moderne machine learning-modellen.”

Als gevolg daarvan, zonder de modellen “met een orde van grootte” te optimaliseren, zijn de meest gecompliceerde modellen niet echt levensvatbaar in productie, ze blijven slechts onderzoekscuriositeiten.

Maar het uitvoeren van optimalisatie met TVM brengt zijn eigen complexiteit met zich mee. “Het is een hoop werk om resultaten te krijgen zoals ze moeten zijn”, merkte Ceze op.

OctoML vereenvoudigt dingen door TVM meer een kwestie van een druk op de knop te maken.

“Het is een optimalisatieplatform”, zo typeert Ceze de clouddienst.

“Vanuit het oogpunt van de eindgebruiker uploaden ze het model, vergelijken ze de modellen en optimaliseren ze de waarden op een groot aantal hardwaredoelen”, zo beschreef Ceze de service.

“Het belangrijkste is dat dit automatisch gaat – geen zweet en tranen van low-level engineers die code schrijven”, zegt Ceze.

OctoML doet het ontwikkelingswerk om ervoor te zorgen dat de modellen kunnen worden geoptimaliseerd voor een toenemende constellatie van hardware.

“De sleutel hier is om het beste uit elk stuk hardware te halen.” Dat betekent “de machinecode specialiseren naar de specifieke parameters van dat specifieke machine learning-model op een specifiek hardwaredoel”. Zoiets als een individuele convolutie in een typisch convolutioneel neuraal netwerk kan worden geoptimaliseerd om te passen bij een bepaald hardwareblok van een bepaalde hardwareversneller.

De resultaten zijn aantoonbaar. In benchmarktests die in september werden gepubliceerd voor de MLPerf-testsuite voor neurale netwerkinferentie, behaalde OctoML een topscore voor inferentieprestaties voor het eerbiedwaardige ResNet-beeldherkenningsalgoritme in termen van verwerkte beelden per seconde.

De OctoML-service bevindt zich sinds december vorig jaar in een pre-release, vroege toegang.

Om zijn platformstrategie vooruit te helpen, kondigde OctoML eerder deze maand aan dat het $ 85 miljoen had ontvangen in een Series C-financieringsronde van hedgefonds Tiger Global Management, samen met bestaande investeerders Addition, Madrona Venture Group en Amplify Partners. De financieringsronde brengt de totale financiering van OctoML op $132 miljoen.

De financiering maakt deel uit van OctoML's inspanning om de invloed van Apache TVM naar steeds meer AI-hardware te verspreiden. Ook deze maand kondigde OctoML een samenwerking aan met ARM Ltd., het Britse bedrijf dat momenteel wordt gekocht door AI-chip-krachtpatser Nvidia. Dat volgt op eerder aangekondigde samenwerkingen met Advanced Micro Devices en Qualcomm. Nvidia werkt ook met OctoML.

Het ARM-partnerschap zal naar verwachting het gebruik van OctoML's service uitbreiden naar de licentiehouders van de ARM CPU-kern, die mobiele telefoons, netwerken en het internet der dingen domineert.

De feedbacklus zal waarschijnlijk leiden tot andere veranderingen naast het ontwerp van neurale netwerken. Het kan een bredere invloed hebben op de manier waarop ML commercieel wordt ingezet, wat tenslotte het hele punt is van MLOps.

Naarmate optimalisatie via TVM zich verspreidt, zou de technologie de portabiliteit in ML-serving drastisch kunnen vergroten, voorspelt Ceze.

Omdat de cloud allerlei compromissen biedt met allerlei soorten hardware-aanbiedingen, betekent het kunnen optimaliseren voor verschillende hardwaredoelen uiteindelijk dat je behendiger van het ene naar het andere doel kunt gaan.

“In wezen is het nuttig om meer prestaties uit een hardwaredoel in de cloud te halen, omdat het meer doelflexibiliteit biedt”, zo beschreef Ceze het. “In staat zijn om automatisch te optimaliseren geeft draagbaarheid, en draagbaarheid geeft keuze.”

Dat omvat het draaien op alle beschikbare hardware in een cloudconfiguratie, maar ook het kiezen van hardware die goedkoper is voor dezelfde SLA's, zoals latentie, doorvoer en kosten in dollars.

Met twee machines met gelijke latentie op ResNet, bijvoorbeeld, “haalt u altijd de hoogste doorvoer per dollar”, de machine die zuiniger is. “Zolang ik de SLA's haal, wil ik het zo goedkoop mogelijk draaien.”

Cloudprioriteiten | Digitale transformatie | CXO | Internet der dingen | Innovatie | Bedrijfssoftware