هل تساءلت يومًا كيف يختار Netflix الأفلام التي يرشحها لك؟ أو كيف يرشح لك Amazon الكتب؟ يمكننا معرفة كيفية عمل ذلك من خلال إنشاء مرشِح مبسّط خاص بنا!
في هذا المساق التكميلي، ستعرض مهاراتك في حل المشكلات وبرمجة Java من خلال إنشاء أنظمة المرشِح. ستتعامل مع بيانات الأفلام، والتي تتضمن التقييمات، ولكن المبادئ المُتَضمَنة يمكن تكييفها بسهولة مع الكتب والمطاعم وغير ذلك. ستكتب برنامجًا يجيب على أسئلة خاصة بالبيانات، بما في ذلك أي عناصر ينبغي ترشيحها إلى المستخدم بناءً على تقييمه لعدة أفلام. مع وجود ملفات الإدخال الخاصة بتقييمات المستخدمين وعناوين الأفلام، ستتمكن من:
1. تسجيل البيانات وتحليلها إلى قوائم وخرائط؛
2. حساب متوسط التقييمات؛
3. حساب مدى تشابه مقيّم معين مع مستخدم آخر بناءً على التقييمات؛ و
4. ترشيح الأفلام إلى مستخدم معين بناءً على التقييمات.
5. عرض الأفلام المرشَحة لمستخدم معين على صفحة الويب.
Overview
Syllabus
- تقديم المرشِح
- ستبدأ مشروع المساق التكميلي عبر تفقد مزايا محرك المرشِح. ثم ستختار كيفية تسجيل بيانات المستخدم والتقييمات والفيلم وتنظيمها في برنامجك. سيوفر تمرين البرمجة متابعة تقدمك قبل الانتقال إلى الخطوة التالية.
- ترشيحات بسيطة
- ستركز خطوتك الثانية في إنشاء مرشِح على عمل ترشيحات بسيطة بناءً على متوسط التقييمات التي يتلقاها الفيلم. ستتأكد أيضًا من أن كل فيلم مرشَح يحتوي على أقل عدد ممكن من تقييمات المستخدمين قبل تضمينه في ترشيحاتك. خلال هذه الخطوة، نشجعك على استخدام معرفتك بعملية الخطوات السبع لتصميم خوارزميات مفيدة وبرامج ناجحة لحل التحديات التي ستواجهها.
- الواجهات، وعوامل التصفية، وقاعدة البيانات
- في خطوتك الثالثة، سيتم تشجيعك على استخدام الواجهات لإعادة كتابة التعليمات البرمجية الحالية، مما يجعلها أكثر مرونة وكفاءة. ستضيف أيضًا عوامل تصفية لتحديد مجموعة فرعية مختارة من الأفلام التي تريد ترشيحها، مثل "جميع الأفلام التي تقل مدتها عن ساعتين" أو "جميع الأفلام التي تم إنتاجها في سنة 2012". ستعمل أيضًا على جعل محرك الترشيحات الخاص بك أكثر كفاءة أثناء ممارسة مبادئ تصميم البرامج مثل إعادة البناء.
- المؤشرات المرجحة
- في خطوتك الرابعة، ستكمل محرك الترشيحات الخاص بك عن طريق البحث عن مستخدمين في قاعدة البيانات لديهم تقييمات مماثلة وترجيح مدخلاتهم لتقديم ترشيح أكثر شخصية لمستخدمي برنامجك. بمجرد إكمال هذه الخطوة، يمكنك طلب تقييمات للأفلام من الأشخاص الذين تعرفهم، وتشغيل برنامجك، ومنحهم ترشيحات مخصصة وفقًا لاهتماماتهم وأذواقهم!
- الوداع
- تهانينا على الانتهاء من مشروع برمجة المرشِح الخاص بك! مع اختتام دورة المساق التكميلي هذه، يكون لدى مدرسينا بضع كلمات فاصلة أثناء الشروع في التعلم في المستقبل والعمل في علوم الكمبيوتر!
Taught by
Robert Duvall, Owen Astrachan, Andrew D. Hilton and Susan H. Rodger