MLOps هي ممارسة تطبيق ممارسات DevOps للمساعدة في أتمتة سير عمل التعلم الآلي (ML) وإدارته وتدقيقه. تتضمن مسارات عمل ML خطوات من أجل:
- إعداد وتحليل وتحويل البيانات.
- تدريب وتقييم النموذج.
- نشر النماذج المدربة للإنتاج.
- تتبع عناصر ML وفهم تبعياتها.
قد تكون إدارة هذه الخطوات بطريقة مخصصة أمرًا صعبًا وتستغرق وقتًا طويلاً.
تسهل TFX تنفيذ MLOps من خلال توفير مجموعة أدوات تساعدك على تنسيق عملية ML الخاصة بك على منسقين مختلفين، مثل: Apache Airflow وApache Beam وKubeflow Pipelines. من خلال تنفيذ سير العمل الخاص بك باعتباره خط أنابيب TFX، يمكنك:
- قم بأتمتة عملية تعلم الآلة الخاصة بك، مما يتيح لك إعادة تدريب النموذج الخاص بك وتقييمه ونشره بشكل منتظم.
- استخدم موارد الحوسبة الموزعة لمعالجة مجموعات البيانات الكبيرة وأحمال العمل.
- قم بزيادة سرعة التجريب عن طريق تشغيل خط أنابيب بمجموعات مختلفة من المعلمات الفائقة.
يصف هذا الدليل المفاهيم الأساسية المطلوبة لفهم خطوط أنابيب TFX.
الأداة
تسمى مخرجات الخطوات في خط أنابيب TFX بالقطع الأثرية . قد تستخدم الخطوات اللاحقة في سير عملك هذه العناصر كمدخلات. بهذه الطريقة، يتيح لك TFX نقل البيانات بين خطوات سير العمل.
على سبيل المثال، يقوم المكون القياسي ExampleGen
بإصدار أمثلة متسلسلة، والتي تستخدمها المكونات مثل المكون القياسي StatisticsGen
كمدخلات.
يجب أن تكون المنتجات مكتوبة بقوة باستخدام نوع قطعة أثرية مسجل في مخزن بيانات تعريف ML . تعرف على المزيد حول المفاهيم المستخدمة في البيانات الوصفية لتعلم الآلة .
أنواع القطع الأثرية لها اسم وتحدد مخططًا لخصائصها. يجب أن تكون أسماء أنواع العناصر فريدة في مخزن بيانات تعريف ML لديك. يوفر TFX العديد من أنواع البيانات القياسية التي تصف أنواع البيانات المعقدة وأنواع القيم، مثل: السلسلة والعدد الصحيح والتعويم. يمكنك إعادة استخدام أنواع المصنوعات هذه أو تعريف أنواع المصنوعات المخصصة المشتقة من Artifact
.
معامل
المعلمات هي مدخلات لخطوط الأنابيب المعروفة قبل تنفيذ خط الأنابيب الخاص بك. تتيح لك المعلمات تغيير سلوك المسار، أو جزء منه، من خلال التكوين بدلاً من التعليمات البرمجية.
على سبيل المثال، يمكنك استخدام المعلمات لتشغيل خط الأنابيب بمجموعات مختلفة من المعلمات الفائقة دون تغيير رمز المسار.
يتيح لك استخدام المعلمات زيادة سرعة التجريب عن طريق تسهيل تشغيل خط الأنابيب الخاص بك باستخدام مجموعات مختلفة من المعلمات.
تعرف على المزيد حول فئة RuntimeParameter .
عنصر
المكون هو تنفيذ مهمة ML التي يمكنك استخدامها كخطوة في مسار TFX الخاص بك. تتكون المكونات من:
- مواصفات المكون، التي تحدد عناصر الإدخال والإخراج للمكون، والمعلمات المطلوبة للمكون.
- المنفذ، الذي ينفذ التعليمات البرمجية لتنفيذ خطوة في سير عمل تعلم الآلة لديك، مثل استيعاب البيانات وتحويلها أو التدريب وتقييم النموذج.
- واجهة مكون، والتي تقوم بحزم مواصفات المكون والمنفذ للاستخدام في خط الأنابيب.
توفر TFX العديد من المكونات القياسية التي يمكنك استخدامها في خطوط الأنابيب الخاصة بك. إذا كانت هذه المكونات لا تلبي احتياجاتك، فيمكنك إنشاء مكونات مخصصة. تعرف على المزيد حول المكونات المخصصة .
خط انابيب
خط أنابيب TFX هو تطبيق محمول لسير عمل ML الذي يمكن تشغيله على منسقين مختلفين، مثل: Apache Airflow وApache Beam وKubeflow Pipelines. يتكون خط الأنابيب من مثيلات المكونات ومعلمات الإدخال.
تُنتج مثيلات المكونات عناصر كمخرجات وتعتمد عادةً على العناصر التي تنتجها مثيلات المكونات الأولية كمدخلات. يتم تحديد تسلسل التنفيذ لمثيلات المكونات عن طريق إنشاء رسم بياني غير دوري موجه لتبعيات العناصر.
على سبيل المثال، فكر في خط أنابيب يقوم بما يلي:
- يستوعب البيانات مباشرة من نظام خاص باستخدام مكون مخصص.
- حساب إحصائيات بيانات التدريب باستخدام المكون القياسي StatisticsGen.
- ينشئ مخطط بيانات باستخدام مكون SchemaGen القياسي.
- التحقق من بيانات التدريب بحثًا عن الحالات الشاذة باستخدام المكون القياسي exampleValidator.
- ينفذ هندسة الميزات على مجموعة البيانات باستخدام مكون التحويل القياسي.
- يدرب نموذجًا باستخدام المكون القياسي للمدرب.
- يقوم بتقييم النموذج المُدرب باستخدام مكون المُقيم.
- إذا اجتاز النموذج التقييم الخاص به، فسيقوم المسار بإدراج النموذج المُدرب في نظام نشر خاص باستخدام مكون مخصص.
لتحديد تسلسل التنفيذ لمثيلات المكونات، تقوم TFX بتحليل تبعيات العناصر.
- لا يحتوي مكون استيعاب البيانات على أي تبعيات صناعية، لذا يمكن أن يكون العقدة الأولى في الرسم البياني.
- يعتمد StatisticsGen على الأمثلة الناتجة عن استيعاب البيانات، لذا يجب تنفيذه بعد استيعاب البيانات.
- يعتمد SchemaGen على الإحصائيات التي تم إنشاؤها بواسطة StatisticsGen، لذلك يجب تنفيذها بعد StatisticsGen.
- يعتمد exampleValidator على الإحصائيات التي تم إنشاؤها بواسطة StatisticsGen والمخطط الذي تم إنشاؤه بواسطة SchemaGen، لذلك يجب تنفيذه بعد StatisticsGen وSchemaGen.
- يعتمد التحويل على الأمثلة الناتجة عن استيعاب البيانات والمخطط الذي تم إنشاؤه بواسطة SchemaGen، لذا يجب تنفيذه بعد استيعاب البيانات وSchemaGen.
- يعتمد المدرب على الأمثلة الناتجة عن استيعاب البيانات، والمخطط الذي تم إنشاؤه بواسطة SchemaGen، والنموذج المحفوظ الذي تم إنتاجه بواسطة Transform. لا يمكن تنفيذ المدرب إلا بعد استيعاب البيانات وSchemaGen والتحويل.
- يعتمد المقيم على الأمثلة الناتجة عن استيعاب البيانات والنموذج المحفوظ الذي ينتجه المدرب، لذا يجب تنفيذه بعد استيعاب البيانات والمدرب.
- يعتمد الموزع المخصص على النموذج المحفوظ الذي ينتجه المدرب ونتائج التحليل التي أنشأها المقيم، لذا يجب تنفيذ الموزع بعد المدرب والمقيم.
وبناءً على هذا التحليل، يدير المنسق:
- استيعاب البيانات، StatisticsGen، مثيلات مكون SchemaGen بشكل تسلسلي.
- يمكن تشغيل مكونات exampleValidator وTransform بالتوازي حيث أنهما يتشاركان في تبعيات عناصر الإدخال ولا يعتمدان على مخرجات بعضهما البعض.
- بعد اكتمال مكون التحويل، يتم تشغيل مثيلات مكون المدرب والمقيم والناشر المخصص بشكل تسلسلي.
تعرف على المزيد حول بناء خط أنابيب TFX .
قالب خط أنابيب TFX
تسهل قوالب خطوط أنابيب TFX البدء في تطوير خطوط الأنابيب من خلال توفير خط أنابيب تم إنشاؤه مسبقًا والذي يمكنك تخصيصه ليناسب حالة الاستخدام الخاصة بك.
تعرف على المزيد حول تخصيص قالب خط أنابيب TFX .
تشغيل خط الأنابيب
التشغيل هو تنفيذ واحد لخط الأنابيب.
منسق
المنسق هو نظام يمكنك من خلاله تنفيذ عمليات تشغيل خطوط الأنابيب. يدعم TFX منسقين مثل: Apache Airflow و Apache Beam و Kubeflow Pipelines . يستخدم TFX أيضًا مصطلح DagRunner للإشارة إلى التطبيق الذي يدعم المُنسق.