All Projects → huangjunheng → recommendation_model

huangjunheng / recommendation_model

Licence: other
练习下用pytorch来复现下经典的推荐系统模型, 如MF, FM, DeepConn, MMOE, PLE, DeepFM, NFM, DCN, AFM, AutoInt, ONN, FiBiNET, DCN-v2, AFN, DCAP等

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to recommendation model

Recommender-System-Pytorch
基于 Pytorch 实现推荐系统相关的算法
Stars: ✭ 40 (-86.01%)
Mutual labels:  afm, fm, dcn, deepfm, nfm
Deepctr
Easy-to-use,Modular and Extendible package of deep-learning based CTR models .
Stars: ✭ 5,686 (+1888.11%)
Mutual labels:  deepfm, nfm, autoint, mmoe
EasyRec
A framework for large scale recommendation algorithms.
Stars: ✭ 599 (+109.44%)
Mutual labels:  deepfm, autoint
DeepFM-Keras
No description or website provided.
Stars: ✭ 28 (-90.21%)
Mutual labels:  deepfm
Tensorflow Deepfm
Tensorflow implementation of DeepFM for CTR prediction.
Stars: ✭ 1,891 (+561.19%)
Mutual labels:  deepfm
codec2 talkie
Turn your Android phone into Codec2 Walkie-Talkie (Bluetooth/USB/TCPIP KISS modem client for DV digital voice communication)
Stars: ✭ 65 (-77.27%)
Mutual labels:  fm
flexible-yolov5
More readable and flexible yolov5 with more backbone(resnet, shufflenet, moblienet, efficientnet, hrnet, swin-transformer) and (cbam,dcn and so on), and tensorrt
Stars: ✭ 282 (-1.4%)
Mutual labels:  dcnv2
CTR-keras
Tensorflow2.x implementations of CTR(LR、FM、FFM)
Stars: ✭ 69 (-75.87%)
Mutual labels:  fm
fm-nvim
🗂 Neovim plugin that lets you use your favorite terminal file managers (and fuzzy finders) from within Neovim.
Stars: ✭ 114 (-60.14%)
Mutual labels:  fm
synth
A Teensy 4 modular FM polyphonic synth.
Stars: ✭ 39 (-86.36%)
Mutual labels:  fm
SI4844
Silicon Labs SI4844 (BROADCAST ANALOG TUNING DIGITAL DISPLAY AM/FM/SW RADIO RECEIVER) Library
Stars: ✭ 16 (-94.41%)
Mutual labels:  fm
somafm
📻 A SomaFM Desktop Player
Stars: ✭ 20 (-93.01%)
Mutual labels:  fm
ViaCEP
The ViaCEP API/webservice .NET client
Stars: ✭ 21 (-92.66%)
Mutual labels:  mf
jtopl
Verilog module compatible with Yamaha OPL chips
Stars: ✭ 23 (-91.96%)
Mutual labels:  fm
Xlearn
High performance, easy-to-use, and scalable machine learning (ML) package, including linear model (LR), factorization machines (FM), and field-aware factorization machines (FFM) for Python and CLI interface.
Stars: ✭ 2,968 (+937.76%)
Mutual labels:  fm
micropython-TEA5767
MicroPython driver for TEA5767 FM radio module on ESP8266/ESP32/Pico
Stars: ✭ 24 (-91.61%)
Mutual labels:  fm
birds
Bird Sound Synthesis based on AM+FM
Stars: ✭ 46 (-83.92%)
Mutual labels:  fm
Magni
A package for AFM image reconstruction and compressed sensing in general
Stars: ✭ 37 (-87.06%)
Mutual labels:  afm
Alink
Alink is the Machine Learning algorithm platform based on Flink, developed by the PAI team of Alibaba computing platform.
Stars: ✭ 2,936 (+926.57%)
Mutual labels:  fm
Ftrl-FFM
Field-aware factorization machine (FFM) with FTRL
Stars: ✭ 25 (-91.26%)
Mutual labels:  fm

pytorch recommendation_system

想练习下用pytorch来复现下经典的推荐系统模型

1 实现了MF(Matrix Factorization, 矩阵分解),在movielen 100k数据集上mse为0.853左右

2 实现了FM(Factorization machines, 因子分解机), 在movielen 100k数据集上mse为0.852 (只使用u, i, ratings 三元组的因子分解机与mf其实是一样的, 故在相同数据集上的结果也差不多)

