LIME: تفسيرات محلية قابلة للتفسير
lime.tabular.LimeTabularExplainer، وإحداث اضطراب في المدخلات، والتقريب الخطي المحلي
LIME: تفسيرات محلية قابلة للتفسير درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
ما هو LIME
LIME (Local Interpretable Model-agnostic Explanations) يفسر تنبؤًا واحدًا من خلال ملاءمة نموذج بسيط قابل للتفسير (مثل الانحدار الخطي) لسلوك النموذج المعقد في جوار صغير حول تلك الحالة.
محلي، وليس عامًا
قد يكون النموذج الصندوق الأسود غير خطي بدرجة كبيرة على المستوى العام، لكنه يكون خطيًا تقريبًا بالقرب من نقطة واحدة. يستفيد LIME من ذلك؛ فهو لا يفسر النموذج بأكمله، بل سلوكه محليًا حول الحالة التي تهمك.
كيف يعمل LIME
يُجري LIME اضطرابات على الحالة لإنشاء عينات قريبة كثيرة، ويطلب من نموذج الصندوق الأسود تصنيفها، ويمنح العينات أوزانًا حسب قربها من الحالة الأصلية، ثم يلائم نموذجًا بديلًا قابلًا للتفسير. وتصبح معاملات النموذج البديل هي التفسير.
مستقل عن النموذج
بما أن LIME لا يستدعي سوى دالة تنبؤ النموذج، فهو يعمل مع أي مصنف أو نموذج انحدار: الشبكات العصبية، والتعزيز بالتدرج، وحتى واجهة API خارجية. إذ يتعامل مع النموذج على أنه صندوق أسود.
LimeTabularExplainer
بالنسبة إلى البيانات الجدولية، تنشئ LimeTabularExplainer انطلاقًا من بيانات التدريب وأسماء السمات. وتستخدم توزيع التدريب لإنشاء اضطرابات واقعية.
from lime.lime_tabular import LimeTabularExplainer
explainer = LimeTabularExplainer(
training_data=X_train.values,
feature_names=X_train.columns.tolist(),
class_names=["denied", "approved"],
mode="classification",
)explain_instance
لتفسير صف واحد، استدعِ explain_instance مع الصف ودالة النموذج predict_proba. ويُجري LIME اضطرابات حول ذلك الصف، ثم يلائم النموذج البديل المحلي.
exp = explainer.explain_instance(
data_row=X_test.values[0],
predict_fn=model.predict_proba,
num_features=5,
)predict_proba، وليس predict
يحتاج LIME للتصنيف إلى الاحتمالات، لا إلى التسميات القطعية، لأن النموذج البديل يجري انحدارًا على سطح الاحتمالات. مرر دائمًا model.predict_proba (أو أي دالة تعيد احتمالات الفئات).
معلمة num_features
تحدد num_features الحد الأقصى لعدد السمات التي تظهر في التفسير. ويؤدي العدد الأصغر إلى تفسير أبسط وأسهل استيعابًا، يبرز فقط أقوى العوامل المحلية.
قراءة أوزان السمات
تعيد exp.as_list() التفسير في صورة أزواج (شرط السمة، الوزن). ويدفع الوزن الموجب التنبؤ نحو الفئة المتنبأ بها، بينما يدفعه الوزن السالب بعيدًا عنها.
for feature, weight in exp.as_list():
print(feature, round(weight, 3))
# income > 50000 0.21
# debt_ratio > 0.4 -0.18تصور التفسير
يمكن لـ LIME عرض التفسير في صورة مخطط تفاعلي أو عرض داخل دفتر، موضحًا أشرطة المساهمات والاحتمالات المتنبأ بها جنبًا إلى جنب.
exp.show_in_notebook(show_table=True)
# or
fig = exp.as_pyplot_figure()LIME مقابل SHAP
يفسر كلاهما التنبؤات الفردية، لكنهما يختلفان:
- SHAP يتمتع بضمانات نظرية قوية (قابلية الجمع والاتساق) ومنظور عام
- LIME أسهل وأسرع في الفهم، ومستقل عن النموذج، وبديهي، لكن نموذجه البديل المحلي تقريبي وقد يختلف باختلاف عشوائية الاضطراب
اختبار سريع
اختبر معرفتك بـ LIME.
مراجعة
لقد تعلمت التفسيرات المحلية باستخدام LIME:
- يُنشأ LimeTabularExplainer من بيانات التدريب وأسماء السمات
- يستخدم
explain_instanceالدالةmodel.predict_probaلملاءمة نموذج بديل محلي - تتحكم num_features في حجم التفسير
- تعيد
as_list()أوزان السمات الموقعة - LIME مستقل عن النموذج ومحلي، ويكمل SHAP
الأسئلة الشائعة
هل درس «LIME: تفسيرات محلية قابلة للتفسير» مجاني؟
نعم — نص درس «LIME: تفسيرات محلية قابلة للتفسير» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
ماذا ستتعلم في «LIME: تفسيرات محلية قابلة للتفسير»؟
lime.tabular.LimeTabularExplainer، وإحداث اضطراب في المدخلات، والتقريب الخطي المحلي تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟
لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «LIME: تفسيرات محلية قابلة للتفسير»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟
نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- اكتشاف التحيّز في نماذج التعلم الآلي
- قيم SHAP لقابلية تفسير النماذج
- LIME: تفسيرات محلية قابلة للتفسير
- أطر أخلاقيات الذكاء الاصطناعي وحوكمته