دليل مستخدم TFX

مقدمة

TFX عبارة عن نظام أساسي للتعلم الآلي (ML) على نطاق إنتاج Google يعتمد على TensorFlow. يوفر إطارًا للتكوين ومكتبات مشتركة لدمج المكونات المشتركة اللازمة لتحديد نظام التعلم الآلي الخاص بك وتشغيله ومراقبته.

TFX 1.0

يسعدنا أن نعلن عن توفر TFX 1.0.0 . هذا هو الإصدار الأولي بعد الإصدار التجريبي من TFX ، والذي يوفر واجهات برمجة تطبيقات عامة وعناصر فنية ثابتة. يمكنك التأكد من أن خطوط أنابيب TFX المستقبلية الخاصة بك ستستمر في العمل بعد الترقية ضمن نطاق التوافق المحدد في RFC هذا.

تثبيت

بايثونPyPI

pip install tfx

الحزم الليلية

تستضيف TFX أيضًا حزمًا ليلية على https://pypi-nightly.tensorflow.org على Google Cloud. لتثبيت أحدث حزمة ليلية ، الرجاء استخدام الأمر التالي:

pip install --extra-index-url https://pypi-nightly.tensorflow.org/simple --pre tfx

سيؤدي هذا إلى تثبيت الحزم الليلية للاعتمادات الرئيسية لـ TFX مثل تحليل نموذج TensorFlow (TFMA) والتحقق من صحة بيانات TensorFlow (TFDV) وتحويل TensorFlow (TFT) ومكتبات TFX الأساسية المشتركة (TFX-BSL) و ML Metadata (MLMD).

حول TFX

TFX عبارة عن منصة لبناء وإدارة تدفقات عمل ML في بيئة إنتاج. توفر TFX ما يلي:

  • مجموعة أدوات لبناء خطوط أنابيب ML. تتيح لك خطوط أنابيب TFX تنظيم سير عمل ML الخاص بك على العديد من الأنظمة الأساسية ، مثل: Apache Airflow و Apache Beam و Kubeflow Pipelines.

    تعرف على المزيد حول خطوط أنابيب TFX .

  • مجموعة من المكونات القياسية التي يمكنك استخدامها كجزء من خط الأنابيب ، أو كجزء من البرنامج النصي لتدريب تعلم الآلة. توفر مكونات TFX القياسية وظائف مجربة لمساعدتك على البدء في بناء عملية ML بسهولة.

    تعرف على المزيد حول مكونات TFX القياسية .

  • مكتبات توفر الوظائف الأساسية للعديد من المكونات القياسية. يمكنك استخدام مكتبات TFX لإضافة هذه الوظيفة إلى المكونات المخصصة الخاصة بك ، أو استخدامها بشكل منفصل.

    تعرف على المزيد حول مكتبات TFX .

TFX عبارة عن مجموعة أدوات للتعلم الآلي على نطاق إنتاج Google وتعتمد على TensorFlow. يوفر إطارًا للتكوين ومكتبات مشتركة لدمج المكونات المشتركة اللازمة لتحديد نظام التعلم الآلي الخاص بك وتشغيله ومراقبته.

مكونات TFX القياسية

خط أنابيب TFX عبارة عن سلسلة من المكونات التي تنفذ خط أنابيب ML المصمم خصيصًا لمهام التعلم الآلي عالية الأداء والقابلة للتطوير. يتضمن ذلك النمذجة والتدريب وخدمة الاستدلال وإدارة عمليات النشر للأهداف عبر الإنترنت والجوال الأصلي وجافا سكريبت.

يشتمل خط أنابيب TFX عادةً على المكونات التالية:

  • exampleGen هو مكون الإدخال الأولي لخط الأنابيب الذي يستوعب مجموعة بيانات الإدخال ويقسمها اختياريًا.

  • StatisticsGen يحسب إحصائيات لمجموعة البيانات.

  • يفحص SchemaGen الإحصائيات وإنشاء مخطط بيانات.

  • يبحث ExampleValidator عن القيم الشاذة والقيم المفقودة في مجموعة البيانات.

  • ينفذ التحويل هندسة الميزات على مجموعة البيانات.

  • يقوم المدرب بتدريب النموذج.

  • الموالف يضبط المعلمات الفائقة للنموذج.

  • يقوم المقيم بتحليل عميق لنتائج التدريب ويساعدك على التحقق من صحة النماذج المصدرة ، والتأكد من أنها "جيدة بما يكفي" لدفعها إلى الإنتاج.

  • يتحقق InfraValidator من أن النموذج قابل للخدمة بالفعل من البنية التحتية ، ويمنع النموذج السيئ من الدفع.

  • ينشر Pusher النموذج على بنية تحتية تخدم.

  • ينفذ BulkInferrer معالجة الدُفعات على نموذج بطلبات استدلال غير موسومة.

