آینده فرا رسیده است و هوش مصنوعی و فناوری های یادگیری ماشین در حال حاضر با موفقیت توسط فروشگاه های مورد علاقه شما، شرکت های حمل و نقل و حتی مزارع بوقلمون مورد استفاده قرار می گیرند.
و اگر چیزی وجود داشته باشد، از قبل چیزی در مورد آن در اینترنت وجود دارد ... یک پروژه باز! ببینید چگونه Open Data Hub به شما کمک میکند فناوریهای جدید را مقیاسبندی کنید و از چالشهای پیادهسازی اجتناب کنید.
با تمام مزایای هوش مصنوعی (AI) و یادگیری ماشین (ML)، سازمان ها اغلب در مقیاس بندی این فناوری ها مشکل دارند. مشکلات اصلی در این مورد معمولاً موارد زیر است:
- تبادل اطلاعات و همکاری - تبادل اطلاعات بدون زحمت و همکاری در تکرارهای سریع تقریباً غیرممکن است.
- دسترسی به داده ها - برای هر کار باید از نو و به صورت دستی ساخته شود که زمان زیادی می برد.
- دسترسی در صورت تقاضا - هیچ راهی برای دسترسی بر اساس تقاضا به ابزارها و پلتفرم یادگیری ماشین و همچنین زیرساخت های محاسباتی وجود ندارد.
- تولید - مدل ها در مرحله نمونه اولیه باقی می مانند و به استفاده صنعتی آورده نمی شوند.
- نتایج هوش مصنوعی را پیگیری و توضیح دهید - تکرارپذیری، ردیابی و توضیح نتایج AI/ML دشوار است.
در صورت عدم رسیدگی، این مشکلات بر سرعت، کارایی و بهره وری دانشمندان داده ارزشمند تأثیر منفی می گذارد. این منجر به ناامیدی، ناامیدی آنها در کارشان می شود و در نتیجه، انتظارات تجاری در مورد AI/ML به هدر می رود.
مسئولیت حل این مشکلات بر عهده متخصصان فناوری اطلاعات است، که باید به تحلیلگران داده ارائه دهند - درست است، چیزی شبیه به ابر. در جزئیات بیشتر، ما به پلتفرمی نیاز داریم که آزادی انتخاب بدهد و دسترسی راحت و آسان داشته باشد. در عین حال، سریع، به راحتی قابل تنظیم مجدد، مقیاس پذیر در صورت تقاضا و مقاوم در برابر خرابی است. ایجاد چنین پلتفرمی بر روی فناوریهای منبع باز به جلوگیری از قفل شدن فروشنده و حفظ مزیت استراتژیک بلندمدت از نظر کنترل هزینه کمک میکند.
چند سال پیش، اتفاقی مشابه در توسعه برنامهها در حال رخ دادن بود و منجر به ظهور میکروسرویسها، ابرهای ترکیبی، اتوماسیون فناوری اطلاعات و فرآیندهای چابک شد. برای کنار آمدن با همه اینها، متخصصان فناوری اطلاعات به کانتینرها، Kubernetes و ابرهای هیبریدی باز روی آورده اند.
این تجربه در حال حاضر برای پاسخ به چالش های آل استفاده می شود. به همین دلیل است که متخصصان فناوری اطلاعات پلتفرمهایی میسازند که مبتنی بر کانتینر هستند، ایجاد سرویسهای AI/ML را در فرآیندهای چابک امکانپذیر میسازند، نوآوری را سرعت میبخشند، و با نگاهی به ابر ترکیبی ساخته میشوند.
ما ساخت چنین پلتفرمی را با Red Hat OpenShift، پلتفرم کانتینری Kubernetes ما برای ابر ترکیبی، که دارای یک اکوسیستم به سرعت در حال رشد از نرمافزار و راهحلهای سختافزاری ML است (NVIDIA، H2O.ai، Starburst، PerceptiLabs، و غیره) آغاز خواهیم کرد. برخی از مشتریان Red Hat، مانند BMW Group، ExxonMobil و دیگران، قبلاً زنجیرههای ابزار ML و فرآیندهای DevOps را در بالای پلتفرم و اکوسیستم آن مستقر کردهاند تا معماریهای ML خود را به تولید برسانند و کار تحلیلگران داده را سرعت بخشند.
دلیل دیگری که ما پروژه Open Data Hub را راه اندازی کردیم، نشان دادن نمونه ای از معماری مبتنی بر چندین پروژه نرم افزاری منبع باز و نشان دادن نحوه پیاده سازی کل چرخه عمر یک راه حل ML بر اساس پلت فرم OpenShift است.
پروژه هاب داده را باز کنید
این یک پروژه منبع باز است که در جامعه توسعه مربوطه توسعه یافته و یک چرخه کامل از عملیات - از بارگیری و تبدیل داده های اولیه تا تولید، آموزش و نگهداری یک مدل - را هنگام حل مشکلات AI / ML با استفاده از کانتینرها و Kubernetes در OpenShift اجرا می کند. سکو. این پروژه را می توان یک پیاده سازی مرجع در نظر گرفت، نمونه ای از نحوه ساخت راه حل باز AI/ML-as-a-service بر اساس OpenShift و ابزارهای متن باز مرتبط مانند Tensorflow، JupyterHub، Spark و غیره. ذکر این نکته ضروری است که Red Hat خود از این پروژه برای ارائه خدمات AI/ML خود استفاده می کند. علاوه بر این، OpenShift با نرمافزارهای کلیدی و راهحلهای سختافزاری ML از NVIDIA، Seldon، Starbust و سایر فروشندگان ادغام میشود و ساخت و اجرای سیستمهای یادگیری ماشین خود را آسانتر میکند.
پروژه Open Data Hub بر روی دسته های زیر از کاربران و موارد استفاده متمرکز است:
- تحلیلگر داده که به راه حلی برای اجرای پروژه های ML نیاز دارد، سازماندهی شده مانند یک ابر با توابع سلف سرویس.
- تحلیلگر داده که به حداکثر انتخاب از جدیدترین ابزارها و پلتفرم های AI/ML منبع باز نیاز دارد.
- تحلیلگر داده که هنگام آموزش مدل ها نیاز به دسترسی به منابع داده دارد.
- تحلیلگر داده که نیاز به دسترسی به منابع محاسباتی (CPU، GPU، حافظه) دارد.
- تحلیلگر داده که به توانایی همکاری و به اشتراک گذاری کار با همکاران، دریافت بازخورد و بهبود در تکرار سریع نیاز دارد.
- یک تحلیلگر داده که می خواهد با توسعه دهندگان تعامل داشته باشد (و تیم ها را توسعه دهد) تا مدل های ML و نتایج کار او وارد تولید شوند.
- مهندس دادهای که نیاز دارد به یک تحلیلگر داده دسترسی به انواع منابع داده را در عین رعایت الزامات نظارتی و امنیتی فراهم کند.
- مدیر/اپراتور سیستم IT که به توانایی کنترل بی دردسر چرخه عمر (نصب، پیکربندی، ارتقاء) اجزا و فناوری های منبع باز نیاز دارد. همچنین به ابزارهای مدیریتی و سهمیه بندی مناسب نیاز داریم.
پروژه Open Data Hub طیف وسیعی از ابزارهای منبع باز را برای پیاده سازی یک چرخه کامل از عملیات AI/ML گرد هم می آورد. Jupyter Notebook در اینجا به عنوان ابزار کاری اصلی برای تجزیه و تحلیل داده ها استفاده می شود. این جعبه ابزار امروزه در بین دانشمندان داده بسیار محبوب است و Open Data Hub به آنها اجازه می دهد تا به راحتی فضاهای کاری Jupyter Notebook را با استفاده از JupyterHub داخلی ایجاد و مدیریت کنند. پروژه Open Data Hub علاوه بر ایجاد و وارد کردن نوت بوک های Jupyter، شامل تعدادی نوت بوک آماده در قالب یک کتابخانه هوش مصنوعی نیز می باشد.
این کتابخانه مجموعه ای از مولفه ها و راه حل های یادگیری ماشین منبع باز برای سناریوهای رایج است که نمونه سازی سریع را ساده می کند. JupyterHub با مدل دسترسی RBAC OpenShift یکپارچه شده است، که به شما امکان می دهد از حساب های OpenShift موجود استفاده کنید و یک ورود به سیستم را پیاده سازی کنید. علاوه بر این، JupyterHub یک رابط کاربری کاربرپسند به نام spawner ارائه می دهد که از طریق آن کاربر می تواند به راحتی مقدار منابع محاسباتی (هسته های CPU، حافظه، GPU) را برای نوت بوک انتخابی Jupyter پیکربندی کند.
پس از اینکه تحلیلگر داده لپ تاپ را ایجاد و پیکربندی کرد، سایر نگرانی های مربوط به آن توسط زمانبندی Kubernetes که بخشی از OpenShift است، رسیدگی می شود. کاربران فقط می توانند آزمایش های خود را انجام دهند، نتایج کار خود را ذخیره و به اشتراک بگذارند. علاوه بر این، کاربران پیشرفته میتوانند مستقیماً از نوتبوکهای Jupyter به پوسته OpenShift CLI دسترسی داشته باشند تا از ویژگیهای اولیه Kubernetes مانند Job یا OpenShift مانند Tekton یا Knative استفاده کنند. یا برای این کار می توانید از رابط کاربری گرافیکی راحت OpenShift که "کنسول وب OpenShift" نامیده می شود استفاده کنید.
با رفتن به مرحله بعدی، Open Data Hub امکان مدیریت خطوط لوله داده را فراهم می کند. برای این، یک شی Ceph استفاده می شود که به عنوان یک ذخیره سازی داده های شی سازگار با S3 ارائه می شود. Apache Spark به شما اجازه می دهد تا داده ها را از منابع خارجی یا ذخیره سازی داخلی Ceph S3 استریم کنید و همچنین به شما امکان می دهد تغییرات اولیه داده را انجام دهید. آپاچی کافکا مدیریت پیشرفته خطوط لوله داده را ارائه می دهد (که در آن داده ها می توانند چندین بار بارگذاری شوند، همچنین تبدیل داده، تجزیه و تحلیل و عملیات پایداری).
بنابراین، تحلیلگر داده به داده ها دسترسی پیدا کرد و یک مدل ساخت. اکنون او تمایل دارد نتایج به دست آمده را با همکاران یا توسعه دهندگان برنامه به اشتراک بگذارد و مدل خود را بر اساس اصول یک سرویس به آنها ارائه دهد. این به یک سرور استنتاج نیاز دارد و Open Data Hub چنین سروری دارد که Seldon نام دارد و به شما امکان می دهد مدل را به عنوان یک سرویس RESTful منتشر کنید.
در برخی مواقع، چندین مدل از این دست در سرور سلدون وجود دارد و نیاز به نظارت بر نحوه استفاده از آنها وجود دارد. برای دستیابی به این هدف، Open Data Hub مجموعهای از معیارهای مرتبط و یک موتور گزارشدهی را بر اساس ابزارهای نظارتی متنباز پرکاربرد Prometheus و Grafana ارائه میکند. در نتیجه، برای نظارت بر استفاده از مدلهای هوش مصنوعی، بهویژه در محیط تولید، بازخورد دریافت میکنیم.
به این ترتیب، Open Data Hub یک رویکرد ابرمانند را در کل چرخه حیات AI/ML، از دسترسی و آمادهسازی داده تا آموزش و تولید مدل، ارائه میکند.
قرار دادن همه اینها با هم
اکنون این سوال مطرح می شود که چگونه می توان همه اینها را برای مدیر OpenShift سازماندهی کرد. و اینجاست که یک اپراتور ویژه Kubernetes برای پروژه های Open Data Hub وارد عمل می شود.
این اپراتور نصب، پیکربندی و چرخه حیات پروژه Open Data Hub را مدیریت میکند، از جمله استقرار ابزارهای فوقالذکر مانند JupyterHub، Ceph، Spark، Kafka، Seldon، Prometheus و Grafana. پروژه Open Data Hub را میتوانید در کنسول وب OpenShift، در بخش اپراتورهای جامعه پیدا کنید. بنابراین، مدیر OpenShift می تواند تعیین کند که پروژه های OpenShift مربوطه به عنوان "پروژه Open Data Hub" طبقه بندی شوند. این یک بار انجام می شود. پس از این، تحلیلگر داده از طریق کنسول وب OpenShift وارد فضای پروژه خود می شود و می بیند که اپراتور مربوطه Kubernetes برای پروژه های او نصب و در دسترس است. سپس یک نمونه پروژه Open Data Hub را با یک کلیک ایجاد می کند و بلافاصله به ابزارهای توضیح داده شده در بالا دسترسی دارد. و همه اینها را می توان در حالت دسترسی بالا و تحمل خطا پیکربندی کرد.
اگر میخواهید پروژه Open Data Hub را برای خود امتحان کنید، با آن شروع کنید
یادآوری میکنیم: چالشهای جدی مقیاسبندی، سازمانها را از تحقق پتانسیل کامل هوش مصنوعی و یادگیری ماشین باز میدارد. Red Hat OpenShift مدتهاست با موفقیت برای حل مشکلات مشابه در صنعت نرم افزار استفاده می شود. پروژه Open Data Hub که در جامعه توسعه متن باز پیاده سازی شده است، یک معماری مرجع برای سازماندهی یک چرخه کامل از عملیات AI/ML بر اساس ابر ترکیبی OpenShift ارائه می دهد. ما یک برنامه روشن و متفکرانه برای توسعه این پروژه داریم و در مورد ایجاد یک جامعه فعال و پربار پیرامون آن برای توسعه راه حل های هوش مصنوعی باز در پلتفرم OpenShift جدی هستیم.
منبع: www.habr.com