الفلترة التعاونية

لمعالجة بعض قيود الفلترة المستندة إلى المحتوى، تستخدم الفلترة التعاونية أوجه التشابه بين المستخدمين والعناصر في الوقت نفسه لتقديم اقتراحات. يسمح هذا الإجراء بالاقتراحات الصدفية، بمعنى أن نماذج الفلترة التعاونية يمكن أن تقترح عنصرًا للمستخدم "أ" استنادًا إلى اهتمامات مستخدم "ب" مشابه. بالإضافة إلى ذلك، يمكن تعلّم التضمينات تلقائيًا بدون الاعتماد على الهندسة اليدوية للميزات.

مثال على اقتراح فيلم

ننصحك باستخدام نظام تضمين الأفلام الذي تتألف فيه بيانات التدريب من مصفوفة التعليقات التي:

  • يمثل كل صف مستخدمًا.
  • ويمثّل كل عمود عنصرًا (فيلمًا).

تندرج التعليقات حول الأفلام ضمن إحدى الفئتين:

  • موسيقى صريحة: يحدِّد المستخدمون مدى إعجابهم بفيلم معيّن من خلال تقديم تقييم رقمي.
  • ضمني: إذا شاهد مستخدم فيلمًا، يستنتج النظام أنّ المستخدم مهتم به.

لتبسيط الأمر، سنفترض أنّ مصفوفة الملاحظات ثنائية، أي أنّ القيمة 1 تشير إلى الاهتمام بالفيلم.

عندما يزور أحد المستخدمين الصفحة الرئيسية، يجب أن يقترح النظام الأفلام بناءً على:

  • التشابه مع الأفلام التي نالت إعجاب المستخدم سابقًا
  • أفلام أعجب المستخدمين المشابهين

من أجل التوضيح، ندعوك إلى إجراء هندسة يدوية لبعض ميزات الأفلام الموضحة في الجدول التالي:

فيلم التقييم الوصف
لعبة The Dark Knightrises يُنصح بتوجيه الآباء للأطفال دون 13 عامًا يسعى"باتمان"إلى إنقاذ مدينة"غوثام"من إنكارها النووي في هذه اللعبة المكّملة للعبة The دارك فارس التي تدور أحداثها في عالم الكتب المصوّرة من DC.
هاري بوتر وحجر الساحر PG اكتشف فتى يتيم أنه ساحر ويسجّل في مدرسة هوغوورتس للسحرية والسحر، حيث يخوض معركة أول ضده.
شريك PG ذهب حبب حبيب وصديقه الحمار في رحلة إلى مهمة لإنقاذ الأميرة "فيونا" التي سُرقت في قلاعها من خلال تنين.
ثلاثية "بيلفيل" يُنصح بتوجيه الآباء للأطفال دون 13 عامًا عندما يتم اختطاف راكب دراجة محترف أثناء جولة Tour de France، تنطلق جدّته وكلابه الوزنية الزائدة في الخارج لإنقاذه، وذلك بمساعدة ثلاثة من مغنّي موسيقى الجاز المسنّين.
Memento أحمر يسعى الطفل المصاب بفقدان الأمل بشدّة إلى حلّ جريمة قتل زوجته من خلال رسم وشم على جسده.

تضمين 1D

لنفترض أنّنا نخصّص لكل فيلم حجمًا صغيرًا \([-1, 1]\) يصف ما إذا كان الفيلم مخصّصًا للأطفال (قيم سلبية) أو بالغين (قيم إيجابية). لنفترض أيضًا أننا نحدّد أيضًا مقياسًا رقميًا لكل مستخدم في \([-1, 1]\) يوضّح اهتمامات المستخدم في أفلام الأطفال (أقرب إلى -1) أو أفلام للبالغين (أقرب إلى 1+). يجب أن يكون منتج تضمين الفيلم والتضمين للمستخدم أعلى (أقرب إلى 1) للأفلام التي نتوقع أن يحبها المستخدم.

