Viime vuonna julkistimme yleisen saatavuuden RStudio Amazon SageMakerissa, alan ensimmäinen täysin hallittu RStudio Workbench integroitu kehitysympäristö (IDE) pilvessä. Voit nopeasti käynnistää tutun RStudio IDE:n ja soittaa ylös ja alas taustalla oleviin laskentaresursseihin keskeyttämättä työtäsi, mikä tekee koneoppimis- (ML) ja analytiikkaratkaisujen rakentamisesta helppoa mittakaavassa R:ssä.
Yhä kasvavan datamäärän myötä ML- ja tilastoanalyysiin käytettävät tietojoukot kasvavat rinnakkain. Tämä tuo mukanaan lisääntyneen kehitysajan ja laskentainfrastruktuurin hallinnan haasteet. Näiden haasteiden ratkaisemiseksi datatieteilijät ovat pyrkineet toteuttamaan rinnakkaisia tietojenkäsittelytekniikoita. Rinnakkais tietojenkäsittely tai tietojen rinnastaminen, ottaa suuria olemassa olevia tietojoukkoja ja jakaa ne useille prosessoreille tai solmuille toimiakseen datalla samanaikaisesti. Tämä voi mahdollistaa suurempien tietojoukkojen nopeamman käsittelyajan sekä optimoidun käytön laskennassa. Tämä voi auttaa ML-harjoittajia luomaan uudelleenkäytettäviä malleja tietojoukon luomista varten ja auttaa myös vähentämään laskentainfrastruktuurin kuormitusta ja kustannuksia.
Ratkaisun yleiskatsaus
Sisällä Amazon Sage Maker, monet asiakkaat käyttävät SageMaker-käsittely auttaa toteuttamaan rinnakkaista tietojenkäsittelyä. SageMaker Processingin avulla voit käyttää SageMakerin yksinkertaistettua, hallittua kokemusta tietojenkäsittelyn työkuormien suorittamiseen, kuten ominaisuuksien suunnitteluun, tietojen validointiin, mallien arviointiin ja mallien tulkintaan. Tämä tuo monia etuja, koska hallitavissa ei ole pitkäkestoista infrastruktuuria – prosessointiinstanssit hiipuvat, kun työt ovat valmiit, ympäristöjä voidaan standardoida säilöjen ja sisällä olevien tietojen avulla. Amazonin yksinkertainen tallennuspalvelu (Amazon S3) on natiivisti hajautettu esiintymien kesken, ja infrastruktuuriasetukset ovat joustavia muistin, laskennan ja tallennustilan suhteen.
SageMaker Processing tarjoaa vaihtoehtoja tietojen jakamiseen. Rinnakkaiseen tietojenkäsittelyyn on käytettävä ShardedByS3Key-vaihtoehto S3DataDistributionTypelle. Kun tämä parametri valitaan, SageMaker Processing ottaa toimitetun n esiintymiä ja jakaa objekteja 1/n objektit syöttötietolähteestä instansseissa. Jos esimerkiksi kahdessa ilmentymässä on neljä tietoobjektia, jokainen ilmentymä vastaanottaa kaksi objektia.
SageMaker Processing vaatii kolme komponenttia käsittelytöiden suorittamiseen:
- Säilön kuva, jossa on koodisi ja riippuvuutesi tietojenkäsittelyn työkuormien suorittamista varten
- Polku syötetietolähteeseen Amazon S3:ssa
- Polku lähtötietolähteeseen Amazon S3:ssa
Prosessi on kuvattu seuraavassa kaaviossa.
Tässä viestissä näytämme, kuinka voit käyttää RStudioa SageMakerissa yhdistämään useita SageMaker Processing -töitä rinnakkaisen tietojenkäsittelyputken luomiseen käyttämällä R-ohjelmointikieli.
Ratkaisu koostuu seuraavista vaiheista:
- Määritä RStudio-projekti.
- Rakenna ja rekisteröi käsittelysäiliön kuva.
- Suorita kaksivaiheinen käsittelyputki:
- Ensimmäinen vaihe ottaa useita datatiedostoja ja käsittelee ne useiden käsittelytöiden kesken.
- Toinen vaihe ketjuttaa tulostiedostot ja jakaa ne harjoitus-, testi- ja validointitietojoukoiksi.
Edellytykset
Täytä seuraavat edellytykset:
- Asenna RStudio SageMaker Workbenchissä. Lisätietoja on kohdassa Täysin hallinnoidun RStudion julkaiseminen Amazon SageMaker for Data Scientists -palvelussa.
- Luo käyttäjä RStudiolla SageMakerissa, jolla on asianmukaiset käyttöoikeudet.
Määritä RStudio-projekti
Voit määrittää RStudio-projektin suorittamalla seuraavat vaiheet:
- Siirry omaan Amazon SageMaker Studio ohjauspaneeli SageMaker-konsolissa.
- Käynnistä sovelluksesi RStudio-ympäristössä.
- Aloita uusi RStudio-istunto.
- varten Istunnon nimi, kirjoita nimi.
- varten Esimerkkilaji ja Kuva, käytä oletusasetuksia.
- Valita Aloita istunto.
- Siirry istuntoon.
- Valita Uusi projekti, VersionhallintaJa sitten Valitse Git.
- varten Tietovaraston URL-osoite, tulla sisään
https://github.com/aws-samples/aws-parallel-data-processing-r.git
- Jätä loput vaihtoehdot oletusasetuksiksi ja valitse Luo projekti.
Voit navigoida kohtaan aws-parallel-data-processing-R
hakemistossa Asiakirjat -välilehti nähdäksesi arkiston. Arkisto sisältää seuraavat tiedostot:
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
Rakenna kontti
Tässä vaiheessa rakennamme käsittelykonttikuvamme ja siirrämme sen Amazonin elastisten säiliörekisteri (Amazon ECR). Suorita seuraavat vaiheet:
- Siirry
Container_Build.rmd
tiedosto. - Asenna SageMaker Studio Image Build CLI suorittamalla seuraavan solun. Varmista, että sinulla on tarvittavat käyttöoikeudet ennen tämän vaiheen suorittamista. Tämä on CLI, joka on suunniteltu siirtämään ja rekisteröimään säilökuvia Studiossa.
- Suorita seuraava solu rakentaaksesi ja rekisteröidäksesi käsittelysäiliömme:
Kun työ on suoritettu onnistuneesti, saat tulosteen, joka näyttää seuraavalta:
Suorita käsittelyputki
Kun olet rakentanut säilön, siirry kohtaan Parallel_Data_Processing.rmd
tiedosto. Tämä tiedosto sisältää sarjan vaiheita, jotka auttavat meitä luomaan rinnakkaisen tietojenkäsittelyprosessin SageMaker Processingin avulla. Seuraava kaavio kuvaa suorittamamme putkilinjan vaiheet.
Aloita suorittamalla paketin tuontivaihe. Tuo tarvittavat RStudio-paketit SageMaker SDK:n kanssa:
Määritä nyt SageMaker-suoritusrooli ja ympäristötiedot:
Alusta kontti, jonka rakensimme ja rekisteröimme edellisessä vaiheessa:
Tästä eteenpäin sukeltaamme jokaiseen käsittelyvaiheeseen yksityiskohtaisemmin.
Lataa tietojoukko
Esimerkkissämme käytämme Pankkimarkkinoinnin tietojoukko UCI:ltä. Olemme jo jakaneet tietojoukon useisiin pienempiin tiedostoihin. Suorita seuraava koodi ladataksesi tiedostot Amazon S3:een:
Kun tiedostot on ladattu, siirry seuraavaan vaiheeseen.
Suorita tietojen rinnakkaiskäsittely
Tässä vaiheessa otamme datatiedostot ja suoritamme ominaisuussuunnittelun tiettyjen sarakkeiden suodattamiseksi. Tämä työ on hajautettu useille käsittelyesiintymille (esimerkissämme käytämme kahta).
Käytämme filter.R
tiedostoa tietojen käsittelemiseksi ja määritä työ seuraavasti:
Kuten aiemmin mainittiin, kun suoritat rinnakkaista tietojenkäsittelytyötä, sinun on säädettävä syöttöparametria sen mukaan, kuinka tiedot jaetaan, ja tietojen tyyppi. Siksi tarjoamme sirpalointimenetelmän S3Prefix
:
Kun olet lisännyt nämä parametrit, SageMaker Processing jakaa tiedot tasaisesti valittujen esiintymien lukumäärälle.
Säädä parametreja tarpeen mukaan ja suorita sitten solu suorittaaksesi työn.
Luo koulutus-, testi- ja validointitietojoukkoja
Tässä vaiheessa otamme käsitellyt datatiedostot, yhdistämme ne ja jaamme ne testi-, koulutus- ja validointitietojoukoiksi. Tämä antaa meille mahdollisuuden käyttää tietoja mallimme rakentamiseen.
Käytämme process.R
tiedostoa tietojen käsittelemiseksi ja määritä työ seuraavasti:
Säädä parametrit ovat tarpeen ja suorita sitten solu suorittaaksesi työn.
Suorita putki
Kun kaikki vaiheet on luotu, käynnistä käsittelyputki suorittaaksesi jokaisen vaiheen suorittamalla seuraavan solun:
Kunkin näistä töistä kuluva aika vaihtelee valitun ilmentymän koon ja lukumäärän mukaan.
Siirry SageMaker-konsoliin nähdäksesi kaikki käsittelytyösi.
Aloitamme suodatustyöstä, kuten seuraavassa kuvakaappauksessa näkyy.
Kun se on valmis, liukuhihna siirtyy tietojenkäsittelytyöhön.
Kun molemmat työt ovat valmiit, siirry S3-säihösi. Katso sisään sagemaker-rstudio-example
kansio, alla processed
. Näet juna-, testi- ja validointitietojoukon tiedostot.
Yhteenveto
Koska tietomäärä on kasvanut entistä kehittyneempien mallien rakentamiseen, meidän on muutettava lähestymistapaamme tietojen käsittelyyn. Rinnakkainen tietojenkäsittely on tehokas tapa nopeuttaa tietojoukon luomista, ja yhdistettynä nykyaikaisiin pilviympäristöihin ja -työkaluihin, kuten RStudio on SageMaker ja SageMaker Processing, se voi poistaa suuren osan infrastruktuurin hallinnan, yleiskoodin luomisen ja ympäristönhallinnan raskaita tekijöitä. Tässä viestissä kävimme läpi, kuinka voit toteuttaa rinnakkaisen tiedonkäsittelyn RStudiossa SageMakerissa. Suosittelemme sinua kokeilemaan sitä kloonaamalla GitHub-arkisto, ja jos sinulla on ehdotuksia kokemuksen parantamiseksi, lähetä ongelma tai vetopyyntö.
Lisätietoja tässä ratkaisussa käytetyistä ominaisuuksista ja palveluista on kohdassa RStudio Amazon SageMakerissa ja Amazon SageMaker -käsittely.
Tietoja kirjoittajista
Raj Pathak on ratkaisuarkkitehti ja tekninen neuvonantaja Fortune 50- ja keskikokoisille FSI-asiakkaille (pankkitoiminta, vakuutus, pääomamarkkinat) Kanadassa ja Yhdysvalloissa. Raj on erikoistunut koneoppimiseen dokumenttien purkamisen, yhteyskeskuksen muuntamisen ja tietokonenäön sovelluksilla.
Jake Wen on AWS:n ratkaisuarkkitehti, joka on intohimoinen ML-koulutukseen ja luonnollisen kielen käsittelyyn. Jake auttaa pienyritysasiakkaita suunnittelu- ja ajatusjohtajuudella rakentamaan ja ottamaan käyttöön sovelluksia mittakaavassa. Työn ulkopuolella hän harrastaa patikointia.
Aditi Rajnish on ensimmäisen vuoden ohjelmistotekniikan opiskelija Waterloon yliopistossa. Hänen kiinnostuksen kohteitaan ovat tietokonenäkö, luonnollisen kielen käsittely ja reunalaskenta. Hän on myös intohimoinen yhteisöpohjaiseen STEM-yhteistyöhön ja edunvalvontaan. Vapaa-ajallaan hän voi tavata kalliokiipeilyä, soittaa pianoa tai oppia leipomaan täydellisen sconsin.
Sean Morgan on AI/ML Solutions -arkkitehti AWS:ssä. Hänellä on kokemusta puolijohteiden ja akateemisen tutkimuksen aloilta, ja hän käyttää kokemustaan auttaakseen asiakkaita saavuttamaan tavoitteensa AWS:ssä. Vapaa-ajallaan Sean on aktiivinen avoimen lähdekoodin avustaja ja ylläpitäjä sekä TensorFlow-lisäosien sidosryhmien johtaja.
Paul Wu on ratkaisuarkkitehti, joka työskentelee AWS:n Greenfield Businessissa Texasissa. Hänen osaamisalueitaan ovat kontit ja migraatiot.
- AI
- ai taide
- ai taiteen generaattori
- ai robotti
- Amazon Sage Maker
- tekoäly
- tekoälyn sertifiointi
- tekoäly pankkitoiminnassa
- tekoäly robotti
- tekoälyrobotit
- tekoälyohjelmisto
- AWS-koneoppiminen
- blockchain
- blockchain-konferenssi ai
- coingenius
- keskustelullinen tekoäly
- kryptokonferenssi ai
- dall's
- syvä oppiminen
- google ai
- koneoppiminen
- Platon
- plato ai
- Platonin tietotieto
- Platon peli
- PlatonData
- platopeliä
- mittakaava ai
- syntaksi
- zephyrnet