ویرگول
ورودثبت نام
محدثه یوسفی
محدثه یوسفی
محدثه یوسفی
محدثه یوسفی
خواندن ۲ دقیقه·۶ سال پیش

MLops چیست؟


چرا به MLOps نیاز داریم؟

کسایی که با فرایند های یادگیری ماشین در محیط واقعی کار کردن یا اصلا برای دل خودشون مدلی آموزش دادند حتما با این چالش ها برخورد کردند. که مثلا هایپرپارامترهایی رو تغییر دادن و بعد یادشون رفته کدوم مدل با کدوم هایپرپارامتر چه درصدی بهشون داده یا اون هایپرپارامتر های چی بودن. یا برای دیتاست هاشون ورژنی نداشتن و نمیدونستن دیتای جدید که اضافه کردن رو جدا کنن یا مجبور بودن چندین کپی از دیتا های تکراری نگهدارن. یا وقتی با کس دیگه کار میکردن داده هاشون با هم سینک نبوده و هزاران مشکل دیگه.

درواقع Machine Learning operation برای این مشکلات راه حل میده و میگه همونجوری که ما در گذشته مهندسی نرم افزار نداشتم و با اومدن مهندسی نرم افزار و راه حل هاش مثل version control کلی از مشکلات برنامه نویس ها حل کرد. Mlops و داشتن یه چرخه اتوماتیک باعث حل کلی از مشکلات میشه.

به صورت کلی MLOps داشتن یک Lifecycle منظم برای مراحل مختلف لرنینگ هست.
تفاوت life cycle در Devops و MLops
تفاوت life cycle در Devops و MLops


میشه گفت که از ترکیب ۳ حوزه پایین ایجاد شده:

  • مهندسی داده (Data engineering)
  • توسعه نرم افزار و عملیات آی تی!! (Devops)
  • یادگیری ماشین (Machine Learning)
مفهوم جدید که به چرخه های Devops افزوده شده است. (از کورس گوگل)
مفهوم جدید که به چرخه های Devops افزوده شده است. (از کورس گوگل)


فاکتور هایی که باید در نظر داشته باشیم در مسیر آموزش یک مدل و منتشر کردنش:

قابل تکرار بودن (Reproducible)

به این معنی که تمام مسیر قابل تکرار کردن باشه, یعنی اگه ۹ ماه بعد خودت برگردی بهش یا یه فرد دیگه هم بتونه train کنه و به همون درصد و درستی که گزارش شده برسه.


پاسخگو! (Accountable)

ورژن های مختلف از داده ها مشخص باشه.

ماندگار! (Continuous)

به صورت اتوماتیک بشه deploy و monitor بشه.


مبتنی بر همکاری! (Collaborative)

ویژن کنترلی مثل گیت داشته باشیم که بشه چندین نفر روی پروژه کارکنیم. البته اینجا یه فضایی هم برای داده ها نیاز داریم.

راه حل

یه سری ابزارها هستن که این مشکلات را حل می کنند:

  • Kubeflow
  • Dotscience
  • MLFlow
  • Weights & Biase
  • DVC
  • Pachyderm
  • .....

Cloud options

  • Google Cloud Platform
  • Azure ML
  • AWS sagemaker
از بلاگی که ویژگی های مهم بعضی از این سایت ها رو باهم مقایسه کرده بود.
از بلاگی که ویژگی های مهم بعضی از این سایت ها رو باهم مقایسه کرده بود.



خودم تجربه خوبی در استفاده از google cloud داشتم و در حال امتحان کرد بقیه ابزار ها هستم و باهاتون تجربه استفاده ازشون به اشتراک می‌ذارم.

این مطلب خلاصه از مطالبی است در کورس Machine Learning Fundamentals

machine learningیادگیری ماشین
۱۱
۲
محدثه یوسفی
محدثه یوسفی
شاید از این پست‌ها خوشتان بیاید