ML در تولید: از دانشمند داده تا مهندس ML

ML in Production: From Data Scientist to ML Engineer

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: هر مدل ML در نوت بوک Jupyter را به یک میکروسرویس آماده تولید مستقر تبدیل کنید. تبدیل مدل‌های ML از نوت‌بوک‌های Jupyter به میکروسرویس‌های آماده تولید، با تمرکز بر تولید و کد پاک. یاد بگیرید که چگونه کد تمیز بنویسید و از ابزارهایی برای حفظ استانداردهای بالای کیفیت کد استفاده کنید. یاد بگیرید که API های قوی برای مدل های ML ایجاد کنید، طراحی API، رسیدگی به درخواست ها، و تضمین مقیاس پذیری و امنیت را پوشش دهد. کانتینرسازی Master Docker برای استقرار مدل‌های ML، از جمله مدیریت کانتینر و بهترین شیوه‌ها برای برنامه‌های کاربردی ML. با استراتژی‌های استقرار در دنیای واقعی، از جمله خطوط لوله CI/CD، کنترل نسخه، چارچوب‌های MLOps و حفظ مدل‌های زنده، تجربه عملی به دست آورید. پیش نیازها: دانش و تجربه عملی سینتکس پایتون تجربه در توسعه مدل در پایتون (تقسیم تست آموزش، تنظیم هایپرپارامترها، ارزیابی عملکرد مدل، انجام پیش بینی) مبانی Git: git clone، git push، git commit، git pull، git fetch، شاخه git

بیش از هشت سال است که در این زمینه کار می‌کنم و به ندرت می‌توان مهندسان ML دیگری را ملاقات کرد که خود را با همان استانداردهای بالایی که من انجام می‌دهم رعایت کنند. در این دوره، من همه چیزهایی را که برای متمایز شدن از اکثر توسعه دهندگان نیاز دارید، با استفاده از جدیدترین ابزارها برای ایجاد میکروسرویس های عالی ML با پایگاه کد تمیز و ساختاریافته گنجانده ام.

این دوره جامع برای تجهیز شما به مهارت‌ها و دانش ضروری مورد نیاز برای تبدیل مدل‌های یادگیری ماشین (ML) توسعه‌یافته در نوت‌بوک‌های Jupyter به میکروسرویس‌های کاملاً عملیاتی و آماده برای تولید طراحی شده است. به عنوان دانشجوی این دوره، شما عمیقاً در پیچیدگی های مدل ML از یک مفهوم صرف در یک نوت بوک به یک میکروسرویس مقیاس پذیر و کارآمد که در یک محیط تولید در دنیای واقعی پیشرفت می کند، کاوش خواهید کرد.

توجه: این دوره هنوز در حال انجام است (هنوز ماژول 4 وجود ندارد)، اما می توانید اکنون آن را با قیمت کمتری خریداری کنید.

در طول دوره، شما یاد خواهید گرفت که شکاف بین علم داده و مهندسی نرم افزار را پر کنید و قابلیت های ML خود را از مدل های نظری به کاربردهای عملی ارتقا دهید.

در ماژول 1، با آموزش و تنظیم یک مدل ساده ML شروع می کنیم. این تمرین اولیه به عنوان یک مثال عملی برای دوره عمل می کند. بعداً، انعطاف پذیری خواهید داشت تا مفاهیم و تکنیک های آموخته شده را در هر مدل ML انتخابی خود به کار ببرید.

