DLRM 深度学习推荐模型 项目简介
DLRM(Deep Learning Recommendation Model)是深度学习推荐模型的实现,用于个性化推荐。该模型输入有密集和稀疏的特性,前者是浮点值的向量,后者是嵌入表的稀疏索引列表,嵌入表由浮点值向量组成。所选择的矢量被传递到由三角形表示的 mlp 网络,在一些情况下,矢量通过操作符(Ops)进行交互。output:
probability of a click
model: |
/\
/__\
|
_____________________> Op <___________________
/ | \
/\ /\ /\
/__\ /__\ ... /__\
| | |
| Op Op
| ____/__\_____ ____/__\____
| |_Emb_|____|__| ... |_Emb_|__|___|
input:
[ dense features ] [sparse indices] , ..., [sparse indices]更精确的模型层定义: 完全连接的 mlp 层 z = f(y) y = Wx + b 嵌入查找(对于稀疏索引列表 p=[p1,...,pk]) z = Op(e1,...,ek) obtain vectors e1=E[:,p1], ..., ek=E[:,pk] Operator Op 可以是以下之一 Sum(e1,...,ek) = e1 + ... + ek Dot(e1,...,ek) = [e1'e1, ..., e1'ek, ..., ek'e1, ..., ek'ek] Cat(e1,...,ek) = [e1', ..., ek']' 其中,' 表示转置操作 要求:pytorch-nightly (6/10/19) onnx (可选) torchviz (可选)
probability of a click
model: |
/\
/__\
|
_____________________> Op <___________________
/ | \
/\ /\ /\
/__\ /__\ ... /__\
| | |
| Op Op
| ____/__\_____ ____/__\____
| |_Emb_|____|__| ... |_Emb_|__|___|
input:
[ dense features ] [sparse indices] , ..., [sparse indices]更精确的模型层定义: 完全连接的 mlp 层 z = f(y) y = Wx + b 嵌入查找(对于稀疏索引列表 p=[p1,...,pk]) z = Op(e1,...,ek) obtain vectors e1=E[:,p1], ..., ek=E[:,pk] Operator Op 可以是以下之一 Sum(e1,...,ek) = e1 + ... + ek Dot(e1,...,ek) = [e1'e1, ..., e1'ek, ..., ek'e1, ..., ek'ek] Cat(e1,...,ek) = [e1', ..., ek']' 其中,' 表示转置操作 要求:pytorch-nightly (6/10/19) onnx (可选) torchviz (可选)