صورة تعرض العديد من الأفلام والمستخدمين مُرتَّبة على مساحة تضمين واحدة وبُعد واحد يصف موضع كل فيلم على هذا المحور ما إذا كان هذا الفيلم مخصصًا للأطفال (على اليسار) أو فيلمًا للبالغين (على اليمين). موضع المستخدم يصف مدى اهتمامه بالأطفال أو الأفلام المخصّصة للبالغين.

في المخطط أدناه، تحدّد كل علامة اختيار فيلمًا شاهده مستخدم معيّن. ويحظى المستخدمان الثالث والرابع بخيارات مفضّلة بشكل جيد من خلال هذه الميزة، حيث يفضّل المستخدم الثالث الأفلام للأطفال ويفضّل المستخدم الرابع الأفلام المخصصة للبالغين. ومع ذلك، لا توضّح هذه الميزة المفضّلة للمستخدمَين الأول والثاني.

صورة لمصفوفة التعليقات، حيث يتطابق صف مع مستخدم ويتطابق عمود مع فيلم ويتم ربط كل مستخدم وكل فيلم بتضمين أحادي الأبعاد (كما هو موضّح في الشكل السابق)، بحيث يقارب منتج التضمينين قيمة الحقيقة الأساسية في مصفوفة التعليقات.

تضمين ثنائي الأبعاد

لم تكن ميزة واحدة كافية لشرح الإعدادات المفضّلة لجميع المستخدمين. وللتغلب على هذه المشكلة، علينا إضافة ميزة ثانية وهي درجة نجاح كل فيلم أو فيلمه الفني. باستخدام الميزة الثانية، يمكننا الآن عرض كل فيلم باستخدام التضمين ثنائي الأبعاد التالي:

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

ونضع المستخدمين مرة أخرى في مساحة التضمين نفسها لتوضيح مصفوفة الملاحظات على أفضل نحو: لكل زوج (مستخدم، عنصر)، نرغب في أن يكون منتج النقاط المضمّن للمستخدم المضمّن وعنصر تضمين العنصر قريبًا من 1 عندما يشاهد المستخدم الفيلم، وعلى 0 بخلاف ذلك.

صورة لمصفوفة الملاحظات نفسها. وفي هذه المرة، يتم ربط كل مستخدم وكل فيلم بسمة تضمين ثنائية الأبعاد (كما هو موضّح في الشكل السابق)، بحيث يقارب منتج النقاط للتضمينين قيمة الحقيقة الأساسية في مصفوفة التعليقات.

في هذا المثال، صمّمنا بشكل يدوي عمليات التضمين. من الناحية العملية، يمكن تعلم التضمينات تلقائيًا، وهي فعالية نماذج الفلترة التعاونية. في القسمين التاليين، سنناقش نماذج مختلفة لتعلّم هذه التضمينات، وكيفية تدريبها.

وتكون الطبيعة التعاونية التي تستند إليها هذه الطريقة واضحة عندما يتعلّم النموذج التضمينات. لنفترض أنّ المتجهات المضمّنة للأفلام ثابتة. بعد ذلك، يمكن أن يتعلّم النموذج متّجه تضمين للمستخدمين لشرح إعداداتهم المفضّلة على أفضل نحو. وبالتالي، سيتم تضمين عمليات تضمين المستخدمين الذين لديهم إعدادات مفضّلة مشابهة عن بعضها. وبالمثل، إذا تم تثبيت التضمينات للمستخدمين، يمكننا في هذه الحالة تعلّم تضمين الأفلام لتوضيح مصفوفة التعليقات على أفضل نحو. ونتيجةً لذلك، سيتم إغلاق التضمينات للأفلام التي أعجبت المستخدمين المشابهين في مساحة التضمين.

التحقّق من مدى فهمك

يوصي النموذج بتطبيق تسوّق لمستخدم لأنه ثبّت مؤخرًا تطبيقًا مشابهًا. ما نوع الفلترة الذي ينطبق عليه هذا المثال؟
الفلترة المستندة إلى المحتوى
أحسنت. لا تنظر الفلترة المستندة إلى المحتوى إلى المستخدمين الآخرين.
الفلترة التعاونية
تأخذ الفلترة التعاونية المستخدمين الآخرين في الاعتبار. في السيناريو المحدد، نولي اهتمامًا لمستخدم واحد فقط.