يعد التنبؤ بمعدل النقر إلى الظهور (CTR) مهمة مهمة لمختلف التطبيقات الصناعية مثل الإعلان عبر الإنترنت وأنظمة التوصية والبحث الدعائي. يوفر Fuxictr مكتبة مفتوحة المصدر للتنبؤ بنك نسبة النقر إلى الظهور ، مع ميزات رئيسية في التكوين ، والتوابل ، والتكاثر. نأمل أن يتمكن هذا المشروع من تعزيز الأبحاث القابلة للتكرار ويفيد كل من الباحثين والممارسين في هذا المجال.
قابلة للتكوين : كل من المعالجة المسبقة للبيانات والنماذج معيارية وقابلة للتكوين.
للضبط : يمكن ضبط النماذج تلقائيًا من خلال تكوينات سهلة.
قابلة للتكرار : يمكن استنساخ جميع المعايير بسهولة.
قابلة للتمديد : يمكن توسيعها بسهولة إلى أي نماذج جديدة ، ودعم كل من أطر Pytorch و TensorFlow.
| لا | النشر | نموذج | ورق | معيار | إصدار |
|---|---|---|---|---|---|
| ميزة نماذج التفاعل | |||||
| 1 | www'07 | LR | التنبؤ النقرات: تقدير معدل النقر إلى الظهور للإعلانات الجديدة Microsoft | torch | |
| 2 | ICDM'10 | FM | آلات العوامل | torch | |
| 3 | Cikm'13 | DSSM | تعلم النماذج الدلالية المنظمة العميقة للبحث عن الويب باستخدام Clickthrough Data Microsoft | torch | |
| 4 | Cikm'15 | CCPM | نموذج تنبؤ بالنقرة التلافيفية | torch | |
| 5 | recsys'16 | FFM | آلات العوامل المدركة للميدان لـ CTR التنبؤ Criteo | torch | |
| 6 | recsys'16 | DNN | الشبكات العصبية العميقة لتوصيات YouTube Google | torch ، tf | |
| 7 | DLRS'16 | واسع وعميق | التعلم الواسع والعميق لأنظمة التوصية Google | torch ، tf | |
| 8 | ICDM'16 | pnn | الشبكات العصبية القائمة على المنتجات للتنبؤ بالاستجابة للمستخدم | torch | |
| 9 | KDD'16 | deepcrossing | عبور عميق: نمذجة على شبكة الإنترنت بدون ميزات توافقية مصنوعة يدويًا الميزات Microsoft | torch | |
| 10 | Nips'16 | HOFM | آلات العوامل ذات الترتيب الأعلى | torch | |
| 11 | ijcai'17 | DEPFM | DEPFFM: شبكة عصبية قائمة على عوامل الآلات لتنبؤ النقر النور Huawei | torch ، tf | |
| 12 | Sigir'17 | NFM | آلات العوامل العصبية للتحليلات التنبؤية المتفرقة | torch | |
| 13 | ijcai'17 | AFM | آلات العوامل الانتباه: تعلم وزن تفاعلات الميزات عبر شبكات الانتباه | torch | |
| 14 | ADKDD'17 | DCN | شبكة عميقة و Cross للتنبؤات انقر فوق م | torch ، tf | |
| 15 | www'18 | FWFM | آلات العوامل مرفوعة بالميدان للتنبؤ بالمعدل في عرض اليمين ، اللمس ، LinkedIn ، Alibaba | torch | |
| 16 | KDD'18 | xDeepFM | XDEEPFM: الجمع بين تفاعلات الميزات الصريحة والضمنية لأنظمة التوصية Microsoft | torch | |
| 17 | Cikm'19 | Fignn | Fignn: تفاعلات ميزة النمذجة عبر الشبكات العصبية الرسم البياني للتنبؤ بنروي الأنباء النور | torch | |
| 18 | Cikm'19 | السيارات/السيارات+ | السيارات: تعلم التفاعل الأوتوماتيكي عن طريق الشبكات العصبية ذاتية الحكم الذاتي | torch | |
| 19 | recsys'19 | fibinet | Fibinet: الجمع بين أهمية الميزة وتفاعل ميزة BINERER للتنبؤ بمعدل النقر إلى الظهور Sina Weibo | torch | |
| 20 | www'19 | FGCNN | ميزة توليد الشبكة العصبية التلافيفية للتنبؤ بسعر النقر إلى الظهور Huawei | torch | |
| 21 | aaai'19 | HFM/HFM+ | آلات العوامل الثلاثية الأبعاد للتوصية | torch | |
| 22 | arxiv'19 | DLRM | نموذج توصية التعلم العميق لتخصيص أنظمة التوصية فيسبوك | torch | |
| 23 | NeuralNetworks'20 | أون | الشبكات العصبية التي تدرك التشغيل للتنبؤ بالاستجابة للمستخدم | torch ، tf | |
| 24 | aaai'20 | AFN/AFN+ | شبكة العوامل التكيفية: تعلم تفاعلات ميزة الترتيب التكيفي | torch | |
| 25 | aaai'20 | Lorentzfm | تفاعلات ميزة التعلم مع EBAY عامل Lorentzian | torch | |
| 26 | WSDM'20 | interhat | تنبؤ معدل النقر إلى الظهور من خلال التسلسل الهرمي NEC Labs ، Google | torch | |
| 27 | DLP-KDD'20 | فلين | فلين: مجال الاستفادة من التنبؤ القابل للتطوير النروي | torch | |
| 28 | Cikm'20 | عميق | آلة التفاعل العميقة: نموذج بسيط ولكنه فعال للتفاعلات ذات الترتيب العالي Alibaba ، Realai | torch | |
| 29 | www'21 | FMFM | FM^2: آلات العوامل المصفوفة بالميدان لأنظمة التوصية Yahoo | torch | |
| 30 | www'21 | DCN-V2 | DCN V2: تحسين الشبكة العميقة والقلبية والدروس العملية للتعلم على نطاق الويب لترتيب الأنظمة Google | torch | |
| 31 | Cikm'21 | مصير | الشبكات العصبية ذاتية الحكم الذاتي للتنبؤ بألبابا . | torch | |
| 32 | Cikm'21 | EDCN | تعزيز تفاعلات الميزات الصريحة والضمن من خلال مشاركة المعلومات في نماذج النقر إلى الوزراء الموازية Huawei | torch | |
| 33 | DLP-KDD'21 | Masknet | Masknet: تقديم الضرب من النماذج الخاصة بـ CTR من خلال القناع الموجهة للمثيلة Sina Weibo | torch | |
| 34 | Sigir'21 | سام | النظر إلى التنبؤ بنك النقر إلى الورم مرة أخرى: هل الاهتمام كل ما تحتاجه؟ رئيس Zhipin | torch | |
| 35 | KDD'21 | aoanet | الشبكة المعمارية والعملية التكيفية للتوصيات عبر الإنترنت didi chuxing | torch | |
| 36 | aaai'23 | FinalMLP | FinalMLP: نموذج MLP محسّن من طابقين للتنبؤ بـ CTR Huawei | torch | |
| 37 | Sigir'23 | Finalnet | النهائي : طبقة التفاعل المعمول | torch | |
| 38 | Sigir'23 | eulernet | eulernet: تعلم تفاعل الميزة التكيفية عبر صيغة Euler للتنبؤ بـ CTR Huawei | torch | |
| 39 | cikm'23 | GDCN | نحو شبكة عرضية أعمق وأخف وزناً وقابلة للتفسير لتنبؤ النقر بنكوة النقر إلى النحو ، Microsoft | torch | |
| 40 | ICML'24 | ووكونغ | Wukong: نحو قانون التحجيم لقياس التوصية الواسعة النطاق | torch | |
| نمذجة تسلسل السلوك | |||||
| 42 | KDD'18 | دين | شبكة الفائدة العميقة للتنبؤ بمعدل النقر إلى الظهور علي بابا | torch | |
| 43 | aaai'19 | ديان | شبكة تطور الفوائد العميقة للتنبؤ بمعدل النقر إلى الظهور علي بابا | torch | |
| 44 | DLP-KDD'19 | BST | محول تسلسل السلوك لتوصية التجارة الإلكترونية في Alibaba Alibaba | torch | |
| 45 | Cikm'20 | Dmin | شبكة عميقة متعددة الفواصل للتنبؤ بنقرة إلى طريق التوقع Alibaba | torch | |
| 46 | aaai'20 | DMR | مطابقة عميقة مع طراز ترتيب للتنبؤ بالأسعار المخصصة لألبابا | torch | |
| 47 | DLP-KDD'22 | إيتا | نمذجة بيانات مستخدم متسلسلة طويلة كفاءة للتنبؤ بمعدل النقر إلى الظهور Alibaba | torch | |
| 48 | Cikm'22 | SDIM | أخذ العينات هو كل ما تحتاجه على نمذجة سلوكيات المستخدم طويلة الأجل لتنبؤ النقر بنكوة النقر إلى النحو Meituan | torch | |
| 49 | KDD'23 | التعامل | المعاملات: نموذج إجراء المستخدم الحقيقي القائم على المحولات للتوصية في Pinterest Pinterest | torch | |
| شبكة الوزن الديناميكية | |||||
| 50 | Neupips'22 | APG | APG: شبكة توليد المعلمات التكيفية للتنبؤ بمعدل النقر إلى الظهور Alibaba | torch | |
| 51 | KDD'23 | PPNET | pepnet: المعلمة وتضمين شبكة شخصية للتغلب على المعلومات السابقة المخصصة kuaishou | torch | |
| نمذجة متعددة المهام | |||||
| 52 | arxiv'17 | ShareBottom | نظرة عامة على التعلم متعدد المهام في الشبكات العصبية العميقة | torch | |
| 53 | KDD'18 | ممو | علاقات المهام النمذجة في التعلم متعدد المهام مع مزيج متعدد البوابات من Google | torch | |
| 54 | recsys'20 | PLE | استخراج الطبقة التقدمية (PLE): نموذج جديد للتعلم متعدد المهام (MTL) لتوصيات شخصية tencent | torch | |
لقد قمنا بتقييم نماذج Fuxictr على مجموعة من مجموعات البيانات المفتوحة على النحو التالي:
لدى Fuxictr التبعيات التالية:
يرجى تثبيت الحزم المطلوبة الأخرى عبر pip install -r requirements.txt .
قم بتشغيل الأمثلة التجريبية
يتم توفير أمثلة في الدليل التجريبي لإظهار بعض الاستخدام الأساسي لـ Fuxictr. يمكن للمستخدمين تشغيل الأمثلة لبدء سريع وفهم سير العمل.
cd demo
python example1_build_dataset_to_parquet.py
python example2_DeepFM_with_parquet_input.py
قم بتشغيل نموذج على بيانات صغيرة
يمكن للمستخدمين تشغيل كل طراز بسهولة في حديقة حيوان Model بعد الأوامر أدناه ، وهو عرض تجريبي لتشغيل DCN. بالإضافة إلى ذلك ، يمكن للمستخدمين تعديل ملفات تكوين مجموعة البيانات وتكوين النماذج لتشغيلها على مجموعات البيانات الخاصة بهم أو مع المعلمات المفرطة الجديدة. يمكن العثور على مزيد من التفاصيل في ReadMe.
cd model_zoo/DCN/DCN_torch
python run_expid.py --expid DCN_test --gpu 0
# Change `MODEL` according to the target model name
cd model_zoo/MODEL
python run_expid.py --expid MODEL_test --gpu 0
قم بتشغيل نموذج على مجموعات البيانات القياسية (على سبيل المثال ، Criteo)
يمكن للمستخدمين اتباع قسم القياس للحصول على مجموعات البيانات القياسية وتشغيل خطوات لإعادة إنتاج النتائج الحالية. يرجى الاطلاع على مثال هنا: https://github.com/reczoo/bars/tree/main/ranking/ctr/dcnv2/dcnv2_criteo_x1
تنفيذ نموذج جديد
تم تصميم مكتبة Fuxictr لتكون معيارية ، بحيث يمكن للمستخدمين كتابة كل مكون من قبل المستخدمين وفقًا لاحتياجاتهم. في كثير من الحالات ، يجب تنفيذ فئة النماذج فقط لنموذج جديد مخصص. إذا لم تكن المعالجة المسبقة للبيانات أو محمل البيانات قابلة للتطبيق مباشرة ، فيمكن للمرء أيضًا كتابة واحدة جديدة من خلال واجهات برمجة التطبيقات الأساسية. نعرض مثالًا ملموسًا الذي ينفذ طرازنا الجديد FinalMLP الذي تم نشره مؤخرًا في AAAI 2023.
قم بضبط المعلمات المفرطة من النموذج
تدعم Fuxictr حاليًا البحث السريع للشبكة من المعلمات المفرطة لنموذج باستخدام وحدات معالجة الرسومات المتعددة. يوضح المثال التالي بحث الشبكة لـ 8 تجارب مع 4 وحدات معالجة الرسومات.
cd experiment
python run_param_tuner.py --config config/DCN_tiny_parquet_tuner_config.yaml --gpu 0 1 2 3 0 1 2 3
إذا وجدت التعليمات البرمجية أو المعايير الخاصة بنا مفيدة في بحثك ، فيرجى الاستشهاد بالأوراق التالية.
مرحبًا بك للانضمام إلى مجموعة WeChat لأي سؤال ومناقشة. إذا كنت مهتمًا بالبحث والممارسة في أنظمة التوصية ، فيرجى التواصل عبر مجموعة WeChat الخاصة بنا.