Git Product home page Git Product logo

recsys's Introduction

Recsys algorithms, 相关paper目录

  • LR (FTRL)
  • DNN
  • FM
  • GBDT + LR
  • CADE (Collaborative Denoising Auto-Encoder)
  • DeepFM (tf serving 保存模型 / grpc/rest client 调用demo)
  • xDeepFM
  • DCN (Deep Cross Network)
  • Deep & Wide
  • DIN (Deep Interest Network)

Performance Summary

Algorithm Paper AUC Experiment AUC Paper Loss Experiment Loss
DeepFM 0.8007 0.7888 0.4508 0.4608
xDeepFM 0.8012 0.79793376 0.4493 0.45614
DCN 0.7961 0.78843915 0.4508 0.46
DNN 0.7991 0.7773 0.4408 0.6369
FM 0.7900 0.7901 0.4592 0.4591
Notes
  • 都采用criteo dataset, 共39个fields, 参考 data statistics。采用相同的数据预处理。embedding size 都选取16维。数据处理加转tfrecords都存在这里

  • 主要比较不同算法的区别性。对于共有的dnn part,这里我都采用了100,100的二层结构。

  • 都采用256 step size。训练总step 1w~5w不等,不同算法需要的迭代次数不同。有些算法容易过拟合,有些可以多跑几轮,取决于模型表达能力。

  • 虽然没有经过预处理和调参,与paper中的结果去比较没有什么意义,纯属顺手列在这里,作为参考。

Deepfm

论文结果:  AUC = 0.8007 logloss=0.4508
实验结果:  AUC = 0.7888 logloss=0.4608
平均速度:global_step/sec: 12

aucloss

xDeepfm

论文结果:AUC = 0.8012 logloss = 0.4493
实验结果:AUC = 0.79793376 logloss = 0.45614
平均速度:global_step/sec: 14

aucloss

DCN (Deep and Cross Network)

论文结果:AUC = 0.7961 logloss=0.4508
实验结果:AUC = 0.78843915 logloss =0.46
平均速度:global_step/sec: 45

dcn 确实跑的挺快,主要优势在于xT * w 以后得到的是一维标量。计算量会比其他的网络明显小很多。训练速度几乎是deepfm,xdeepfm的3倍~4倍速度。更多细节看这里

aucloss

DNN

论文结果: AUC = 0.7991 logloss=0.4408
实验结果: AUC = 0.7773 logloss=0.6369
平均速度:global_step/sec: 41

论文里的那些dnn似乎效果都不错。我这里的raw feature embedding 加上两层100,100的dnn差距很明显。在8k~1w步的时候就开始过拟合了。没有调参,区别还是很大的。

另一方面也体现出那些复杂模型的优势,不太需要特征处理,模型即使0调参,效果也不会如此之大。

aucloss

FM

论文结果: AUC = 0.7900 logloss=0.4592
实验结果: AUC = 0.7901 logloss=0.4591
平均速度:global_step/sec: 23

aucloss

Performance Summary (Attention based algorithms)

Notes
  • 采用Amazon Electro dataset, 负样本随机生成。
Algorithm Paper AUC Experiment AUC Paper Loss Experiment Loss
DIN 0.8818 0.7447 None None

DIN

论文结果:  AUC = 0.8818 
实验结果:  AUC = 0.7447 
平均速度:global_step/sec: 124

论文中的AUC很高,与正负样本构造的选择很有关系。

aucloss

recsys's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.