از آنجایی که مشتریان بیشتر و بیشتری به دنبال قرار دادن بارهای کاری یادگیری ماشین (ML) در تولید هستند، فشار زیادی در سازمان ها برای کوتاه کردن چرخه عمر توسعه کد ML وجود دارد. بسیاری از سازمانها ترجیح میدهند کد ML خود را به سبک آماده تولید در قالب روشها و کلاسهای پایتون بنویسند و برخلاف سبک اکتشافی (نوشتن کد بدون استفاده از روشها یا کلاسها)، زیرا این به آنها کمک میکند کدهای آماده تولید را سریعتر ارسال کنند.
با آمازون SageMaker، شما می توانید از @دکوراتور از راه دور برای اجرای یک کار آموزشی SageMaker به سادگی با حاشیه نویسی کد پایتون خود با یک دکوراتور از راه دور @. را SageMaker Python SDK به طور خودکار محیط فضای کاری موجود شما و هر کد پردازش داده مرتبط و مجموعه داده ها را به یک کار آموزشی SageMaker که بر روی پلت فرم آموزشی SageMaker اجرا می شود ترجمه می کند.
اجرای یک تابع پایتون به صورت محلی اغلب به چندین وابستگی نیاز دارد که ممکن است با محیط اجرای محلی پایتون همراه نباشد. می توانید آنها را از طریق ابزارهای مدیریت بسته و وابستگی مانند نصب کنید شکستن or کوندا.
با این حال، سازمانهایی که در صنایع تحت نظارت مانند بانکداری، بیمه و مراقبتهای بهداشتی فعالیت میکنند، در محیطهایی فعالیت میکنند که حریم خصوصی دادهها و کنترلهای شبکهای را در اختیار دارند. این کنترلها اغلب عدم دسترسی به اینترنت را برای هیچ یک از محیطهایشان الزامی میکنند. دلیل چنین محدودیتی کنترل کامل بر ترافیک خروجی و ورودی است تا بتوانند شانس ارسال یا دریافت اطلاعات تایید نشده توسط بازیگران نادرست را از طریق شبکه خود کاهش دهند. همچنین اغلب الزامی است که چنین جداسازی شبکه را به عنوان بخشی از قوانین انطباق شنیداری و صنعتی داشته باشیم. وقتی نوبت به ML می رسد، دانشمندان داده را از دانلود هر بسته ای از مخازن عمومی مانند PyPI, آناکوندا، یا کوندا فورج.
برای فراهم کردن دسترسی دانشمندان داده به ابزارهای انتخابی خود و در عین حال رعایت محدودیت های محیطی، سازمان ها اغلب مخزن بسته های خصوصی خود را راه اندازی می کنند که در محیط خود میزبانی می شود. شما می توانید مخازن بسته های خصوصی را در AWS به روش های مختلف راه اندازی کنید:
در این پست روی گزینه اول تمرکز می کنیم: استفاده از CodeArtifact.
بررسی اجمالی راه حل
نمودار معماری زیر معماری راه حل را نشان می دهد.
مراحل سطح بالا برای پیاده سازی راه حل به شرح زیر است
- با استفاده از یک ابر خصوصی مجازی (VPC) بدون دسترسی به اینترنت راه اندازی کنید AWS CloudFormation قالب.
- از یک الگوی دوم CloudFormation برای راه اندازی CodeArtifact به عنوان یک مخزن PyPI خصوصی و ارائه اتصال به VPC استفاده کنید و یک Amazon SageMaker Studio محیطی برای استفاده از مخزن خصوصی PyPI.
- آموزش یک مدل طبقه بندی بر اساس منيست مجموعه داده با استفاده از دکوراتور از راه دور @ از SageMaker Python SDK منبع باز. تمام وابستگی ها از مخزن خصوصی PyPI دانلود خواهند شد.
توجه داشته باشید که استفاده از SageMaker Studio در این پست اختیاری است. شما می توانید انتخاب کنید که در هر محیط توسعه یکپارچه (IDE) مورد نظر خود کار کنید. شما فقط باید خود را راه اندازی کنید رابط خط فرمان AWS اعتبارنامه (AWS CLI) به درستی. برای اطلاعات بیشتر مراجعه کنید AWS CLI را پیکربندی کنید.
پیش نیازها
شما به یک حساب AWS با یک نیاز دارید هویت AWS و مدیریت دسترسی (من هستم) نقش با مجوز برای مدیریت منابع ایجاد شده به عنوان بخشی از راه حل. برای جزئیات به ایجاد یک حساب کاربری AWS.
یک VPC بدون اتصال به اینترنت راه اندازی کنید
یک پشته CloudFormation جدید ایجاد کنید با استفاده از vpc.yaml قالب. این الگو منابع زیر را ایجاد می کند:
- یک VPC با دو زیرشبکه خصوصی در دو منطقه دسترسی بدون اتصال به اینترنت
- یک نقطه پایانی Gateway VPC برای دسترسی به آمازون S3
- نقاط پایانی VPC رابط برای SageMaker، CodeArtifact، و چند سرویس دیگر برای اجازه دادن به منابع موجود در VPC برای اتصال به خدمات AWS از طریق AWS PrivateLink
یک نام پشته، مانند No-Internet
، و فرآیند ایجاد پشته را کامل کنید.
منتظر بمانید تا فرآیند ایجاد پشته کامل شود.
با استفاده از VPC یک مخزن خصوصی و SageMaker Studio راه اندازی کنید
گام بعدی این است که یک پشته دیگر CloudFormation را با استفاده از sagemaker_studio_codeartifact.yaml قالب. این الگو منابع زیر را ایجاد می کند:
یک نام پشته ارائه دهید و مقادیر پیش فرض را نگه دارید یا پارامترها را برای آن تنظیم کنید نام دامنه CodeArtifact, نام مخزن خصوصی, نام پروفایل کاربر برای SageMaker Studio، و نام مخزن عمومی PyPI بالادستی. شما نیز باید آن را ارائه کنیم نام پشته VPC در مرحله قبل ایجاد شد.
هنگامی که ایجاد پشته کامل شد، دامنه SageMaker باید در کنسول SageMaker قابل مشاهده باشد.
برای تأیید اینکه در SageMaker Studio اتصال اینترنتی وجود ندارد، SageMaker Studio را راه اندازی کنید. انتخاب کنید File
, New
و Terminal
برای راه اندازی یک ترمینال و تلاش برای حلقه هر منبع اینترنتی همانطور که در تصویر زیر نشان داده شده است، باید اتصال برقرار نشود.
یک طبقهبندی کننده تصویر را با استفاده از دکوراتور از راه دور @ با مخزن خصوصی PyPI آموزش دهید
در این قسمت از دکوراتور @remote برای اجرای a استفاده می کنیم PyTorch کار آموزشی که یک مدل طبقه بندی تصویر MNIST تولید می کند. برای رسیدن به این هدف، ما یک فایل پیکربندی را تنظیم می کنیم، اسکریپت آموزشی را توسعه می دهیم و کد آموزشی را اجرا می کنیم.
یک فایل پیکربندی را تنظیم کنید
راه اندازی کردیم a config.yaml
فایل و تنظیمات مورد نیاز برای انجام موارد زیر را ارائه دهید:
- اجرای یک شغل آموزش SageMaker در VPC بدون اینترنت که قبلاً ایجاد شده بود
- با اتصال به مخزن خصوصی PyPI که قبلا ایجاد شده است، بسته های مورد نیاز را دانلود کنید
فایل شبیه کد زیر است:
La Dependencies
فیلد حاوی مسیر به requirements.txt
، که شامل تمام وابستگی های مورد نیاز است. توجه داشته باشید که تمام وابستگی ها از مخزن خصوصی دانلود می شوند. را requirements.txt
فایل حاوی کد زیر است:
La PreExecutionCommands
بخش شامل دستور اتصال به مخزن خصوصی PyPI است. برای دریافت URL نقطه پایانی CodeArtifact VPC، از کد زیر استفاده کنید:
به طور کلی، ما دو نقطه پایانی VPC برای CodeArtifact دریافت می کنیم و می توانیم از هر یک از آنها در دستورات اتصال استفاده کنیم. برای جزئیات بیشتر مراجعه کنید از CodeArtifact از VPC استفاده کنید.
علاوه بر این، تنظیمات مانند execution role
, output location
و VPC configurations
در فایل کانفیگ ارائه شده است. این تنظیمات برای اجرای کار آموزشی SageMaker مورد نیاز است. برای دانستن بیشتر در مورد تمام تنظیمات پشتیبانی شده، مراجعه کنید فایل پیکربندی.
استفاده از آن اجباری نیست config.yaml
فایل به منظور کار با دکوراتور از راه دور @. این فقط یک روش تمیزتر برای ارائه تمام تنظیمات به دکوراتور @ راه دور است. همه پیکربندیها میتوانند مستقیماً در آرگومانهای دکوراتور ارائه شوند، اما این امر خوانایی و قابلیت نگهداری تغییرات را در دراز مدت کاهش میدهد. همچنین فایل کانفیگ را می توان توسط یک ادمین ایجاد کرد و با تمامی کاربران در یک محیط به اشتراک گذاشت.
اسکریپت آموزشی را توسعه دهید
در ادامه کد آموزشی را در فایل های ساده پایتون آماده می کنیم. ما کد را به سه فایل تقسیم کرده ایم:
- load_data.py – حاوی کد دانلود مجموعه داده MNIST است
- model.py – حاوی کد معماری شبکه عصبی مدل است
- train.py – حاوی کد آموزش مدل با استفاده از load_data.py و model.py است
In train.py
، باید تابع آموزشی اصلی را به صورت زیر تزئین کنیم:
اکنون آماده اجرای کد آموزشی هستیم.
کد آموزشی را با یک دکوراتور از راه دور @ اجرا کنید
ما می توانیم کد را از یک ترمینال یا از هر فرمان اجرایی اجرا کنیم. در این پست، ما از سلول نوت بوک SageMaker Studio برای نشان دادن این موضوع استفاده می کنیم:
اجرای دستور قبلی کار آموزشی را آغاز می کند. در گزارشها، میتوانیم ببینیم که بستهها را از مخزن خصوصی PyPI دانلود میکند.
این به اجرای یک دکوراتور @ راه دور که با یک مخزن خصوصی در محیطی بدون دسترسی به اینترنت کار می کند، پایان می دهد.
پاک کردن
برای پاکسازی منابع، دستورالعملهای موجود را دنبال کنید CLEANUP.md.
نتیجه
در این پست یاد گرفتیم که چگونه از قابلیت های دکوراتور @remote در حالی که هنوز در محیط های محدود بدون دسترسی به اینترنت کار می کنید به طور موثر استفاده کنیم. ما همچنین یاد گرفتیم که چگونه میتوانیم قابلیتهای مخزن خصوصی CodeArtifact را با کمک پشتیبانی از فایلهای پیکربندی در SageMaker یکپارچه کنیم. این راه حل توسعه تکراری را بسیار ساده تر و سریع تر می کند. یکی دیگر از مزایای اضافه شده این است که شما همچنان می توانید به نوشتن کد آموزشی به روشی طبیعی تر و شی گرا ادامه دهید و همچنان از قابلیت های SageMaker برای اجرای کارهای آموزشی در یک کلاستر راه دور با حداقل تغییرات در کد خود استفاده کنید. تمام کدهایی که به عنوان بخشی از این پست نشان داده شده است در موجود است مخزن GitHub.
به عنوان گام بعدی، ما شما را تشویق می کنیم که بررسی کنید قابلیت تزئین از راه دور @ و Python SDK API و در محیط و IDE انتخابی خود از آن استفاده کنید. نمونه های اضافی در دسترس هستند amazon-sagemaker-examples مخزن برای شروع سریع. همچنین می توانید پست را بررسی کنید کد یادگیری ماشین محلی خود را به عنوان مشاغل آموزش Amazon SageMaker با حداقل تغییرات کد اجرا کنید برای جزئیات بیشتر.
درباره نویسنده
ویکش پاندی یک معمار راه حل های متخصص یادگیری ماشین در AWS است که به مشتریان صنایع مالی کمک می کند تا راه حل هایی را بر روی هوش مصنوعی و ML مولد طراحی و بسازند. خارج از محل کار، Vikesh از امتحان کردن غذاهای مختلف و انجام ورزش در فضای باز لذت می برد.
- محتوای مبتنی بر SEO و توزیع روابط عمومی. امروز تقویت شوید.
- PlatoData.Network Vertical Generative Ai. به خودت قدرت بده دسترسی به اینجا.
- PlatoAiStream. هوش وب 3 دانش تقویت شده دسترسی به اینجا.
- PlatoESG. خودرو / خودروهای الکتریکی، کربن ، CleanTech، انرژی، محیط، خورشیدی، مدیریت پسماند دسترسی به اینجا.
- BlockOffsets. نوسازی مالکیت افست زیست محیطی. دسترسی به اینجا.
- منبع: https://aws.amazon.com/blogs/machine-learning/access-private-repos-using-the-remote-decorator-for-amazon-sagemaker-training-workloads/
- :است
- :نه
- $UP
- 1
- 10
- 100
- 12
- 23
- 7
- 8
- a
- درباره ما
- دسترسی
- دسترسی
- حساب
- رسیدن
- در میان
- بازیگران
- اضافه
- اضافی
- مدیر سایت
- مزیت - فایده - سود - منفعت
- AI
- معرفی
- اجازه دادن
- همچنین
- آمازون
- آمازون SageMaker
- آمازون خدمات وب
- an
- و
- دیگر
- هر
- API
- معماری
- هستند
- استدلال
- AS
- مرتبط است
- At
- بطور خودکار
- دسترس پذیری
- در دسترس
- AWS
- بانکداری
- مستقر
- BE
- زیرا
- ساختن
- اما
- by
- CAN
- قابلیت های
- شانس
- تبادل
- بررسی
- انتخاب
- را انتخاب کنید
- کلاس ها
- طبقه بندی
- ابر
- خوشه
- رمز
- COM
- بیا
- می آید
- کامل
- انطباق
- پیکر بندی
- اتصال
- اتصال
- ارتباط
- اتصال
- کنسول
- شامل
- ادامه دادن
- کنترل
- گروه شاهد
- میتوانست
- ایجاد شده
- ایجاد
- ایجاد
- مجوزها و اعتبارات
- مشتریان
- داده ها
- حریم خصوصی داده ها
- پردازش داده ها
- مجموعه داده ها
- به طور پیش فرض
- نشان دادن
- وابستگی
- گسترش
- طرح
- جزئیات
- توسعه
- پروژه
- مختلف
- مستقیما
- تقسیم شده
- do
- دامنه
- دانلود
- به طور موثر
- تشویق
- نقطه پایانی
- محیط
- محیط
- دوره ها
- مثال ها
- اعدام
- موجود
- FAIL
- غلط
- سریعتر
- کمی از
- رشته
- پرونده
- فایل ها
- مالی
- صنایع مالی
- نام خانوادگی
- شناور
- تمرکز
- به دنبال
- پیروی
- به دنبال آن است
- برای
- فرم
- از جانب
- کامل
- تابع
- دروازه
- مولد
- هوش مصنوعی مولد
- دریافت کنید
- گروه
- آیا
- داشتن
- بهداشت و درمان
- کمک
- کمک
- کمک می کند
- در سطح بالا
- میزبانی
- چگونه
- چگونه
- HTML
- HTTP
- HTTPS
- ID
- هویت
- تصویر
- طبقه بندی تصویر
- انجام
- پیاده سازی
- in
- صنعتی
- لوازم
- اطلاعات
- نصب
- دستورالعمل
- بیمه
- ادغام
- یکپارچه
- اینترنت
- دسترسی به اینترنت
- اتصال اینترنت
- به
- انزوا
- IT
- کار
- شغل ها
- JPG
- تنها
- نگاه داشتن
- دانستن
- بزرگ
- راه اندازی
- آموخته
- یادگیری
- wifecycwe
- پسندیدن
- لاین
- محلی
- به صورت محلی
- ورود
- طولانی
- به دنبال
- مطالب
- دستگاه
- فراگیری ماشین
- اصلی
- باعث می شود
- مدیریت
- مدیریت
- ابزارهای مدیریت
- حکم
- اجباری
- بسیاری
- ممکن است..
- روش
- حداقل
- ML
- مدل
- ماژول ها
- بیش
- بسیار
- چندگانه
- نام
- بومی
- طبیعی
- نیاز
- ضروری
- شبکه
- شبکه
- شبکه های عصبی
- جدید
- بعد
- نه
- دفتر یادداشت
- of
- غالبا
- on
- منبع باز
- کار
- عملیاتی
- مخالف
- گزینه
- or
- سفارش
- سازمان های
- دیگر
- خارج
- خارج از
- روی
- خود
- بسته
- بسته
- پارامترهای
- بخش
- مسیر
- مجوز
- محل
- سکو
- افلاطون
- هوش داده افلاطون
- PlatoData
- بازی
- پست
- ترجیح می دهند
- آماده
- قبلی
- خلوت
- خصوصی
- روند
- در حال پردازش
- تولید می کند
- تولید
- مشخصات
- ارائه
- ارائه
- عمومی
- فشار
- قرار دادن
- پــایتــون
- مارماهی
- به سرعت
- اماده
- دلیل
- دریافت
- كاهش دادن
- را کاهش می دهد
- تنظیم
- صنایع تنظیم شده
- دور
- مخزن
- ضروری
- نیاز
- منابع
- منابع
- احترام
- محدودیت
- محدودیت های
- محدود کننده
- نقش
- قوانین
- دویدن
- در حال اجرا
- اجرا می شود
- حکیم ساز
- دانشمندان
- sdk
- دوم
- بخش
- تیم امنیت لاتاری
- دیدن
- دانه
- در حال ارسال
- خدمات
- تنظیم
- چند
- به اشتراک گذاشته شده
- کشتی
- باید
- نشان داده شده
- نشان می دهد
- ساده
- ساده تر
- به سادگی
- So
- راه حل
- مزایا
- متخصص
- ورزش ها
- پشته
- آغاز شده
- گام
- مراحل
- هنوز
- opbevare
- سخت
- استودیو
- سبک
- زیر شبکه
- زیرشبکه ها
- چنین
- عرضه شده است
- عرضه
- پشتیبانی
- پشتیبانی
- قالب
- پایانه
- که
- La
- شان
- آنها
- آنجا.
- اینها
- آنها
- این
- سه
- از طریق
- به
- ابزار
- چشم انداز مشعل
- ترافیک
- آموزش
- ترجمه کردن
- درست
- امتحان
- دو
- بی پروا
- URL
- استفاده کنید
- استفاده
- کاربران
- با استفاده از
- ارزشها
- بررسی
- از طريق
- مجازی
- قابل رویت
- مسیر..
- راه
- we
- وب
- خدمات وب
- چه زمانی
- که
- در حین
- ویکیپدیا
- اراده
- با
- بدون
- مهاجرت کاری
- کارگر
- نوشتن
- نوشته
- یامل
- شما
- شما
- زفیرنت
- مناطق