يوضح هذا الرسم البياني تدفق البيانات بين هذه المكونات:

تدفق المكون

مكتبات TFX

يتضمن TFX كلاً من مكتبات ومكونات خطوط الأنابيب. يوضح هذا الرسم البياني العلاقات بين مكتبات TFX ومكونات خطوط الأنابيب:

المكتبات والمكونات

يوفر TFX العديد من حزم Python وهي المكتبات المستخدمة لإنشاء مكونات خط الأنابيب. ستستخدم هذه المكتبات لإنشاء مكونات خطوط الأنابيب الخاصة بك حتى تتمكن التعليمات البرمجية الخاصة بك من التركيز على الجوانب الفريدة لخط الأنابيب الخاص بك.

تتضمن مكتبات TFX:

  • التحقق من صحة بيانات TensorFlow (TFDV) عبارة عن مكتبة لتحليل بيانات التعلم الآلي والتحقق من صحتها. إنه مصمم ليكون قابلاً للتطوير بدرجة عالية ولعمل بشكل جيد مع TensorFlow و TFX. يتضمن TFDV:

    • حساب قابل للقياس لإحصاءات موجزة للتدريب وبيانات الاختبار.
    • التكامل مع عارض لتوزيع البيانات والإحصاءات ، بالإضافة إلى مقارنة الأوجه لأزواج مجموعات البيانات (الواجهات).
    • إنشاء مخطط البيانات الآلي لوصف التوقعات حول البيانات مثل القيم والنطاقات والمفردات المطلوبة.
    • عارض مخطط لمساعدتك على فحص المخطط.
    • اكتشاف العيوب لتحديد الحالات الشاذة ، مثل الميزات المفقودة أو القيم خارج النطاق أو أنواع الميزات الخاطئة ، على سبيل المثال لا الحصر.
    • عارض الشذوذ حتى تتمكن من رؤية الميزات التي بها حالات شاذة ومعرفة المزيد من أجل تصحيحها.
  • TensorFlow Transform (TFT) هي مكتبة للمعالجة المسبقة للبيانات باستخدام TensorFlow. يعتبر TensorFlow Transform مفيدًا للبيانات التي تتطلب مرورًا كاملاً ، مثل:

    • تطبيع قيمة الإدخال بالمتوسط ​​والانحراف المعياري.
    • تحويل السلاسل إلى أعداد صحيحة عن طريق توليد مفردات على جميع قيم الإدخال.
    • قم بتحويل العوامات إلى أعداد صحيحة عن طريق تعيينها إلى مجموعات بناءً على توزيع البيانات المرصود.
  • يستخدم TensorFlow لتدريب النماذج باستخدام TFX. يستوعب بيانات التدريب ورمز النمذجة ويخلق نتيجة SavedModel. كما يدمج أيضًا خط أنابيب هندسيًا للميزات تم إنشاؤه بواسطة TensorFlow Transform للمعالجة المسبقة لبيانات الإدخال.

    يستخدم KerasTuner لضبط المعلمات الفائقة للنموذج.

  • تحليل نموذج TensorFlow (TFMA) عبارة عن مكتبة لتقييم نماذج TensorFlow. يتم استخدامه مع TensorFlow لإنشاء نموذج EvalSavedModel ، والذي يصبح أساس تحليله. يسمح للمستخدمين بتقييم نماذجهم على كميات كبيرة من البيانات بطريقة موزعة ، باستخدام نفس المقاييس المحددة في المدرب. يمكن حساب هذه المقاييس على شرائح مختلفة من البيانات وتصور في دفاتر Jupyter.

  • توفر TensorFlow Metadata (TFMD) تمثيلات قياسية لبيانات التعريف التي تكون مفيدة عند تدريب نماذج التعلم الآلي باستخدام TensorFlow. قد يتم إنتاج البيانات الوصفية يدويًا أو تلقائيًا أثناء تحليل بيانات الإدخال ، ويمكن استهلاكها للتحقق من صحة البيانات والاستكشاف والتحويل. تتضمن تنسيقات تسلسل البيانات الوصفية ما يلي:

    • مخطط يصف البيانات الجدولية (على سبيل المثال ، أمثلة tf).
    • مجموعة من الإحصائيات الموجزة لمجموعات البيانات هذه.
  • ML Metadata (MLMD) عبارة عن مكتبة لتسجيل واسترداد البيانات الوصفية المرتبطة بسير عمل مطور ML وعالم البيانات. غالبًا ما تستخدم البيانات الوصفية تمثيلات TFMD. يدير MLMD الثبات باستخدام SQL-Lite و MySQL ومخازن بيانات أخرى مماثلة.