در ماژول 2، شما با اصول طراحی پایه کد تولید آشنا می شوید، جایی که یاد خواهید گرفت که چگونه کد خود را از نوت بوک های Jupyter به یک برنامه قوی تبدیل کنید. این ماژول شامل موارد زیر است:

  1. ساختار پروژه: برای حفظ وضوح و مقیاس پذیری، پایگاه کد خود را در اجزای منطقی مانند ماژول ها، بسته ها و دایرکتوری ها سازماندهی کنید.

  2. تکنیک‌های پارامترسازی: تکنیک‌هایی برای پارامترسازی مدل ML شما برای افزایش سازگاری در سناریوها و پیکربندی‌های مختلف.

  3. راه‌اندازی گزارش: اجرای مکانیزم‌های ثبت بهترین استانداردهای صنعت برای گرفتن اطلاعات مرتبط و تسهیل فرآیندهای اشکال‌زدایی مؤثر.

  4. پیاده سازی پایگاه داده: راه اندازی یک لایه پایگاه داده برای مدیریت ماندگاری داده ها برای مدل ML شما، تضمین ذخیره سازی و بازیابی کارآمد داده ها.

  5. روش‌های کد پاک: بررسی بهترین روش‌ها برای نوشتن کد تمیز که بر خوانایی، قابلیت نگهداری و مقیاس‌پذیری تأکید دارد و طول عمر و قابلیت استفاده برنامه شما را افزایش می‌دهد.

  6. پرده‌بندی و قالب‌بندی: استفاده از ابزارهای پرده‌بندی و شیوه‌های قالب‌بندی کد برای حفظ استانداردهای کیفیت کد و اطمینان از ثبات در پایگاه کد شما.

  7. اتوماسیون با Makefiles : استفاده از فایل‌های makefi برای خودکار کردن کارهای تکراری و ساده‌سازی گردش‌های کاری توسعه، بهبود کارایی و کاهش خطاها.

  8. خطوط لوله CI/CD با اقدامات GitHub: راه‌اندازی خطوط لوله پیوسته و استقرار پیوسته (CI/CD) با استفاده از GitHub Actions برای خودکارسازی آزمایش، ساخت و سایر فرآیندها، امکان تحویل سریع‌تر و مطمئن‌تر نرم‌افزار را فراهم می‌کند.

در پایان ماژول 2، پایه محکمی برای تبدیل مدل‌های ML خود به برنامه‌های کاربردی با ساختار مناسب، مجهز به بهترین شیوه‌ها در طراحی کد، اتوماسیون، و استراتژی‌های استقرار خواهید داشت.


در ماژول 3، شما از طریق فرآیند طراحی و پیاده سازی API های قوی که ارتباط یکپارچه را برای مدل های ML شما با سایر برنامه ها تسهیل می کند، هدایت می شوید. این ماژول شامل موارد زیر است:

  1. طراحی و پیاده‌سازی API: نحوه طراحی APIها برای اهداف مختلف، از جمله APIهای نگهداری مدل و APIها برای استنتاج مدل را یاد خواهید گرفت. این شامل ساختاربندی نقاط پایانی برای انجام وظایف خاص مانند به‌روزرسانی‌های آموزش مدل، تنظیم پارامترها و پیش‌بینی‌های هم‌زمان است.

  2. ترکیب API ها : درک نحوه ادغام API های مختلف در معماری برنامه خود برای ایجاد گردش کار منسجمی که از مدل های ML شما به طور موثر استفاده می کند.

  3. آموزش عملی در مورد رسیدگی به درخواست‌ها و پاسخ‌ها: تمرین‌های عملی برای مدیریت درخواست‌های API ورودی، پردازش کارآمد آنها و ارائه پاسخ‌های مناسب. این شامل تجزیه داده‌های ورودی، اجرای پیش‌بینی‌های مدل، و قالب‌بندی پاسخ‌های خروجی می‌شود.

  4. تضمین امنیت: بهترین روش‌ها برای ایمن کردن APIهای خود در برابر تهدیدات احتمالی و دسترسی غیرمجاز. این شامل مکانیسم‌های احراز هویت، رمزگذاری داده‌ها، و اجرای پروتکل‌های ارتباطی امن است.

  5. ملاحظات مقیاس‌پذیری: تکنیک‌هایی برای مقیاس‌گذاری API‌های خود برای مدیریت افزایش ترافیک و تقاضاهای رو به رشد. این شامل استراتژی‌هایی مانند متعادل‌سازی بار، ذخیره‌سازی حافظه پنهان و بهینه‌سازی استفاده از منابع است.

  6. عملیات API ناهمزمان: درک مزایای پردازش ناهمزمان در APIها برای بهبود پاسخگویی و رسیدگی موثرتر به درخواست‌های همزمان. این شامل استفاده از چارچوب های ناهمزمان و مدیریت موثر وظایف طولانی مدت است.

