تکنولوژی MLOps ۱۰۱ : تلاش برای هم‌گرایی بین هوش مصنوعی و DevOps

شکل ۱. هوش مصنوعی و DevOps از کوین کو درUnsplash
شکل ۱. هوش مصنوعی و DevOps از کوین کو درUnsplash
منتشر‌شده در towardsdatascience به تاریخ ۱۹ ژوئن ۲۰۲۱
لینک منبع MLOps 101: Aiming For The Convergence Between AI And DevOps

بله، پس، این روند رسمی است. نام تجاری جدید و درخشان در دنیای IT . یک جستجوی سریع درGoogle Trends نشان می‌دهد که این کلمه به آرامی اما با اطمینان مورد توجه قرار می‌گیرد. خود اندرو ان‌جی، یکی از معتبرترین نام ها در دنیای هوش مصنوعی ، فقط یک تخصص جدید را متمرکز کرد.

اما… MLOps چیست؟ بیایید یک مرور سریع انجام دهیم.

شکل ۲. گرایش‌ها برای جستجویMLOps در گوگل
شکل ۲. گرایش‌ها برای جستجویMLOps در گوگل

تکنولوژی MLOps چیست؟

می‌خواهم آن را ساده نگه دارم. به نقل از AWS مجدد: اختراع رویداد ۲۰۲۰، MLOps عبارت است از:

فرآیند وارد کردن یک مدل یادگیری ماشینی تجربی به یک سیستم تولید.

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

در اصل DevOps فقط در موردDev وOps نیست. در مورد مدیریت شرکت به عنوان یک کل است؛ درباره کل فرهنگ سازمانی است، از سرایداران (که قول می‌دهند ساختمان را تمیز نگه دارند) گرفته تا مدیرعامل (که قول می‌دهد شرکت را تامین مالی کند و حقوق آینده را پرداخت کند). نظریه قول به عنوان چارچوب فکری که بر تغییر در فرهنگ تاکید دارد، ظهور کرده‌است. و سرعت جایی است که ما در حال بحث درباره این تغییرات هستیم. (مایک لوکیدز، O Reilly، ۲۰۱۴)

مقالات زیادی وجود دارند که تفاوت‌های بین یک DevOps و MLOps را توضیح می‌دهند (به عنوان مثال این یکی از مارکو سوسیلو را در نظر بگیرید) ، بنابراین من به عمق این موضوع نخواهم پرداخت، اما مسلما ایده مشابهی در حال حاضر در حال انجام است: شرکت‌های بیشتری مدل‌های یادگیری ماشینی یا یادگیری عمیق را به محصولات خود اضافه می‌کنند یا از این مدل‌ها برای کمک به آن‌ها در تصمیم‌گیری استفاده می‌کنند. بنابراین، بدیهی است که شرکت‌های بیشتر و بیشتری باید نگران کسب تخصص در مورد چگونگی رسیدگی به چنین وظایفی باشند.

نگرانیMLOps چیست؟

عمدتا سه منطقه بزرگ تحت حوزه قضایی MLOps وجود دارد:

  • داده‌ها: MLOps نیازی به نگرانی در مورد چگونگی تبدیل یا پاک کردن صحیح داده‌ها ندارد؛ این بیشتر یک وظیفه محقق داده است. اما آن‌ها باید نگران این باشند که چگونه DS داده‌ها را به دست می‌آورد، چگونه آن داده‌ها استخراج می‌شوند، چگونه باید با آن برخورد شود، در صورت نیاز، و غیره.
  • مدل: یکبار دیگر، MLOps نیازی به نگرانی در مورد چگونگی مدلسازی، یا تفاوت‌های بین یک جنگل تصادفی و یک رگرسیون خطی ندارد، زیرا دانشمندان داده، کسانی خواهند بود که این کار را انجام می‌دهند. MLOps باید در مورد این که چگونه مدل به ابر فرستاده می‌شود، در مورد این که چگونه یک‌بار در ابر آزمایش می‌شود، در مورد معیارهای انتخابی و چگونگی ثبت یا ترسیم آن‌ها، در میان دیگران، اهمیت دهد. به عنوان مثال، مدل‌ها تمایل به از بین رفتن دارند (این به عنوان فروپاشی مدل شناخته می‌شود) ، و تعریف روشی برای نظارت بر عملکرد مدل برای دانستن این که چه زمانی آن را جایگزین یا آموزش مجدد کند، حیاتی است.
  • کد: این کلید کار است. تمام (یا بیشتر) کار توصیف‌شده در بالا را اکنون می توان از طریق GUI انجام داد. یا AWS، GCP یا آژور یک رابط کاربر پسند و غنی فراهم می‌کنند که در آن می‌توانید ابزارهای خود را مدیریت کنید. با این حال، حفظ آن دشوار است. و اگر پروژه رشد کند، پس تنها قابل نگهداری نیست. بنابراین، همه چیز باید کد باشد.

