Amazon Sage Maker monen mallin päätepisteet (MME) ovat täysin hallittu SageMaker-päätelmän ominaisuus, jonka avulla voit ottaa käyttöön tuhansia malleja yhdessä päätepisteessä. Aiemmin MME:t allokoivat CPU:n laskentatehoa malleille staattisesti mallin liikennekuormasta riippumatta käyttämällä Multi Model Server (MMS) sen mallipalvelimena. Tässä viestissä keskustelemme ratkaisusta, jossa MME voi dynaamisesti säätää kullekin mallille osoitettua laskentatehoa mallin liikennekuvion perusteella. Tämän ratkaisun avulla voit käyttää taustalla olevaa MME-laskentaa tehokkaammin ja säästää kustannuksia.
MME:t lataavat ja purkavat malleja dynaamisesti päätepisteeseen tulevan liikenteen perusteella. Käytettäessä MMS:ää mallipalvelimena MME:t varaavat kiinteän määrän mallityöntekijöitä kullekin mallille. Lisätietoja on kohdassa Mallin isännöintimallit Amazon SageMakerissa, osa 3: Suorita ja optimoi usean mallin päättely Amazon SageMakerin usean mallin päätepisteillä.
Tämä voi kuitenkin johtaa joihinkin ongelmiin, kun liikennemallisi vaihtelee. Oletetaan, että sinulla on yksi tai muutama malli, jotka saavat paljon liikennettä. Voit määrittää MMS:n varaamaan suuren määrän työntekijöitä näille malleille, mutta tämä osoitetaan kaikille MME:n takana oleville malleille, koska se on staattinen kokoonpano. Tämä johtaa siihen, että suuri määrä työntekijöitä käyttää laitteistolaskentaa – jopa käyttämättömät mallit. Päinvastainen ongelma voi tapahtua, jos asetat pienen arvon työntekijöiden lukumäärälle. Suosituissa malleissa ei ole tarpeeksi työntekijöitä mallipalvelintasolla varaamaan riittävästi laitteistoa näiden mallien päätepisteen taakse. Suurin ongelma on, että on vaikea pysyä liikennekuvioiden agnostisena, jos et voi dynaamisesti skaalata työntekijöitäsi mallipalvelintasolla varaamaan tarvittavan määrän laskentaa.
Ratkaisu, jota käsittelemme tässä viestissä, käyttää DJLS-palvelu mallipalvelimena, joka voi auttaa lieventämään joitain keskustelemiamme ongelmia ja mahdollistaa mallikohtaisen skaalauksen ja mahdollistaa MME:iden olemaan liikennemallien agnostikkoja.
MME-arkkitehtuuri
SageMaker MME:iden avulla voit ottaa käyttöön useita malleja yhden päätepisteen taakse, joka voi sisältää yhden tai useamman esiintymän. Jokainen esiintymä on suunniteltu lataamaan ja palvelemaan useita malleja muistiin ja CPU/GPU-kapasiteettiin asti. Tämän arkkitehtuurin avulla ohjelmisto palveluna (SaaS) -liiketoiminta voi murtaa useiden mallien isännöinnin lineaarisesti kasvavat kustannukset ja saavuttaa infrastruktuurin uudelleenkäytön, joka on sopusoinnussa muualla sovelluspinossa sovelletun monivuokrausmallin kanssa. Seuraava kaavio havainnollistaa tätä arkkitehtuuria.
SageMaker MME lataa malleja dynaamisesti Amazonin yksinkertainen tallennuspalvelu (Amazon S3), kun sitä kutsutaan, sen sijaan, että ladattaisiin kaikki mallit, kun päätepiste luodaan ensimmäisen kerran. Tämän seurauksena mallin alkuperäinen kutsu saattaa nähdä suuremman päättelyviiveen kuin myöhemmät päätelmät, jotka suoritetaan pienellä viiveellä. Jos malli on jo ladattu säilöön kutsuttaessa, latausvaihe ohitetaan ja malli palauttaa päätelmät pienellä viiveellä. Oletetaan esimerkiksi, että sinulla on malli, jota käytetään vain muutaman kerran päivässä. Se latautuu automaattisesti tarpeen mukaan, kun taas usein käytetyt mallit säilyvät muistissa ja niitä kutsutaan jatkuvasti alhaisella viiveellä.
Jokaisen MME:n takana on mallin isännöintiinstanssit seuraavan kaavion mukaisesti. Nämä ilmentymät lataavat ja poistavat useita malleja muistiin ja muistista mallien liikennemallien perusteella.
SageMaker jatkaa mallin päättelypyyntöjen reitittämistä ilmentymään, jossa malli on jo ladattu siten, että pyynnöt toimitetaan välimuistissa olevasta mallikopiosta (katso seuraava kaavio, joka näyttää pyyntöpolun ensimmäiselle ennustepyynnölle vs. välimuistissa oleva ennuste). pyyntöpolku). Jos malli kuitenkin vastaanottaa useita kutsupyyntöjä ja MME:lle on lisäilmentymiä, SageMaker reitittää jotkin pyynnöt toiseen ilmentymään kasvun huomioon ottamiseksi. Hyödynnä automaattista mallin skaalausta SageMakerissa varmistamalla, että sinulla on esimerkiksi automaattinen skaalaus tarjota lisää esiintymäkapasiteettia. Määritä päätepistetason skaalauskäytäntö joko mukautetuilla parametreilla tai kutsuilla minuutissa (suositus), jotta voit lisätä päätepistekalustoon uusia esiintymiä.
Mallipalvelimen yleiskatsaus
Mallipalvelin on ohjelmistokomponentti, joka tarjoaa ajonaikaisen ympäristön koneoppimismallien (ML) käyttöönottoon ja palvelemiseen. Se toimii rajapintana koulutettujen mallien ja asiakassovellusten välillä, jotka haluavat tehdä ennusteita kyseisten mallien avulla.
Mallipalvelimen ensisijainen tarkoitus on mahdollistaa ML-mallien vaivaton integrointi ja tehokas käyttöönotto tuotantojärjestelmissä. Sen sijaan, että malli olisi upotettu suoraan sovellukseen tai tiettyyn kehykseen, mallipalvelin tarjoaa keskitetyn alustan, jossa voidaan ottaa käyttöön, hallita ja palvella useita malleja.
Mallipalvelimet tarjoavat yleensä seuraavat toiminnot:
- Mallin lataus – Palvelin lataa koulutetut ML-mallit muistiin, jolloin ne ovat valmiita palvelemaan ennusteita.
- Inference API – Palvelin paljastaa API:n, jonka avulla asiakassovellukset voivat lähettää syöttötietoja ja vastaanottaa ennusteita käyttöönotetuista malleista.
- Skaalaus – Mallipalvelimet on suunniteltu käsittelemään useiden asiakkaiden samanaikaisia pyyntöjä. Ne tarjoavat mekanismeja rinnakkaiseen käsittelyyn ja resurssien tehokkaaseen hallintaan korkean suorituskyvyn ja alhaisen latenssin varmistamiseksi.
- Integrointi taustamoottoreiden kanssa – Mallipalvelimissa on integraatiot taustakehysten, kuten DeepSpeed ja FasterTransformer, kanssa suurten mallien osiointiin ja erittäin optimoitujen päättelyjen suorittamiseen.
DJL-arkkitehtuuri
DJL tarjoilu on avoimen lähdekoodin, korkean suorituskyvyn, universaali mallipalvelin. DJL Serving on rakennettu päälle Djl, syväoppimiskirjasto, joka on kirjoitettu Java-ohjelmointikielellä. Se voi ottaa syvän oppimismallin, useita malleja tai työnkulkuja ja asettaa ne saataville HTTP-päätepisteen kautta. DJL Serving tukee mallien käyttöönottoa useista kehyksistä, kuten PyTorch, TensorFlow, Apache MXNet, ONNX, TensorRT, Hugging Face Transformers, DeepSpeed, FasterTransformer ja muut.
DJL Serving tarjoaa monia ominaisuuksia, joiden avulla voit ottaa malliesi käyttöön korkealla suorituskyvyllä:
- Helppokäyttöisyys – DJL Serving pystyy palvelemaan useimpia malleja heti valmiina. Tuo vain malliesineet, niin DJL Serving voi isännöidä niitä.
- Useiden laitteiden ja kiihdytin tuki – DJL Serving tukee mallien käyttöönottoa suorittimella, grafiikkasuorittimella ja AWS Inferencia.
- Suorituskyky – DJL Serving suorittaa monisäikeisen päättelyn yhdessä JVM:ssä suorituskyvyn parantamiseksi.
- Dynaaminen eräajo – DJL Serving tukee dynaamista eräajoa suorituskyvyn lisäämiseksi.
- Automaattinen skaalaus – DJL Serving skaalaa työntekijät automaattisesti ylös ja alas liikennekuorman perusteella.
- Usean moottorin tuki – DJL Serving voi isännöidä samanaikaisesti malleja eri viitekehyksellä (kuten PyTorch ja TensorFlow).
- Ensemble ja työnkulkumallit – DJL Serving tukee useista malleista koostuvien monimutkaisten työnkulkujen käyttöönottoa ja suorittaa osia työnkulusta suorittimella ja osia GPU:lla. Työnkulun mallit voivat käyttää erilaisia kehyksiä.
Erityisesti DJL Servingin automaattisen skaalausominaisuuden ansiosta on helppo varmistaa, että mallit skaalataan asianmukaisesti tulevaa liikennettä varten. Oletuksena DJL Serving määrittää tuettavan mallin työntekijöiden enimmäismäärän käytettävissä olevan laitteiston (CPU-ytimet, GPU-laitteet) perusteella. Voit asettaa ala- ja ylärajat kullekin mallille varmistaaksesi, että vähimmäisliikennetaso voidaan aina palvella ja että yksi malli ei kuluta kaikkia käytettävissä olevia resursseja.
DJL Serving käyttää a Netty etuosa taustatyöntekijöiden lankaryhmien päällä. Käyttöliittymä käyttää yhtä Netty-asetusta, jossa on useita HttpRequestHandlers. Eri pyyntökäsittelijät tarjoavat tukea Inference API, Management APItai muita sovellusliittymiä, jotka ovat saatavilla useista laajennuksista.
Tausta perustuu noin WorkLoadManager (WLM) moduuli. WLM huolehtii useista työntekijäsäikeistä kullekin mallille sekä eräajoin ja pyytää reititystä niille. Kun useita malleja palvellaan, WLM tarkistaa ensin kunkin mallin päättelypyyntöjonon koon. Jos jonon koko on suurempi kuin kaksi kertaa mallin eräkoko, WLM skaalaa kyseiseen malliin määritettyjen työntekijöiden määrää.
Ratkaisun yleiskatsaus
DJL:n toteutus MME:n kanssa eroaa MMS-oletusasetuksista. DJL-palvelua varten MME:n kanssa pakkaamme seuraavat tiedostot model.tar.gz-muodossa, jota SageMaker Inference odottaa:
- malli.joblib – Tätä toteutusta varten työnnämme mallin metatiedot suoraan tarballiin. Tässä tapauksessa työskentelemme a
.joblib
tiedosto, joten tarjoamme tiedoston tarball-tiedostoomme johtopäätösskriptimme luettavaksi. Jos artefakti on liian suuri, voit myös työntää sen Amazon S3:lle ja osoittaa sitä kohti DJL:lle määrittämässäsi käyttökokoonpanossa. - palvelevat.ominaisuudet – Täällä voit määrittää minkä tahansa palvelimeen liittyvän mallin ympäristömuuttujat. DJL:n voima tässä on se, että voit määrittää
minWorkers
jamaxWorkers
jokaiselle mallille. Tämä mahdollistaa jokaisen mallin skaalata ylös ja alas mallipalvelimen tasolla. Jos esimerkiksi yksittäinen malli vastaanottaa suurimman osan MME:n liikenteestä, mallipalvelin skaalaa työntekijöitä dynaamisesti. Tässä esimerkissä emme määritä näitä muuttujia, vaan annamme DJL:n määrittää tarvittavan määrän työntekijöitä liikennemallimme mukaan. - malli.py – Tämä on päättelykomentosarja mille tahansa mukautetulle esi- tai jälkikäsittelylle, jonka haluat toteuttaa. Model.py odottaa, että logiikkasi on oletusarvoisesti kapseloitu kahvamenetelmään.
- vaatimukset.txt (valinnainen) – Oletusarvoisesti DJL on asennettu PyTorchin kanssa, mutta kaikki tarvitsemasi lisäriippuvuudet voidaan työntää tänne.
Tässä esimerkissä esittelemme DJL:n tehoa MME:n kanssa ottamalla mallin SKLearn-mallista. Suoritamme koulutustyön tällä mallilla ja luomme sitten 1,000 XNUMX kopiota tästä malliartefaktista MME:n tukemiseksi. Sitten esittelemme, kuinka DJL voi dynaamisesti skaalata käsitelläkseen kaiken tyyppisiä liikennemalleja, joita MME voi vastaanottaa. Tämä voi sisältää liikenteen tasaisen jakautumisen kaikissa malleissa tai jopa muutamassa suositussa mallissa, jotka saavat suurimman osan liikenteestä. Löydät kaikki koodit seuraavasta GitHub repo.
Edellytykset
Tässä esimerkissä käytämme SageMaker-muistikirjan ilmentymää conda_python3-ytimen ja ml.c5.xlarge-esiintymän kanssa. Voit suorittaa kuormitustestejä käyttämällä Amazonin elastinen laskentapilvi (Amazon EC2) -esiintymä tai suurempi SageMaker-kannettavan ilmentymä. Tässä esimerkissä skaalaamme yli tuhanteen tapahtumaan sekunnissa (TPS), joten suosittelemme testaamista raskaammalla EC2-esiintymällä, kuten ml.c5.18xlarge, jotta sinulla on enemmän laskentaa.
Luo malliartefaktti
Meidän on ensin luotava malliartefaktimme ja tiedot, joita käytämme tässä esimerkissä. Tätä varten luomme keinotekoisia tietoja NumPyllä ja harjoittelemme SKLearnin lineaarista regressiomallia käyttämällä seuraavaa koodinpätkää:
Kun olet suorittanut edellisen koodin, sinulla pitäisi olla a model.joblib
tiedosto, joka on luotu paikallisessa ympäristössäsi.
Vedä DJL Docker -kuva
Docker-kuva djl-inference:0.23.0-cpu-full-v1.0 on tässä esimerkissä käytetty DJL-käyttösäilömme. Voit säätää seuraavaa URL-osoitetta alueesi mukaan:
inference_image_uri = "474422712127.dkr.ecr.us-east-1.amazonaws.com/djl-serving-cpu:latest"
Vaihtoehtoisesti voit käyttää tätä kuvaa myös peruskuvana ja laajentaa sitä rakentaaksesi oman Docker-kuvasi Amazonin elastisten säiliörekisteri (Amazon ECR) muiden tarvitsemiesi riippuvuuksien kanssa.
Luo mallitiedosto
Ensin luomme tiedoston nimeltä serving.properties
. Tämä ohjeistaa DJLServingin käyttämään Python-moottoria. Määrittelemme myös max_idle_time
työntekijän 600 sekuntia. Tämä varmistaa, että mallikohtaisen työntekijöiden määrän pienentäminen kestää kauemmin. Emme sopeudu minWorkers
ja maxWorkers
jonka voimme määritellä, ja annamme DJL:n laskea dynaamisesti tarvittavien työntekijöiden lukumäärän kunkin mallin vastaanottaman liikenteestä riippuen. Tarjoiluominaisuudet näytetään seuraavasti. Katso täydellinen luettelo kokoonpanovaihtoehdoista kohdasta Moottorin kokoonpano.
Seuraavaksi luomme model.py-tiedostomme, joka määrittää mallin lataus- ja päättelylogiikan. MME:ssä jokainen model.py-tiedosto on mallikohtainen. Mallit tallennetaan omille poluilleen mallisäilön alle (yleensä /opt/ml/model/
). Malleja ladattaessa ne ladataan mallisäilöpolun alle omaan hakemistoonsa. Tämän esittelyn malli.py-esimerkki kokonaisuudessaan on nähtävissä GitHub repo.
Luomme model.tar.gz
tiedosto, joka sisältää mallimme (model.joblib
), model.py
ja serving.properties
:
Esittelytarkoituksessa teemme samasta 1,000 XNUMX kopiota model.tar.gz
tiedosto edustaa suurta määrää isännöitäviä malleja. Tuotannossa sinun on luotava a model.tar.gz
tiedosto jokaiselle mallillesi.
Lopuksi lataamme nämä mallit Amazon S3:een.
Luo SageMaker-malli
Luomme nyt a SageMaker malli. Käytämme aiemmin määritettyä ECR-kuvaa ja edellisen vaiheen malliartefaktia SageMaker-mallin luomiseen. Mallin asetuksissa konfiguroimme tilan MultiModeliksi. Tämä kertoo DJLServingille, että olemme luomassa MME:tä.
Luo SageMaker-päätepiste
Tässä esittelyssä käytämme 20 ml.c5d.18xlarge instansseja skaalataksemme tuhansien TPS:ien. Varmista, että nostat ilmentymätyypin rajaa tarvittaessa saavuttaaksesi kohdistamasi TPS:n.
Kuormitustestaus
Kirjoitushetkellä SageMakerin sisäinen kuormitustestaustyökalu Amazon SageMakerin päätelmäsuositus ei tue natiivisti MME-testausta. Siksi käytämme avoimen lähdekoodin Python-työkalua heinäsirkka. Locust on helppo asentaa, ja se voi seurata mittareita, kuten TPS:ää ja päästä päähän -latenssia. Saat täydellisen käsityksen siitä, kuinka se määritetään SageMakerilla, katso Parhaat käytännöt Amazon SageMakerin reaaliaikaisten päätelmien päätepisteiden kuormitustestaukseen.
Tässä käyttötapauksessa meillä on kolme erilaista liikennemallia, joita haluamme simuloida MME:illä, joten meillä on seuraavat kolme Python-komentosarjaa, jotka kohdistetaan kunkin mallin kanssa. Tavoitteenamme on todistaa, että liikennemallistamme riippumatta voimme saavuttaa saman TPS-tavoitteen ja skaalata asianmukaisesti.
Voimme määrittää painon Locust-skriptissämme liikenteen määrittämiseksi malliemme eri osien välillä. Esimerkiksi yhdellä kuumalla mallillamme toteutamme kaksi menetelmää seuraavasti:
Voimme sitten määrittää kullekin menetelmälle tietyn painon, jolloin tietty menetelmä vastaanottaa tietyn prosenttiosuuden liikenteestä:
20 ml.c5d.18xlarge-esiintymissä näemme seuraavat kutsumittaukset amazonin pilvikello konsoli. Nämä arvot pysyvät melko yhdenmukaisina kaikissa kolmessa liikennemallissa. Jos haluat ymmärtää CloudWatch-mittareita SageMakerin reaaliaikaisille päätelmille ja MME:ille paremmin, katso SageMaker Endpoint Invocation Metrics.
Löydät loput Locust-skriptit locust-utils -hakemisto GitHub-arkistossa.
Yhteenveto
Tässä viestissä keskustelimme siitä, kuinka MME voi dynaamisesti säätää kullekin mallille määritettyä laskentatehoa mallin liikennekuvion perusteella. Tämä hiljattain julkaistu ominaisuus on saatavilla kaikilla AWS-alueilla, joissa SageMaker on saatavilla. Huomaa, että ilmoitushetkellä vain CPU-esiintymiä tuetaan. Lisätietoja saat osoitteesta Tuetut algoritmit, puitteet ja ilmentymät.
Tietoja Tekijät
Ram Vegiraju on ML-arkkitehti SageMaker Service -tiimin kanssa. Hän keskittyy auttamaan asiakkaita rakentamaan ja optimoimaan AI/ML-ratkaisujaan Amazon SageMakerissa. Vapaa-ajallaan hän rakastaa matkustamista ja kirjoittamista.
Qingwei Li on koneoppimisen asiantuntija Amazon Web Services -palvelussa. Hän sai tohtorin tutkinnon operatiivisessa tutkimuksessa sen jälkeen, kun hän rikkoi neuvonantajan tutkimusapurahatilin ja ei toimittanut lupaamaansa Nobelin palkintoa. Tällä hetkellä hän auttaa finanssi- ja vakuutusalan asiakkaita rakentamaan koneoppimisratkaisuja AWS: lle. Vapaa-ajallaan hän pitää lukemisesta ja opettamisesta.
James Wu on AWS:n vanhempi AI/ML-asiantuntijaratkaisuarkkitehti. auttaa asiakkaita suunnittelemaan ja rakentamaan AI/ML-ratkaisuja. Jamesin työ kattaa laajan valikoiman ML-käyttötapauksia, ja hänen ensisijaisena kiinnostuksena ovat tietokonenäkö, syväoppiminen ja ML:n skaalaaminen koko yrityksessä. Ennen AWS:ään liittymistään James oli arkkitehti, kehittäjä ja teknologiajohtaja yli 10 vuoden ajan, joista 6 vuotta suunnittelussa ja 4 vuotta markkinointi- ja mainontateollisuudessa.
Saurabh Trikande on Amazon SageMaker Inferencen -tuotepäällikkö. Hän on intohimoinen asiakkaiden kanssa työskentelyyn, ja häntä motivoi tavoite demokratisoida koneoppimista. Hän keskittyy ydinhaasteisiin, jotka liittyvät monimutkaisten ML-sovellusten käyttöönottoon, usean vuokralaisen ML-malleihin, kustannusten optimointiin ja syvän oppimismallien käyttöönoton helpottamiseen. Vapaa-ajallaan Saurabh nauttii vaeltamisesta, innovatiivisten teknologioiden oppimisesta, TechCrunchien seuraamisesta ja perheensä kanssa viettämisestä.
Xu Deng on SageMaker-tiimin ohjelmistosuunnittelijapäällikkö. Hän keskittyy auttamaan asiakkaita rakentamaan ja optimoimaan AI/ML-päätelmäkokemustaan Amazon SageMakerissa. Vapaa-ajallaan hän rakastaa matkustamista ja lumilautailua.
Siddharth Venkatesan on AWS Deep Learningin ohjelmistosuunnittelija. Tällä hetkellä hän keskittyy rakentamaan ratkaisuja suuriin mallipäätelmiin. Ennen AWS:ää hän työskenteli Amazon Grocery -organisaatiossa uusien maksuominaisuuksien rakentamisessa asiakkaille maailmanlaajuisesti. Työn ulkopuolella hän pitää hiihtämisestä, ulkoilusta ja urheilun katsomisesta.
Rohith Nallamaddi on AWS:n ohjelmistokehitysinsinööri. Hän työskentelee GPU:iden syvän oppimisen työkuormien optimoinnissa, korkean suorituskyvyn ML-päätelmien rakentamisessa ja ratkaisujen tarjoamisessa. Ennen tätä hän työskenteli AWS-pohjaisten mikropalvelujen rakentamisessa Amazon F3 -liiketoiminnalle. Työn ulkopuolella hän nauttii pelaamisesta ja urheilun katsomisesta.
- SEO-pohjainen sisällön ja PR-jakelu. Vahvista jo tänään.
- PlatoData.Network Vertical Generatiivinen Ai. Vahvista itseäsi. Pääsy tästä.
- PlatoAiStream. Web3 Intelligence. Tietoa laajennettu. Pääsy tästä.
- PlatoESG. hiili, CleanTech, energia, ympäristö, Aurinko, Jätehuolto. Pääsy tästä.
- PlatonHealth. Biotekniikan ja kliinisten kokeiden älykkyys. Pääsy tästä.
- Lähde: https://aws.amazon.com/blogs/machine-learning/run-ml-inference-on-unplanned-and-spiky-traffic-using-amazon-sagemaker-multi-model-endpoints/
- :On
- :missä
- $ YLÖS
- 000
- 1
- 10
- 100
- 116
- 118
- 12
- 16
- 17
- 20
- 23
- 31
- 600
- 7
- 9
- a
- Meistä
- kiihdytin
- Accessed
- saatavilla
- majoittaa
- Tili
- Saavuttaa
- poikki
- säädökset
- lisätä
- lisä-
- Etu
- mainonta
- Jälkeen
- AI / ML
- algoritmit
- kohdista
- Kaikki
- jakaa
- kohdennetaan
- sallia
- mahdollistaa
- pitkin
- jo
- Myös
- aina
- Amazon
- Amazon EC2
- Amazon Sage Maker
- Amazon Web Services
- määrä
- an
- ja
- Ilmoitus
- Toinen
- Kaikki
- Apache
- api
- API
- Hakemus
- sovellukset
- sovellettu
- asianmukaisesti
- arkkitehtuuri
- OVAT
- noin
- keinotekoinen
- AS
- osoitettu
- olettaa
- At
- auto
- Automatisoitu
- automaattisesti
- saatavissa
- AWS
- takaisin
- taustaosa
- pohja
- perustua
- annostelu-
- BE
- koska
- takana
- Paremmin
- välillä
- elin
- edistää
- rajat
- Laatikko
- Tauko
- tuoda
- Broke
- rakentaa
- Rakentaminen
- rakennettu
- liiketoiminta
- mutta
- by
- nimeltään
- CAN
- valmiudet
- Koko
- joka
- tapaus
- tapauksissa
- solu
- keskitetty
- tietty
- haasteet
- Tarkastukset
- luokka
- asiakas
- asiakkaat
- koodi
- tulee
- täydellinen
- Valmistunut
- monimutkainen
- komponentti
- Sisältää
- Laskea
- tietokone
- Tietokoneen visio
- tietojenkäsittely
- laskentateho
- samanaikainen
- Konfigurointi
- johdonmukainen
- johdonmukaisesti
- Console
- kuluttaa
- sisältää
- Kontti
- tausta
- jatkuu
- Ydin
- Hinta
- kustannukset
- Covers
- luoda
- luotu
- Luominen
- Tällä hetkellä
- asiakassuhde
- Asiakkaat
- tiedot
- päivä
- syvä
- syvä oppiminen
- oletusarvo
- määritellä
- määritelty
- määrittelee
- toimittaa
- Kysyntä
- esittely
- Democratizing
- riippuvuudet
- Riippuen
- kuvattu
- sijoittaa
- käyttöön
- levityspinnalta
- käyttöönotto
- Malli
- suunniteltu
- Määrittää
- määrittää
- Kehittäjä
- Kehitys
- laite
- Laitteet
- kaavio
- eri
- vaikea
- suoraan
- hakemisto
- pohtia
- keskusteltiin
- jakelu
- Satamatyöläinen
- ei
- Dont
- alas
- download
- lataaminen
- dynaaminen
- dynaamisesti
- kukin
- Aikaisemmin
- tehokas
- tehokkaasti
- vaivaton
- myöskään
- muualla
- upottamisen
- mahdollistaa
- mahdollistaa
- kapseloitu
- päittäin
- päätepiste
- Moottori
- insinööri
- Tekniikka
- tarpeeksi
- varmistaa
- yritys
- ympäristö
- virhe
- Jopa
- esimerkki
- poikkeus
- odottaa
- odottaa
- experience
- laajentaa
- Kasvot
- Epäonnistui
- melko
- perhe
- Ominaisuus
- Ominaisuudet
- harvat
- filee
- Asiakirjat
- taloudellinen
- rahoituspalvelu
- Löytää
- Etunimi
- kiinteä
- LAIVASTON
- keskittyy
- jälkeen
- seuraa
- varten
- muoto
- Puitteet
- puitteet
- usein
- alkaen
- Frontend
- koko
- täysin
- toiminnallisuudet
- tuottaa
- saada
- saa
- GitHub
- tavoite
- GPU
- GPU
- myöntää
- suurempi
- kahva
- tapahtua
- Palvelimet
- Olla
- he
- auttaa
- auttaa
- auttaa
- tätä
- Korkea
- korkeampi
- erittäin
- hänen
- isäntä
- isännöi
- hotellit
- KUUMA
- Miten
- Miten
- Kuitenkin
- HTML
- http
- HTTPS
- Idle
- if
- havainnollistaa
- kuva
- toteuttaa
- täytäntöönpano
- tuoda
- in
- sisältää
- sisältää
- Mukaan lukien
- Saapuva
- Kasvaa
- lisää
- teollisuuden
- teollisuus
- tiedot
- Infrastruktuuri
- ensimmäinen
- innovatiivinen
- innovatiivisia tekniikoita
- panos
- asennetaan
- esimerkki
- sen sijaan
- vakuutus
- integraatio
- integraatiot
- korko
- liitäntä
- tulee
- kutsuttuihin
- kysymys
- kysymykset
- IT
- SEN
- Jaakob
- Jaava
- Job
- tuloaan
- jpg
- vain
- Kieli
- suuri
- suurempi
- Viive
- uusin
- käynnistettiin
- johtaa
- johtaja
- Liidit
- OPPIA
- oppiminen
- antaa
- Taso
- Kirjasto
- pitää
- tykkää
- RAJOITA
- lineaarinen
- Lista
- kuormitus
- lastaus
- kuormat
- paikallinen
- logiikka
- kauemmin
- rakastaa
- Matala
- alentaa
- kone
- koneoppiminen
- tärkein
- Enemmistö
- tehdä
- TEE
- Tekeminen
- onnistui
- johtaja
- toimitusjohtaja
- monet
- Marketing
- Markkinointi ja mainonta
- maksimi
- Saattaa..
- mekanismit
- Muisti
- Metadata
- menetelmä
- menetelmät
- Metrics
- microservices
- ehkä
- minimi
- minuutti
- lieventää
- ML
- tila
- malli
- mallit
- Moduulit
- lisää
- eniten
- motivoituneita
- moninkertainen
- nimi
- natiivisti
- välttämätön
- Tarve
- tarvitaan
- Uusi
- hiljattain
- Nobel palkinto
- Ei eristetty
- huomata
- muistikirja
- nyt
- numero
- numpy
- of
- kampanja
- Tarjoukset
- on
- ONE
- vain
- avata
- avoimen lähdekoodin
- Operations
- päinvastainen
- optimointeja
- Optimoida
- optimoitu
- optimoimalla
- Vaihtoehdot
- or
- Muut
- meidän
- ulos
- ulkona
- ulostulo
- ulkopuolella
- yli
- oma
- Parallel
- parametrit
- osa
- erityinen
- osat
- intohimoinen
- polku
- polut
- Kuvio
- kuviot
- maksu
- varten
- osuus
- Suorittaa
- suorituskyky
- putki
- foorumi
- Platon
- Platonin tietotieto
- PlatonData
- pelaa
- liitännäiset
- Kohta
- politiikka
- Altaat
- Suosittu
- Kirje
- teho
- käytännöt
- edeltävä
- ennustus
- Ennusteet
- edellinen
- aiemmin
- ensisijainen
- Aikaisempi
- palkinto
- Ongelma
- prosessi
- käsittely
- Tuotteet
- tuotepäällikkö
- tuotanto
- Ohjelmointi
- luvattu
- asianmukaisesti
- ominaisuudet
- todistaa
- toimittaa
- tarjoaa
- säännös
- tarkoitus
- tarkoituksiin
- Työnnä
- työntää
- Python
- pytorch
- satunnainen
- alue
- Lue
- Lukeminen
- valmis
- reaaliaikainen
- vastaanottaa
- sai
- vastaanottaa
- vastaanottava
- suositeltu
- katso
- riippumatta
- alue
- alueet
- liittyvä
- jäädä
- korvata
- säilytyspaikka
- edustaa
- pyyntö
- pyynnöt
- vaatimukset
- tutkimus
- Esittelymateriaalit
- vastaus
- REST
- johtua
- Tuotto
- uudelleenkäyttö
- Reitti
- reitit
- reititys
- ajaa
- toimii
- runtime
- SaaS
- sagemaker
- SageMaker-johtopäätös
- sama
- näyte
- Säästä
- sanoa
- Asteikko
- skaalattu
- asteikot
- skaalaus
- käsikirjoitus
- skriptejä
- Toinen
- sekuntia
- nähdä
- nähneet
- SELF
- lähettää
- vanhempi
- palvella
- palveli
- palvelin
- servers
- palvelu
- Palvelut
- palvelevat
- setti
- Setit
- setup
- useat
- shouldnt
- näyteikkuna
- esitetty
- Näytä
- Yksinkertainen
- simuloida
- samanaikaisesti
- single
- yksikkö
- Koko
- pieni
- pätkä
- So
- Tuotteemme
- ohjelmisto palveluna
- ohjelmistokehitys
- Software Engineer
- ratkaisu
- Ratkaisumme
- jonkin verran
- lähde
- asiantuntija
- erityinen
- menot
- jakaa
- Urheilu
- pino
- staattinen
- Vaihe
- Levytila
- verkkokaupasta
- tallennettu
- suora
- myöhempi
- niin
- ehdottaa
- tuki
- Tuetut
- Tukee
- varma
- järjestelmät
- ottaa
- vie
- ottaen
- Kohde
- kohdistaminen
- Opetus
- joukkue-
- TechCrunch
- Technologies
- Elektroniikka
- kertoo
- tensorflow
- Testaus
- testit
- kuin
- että
- -
- heidän
- Niitä
- sitten
- Siellä.
- siksi
- Nämä
- ne
- tätä
- ne
- tuhat
- tuhansia
- kolmella
- Kautta
- suoritusteho
- aika
- kertaa
- että
- liian
- työkalu
- ylin
- kohti
- tps
- raita
- liikenne
- Juna
- koulutettu
- koulutus
- Liiketoimet
- muuntajat
- Matkustaminen
- yrittää
- kaksi
- tyyppi
- tyypillisesti
- varten
- taustalla oleva
- ymmärtää
- ymmärtäminen
- Yleismaailmallinen
- URL
- käyttää
- käyttölaukku
- käytetty
- käyttötarkoituksiin
- käyttämällä
- yleensä
- Hyödyntämällä
- arvo
- arvot
- muuttuja
- eri
- visio
- vs
- haluta
- oli
- katsomassa
- we
- verkko
- verkkopalvelut
- paino
- Mitä
- kun
- taas
- joka
- leveä
- Laaja valikoima
- tulee
- with
- sisällä
- Referenssit
- työskenteli
- työntekijä
- työntekijöitä
- työnkulku
- työnkulkuja
- työskentely
- toimii
- olisi
- kirjoittaminen
- kirjallinen
- X
- vuotta
- Voit
- Sinun
- zephyrnet