Prediksi Click-Through Rate (CTR) adalah tugas penting untuk berbagai aplikasi industri seperti iklan online, sistem rekomendasi, dan pencarian yang disponsori. FuxicTR menyediakan pustaka sumber terbuka untuk prediksi CTR, dengan fitur-fitur utama dalam konfigurasi, tunabilitas, dan reproduktifitas. Kami berharap proyek ini dapat mempromosikan penelitian yang dapat direproduksi dan menguntungkan baik peneliti dan praktisi di bidang ini.
Dapat dikonfigurasi : Kedua preprocessing data dan model dimodulasi dan dapat dikonfigurasi.
Tunable : Model dapat secara otomatis disetel melalui konfigurasi yang mudah.
Reproduksi : Semua tolok ukur dapat dengan mudah direproduksi.
Extensible : Dapat dengan mudah diperluas ke model baru, mendukung kerangka kerja Pytorch dan Tensorflow.
| TIDAK | Publikasi | Model | Kertas | Benchmark | Versi |
|---|---|---|---|---|---|
| Model Interaksi Fitur | |||||
| 1 | Www'07 | Lr | Memprediksi klik: memperkirakan laju klik-tayang untuk iklan baru Microsoft | torch | |
| 2 | Icdm'10 | Fm | Mesin faktorisasi | torch | |
| 3 | Cikm'13 | DSSM | Mempelajari model semantik terstruktur yang dalam untuk pencarian web menggunakan data clickthrough microsoft | torch | |
| 4 | Cikm'15 | CCPM | Model Prediksi Klik Konvolusional | torch | |
| 5 | Recsys'16 | Ffm | Mesin faktorisasi yang sadar lapangan untuk prediksi CTR Criteo | torch | |
| 6 | Recsys'16 | Dnn | Jaringan saraf yang dalam untuk rekomendasi YouTube Google | torch , tf | |
| 7 | Dlrs'16 | Lebar & dalam | Pembelajaran luas & mendalam untuk sistem rekomendasi google | torch , tf | |
| 8 | Icdm'16 | PNN | Jaringan saraf berbasis produk untuk prediksi respons pengguna | torch | |
| 9 | Kdd'16 | Deepcrossing | Deep Crossing: Pemodelan skala web tanpa fitur kombinatorial yang dibuat secara manual Microsoft | torch | |
| 10 | Nips'16 | Hofm | Mesin faktorisasi tingkat tinggi | torch | |
| 11 | Ijcai'17 | Deepfm | DeepFM: Jaringan saraf berbasis faktor-mesin untuk prediksi CTR Huawei | torch , tf | |
| 12 | Sigir'17 | NFM | Mesin faktorisasi saraf untuk analitik prediktif yang jarang | torch | |
| 13 | Ijcai'17 | Afm | Mesin faktorisasi perhatian: Mempelajari bobot interaksi fitur melalui jaringan perhatian | torch | |
| 14 | ADKDD'17 | Dcn | Jaringan Deep & Cross untuk Prediksi Klik Iklan Google | torch , tf | |
| 15 | Www'18 | FWFM | Mesin faktorisasi tertimbang lapangan untuk prediksi laju klik-tayang dalam sumpah iklan tampilan, touchpal, linkedin, alibaba | torch | |
| 16 | Kdd'18 | xdeepfm | XDEEPFM: Menggabungkan interaksi fitur eksplisit dan implisit untuk sistem rekomendasi Microsoft | torch | |
| 17 | Cikm'19 | Fignn | Fignn: Interaksi fitur pemodelan melalui jaringan saraf grafik untuk prediksi CTR | torch | |
| 18 | Cikm'19 | Autoint/Autoint+ | Autoint: Pembelajaran Interaksi Fitur Otomatis Melalui Jaringan Saraf Tata Sendiri | torch | |
| 19 | Recsys'19 | Fibinet | Fibinet : Menggabungkan Fitur Penting | torch | |
| 20 | Www'19 | Fgcnn | Pembuatan fitur oleh jaringan saraf konvolusional untuk prediksi laju klik-through huawei | torch | |
| 21 | Aaai'19 | HFM/HFM+ | Mesin faktorisasi holografik untuk rekomendasi | torch | |
| 22 | Arxiv'19 | DLRM | Model Rekomendasi Pembelajaran Mendalam untuk Personalisasi dan Sistem Rekomendasi Facebook | torch | |
| 23 | NeuralNetWorks'20 | Onn | Jaringan saraf yang sadar operasi untuk prediksi respons pengguna | torch , tf | |
| 24 | Aaai'20 | AFN/AFN+ | Jaringan faktorisasi adaptif: belajar interaksi fitur orde adaptif | torch | |
| 25 | Aaai'20 | Lorentzfm | Belajar fitur interaksi dengan faktorisasi lorentzian eBay | torch | |
| 26 | WSDM'20 | Intehat | Prediksi laju klik-tayang yang dapat ditafsirkan melalui laboratorium NEC attention hirarkis, google | torch | |
| 27 | DLP-KDD'20 | Flen | Flen: Leveraging Field untuk prediksi CTR yang dapat diskalakan tencent | torch | |
| 28 | Cikm'20 | Deepim | Mesin Interaksi Deep: Model yang sederhana namun efektif untuk interaksi fitur tingkat tinggi Alibaba, Realai | torch | |
| 29 | Www'21 | Fmfm | FM^2: Mesin faktorisasi matriks-medan untuk sistem rekomendasi Yahoo | torch | |
| 30 | Www'21 | DCN-V2 | DCN V2: Peningkatan Jaringan Deep & Cross dan Pelajaran Praktis untuk Pembelajaran Skala Web untuk Peringkat Sistem Google | torch | |
| 31 | Cikm'21 | MENTAKDIRKAN | Disentangled jaringan saraf diri sendiri untuk prediksi laju klik-through alibaba | torch | |
| 32 | Cikm'21 | Edcn | Meningkatkan interaksi fitur eksplisit dan implisit melalui berbagi informasi untuk model CTR dalam paralel huawei | torch | |
| 33 | DLP-KDD'21 | Masknet | Masknet: Memperkenalkan multiplikasi fitur-bijaksana ke model peringkat CTR dengan topeng yang dipandu instance Sina Weibo | torch | |
| 34 | Sigir'21 | Sam | Melihat prediksi CTR lagi: Apakah perhatian yang Anda butuhkan? Bos Zhipin | torch | |
| 35 | Kdd'21 | Aoanet | Arsitektur dan Operasi Jaringan Adaptif Untuk Rekomendasi Online Didi Chuxing | torch | |
| 36 | Aaai'23 | FinalMLP | FinalMLP: Model MLP dua aliran yang ditingkatkan untuk prediksi CTR Huawei | torch | |
| 37 | Sigir'23 | FinalNet | Final: Lapisan Interaksi Faktorisasi untuk Prediksi CTR Huawei | torch | |
| 38 | Sigir'23 | Eulernet | Eulernet: Pembelajaran Interaksi Fitur Adaptif Melalui Formula Euler untuk Prediksi CTR Huawei | torch | |
| 39 | Cikm'23 | Gdcn | Menuju jaringan silang yang lebih dalam, lebih ringan dan dapat ditafsirkan untuk prediksi CTR Microsoft | torch | |
| 40 | Icml'24 | Wukong | Wukong: Menuju hukum penskalaan untuk meta rekomendasi skala besar | torch | |
| Pemodelan Urutan Perilaku | |||||
| 42 | Kdd'18 | KERIUHAN | Jaringan Minat Depi untuk Prediksi Klik Klik-THROUGH ALIBABA | torch | |
| 43 | Aaai'19 | Dien | Jaringan Evolusi Minat Deep untuk prediksi klik-tayang prediksi Alibaba | torch | |
| 44 | DLP-KDD'19 | BST | Transformator Urutan Perilaku untuk Rekomendasi E-Commerce di Alibaba Alibaba | torch | |
| 45 | Cikm'20 | DMIN | Jaringan multi-minat yang dalam untuk prediksi klik-tayang prediksi Alibaba | torch | |
| 46 | Aaai'20 | DMR | Pencocokan mendalam untuk memberi peringkat model untuk prediksi klik-through rate prediksi Alibaba yang dipersonalisasi | torch | |
| 47 | DLP-KDD'22 | Eta | Pemodelan data pengguna berurutan panjang yang efisien untuk prediksi klik-tayang prediksi alibaba | torch | |
| 48 | Cikm'22 | SDIM | Pengambilan sampel adalah semua yang Anda butuhkan dalam pemodelan perilaku pengguna jangka panjang untuk prediksi CTR Meituan | torch | |
| 49 | Kdd'23 | Melakukan transaksi | Transact: Model Tindakan Pengguna Realtime Berbasis Transformer untuk Rekomendasi di Pinterest Pinterest | torch | |
| Jaringan berat dinamis | |||||
| 50 | Neurips'22 | Apg | APG: Jaringan pembuatan parameter adaptif untuk prediksi klik-through rate alibaba | torch | |
| 51 | Kdd'23 | Ppnet | PEPNET: Parameter dan menanamkan jaringan yang dipersonalisasi untuk menanamkan dengan informasi yang dipersonalisasi sebelumnya Kuaishou | torch | |
| Pemodelan multi-tugas | |||||
| 52 | Arxiv'17 | Sharebottom | Gambaran Umum Pembelajaran Multi-Task di Jaringan Saraf Deep | torch | |
| 53 | Kdd'18 | Mmoe | Pemodelan Hubungan Tugas dalam Pembelajaran Multi-Task Dengan Campuran Multi-Gate-Of-Eksperti Google | torch | |
| 54 | Recsys'20 | Ple | Ekstraksi Lapis Progresif (PLE): Model Pembelajaran Multi-Task Novel (MTL) untuk Rekomendasi yang Dipersonalisasi Tencent | torch | |
Kami memiliki model fuxictr yang membandingkan pada set set data terbuka sebagai berikut:
Fuxictr memiliki dependensi berikut:
Harap instal paket lain yang diperlukan melalui pip install -r requirements.txt .
Jalankan contoh demo
Contoh disediakan di direktori demo untuk menunjukkan beberapa penggunaan dasar fuxictr. Pengguna dapat menjalankan contoh untuk memulai cepat dan untuk memahami alur kerja.
cd demo
python example1_build_dataset_to_parquet.py
python example2_DeepFM_with_parquet_input.py
Jalankan model pada data kecil
Pengguna dapat dengan mudah menjalankan setiap model di Zoo Model mengikuti perintah di bawah ini, yang merupakan demo untuk menjalankan DCN. Selain itu, pengguna dapat memodifikasi dataset konfigurasi dan memodelkan file konfigurasi untuk dijalankan pada dataset mereka sendiri atau dengan hyper-parameter baru. Rincian lebih lanjut dapat ditemukan di 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
Jalankan model pada dataset benchmark (misalnya, criteo)
Pengguna dapat mengikuti bagian benchmark untuk mendapatkan dataset benchmark dan menjalankan langkah -langkah untuk mereproduksi hasil yang ada. Silakan lihat contoh di sini: https://github.com/reczoo/bars/tree/main/ranking/ctr/dcnv2/dcnv2_criteo_x1
Menerapkan model baru
Pustaka Fuxictr dirancang untuk dimodulasi, sehingga setiap komponen dapat ditimpa oleh pengguna sesuai dengan kebutuhan mereka. Dalam banyak kasus, hanya kelas model yang perlu diimplementasikan untuk model yang disesuaikan baru. Jika preprocessing data atau loader data tidak berlaku langsung, seseorang juga dapat menimpa yang baru melalui API inti. Kami menunjukkan contoh konkret yang mengimplementasikan finalMLP model baru kami yang baru -baru ini diterbitkan di AAAI 2023.
Tune hyper-parameter model
FuxicTR saat ini mendukung pencarian grid cepat dari hyper-parameter model menggunakan beberapa GPU. Contoh berikut menunjukkan pencarian grid dari 8 percobaan dengan 4 GPU.
cd experiment
python run_param_tuner.py --config config/DCN_tiny_parquet_tuner_config.yaml --gpu 0 1 2 3 0 1 2 3
Jika Anda menemukan kode atau tolok ukur kami bermanfaat dalam penelitian Anda, silakan kutip makalah berikut.
Selamat datang untuk bergabung dengan grup WeChat kami untuk setiap pertanyaan dan diskusi. Jika Anda tertarik dalam penelitian dan praktik dalam sistem rekomendasi, silakan hubungi melalui grup WeChat kami.