استخدام أطر عمل ML الأخرى في TFX

TFX كمنصة محايدة للإطار، ويمكن استخدامها مع أطر تعلم الآلة الأخرى، على سبيل المثال، JAX، scikit-learn.

بالنسبة لمطوري النماذج، هذا يعني أنهم لا يحتاجون إلى إعادة كتابة كود النموذج الخاص بهم والذي تم تنفيذه في إطار عمل آخر لتعلم الآلة، ولكن يمكنهم بدلاً من ذلك إعادة استخدام الجزء الأكبر من كود التدريب كما هو في TFX، والاستفادة من إمكانيات TFX الأخرى وبقية نظام TensorFlow البيئي. عروض.

لا تعتمد حزمة SDK لخط أنابيب TFX ومعظم الوحدات النمطية في TFX، على سبيل المثال، مُنسق خط الأنابيب، بشكل مباشر على TensorFlow، ولكن هناك بعض الجوانب الموجهة نحو TensorFlow، مثل تنسيقات البيانات. مع بعض الاعتبار لاحتياجات إطار عمل نمذجة معين، يمكن استخدام خط أنابيب TFX لتدريب النماذج في أي إطار عمل آخر لتعلم الآلة يعتمد على بايثون. يتضمن ذلك Scikit-learn وXGBoost وPyTorch وغيرها. تتضمن بعض الاعتبارات الخاصة باستخدام مكونات TFX القياسية مع أطر عمل أخرى ما يلي:

  • يقوم exampleGen بإخراج tf.train.Example في ملفات TFRecord. إنه تمثيل عام لبيانات التدريب، وتستخدم المكونات النهائية TFXIO لقراءتها كسهم/RecordBatch في الذاكرة، والتي يمكن تحويلها أيضًا إلى tf.dataset أو Tensors أو تنسيقات أخرى. يتم أخذ تنسيقات الحمولة/الملفات بخلاف tf.train.Example/TFRecord في الاعتبار، ولكن بالنسبة لمستخدمي TFXIO يجب أن يكون صندوقًا أسود.
  • يمكن استخدام التحويل لإنشاء أمثلة تدريب محولة بغض النظر عن إطار العمل المستخدم للتدريب، ولكن إذا لم يكن تنسيق النموذج saved_model ، فلن يتمكن المستخدمون من تضمين الرسم البياني للتحويل في النموذج. في هذه الحالة، يحتاج تنبؤ النموذج إلى أخذ ميزات محولة بدلاً من الميزات الأولية، ويمكن للمستخدمين تشغيل التحويل كخطوة معالجة مسبقة قبل استدعاء تنبؤ النموذج عند العرض.
  • يدعم المدرب GenericTraining حتى يتمكن المستخدمون من تدريب نماذجهم باستخدام أي إطار عمل لتعلم الآلة.
  • يدعم المُقيم افتراضيًا saved_model فقط، ولكن يمكن للمستخدمين توفير UDF الذي يقوم بإنشاء تنبؤات لتقييم النموذج.

سيتطلب تدريب نموذج في إطار عمل غير مستند إلى بايثون عزل مكون تدريب مخصص في حاوية Docker، كجزء من خط أنابيب يعمل في بيئة حاوية مثل Kubernetes.

جاكس

JAX عبارة عن Autograd وXLA، تم جمعهما معًا لأبحاث التعلم الآلي عالية الأداء. Flax هي مكتبة شبكة عصبية ونظام بيئي لـ JAX، مصممة لتحقيق المرونة.

باستخدام jax2tf ، نحن قادرون على تحويل نماذج JAX/Flax المدربة إلى تنسيق saved_model ، والذي يمكن استخدامه بسلاسة في TFX مع التدريب العام وتقييم النموذج. لمزيد من التفاصيل، تحقق من هذا المثال .

scikit-تعلم

Scikit-learn هي مكتبة للتعلم الآلي للغة برمجة بايثون. لدينا مثال e2e مع التدريب والتقييم المخصص في TFX-Addons.