参考论文:Steffen Rendle, Factorization Machines, ICDM 2010.

3 DeepConn是第一篇使用深度学习模型利用评论信息进行推荐的文章,后面有很多改进工作如Transnets(ResSys2017), NARRE(www2018)等 所以说,这是篇非常值得认真阅读和复现的论文。

数据集下载地址:http://jmcauley.ucsd.edu/data/amazon/

使用的预训练文件下载地址:https://code.google.com/archive/p/word2vec/ 下载GoogleNews-vectors-negative300.bin 文件放入data/embedding_data中

使用方法:1. 运行pre_precessing.py文件 2. 运行train文件

实验结果(mse): office: 0.777, video_game: 1.182

参考论文:L.zheng et al, Joint deep modeling of users and items using reviews for recommendation, WSDM 2017.

4 MMOE是谷歌于2018年提出的一种多任务学习推荐模型,被用于YouTube视频推荐场景,效果良好,被业界广泛关注,我在实习时线上模型也采用了MMOE的改进模型,叫PLE。 我在census数据集上进行实验,实验结果比原文差一点。

实验结果(AUC):'income':0.942, 'marital': 0.977 原文是0.941, 0.9927

参考论文:J.Ma et al, Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts, KDD 2018. Z.Zhao et al, Recommending What Video to Watch Next: A Multitask Ranking System, RecSys 2019. Hongyan Tang, Progressive Layered Extraction (PLE): A Novel Multi-Task Learning (MTL) Model for Personalized Recommendations, RecSys 2020.

5 PLE 也实现了下,一起放在mmoe_model文件夹下了,使用时把mmoe.py中导入模型改为PLE就行了。实验结果与MMOE差不多。

实验结果(AUC):'income':0.939, 'marital': 0.979

6 实现DeepFM,在sample Criteo(是对kaggle Criteo数据集的采样,有1000000个样本)数据上实验了一下,主要参考了这位的代码 https://blog.csdn.net/springtostring/article/details/108157070 但我觉得他的模型部分写的不太对 又自己重新写了。

实验结果(AUC): 0.743

参考论文:HGUO et al, DeepFM: a factorization-machine based neural network for CTR prediction, IJCAI 2017.

7 实现NFM, 数据集同上,主要参考DeepCTR,

实验结果(AUC): 0.710

参考论文:Xiangnan He et al, Neural Factorization Machines for Sparse Predictive Analytics, SIGIR 2017.

8 实现DCN,数据集及参考同上

实验结果(AUC): 0.750

参考论文:Ruoxi Wang et al, Deep & Cross Network for Ad Click Predictions, ADKDD 2017.

9 实现AFM, 数据集及参考同上

实验结果(AUC): 0.715

参考论文:Jun Xiao et al, Attentional Factorization Machines: Learning the Weight of Feature Interactions via Attention Networks, IJCAI 2017.

10 实现AutoInt, 数据集及参考同上

实验结果(AUC):0.717

参考论文:Weiping Song et al, AutoInt: Automatic Feature Interaction Learning via Self-Attentive Neural Networks, CIKM 2019.

11 实现ONN,数据集及参考同上

实验结果(AUC):0.735

参考论文:Yi Yang et al, Operation-aware Neural Networks for user response prediction, Neural Networks 2020.

12 实现FiBiNET,数据集及参考同上

实验结果(AUC):0.698

参考论文:Tongwen Huang et al, FiBiNET: Combining Feature Importance and Bilinear feature Interaction for Click-Through Rate Prediction, RecSys 2019.

13 实现Wide&Deep,数据集及参考同上

实验结果(AUC):0.728

参考论文:Heng-Tze Cheng et al, Wide & Deep Learning for Recommender Systems, RecSys workshop/dlrs 2016.

14 实现DCN-v2,数据集及参考同上

实验结果(AUC):0.748

参考论文:Ruoxi Wang et al, DCN V2: Improved Deep & Cross Network and Practical Lessons for Web-scale Learning to Rank Systems, WWW 2021.

15 实现AFN,数据集及参考同上

实验结果(AUC):0.720

参考论文:Weiyu Cheng et al, Adaptive Factorization Network: Learning Adaptive-Order Feature Interactions, AAAI 2020.

16 实现DCAP,数据集同上

实验结果(AUC):0.709

参考论文:Zekai Chen et al, DCAP: Deep Cross Attentional Product Network for User Response Prediction, CIKM 2021.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].