الأنظمة الهجينة ومقاييس التقييم
الجمع بين الترشيح التعاوني والقائم على المحتوى، وRMSE وMAE وPrecision@K وRecall@K
الأنظمة الهجينة ومقاييس التقييم درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
لماذا استخدام الأنظمة الهجينة؟
يواجه الترشيح التعاوني صعوبة مع البداية الباردة، بينما يفرط الترشيح القائم على المحتوى في التخصص. ويجمع النظام الهجين بين الأسلوبين بحيث يعالج كل منهما نقاط ضعف الآخر، وغالبًا ما يتفوق على كل أسلوب بمفرده.
الدمج الموزون
يمزج أبسط نظام هجين بين الدرجات باستخدام أوزان مجموعها يساوي 1. فعلى سبيل المثال، يعتمد 0.6 * CF + 0.4 * CB بدرجة أكبر على إشارات الترشيح التعاوني، مع الاحتفاظ بالمحتوى كخيار احتياطي ومصدر للتنويع.
final_score = 0.6 * cf_score + 0.4 * cb_scoreضبط الأوزان
يمثل التقسيم 0.6 / 0.4 نقطة بداية. اضبطوا الأوزان باستخدام مجموعة تحقق: فعندما يملك المستخدمون سجلًا غنيًا، ارفعوا وزن CF، وبالنسبة إلى العناصر الجديدة، ارفعوا وزن CB. ويمكنكم حتى تبديل الأوزان لكل مستخدم.
استراتيجيات هجينة أخرى
- الدمج الموزون: مزج الدرجات (كما سبق).
- التبديل: اختيار CF أو CB وفقًا لتوفر البيانات.
- دمج السمات: تمرير الإشارتين إلى نموذج واحد.
يُعد الدمج الموزون الأسلوب الأكثر شيوعًا والأسهل في الفهم.
التقييم: نوعا الأسئلة
ينقسم التقييم إلى سؤالين:
- التنبؤ بالتقييمات: ما مدى قرب التقييمات المتنبأ بها؟ استخدموا RMSE/MAE.
- جودة الترتيب: هل تظهر العناصر الصحيحة في المراتب الأولى؟ استخدموا Precision@K وRecall@K وNDCG@K.
RMSE للتنبؤ بالتقييمات
يقيس RMSE متوسط الخطأ التربيعي بين التقييمات المتوقعة والفعلية، ثم يحسب جذره التربيعي. وهو يعاقب الأخطاء الكبيرة بشدة، ويُعد مقياس الدقة القياسي للتقييمات.
import numpy as np
def rmse(pred, actual):
return np.sqrt(np.mean((np.array(pred) - np.array(actual)) ** 2))Precision@K
Precision@K = (العناصر ذات الصلة ضمن أول K عناصر) / K. وهو يجيب عن السؤال التالي: من بين العناصر K التي أوصيت بها، ما نسبة العناصر التي أعجبت المستخدم فعلًا؟ تعني القيمة الأعلى إهدار عدد أقل من الخانات.
def precision_at_k(recommended, relevant, k):
top_k = recommended[:k]
hits = len(set(top_k) & set(relevant))
return hits / kRecall@K
Recall@K = (العناصر ذات الصلة ضمن أول K عناصر) / (إجمالي العناصر ذات الصلة). وهو يجيب عن السؤال التالي: من بين جميع العناصر التي قد تعجب المستخدم، ما نسبة العناصر التي أظهرتها ضمن أول K عناصر؟
def recall_at_k(recommended, relevant, k):
top_k = recommended[:k]
hits = len(set(top_k) & set(relevant))
return hits / len(relevant) if relevant else 0.0المفاضلة بين Precision وRecall
تركّز Precision على صحة العناصر التي تعرضها، بينما يركّز recall على تغطية جميع العناصر ذات الصلة. عادةً ما تعطي أنظمة التوصية الأولوية لـ Precision@K لأن المستخدمين لا يرون سوى قائمة قصيرة، ولذلك تكون الخانات الأولى هي الأهم.
NDCG@K لقياس جودة الترتيب
يكافئ NDCG@K (Normalized Discounted Cumulative Gain) وضع العناصر شديدة الصلة بالقرب من أعلى القائمة. إذ يُحتسب العنصر ذي الصلة في المرتبة 1 بدرجة أكبر من العنصر نفسه في المرتبة 10، لأن المكاسب تُخفَّض بحسب الموضع.
آلية عمل NDCG
يجمع DCG درجة صلة كل عنصر بعد قسمتها على لوغاريتم مرتبته. ثم يقسم NDCG قيمة DCG على قيمة DCG المثالية (أي الترتيب الكامل)، فينتج درجة بين 0 و1، حيث تمثل 1 قائمة مرتبة ترتيبًا مثاليًا.
import numpy as np
def dcg(rels):
return sum(r / np.log2(i + 2) for i, r in enumerate(rels))
def ndcg_at_k(rels, k):
ideal = sorted(rels, reverse=True)
return dcg(rels[:k]) / dcg(ideal[:k]) if dcg(ideal[:k]) else 0.0تحقق سريع
اختبر معرفتك بمقاييس التقييم.
مراجعة
لقد بنيت نظام توصية هجينًا (مثل 0.6 * CF + 0.4 * CB) وتعلمت مجموعة أدوات تقييمه: RMSE لدقة التقييمات، وPrecision@K وRecall@K للاسترجاع، وNDCG@K لجودة الترتيب. وبذلك تنتهي دورة أنظمة التوصية. الدورة التالية: أساسيات MLOps.
تعلم Python مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 53
- الدروس
- 225
الأسئلة الشائعة
هل درس «الأنظمة الهجينة ومقاييس التقييم» مجاني؟
نعم — نص درس «الأنظمة الهجينة ومقاييس التقييم» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
ماذا ستتعلم في «الأنظمة الهجينة ومقاييس التقييم»؟
الجمع بين الترشيح التعاوني والقائم على المحتوى، وRMSE وMAE وPrecision@K وRecall@K تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟
لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «الأنظمة الهجينة ومقاييس التقييم»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟
نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- الترشيح التعاوني: القائم على المستخدم والقائم على العنصر
- تحليل المصفوفات بالعوامل باستخدام SVD
- الترشيح القائم على المحتوى
- الأنظمة الهجينة ومقاييس التقييم