Skip to content

تقدير كفاءة MACE

تقدير كفاءة المعلّقين والتصنيفات الحقيقية باستخدام خوارزمية MACE.

تقدير كفاءة MACE

MACE (تقدير كفاءة المعلّقين المتعددين) هي خوارزمية Variational Bayes EM تقوم بتقدير التصنيفات الحقيقية لكل عنصر ودرجات كفاءة المعلّقين بشكل مشترك. تُنمذج كل معلّق إما كـ "عارف" (يُنتج تصنيفات صحيحة) أو "مخمّن" (يُنتج تصنيفات عشوائية)، مما يعطي درجة كفاءة بين 0.0 و1.0.

متى تستخدم MACE

تكون MACE مفيدة عندما يكون لديك عدة معلّقين يصنّفون نفس العناصر وتريد:

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

تعمل MACE مع أنواع التعليق التوضيحي الفئوية: radio، likert، select، وmultiselect. لا تنطبق على التعليقات التوضيحية النصية الحرة أو النطاقات أو أشرطة التمرير أو الرقمية.

كيف تعمل

  1. استخراج البيانات: يجمع Potato جميع التعليقات التوضيحية لكل مخطط عبر جميع المعلّقين، ويبني مصفوفة عناصر-بمعلّقين
  2. خوارزمية EM: تُشغّل MACE عدة بدايات عشوائية لخوارزمية Variational Bayes EM، وتحتفظ بالحل ذي أفضل log-likelihood
  3. المخرجات: لكل مخطط، تُنتج MACE التصنيفات المتوقعة، وإنتروبيا التصنيف (عدم اليقين)، ودرجات كفاءة كل معلّق
  4. التشغيل: تعمل MACE تلقائياً بعد كل N تعليق توضيحي جديد (قابل للتهيئة)، أو يمكن تشغيلها يدوياً عبر واجهة برمجة تطبيقات المشرف

التهيئة

yaml
mace:
  enabled: true
 
  # Run MACE after every N new annotations
  trigger_every_n: 10
 
  # Minimum annotators per item before including in computation
  min_annotations_per_item: 3
 
  # Minimum eligible items before MACE will run
  min_items: 5
 
  # EM algorithm parameters
  num_restarts: 10
  num_iters: 50
  alpha: 0.5    # Prior for annotator spamming (Beta distribution)
  beta: 0.5     # Prior for guessing strategy (Dirichlet distribution)

التهيئة الحد الأدنى

yaml
mace:
  enabled: true

تستخدم جميع الإعدادات الافتراضية: التشغيل كل 10 تعليقات توضيحية، تتطلب 3 معلّقين لكل عنصر، حد أدنى 5 عناصر مؤهلة، 10 بدايات عشوائية مع 50 تكراراً لكل منها.

مرجع التهيئة

الخيارالنوعالافتراضيالوصف
enabledbooleanfalseتفعيل MACE
trigger_every_ninteger10التشغيل بعد كل N تعليق توضيحي جديد
min_annotations_per_iteminteger3الحد الأدنى لعدد المعلّقين لكل عنصر (يجب أن يكون >= 2)
min_itemsinteger5الحد الأدنى للعناصر المؤهلة قبل التشغيل
num_restartsinteger10البدايات العشوائية لخوارزمية EM
num_itersinteger50تكرارات EM لكل بداية
alphafloat0.5المسبق لإزعاج المعلّق
betafloat0.5المسبق لاستراتيجية التخمين

نقاط نهاية واجهة برمجة تطبيقات المشرف

تتطلب جميع نقاط نهاية MACE مصادقة المشرف عبر رأس X-API-Key.

نظرة عامة

bash
curl http://localhost:8000/admin/api/mace/overview \
  -H "X-API-Key: your-admin-key"

تُرجع درجات كفاءة المعلّقين وحالة MACE:

json
{
  "enabled": true,
  "has_results": true,
  "schemas": ["sentiment"],
  "annotator_competence": {
    "user_1": {"average": 0.92, "per_schema": {"sentiment": 0.92}},
    "user_2": {"average": 0.85, "per_schema": {"sentiment": 0.85}},
    "user_3": {"average": 0.45, "per_schema": {"sentiment": 0.45}}
  },
  "total_annotations": 30,
  "annotations_until_next_run": 0
}

التنبؤات

bash
curl "http://localhost:8000/admin/api/mace/predictions?schema=sentiment" \
  -H "X-API-Key: your-admin-key"

تُرجع التصنيفات المتوقعة والإنتروبيا لكل عنصر.

التشغيل اليدوي

bash
curl -X POST http://localhost:8000/admin/api/mace/trigger \
  -H "X-API-Key: your-admin-key"

تفسير النتائج

كفاءة المعلّق

  • 0.9 - 1.0: معلّق موثوق للغاية
  • 0.7 - 0.9: معلّق جيد، خلافات عرضية
  • 0.5 - 0.7: معلّق متوسط، قد يستفيد من تدريب إضافي
  • أقل من 0.5: معلّق مزعج محتمل أو معلّق مشوّش

إنتروبيا التصنيف

  • قريبة من 0.0: ثقة عالية في التصنيف المتوقع
  • أعلى من 0.5: عدم يقين معتدل، قد يكون العنصر غامضاً بالفعل
  • قريبة من log(num_labels): أقصى عدم يقين، لا إجماع

التكامل مع التحكيم

عند تفعيل كل من MACE والتحكيم، تظهر التصنيفات المتوقعة من MACE كإشارة إضافية في واجهة التحكيم:

yaml
adjudication:
  enabled: true
  adjudicator_users: ["admin"]
  min_annotations: 2
 
mace:
  enabled: true
  trigger_every_n: 10
  min_annotations_per_item: 2

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

  1. ابدأ بالإعدادات الافتراضية - تعمل التهيئة الافتراضية بشكل جيد لمعظم السيناريوهات
  2. راقب درجات الكفاءة - استخدم لوحة تحكم المشرف لتتبع جودة المعلّقين بمرور الوقت
  3. ادمج مع مراحل التدريب - استخدم التدريب لتأهيل المعلّقين، ثم MACE لمراقبة الجودة المستمرة
  4. حدد الحدود المناسبة - قلّل min_annotations_per_item لمشاريع التعليق التوضيحي الأصغر

قراءات إضافية

للاطلاع على تفاصيل التنفيذ، راجع الوثائق المصدرية.