Lansko leto smo objavili splošno razpoložljivost RStudio na Amazon SageMaker, prvo popolnoma upravljano integrirano razvojno okolje (IDE) RStudio Workbench v industriji v oblaku. Hitro lahko zaženete znani RStudio IDE in kličete navzgor in navzdol po osnovnih računalniških virih, ne da bi pri tem prekinili delo, kar olajša gradnjo strojnega učenja (ML) in analitičnih rešitev v R v velikem obsegu.
Z vedno večjim obsegom ustvarjenih podatkov nabori podatkov, ki se uporabljajo za strojno učenje in statistične analize, rastejo sočasno. S tem prinaša izzive povečanega časa razvoja in upravljanja računalniške infrastrukture. Da bi rešili te izzive, so podatkovni znanstveniki poskušali implementirati tehnike vzporedne obdelave podatkov. Vzporedna obdelava podatkov, oz paralelizacija podatkov, vzame velike obstoječe nabore podatkov in jih razdeli med več procesorjev ali vozlišč za istočasno delovanje s podatki. To lahko omogoči hitrejši čas obdelave večjih naborov podatkov, skupaj z optimizirano uporabo pri računanju. To lahko strokovnjakom za strojno učenje pomaga pri ustvarjanju vzorcev za večkratno uporabo za ustvarjanje nabora podatkov ter zmanjša obremenitev in stroške računalniške infrastrukture.
Pregled rešitev
V okviru Amazon SageMaker, uporabljajo številne stranke Obdelava žajblja za pomoč pri izvajanju vzporedne obdelave podatkov. S SageMaker Processing lahko uporabite poenostavljeno, upravljano izkušnjo na SageMakerju za izvajanje delovnih obremenitev obdelave podatkov, kot so inženiring funkcij, validacija podatkov, vrednotenje modela in interpretacija modela. To prinaša številne prednosti, saj ni dolgotrajne infrastrukture za upravljanje – primerki obdelave se ustavi, ko so opravila končana, okolja je mogoče standardizirati prek vsebnikov, podatkov znotraj Preprosta storitev shranjevanja Amazon (Amazon S3) je izvorno porazdeljen po instancah, nastavitve infrastrukture pa so prilagodljive v smislu pomnilnika, računalništva in shranjevanja.
SageMaker Processing ponuja možnosti za distribucijo podatkov. Za vzporedno obdelavo podatkov morate uporabiti Možnost ShardedByS3Key za S3DataDistributionType. Ko je ta parameter izbran, SageMaker Processing prevzame posredovano n instance in distribucija objektov 1/n predmetov iz vira vhodnih podatkov po instancah. Na primer, če sta dva primerka opremljena s štirimi podatkovnimi objekti, vsak primerek prejme dva objekta.
SageMaker Processing potrebuje tri komponente za izvajanje opravil obdelave:
- Slika vsebnika, ki ima vašo kodo in odvisnosti za izvajanje delovnih obremenitev obdelave podatkov
- Pot do vira vhodnih podatkov znotraj Amazon S3
- Pot do vira izhodnih podatkov znotraj Amazon S3
Postopek je prikazan v naslednjem diagramu.
V tej objavi vam pokažemo, kako uporabiti RStudio na SageMakerju za povezavo z vrsto opravil SageMaker Processing za ustvarjanje cevovoda za vzporedno obdelavo podatkov z uporabo programski jezik R.
Rešitev je sestavljena iz naslednjih korakov:
- Nastavite projekt RStudio.
- Zgradite in registrirajte sliko vsebnika za obdelavo.
- Zaženite cevovod za obdelavo v dveh korakih:
- Prvi korak vzame več podatkovnih datotek in jih obdela v nizu opravil obdelave.
- Drugi korak združi izhodne datoteke in jih razdeli na nabore podatkov za usposabljanje, testiranje in validacijo.
Predpogoji
Izpolnite naslednje predpogoje:
- Nastavite RStudio na SageMaker Workbench. Za več informacij glejte Predstavljamo popolnoma upravljan RStudio na Amazon SageMaker za podatkovne znanstvenike.
- Ustvarite uporabnika z RStudio na SageMaker z ustreznimi dovoljenji za dostop.
Nastavite projekt RStudio
Za nastavitev projekta RStudio izvedite naslednje korake:
- Pojdite do svojega Amazon SageMaker Studio nadzorno ploščo na konzoli SageMaker.
- Zaženite svojo aplikacijo v okolju RStudio.
- Začnite novo sejo RStudio.
- za Ime seje, vnesite ime.
- za Vrsta primerka in Image, uporabite privzete nastavitve.
- Izberite Začnite sejo.
- Pomaknite se do seje.
- Izberite Nov projekt, Nadzor nad različico, in potem Izberite Git.
- za URL skladišča, vnesite
https://github.com/aws-samples/aws-parallel-data-processing-r.git
- Preostale možnosti pustite privzete in izberite Ustvari projekt.
Lahko se pomaknete do aws-parallel-data-processing-R
imenik na datoteke zavihek za ogled repozitorija. Repozitorij vsebuje naslednje datoteke:
Container_Build.rmd
/dataset
bank-additional-full-data1.csv
bank-additional-full-data2.csv
bank-additional-full-data3.csv
bank-additional-full-data4.csv
/docker
Dockerfile-Processing
Parallel_Data_Processing.rmd
/preprocessing
filter.R
process.R
Zgradite posodo
V tem koraku zgradimo našo sliko vsebnika za obdelavo in jo potisnemo Registar elastičnih zabojnikov Amazon (Amazon ECR). Izvedite naslednje korake:
- Pomaknite se na
Container_Build.rmd
Datoteka. - namestite SageMaker Studio Image Build CLI z izvajanjem naslednje celice. Prepričajte se, da imate zahtevana dovoljenja, preden dokončate ta korak, to je CLI, zasnovan za potiskanje in registracijo slik vsebnika v Studiu.
- Zaženite naslednjo celico, da zgradite in registrirate naš vsebnik za obdelavo:
Ko se opravilo uspešno izvede, prejmete izhod, ki je videti takole:
Zaženite cevovod za obdelavo
Ko zgradite vsebnik, se pomaknite do Parallel_Data_Processing.rmd
mapa. Ta datoteka vsebuje niz korakov, ki nam pomagajo ustvariti naš cevovod za vzporedno obdelavo podatkov z uporabo SageMaker Processing. Naslednji diagram prikazuje korake cevovoda, ki jih dokončamo.
Začnite z izvajanjem koraka uvoza paketa. Uvozite zahtevane pakete RStudio skupaj s SDK SageMaker:
Zdaj nastavite svojo vlogo izvajanja SageMaker in podrobnosti okolja:
Inicializirajte vsebnik, ki smo ga zgradili in registrirali v prejšnjem koraku:
Od tu se podrobneje poglobimo v vsak korak obdelave.
Naložite nabor podatkov
Za naš primer uporabljamo Nabor podatkov o bančnem trženju iz UCI. Nabor podatkov smo že razdelili na več manjših datotek. Zaženite naslednjo kodo za nalaganje datotek v Amazon S3:
Ko so datoteke naložene, pojdite na naslednji korak.
Izvedite vzporedno obdelavo podatkov
V tem koraku vzamemo podatkovne datoteke in izvedemo inženiring funkcij za filtriranje določenih stolpcev. To opravilo je porazdeljeno med vrsto primerkov obdelave (v našem primeru uporabljamo dva).
Mi uporabljamo filter.R
datoteko za obdelavo podatkov in konfigurirajte opravilo na naslednji način:
Kot smo že omenili, morate pri izvajanju opravila vzporedne obdelave podatkov prilagoditi vhodni parameter glede na to, kako bodo podatki razdeljeni, in vrsto podatkov. Zato nudimo metodo razčlenjevanja z S3Prefix
:
Ko vstavite te parametre, bo SageMaker Processing podatke enakomerno porazdelil po številu izbranih primerkov.
Po potrebi prilagodite parametre in nato zaženite celico, da ustvarite primerek opravila.
Ustvarite nize podatkov o usposabljanju, testiranju in validaciji
V tem koraku vzamemo obdelane podatkovne datoteke, jih združimo in razdelimo na nabore podatkov za testiranje, usposabljanje in validacijo. To nam omogoča uporabo podatkov za izdelavo našega modela.
Mi uporabljamo process.R
datoteko za obdelavo podatkov in konfigurirajte opravilo na naslednji način:
Prilagodite potrebne parametre in nato zaženite celico, da ustvarite primerek opravila.
Zaženite cevovod
Ko so vsi koraki instancirani, zaženite cevovod obdelave za izvajanje vsakega koraka tako, da zaženete naslednjo celico:
Čas, ki traja vsako od teh opravil, se bo razlikoval glede na izbrano velikost primerka in število.
Pomaknite se do konzole SageMaker in si oglejte vsa opravila obdelave.
Začnemo s filtriranjem, kot je prikazano na naslednjem posnetku zaslona.
Ko je to končano, se cevovod premakne k opravilu obdelave podatkov.
Ko sta obe opravili končani, se pomaknite do svojega vedra S3. Poglej znotraj sagemaker-rstudio-example
mapa, pod processed
. Ogledate si lahko datoteke za nize podatkov o usposabljanju, testiranju in validaciji.
zaključek
Zaradi povečane količine podatkov, ki bodo potrebni za izdelavo vedno bolj izpopolnjenih modelov, moramo spremeniti svoj pristop k obdelavi podatkov. Vzporedna obdelava podatkov je učinkovita metoda pri pospeševanju generiranja nabora podatkov in če je združena s sodobnimi oblačnimi okolji in orodji, kot sta RStudio na SageMaker in SageMaker Processing, lahko odpravi veliko nediferenciranega težkega dela upravljanja infrastrukture, generiranja kode na osnovi kode in upravljanja okolja. V tej objavi smo predstavili, kako lahko implementirate vzporedno obdelavo podatkov znotraj RStudio na SageMaker. Priporočamo vam, da ga preizkusite tako, da klonirate repozitorij GitHub, in če imate predloge, kako izboljšati izkušnjo, pošljite težavo ali zahtevo za vlečenje.
Če želite izvedeti več o funkcijah in storitvah, ki se uporabljajo v tej rešitvi, glejte RStudio na Amazon SageMaker in Obdelava Amazon SageMaker.
O avtorjih
Raj Pathak je arhitekt rešitev in tehnični svetovalec za stranke Fortune 50 in srednje velikih FSI (bančništvo, zavarovalništvo, kapitalski trgi) po vsej Kanadi in Združenih državah. Raj je specializiran za strojno učenje z aplikacijami za ekstrakcijo dokumentov, transformacijo kontaktnega centra in računalniški vid.
Jake Wen je arhitekt rešitev pri AWS s strastjo do usposabljanja ML in obdelave naravnega jezika. Jake strankam malih in srednje velikih podjetij pomaga z oblikovanjem in vodstvom pri gradnji in uvajanju aplikacij v velikem obsegu. Izven službe se rad pohodi.
Aditi Rajniš je študent prvega letnika programskega inženirstva na Univerzi Waterloo. Njeni interesi vključujejo računalniški vid, obdelavo naravnega jezika in robno računalništvo. Prav tako je navdušena nad ozaveščanjem in zagovarjanjem STEM v skupnosti. V prostem času jo lahko najdemo med plezanjem po skalah, igranjem klavirja ali učenjem peke popolnega kolača.
Sean Morgan je arhitekt rešitev AI/ML pri AWS. Ima izkušnje na področju polprevodnikov in akademskih raziskav ter svoje izkušnje uporablja za pomoč strankam pri doseganju njihovih ciljev na AWS. V prostem času Sean aktivno prispeva in vzdržuje odprto kodo ter je vodja posebne interesne skupine za dodatke TensorFlow.
Paul Wu je arhitekt rešitev, ki dela v podjetju AWS Greenfield Business v Teksasu. Njegova strokovna področja vključujejo kontejnerje in migracije.
- AI
- ai art
- ai art generator
- imajo robota
- Amazon SageMaker
- Umetna inteligenca
- certificiranje umetne inteligence
- umetna inteligenca v bančništvu
- robot z umetno inteligenco
- roboti z umetno inteligenco
- programska oprema za umetno inteligenco
- Strojno učenje AWS
- blockchain
- blockchain konferenca ai
- coingenius
- pogovorna umetna inteligenca
- kripto konferenca ai
- dall's
- globoko učenje
- strojno učenje
- platon
- platon ai
- Platonova podatkovna inteligenca
- Igra Platon
- PlatoData
- platogaming
- lestvica ai
- sintaksa
- zefirnet