مشاركة عبر


TensorBoard

TensorBoard هي مجموعة من أدوات التصور لتصحيح الأخطاء وتحسين وفهم TensorFlow وPyTorch و Hugging Face Transformers وبرامج التعلم الآلي الأخرى.

استخدام TensorBoard

لا يختلف بدء تشغيل TensorBoard في Azure Databricks عن تشغيله على دفتر ملاحظات Jupyter على الكمبيوتر المحلي.

  1. قم بتحميل %tensorboard الأمر السحري وتعريف دليل السجل الخاص بك.

    %load_ext tensorboard
    experiment_log_dir = <log-directory>
    
  2. %tensorboard استدعاء الأمر السحري.

    %tensorboard --logdir $experiment_log_dir
    

    يبدأ تشغيل خادم TensorBoard ويعرض واجهة المستخدم المضمنة في دفتر الملاحظات. كما يوفر ارتباطا لفتح TensorBoard في علامة تبويب جديدة.

    تظهر لقطة الشاشة التالية واجهة مستخدم TensorBoard التي بدأت في دليل سجل تم ملؤه.

    بدأت واجهة مستخدم TensorBoard في دليل السجل المملوء

يمكنك أيضا بدء تشغيل TensorBoard باستخدام وحدة دفتر ملاحظات TensorBoard مباشرة.

from tensorboard import notebook
notebook.start("--logdir {}".format(experiment_log_dir))

سجلات ودلائل TensorBoard

يقوم TensorBoard بتصور برامج التعلم الآلي من خلال قراءة السجلات التي تم إنشاؤها بواسطة عمليات رد اتصال TensorBoard والوظائف في TensorBoard أو PyTorch. لإنشاء سجلات لمكتبات التعلم الآلي الأخرى، يمكنك كتابة السجلات مباشرة باستخدام كتاب ملفات TensorFlow (راجع الوحدة النمطية: tf.summary ل TensorFlow 2.x ومراجعة الوحدة النمطية: tf.compat.v1.summary لواجهة برمجة التطبيقات الأقدم في TensorFlow 1.x ).

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

اقرأ وثائق TensorBoard الرسمية للبدء في استخدام TensorBoard لتسجيل المعلومات لبرنامج التعلم الآلي.

إدارة عمليات TensorBoard

لا يتم إنهاء عمليات TensorBoard التي بدأت داخل دفتر ملاحظات Azure Databricks عند فصل دفتر الملاحظات أو إعادة تشغيل REPL (على سبيل المثال، عند مسح حالة دفتر الملاحظات). لإنهاء عملية TensorBoard يدويا، أرسل إليها إشارة إنهاء باستخدام %sh kill -15 pid. قد تتلف notebook.list()عمليات TensorBoard التي تم قتلها بشكل غير صحيح .

لسرد خوادم TensorBoard التي تعمل حاليا على نظام المجموعة الخاص بك، مع دلائل السجل المقابلة ومعرفات العمليات الخاصة بها، قم بتشغيل notebook.list() من الوحدة النمطية لدفتر ملاحظات TensorBoard.

المشكلات المعروفة

  • توجد واجهة مستخدم TensorBoard المضمنة داخل iframe. تمنع ميزات أمان المستعرض الارتباطات الخارجية داخل واجهة المستخدم من العمل ما لم تفتح الارتباط في علامة تبويب جديدة.
  • --window_title يتم تجاوز خيار TensorBoard على Azure Databricks.
  • بشكل افتراضي، يقوم TensorBoard بفحص نطاق منفذ لتحديد منفذ للاستماع إليه. إذا كان هناك عدد كبير جدا من عمليات TensorBoard قيد التشغيل على نظام المجموعة، فقد تكون كافة المنافذ في نطاق المنفذ غير متوفرة. يمكنك حل هذا القيد عن طريق تحديد رقم منفذ باستخدام الوسيطة --port . يجب أن يكون المنفذ المحدد بين 6006 و6106.
  • لتنزيل الارتباطات للعمل، يجب فتح TensorBoard في علامة تبويب.
  • عند استخدام TensorBoard 1.15.0، تكون علامة التبويب بروجيكتور فارغة. كحل بديل، لزيارة صفحة البروجيكتور مباشرة، يمكنك استبدال #projector في عنوان URL ب data/plugin/projector/projector_binary.html.
  • يحتوي TensorBoard 2.4.0 على مشكلة معروفة قد تؤثر على عرض TensorBoard إذا تمت ترقيته.
  • إذا كنت تقوم بتسجيل البيانات المتعلقة ب TensorBoard إلى وحدات تخزين DBFS أو UC، فقد تحصل على خطأ مثل No dashboards are active for the current data set. للتغلب على هذا الخطأ، ينصح باستدعاء writer.flush() writer.close() وبعد استخدام writer لتسجيل البيانات. يضمن هذا كتابة جميع البيانات المسجلة بشكل صحيح وإتاحتها لعرض TensorBoard.