در پایان ماژول 3، مهارت‌ها و دانش لازم برای طراحی، پیاده‌سازی و مدیریت API‌هایی را خواهید داشت که مدل‌های ML شما را برای ادغام یکپارچه در محیط‌های تولیدی توانمند می‌سازد و از قابلیت اطمینان و عملکرد در سناریوهای عملیاتی مختلف اطمینان می‌دهد.

>


در ماژول 4، به مهارت ضروری کانتینری کردن مدل‌های ML خود با استفاده از Docker خواهید پرداخت، که در توسعه نرم‌افزار مدرن بسیار مهم است. این ماژول شامل:

است
  1. ایجاد تصاویر Docker: آموزش عملی در مورد بسته‌بندی مدل‌های ML خود، همراه با وابستگی‌ها و پیکربندی‌های محیطی آن‌ها در تصاویر Docker. این امر ثبات و قابلیت حمل در محیط های مختلف را تضمین می کند.

  2. مدیریت کانتینرها: آموزش نحوه مدیریت موثر کانتینرهای Docker، از جمله راه اندازی، توقف، و نظارت بر عملکرد آنها. درک مدیریت چرخه حیات کانتینر برای حفظ در دسترس بودن و قابلیت اطمینان برنامه های ML شما کلیدی است.

  3. اصول ارکستراسیون کانتینر: مقدمه ای بر اصول ارکستراسیون کانتینر، مانند Kubernetes، که استقرار، مقیاس بندی و مدیریت برنامه های کاربردی کانتینری را خودکار می کند. در مورد استقرار برنامه‌های چند کانتینری و مدیریت آن‌ها در مقیاس بینش‌هایی کسب خواهید کرد.

  4. استراتژی‌های استقرار: راهنمایی عملی در مورد استقرار مدل‌های ML کانتینری شده در سناریوهای دنیای واقعی. این شامل استراتژی‌هایی برای استقرار سبز-آبی، انتشار قناری، و به‌روزرسانی‌های چرخشی برای اطمینان از حداقل زمان خرابی و انتقال روان است.

  5. خطوط لوله تحویل مداوم: راه‌اندازی خطوط لوله تحویل پیوسته (CI/CD) برای خودکار کردن فرآیند استقرار مدل‌های Dockerized ML شما. این شامل یکپارچه سازی کنترل نسخه، آزمایش خودکار، و مراحل استقرار برای ساده کردن چرخه انتشار است.

  6. کنترل و نظارت نسخه: بهترین روش‌ها برای نسخه‌سازی تصاویر Docker و مدیریت مؤثر تغییرات با استفاده از سیستم‌های کنترل نسخه مانند Git. به‌علاوه، درباره ابزارها و شیوه‌های نظارت برای اطمینان از سلامت و عملکرد مدل‌های ML مستقر شده، خواهید آموخت.

در پایان ماژول 4، به دانش و مهارت‌های عملی برای گنجاندن مدل‌های ML خود، استقرار آنها با استفاده از Docker به شیوه‌ای مقیاس‌پذیر، و اجرای استراتژی‌های استقرار قوی که با بهترین شیوه‌های صنعت همسو هستند، مجهز خواهید شد. این شما را برای مدیریت و نگهداری برنامه های کاربردی ML درجه تولید به طور موثر در محیط های عملیاتی مختلف آماده می کند.