دعم التقنيات

مطلوب

  • Apache Beam هو نموذج مفتوح المصدر وموحد لتحديد كل من خطوط أنابيب المعالجة المتوازية للدُفعات وتدفق البيانات. يستخدم TFX Apache Beam لتنفيذ خطوط أنابيب موازية للبيانات. يتم بعد ذلك تنفيذ خط الأنابيب بواسطة أحد الأطراف الخلفية للمعالجة الموزعة المدعومة من Beam ، والتي تشمل Apache Flink و Apache Spark و Google Cloud Dataflow وغيرها.

اختياري

يجعل المنظمون مثل Apache Airflow و Kubeflow تكوين خط أنابيب ML وتشغيله ومراقبته وصيانته أسهل.

  • Apache Airflow هو نظام أساسي لتأليف وجدولة ومراقبة سير العمل برمجيًا. يستخدم TFX تدفق الهواء لتأليف مهام سير العمل كرسوم بيانية حلقية موجّهة (DAGs) للمهام. ينفذ مجدول تدفق الهواء المهام على مجموعة من العمال مع اتباع التبعيات المحددة. تجعل أدوات سطر الأوامر الغنية إجراء العمليات الجراحية المعقدة على DAGs أمرًا سريعًا. تسهل واجهة المستخدم الثرية تصور خطوط الأنابيب قيد الإنتاج ومراقبة التقدم واستكشاف المشكلات وإصلاحها عند الحاجة. عندما يتم تعريف مهام سير العمل على أنها تعليمات برمجية ، فإنها تصبح أكثر قابلية للصيانة وإصدارًا وقابلية للاختبار وتعاونية.

  • Kubeflow مكرس لجعل عمليات نشر سير عمل التعلم الآلي (ML) على Kubernetes بسيطة ومحمولة وقابلة للتطوير. هدف Kubeflow ليس إعادة إنشاء خدمات أخرى ، ولكن توفير طريقة مباشرة لنشر أفضل أنظمة مفتوحة المصدر من أجل ML إلى البنى التحتية المتنوعة. تتيح خطوط أنابيب Kubeflow تكوين وتنفيذ تدفقات عمل قابلة للتكرار على Kubeflow ، مدمجة مع التجارب القائمة على أجهزة الكمبيوتر المحمول والتجريب. تشمل خدمات خطوط أنابيب Kubeflow على Kubernetes مخزن البيانات الوصفية المستضاف ومحرك التنسيق القائم على الحاوية وخادم الكمبيوتر المحمول وواجهة المستخدم لمساعدة المستخدمين على تطوير خطوط أنابيب ML المعقدة وتشغيلها وإدارتها على نطاق واسع. يسمح Kubeflow Pipelines SDK بإنشاء ومشاركة المكونات وتكوين خطوط الأنابيب برمجيًا.

قابلية التشغيل والتشغيل البيني

تم تصميم TFX ليكون قابلاً للنقل إلى بيئات متعددة وأطر عمل تنسيق ، بما في ذلك Apache Airflow و Apache Beam و Kubeflow . كما أنه قابل للنقل إلى أنظمة حوسبة مختلفة ، بما في ذلك الأنظمة الأساسية داخل الشركة والأنظمة السحابية مثل Google Cloud Platform (GCP) . على وجه الخصوص ، تتفاعل TFX مع خدمات GCP المدارة الخادم ، مثل Cloud AI Platform للتدريب والتنبؤ ، و Cloud Dataflow لمعالجة البيانات الموزعة للعديد من الجوانب الأخرى لدورة حياة ML.

