Learn AI with Python · درس

أفضل ممارسات دفاتر Jupyter

ترقيم الخلايا، ومسح المخرجات قبل الإيداع، واستخدام papermill للتنفيذ ذي المعلمات.

الدرس 4 من 413 خطوة

أفضل ممارسات دفاتر Jupyter درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 4 دروس في المجموع.

دفتر الملاحظات ذو الحدين

تُعد دفاتر Jupyter رائعة للاستكشاف: شغّل الشيفرة في خلايا، وشاهد المخططات ضمن الدفتر، وكرّر المحاولات بسرعة. لكن هذه المرونة نفسها قد تؤدي إلى عمل فوضوي وغير قابل لإعادة الإنتاج إذا لم تلتزم بالانضباط.

يغطي هذا الدرس عادات تحافظ على نظافة دفاتر الملاحظات وموثوقيتها.

الحالة الخفية: المشكلة الأساسية

يمكنك تشغيل الخلايا بأي ترتيب، كما تبقى النتائج السابقة في الذاكرة. تعني هذه الحالة الخفية أن الدفتر قد يعرض مخرجات صحيحة لا يمكن لأي تشغيل جديد إعادة إنتاجها.

توجد أفضل ممارسات دفاتر الملاحظات جميعها تقريبًا لمكافحة الحالة الخفية.

شغّل الخلايا بالتسلسل

ينبغي أن تزداد أرقام التنفيذ، مثل [1] و[2] بجوار الخلايا، من أعلى الدفتر إلى أسفله. أما الأرقام غير المرتبة، مثل ظهور [7] فوق [3]، فهي علامة تحذير واضحة على اعتماد الدفتر على حالة خفية.

اكتب دفاتر الملاحظات بحيث يكون منطقها واضحًا عند قراءتها من الأعلى إلى الأسفل.

أعد تشغيل النواة وشغّل الكل

القاعدة الذهبية: قبل الوثوق بدفتر أو إجراء commit له، نفّذ النواة → إعادة التشغيل & تشغيل الكل. يؤدي ذلك إلى مسح الذاكرة وتشغيل كل خلية من البداية.

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

اجعل الخلايا مركّزة

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

استخدم خلايا Markdown لشرح الأقسام كما في التقرير.

انقل الشيفرة القابلة لإعادة الاستخدام إلى وحدات

عندما تثبت فائدة دالة ما، انقلها من الدفتر إلى src/ واستوردها. يحافظ ذلك على نحافة دفاتر الملاحظات، ويجعل الشيفرة قابلة للاختبار، ويمنع اختلاف النسخ المنسوخة بين الدفاتر.

from src.features.build_features import make_features

X = make_features(df)   # logic lives in a tested module

مشكلة فروق المخرجات

تخزّن دفاتر الملاحظات مخرجات الخلايا، مثل النصوص والجداول الكبيرة والصور بترميز base64، داخل JSON الخاص بالملف .ipynb. ويؤدي إيداع هذه المخرجات إلى جعل فروق Git ضخمة ومليئة بالضوضاء، وقد يؤدي إلى تسريب البيانات.

الحل: أزل المخرجات قبل إجراء commit.

مسح المخرجات باستخدام nbstripout

تزيل أداة nbstripout المخرجات من دفاتر الملاحظات تلقائيًا. ثبّتها كمرشح Git حتى تُزال المخرجات عند كل commit دون الحاجة إلى تذكّر ذلك.

# pip install nbstripout
nbstripout --install      # adds a git filter for this repo
# now committed notebooks have clean, output-free diffs

تخصيص دفاتر الملاحظات باستخدام papermill

تشغّل أداة papermill دفتر ملاحظات برمجيًا مع حقن المعلمات فيه، كما لو كنت تستدعي دالة. ضع وسم parameters على خلية، وستتجاوز papermill تلك القيم في كل عملية تشغيل.

# pip install papermill
# papermill analysis.ipynb out.ipynb -p dataset "may.csv" -p seed 42

عمليات التشغيل المخصّصة برمجيًا

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

import papermill as pm

for ds in ["jan.csv", "feb.csv", "mar.csv"]:
    pm.execute_notebook(
        "analysis.ipynb",
        f"out_{ds}.ipynb",
        parameters={"dataset": ds, "seed": 42},
    )

قائمة تحقق لنظافة دفتر الملاحظات

قبل مشاركة دفتر ملاحظات أو إجراء commit له:

  • أعد تشغيل النواة وشغّل الكل، ويجب أن ينجح التشغيل دون أخطاء
  • تُشغّل الخلايا من الأعلى إلى الأسفل مع تزايد أرقام التنفيذ
  • نُقلت المنطق القابل لإعادة الاستخدام إلى وحدات src/
  • أُزيلت المخرجات باستخدام nbstripout
  • تروي خلايا Markdown تسلسل العمل

تحقق سريع: الوثوق بدفتر ملاحظات

قبل إجراء commit، تريد التأكد من أن دفتر الملاحظات قابل لإعادة الإنتاج وخالٍ من أخطاء الحالة الخفية.

مراجعة: أفضل ممارسات دفاتر الملاحظات

تعلّمت كيفية الحفاظ على نظافة دفاتر الملاحظات وقابليتها لإعادة الإنتاج:

  • كافح الحالة الخفية، وشغّل الخلايا بالتسلسل
  • أعد التشغيل & شغّل الكل قبل الوثوق بالدفتر أو إجراء commit له
  • انقل الشيفرة القابلة لإعادة الاستخدام إلى وحدات src/
  • استخدم nbstripout لمسح المخرجات والحصول على فروق Git نظيفة
  • استخدم papermill لتشغيل دفاتر الملاحظات المخصّصة على دفعات

وبذلك تكتمل دورة هيكلة مشاريع الذكاء الاصطناعي وسير عمل Git.

البدء مجانًا

تعلم Python مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
53
الدروس
225

الأسئلة الشائعة

هل درس «أفضل ممارسات دفاتر Jupyter» مجاني؟

نعم — نص درس «أفضل ممارسات دفاتر Jupyter» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 4 دروس في المجموع.

ماذا ستتعلم في «أفضل ممارسات دفاتر Jupyter»؟

ترقيم الخلايا، ومسح المخرجات قبل الإيداع، واستخدام papermill للتنفيذ ذي المعلمات. تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟

لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «أفضل ممارسات دفاتر Jupyter»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟

نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. هيكل أدلة مشاريع الذكاء الاصطناعي الاحترافية
  2. Git لمشاريع الذكاء الاصطناعي
  3. قابلية إعادة الإنتاج: البذور والإعدادات والبيئات
  4. أفضل ممارسات دفاتر Jupyter
← العودة إلى Learn AI with Python