سؤال

لدي قاعدة بيانات للمقالات التي سيتم فهرستها من قبل Lucene، مصنفة من خلال علامة المستخدمين وماهوت.ستتاح للمقالات درجة معينة للعلامة (يمكن للمستخدم الموافقة أو عدم الموافقة على علامة، وسيتم التعامل مع العلامات التي اكتشفها mahout نفس المستخدم).

أريد أن أعرف مصلحة المستخدم (ربما اهتمام علامة معينة) من محفوظات الملف الشخصي والتفاعل.

كيف يمكنني تخزين اهتمام المستخدمين؟
وكيف يمكنني استخدام مصلحة المستخدمين للفرز أو التصفية نتيجة البحث؟

هو نهجي ممكن؟ممكن؟قابلة للتطوير؟
أي نوع من التقنيات والخوارزميات التي يمكنني استخدامها؟يرجى توحي!

هل كانت مفيدة؟

المحلول

هذا يبدو في الغالب مثل مشكلة البحث، وليس مشكلة توصية. أنت في المقام الأول الفرز وتصفية نتائج البحث، بناء على العلامات. على هذا النحو، أعتقد أن Lucene عادة ما تكون الأداة للنشر، وليس ماهوت. (على الرغم من استخدام Mahout Sickifiers لتعلم العلامات على حق تماما.)

إذا كنت تريد حقا تخيل ذلك كأداة توصية، فقد أقول البنود الخاصة بك هي العلامات. في أي وقت تتفاعل مع علامة، مثل عرض صفحة موضحة X و Y و Z، فإن ذلك يشير إلى أنك أكثر اهتماما بقليل "عناصر" X و Y و Z. ثم مشكلة التوصية هنا هي اقتراح علامات جديدة الفائدة.

يمكنك محاولة استخدام عدد بسيط من التفاعلات مع علامة ك "تصنيف رقمي"، على الرغم من أنني أعتقد أن هذا لن يعطي نتائج رائعة في سياق يوصي. باستخدام سجل العد هو أفضل، ولكن لا يزال مخطئا. يمكنك تتجاهل عدد التفاعل، واستخدم فقط حقيقة أن المستخدم والعلامة قد تفاعل من أي وقت مضى، أو لا - "تفضيلات منطقية".

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

نصائح أخرى

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

إذا كنت ترغب في القيام بشيء أكثر ضمنية، يحتوي Mahout على الأسئلة الشائعة على التوصية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top