قابلية تفسير النموذج في Azure التعلم الآلي (معاينة)
توضح هذه المقالة الطرق التي يمكنك استخدامها لترجمة النموذج في Azure التعلم الآلي.
لماذا تعتبر قابلية تفسير النموذج مهمة؟
تعد قابلية تفسير النموذج أمرا بالغ الأهمية لعلماء البيانات والمدققين وصناع القرار في مجال الأعمال التجارية على حد سواء لضمان الامتثال لسياسات الشركة ومعايير الصناعة واللوائح الحكومية:
يحتاج علماء البيانات إلى القدرة على شرح نماذجهم للمديرين التنفيذيين وأصحاب المصلحة ، حتى يتمكنوا من فهم قيمة ودقة النتائج التي توصلوا إليها. كما أنها تتطلب قابلية التفسير لتصحيح نماذجها واتخاذ قرارات مستنيرة حول كيفية تحسينها.
يحتاج المدققون القانونيون إلى أدوات للتحقق من صحة النماذج فيما يتعلق بالامتثال التنظيمي ومراقبة كيفية تأثير قرارات النماذج على البشر.
يحتاج صانعو القرار في مجال الأعمال التجارية إلى راحة البال من خلال القدرة على توفير الشفافية للمستخدمين النهائيين. هذا يسمح لهم بكسب الثقة والحفاظ عليها.
يعد تمكين القدرة على شرح نموذج التعلم الآلي أمرا مهما خلال مرحلتين رئيسيتين من تطوير النموذج:
خلال مرحلة التدريب ، يمكن لمصممي النماذج والمقيمين استخدام مخرجات التفسير للنموذج للتحقق من الفرضيات وبناء الثقة مع أصحاب المصلحة. كما يستخدمون الرؤى في النموذج لتصحيح الأخطاء ، والتحقق من أن سلوك النموذج يطابق أهدافهم ، وللتحقق من عدم عدالة النموذج أو الميزات غير المهمة.
خلال مرحلة الاستدلال ، فإن الشفافية حول النماذج المنشورة تمكن المديرين التنفيذيين من فهم "عند نشره" كيف يعمل النموذج وكيف تعامل قراراته الناس وتؤثر عليهم في الحياة الحقيقية.
قابلية الترجمة الفورية باستخدام Azure التعلم الآلي
يتم توفير فئات قابلية تفسير النموذج من خلال حزمة SDK التالية: (تعرف على كيفية تثبيت حزم SDK ل Azure التعلم الآلي)
azureml.interpret، يحتوي على وظائف تدعمها Microsoft.
يستخدم pip install azureml-interpret للاستخدام العام.
كيفية تفسير النموذج الخاص بك
باستخدام الفئات والأساليب في SDK، يمكنك:
- اشرح تنبؤ النموذج من خلال إنشاء قيم أهمية المعالم للنموذج بأكمله و / أو نقاط البيانات الفردية.
- تحقيق قابلية تفسير النموذج على مجموعات البيانات في العالم الحقيقي على نطاق واسع ، أثناء التدريب والاستدلال.
- استخدام لوحة معلومات التصور التفاعلي لاكتشاف الأنماط في البيانات والتفسيرات في وقت التدريب
في التعلم الآلي ، الميزات هي حقول البيانات المستخدمة للتنبؤ بنقطة بيانات مستهدفة. على سبيل المثال، للتنبؤ بمخاطر الائتمان، يمكن استخدام حقول البيانات الخاصة بالعمر وحجم الحساب وعمر الحساب. في هذه الحالة، يعد العمر وحجم الحساب وعمر الحساب من الميزات. تخبرك أهمية الميزة بكيفية تأثير كل حقل بيانات على تنبؤات النموذج. على سبيل المثال، قد يتم استخدام العمر بشكل كبير في التنبؤ بينما لا يؤثر حجم الحساب وعمر الحساب على قيم التنبؤ بشكل كبير. تسمح هذه العملية لعلماء البيانات بشرح التنبؤات الناتجة ، بحيث يكون لدى أصحاب المصلحة رؤية واضحة حول الميزات الأكثر أهمية في النموذج.
تقنيات تفسير النماذج المدعومة
azureml-interpretيستخدم تقنيات الترجمة الفورية التي تم تطويرها في Interpret-Community ، وهي حزمة مصدر مفتوح Python لتدريب النماذج القابلة للتفسير والمساعدة في شرح أنظمة الذكاء الاصطناعي الصندوق الأسود. يعمل Interpret-Community كمضيف للشرحات المدعومة من SDK ، ويدعم حاليا تقنيات الترجمة الفورية التالية:
| تقنية التفسير | الوصف | النوع |
|---|---|---|
| SHAP شجرة الشرح | شرح شجرة SHAP ، الذي يركز على خوارزمية تقدير قيمة SHAP السريعة متعددة الحدود الخاصة بالأشجار ومجموعات الأشجار. | نموذج خاص |
| SHAP الشرح العميق | استنادا إلى التفسير من SHAP ، فإن Deep Explainer "هي خوارزمية تقريب عالية السرعة لقيم SHAP في نماذج التعلم العميق التي تعتمد على اتصال مع DeepLIFT موصوف في ورقة SHAP NIPS. يتم دعم نماذج TensorFlow ونماذج Keras باستخدام الواجهة الخلفية TensorFlow (هناك أيضا دعم أولي ل PyTorch)". | نموذج خاص |
| SHAP الشرح الخطي | يقوم الشرح الخطي من SHAP بحساب قيم SHAP لنموذج خطي ، مع مراعاة الارتباطات بين المعالم بشكل اختياري. | نموذج خاص |
| SHAP نواة الشرح | يستخدم شرح Kernel من SHAP انحدارا خطيا محليا مرجحا بشكل خاص لتقدير قيم SHAP لأي نموذج. | نموذج لا أدري |
| تقليد الشرح (البديل العالمي) | يعتمد شرح المحاكاة على فكرة تدريب النماذج البديلة العالمية على تقليد نماذج الصندوق الأسود. النموذج البديل العالمي هو نموذج قابل للتفسير في جوهره يتم تدريبه على تقريب تنبؤات أي نموذج صندوق أسود بأكبر قدر ممكن من الدقة. يمكن لعلماء البيانات تفسير النموذج البديل لاستخلاص استنتاجات حول نموذج الصندوق الأسود. يمكنك استخدام أحد النماذج القابلة للتفسير التالية كنموذج بديل لك: LightGBM (LGBMExplainableModel) ، الانحدار الخطي (LinearExplainableModel) ، نموذج التدرج التنازلي العشوائي القابل للتفسير (SGDExplainableModel) ، وشجرة القرار (DecisionTreeExplainableModel). | نموذج لا أدري |
| شرح أهمية ميزة التباديل (PFI) | أهمية ميزة التباديل هي تقنية تستخدم لشرح نماذج التصنيف والانحدار المستوحاة من ورقة Breiman Random Forest (انظر القسم 10). على مستوى عال ، فإن الطريقة التي تعمل بها هي عن طريق خلط البيانات بشكل عشوائي ميزة واحدة في كل مرة لمجموعة البيانات بأكملها وحساب مقدار تغير مقياس الأداء للاهتمام. كلما كان التغيير أكبر ، زادت أهمية هذه الميزة. يمكن ل PFI شرح السلوك العام لأي نموذج أساسي ولكنه لا يفسر التنبؤات الفردية. | نموذج لا أدري |
إلى جانب تقنيات التفسير الموضحة أعلاه ، ندعم شرحا آخر قائما على SHAP ، يسمى TabularExplainer. اعتمادا على الطراز، TabularExplainer يستخدم أحد شارحي SHAP المدعوم:
- TreeExplainer لجميع النماذج القائمة على الأشجار
- DeepExplainer لنماذج DNN
- خطي شرح للنماذج الخطية
- KernelExplainer لجميع الموديلات الأخرى
TabularExplainer كما أدخلت تحسينات كبيرة على الميزات والأداء على شرح SHAP المباشر:
- تلخيص مجموعة بيانات التهيئة. في الحالات التي تكون فيها سرعة الشرح هي الأكثر أهمية ، نلخص مجموعة بيانات التهيئة ونولد مجموعة صغيرة من العينات التمثيلية ، مما يسرع من توليد قيم أهمية الميزة الشاملة والفردية.
- أخذ عينات من مجموعة بيانات التقييم. إذا مر المستخدم في مجموعة كبيرة من عينات التقييم ولكنه لا يحتاج في الواقع إلى تقييمها جميعا ، فيمكن تعيين معلمة أخذ العينات على true لتسريع حساب تفسيرات النموذج الشاملة.
يوضح الرسم البياني التالي البنية الحالية للتفسيرات المدعومة.
نماذج التعلم الآلي المدعومة
تدعم azureml.interpret حزمة SDK النماذج المدربة بتنسيقات مجموعة البيانات التالية:
numpy.arraypandas.DataFrameiml.datatypes.DenseDatascipy.sparse.csr_matrix
تقبل وظائف التفسير كلا من النماذج وخطوط الأنابيب كمدخلات. إذا تم توفير نموذج ، فيجب على النموذج تنفيذ وظيفة predict التنبؤ أو predict_proba التي تتوافق مع اتفاقية Scikit. إذا كان النموذج الخاص بك لا يدعم هذا، فيمكنك التفاف النموذج الخاص بك في وظيفة تولد نفس النتيجة مثل predict أو predict_proba في Scikit واستخدام وظيفة المجمع هذه مع الشرح المحدد. إذا تم توفير خط أنابيب، تفترض دالة الشرح أن البرنامج النصي لخط الأنابيب قيد التشغيل يقوم بإرجاع تنبؤ. باستخدام تقنية الالتفاف هذه ، azureml.interpret يمكن دعم النماذج المدربة عبر أطر التعلم العميق PyTorch و TensorFlow و Keras بالإضافة إلى نماذج التعلم الآلي الكلاسيكية.
هدف الحوسبة المحلية والبعيدة
تم تصميم الحزمة azureml.interpret للعمل مع كل من أهداف الحوسبة المحلية والبعيدة. إذا تم تشغيلها محليا، فلن تتصل وظائف SDK بأي خدمات Azure.
يمكنك تشغيل الشرح عن بعد على Azure التعلم الآلي Compute وتسجيل معلومات الشرح في Azure التعلم الآلي Run History Service. بمجرد تسجيل هذه المعلومات، تتوفر التقارير والمرئيات من الشرح بسهولة على استوديو Azure التعلم الآلي لتحليل المستخدم.
الخطوات التالية
- راجع كيفية تمكين إمكانية الترجمة الفورية للتدريب على النماذج محليا وعلى Azure التعلم الآلي موارد الحوسبة عن بعد.
- تعرف على كيفية تمكين الترجمة الفورية لنماذج التعلم الآلي الآلي.
- راجع نماذج دفاتر الملاحظات للحصول على سيناريوهات إضافية.
- إذا كنت مهتما بإمكانية الترجمة الفورية لسيناريوهات النص، فراجع ترجمة النص، وهو مصدر مفتوح ريبو ذي صلة إلى مجتمع الترجمة الفورية، للحصول على تقنيات الترجمة الفورية للبرمجة اللغوية العصبية.
azureml.interpretلا تدعم الحزمة حاليا هذه التقنيات ولكن يمكنك البدء باستخدام دفتر ملاحظات مثال على تصنيف النص.