گردش کار MLOps کاملا شبیه به هر گردش کار توسعه نرم‌افزار است، و بله، این نکته دیگری است: همه چیز نرم‌افزار است.

  1. طرح: اولین قدم، همیشه. جمع‌آوری الزامات، بررسی مسئله از نظر زیرساخت و غیره.
  2. توسعه: ساخت خط لوله، ادغام، هم‌کاری نزدیک با تیم DS، که مدل را می‌سازد، و تیم SE، که برنامه‌ای را می‌سازد که هم مدل و هم زیرساخت را پوشش می‌دهد. هدف اصلی به حداکثر رساندن اتوماسیون همه فرآیندها است.
  3. نظارت: روز بعد. همه چیز روان بود ، هورا! اکنون MLOps باید اطمینان حاصل کند که همه چیز تحت کنترل است، و اگر چیزی تحت کنترل نباشد، ثابت است یا حداقل به ASAP اطلاع داده شده‌است.

اصول اصلی MLOps

من می‌خواستم این پاراگراف را به نام دستورات MLOps نام‌گذاری کنم (کاملاً حماسی، درست است؟) اما متوجه شدم که شاید فرمان کلمه‌ای بیش از حد بزرگ باشد-من بیشرمانه آن را از مقاله عالی مانون سیکس دزدیدم و نمی‌توانم با آن رقابت کنم. بیایید بگوییم که لیست زیر پنج نگرانی اصلی برای MLOps است:

  • اتوماسیون: هم برای ML و هم برای خطوط لوله نرم‌افزار منظم CI / CD، همه چیز باید تا حد ممکن خودکار باشد.
  • نسخه‌سازی: برای بررسی تغییرات، برگشت به نسخه‌های قبلی و غیره. برای داده‌ها ، مدل‌ها و کد اعمال می شود.
  • آزمایش: Nuffگفت.
  • نظارت: کاهش مدل، تنگناهای معماری، پیک بار …
  • قابلیت تولید مجدد: کاربردهای طرف ML. «اما در لپ‌تاپ من کار می‌کرد» قابل‌قبول نیست. پیش‌پردازش داده‌ها، مهندسی ویژگی، آموزش مدل و ارزیابی-همه چیز باید تکرار پذیر باشد.

با جمع‌بندی، می توان گفت که فرهنگ MLOps برای هم‌گرایی دنیای DevOps و ML هدف‌گذاری می‌کند. هیچ‌کس نمی‌داند آینده چه اسراری دارد، اما می‌توانیم از آن انتظار داشته باشیم که در آینده نزدیک روند خود را حفظ کند.

این متن با استفاده از ربات ترجمه مقالات دیتاساینس ترجمه شده و به صورت محدود مورد بازبینی انسانی قرار گرفته است.در نتیجه می‌تواند دارای برخی اشکالات ترجمه باشد.
مقالات لینک‌شده در این متن می‌توانند به صورت رایگان با استفاده از مقاله‌خوان ترجمیار به فارسی مطالعه شوند.