در پایان این دوره، شما درک کاملی از چرخه عمر کامل توسعه و استقرار مدل ML خواهید داشت. شما قادر خواهید بود هر مدل ML را با اطمینان از یک نوت بوک Jupyter بردارید و آن را به یک سرویس آماده برای تولید تبدیل کنید که آماده ارائه ارزش در برنامه های کاربردی دنیای واقعی است. این دوره فرصتی ارزشمند برای هر کسی است که به دنبال ارتقای شغل خود در علم داده، یادگیری ماشین یا مهندسی نرم افزار است.


سرفصل ها و درس ها

شروع به کار Getting Started

  • معرفی دوره Course Introduction

  • قطب نمای دوره: کاوش در سفر پیش رو Course Compass: Exploring the Journey Ahead

  • منابع دوره: Community، Git Repository و موارد دیگر Course Resources: Community, Git Repository, and more

  • راه اندازی نرم افزار دوره: Jupyter، IDE و موارد دیگر Course Software Setup: Jupyter, IDE and more

ایجاد مدل در نوت بوک Jupyter Model Creation in Jupyter Notebook

  • پیش پردازش داده ها، ساخت مدل، تنظیم فراپارامترها و مدیریت مدل ها Data Preprocessing, Model Building, Hyperparameters Tuning & Models Management

بسته بندی مدل به برنامه: طراحی مبتنی بر کد تولید Model-to-App Packaging: Production Codebase Design

  • از Jupyter تا Application: Code Transformation From Jupyter to Application: Code Transformation

  • راه اندازی مدیریت وابستگی پایتون با شعر Python Dependency Management Setup with Poetry

  • مقاله: شعر در مقابل کوندا - مقایسه مدیران وابستگی Article: Poetry vs Conda - Dependency Managers Comparison

  • تنظیم پارامترهای پایتون با Pydantic Python Parametrization Setup with Pydantic

  • راه اندازی پایتون لاگ با Loguru Python Logging Setup with Loguru

  • مقاله: آشنایی با پیکربندی Loguru's Singleton Logger Article: Understanding Loguru's Singleton Logger Configuration

  • راه اندازی پایگاه داده و اتصال پایتون با SqlAlchemy Database Setup and Python Connectivity with SqlAlchemy

  • مبانی معماری Codebase Foundations of Codebase Architecture

  • تکنیک های کد پاک برای تعالی نرم افزار Clean Code Techniques for Software Excellence

  • ساده سازی کیفیت کد: Linters و Formatters Streamlining Code Quality: Linters and Formatters

  • اتوماسیون کد با Makefiles Code Automation with Makefiles

  • امتحان: اتوماسیون کد با فایل های Makefiles Quiz: Code Automation with Makefiles

  • تسلط بر CI/CD با GitHub Actions Mastering CI/CD with GitHub Actions

  • آزمون: تسلط بر خطوط لوله CI/CD با اقدامات GitHub Quiz: Mastering CI/CD Pipelines with GitHub Actions

تبدیل برنامه به میکرو: توسعه API App-to-Micro Transformation: API Development

  • مقدمه ای بر میکروسرویس ها و طرح کلی ماژول ها Introduction to Microservices & Module Outline

  • از یکپارچه تا میکروسرویس ها: تجزیه به مدل استنتاج و مدل ساز From Monolith to Microservices: Decomposing into Model Inference & Model Builder

  • مقدمه ای بر Flask: توسعه API استنتاج مدل Introduction to Flask: Developing a Model Inference API

  • محدودیت های API های سنکرون The Limitations of Synchronous APIs

  • مقدمه ای بر وظایف ناهمزمان در API ها Introduction to Asynchronous Tasks in APIs

  • پذیرش API های ناهمزمان در پایتون Embracing Asynchronous APIs in Python

نمایش نظرات

ML در تولید: از دانشمند داده تا مهندس ML
جزییات دوره
5.5 hours
23
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,510
4.7 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Andrew Wolf Andrew Wolf

رئیس ML/DS

Ilya Fursov Ilya Fursov

مهندس ML