Amazon SageMaker egy teljesen felügyelt gépi tanulási (ML) szolgáltatás. A SageMaker segítségével az adattudósok és fejlesztők gyorsan és egyszerűen építhetnek és taníthatnak ML-modelleket, majd közvetlenül telepíthetik azokat egy termelésre kész hosztolt környezetben. A Sagemaker integrált Jupyter authoring notebook példányt biztosít az adatforrásokhoz való könnyű hozzáféréshez feltárás és elemzés céljából, így Önnek nem kell szervereket kezelnie. Közös ML algoritmusokat is biztosít, amelyek úgy vannak optimalizálva, hogy hatékonyan fussanak rendkívül nagy adatokkal elosztott környezetben.
A SageMaker megköveteli, hogy az ML modell betanítási adatai jelen legyenek Amazon Simple Storage Service (Amazon S3), Amazon Elastic File System (Amazon EFS) vagy Amazon FSx for Luster (további információért lásd: Access Training Data). Ahhoz, hogy egy modellt a három támogatott tárolási szolgáltatáson kívül tárolt adatok felhasználásával betaníthasson, az adatokat először e szolgáltatások egyikébe (általában Amazon S3) be kell tölteni. Ehhez egy adatfolyam felépítésére van szükség (olyan eszközök használatával, mint pl Amazon SageMaker Data Wrangler), hogy adatokat vigyen át az Amazon S3-ba. Ez a megközelítés azonban adatkezelési kihívást jelenthet az adattároló médium életciklusának menedzselése, a hozzáférés-ellenőrzések kialakítása, az adatauditálás és így tovább, mindezt azzal a céllal, hogy a betanítási munka időtartamára beállítsák a képzési adatokat. Ilyen helyzetekben kívánatos lehet, hogy a SageMaker számára hozzáférhető adatok legyenek az ideiglenes betanítási példányokhoz csatolt efemer adathordozókon anélkül, hogy közbenső adatokat tárolnának az Amazon S3-ban.
Ez a bejegyzés bemutatja ennek a módját Hópehely adatforrásként, és az adatok letöltésével közvetlenül a Snowflake-ből egy SageMaker Training feladatpéldányba.
Megoldás áttekintése
Az általunk használt Kaliforniai lakhatási adatkészlet képzési adatkészletként ehhez a bejegyzéshez, és képezzen ki egy ML-modellt az egyes kerületek medián házértékének előrejelzésére. Ezeket az adatokat új táblázatként hozzáadjuk a Snowflake-hez. Egyéni edzéstárolót hozunk létre, amely közvetlenül a Snowflake táblából tölti le az adatokat a képzési példányba, ahelyett, hogy először egy S3 tárolóba töltené le az adatokat. Az adatok betanítási példányba való letöltése után az egyéni betanító szkript adat-előkészítési feladatokat hajt végre, majd betanítja az ML-modellt a XGBoost Becslő. A bejegyzéshez tartozó összes kód elérhető a GitHub repo.
A következő ábra a javasolt megoldás magas szintű architektúráját mutatja be, amely a Snowflake-et adatforrásként használja az ML modellek SageMakerrel való betanításához.
A munkafolyamat lépései a következők:
- Állítson be egy SageMaker notebookot és egy AWS Identity and Access Management (IAM) szerepkör megfelelő jogosultságokkal, amelyek lehetővé teszik a SageMaker elérését Amazon Elastic Container Registry (Amazon ECR), Secrets Manager és egyéb szolgáltatások az AWS-fiókjában.
- Tárolja Snowflake-fiókja hitelesítő adatait az AWS Secrets Managerben.
- Foglalja le az adatokat egy táblázatban a Snowflake-fiókjában.
- Hozzon létre egy egyéni tárolóképet az ML modell képzéséhez, és küldje el az Amazon ECR-hez.
- Indítson el egy SageMaker Training munkát az ML modell betanításához. A képzési példány lekéri a Snowflake hitelesítő adatait a Titkokkezelőből, majd ezeket a hitelesítő adatokat használja az adatkészlet letöltéséhez közvetlenül a Snowflake alkalmazásból. Ez az a lépés, amely szükségtelenné teszi az adatok első letöltését egy S3 tárolóba.
- A betanított ML modellt egy S3 vödörben tárolják.
Előfeltételek
Az ebben a bejegyzésben található megoldás megvalósításához rendelkeznie kell egy AWS-fiókEgy Hópehely fiók és a SageMaker ismerete.
Állítson be egy SageMaker-jegyzetfüzetet és egy IAM-szerepet
Az AWS CloudFormation segítségével készítünk egy SageMaker jegyzetfüzetet aws-aiml-blogpost-sagemaker-snowflake-example
és egy IAM szerepkör ún SageMakerSnowFlakeExample
. Válaszd ki Indítsa el a Stack alkalmazást az erőforrásokat telepíteni kívánt régió számára.
Tárolja a Snowflake hitelesítő adatait a Titkokkezelőben
Tárolja Snowflake hitelesítő adatait titokként a Titkokkezelőben. A titok létrehozására vonatkozó utasításokért lásd: Create an AWS Secrets Manager secret
.
- Nevezze meg a titkot
snowflake_credentials
. Erre azért van szükség, mert a kód besnowflake-load-dataset.ipynb
elvárja, hogy így hívják a titkot. - Hozd létre a titkot kulcs-érték párként két kulccsal:
- felhasználónév – Az Ön Snowflake felhasználóneve.
- jelszó – A Snowflake felhasználónévhez tartozó jelszó.
Foglalja le az adatokat egy táblázatban a Snowflake-fiókjában
Az adatok feldolgozásához hajtsa végre a következő lépéseket:
- A SageMaker konzolon válassza a lehetőséget notebookok a navigációs ablaktáblában.
- Válassza ki az aws-aiml-blogpost-sagemaker-snowflake-example jegyzetfüzetet, és válassza Nyissa meg a JupyterLabot.
- A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a
snowflake-load-dataset.ipynb
hogy nyissa meg a JupyterLabban. Ez a jegyzetfüzet lenyeli a Kaliforniai lakhatási adatkészlet egy Snowflake asztalhoz. - A jegyzetfüzetben szerkessze a következő cella tartalmát, hogy a helyőrző értékeket a hópehely-fiókjának megfelelőre cserélje:
- A Futtatás menüben válassza a lehetőséget Futtassa az összes cellát a kód futtatásához ebben a notebookban. Ez letölti az adatkészletet helyben a jegyzetfüzetbe, majd betölti a Snowflake táblába.
A következő kódrészlet a jegyzetfüzetben feldolgozza az adatkészletet a Snowflake-be. Lásd a snowflake-load-dataset.ipynb
notebook a teljes kódért.
- Zárja be a jegyzetfüzetet, miután minden cella hiba nélkül futott. Adatai mostantól elérhetők a Snowflake-ben. A következő képernyőképen látható a
california_housing
Hópehelyben létrehozott táblázat.
Futtassa a sagemaker-snowflake-example.ipynb
jegyzetfüzet
Ez a notebook egyéni képzési tárolót hoz létre Snowflake kapcsolattal, kivonja a Snowflake-ből az adatokat a tanítási példány átmeneti tárolójába anélkül, hogy azokat Amazon S3-ban helyezné el, és elosztott adatpárhuzamos (DDP) XGBoost modell betanítást hajt végre az adatokon. Egy ilyen kis adatkészleten végzett modellképzéshez nincs szükség DDP-tanításra; itt található egy újabb, nemrégiben kiadott SageMaker funkció illusztrálására.
Hozzon létre egy egyéni tárolót a képzéshez
Most létrehozunk egy egyéni tárolót az ML modell képzési munkához. Vegye figyelembe, hogy a Docker-tároló létrehozásához root hozzáférés szükséges. Ez a SageMaker jegyzetfüzet root hozzáféréssel lett telepítve. Ha a vállalati szervezeti szabályzatok nem teszik lehetővé a root hozzáférést a felhő-erőforrásokhoz, érdemes lehet a következő Docker-fájl- és shell-parancsfájlokat használni egy Docker-tároló létrehozásához máshol (például a laptopon), majd továbbítani az Amazon ECR-be. A tárolót a SageMaker XGBoost konténerkép alapján használjuk 246618743249.dkr.ecr.us-west-2.amazonaws.com/sagemaker-xgboost:1.5-1
a következő kiegészítésekkel:
- A Snowflake csatlakozó Pythonhoz az adatok letöltéséhez a Snowflake táblából a képzési példányba.
- Python-szkript a Secrets Managerhez való csatlakozáshoz a Snowflake hitelesítő adatok lekéréséhez.
A Snowflake-összekötő és a Python-szkript használata biztosítja, hogy a tárolóképet az ML-modell-oktatáshoz használó felhasználóknak ne kelljen ezt a kódot a betanítási szkriptjük részeként megírniuk, hanem használhatják ezt a már elérhető funkciót.
A következő a képzési tároló Docker-fájlja:
A konténerképet megépítik és elküldik az Amazon ECR-be. Ezt a képet az ML modell betanítására használják.
Tanítsd meg az ML modellt egy SageMaker Training feladattal
Miután sikeresen elkészítettük a konténerképet, és elküldtük az Amazon ECR-re, elkezdhetjük használni a modellképzéshez.
- Létrehozunk egy Python-szkriptet az adatok letöltéséhez a Snowflake alkalmazásból a Snowflake csatlakozó Pythonhoz, készítse elő az adatokat, majd használja a
XGBoost Regressor
az ML modell betanítására. Ez az a lépés, amikor az adatokat közvetlenül a betanítási példányra töltjük le, így elkerülhető, hogy az Amazon S3-at köztes tárolóként használjuk a betanítási adatokhoz. - Az elosztott adatokkal párhuzamos képzést úgy könnyítjük meg, hogy a betanítási kód letölti az adatok egy véletlenszerű részhalmazát, így minden képzési példány azonos mennyiségű adatot tölt le a Snowflake-ből. Ha például két betanító csomópont van, akkor mindegyik csomópont véletlenszerű mintát tölt le a Snowflake táblázat sorainak 50%-ából. Tekintse meg a következő kódot:
- Ezután biztosítjuk a képzési szkriptet a SageMaker SDK-nak
Estimator
a forráskönyvtárral együtt, így az általunk létrehozott összes szkript a képzési tárolóba kerülhet, amikor a betanítási feladat aEstimator.fit
eljárás:További információ: Készítsen egy Scikit-Learn képzési szkriptet.
- A modellképzés befejezése után a betanított modell elérhető a
model.tar.gz
fájl a régió alapértelmezett SageMaker tárolójában:
Most már telepítheti a betanított modellt az új adatokra vonatkozó következtetések levonásához! Az utasításokat lásd Hozza létre a végpontot, és helyezze üzembe a modellt.
Tisztítsuk meg
A jövőbeni költségek elkerülése érdekében törölje az erőforrásokat. Ezt az IAM-szerepkör és a SageMaker-jegyzetfüzet létrehozásához használt CloudFormation-sablon törlésével teheti meg.
A Snowflake erőforrásokat kézzel kell törölnie a Snowflake konzolról.
Következtetés
Ebben a bejegyzésben megmutattuk, hogyan tölthet le egy Snowflake táblában tárolt adatokat egy SageMaker Training munkapéldányra, és hogyan taníthat be egy XGBoost modellt egyéni képzési tároló használatával. Ez a megközelítés lehetővé teszi számunkra, hogy közvetlenül integráljuk a Snowflake-et adatforrásként egy SageMaker notebookba anélkül, hogy az adatokat az Amazon S3-ban tárolnánk.
Javasoljuk, hogy többet tudjon meg a Amazon SageMaker Python SDK és megoldást készítsen az ebben a bejegyzésben található mintamegvalósítással és egy, az Ön vállalkozása szempontjából releváns adatkészlettel. Ha kérdése vagy javaslata van, írjon megjegyzést.
A szerzőkről
Amit Arora az Amazon Web Services mesterséges intelligenciára és ML-re szakosodott építész, aki segít a vállalati ügyfeleknek felhő alapú gépi tanulási szolgáltatások használatában innovációik gyors skálázásához. Emellett adjunktus az MS adattudományi és analitikai programban a Washington DC-i Georgetown Egyetemen.
Divya Muralidharan az Amazon Web Services megoldástervezője. Szenvedélyesen segít a vállalati ügyfeleknek technológiával kapcsolatos üzleti problémák megoldásában. A Rochesteri Műszaki Egyetemen szerzett mesterképzést számítástechnikából. Az irodán kívül főzéssel, énekléssel és növénytermesztéssel tölti az idejét.
Szergej Ermolin az AWS vezető AIML megoldások építésze. Korábban az Intelnél a mély tanulás, az analitika és a nagy adatátviteli technológiák szoftvermegoldás-tervezője volt. A gépi tanulás és a mesterséges intelligencia iránti szenvedélyes Szilícium-völgyi veterán, Sergey a GPU előtti idők óta érdeklődik a neurális hálózatok iránt, amikor a Hewlett-Packardnál a kvarckristályok és a cézium atomórák öregedési viselkedésének előrejelzésére használta őket. Sergey MSEE és CS bizonyítványt szerzett a Stanfordon, valamint BS diplomát fizikából és gépészmérnökből a California State University, Sacramento Egyetemen. A munkán kívül Szergej szeret borozni, síelni, kerékpározni, vitorlázni és búvárkodni. Sergey önkéntes pilóta is Angyal repülés.
- SEO által támogatott tartalom és PR terjesztés. Erősödjön még ma.
- Platoblockchain. Web3 metaverzum intelligencia. Felerősített tudás. Hozzáférés itt.
- Forrás: https://aws.amazon.com/blogs/machine-learning/use-snowflake-as-a-data-source-to-train-ml-models-with-amazon-sagemaker/
- :is
- $ UP
- 1
- 10
- 7
- 8
- a
- Rólunk
- hozzáférés
- hozzáférhető
- Fiók
- kiegészítések
- Után
- ellen
- Öregedés
- AI
- AIML
- algoritmusok
- Minden termék
- lehetővé teszi, hogy
- már
- amazon
- Amazon FSx
- Amazon SageMaker
- Az Amazon Web Services
- összeg
- elemzés
- analitika
- és a
- Másik
- megközelítés
- megfelelő
- építészet
- VANNAK
- mesterséges
- mesterséges intelligencia
- AS
- társult
- At
- könyvvizsgálat
- szerző
- elérhető
- AWS
- AWS felhőképződés
- bázis
- alapján
- BE
- mert
- Nagy
- Big adatok
- épít
- Épület
- épült
- üzleti
- by
- Kalifornia
- hívott
- TUD
- Cellák
- igazolás
- kihívás
- díjak
- A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a
- Takarításra
- Órák
- felhő
- kód
- Oszlop
- Oszlopok
- megjegyzés
- Közös
- teljes
- számítógép
- Computer Science
- Csatlakozás
- kapcsolat
- Konzol
- Konténer
- tartalmaz
- tartalom
- ellenőrzések
- teremt
- készítette
- teremt
- létrehozása
- Hitelesítő adatok
- szokás
- Ügyfelek
- dátum
- adatkezelés
- Adatok előkészítése
- adat-tudomány
- adattárolás
- dátum idő
- Nap
- DDP
- Döntés
- mély
- mély tanulás
- alapértelmezett
- Fok
- telepíteni
- telepített
- fejlesztők
- közvetlenül
- megosztott
- kerület
- Dokkmunkás
- ne
- letöltés
- letöltések
- minden
- könnyen
- eredményesen
- bármelyik
- megszünteti
- máshol
- engedélyezve
- ösztönzése
- Endpoint
- Mérnöki
- biztosítja
- Vállalkozás
- Környezet
- hiba
- példa
- kivégez
- létezik
- elvárja
- kutatás
- Feltárása
- kivonatok
- rendkívüli módon
- megkönnyítése
- igazságos
- bizalmasság
- Funkció
- Ábra
- filé
- utolsó
- vezetéknév
- megfelelő
- következő
- következik
- A
- ból ből
- Tele
- teljesen
- funkcionalitás
- jövő
- kap
- szerzés
- GitHub
- megy
- Növekvő
- Legyen
- tekintettel
- segít
- itt
- magas szinten
- tart
- házigazdája
- hosts
- Ház
- ház
- Hogyan
- How To
- azonban
- HTML
- HTTPS
- Identitás
- kép
- végre
- végrehajtás
- importál
- in
- tartalmaz
- beleértve
- index
- információ
- újítások
- telepíteni
- példa
- Intézet
- utasítás
- integrálni
- integrált
- Intel
- Intelligencia
- érdekelt
- IT
- Munka
- kulcsok
- hordozható számítógép
- nagy
- keresztnév
- TANUL
- tanulás
- Szabadság
- életciklus
- ln
- helyileg
- gép
- gépi tanulás
- kezelése
- sikerült
- vezetés
- menedzser
- kezelése
- kézzel
- egyező
- mechanikai
- Média
- közepes
- Menü
- módszer
- ML
- modell
- modellek
- több
- mozog
- MS
- név
- Navigáció
- Szükség
- igények
- hálózatok
- neurális hálózatok
- Új
- következő
- csomópont
- csomópontok
- jegyzetfüzet
- szám
- tárgy
- of
- Office
- on
- ONE
- nyitva
- optimalizált
- érdekében
- szervezet
- Más
- kívül
- csomag
- pandák
- üvegtábla
- Párhuzamos
- rész
- szenvedély
- szenvedélyes
- Jelszó
- Előadja
- engedélyek
- Fizika
- pilóta
- csővezeték
- placeholder
- Telephelyek (Plants)
- Plató
- Platón adatintelligencia
- PlatoData
- Politikák
- benépesített
- állás
- előre
- Készít
- be
- korábban
- Fő
- problémák
- Program
- javasolt
- ad
- feltéve,
- biztosít
- cél
- Nyomja
- meglökött
- Piton
- Kérdések
- gyorsan
- véletlen
- gyorsan
- Inkább
- Olvass
- nemrég
- nyilvántartások
- csökkenti
- vidék
- felszabaduló
- cserélni
- jelentése
- kötelező
- megköveteli,
- Tudástár
- visszatérés
- Szerep
- gyökér
- SOR
- futás
- Sacramento
- sagemaker
- vitorlázás
- Megtakarítás
- Skála
- Tudomány
- tudósok
- scikit elsajátítható
- szkriptek
- sdk
- Titkos
- Szerverek
- szolgáltatás
- Szolgáltatások
- készlet
- Alak
- Héj
- kellene
- Műsorok
- jelentős
- Szilícium
- Silicon Valley
- Egyszerű
- óta
- helyzetek
- kicsi
- So
- szoftver
- megoldások
- Megoldások
- SOLVE
- forrás
- Források
- Hely
- szakember
- színpadra állítás
- kezdet
- Állami
- nyilatkozat
- Lépés
- Lépései
- tárolás
- memorizált
- alhálózatok
- sikeresen
- ilyen
- támogatás
- Támogatott
- rendszer
- táblázat
- feladatok
- Technologies
- Technológia
- sablon
- feltételek
- hogy
- A
- The Source
- azok
- Őket
- Ezek
- három
- Keresztül
- idő
- nak nek
- szerszámok
- Végösszeg
- Vonat
- kiképzett
- Képzések
- vonatok
- jellemzően
- egyetemi
- Frissítések
- us
- használ
- használó
- Felhasználók
- Völgy
- érték
- Értékek
- veterán
- önkéntes
- washington
- Út..
- háló
- webes szolgáltatások
- ami
- WHO
- lesz
- val vel
- belül
- nélkül
- Munka
- ír
- XGBoost
- te
- A te
- zephyrnet