ما المقصود بعمليات تعلم الآلة (MLOps)؟
عمليات تعلم الآلة (MLOps) هي مجموعة ممارسات تعمل على أتمتة وتبسيط مهام سير عمل تعلم الآلة (ML) وعمليات النشر. يعد تعلم الآلة والذكاء الاصطناعي (AI) من القدرات الأساسية التي يمكنك تنفيذها لحل مشكلات العالم الحقيقي المعقدة وتقديم قيمة لعملائك. عمليات تعلم الآلة (MLOps) هي ثقافة من ثقافات تعلم الآلة وممارسة توحد تطوير تطبيقات تعلم الآلة (Dev) مع نشر نظام تعلم الآلة وعملياته (Ops). يمكن لمؤسستك استخدام MLOps في أتمتة العمليات وتوحيدها عبر دورة حياة تعلم الآلة. تتضمن هذه العمليات تطوير النماذج والاختبار والتكامل والإصدار وإدارة البنية التحتية.
لماذا يُطلب MLOps؟
على مستوى عالٍ، لبدء دورة حياة تعلّم الآلة، يتعين على مؤسستك عادةً البدء بتجهيز البيانات. يُمكنك جلب البيانات من أنواع مختلفة ومن مصادر مختلفة، وتنفيذ أنشطة مثل التجميع، وتنظيف المكرر، وهندسة الميزات.
بعد ذلك، يُمكنك استخدام البيانات في تدريب نموذج تعلّم الآلة والتحقق من صحته. يُمكنك بعد ذلك نشر النموذج المُدرَّب والمتحقق من صحته كخدمة تنبؤ يمكن للتطبيقات الأخرى الوصول إليها من خلال واجهات برمجة التطبيقات (APIs).
تحليل البيانات الاستكشافية يتطلب في الغالب تجربة نماذج مختلفة حتى يكون أفضل إصدار للنموذج جاهزًا للنشر. يؤدي ذلك إلى عمليات نشر متكررة لإصدارات النموذج وإصدارات البيانات. يُعد تتبع التجارب وإدارة مسارات تدريب تعلّم الآلة أمرًا ضروريًا قبل أن تقوم تطبيقاتك بدمج النموذج أو استهلاكه في التعليمات البرمجية الخاصة بها.
يعد MLOps أمرًا بالغ الأهمية لإدارة إصدار نماذج تعلّم آلة جديدة بشكل منهجي ومتزامن، حيث تتضمن هذه النماذج التغيرات التي تطرأ على التعليمة البرمجية للتطبيق والبيانات. يتعامل تنفيذ MLOps الأمثل مع أصول تعلّم الآلة بطريقة تشبه تعامله مع الأصول البرمجية الأخرى الخاصة ببيئة التكامل والتسليم المستمر (CI/CD). يُمكنك نشر نماذج تعلّم الآلة جنبًا إلى جنب مع التطبيقات والخدمات التي تستخدمها وتلك التي تستهلكها كجزء من عملية إصدار موحدة.
ما مبادئ MLOps؟
فيما يلي سنتناول بالشرح أربعة مبادئ أساسية موجودة في MLOps.
التحكم في الإصدار
تتضمن هذه العملية تتبع التغيرات التي تطرأ على أصول تعلّم الآلة حتى تتمكن من إعادة إنتاج النتائج والعودة إلى الإصدارات السابقة إن لزم الأمر. تمر كل تعليمة برمجية خاصة بتدريب تعلّم الآلة أو كل مواصفة من مواصفات النموذج بمرحلة مراجعة التعليمة البرمجية. يجري إصدار كل منها لجعل تدريب نماذج تعلّم الآلة قابلاً للتكرار والتدقيق.
تعد قابلية التكرار في سير عمل تعلّم الآلة أمرًا مهمًا في كل مرحلة، بدايةً من معالجة البيانات وحتى نشر نموذج تعلّم الآلة. هذا يعني أن كل مرحلة من المفترض أن يصدر عنها نتائج متطابقة إذا تم إعطاؤها نفس الإدخال.
الأتمتة
يُمكنك أتمتة المراحل المختلفة في مسار تعلّم الآلة لضمان التكرار والاتساق وقابلية التوسع. يتضمن ذلك مراحل بدايةً من استيعاب البيانات، والمعالجة المسبقة، وتدريب النماذج، والتحقق من الصحة وحتى النشر.
فيما يلي بعض العوامل التي يمكن أن تؤدي إلى أتمتة تدريب النماذج ونشرها:
- المراسلة
- المراقبة أو أحداث التقويم
- تغييرات البيانات
- تغييرات التعليمة البرمجية الخاصة بتدريب النماذج
- تغييرات التعليمة البرمجية للتطبيق.
تساعد الاختبارات المؤتمتة في اكتشاف المشكلات مبكرًا لإصلاح الأخطاء والتعلّم بسرعة. تكون الأتمتة أكثر كفاءةً مع البنية التحتية كرمز (IaC). يُمكنك استخدام الأدوات في تحديد البنية التحتية وإدارتها. يساعد ذلك في ضمان إمكانية تكرارها ونشرها باستمرار عبر بيئات مختلفة.
اقرأ حول البنية التحتية كرمز (IaC) »
الأنشطة المستمرة
من خلال الأتمتة، يُمكنك إجراء الاختبارات بصفة مستمرة ونشر التعليمة البرمجية عبر مسار تعلّم الآلة لديك.
في عمليات MLOps، يشير المصطلح مستمر إلى أربعة أنشطة تحدث بصفة مستمرة إذا تم إجراء أي تغيير في أي مكان في النظام:
- التكامل المستمر يوسّع التحقق من صحة التعليمة البرمجية واختبارها كي يشملان البيانات والنماذج الموجودة بالمسار
- التسليم المستمر يؤدي تلقائيًا إلى نشر النموذج المُدرَّب حديثًا أو خدمة التنبؤ بالنموذج
- التدريب المستمر يعيد تلقائيًا تدريب نماذج تعلّم الآلة المراد إعادة نشرها
- المراقبة المستمرة تتعلق بمراقبة البيانات ومراقبة النماذج باستخدام مقاييس ذات صلة بالأعمال
حوكمة النماذج
الحوكمة تشمل إدارة جميع جوانب أنظمة تعلّم الآلة من أجل تحقيق الكفاءة. يجب عليك القيام بالعديد من الأنشطة الخاصة بالحوكمة، منها ما يلي:
- تعزيز التعاون الوثيق بين علماء البيانات والمهندسين وأصحاب المصلحة في مجال الأعمال
- استخدام وثائق واضحة وقنوات اتصال فعّالة لضمان توافق الجميع
- وضع آليات تختص بجمع الملاحظات والتعليقات حول تنبؤات النماذج وإعادة تدريب النماذج بشكل أكبر
- التأكد من حماية البيانات الحساسة، والوصول إلى النماذج والبنية التحتية، وتلبية متطلبات الامتثال
من الضروري أيضًا أن تكون هناك عملية منظمة تختص بمراجعة النماذج والتحقق منها واعتمادها قبل أن تُستخدم. يمكن أن يشمل ذلك التحقق من اعتبارات العدالة والإنصاف، واعتبارات التحيز، والاعتبارات الأخلاقية.
ما مزايا MLOps؟
يساعد تعلّم الآلة المؤسسات في تحليل البيانات واستخلاص الرؤى والأفكار لصنع القرار. ولكن نظرًا لأنه مجال مبتكر وتجريبي، فهو مصحوب بتحديات خاصة به. فمن العوامل التي تحد من نجاح المشروع حماية البيانات الحساسة، والميزانيات الصغيرة، ونقص المهارات، والتكنولوجيا المتطورة باستمرار. بدون التحكم والتوجيه، قد تتزايد التكاليف بصورة سريعة، وقد لا تحقق فرق علوم البيانات النتائج المرجوة.
يوفر MLOps خريطةً توجه مشروعات تعلّم الآلة نحو النجاح، بصرف النظر عن القيود. فيما يلي بعض مزايا MLOps الأساسية.
تسريع الطرح بالأسواق
يوفر MLOps لمؤسستك إطارًا تحقق من خلاله أهداف علوم البيانات بسرعة وكفاءة أكبر. يُمكن للمطورين والمديرين أن يصبحوا أكثر إستراتيجيةً ومرونةً في إدارة النماذج. يُمكن لمهندسي تعلّم الآلة توفير البنية التحتية من خلال ملفات التكوين التعريفية لبدء المشروعات بشكل أكثر سلاسة.
تؤدي أتمتة إنشاء النماذج ونشرها إلى تسريع الطرح بالأسواق بتكاليف تشغيلية أقل. يُمكن لعلماء البيانات استكشاف بيانات المؤسسة بسرعة لتقديم المزيد من قيمة الأعمال للجميع.
تحسين الإنتاجية
تعمل ممارسات MLOps على تعزيز الإنتاجية وتسريع تطوير نماذج تعلّم الآلة. على سبيل المثال، يُمكنك توحيد بيئة التطوير أو بيئة التجريب. بعد ذلك، يُمكن لمهندسي تعلّم الآلة إطلاق مشروعات جديدة، والتنقل بين المشروعات، وإعادة استخدام نماذج تعلّم الآلة عبر التطبيقات. يُمكنهم إنشاء عمليات قابلة للتكرار لتسريع التجريب وتدريب النماذج. يُمكن لفرق هندسة البرمجيات التعاون والتنسيق خلال دورة حياة تطوير تعلّم الآلة لزيادة الكفاءة.
الكفاءة في نشر النماذج
تُحسّن MLOps استكشاف الأخطاء وإصلاحها وإدارة النماذج في الإنتاج. على سبيل المثال، يُمكن لمهندسي البرامج مراقبة أداء النماذج وإعادة إنتاج السلوك لاستكشاف الأخطاء وإصلاحها. يُمكنهم تتبع إصدارات النماذج وإدارتها مركزيًا واختيار الإصدار المناسب لحالات استخدام الأعمال المختلفة.
عندما تُدمج مهام سير عمل النموذج مع مسارات التكامل المستمر والتسليم المستمر (CI/CD)، فإنك بذلك تحد من تدهور الأداء وتحافظ على جودة نموذجك. هذا صحيح حتى بعد الترقيات وضبط النموذج.
كيفية تطبيق MLOps في المؤسسة
توجد ثلاثة مستويات لتنفيذ MLOps، اعتمادًا على مستوى نضج الأتمتة داخل مؤسستك.
المستوى 0 من MLOps
تقوم مهام سير عمل تعلّم الآلة اليدوية والعملية التي يقودها علماء البيانات بتشخيص المستوى 0 للمؤسسات التي بدأت للتو استخدام أنظمة تعلّم الآلة.
كل خطوة تتم يدويًا، بما في ذلك تجهيز البيانات وتدريب تعلّم الآلة وأداء النموذج والتحقق من الصحة. يتطلب ذلك المستوى الانتقال اليدوي بين الخطوات، ويتم تشغيل كل خطوة وإدارتها بشكل تفاعلي. يقوم علماء البيانات عادةً بتسليم النماذج المدربة في صورة عناصر ينشرها فريق الهندسة على البنية التحتية لواجهة برمجة التطبيقات (API).
تفصل هذه العملية بين علماء البيانات الذين ينشئون النموذج والمهندسين الذين ينشرونه. الإصدارات النادرة تعني أن فرق علوم البيانات قد تعيد تدريب النماذج مرات قليلة فقط في السنة. لا توجد اعتبارات التكامل المستمر/التسليم المستمر (CI/CD) بالنسبة لنماذج تعلّم الآلة مع بقية التعليمة البرمجية للتطبيق. وبالمثل، فإن مراقبة الأداء النشطة غير موجودة.
المستوى 1 من MLOps
غالبًا ما تتطلب المؤسسات التي ترغب في تدريب نفس النماذج باستخدام بيانات جديدة تنفيذ المستوى 1 من النضج. يهدف المستوى 1 من MLOps إلى استمرارية تدريب النموذج عن طريق أتمتة مسار تعلّم الآلة.
في المستوى 0، تقوم بنشر نموذج مُدرَّب للإنتاج. في المقابل، بالنسبة للمستوى 1، يُمكنك نشر مسار تدريب يتم تشغيله بشكل متكرر لخدمة النموذج المُدرَّب لتطبيقاتك الأخرى. كحد أدنى، يُمكنك تحقيق التسليم المستمر لخدمة التنبؤ بالنموذج.
يتميز مستوى النضج 1 بالخصائص التالية:
- خطوات تجربة تعلّم الآلة السريعة التي تتضمن الأتمتة الكبيرة
- التدريب المستمر للنموذج في الإنتاج باستخدام بيانات جديدة كمحفزات مباشرة للمسار
- تنفيذ نفس المسارات عبر بيئات التطوير وما قبل الإنتاج والإنتاج
تعمل فرق الهندسة مع علماء البيانات لإنشاء مكونات التعليمة البرمجية المعيارية التي يمكن إعادة استخدامها وتكوينها وإمكانية مشاركتها عبر مسارات تعلّم الآلة. يُمكنك أيضًا إنشاء مخزن ميزات مركزي يعمل على توحيد التخزين والوصول وتعريف الميزات الخاصة بتدريب تعلّم الآلة وتقديمه. بالإضافة إلى ذلك، يُمكنك إدارة البيانات الوصفية مثل المعلومات حول كل تشغيل للمسار وبيانات إعادة الإنتاج.
المستوى 2 من MLOps
المستوى 2 من MLOps يختص بالمؤسسات التي ترغب في إجراء المزيد من التجارب وإنشاء نماذج جديدة بشكل متكرر تتطلب تدريبًا مستمرًا. إنه مناسب للشركات التي تعتمد على التكنولوجيا التي تحدث نماذجها في دقائق، وتعيد تدريبها كل ساعة أو يوميًا، وتعيد نشرها في نفس الوقت على آلاف الخوادم.
نظرًا لوجود العديد من مسارات تعلّم الآلة قيد التشغيل، فإن إعداد المستوى 2 من MLOps يتطلب جميع إعدادات المستوى 1 من MLOps. ويتطلب أيضًا ما يلي:
- منسق مسارات تعلّم الآلة
- سجل نماذج لتتبع النماذج المتعددة
تتكرر المراحل الثلاث التالية على نطاق واسع في الكثير من مسارات تعلّم الآلة لضمان التسليم المستمر للنماذج.
بناء المسار
يُمكنك بصفة متكررة تجربة النمذجة الجديدة وخوارزميات تعلّم الآلة الجديدة وفي الوقت نفسه ضمان تنسيق خطوات التجربة. ينتج عنه هذه المرحلة التعليمة البرمجية المصدر الخاصة بمسارات تعلّم الآلة لديك. يُمكنك تخزين التعليمة البرمجية في مستودع مصادر.
نشر المسار
بعد ذلك، يُمكنك إنشاء التعليمة البرمجية المصدر وتشغيل الاختبارات للحصول على مكونات المسار المراد نشره. الناتج هو مسار منشور يتضمن تنفيذ النموذج الجديد.
خدمة المسار
أخيرًا، تقوم بخدمة المسار كخدمة تنبؤ لتطبيقاتك. تجمع إحصائيات حول خدمة التنبؤ بالنماذج المنشورة من البيانات المباشرة. ينتج عن هذه المرحلة محفز لتشغيل المسار أو دورة تجريب جديدة.
ما الفرق بين MLOps وDevOps؟
يُعد كل من MLOps وDevOps من الممارسات التي تهدف إلى تحسين العمليات التي تقوم فيها بتطوير تطبيقات برمجية ونشرها ومراقبتها.
يهدف DevOps إلى سد الفجوة بين فرق التطوير وفرق العمليات. يساعد DevOps في ضمان اختبار تغييرات التعليمة البرمجية تلقائيًا ودمجها ونشرها في مرحلة الإنتاج بكفاءة وموثوقية. إنه يعزز ثقافة التعاون لتسريع وتيرة إنجاز دورات الإصدار، وتحسين جودة التطبيقات، وتعزيز كفاءة استخدام الموارد.
ومن ناحية أخرى، يُعد MLOps مجموعةً من أفضل الممارسات المصممة خصيصًا لمشروعات تعلّم الآلة. في حين أنه قد يكون من السهل نسبيًا نشر البرامج التقليدية ودمجها، إلا أن نماذج تعلّم الآلة تمثل تحدياتٍ فريدةً. وهي تشمل جمع البيانات، وتدريب النماذج، والتحقق من الصحة، والنشر، والمراقبة المستمرة، وإعادة التدريب.
يركز MLOps على أتمتة دورة حياة تعلّم الآلة. إنه لا يضمن فقط تطوير النماذج، بل يضمن أيضًا نشرها ومراقبتها وإعادة تدريبها بطريقة منهجية ومتكررة. إنه يجلب مبادئ DevOps إلى تعلّم الآلة. يؤدي MLOps إلى تسريع نشر نماذج تعلّم الآلة، وزيادة الدقة بمرور الوقت، وزيادة ضمانات توفير قيمة أعمال حقيقية.
كيف تساعدك AWS في تلبية متطلبات MLOps؟
Amazon SageMaker هي خدمة مُدارة بالكامل يُمكنك استخدامها في تجهيز البيانات وبناء نماذج تعلم الآلة وتدريبها ونشرها. إنها مناسبة لأي حالة استخدام تتضمن بنيةً تحتيةً وأدوات ومهام سير عمل مُدارة بالكامل.
توفر SageMaker أدواتٍ مبنية لغرض معين لـ MLOps لأتمتة العمليات خلال دورة حياة تعلّم الآلة. عن طريق استخدام Sagemaker لـ MLOps، يُمكنك بسرعة تحقيق المستوى 2 من نضج MLOps على نطاق واسع.
فيما يلي ميزات SageMaker الأساسية التي يُمكنك استخدامها:
- استخدم تجارب SageMaker في تتبع العناصر المتعلقة بوظائف تدريب النماذج، مثل المَعْلمات والمقاييس ومجموعات البيانات.
- كوّن مسارات SageMaker لتعمل تلقائيًا على فواصل زمنية منتظمة أو عند تشغيل أحداث معينة.
- استخدم سجل نماذج SageMaker في تتبع إصدارات النماذج. يُمكنك أيضًا تتبع البيانات الوصفية الخاصة بها، مثل تجميع حالات الاستخدام وخطوط الأساس الخاصة بمقاييس أداء النماذج في مستودع مركزي. يُمكنك استخدام هذه المعلومات لاختيار أفضل نموذج بناءً على متطلبات عملك.
ابدأ اليوم استخدام MLOps على Amazon Web Services (AWS) عن طريق إنشاء حساب.