Die Click-Through-Rate (CTR) Vorhersage ist eine kritische Aufgabe für verschiedene industrielle Anwendungen wie Online-Werbung, Empfehlungssysteme und gesponserte Suche. FuxICTR bietet eine Open-Source-Bibliothek für die CTR-Vorhersage mit wichtigen Funktionen für Konfigurierbarkeit, Abstimmung und Reproduzierbarkeit. Wir hoffen, dass dieses Projekt reproduzierbare Forschung fördern und sowohl Forschern als auch Praktikern auf diesem Gebiet zugute kommen könnte.
Konfigurierbar : Sowohl die Datenvorverarbeitung als auch die Modelle werden modularisiert und konfigurierbar.
Abstimmbar : Modelle können automatisch durch einfache Konfigurationen eingestellt werden.
Reproduzierbar : Alle Benchmarks können leicht reproduziert werden.
Erweiterbar : Es kann leicht auf alle neuen Modelle ausgedehnt werden, wodurch sowohl Pytorch- als auch Tensorflow -Frameworks unterstützt werden.
| NEIN | Veröffentlichung | Modell | Papier | Benchmark | Version |
|---|---|---|---|---|---|
| Feature -Interaktionsmodelle | |||||
| 1 | Www'07 | Lr | Vorhersagen von Klicks: Schätzung der Klickrate für neue Anzeigen Microsoft schätzen | torch | |
| 2 | ICDM'10 | Fm | Faktorisierungsmaschinen | torch | |
| 3 | Cikm'13 | DSSM | Erlernen von tiefen strukturierten semantischen Modellen für die Websuche mit Click -Through -Daten Microsoft | torch | |
| 4 | Cikm'15 | CCPM | Ein Faltungsklick -Vorhersagemodell | torch | |
| 5 | Recsys'16 | Ffm | Faktorisierungsmaschinen für Feldvorhersagen für Feldwesen Criteo | torch | |
| 6 | Recsys'16 | Dnn | Deep Neural Networks für YouTube -Empfehlungen Google | torch , tf | |
| 7 | DLRS'16 | Breit und tief | Breites und tiefes Lernen für Empfehlungssysteme Google | torch , tf | |
| 8 | ICDM'16 | Pnn | Produktbasierte neuronale Netzwerke für die Vorhersage der Benutzerantwort | torch | |
| 9 | KDD'16 | Deepcrossing | Deep Crossing: Webmaßstabmodellierung ohne manuell gestaltete kombinatorische Funktionen Microsoft | torch | |
| 10 | Nips'16 | Hofm | Faktorisierungsmaschinen höherer Ordnung | torch | |
| 11 | Ijcai'17 | Deepfm | DeepFM: Ein faktorisierende maschinenbasierte neuronales Netzwerk für die CTR-Vorhersage Huawei | torch , tf | |
| 12 | Sigir'17 | NFM | Neuralfaktorisierungsmaschinen für spärliche Vorhersageanalysen | torch | |
| 13 | Ijcai'17 | AFM | Aufmerksamkeitsfaktorisierungsmaschinen: Lernen des Gewichts der Merkmalsinteraktionen über Aufmerksamkeitsnetzwerke | torch | |
| 14 | Adkdd'17 | DCN | Deep & Cross Network für Anzeigenklick -Vorhersagen Google | torch , tf | |
| 15 | Www'18 | FWFM | Feldgewichtete Faktorisierungsmaschinen für die Klickrate-Vorhersage im Anzeigewerbung , Touchpal, LinkedIn, Alibaba | torch | |
| 16 | KDD'18 | xdeepfm | XDeepfm: Kombinieren explizite und implizite Feature -Interaktionen für Empfehlungssysteme Microsoft | torch | |
| 17 | Cikm'19 | Fignn | Fignn: Modellierungsfunktionen Interaktionen über Grafik Neuronale Netze für die CTR -Vorhersage | torch | |
| 18 | Cikm'19 | Autoint/autoint+ | AUTINT: Automatisches Lernen für Feature-Interaktion durch selbstanatisierte neuronale Netze | torch | |
| 19 | Recsys'19 | Fibinet | Fibinet: Kombination von Merkmals Bedeutung und bilinearer Feature-Interaktion für die Klickrate-Vorhersage Sina Weibo | torch | |
| 20 | Www'19 | Fgcnn | Feature-Erzeugung nach Faltungsnetzwerk für die Klickrate-Vorhersage Huawei | torch | |
| 21 | Aaai'19 | HFM/HFM+ | Holographische Faktorisierungsmaschinen zur Empfehlung | torch | |
| 22 | Arxiv'19 | Dlrm | Deep Learning -Empfehlungsmodell für Personalisierungs- und Empfehlungssysteme Facebook | torch | |
| 23 | NeuralNetworks'20 | Onn | Operationsbewusste neuronale Netze für die Vorhersage der Benutzerantwort | torch , tf | |
| 24 | Aaai'20 | AFN/AFN+ | Adaptive Faktorisierungsnetzwerk: Feature-Interaktionen adaptiver Ordnung Lernorientieren | torch | |
| 25 | Aaai'20 | Lorentzfm | Interaktionen für Lernfunktionen mit Lorentzer Faktorisierung eBay | torch | |
| 26 | WSDM'20 | Interhat | Interpretierbare Klickrate-Vorhersage durch hierarchische Aufmerksamkeit NEC Labs, Google | torch | |
| 27 | DLP-KDD'20 | Flen | FLEN: Nutzung des Feldes für skalierbare CTR -Vorhersage Tencent | torch | |
| 28 | Cikm'20 | Deepim | Deep Interaction Machine: Ein einfaches, aber effektives Modell für Wechselwirkungen mit hoher Ordnung Merkmals Alibaba, Realai | torch | |
| 29 | Www'21 | Fmfm | FM^2: Faktorisierungsmaschinen für Feldmatrixierende für Empfehlungssysteme Yahoo | torch | |
| 30 | Www'21 | DCN-V2 | DCN V2: Verbesserte Deep & Cross Network und praktische Lektionen für das Lernen im Webmaßstab, um Systeme Google zu bewerten | torch | |
| 31 | Cikm'21 | BESTIMMEN | Selbstattziel-neuronale Netze für die Klickrate-Vorhersage Alibaba entwirrt | torch | |
| 32 | Cikm'21 | EDCN | Verbesserung der explizite und impliziten Feature -Interaktionen durch Informationsaustausch für parallele tiefe CTR -Modelle Huawei | torch | |
| 33 | DLP-KDD'21 | Masket | MaskNet: Einführung der Funktionsmultiplikation mit CTR-Ranking-Modellen durch instanzgesteuerte Maske Sina Weibo | torch | |
| 34 | Sigir'21 | Sam | Wenn Sie sich die CTR -Vorhersage noch einmal ansehen: Ist die Aufmerksamkeit alles, was Sie brauchen? Boss Zhipin | torch | |
| 35 | KDD'21 | Aoanet | Architektur und operatives adaptives Netzwerk für Online -Empfehlungen Didi Chuxing | torch | |
| 36 | Aaai'23 | FinalMlp | FinalMLP: Ein erweitertes Zwei-Stream-MLP-Modell für die CTR-Vorhersage Huawei | torch | |
| 37 | Sigir'23 | Finalnet | Finale: Faktorisierte Wechselwirkungsschicht für die CTR -Vorhersage Huawei | torch | |
| 38 | Sigir'23 | Eulernet | Eulernet: Adaptive Feature Interaction -Lernen über Eulers Formel für die CTR -Vorhersage Huawei | torch | |
| 39 | Cikm'23 | GDCN | In Richtung tieferer, leichterer und interpretierbares Kreuznetz für CTR -Vorhersage Microsoft | torch | |
| 40 | ICML'24 | Wukong | Wukong: Auf dem Weg zu einem Skalierungsgesetz für groß angelegte Empfehlungen Meta | torch | |
| Verhaltenssequenzmodellierung | |||||
| 42 | KDD'18 | LÄRM | Deep Interest Network für Klick-Through-Raten-Vorhersage Alibaba | torch | |
| 43 | Aaai'19 | Dien | Deep Interest Evolution Network für die Klickrate-Vorhersage Alibaba | torch | |
| 44 | DLP-KDD'19 | Bst | Verhaltenssequenztransformator für die E-Commerce-Empfehlung in Alibaba Alibaba | torch | |
| 45 | Cikm'20 | Dmin | Deep Multi-Interest-Netzwerk für die Klickrate-Vorhersage Alibaba | torch | |
| 46 | Aaai'20 | DMR | Tiefes Match zum Rangmodell für personalisierte Klickrate-Vorhersage Alibaba | torch | |
| 47 | DLP-KDD'22 | ETA | Effiziente lange sequentielle Benutzerdatenmodellierung für die Klickrate-Vorhersage Alibaba | torch | |
| 48 | Cikm'22 | SDIM | Die Probenahme ist alles, was Sie für die Modellierung langfristiger Benutzerverhalten für die CTR-Vorhersage Meituan benötigen | torch | |
| 49 | KDD'23 | Tätigen | Transakt: Transformator-basierte Echtzeit-Benutzeraktionsmodell für Empfehlungen bei Pinterest Pinterest | torch | |
| Dynamisches Gewichtsnetzwerk | |||||
| 50 | Neurips'22 | APG | APG: Adaptive Parametergenerierung Netzwerk für die Click-Through-Rate-Vorhersage Alibaba | torch | |
| 51 | KDD'23 | Ppnet | Pepnet: Parameter und Einbettung eines personalisierten Netzwerks zum Infundieren mit personalisierten vorherigen Informationen Kuaishou | torch | |
| Multitasking-Modellierung | |||||
| 52 | Arxiv'17 | Sharebottom | Ein Überblick über das Lernen von Multitaskieren in tiefen neuronalen Netzwerken | torch | |
| 53 | KDD'18 | Mmoe | Modellierungsaufgabenbeziehungen im Multitasking-Lernen mit Multi-Gate-Mischung aus Experten Google | torch | |
| 54 | Recsys'20 | Ple | Progressive Layered Extraction (PLE): Ein neuartiges Multi-Task-Lernmodell (MTL) für personalisierte Empfehlungen Tencent | torch | |
Wir haben Fuxictr -Modelle auf einer Reihe von offenen Datensätzen wie folgt mit den Benchmarked -Modellen untersucht:
Fuxictr hat die folgenden Abhängigkeiten:
Bitte installieren Sie andere erforderliche Pakete über pip install -r requirements.txt .
Führen Sie die Demo -Beispiele durch
Beispiele finden Sie im Demo -Verzeichnis, um eine grundlegende Verwendung von Fuxictr zu zeigen. Benutzer können die Beispiele für den schnellen Start ausführen und den Workflow verstehen.
cd demo
python example1_build_dataset_to_parquet.py
python example2_DeepFM_with_parquet_input.py
Führen Sie ein Modell für winzige Daten aus
Benutzer können jedes Modell problemlos im Modellzoo ausführen, folgt den folgenden Befehlen, bei denen es sich um eine Demo zum Ausführen von DCN handelt. Darüber hinaus können Benutzer die Datensatzkonfigurations- und Modellkonfigurationsdateien so ändern, dass sie auf ihren eigenen Datensätzen oder mit neuen Hyper-Parametern ausgeführt werden. Weitere Details finden Sie im 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
Führen Sie ein Modell auf Benchmark -Datensätzen aus (z. B. Criteo)
Benutzer können den Benchmark -Abschnitt befolgen, um Benchmark -Datensätze zu erhalten und Schritte zur Reproduktion der vorhandenen Ergebnisse auszuführen. Bitte siehe ein Beispiel hier: https://github.com/reczoo/bars/tree/main/ranking/ctr/dcnv2/dcnv2_criteo_x1
Implementieren Sie ein neues Modell
Die Fuxictr -Bibliothek ist so konzipiert, dass sie modularisiert werden, sodass jede Komponente von Benutzern entsprechend ihren Anforderungen überschrieben werden kann. In vielen Fällen muss nur die Modellklasse für ein neues maßgeschneidertes Modell implementiert werden. Wenn Datenvorverarbeitung oder Datenlader nicht direkt anwendbar ist, kann man auch eine neue über die Kern -APIs überschreiben. Wir zeigen ein konkretes Beispiel, das unser neues Modell FinalMLP implementiert, das kürzlich in AAAI 2023 veröffentlicht wurde.
Tune-Hyper-Parameter eines Modells
Fuxictr unterstützt derzeit die Fast-Grid-Suche nach Hyperparametern eines Modells unter Verwendung mehrerer GPUs. Das folgende Beispiel zeigt die Gittersuche von 8 Experimenten mit 4 GPUs.
cd experiment
python run_param_tuner.py --config config/DCN_tiny_parquet_tuner_config.yaml --gpu 0 1 2 3 0 1 2 3
Wenn Sie unseren Code oder unsere Benchmarks in Ihrer Forschung hilfreich finden, geben Sie bitte die folgenden Papiere an.
Willkommen, um sich unserer Wechat -Gruppe für jede Frage und Diskussion anzuschließen. Wenn Sie sich für Forschung und Praxis in Empfehlungssystemen interessieren, wenden Sie sich bitte über unsere Wechat -Gruppe.