En av de mest populære modellene tilgjengelig i dag er XGBoost. Med muligheten til å løse ulike problemer som klassifisering og regresjon, har XGBoost blitt et populært alternativ som også faller inn i kategorien trebaserte modeller. I dette innlegget dykker vi dypt for å se hvordan Amazon SageMaker kan betjene disse modellene ved hjelp av NVIDIA Triton Inference Server. Arbeidsbelastninger i sanntid kan ha varierende nivåer av krav og servicenivåavtaler (SLAer) når det gjelder ventetid og gjennomstrømning, og kan møtes ved å bruke SageMaker sanntidsendepunkter.
SageMaker gir enkeltmodellendepunkter, som lar deg distribuere en enkelt maskinlæringsmodell (ML) mot et logisk endepunkt. For andre brukstilfeller kan du velge å administrere kostnader og ytelse ved å bruke flermodell-endepunkter, som lar deg spesifisere flere modeller som skal være vert bak et logisk endepunkt. Uansett hvilket alternativ du velger, tillater SageMaker-endepunkter en skalerbar mekanisme for selv de mest krevende bedriftskunder samtidig som de gir verdi i en mengde funksjoner, inkludert skyggevarianter, automatisk skalering, og innfødt integrasjon med Amazon CloudWatch (for mer informasjon, se CloudWatch Metrics for Multi-Model Endpoint Deployment).
Triton støtter forskjellige backends som motorer for å støtte kjøring og servering av forskjellige ML-modeller for slutninger. For enhver Triton-distribusjon er det avgjørende å vite hvordan backend-atferden påvirker arbeidsbelastningene dine og hva du kan forvente, slik at du kan lykkes. I dette innlegget hjelper vi deg å forstå Forest Inference Library (FIL) backend, som støttes av Triton på SageMaker, slik at du kan ta en informert beslutning for arbeidsmengdene dine og få best mulig ytelse og kostnadsoptimalisering.
Dypdykk inn i FIL-backend
Triton støtter FIL-backend å servere tremodeller, som f.eks Xgboost, LightGBM, scikit lære Tilfeldig skog, RAPIDS cuML Random Forest, og alle andre modeller som støttes av Treelitt. Disse modellene har lenge vært brukt for å løse problemer som klassifisering eller regresjon. Selv om disse modellene tradisjonelt har kjørt på CPUer, har populariteten til disse modellene og slutningskravene ført til ulike teknikker for å øke slutningsytelsen. FIL-backend bruker mange av disse teknikkene ved å bruke cuML-konstruksjoner og er bygget på C++ og CUDA-kjernebiblioteket for å optimalisere slutningsytelsen på GPU-akseleratorer.
FIL-backend bruker cuMLs biblioteker for å bruke CPU- eller GPU-kjerner for å akselerere læring. For å bruke disse prosessorene blir data referert fra vertsminne (for eksempel NumPy-matriser) eller GPU-matriser (uDF, Numba, cuPY eller et hvilket som helst bibliotek som støtter __cuda_array_interface__
) API. Etter at dataene er iscenesatt i minnet, kan FIL-backend kjøre prosessering på tvers av alle tilgjengelige CPU- eller GPU-kjerner.
FIL-backend-trådene kan kommunisere med hverandre uten å bruke delt minne til verten, men i ensemblearbeidsbelastninger bør vertsminne vurderes. Følgende diagram viser en kjøretidsarkitektur for ensembleplanlegger der du har muligheten til å finjustere minneområdene, inkludert CPU-adresserbart delt minne som brukes til kommunikasjon mellom Triton (C++) og Python-prosessen (Python-backend) for utveksling tensorer (input/output) med FIL-backend.
Triton Inference Server gir konfigurerbare alternativer for utviklere for å justere arbeidsbelastningen og optimalisere modellytelsen. Konfigurasjonen dynamic_batching
lar Triton holde forespørsler på klientsiden og gruppere dem på serversiden for å effektivt bruke FILs parallelle beregning for å konkludere hele batchen sammen. Valget max_queue_delay_microseconds
tilbyr en feilsikker kontroll over hvor lenge Triton venter med å danne en batch.
Det finnes en rekke andre FIL-spesifikke tilgjengelige alternativer som påvirker ytelse og atferd. Vi foreslår å begynne med storage_type
. Når du kjører backend på GPU, oppretter FIL en ny minne-/datastruktur som er en representasjon av treet som FIL kan påvirke ytelse og fotavtrykk for. Dette kan konfigureres via miljøparameteren storage_type
, som har alternativene tett, sparsom og auto. Å velge det tette alternativet vil forbruke mer GPU-minne og resulterer ikke alltid i bedre ytelse, så det er best å sjekke. I kontrast vil det sparsomme alternativet forbruke mindre GPU-minne og kan muligens yte like bra eller bedre enn tett. Å velge auto vil føre til at modellen som standard blir tett med mindre dette vil forbruke betydelig mer GPU-minne enn sparsomt.
Når det gjelder modellytelse, kan du vurdere å legge vekt på threads_per_tree
alternativ. En ting du kanskje overserver i virkelige scenarier er det threads_per_tree
kan ha større innvirkning på gjennomstrømmingen enn noen annen parameter. Å sette den til en hvilken som helst potens av 2 fra 1–32 er legitim. Den optimale verdien er vanskelig å forutsi for denne parameteren, men når serveren forventes å håndtere høyere belastning eller behandle større batchstørrelser, har den en tendens til å dra nytte av en større verdi enn når den behandler noen få rader om gangen.
En annen parameter å være klar over er algo
, som også er tilgjengelig hvis du kjører på GPU. Denne parameteren bestemmer algoritmen som brukes til å behandle slutningsforespørslene. Alternativene som støttes for dette er ALGO_AUTO
, NAIVE
, TREE_REORG
og BATCH_TREE_REORG
. Disse alternativene bestemmer hvordan noder i et tre er organisert og kan også resultere i ytelsesgevinster. De ALGO_AUTO
alternativet er standard til NAIVE
for sparsom lagring og BATCH_TREE_REORG
for tett lagring.
Til slutt kommer FIL med Shapley-forklaring, som kan aktiveres ved å bruke treeshap_output
parameter. Du bør imidlertid huske på at Shapley-utganger skader ytelsen på grunn av utdatastørrelsen.
Modellformat
Det er for øyeblikket ikke noe standard filformat for å lagre skogbaserte modeller; hvert rammeverk har en tendens til å definere sitt eget format. For å støtte flere inndatafilformater, importerer FIL data ved å bruke åpen kildekode Treelitt bibliotek. Dette gjør at FIL kan støtte modeller som er trent i populære rammeverk, som f.eks Xgboost og LightGBM. Merk at formatet til modellen du oppgir, må angis i model_type
konfigurasjonsverdi spesifisert i config.pbtxt
filen.
Config.pbtxt
Hver modell i en modelllager må inkludere en modellkonfigurasjon som gir nødvendig og valgfri informasjon om modellen. Vanligvis er denne konfigurasjonen gitt i en config.pbtxt
fil spesifisert som ModelConfig protobuf. For å lære mer om konfigurasjonsinnstillingene, se Modellkonfigurasjon. Følgende er noen av modellkonfigurasjonsparametrene:
- max_batch_size – Dette bestemmer den maksimale batchstørrelsen som kan overføres til denne modellen. Generelt sett er den eneste begrensningen på størrelsen på batcher som sendes til en FIL-backend tilgjengelig minne for å behandle dem. For GPU-kjøringer bestemmes tilgjengelig minne av størrelsen på Tritons CUDA-minnepool, som kan settes via et kommandolinjeargument når serveren startes.
- inngang – Alternativer i denne delen forteller Triton hvor mange funksjoner du kan forvente for hver inngangsprøve.
- produksjon – Alternativer i denne delen forteller Triton hvor mange utgangsverdier det vil være for hver prøve. Hvis
predict_proba
alternativet er satt til sant, vil en sannsynlighetsverdi returneres for hver klasse. Ellers vil en enkelt verdi bli returnert, som indikerer klassen forutsagt for den gitte prøven. - forekomstgruppe – Dette bestemmer hvor mange forekomster av denne modellen som skal opprettes og om de skal bruke GPU eller CPU.
- modell_type – Denne strengen indikerer hvilket format modellen er i (
xgboost_json
i dette eksemplet, menxgboost
,lightgbm
ogtl_checkpoint
er også gyldige formater). - forutsi_proba – Hvis satt til sann, vil sannsynlighetsverdier bli returnert for hver klasse i stedet for bare en klasseprediksjon.
- output_class – Dette er satt til sant for klassifikasjonsmodeller og usant for regresjonsmodeller.
- terskel – Dette er en poenggrense for å bestemme klassifisering. Når
output_class
er satt til sann, må dette oppgis, selv om det ikke vil bli brukt hvispredict_proba
er også satt til sann. - lagringstype – Generelt sett bør bruk av AUTO for denne innstillingen oppfylle de fleste brukstilfeller. Hvis AUTO-lagring er valgt, vil FIL laste modellen ved å bruke enten en sparsom eller tett representasjon basert på den omtrentlige størrelsen på modellen. I noen tilfeller vil du kanskje eksplisitt sette dette til SPARSE for å redusere minneavtrykket til store modeller.
Triton Inference Server på SageMaker
SageMaker tillater du kan distribuere både enkeltmodell- og multimodellendepunkter med NVIDIA Triton Inference Server. Følgende figur viser Triton Inference Server høynivåarkitektur. De modelllager er et filsystembasert depot av modellene som Triton vil gjøre tilgjengelig for slutning. Konklusjonsforespørsler ankommer serveren og rutes til den aktuelle planleggeren per modell. Triton redskaper flere planleggings- og batchalgoritmer som kan konfigureres på en modell-for-modell basis. Hver modells planlegger utfører valgfritt batching av slutningsforespørsler og sender deretter forespørslene til backend tilsvarende modelltypen. Backend utfører inferencing ved å bruke inngangene som er gitt i batchforespørslene for å produsere de forespurte utgangene. Utgangene returneres deretter.
Når du konfigurerer dine automatiske skaleringsgrupper for SageMaker-endepunkter, kan det være lurt å vurdere SageMakerVariantInvocationsPerInstance
som det primære kriteriet for å bestemme skaleringsegenskapene til din automatiske skaleringsgruppe. I tillegg, avhengig av om modellene dine kjører på GPU eller CPU, kan du også vurdere å bruke CPUUtilization eller GPUUtilization som tilleggskriterier. Merk at for endepunkter for enkeltmodeller, fordi modellene som er distribuert alle er de samme, er det ganske enkelt å sette riktige retningslinjer for å oppfylle SLAene dine. For endepunkter med flere modeller anbefaler vi å distribuere lignende modeller bak et gitt endepunkt for å ha mer stabil forutsigbar ytelse. I brukstilfeller der modeller av varierende størrelser og krav brukes, kan det være lurt å skille disse arbeidsbelastningene på tvers av flere endepunkter for flere modeller eller bruke litt tid på å finjustere gruppepolicyen for automatisk skalering for å oppnå den beste kostnads- og ytelsesbalansen.
For en liste over NVIDIA Triton Deep Learning Containers (DLC) som støttes av SageMaker inference, se Tilgjengelige bilder av Deep Learning Containers.
SageMaker notatbok gjennomgang
ML-applikasjoner er komplekse og kan ofte kreve dataforbehandling. I denne notatboken dykker vi inn i hvordan du distribuerer en trebasert ML-modell som XGBoost ved å bruke FIL-backend i Triton på et SageMaker multi-modell endepunkt. Vi dekker også hvordan du implementerer en Python-basert dataforbehandlings-inferenspipeline for modellen din ved å bruke ensemblefunksjonen i Triton. Dette vil tillate oss å sende inn rådata fra klientsiden og få både dataforbehandling og modellslutning til å skje i et Triton SageMaker-endepunkt for optimal slutningsytelse.
Triton modell ensemble funksjon
Triton Inference Server forenkler distribusjonen av AI-modeller i stor skala i produksjon. Triton Inference Server kommer med en praktisk løsning som forenkler bygging av for- og etterbehandlingsrørledninger. Triton Inference Server-plattformen gir ensembleplanleggeren, som er ansvarlig for pipelining av modeller som deltar i inferensprosessen, samtidig som den sikrer effektivitet og optimaliserer gjennomstrømming. Ved å bruke ensemblemodeller kan du unngå overhead med å overføre mellomtensorer og minimere antallet forespørsler som må sendes til Triton.
I denne notatboken viser vi hvordan du bruker ensemblefunksjonen for å bygge en pipeline av dataforbehandling med XGBoost-modellslutning, og du kan ekstrapolere fra den for å legge til tilpasset etterbehandling til pipelinen.
Sett opp miljøet
Vi begynner med å sette opp det nødvendige miljøet. Vi installerer avhengighetene som kreves for å pakke vår modellpipeline og kjøre slutninger ved hjelp av Triton Inference Server. Vi definerer også AWS identitets- og tilgangsadministrasjon (IAM) rolle som vil gi SageMaker tilgang til modellartefakter og NVIDIA Triton Amazon Elastic Container Registry (Amazon ECR) bilde. Se følgende kode:
Lag et Conda-miljø for forbehandlingsavhengigheter
Python-backend i Triton krever at vi bruker en conda miljø for eventuelle ytterligere avhengigheter. I dette tilfellet bruker vi Python-backend til å forhåndsbehandle rådataene før de mates inn i XGBoost-modellen som kjører i FIL-backend. Selv om vi opprinnelig brukte RAPIDS cuDF og cuML for å gjøre dataforbehandlingen, bruker vi her Pandas og scikit-learn som forbehandlingsavhengigheter under inferens. Vi gjør dette av tre grunner:
- Vi viser hvordan du lager et Conda-miljø for dine avhengigheter og hvordan du pakker det inn i forventet format av Tritons Python-backend.
- Ved å vise forbehandlingsmodellen som kjører i Python-backend på CPU-en mens XGBoost kjører på GPU i FIL-backend, illustrerer vi hvordan hver modell i Tritons ensemble-pipeline kan kjøre på en annen ramme-backend samt forskjellige maskinvarekonfigurasjoner.
- Den fremhever hvordan RAPIDS-bibliotekene (cuDF, cuML) er kompatible med sine CPU-motstykker (Pandas, scikit-learn). Vi kan for eksempel vise hvordan
LabelEncoders
opprettet i cuML kan brukes i scikit-learn og omvendt.
Vi følger instruksjonene fra Triton dokumentasjon for pakkeforbehandlingsavhengigheter (scikit-learn og Pandas) som skal brukes i Python-backend som en Conda-miljø TAR-fil. Bash-manuset create_prep_env.sh oppretter Conda-miljøets TAR-fil, så flytter vi den inn i forbehandlingsmodellkatalogen. Se følgende kode:
Etter at vi har kjørt det foregående skriptet, genereres det preprocessing_env.tar.gz
, som vi kopierer til forbehandlingskatalogen:
Sett opp forbehandling med Triton Python-backend
Til forbehandling bruker vi Tritons Python-backend å utføre tabelldataforbehandling (kategorisk koding) under inferens for rådataforespørsler som kommer inn på serveren. For mer informasjon om forbehandlingen som ble utført under trening, se treningsnotisbok.
Python-backend muliggjør forbehandling, etterbehandling og annen tilpasset logikk som kan implementeres i Python og serveres med Triton. Å bruke Triton på SageMaker krever at vi først setter opp en modelllagermappe som inneholder modellene vi ønsker å betjene. Vi har allerede satt opp en modell for Python-dataforbehandling kalt preprocessing in cpu_model_repository
og gpu_model_repository
.
Triton har spesifikke krav til modelllageroppsett. Innenfor modelllagerkatalogen på toppnivå har hver modell sin egen underkatalog som inneholder informasjonen for den tilsvarende modellen. Hver modellkatalog i Triton må ha minst én numerisk underkatalog som representerer en versjon av modellen. Verdien 1 representerer versjon 1 av vår Python-forbehandlingsmodell. Hver modell kjøres av en spesifikk backend, så innenfor hver versjonsunderkatalog må det være modellartefakten som kreves av den backend. For dette eksemplet bruker vi Python-backend, som krever at Python-filen du serverer, heter model.py, og filen må implementeres visse funksjoner. Hvis vi brukte en PyTorch-backend, ville en model.pt-fil være nødvendig, og så videre. For mer informasjon om navnekonvensjoner for modellfiler, se Modellfiler.
De modell.py Python-filen vi bruker her implementerer all den tabellformede dataforbehandlingslogikken for å konvertere rådata til funksjoner som kan mates inn i vår XGBoost-modell.
Hver Triton-modell må også gi en config.pbtxt
fil som beskriver modellkonfigurasjonen. For å lære mer om konfigurasjonsinnstillingene, se Modellkonfigurasjon. Vår config.pbtxt filen spesifiserer backend som python og alle inngangskolonnene for rådata sammen med forhåndsbehandlet utdata, som består av 15 funksjoner. Vi spesifiserer også at vi ønsker å kjøre denne Python-forbehandlingsmodellen på CPU. Se følgende kode:
Sett opp en trebasert ML-modell for FIL-backend
Deretter satte vi opp modellkatalogen for en trebasert ML-modell som XGBoost, som vil bruke FIL-backend.
Det forventede oppsettet for cpu_memory_repository
og gpu_memory_repository
ligner på den vi viste tidligere.
Her FIL
er navnet på modellen. Vi kan gi den et annet navn som xgboost
hvis vi vil. 1
er versjonens underkatalog, som inneholder modellartefakten. I dette tilfellet er det xgboost.json
modell som vi lagret. La oss lage dette forventede oppsettet:
Vi må ha konfigurasjonsfilen config.pbtxt
som beskriver modellkonfigurasjonen for den trebaserte ML-modellen, slik at FIL-backend i Triton kan forstå hvordan den skal betjenes. For mer informasjon, se siste generiske Triton-konfigurasjonsalternativer og konfigurasjonsalternativene som er spesifikke for FIL-backend. Vi fokuserer på bare noen av de vanligste og mest relevante alternativene i dette eksemplet.
Opprett config.pbtxt
forum model_cpu_repository
:
På samme måte sett opp config.pbtxt
forum model_gpu_repository
(merk at forskjellen er USE_GPU = True
):
Sett opp en slutningspipeline for dataforbehandlingen Python-backend og FIL-backend ved å bruke ensembler
Nå er vi klare til å sette opp inferenspipeline for dataforbehandling og trebasert modellslutning ved å bruke en ensemble modell. En ensemblemodell representerer en rørledning av én eller flere modeller og koblingen av inngangs- og utgangstensorer mellom disse modellene. Her bruker vi ensemblemodellen til å bygge en pipeline av dataforbehandling i Python-backend etterfulgt av XGBoost i FIL-backend.
Den forventede layouten for ensemble
modellkatalogen ligner på de vi viste tidligere:
Vi laget ensemblemodellene config.pbtxt følge veiledningen i Ensemble modeller. Viktigere, vi må sette opp ensembleplanleggeren i config.pbtxt
, som spesifiserer dataflyten mellom modellene i ensemblet. Ensembleplanleggeren samler utgangstensorene i hvert trinn, og gir dem som inngangstensorer for andre trinn i henhold til spesifikasjonen.
Pakk modelllageret og last opp til Amazon S3
Til slutt ender vi opp med følgende modelllagerkatalogstruktur, som inneholder en Python-forbehandlingsmodell og dens avhengigheter sammen med XGBoost FIL-modellen og modellensemblet.
Vi pakker katalogen og dens innhold som model.tar.gz
for opplasting til Amazon enkel lagringstjeneste (Amazon S3). Vi har to alternativer i dette eksemplet: å bruke en CPU-basert instans eller en GPU-basert instans. En GPU-basert instans er mer egnet når du trenger høyere prosessorkraft og ønsker å bruke CUDA-kjerner.
Opprett og last opp modellpakken for en CPU-basert forekomst (optimalisert for CPU) med følgende kode:
Opprett og last opp modellpakken for en GPU-basert forekomst (optimalisert for GPU) med følgende kode:
Opprett et SageMaker-endepunkt
Vi har nå modellartefaktene lagret i en S3-bøtte. I dette trinnet kan vi også gi den ekstra miljøvariabelen SAGEMAKER_TRITON_DEFAULT_MODEL_NAME
, som spesifiserer navnet på modellen som skal lastes av Triton. Verdien av denne nøkkelen skal samsvare med mappenavnet i modellpakken lastet opp til Amazon S3. Denne variabelen er valgfri for en enkelt modell. Når det gjelder ensemblemodeller, må denne nøkkelen spesifiseres for at Triton skal starte opp i SageMaker.
I tillegg kan du stille inn SAGEMAKER_TRITON_BUFFER_MANAGER_THREAD_COUNT
og SAGEMAKER_TRITON_THREAD_COUNT
for å optimalisere trådantallet.
Vi bruker den foregående modellen til å lage en endepunktkonfigurasjon der vi kan spesifisere typen og antall forekomster vi ønsker i endepunktet
Vi bruker denne endepunktkonfigurasjonen til å lage et SageMaker-endepunkt og venter på at distribusjonen er ferdig. Med SageMaker MME-er har vi muligheten til å være vert for flere ensemblemodeller ved å gjenta denne prosessen, men vi holder oss til én distribusjon for dette eksemplet:
Status vil endres til InService
når distribusjonen er vellykket.
Påkall modellen din som er vert på SageMaker-endepunktet
Etter at endepunktet kjører, kan vi bruke noen eksempler på rådata for å utføre inferens ved å bruke JSON som nyttelastformat. For slutningsforespørselsformatet bruker Triton KFServing
fellesskapsstandard slutningsprotokoller. Se følgende kode:
Notatboken referert til i bloggen finner du i GitHub repository.
Beste praksis
I tillegg til alternativene for å finjustere innstillingene til FIL-backend som vi nevnte tidligere, kan dataforskere også sørge for at inputdataene for backend er optimalisert for behandling av motoren. Når det er mulig, skriv inn data i rad-major-format i GPU-arrayet. Andre formater vil kreve intern konvertering og ta opp sykluser, noe som reduserer ytelsen.
På grunn av måten FIL-datastrukturer opprettholdes i GPU-minnet, vær oppmerksom på tredybden. Jo dypere tredybden er, desto større blir GPU-minneavtrykket ditt.
Bruke instance_group_count
parameter for å legge til arbeidsprosesser og øke gjennomstrømningen til FIL-backend, noe som vil resultere i større CPU- og GPU-minneforbruk. I tillegg bør du vurdere SageMaker-spesifikke variabler som er tilgjengelige for å øke gjennomstrømningen, for eksempel HTTP-tråder, HTTP-bufferstørrelse, batchstørrelse og maksimal forsinkelse.
konklusjonen
I dette innlegget dykker vi dypt inn i FIL-backend som Triton Inference Server støtter på SageMaker. Denne bakenden sørger for både CPU- og GPU-akselerasjon av dine trebaserte modeller, slik som den populære XGBoost-algoritmen. Det er mange alternativer å vurdere for å få best mulig ytelse for slutninger, for eksempel batchstørrelser, datainndataformater og andre faktorer som kan justeres for å møte dine behov. SageMaker lar deg bruke denne muligheten med enkelt- og multimodellendepunkter for å balansere ytelse og kostnadsbesparelser.
Vi oppfordrer deg til å ta informasjonen i dette innlegget og se om SageMaker kan møte dine hostingbehov for å betjene trebaserte modeller, og oppfylle dine krav til kostnadsreduksjon og arbeidsbelastningsytelse.
Notatboken det refereres til i dette innlegget finner du i SageMaker-eksemplene GitHub repository. Videre kan du finne siste dokumentasjon på FIL-backend på GitHub.
Om forfatterne
Raghu Ramesha er senior ML Solutions Architect med Amazon SageMaker Service-teamet. Han fokuserer på å hjelpe kunder med å bygge, distribuere og migrere ML-produksjonsarbeidsmengder til SageMaker i stor skala. Han spesialiserer seg på maskinlæring, AI og datasynsdomener, og har en mastergrad i informatikk fra UT Dallas. På fritiden liker han å reise og fotografere.
James Park er løsningsarkitekt hos Amazon Web Services. Han jobber med Amazon.com for å designe, bygge og distribuere teknologiløsninger på AWS, og har en spesiell interesse for AI og maskinlæring. På fritiden liker han å oppsøke nye kulturer, nye opplevelser og holde seg oppdatert med de nyeste teknologitrendene.
Dhawal Patel er en hovedmaskinlæringsarkitekt ved AWS. Han har jobbet med organisasjoner som spenner fra store bedrifter til mellomstore startups med problemer knyttet til distribuert databehandling og kunstig intelligens. Han fokuserer på dyp læring, inkludert NLP og datasynsdomener. Han hjelper kunder med å oppnå høyytelsesmodellslutning på Amazon SageMaker.
Jiahong Liu er løsningsarkitekt i Cloud Service Provider-teamet hos NVIDIA. Han hjelper klienter med å ta i bruk maskinlæring og AI-løsninger som utnytter NVIDIA-akselerert databehandling for å møte deres trenings- og slutningsutfordringer. På fritiden liker han origami, DIY-prosjekter og å spille basketball.
Kshitiz Gupta er løsningsarkitekt hos NVIDIA. Han liker å utdanne skykunder om GPU AI-teknologiene NVIDIA har å tilby og hjelpe dem med å akselerere maskinlærings- og dyplæringsapplikasjonene deres. Utenom jobben liker han å løpe, gå på fotturer og se på dyrelivet.
- SEO-drevet innhold og PR-distribusjon. Bli forsterket i dag.
- PlatoAiStream. Web3 Data Intelligence. Kunnskap forsterket. Tilgang her.
- Minting the Future med Adryenn Ashley. Tilgang her.
- kilde: https://aws.amazon.com/blogs/machine-learning/hosting-ml-models-on-amazon-sagemaker-using-triton-xgboost-lightgbm-and-treelite-models/
- : har
- :er
- :ikke
- :hvor
- $OPP
- 1
- 100
- 11
- 13
- 200
- 23
- 24
- 7
- 8
- 9
- a
- evne
- Om oss
- akselerere
- akselerert
- akselerer
- akseleratorer
- adgang
- Ifølge
- tilsvar
- Logg inn
- Oppnå
- tvers
- legge til
- tillegg
- Ytterligere
- adresse
- adresser
- vedta
- Etter
- mot
- avtaler
- AI
- algoritme
- Alle
- bevilgninger
- tillate
- tillater
- langs
- allerede
- også
- Selv
- alltid
- Amazon
- Amazon SageMaker
- Amazon Web Services
- Amazon.com
- beløp
- an
- og
- noen
- api
- søknader
- hensiktsmessig
- arkitektur
- ER
- områder
- argument
- Array
- kunstig
- kunstig intelligens
- AS
- bistår
- At
- auto
- tilgjengelig
- unngå
- AWS
- Backend
- Balansere
- basert
- bash
- basis
- basketball
- BE
- fordi
- bli
- vært
- før du
- begynne
- bak
- under
- nytte
- BEST
- Bedre
- mellom
- større
- Blogg
- kroppen
- både
- buffer
- bygge
- Bygning
- bygget
- men
- by
- C + +
- som heter
- CAN
- kort
- saken
- saker
- Kategori
- Årsak
- utfordringer
- endring
- egenskaper
- sjekk
- chip
- Velg
- velge
- City
- klasse
- klassifisering
- kunde
- klienter
- Cloud
- kode
- kolonner
- COM
- kommer
- kommer
- Felles
- kommunisere
- Kommunikasjon
- samfunnet
- kompatibel
- komplekse
- beregningen
- datamaskin
- informatikk
- Datamaskin syn
- databehandling
- Konfigurasjon
- tilkobling
- Vurder
- ansett
- forbruke
- forbruk
- Container
- Containere
- inneholder
- innhold
- kontrast
- kontroll
- Praktisk
- Konvertering
- konvertere
- Kjerne
- Tilsvarende
- Kostnad
- kostnadsreduksjon
- kostnadsbesparelser
- dekke
- skape
- opprettet
- skaper
- kriterier
- avgjørende
- I dag
- skikk
- Kunder
- sykluser
- Dallas
- dato
- Dato
- dag
- avtale
- avgjørelse
- dyp
- dyp læring
- dypere
- Misligholde
- mislighold
- Grad
- forsinkelse
- krevende
- krav
- avhengig
- utplassere
- utplassert
- utplasserings
- distribusjon
- dybde
- utforming
- detaljer
- Bestem
- bestemmes
- bestemmes
- bestemme
- utviklere
- forskjell
- forskjellig
- distribueres
- distribuert databehandling
- dIY
- do
- dokumentasjon
- ikke
- gjør
- domener
- gjort
- due
- to
- under
- hver enkelt
- Tidligere
- utdanne
- effektivitet
- effektivt
- enten
- streker
- muliggjør
- oppmuntre
- slutt
- Endpoint
- Motor
- Motorer
- sikre
- sikrer
- Enterprise
- bedrifter
- Hele
- Miljø
- feil
- Selv
- Hver
- eksempel
- eksempler
- utveksling
- forvente
- forventet
- Erfaringer
- eksportere
- faktorer
- ganske
- Falls
- falsk
- Trekk
- Egenskaper
- Fed
- fôring
- Noen få
- Figur
- filet
- Filer
- Finn
- ferdig
- Først
- flyten
- Fokus
- fokuserer
- følge
- fulgt
- etter
- Fotspor
- Til
- skjema
- format
- funnet
- Rammeverk
- rammer
- svindel
- Gratis
- fra
- Dess
- inntjening
- general
- genererer
- få
- Gi
- gitt
- GPU
- sterkt
- Gruppe
- Gruppens
- veiledning
- skje
- Hard
- maskinvare
- Ha
- he
- hjelpe
- hjelpe
- hjelper
- her.
- høyt nivå
- høy ytelse
- høyere
- striper
- hans
- hold
- holder
- vert
- vert
- Hosting
- Hvordan
- Hvordan
- Men
- HTML
- http
- HTTPS
- Hurt
- Identitet
- ids
- iDX
- if
- bilde
- Påvirkning
- Konsekvenser
- iverksette
- implementert
- redskaper
- import
- in
- inkludere
- Inkludert
- Øke
- indikerer
- informasjon
- informert
- inngang
- installere
- f.eks
- instruksjoner
- integrering
- Intelligens
- interesse
- intern
- inn
- IT
- DET ER
- jpg
- JSON
- bare
- Hold
- nøkkel
- Type
- Vet
- stor
- Store bedrifter
- større
- Ventetid
- siste
- Layout
- LÆRE
- læring
- minst
- Led
- legitim
- mindre
- Nivå
- nivåer
- Leverage
- bibliotekene
- Bibliotek
- i likhet med
- BEGRENSE
- linje
- Liste
- laste
- logikk
- logisk
- Lang
- maskin
- maskinlæring
- gjøre
- administrer
- mange
- mestere
- Match
- max
- maksimal
- Kan..
- mekanisme
- Møt
- møte
- Minne
- nevnt
- Kjøpmann
- Metrics
- kunne
- migrere
- tankene
- ML
- Mote
- modell
- modeller
- Måned
- mer
- mest
- Mest populær
- flytte
- Multi-Model endepunkt
- flere
- må
- navn
- navngiving
- innfødt
- Trenger
- behov
- Ny
- nlp
- Nei.
- noder
- bærbare
- nå
- Antall
- følelsesløs
- Nvidia
- få
- of
- tilby
- Tilbud
- ofte
- on
- ONE
- seg
- bare
- åpen kildekode
- optimal
- optimalisering
- Optimalisere
- optimalisert
- optimalisere
- Alternativ
- alternativer
- or
- rekkefølge
- organisasjoner
- Organisert
- opprinnelig
- OS
- Annen
- ellers
- vår
- ut
- produksjon
- utenfor
- egen
- pakke
- emballasje
- pandaer
- Parallel
- parameter
- parametere
- deltakende
- Spesielt
- bestått
- passerer
- banen
- Utfør
- ytelse
- utfører
- tillatelse
- fotografering
- rørledning
- plattform
- plato
- Platon Data Intelligence
- PlatonData
- spiller
- vær så snill
- overflod
- Politikk
- politikk
- basseng
- Populær
- popularitet
- mulig
- muligens
- Post
- makt
- forutsi
- Forutsigbar
- spådd
- prediksjon
- Spådommer
- tidligere
- primære
- Principal
- problemer
- prosess
- Prosesser
- prosessering
- Behandlingseffekt
- prosessorer
- produsere
- Produksjon
- prosjekter
- ordentlig
- Proto
- gi
- forutsatt
- leverandør
- gir
- gi
- Python
- pytorch
- tilfeldig
- spenner
- heller
- Raw
- klar
- virkelige verden
- sanntids
- grunner
- anbefaler
- redusere
- referert
- Uansett
- region
- i slekt
- relevant
- erstatte
- Repository
- representasjon
- representerer
- representerer
- anmode
- forespørsler
- krever
- påkrevd
- Krav
- Krever
- svar
- ansvarlig
- resultere
- Resultater
- Rolle
- Kjør
- rennende
- s
- sagemaker
- SageMaker Inference
- samme
- Besparelser
- skalerbar
- Skala
- skalering
- scenarier
- planlegging
- Vitenskap
- forskere
- scikit lære
- Resultat
- Seksjon
- se
- søker
- valgt
- send
- senior
- separat
- betjene
- tjeneste
- Tjenesteyter
- Tjenester
- servering
- sett
- innstilling
- innstillinger
- Form
- delt
- bør
- Vis
- Viser
- side
- betydelig
- lignende
- Enkelt
- enkelt
- Størrelse
- størrelser
- So
- løsning
- Solutions
- LØSE
- løse
- noen
- kilde
- spesialisert
- spesifikk
- spesifikasjon
- spesifisert
- bruke
- Standard
- Begynn
- Start
- startups
- Tilstand
- status
- jevn
- Trinn
- Steps
- lagring
- oppbevare
- lagret
- rett fram
- String
- struktur
- vellykket
- slik
- foreslår
- egnet
- støtte
- Støttes
- Støtter
- Ta
- lag
- teknikker
- Technologies
- Teknologi
- fortelle
- vilkår
- enn
- Det
- De
- informasjonen
- deres
- Dem
- deretter
- Der.
- Disse
- de
- ting
- denne
- De
- selv om?
- tre
- terskel
- gjennomstrømning
- tid
- til
- i dag
- sammen
- øverste nivå
- tradisjonelt
- trent
- Kurs
- Overføre
- Traveling
- Treet
- Trender
- Triton
- sant
- to
- typen
- typer
- typisk
- forstå
- lastet opp
- Opplasting
- us
- bruke
- brukt
- Bruker
- ved hjelp av
- bruker
- utnytte
- verdi
- Verdier
- ulike
- versjon
- av
- syn
- W
- vente
- ønsker
- var
- se
- Vei..
- we
- web
- webtjenester
- VI VIL
- var
- Hva
- når
- når som helst
- om
- hvilken
- mens
- vil
- med
- innenfor
- uten
- Arbeid
- arbeidet
- arbeidstaker
- virker
- ville
- Xgboost
- år
- Du
- Din
- zephyrnet
- Zip