فروشگاه ویژگی آمازون SageMaker یک قابلیت جدید از آمازون SageMaker که به دانشمندان داده و مهندسان یادگیری ماشین (ML) کمک می کند تا داده های انتخاب شده مورد استفاده در جریان کار آموزشی و پیش بینی را به طور ایمن ذخیره، کشف و به اشتراک بگذارند. همانطور که سازمانها برنامههای مبتنی بر داده را با استفاده از ML میسازند، دائماً در حال مونتاژ و جابجایی ویژگیها بین تیمهای عملکردی بیشتر و بیشتری هستند. این حرکت مداوم دادهها میتواند منجر به ناهماهنگی در ویژگیها شود و هنگام طراحی طرحهای ML که چندین تیم را در بر میگیرد، به یک گلوگاه تبدیل شود. به عنوان مثال، یک شرکت تجارت الکترونیک ممکن است چندین تیم علم داده و مهندسی داشته باشد که بر روی جنبه های مختلف پلت فرم خود کار می کنند. تیم جستجوی هسته بر درک پرس و جو و وظایف بازیابی اطلاعات تمرکز دارد. تیم موفقیت محصول مشکلات مربوط به بررسی مشتریان و سیگنال های بازخورد را حل می کند. تیم شخصی سازی از داده های جریان کلیک و جلسه برای ایجاد مدل های ML برای توصیه های شخصی استفاده می کند. علاوه بر این، تیمهای مهندسی دادهها مانند تیم Data Curation میتوانند اطلاعات خاص کاربر را که یک جزء ضروری است که سایر تیمها میتوانند از آن استفاده کنند، نظارت و اعتبارسنجی کنند. یک Feature Store به عنوان یک رابط یکپارچه بین این تیمها کار میکند و یک تیم را قادر میسازد تا از ویژگیهای تولید شده توسط تیمهای دیگر استفاده کند، که هزینه عملیاتی تکرار و جابجایی ویژگیها در بین تیمها را به حداقل میرساند.
آموزش یک مدل ML آماده برای تولید معمولاً شامل دسترسی به مجموعه متنوعی از ویژگیها است که همیشه در مالکیت و نگهداری تیم سازنده مدل نیستند. یک روش متداول برای سازمانهایی که از ML استفاده میکنند این است که این تیمهای علم داده را بهعنوان گروههای فردی تصور کنند که به طور مستقل با همکاری محدود کار میکنند. این منجر به جریانهای کاری ML بدون روش استاندارد شده برای به اشتراک گذاشتن ویژگیها در بین تیمها میشود، که به یک عامل محدودکننده حیاتی برای بهرهوری علم داده تبدیل میشود و ساخت مدلهای جدید و پیچیده را برای دانشمندان داده دشوارتر میکند. با فروشگاه ویژگی های مشترک، سازمان ها می توانند به صرفه جویی در مقیاس دست یابند. با در دسترس قرار گرفتن ویژگی های مشترک بیشتر، ساخت و نگهداری مدل های جدید برای تیم ها آسان تر و ارزان تر می شود. این مدلها میتوانند از ویژگیهایی استفاده کنند که قبلاً توسعه یافته، آزمایش شده و با استفاده از یک فروشگاه ویژگی متمرکز ارائه شدهاند.
این پست الگوهای معماری بین حسابهای ضروری را برای Feature Store نشان میدهد که میتواند در سازمانی با بسیاری از تیمهای مهندسی داده و علم داده که در حسابهای مختلف AWS کار میکنند، پیادهسازی شود. ما نحوه فعال کردن اشتراکگذاری ویژگیها بین حسابها را از طریق یک مثال گام به گام به اشتراک میگذاریم که میتوانید خودتان با کد موجود در ما امتحان کنید. GitHub repo.
نمای کلی فروشگاه ویژگی SageMaker
به طور پیشفرض، یک فروشگاه ویژگی SageMaker محلی برای حسابی است که در آن ایجاد شده است، اما همچنین میتواند توسط بسیاری از حسابها متمرکز و به اشتراک گذاشته شود. سازمانی با چندین تیم میتواند یک فروشگاه ویژگی متمرکز داشته باشد که در بین تیمها به اشتراک گذاشته شود، و همچنین فروشگاههای ویژگی جداگانه برای استفاده توسط تیمهای فردی. فروشگاههای جداگانه میتوانند گروههای ویژگیهایی را که ماهیت حساسی دارند یا مختص یک حجم کاری منحصربهفرد ML هستند، نگهداری کنند.
در این پست ابتدا با متمرکز فروشگاه ویژگی الگو. این الگو یک رابط مرکزی را تجویز میکند که از طریق آن تیمها میتوانند ویژگیهای جدید را ایجاد و منتشر کنند، و سایر تیمها (یا سیستمها) میتوانند ویژگیها را از آن استفاده کنند. همچنین تضمین می کند که شما یک منبع حقیقت واحد برای داده های ویژگی در سراسر سازمان خود دارید و مدیریت منابع را ساده می کند.
بعد، شما در مورد آن یاد می گیرید فروشگاه ویژگی های ترکیبی الگوی، که به تیمها اجازه میدهد تا فروشگاههای ویژگی خود را به صورت محلی در حساب خود نگه دارند، در حالی که همچنان میتوانند به ویژگیهای مشترک از فروشگاه ویژگیهای متمرکز دسترسی داشته باشند. این فروشگاههای ویژگی محلی معمولاً برای آزمایش علم داده ساخته میشوند. با ترکیب ویژگیهای مشترک فروشگاه متمرکز با ویژگیهای محلی، تیمها میتوانند ویژگیهای پیشرفته جدیدی را استخراج کنند که میتواند در ساخت مدلهای پیچیدهتر ML کمک کند. همچنین میتوانید از فروشگاههای محلی برای ذخیره دادههای حساسی استفاده کنید که به دلایل نظارتی و انطباق نمیتوانند در سراسر سازمان به اشتراک گذاشته شوند.
در نهایت، ما به طور خلاصه یک الگوی کمتر رایج را که شامل تکرار داده های ویژگی است، پوشش می دهیم.
فروشگاه ویژگی متمرکز
سازمانها میتوانند مزایای یک فروشگاه ویژگی را زمانی که متمرکز باشد، به حداکثر برسانند. این فروشگاه ویژگی متمرکز الگو نشان می دهد که چگونه خطوط لوله ویژگی از چندین حساب می توانند در یک فروشگاه ویژگی متمرکز بنویسند و چگونه چندین حساب دیگر می توانند این ویژگی ها را مصرف کنند. این یک الگوی رایج در بین شرکتهای با اندازه متوسط تا بزرگ است که در آن تیمهای متعدد، انواع مختلف داده یا بخشهای مختلف یک برنامه کاربردی را مدیریت میکنند.
فرآیند فرضیه سازی، انتخاب و تبدیل ورودی های داده به شکل قابل استفاده مناسب برای مدل های ML نامیده می شود. مهندسی ویژگی. خط لوله ویژگی تمام مراحل فرآیند مهندسی ویژگی مورد نیاز برای تبدیل دادههای خام به ویژگیهای مفیدی را که مدلهای ML به عنوان ورودی برای پیشبینیها میگیرند، در بر میگیرد. نگهداری خطوط لوله ویژگی فرآیندی پرهزینه، زمان بر و مستعد خطا است. همچنین، تکرار دستور العملها و تبدیلهای ویژگی در بین حسابها میتواند منجر به ناسازگاری و انحراف در ویژگیهای ویژگی شود. از آنجا که یک فروشگاه ویژگی متمرکز به اشتراک گذاری دانش را تسهیل می کند، تیم ها مجبور نیستند دستور العمل های ویژگی ها را دوباره ایجاد کنند و خطوط لوله را از ابتدا در هر پروژه بازنویسی کنند.
در این الگو، به جای نوشتن ویژگیها به صورت محلی در یک فروشگاه ویژگی خاص حساب، ویژگیها در یک فروشگاه ویژگی متمرکز نوشته میشوند. فروشگاه متمرکز به عنوان خزانه مرکزی عمل می کند و یک راه استاندارد برای دسترسی و حفظ ویژگی ها برای همکاری بین تیمی ایجاد می کند. این به عنوان یک توانمند و شتاب دهنده برای پذیرش هوش مصنوعی عمل می کند، زمان عرضه راه حل های ML را کاهش می دهد و امکان حاکمیت متمرکز و کنترل دسترسی به ویژگی های ML را فراهم می کند. میتوانید به حسابها، کاربران یا نقشهای خارجی برای خواندن و نوشتن گروههای ویژگی منفرد مطابق با خطمشیهای دسترسی به دادههای خود دسترسی داشته باشید. AWS توصیه میکند که حداقل دسترسی را فقط به گروههایی از ویژگیهایی که برای عملکرد شغلی خود نیاز دارید اعمال کنید. این توسط زیربنایی مدیریت می شود هویت AWS و مدیریت دسترسی سیاست های (IAM) می توانید کنترل دسترسی را با تگ های گروه ویژگی و شرایط IAM تصمیم بگیرید که کدام مدیران می توانند اقدامات خاصی را انجام دهند. هنگامی که از یک فروشگاه متمرکز در مقیاس استفاده میکنید، مهم است که مدیریت ویژگیهای مناسب را نیز اجرا کنید تا مطمئن شوید که گروههای ویژگی به خوبی طراحی شدهاند، خطوط لوله مشخصهای مستند و پشتیبانی میشوند، و فرآیندهایی برای اطمینان از کیفیت ویژگیها وجود دارد. این نوع حکومت به جلب اعتماد مورد نیاز برای استفاده مجدد از ویژگی ها در تیم ها کمک می کند.
قبل از بررسی یک مثال، اجازه دهید برخی از مفاهیم کلیدی فروشگاه ویژگی را شناسایی کنیم. اولین، گروه های ویژگی گروههای منطقی از ویژگیها هستند که معمولاً از یک خط لوله مشخصه سرچشمه میگیرند. یک فروشگاه آفلاین حاوی حجم زیادی از دادههای ویژگی تاریخی است که برای ایجاد دادههای آموزشی و آزمایشی برای توسعه مدل یا توسط برنامههای کاربردی دستهای برای امتیازدهی مدل استفاده میشود. هدف از فروشگاه آنلاین is to serve these same features in real time with low latency. Unlike the offline store, which is append-only, the goal of the online store is to serve the most recent feature values. Behind the scenes, Feature Store automatically carries out data synchronization between the two stores. If you ingest new feature values into the online store, they’re automatically appended to the offline store. However, you can also create offline and online s
tores separately if this is a requirement for your team or project.
نمودار زیر سه تیم کاربردی را به تصویر میکشد که هر کدام خط لوله ویژگیهای خاص خود را دارند که به یک گروه ویژگی در یک فروشگاه ویژگی متمرکز مینویسند.
حساب شخصیسازی دادههای جلسه کاربر جمعآوریشده از یک برنامه کاربردی رو به مشتری را مدیریت میکند و دارای خط لوله ویژگی است که یک گروه ویژگی به نام Sessions را با ویژگیهای مشتق شده از دادههای جلسه تولید میکند. این خط لوله مقادیر ویژگی های تولید شده را در فروشگاه ویژگی متمرکز می نویسد. به همین ترتیب، خط لوله ویژگی در حساب موفقیت محصول مسئول تولید ویژگیها در گروه ویژگی نظرات است و حساب Data Curation ویژگیهایی را در گروه ویژگی کاربران تولید میکند.
حساب فروشگاه ویژگی متمرکز تمام ویژگی های دریافت شده از سه حساب تولید کننده را در خود نگه می دارد, به سه گروه ویژگی نگاشت: جلسات، نظرات و کاربران. خطوط لوله ویژگی می توانند با فرض یک نقش IAM خاص که در حساب فروشگاه متمرکز ایجاد می شود، به فروشگاه ویژگی متمرکز بنویسند. در ادامه در این پست درباره نحوه فعال کردن این نقش بین حسابی بحث می کنیم. حسابهای خارجی همچنین میتوانند ویژگیها را از گروههای ویژگی در فروشگاه متمرکز برای آموزش یا استنباط جستجو کنند، همانطور که در نمودار معماری قبلی نشان داده شده است. برای آموزش، می توانید نقش IAM را از فروشگاه متمرکز در نظر بگیرید و اکانت متقابل را اجرا کنید آمازون آتنا پرس و جو (همانطور که در نمودار نشان داده شده است)، و یا شروع یک آمازون EMR or پردازش SageMaker کار برای ایجاد مجموعه داده های آموزشی. در صورت استنتاج بلادرنگ، میتوانید ویژگیهای آنلاین را مستقیماً از طریق همان نقش فرض شده IAM برای دسترسی بین حسابها بخوانید.
در این مدل، فروشگاه ویژگی متمرکز معمولاً در یک حساب تولیدی قرار دارد. برنامههایی که از این فروشگاه استفاده میکنند میتوانند در این حساب یا در حسابهای دیگر با دسترسی متقابل به فروشگاه ویژگی متمرکز زندگی کنند. میتوانید کل این ساختار را در محیطهای پایینتر، مانند توسعه یا مرحلهبندی، برای آزمایش تغییرات زیرساختی قبل از ارتقای آنها به تولید، تکرار کنید.
فروشگاه ویژگی های ترکیبی
در این بخش، یک نوع از الگوی فروشگاه ویژگی متمرکز به نام the را مورد بحث قرار می دهیم فروشگاه ویژگی های ترکیبی الگو. در مهندسی ویژگی، یک روش معمول ترکیب ویژگی های موجود برای استخراج ویژگی های جدید است. وقتی تیمها ویژگیهای مشترک فروشگاه متمرکز را با ویژگیهای محلی در فروشگاه ویژگیهای خود ترکیب میکنند، میتوانند ویژگیهای پیشرفته جدیدی را برای کمک به ساخت مدلهای داده پیچیدهتر استخراج کنند. از بخش قبل می دانیم که فروشگاه متمرکز دسترسی به ویژگی های خارجی و استفاده از آنها را با مجموعه ویژگی های موجود برای ترکیب و تکامل ویژگی های جدید برای هر تیم علم داده آسان می کند.
امنیت و انطباق یکی دیگر از موارد استفاده تیم ها برای حفظ یک فروشگاه ویژگی های خاص تیم علاوه بر دسترسی به ویژگی ها از فروشگاه متمرکز است. بسیاری از تیم ها به حقوق دسترسی خاصی نیاز دارند که به همه افراد سازمان اعطا نمی شود. برای مثال، ممکن است امکان انتشار ویژگیهایی که از دادههای حساس استخراج میشوند در یک فروشگاه ویژگی متمرکز در سازمان امکانپذیر نباشد.
در نمودار معماری زیر، فروشگاه ویژگی متمرکز حسابی است که تمام ویژگیهای دریافتی از خطوط لوله چند ویژگی را در یک مخزن مرکزی جمعآوری و فهرستبندی میکند. در این مثال، حساب فروشگاه ترکیبی متعلق به تیم Core Search است. این حساب مصرف کننده ویژگی های قابل اشتراک گذاری از فروشگاه متمرکز است. علاوه بر این، این حساب دادههای کلمه کلیدی کاربر جمعآوریشده از طریق یک برنامه جستجوی مشتری را مدیریت میکند.
این حساب فروشگاههای آفلاین و آنلاین محلی خود را دارد. این فروشگاههای محلی توسط یک خط لوله ویژگی پر شدهاند که به صورت محلی برای جذب دادههای کلمه کلیدی درخواست کاربر و تولید ویژگیها تنظیم شده است. این ویژگی ها تحت یک گروه ویژگی به نام کلمات کلیدی گروه بندی می شوند. Feature Store به طور پیش فرض به طور خودکار یک را ایجاد می کند چسب AWS جدول برای این گروه ویژگی که در کاتالوگ داده چسب AWS در این حساب ثبت شده است. ابرداده این جدول به مکان Amazon S3 گروه ویژگی در فروشگاه آفلاین این حساب اشاره دارد.
حساب فروشگاه ترکیبی همچنین میتواند به گروههای ویژگی Sessions، Reviews و Users از فروشگاه متمرکز دسترسی داشته باشد. میتوانید دسترسی بین حسابها را براساس نقش فعال کنید که در بخشهای بعدی به آن میپردازیم. دانشمندان و محققان داده میتوانند از آتنا برای جستجو در گروههای ویژگی که به صورت محلی ایجاد شدهاند استفاده کنند و این ویژگیهای داخلی را با ویژگیهای خارجی مشتق شده از فروشگاه متمرکز برای آزمایشهای علم داده بپیوندند.
نمای کلی دسترسی بین حسابها
این بخش یک نمای کلی از نحوه فعال کردن دسترسی بین حسابها برای فروشگاه ویژگی بین دو حساب با استفاده از نقش فرضی از طریق ارائه میدهد. سرویس رمز امنیتی AWS (AWS STS). AWS STS یک سرویس وب است که به شما امکان می دهد اعتبارنامه های موقت و با امتیاز محدود را برای کاربران IAM درخواست کنید. AWS STS مجموعهای از اعتبارنامههای امنیتی موقت را برمیگرداند که میتوانید از آنها برای دسترسی به منابع AWS استفاده کنید که ممکن است معمولاً به آنها دسترسی نداشته باشید. این اعتبارنامه های موقت شامل شناسه کلید دسترسی، کلید دسترسی مخفی و رمز امنیتی است.
برای نشان دادن این فرآیند، فرض کنید دو حساب A و B داریم، همانطور که در نمودار زیر نشان داده شده است.
حساب B دارای یک فروشگاه متمرکز آنلاین و آفلاین ویژگی است. حساب A نیاز به دسترسی به فروشگاههای آنلاین و آفلاین موجود در حساب B دارد. برای فعال کردن این کار، یک نقش در حساب B ایجاد میکنیم و اجازه میدهیم حساب A آن نقش را با استفاده از AWS STS در نظر بگیرد. این امکان را به حساب A می دهد تا مانند حساب B رفتار کند، با مجوز برای انجام اقدامات خاصی که توسط نقش مشخص شده است. خدمات AWS مانند SageMaker (کارهای پردازش و آموزش، نقاط پایانی) و AWS لامبدا استفاده شده از حساب A می تواند نقش IAM ایجاد شده در حساب B را با استفاده از یک کلاینت AWS STS در نظر بگیرد (بلاک کد را در ادامه این پست ببینید). این به آنها مجوزهای لازم برای دسترسی به منابعی مانند Amazon S3، Athena و AWS Glue Data Catalog در داخل حساب B را می دهد. پس از اینکه خدمات در حساب A مجوزهای لازم را برای منابع دریافت کردند، می توانند به فروشگاه آفلاین و آنلاین در حساب دسترسی داشته باشند. ب. بسته به انتخاب سرویس خود، شما همچنین باید نقش اجرای IAM را برای آن سرویس به خط مشی مورد اعتماد نقش IAM بین حسابی در حساب B اضافه کنید. در بخش بعدی به تفصیل درباره این موضوع صحبت می کنیم.
نمودار معماری قبلی نشان می دهد که چگونه حساب A نقشی را از حساب B برای خواندن و نوشتن در فروشگاه های آنلاین و آفلاین موجود در حساب B به عهده می گیرد. هفت مرحله در نمودار به شرح زیر است:
- حساب B نقشی را ایجاد می کند که می تواند توسط دیگران بر عهده بگیرد (برای مورد استفاده ما، حساب A).
- حساب A نقش IAM را از حساب B با استفاده از AWS STS به عهده می گیرد. حساب A اکنون می تواند اعتبارنامه های موقتی را ایجاد کند که می تواند برای ایجاد سرویس گیرندگان AWS استفاده شود که طوری رفتار می کنند که گویی در داخل حساب B هستند.
- In Account A, SageMaker and other service
clients (such as Amazon S3 and Athena) are created using the temporary credentials via the assumed role. - مشتریان خدمات در حساب A اکنون می توانند گروه های ویژگی ایجاد کرده و مقادیر ویژگی ها را با استفاده از AWS SDK در فروشگاه آنلاین متمرکز حساب B پر کنند.
- فروشگاه آنلاین در حساب B به طور خودکار با فروشگاه آفلاین و همچنین در حساب B همگام می شود.
- سرویس گیرنده Athena در داخل حساب A، جستارهای بین حسابی را برای خواندن، گروه بندی و تحقق مجموعه ویژگی ها با استفاده از جداول Athena در حساب B اجرا می کند. از آنجایی که فروشگاه آفلاین در حساب B وجود دارد، جداول AWS Glue مربوطه، ورودی های کاتالوگ فراداده، و اشیاء S3 وجود دارد. همه در حساب B قرار دارند. حساب A می تواند از نقش AWS STS برای پرس و جو کردن ویژگی های آفلاین (اشیاء S3) در حساب B استفاده کند.
- نتایج جستجوی Athena به عنوان مجموعه داده های ویژگی به سطل S3 حساب A برگردانده می شود.
اعتبارنامههای موقت از API AWS STS GetSessionToken استفاده میکنند و به 1 ساعت محدود میشوند. با استفاده از آن می توانید مدت زمان جلسه خود را افزایش دهید RefreshableCredentials، یک کلاس Botocore که می تواند به طور خودکار اعتبارنامه ها را برای کار با برنامه های طولانی مدت شما فراتر از بازه زمانی 1 ساعته به روز کند. یک نمونه دفترچه یادداشت نشان دادن این در مخزن GitHub ما در دسترس است.
ایجاد دسترسی متقابل حساب
این بخش تمام مراحل ایجاد نقشها، خطمشیها و مجوزهای دسترسی بین حسابها را برای فعال کردن قابلیت اشتراکگذاری ویژگیها بین حسابهای A و B با توجه به معماری ما شرح میدهد.
یک نقش دسترسی به فروشگاه ویژگی ایجاد کنید
از حساب B، یک نقش دسترسی به فروشگاه ویژگی ایجاد می کنیم. این نقشی است که سرویس های AWS در داخل حساب A برای دسترسی به منابع در حساب B بر عهده می گیرند.
- در کنسول IAM، در صفحه پیمایش، را انتخاب کنید نقش.
- را انتخاب کنید نقش ایجاد کنید.
- را انتخاب کنید یک حساب AWS دیگر.
- برای شناسه حساب، شناسه حساب 12 رقمی حساب B را وارد کنید.
- را انتخاب کنید بعدی: مجوزها.
- در ویرایش بخش، سیاست های مدیریت شده AWS زیر را جستجو و پیوست کنید:
AmazonSageMakerFullAccess
(شما می توانید این را به حداقل امتیازات بر اساس مورد استفاده خود محدود کنید)AmazonSageMakerFeatureStoreAccess
- یک خط مشی سفارشی را به این نقش جدید ایجاد کرده و ضمیمه کنید (نام سطل S3 را در حساب A ارائه دهید که در آن نتایج جستجوی Athena جمع آوری شده در حساب B نوشته شده است):
وقتی از این نقش متقابل جدید AWS STS از حساب A استفاده میکنید، میتواند درخواستهای Athena را در برابر محتوای فروشگاه آفلاین در حساب B اجرا کند. خطمشی سفارشی به آتنا (داخل حساب B) اجازه میدهد نتایج را در یک سطل نتایج در حساب بازنویسی کند. الف. قبل از ایجاد خط مشی قبلی، مطمئن شوید که این سطل نتایج در حساب A ایجاد شده است.
از طرف دیگر، میتوانید به فروشگاه ویژگیهای متمرکز در حساب B اجازه دهید تمام نتایج جستجوی Athena را در یک سطل S3 حفظ کند. در این مورد، شما باید سیاست های دسترسی خواندن آمازون S3 را برای حساب های خارجی تنظیم کنید تا نتایج ذخیره شده (اشیاء S3) را بخوانند.
- پس از پیوست کردن خط مشی ها، انتخاب کنید بعدی.
- یک نام برای این نقش وارد کنید (مثلاً، بین حساب-فرض-نقش).
- بر خلاصه صفحه برای نقش ایجاد شده، در زیر روابط اعتماد، انتخاب کنید رابطه اعتماد را ویرایش کنید.
- سند خط مشی کنترل دسترسی را مطابق کد زیر ویرایش کنید:
کد قبلی SageMaker و Athena را به عنوان خدمات در بخش Principal اضافه می کند. اگر میخواهید حسابها یا نقشهای خارجی بیشتری این نقش را بر عهده بگیرند، میتوانید ARNهای مربوط به آنها را در این بخش اضافه کنید.
یک نمونه نوت بوک SageMaker ایجاد کنید
از حساب A، یک نمونه نوت بوک SageMaker با نقش اجرای IAM ایجاد کنید. این نقش به نوت بوک SageMaker در حساب A مجوزهای لازم را برای اجرای اقدامات در فروشگاه ویژگی در حساب B می دهد. همچنین، اگر از نوت بوک SageMaker استفاده نمی کنید و به جای آن از Lambda استفاده می کنید، باید یک نقش برای Lambda با همان نقش ایجاد کنید. سیاست های پیوست شده همانطور که در این بخش نشان داده شده است.
به طور پیش فرض، هنگام ایجاد یک نقش اجرایی جدید برای یک نوت بوک SageMaker، خط مشی های زیر پیوست می شوند:
AmazonSageMaker-ExecutionPolicy
AmazonSageMakerFullAccess
ما باید دو خط مشی سفارشی اضافی ایجاد و پیوست کنیم. ابتدا، یک خط مشی سفارشی با کد زیر ایجاد کنید، که به نقش اجرایی در حساب A اجازه می دهد تا برخی از اقدامات S3 مورد نیاز برای تعامل با فروشگاه آفلاین در حساب B را انجام دهد:
همچنین می توانید خط مشی مدیریت شده AWS را پیوست کنید AmazonSageMakerFeatureStoreAccess
، اگر نام سطل S3 فروشگاه آفلاین شما شامل SageMaker
کلمه کلیدی.
دوم، خط مشی سفارشی زیر را ایجاد کنید، که به نوت بوک SageMaker در حساب A اجازه می دهد نقش را به عهده بگیرد (cross-account-assume-role
) ایجاد شده در حساب B:
We know Account A can access the online and offline store in Account B. When Account A assumes the cross-account AWS STS role of Account B, it can run Athena queries inside Account B against its offline store. However, the results of these queries (feature datasets) need to be saved in Account A’s S3 bucket in order to enable model training. Therefore, we need to create a bucket in Account A that can store the Athena query results as well as create a bucket policy (see the following code). This policy allows the cross-account AWS STS role to write and read objects in this
سطل:
سیاست رابطه اعتماد را اصلاح کنید
از آنجا که ما یک نقش اجرای IAM را در حساب A ایجاد کردیم، از ARN این نقش برای اصلاح خط مشی روابط اعتماد نقش فرضی بین حساب در حساب B استفاده می کنیم:
فرآیند راه اندازی را تأیید کنید
پس از تنظیم همه نقشها و خطمشیهای همراه، میتوانید با اجرای دفترچههای نمونه در GitHub repo. بلوک کد زیر گزیده ای از دفترچه یادداشت نمونه است و باید در یک نوت بوک SageMaker اجرا شود که در حساب A اجرا می شود. این نشان می دهد که چگونه می توانید با استفاده از AWS STS نقش بین حساب را از حساب B در نظر بگیرید. AssumeRole تماس API. این تماس مجموعهای از اعتبارنامههای موقت را برمیگرداند که حساب A میتواند برای ایجاد هر سرویس گیرنده استفاده کند. وقتی از این کلاینت ها استفاده می کنید، کد شما از مجوزهای نقش فرض شده استفاده می کند و به گونه ای عمل می کند که گویی متعلق به حساب B است. برای اطلاعات بیشتر، رجوع کنید به فرض_نقش در اسناد AWS SDK برای پایتون (بوتو 3).
پس از ایجاد مشتریان SageMaker طبق مثال کد قبلی در حساب A، می توانید گروه های ویژگی ایجاد کنید و ویژگی ها را در فروشگاه آنلاین و آفلاین متمرکز حساب B ایجاد کنید. برای اطلاعات بیشتر در مورد نحوه ایجاد، توصیف و حذف گروههای ویژگی، رجوع کنید create_feature_group در مستندات Boto3. شما همچنین می توانید استفاده کنید سرویس گیرنده زمان اجرا فروشگاه ویژگی برای قرار دادن و دریافت رکوردهای ویژگی به و از گروه های ویژگی.
تکرار فروشگاه آفلاین
تکرارپذیری توانایی بازآفرینی دقیقاً یک مدل ML است، بنابراین اگر از همان ویژگیها به عنوان ورودی استفاده کنید، مدل همان خروجی مدل اصلی را برمیگرداند. این اساساً همان چیزی است که ما بین مدلهایی که در یک محیط تحقیقاتی توسعه میدهیم و در یک محیط تولید به کار میبریم، تلاش میکنیم. تکرار خطوط لوله مهندسی ویژگی در سراسر حساب ها یک فرآیند پیچیده و زمان بر است که در صورت عدم اجرای صحیح می تواند اختلافات مدل را ایجاد کند. اگر مجموعه ویژگی های مورد استفاده برای آموزش یک مدل پس از مرحله آموزش تغییر کند، ممکن است بازتولید یک مدل دشوار یا غیرممکن باشد.
برنامههایی که در AWS قرار دارند معمولاً چندین محیط و حساب مجزا دارند، مانند توسعه، آزمایش، مرحلهبندی و تولید. برای دستیابی به استقرار خودکار برنامه در محیط های مختلف، از خطوط لوله CI/CD استفاده می کنیم. سازمان ها اغلب نیاز به حفظ محیط های کاری ایزوله و کپی های متعدد از داده ها در همان یا مناطق مختلف AWS یا در حساب های مختلف AWS دارند. در زمینه Feature Store، برخی از شرکتها ممکن است بخواهند دادههای فروشگاه ویژگی آفلاین را تکرار کنند. تکرار فروشگاه آفلاین از طریق تکرار آمازون S3 می تواند الگوی مفیدی در این مورد باشد. این الگو محیط ها و حساب های مجزا را قادر می سازد تا مدل های ML را با استفاده از مجموعه ویژگی های کامل بدون استفاده از نقش ها یا مجوزهای بین حساب ها، دوباره آموزش دهند.
نتیجه
در این پست، الگوهای معماری مختلفی مانند فروشگاه ویژگیهای متمرکز، فروشگاه ویژگیهای ترکیبی، و سایر ملاحظات طراحی برای فروشگاه ویژگی SageMaker را نشان دادیم که برای همکاریهای علم داده بین عملکردی ضروری هستند. ما همچنین نحوه راهاندازی دسترسی بین حسابها را با استفاده از AWS STS نشان دادیم.
برای آشنایی بیشتر با قابلیتهای Feature Store و موارد استفاده، رجوع کنید آشنایی با قابلیت های کلیدی Amazon SageMaker Feature Store و استفاده از جذب جریانی با Amazon SageMaker Feature Store برای تصمیم گیری با پشتوانه ML در زمان تقریباً واقعی.
اگر نظر یا سوالی دارید در قسمت نظرات مطرح کنید.
درباره نویسنده
آرونپراسات شانکار یک معمار راه حل های تخصصی هوش مصنوعی و یادگیری ماشین (AI/ML) با AWS است که به مشتریان جهانی کمک می کند راه حل های هوش مصنوعی خود را به طور موثر و کارآمد در فضای ابری مقیاس کنند. آرون در اوقات فراغت خود از تماشای فیلم های علمی تخیلی و گوش دادن به موسیقی کلاسیک لذت می برد.
مارک روی یک معمار اصلی یادگیری ماشین برای AWS است که به مشتریان AWS در طراحی و ساخت راهحلهای AI/ML کمک میکند. کار مارک طیف گستردهای از موارد استفاده از ML را پوشش میدهد، با علاقه اولیه به بینایی رایانه، یادگیری عمیق، و مقیاسبندی ML در سراسر سازمان. او به شرکتها در بسیاری از صنایع از جمله بیمه، خدمات مالی، رسانه و سرگرمی، مراقبتهای بهداشتی، خدمات شهری و تولید کمک کرده است. مارک دارای 6 گواهینامه AWS از جمله گواهینامه تخصصی ML است. قبل از پیوستن به AWS، مارک به مدت 25 سال، از جمله 19 سال در خدمات مالی، معمار، توسعهدهنده و رهبر فناوری بود.
استفان ناتو یک معمار راه حل های تخصصی AI/ML در سرویس وب آمازون است. او بر کمک به مشتریان خدمات مالی در ساخت راهحلهای یادگیری ماشینی سرتاسر در AWS متمرکز است. او در اوقات فراغت خود از خواندن وبلاگ های یادگیری ماشینی، نواختن گیتار و کاوش در صحنه غذا در شهر نیویورک لذت می برد.
- شتاب دهنده
- دسترسی
- حساب
- عمل
- اضافی
- اتخاذ
- AI
- پذیرش هوش مصنوعی
- آمازون
- آمازون SageMaker
- آمازون خدمات وب
- در میان
- API
- کاربرد
- برنامه های کاربردی
- معماری
- هوش مصنوعی
- هوش مصنوعی و یادگیری ماشین
- خودکار
- AWS
- پشت صحنه
- وبلاگ ها
- ساختن
- بنا
- صدا
- موارد
- گواهی
- شهر:
- مشتریان
- ابر
- رمز
- همکاری
- نظرات
- مشترک
- شرکت
- شرکت
- انطباق
- جزء
- ترکیب
- چشم انداز کامپیوتر
- مصرف
- مصرف کننده
- محتوا
- مجوزها و اعتبارات
- مشتریان
- داده ها
- دسترسی به داده ها
- علم اطلاعات
- یادگیری عمیق
- طرح
- جزئیات
- توسعه
- توسعه دهنده
- پروژه
- تجارت الکترونیک
- مهندسی
- مورد تأیید
- سرمایه گذاری
- سرگرمی
- محیط
- اعدام
- ویژگی
- امکانات
- مالی
- خدمات مالی
- نام خانوادگی
- غذا
- فرم
- کامل
- تابع
- GitHub
- جهانی
- حکومت
- کمک های مالی
- گروه
- بهداشت و درمان
- نگه داشتن
- چگونه
- چگونه
- HTTPS
- IAM
- شناسایی
- هویت
- از جمله
- لوازم
- اطلاعات
- شالوده
- بیمه
- اطلاعات
- علاقه
- IT
- کار
- شغل ها
- پیوستن
- نگهداری
- کلید
- دانش
- بزرگ
- رهبری
- یاد گرفتن
- یادگیری
- قدرت نفوذ
- محدود شده
- فهرست
- استماع
- محلی
- به صورت محلی
- محل
- فراگیری ماشین
- مدیریت
- تولید
- علامت
- بازار
- رسانه ها
- ML
- مدل
- فیلم ها
- موسیقی
- جهت یابی
- ویژگی های جدید
- ویژگی های جدید
- نیویورک
- شهر نیویورک
- نوت بوک
- آنلاین
- فروشگاه آنلاین
- عملیاتی
- سفارش
- دیگر
- دیگران
- الگو
- شخصی
- سکو
- سیاست
- سیاست
- استخر
- پیش گویی
- پیش بینی
- تهيه كننده
- محصول
- تولید
- بهره وری
- پروژه
- منتشر کردن
- پــایتــون
- کیفیت
- محدوده
- خام
- داده های خام
- مطالعه
- زمان واقعی
- دلایل
- دستور پخت
- سوابق
- روابط
- تحقیق
- منابع
- منابع
- نتایج
- بازده
- بررسی
- دویدن
- در حال اجرا
- حکیم ساز
- مقیاس
- مقیاس گذاری
- علم
- دانشمندان
- sdk
- جستجو
- تیم امنیت لاتاری
- خدمات
- تنظیم
- اشتراک گذاری
- به اشتراک گذاشته شده
- So
- مزایا
- بیانیه
- opbevare
- پرده
- جریان
- موفقیت
- پشتیبانی
- سیستم های
- پیشرفته
- موقت
- تست
- زمان
- رمز
- آموزش
- اعتماد
- کاربران
- آب و برق
- دید
- راه رفتن
- وب
- خدمات وب
- در داخل
- مهاجرت کاری
- با این نسخهها کار
- نوشته
- سال