Sisseehitatud Amazon SageMaker XGBoost algoritm pakub populaarsete käitamiseks hallatavat konteinerit XGBoost masinõppe (ML) raamistik, mis pakub täiendavat mugavust täiustatud koolituse või järeldusfunktsioonide toetamiseks, nagu hajutatud koolitus, andmestiku jagamine suuremahuliste andmekogumite jaoks, A/B mudeli testiminevõi mitme mudeli järeldus lõpp-punktid. Samuti saate seda võimsat algoritmi laiendada, et see vastaks erinevatele nõuetele.
Koodi ja sõltuvuste pakkimine ühte konteinerisse on mugav ja jõuline meetod koodi pikaajaliseks hoolduseks, reprodutseeritavuse ja auditeerimise eesmärgil. Konteineri muutmine järgib täpselt põhikonteinerit ja väldib olemasolevate funktsioonide dubleerimist, mida põhikonteiner juba toetab. Selles postituses vaatame üle SageMaker XGBoost algoritmi konteineri sisemised tööd ja pakume pragmaatilisi skripte konteineri otseseks kohandamiseks.
SageMaker XGBoost konteineri struktuur
SageMakeri sisseehitatud XGBoost algoritm on pakitud eraldiseisva konteinerina, saadaval GitHubil, ja seda saab laiendada arendajasõbraliku Apache 2.0 avatud lähtekoodiga litsentsi alusel. Konteiner pakendab avatud lähtekoodiga XGBoost algoritm ja abitööriistad algoritmi käitamiseks teiste AWS-i pilveteenustega integreeritud SageMakeri keskkonnas. See võimaldab teil treenida XGBoosti mudeleid mitmesugustel andmeallikad, tegema partii ennustused võrguühenduseta andmetel või hosti järelduse lõpp-punkt reaalajas torujuhe.
Konteiner toetab koolitus- ja järeldusoperatsioone erinevate sisenemispunktidega. Järeldusrežiimi jaoks leiate kirje peamise funktsiooni alt serving.py skript. Reaalajas järelduste esitamiseks töötab konteiner a Kolb-põhine veebiserver et millal kutsutud, võtab vastu andmeid sisaldava HTTP-kodeeritud päringu, dekodeerib andmed XGBoosti DMatrix formaat, laadib mudelija tagastab an HTTP-kodeeritud vastus tagasi. Need meetodid on kapseldatud all Scoring Service klassi, mida saab ka suurel määral kohandada skriptirežiimi kaudu (vt allolevat lisa).
Treeningrežiimi (algoritmirežiimi) sisenemispunkt on programmi põhifunktsioon koolitus.py. Põhifunktsioon seadistab koolituskeskkonna ja kutsub välja koolitustöö funktsiooni. See on piisavalt paindlik, et võimaldada hajutatud või ühe sõlmega koolitust või utiliite, nagu ristvalideerimine. Treeningprotsessi keskmeks võib leida rongi_töö funktsiooni.
Konteinerit pakkivad Dockeri failid leiate aadressilt GitHub repo. Pange tähele, et konteiner on ehitatud kahes etapis: a baas kõigepealt ehitatakse konteiner, millele järgneb lõplik konteiner peal.
Lahenduse ülevaade
Saate lähtekoodi kaudu konteinerit muuta ja ümber ehitada. See hõlmab aga kõigi sõltuvuste ja pakettide kogumist ja taastamist nullist. Selles postituses käsitleme lihtsamat lähenemisviisi, mis muudab konteinerit otse juba ehitatud ja avalikult saadaval oleva SageMaker XGBoost algoritmi konteineri kujutise peal.
Selle lähenemisviisi puhul me vedama avaliku SageMaker XGBoost pildi koopia, muutke skripte või lisage pakette ja ehitage konteiner uuesti üles. Muudetud konteinerit saab hoida privaatses hoidlas. Nii väldime vahesõltuvuste ümberehitamist ja ehitame selle asemel otse ametlikku konteinerisse pakitud juba ehitatud teekide peale.
Järgmisel joonisel on ülevaade skriptist, mida kasutatakse avaliku põhipildi tõmbamiseks, pildi muutmiseks ja ümberehitamiseks ning selle privaatsesse üleslaadimiseks Amazoni elastsete konteinerite register (Amazon ECR) hoidla. The bash skript selle postituse lisatud koodis täidab kõik diagrammil näidatud töövoo etapid. Kaasnev märkmik näitab näidet, kus SageMaker XGBoost algoritmi konkreetse versiooni URI otsitakse esmalt ja edastatakse bash skript, mis asendab pildil kaks Pythoni skripti, ehitab selle uuesti üles ja lükkab muudetud pildi privaatsesse Amazon ECR-i hoidlasse. Saate kaasasolevat koodi oma vajaduste järgi muuta.
Eeldused
. GitHubi hoidla sisaldab selle postitusega kaasnevat koodi. Saate käivitada märkmiku näidis oma AWS-i kontol või kasutage pakutavat AWS CloudFormation virna sülearvuti juurutamiseks SageMakeri märkmiku abil. Teil on vaja järgmisi eeltingimusi:
- AWS-i konto.
- Vajalikud load SageMakeri partii teisendus- ja koolitustööde käitamiseks ning Amazon ECR-õigused. CloudFormationi mall loob näidise AWS-i identiteedi- ja juurdepääsuhaldus (IAM) rollid.
Rakendage lahendus
Lahendusressursside loomiseks AWS CloudFormationi abil valige Käivitage Stack:
Virn juurutab SageMakeri sülearvuti, mis on eelnevalt konfigureeritud GitHubi hoidla kloonimiseks. Läbiviimine märkmik sisaldab samme teatud versiooni avaliku SageMaker XGBoosti kujutise tõmbamiseks, selle muutmiseks ja kohandatud konteineri privaatsesse Amazon ECR-i hoidlasse lükkamiseks. Märkmik kasutab avalikkust Abalone andmestik Näidisena treenib mudelit, kasutades SageMaker XGBoost sisseehitatud treeningrežiimi, ja kasutab seda mudelit kohandatud pildil uuesti, et sooritada pakkteisendustöid, mis toovad koos SHAP väärtustega järeldusi.
Järeldus
SageMakeri sisseehitatud algoritmid pakuvad mitmesuguseid funktsioone ja funktsioone ning neid saab Apache 2.0 avatud lähtekoodiga litsentsi alusel veelgi laiendada. Selles postituses vaatasime üle, kuidas laiendada SageMaker XGBoost algoritmi tootmise sisseehitatud konteinerit, et see vastaks tootmisnõuetele, nagu tagasiulatuv kood ja API ühilduvus.
Näidismärkmik ja abimees skripte pakuvad mugavat lähtepunkti SageMaker XGBoosti konteineri kujutise kohandamiseks nii, nagu soovite. Proovi!
Lisa: Skriptirežiim
Skriptirežiim pakub võimalust muuta paljusid SageMakeri sisseehitatud algoritme, pakkudes liidest, mis asendab sisendite teisendamise ja mudeli laadimise eest vastutavaid funktsioone. Skriptirežiim ei ole nii paindlik kui konteineri otsene muutmine, kuid see pakub täielikult Pythoni-põhist marsruuti sisseehitatud algoritmi kohandamiseks, ilma et oleks vaja sellega otse töötada. laevalaadija.
Skriptirežiimis a user-module
on ette nähtud andmete dekodeerimise, mudeli laadimise ja prognooside tegemise kohandamiseks. Kasutajamoodul saab määratleda a transformer_fn
mis tegeleb kõigi päringu töötlemise aspektidega kuni vastuse ettevalmistamiseni. Või defineerimise asemel transformer_fn
, saate pakkuda kohandatud meetodeid model_fn
, input_fn
, predict_fn
ja output_fn
individuaalselt kohandada mudeli laadimist ja dekodeerimist ning sisendi ettevalmistamist ennustamiseks. Skriptirežiimi põhjalikuma ülevaate saamiseks vt Tooge oma mudel SageMakeri skriptirežiimiga.
Autoritest
Peyman Razaghi on AWS-i andmeteadlane. Tal on Toronto Ülikooli doktorikraad infoteoorias ja ta oli Los Angelese Lõuna-California ülikooli (USC) järeldoktor. Enne AWS-iga liitumist töötas Peyman Qualcommi personalisüsteemide insenerina, aidates kaasa mitmete märkimisväärsete rahvusvaheliste telekommunikatsioonistandardite loomisele. Ta on kirjutanud mitmeid teadusartikleid, mida on eelretsenseeritud statistika ja süsteemitehnoloogia valdkonnas, ning naudib lapsevanemaks olemist ja jalgrattasõitu maanteel väljaspool tööd.
- Münditark. Euroopa parim Bitcoini ja krüptobörs.
- Platoblockchain. Web3 metaversiooni intelligentsus. Täiustatud teadmised. TASUTA PÄÄS.
- CryptoHawk. Altcoini radar. Tasuta prooviversioon.
- Allikas: https://aws.amazon.com/blogs/machine-learning/customize-the-amazon-sagemaker-xgboost-algorithm-container/
- "
- 100
- juurdepääs
- majutada
- konto
- edasijõudnud
- algoritm
- algoritme
- Materjal: BPA ja flataatide vaba plastik
- juba
- Amazon
- API
- lähenemine
- PIIRKOND
- kaubad
- AWS
- ehitama
- sisseehitatud
- California
- Vali
- klass
- Cloud
- pilvteenustest
- kood
- Kollektsioneerimine
- täiesti
- Konteiner
- sisaldab
- mugavus
- Mugav
- loob
- tava
- andmed
- andmeteadlane
- juurutada
- juurutab
- erinev
- otse
- arutama
- jagatud
- laevalaadija
- insener
- keskkond
- näide
- laiendama
- FUNKTSIOONID
- Joonis
- esimene
- paindlik
- Järel
- formaat
- avastatud
- Raamistik
- funktsioon
- edasi
- GitHub
- suur
- omab
- Kuidas
- Kuidas
- HTTPS
- Identity
- pilt
- info
- sisend
- integreeritud
- Interface
- rahvusvaheliselt
- IT
- töö
- Tööturg
- õppimine
- litsents
- pikaajaline
- Los Angeles
- masin
- masinõpe
- TEEB
- Tegemine
- juhitud
- ML
- mudel
- mudelid
- rohkem
- märkmik
- number
- ametlik
- offline
- Operations
- Muu
- enda
- Punkt
- populaarne
- võimas
- ennustus
- Ennustused
- era-
- protsess
- tootma
- Produktsioon
- anda
- annab
- pakkudes
- avalik
- eesmärkidel
- reaalajas
- Hoidla
- taotleda
- Nõuded
- teadustöö
- Vahendid
- vastus
- vastutav
- Tulu
- läbi
- Marsruut
- jooks
- teadlane
- Teenused
- teenindavad
- varitsus
- tarkvara
- lahendus
- lähtekoodi
- Lõunapoolne
- Kestab
- standardite
- statistika
- Toetatud
- Toetamine
- Toetab
- süsteemid
- Allikas
- Läbi
- kokku
- töövahendid
- ülemine
- Toronto
- koolitus
- rongid
- Muutma
- transformeerivate
- Ülikool
- kasutama
- sort
- Wikipedia
- Töö
- oleks