النموذج مقابل SavedModel

نموذج

النموذج هو ناتج عملية التدريب. إنه السجل المتسلسل للأوزان التي تم تعلمها أثناء عملية التدريب. يمكن استخدام هذه الأوزان لاحقًا لحساب تنبؤات أمثلة الإدخال الجديدة. بالنسبة إلى TFX و TensorFlow ، يشير "النموذج" إلى نقاط التفتيش التي تحتوي على الأوزان التي تم تعلمها حتى تلك النقطة.

لاحظ أن "النموذج" قد يشير أيضًا إلى تعريف الرسم البياني لحساب TensorFlow (أي ملف Python) الذي يعبر عن كيفية حساب التنبؤ. يمكن استخدام الحاستين بالتبادل بناءً على السياق.

تم الحفظ

  • ما هو SavedModel : تسلسل عالمي محايد اللغة ومحكم وقابل للاسترداد لنموذج TensorFlow.
  • سبب أهميته : إنه يمكّن الأنظمة عالية المستوى من إنتاج نماذج TensorFlow وتحويلها واستهلاكها باستخدام عملية تجريد واحدة.

SavedModel هو تنسيق التسلسل الموصى به لخدمة نموذج TensorFlow في الإنتاج ، أو لتصدير نموذج مدرب لتطبيق أصلي للجوال أو تطبيق JavaScript. على سبيل المثال ، لتحويل نموذج إلى خدمة REST لعمل تنبؤات ، يمكنك إجراء تسلسل للنموذج باعتباره SavedModel وتقديمه باستخدام خدمة TensorFlow. راجع تقديم نموذج TensorFlow لمزيد من المعلومات.

مخطط

تستخدم بعض مكونات TFX وصفًا لبيانات الإدخال الخاصة بك يسمى مخطط . مخطط قاعدة البيانات هو مثيل لـ schema.proto . المخططات هي نوع من المخزن المؤقت للبروتوكول ، والمعروف بشكل عام باسم "protobuf". يمكن أن يحدد المخطط أنواع البيانات لقيم المعالم ، وما إذا كان يجب أن تكون الميزة موجودة في جميع الأمثلة ، ونطاقات القيم المسموح بها ، وخصائص أخرى. تتمثل إحدى مزايا استخدام التحقق من صحة بيانات TensorFlow (TFDV) في أنه سينشئ تلقائيًا مخططًا عن طريق استنتاج الأنواع والفئات والنطاقات من بيانات التدريب.

هذا مقتطف من مخطط protobuf:

...
feature {
  name: "age"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
feature {
  name: "capital-gain"
  value_count {
    min: 1
    max: 1
  }
  type: FLOAT
  presence {
    min_fraction: 1
    min_count: 1
  }
}
...

تستخدم المكونات التالية المخطط:

  • التحقق من صحة بيانات TensorFlow
  • تحويل TensorFlow

في خط أنابيب TFX النموذجي ، ينشئ TensorFlow Data Validation مخططًا تستهلكه المكونات الأخرى.

التطوير باستخدام TFX

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

استكشاف البيانات ، والتصور ، والتنظيف

استكشاف البيانات ، والتصور ، والتنظيف

تبدأ خطوط أنابيب TFX عادةً بمكون ExampleGen ، الذي يقبل بيانات الإدخال وينسقها على أنها أمثلة tf. غالبًا ما يتم ذلك بعد تقسيم البيانات إلى مجموعات بيانات للتدريب والتقييم بحيث تكون هناك نسختان فعليًا من مكونات ExampleGen ، واحدة لكل منهما للتدريب والتقييم. يتبع هذا عادةً مكون StatisticsGen ومكوّن SchemaGen ، والذي سيفحص بياناتك ويستنتج مخطط البيانات والإحصاءات. سيتم استهلاك المخطط والإحصاءات بواسطة مكون ExampleValidator ، والذي سيبحث عن الحالات الشاذة والقيم المفقودة وأنواع البيانات غير الصحيحة في بياناتك. تستفيد كل هذه المكونات من إمكانات مكتبة التحقق من صحة بيانات TensorFlow .

يعد التحقق من صحة بيانات TensorFlow (TFDV) أداة قيمة عند إجراء الاستكشاف الأولي والتصور وتنظيف مجموعة البيانات الخاصة بك. يفحص TFDV بياناتك ويستنتج أنواع البيانات والفئات والنطاقات ، ثم يساعد تلقائيًا في تحديد القيم الشاذة والقيم المفقودة. كما يوفر أيضًا أدوات تصور يمكن أن تساعدك في فحص وفهم مجموعة البيانات الخاصة بك. بعد اكتمال خط الأنابيب الخاص بك ، يمكنك قراءة البيانات الوصفية من MLMD واستخدام أدوات التصور لـ TFDV في دفتر Jupyter لتحليل بياناتك.

بعد تدريب النموذج الأولي ونشره ، يمكن استخدام TFDV لمراقبة البيانات الجديدة من طلبات الاستدلال إلى النماذج المنشورة ، والبحث عن الانحرافات و / أو الانجراف. هذا مفيد بشكل خاص لبيانات السلاسل الزمنية التي تتغير بمرور الوقت نتيجة للاتجاه أو الموسمية ، ويمكن أن يساعد في الإبلاغ عند وجود مشاكل في البيانات أو عندما تحتاج النماذج إلى إعادة تدريبها على بيانات جديدة.

عرض مرئي للمعلومات

بعد الانتهاء من التشغيل الأول لبياناتك من خلال قسم خط الأنابيب الذي يستخدم TFDV (عادةً StatisticsGen و SchemaGen و ExampleValidator) ، يمكنك تصور النتائج في دفتر ملاحظات بنمط Jupyter. لإجراء عمليات تشغيل إضافية ، يمكنك مقارنة هذه النتائج أثناء إجراء التعديلات ، حتى تصبح بياناتك مثالية للنموذج والتطبيق الخاصين بك.

ستقوم أولاً بالاستعلام عن ML Metadata (MLMD) لتحديد نتائج عمليات التنفيذ هذه لهذه المكونات ، ثم استخدام واجهة برمجة تطبيقات دعم التصور في TFDV لإنشاء التمثيلات المرئية في دفتر ملاحظاتك. يتضمن ذلك tfdv.load_statistics () و tfdv.visualize_statistics () باستخدام هذا التصور ، يمكنك فهم خصائص مجموعة البيانات بشكل أفضل ، وتعديلها إذا لزم الأمر.

تطوير وتدريب النماذج

هندسة الخصائص

سيتضمن خط أنابيب TFX النموذجي مكون التحويل ، والذي سيقوم بتنفيذ هندسة الميزات من خلال الاستفادة من إمكانات مكتبة TensorFlow Transform (TFT) . يستهلك مكون التحويل المخطط الذي تم إنشاؤه بواسطة مكون SchemaGen ، ويطبق تحويلات البيانات لإنشاء الميزات التي سيتم استخدامها لتدريب النموذج الخاص بك ودمجها وتحويلها. يجب أيضًا إجراء تنظيف القيم المفقودة وتحويل الأنواع في مكون التحويل إذا كان هناك احتمال وجود هذه القيم أيضًا في البيانات المرسلة لطلبات الاستدلال. هناك بعض الاعتبارات المهمة عند تصميم كود TensorFlow للتدريب على TFX.

النمذجة والتدريب

نتيجة مكون التحويل هي SavedModel الذي سيتم استيراده واستخدامه في كود النمذجة الخاص بك في TensorFlow ، أثناء مكون المدرب . يتضمن SavedModel هذا جميع تحويلات هندسة البيانات التي تم إنشاؤها في مكون التحويل ، بحيث يتم إجراء التحويلات المتطابقة باستخدام نفس الرمز بالضبط أثناء التدريب والاستدلال. باستخدام رمز النمذجة ، بما في ذلك SavedModel من مكون التحويل ، يمكنك استهلاك بيانات التدريب والتقييم وتدريب النموذج الخاص بك.

عند العمل مع النماذج المستندة إلى المقدر ، يجب أن يحفظ القسم الأخير من كود النمذجة النموذج الخاص بك كنموذج SavedModel و EvalSavedModel. يضمن الحفظ باعتباره EvalSavedModel أن المقاييس المستخدمة في وقت التدريب متاحة أيضًا أثناء التقييم (لاحظ أن هذا ليس مطلوبًا للنماذج القائمة على keras). يتطلب حفظ EvalSavedModel استيراد مكتبة تحليل نموذج TensorFlow (TFMA) في مكون المدرب الخاص بك.

import tensorflow_model_analysis as tfma
...

tfma.export.export_eval_savedmodel(
        estimator=estimator,
        export_dir_base=eval_model_dir,
        eval_input_receiver_fn=receiver_fn)

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

تحليل وفهم أداء النموذج

تحليل النموذج

بعد تطوير النموذج الأولي والتدريب ، من المهم تحليل أداء نموذجك وفهمه حقًا. سيتضمن خط أنابيب TFX النموذجي مكونًا للمقيم ، والذي يعزز قدرات مكتبة تحليل نموذج TensorFlow (TFMA) ، والتي توفر مجموعة أدوات كهربائية لهذه المرحلة من التطوير. يستهلك مكون أداة تقييم النموذج الذي قمت بتصديره أعلاه ، ويسمح لك بتحديد قائمة tfma.SlicingSpec التي يمكنك استخدامها عند تصور أداء النموذج وتحليله. تحدد كل SlicingSpec شريحة من بيانات التدريب التي تريد فحصها ، مثل فئات معينة للميزات الفئوية أو نطاقات معينة للميزات الرقمية.

على سبيل المثال ، قد يكون هذا مهمًا لمحاولة فهم أداء نموذجك لشرائح مختلفة من عملائك ، والتي يمكن تقسيمها حسب عمليات الشراء السنوية أو البيانات الجغرافية أو الفئة العمرية أو الجنس. يمكن أن يكون هذا مهمًا بشكل خاص لمجموعات البيانات ذات الذيل الطويل ، حيث قد يخفي أداء المجموعة المهيمنة أداءً غير مقبول لمجموعات مهمة ولكنها أصغر. على سبيل المثال ، قد يؤدي نموذجك أداءً جيدًا بالنسبة للموظفين العاديين ولكنه يفشل فشلاً ذريعًا بالنسبة للموظفين التنفيذيين ، وقد يكون من المهم بالنسبة لك معرفة ذلك.

تحليل النماذج والتصور

بعد الانتهاء من التشغيل الأول لبياناتك من خلال تدريب نموذجك وتشغيل مكون المُقيِّم (الذي يعزز TFMA ) على نتائج التدريب ، يمكنك تصور النتائج في دفتر ملاحظات بنمط Jupyter. لإجراء عمليات تشغيل إضافية ، يمكنك مقارنة هذه النتائج أثناء إجراء التعديلات ، حتى تصبح النتائج مثالية للنموذج والتطبيق الخاصين بك.

ستقوم أولاً بالاستعلام عن ML Metadata (MLMD) لتحديد نتائج عمليات التنفيذ هذه لهذه المكونات ، ثم استخدام واجهة برمجة تطبيقات دعم التصور في TFMA لإنشاء التمثيلات المرئية في دفتر ملاحظاتك. يتضمن ذلك tfma.load_eval_results و tfma.view.render_slicing_metrics باستخدام هذا التصور ، يمكنك فهم خصائص النموذج بشكل أفضل ، وتعديلها إذا لزم الأمر.

التحقق من أداء النموذج

كجزء من تحليل أداء النموذج ، قد ترغب في التحقق من الأداء مقابل الأساس (مثل نموذج العرض الحالي). يتم إجراء التحقق من صحة النموذج عن طريق تمرير كل من نموذج المرشح والخط الأساسي إلى مكون المقيم . المقيِّم يحسب المقاييس (مثل AUC ، الخسارة) لكل من المرشح وخط الأساس جنبًا إلى جنب مع مجموعة مقابلة من مقاييس الفرق. يمكن بعد ذلك تطبيق العتبات واستخدامها لبوابة دفع النماذج الخاصة بك إلى الإنتاج.

التحقق من إمكانية تقديم نموذج

التحقق من صحة الأشعة تحت الحمراء

قبل نشر النموذج المدرب ، قد ترغب في التحقق مما إذا كان النموذج قابلاً للخدمة حقًا في البنية التحتية للخدمة. هذا مهم بشكل خاص في بيئات الإنتاج لضمان أن النموذج المنشور حديثًا لا يمنع النظام من خدمة التنبؤات. سيقوم مكون InfraValidator بإجراء نشر كناري لنموذجك في بيئة وضع الحماية ، وإرسال طلبات حقيقية اختياريًا للتحقق من أن نموذجك يعمل بشكل صحيح.

أهداف النشر

بمجرد قيامك بتطوير وتدريب نموذج يرضيك ، فقد حان الوقت الآن لنشره على هدف (أهداف) نشر واحد أو أكثر حيث سيتلقى طلبات الاستدلال. تدعم TFX النشر إلى ثلاث فئات من أهداف النشر. يمكن نشر النماذج المدربة التي تم تصديرها على أنها SavedModels إلى أي من أهداف النشر هذه أو جميعها.

تدفق المكون

الاستدلال: خدمة TensorFlow

خدمة TensorFlow (TFS) هي نظام خدمة مرن وعالي الأداء لنماذج التعلم الآلي ، مصممة لبيئات الإنتاج. يستهلك SavedModel ويقبل طلبات الاستدلال عبر واجهات REST أو gRPC. يتم تشغيله كمجموعة من العمليات على خادم شبكة واحد أو أكثر ، باستخدام واحدة من العديد من البنى المتقدمة للتعامل مع المزامنة والحساب الموزع. راجع وثائق TFS للحصول على مزيد من المعلومات حول تطوير ونشر حلول TFS.

في خط الأنابيب النموذجي ، سيتم أولاً التحقق من صحة نموذج SavedModel الذي تم تدريبه في مكون المدرب في أحد مكونات InfraValidator . InfraValidator يطلق خادم نموذج TFS كناري لخدمة SavedModel بالفعل. إذا مرت عملية التحقق ، فسيقوم مكون Pusher أخيرًا بنشر SavedModel في بنية TFS الأساسية الخاصة بك. يتضمن ذلك التعامل مع إصدارات متعددة وتحديثات الطراز.

الاستدلال في تطبيقات Native Mobile و IoT: TensorFlow Lite

TensorFlow Lite عبارة عن مجموعة من الأدوات المخصصة لمساعدة المطورين على استخدام نماذج TensorFlow المدربة في تطبيقات الهاتف المحمول الأصلية وتطبيقات إنترنت الأشياء. تستهلك نفس نماذج SavedModels مثل خدمة TensorFlow ، وتطبق تحسينات مثل التقليم والتقليم لتحسين حجم وأداء النماذج الناتجة لتحديات التشغيل على الأجهزة المحمولة وأجهزة إنترنت الأشياء. راجع وثائق TensorFlow Lite لمزيد من المعلومات حول استخدام TensorFlow Lite.

الاستدلال في JavaScript: TensorFlow JS

TensorFlow JS هي مكتبة JavaScript لتدريب ونشر نماذج ML في المستعرض وعلى Node.js. تستهلك نفس نماذج SavedModels مثل خدمة TensorFlow و TensorFlow Lite ، وتحولها إلى تنسيق الويب TensorFlow.js. راجع وثائق TensorFlow JS للحصول على مزيد من التفاصيل حول استخدام TensorFlow JS.

إنشاء خط أنابيب TFX مع تدفق الهواء

تحقق من ورشة عمل تدفق الهواء للحصول على التفاصيل

إنشاء خط أنابيب TFX مع Kubeflow

اقامة

يتطلب Kubeflow مجموعة Kubernetes لتشغيل خطوط الأنابيب على نطاق واسع. راجع إرشادات نشر Kubeflow التي توجه خلال خيارات نشر مجموعة Kubeflow.

تكوين وتشغيل خط أنابيب TFX

يرجى اتباع البرنامج التعليمي TFX على Cloud AI Platform Pipeline لتشغيل نموذج TFX على خط أنابيب Kubeflow. تم وضع مكونات TFX في حاويات لتكوين خط أنابيب Kubeflow وتوضح العينة القدرة على تكوين خط الأنابيب لقراءة مجموعة بيانات عامة كبيرة وتنفيذ خطوات التدريب ومعالجة البيانات على نطاق واسع في السحابة.

واجهة سطر الأوامر لإجراءات خط الأنابيب

يوفر TFX واجهة سطر أوامر موحدة تساعد على تنفيذ مجموعة كاملة من إجراءات خطوط الأنابيب مثل إنشاء خطوط الأنابيب وتحديثها وتشغيلها وسردها وحذفها على مختلف فرق الأوركسترا بما في ذلك Apache Airflow و Apache Beam و Kubeflow. لمزيد من التفاصيل ، يرجى اتباع هذه التعليمات .