推荐系统线上能跑多大的模型

本文不是从系统优化角度谈复杂的模型的部署和优化问题,而是从行业成本角度,看线上推理多复杂的模型是可以满足成本及ROI要求的。 做一个假设: • 电商推荐行业,主要是更熟悉成本核算 • 部署标准的Transformer作为排序模型,参考OneTrans结构 • 参数规模对齐qwen2的系列模型,更直观看看能跑哪个尺寸

Talent Dilution Roofline:你的算法团队可能不需要再招人了?

Roofline model是高性能计算领域用来分析程序性能瓶颈的一个直观模型,因为画出来像一个屋顶形状而得名。如下图,横坐标是算法的计算强度Flop/Byte(算法的浮点计算数除以内存访问量),纵坐标是算力Flop/s,它描述的是如果算法计算强度提升算力线性提升(Memory-Bound),直到算数强度超过硬件的拐点,之后算力逼近硬件的上限(Compute-Bound)。它核心回答了:你的程序到底受什么限制——计算能力还是内存带宽?应该优化哪里?

OneTrans 推荐系统对齐序列处理与特征交叉

从精排切换成深度学习以来,工业界一直会把排序的模型结构研究切分成基本的两部分,序列处理和特征交叉,甚至有一些公司的排序组,下面都拆成两个Team分别处理行为序列和特征交叉。从最早的时候,比如序列用DIN来处理,序列就被压成了一个或多个向量表征,再参与与其他特征的交叉。我们可以理解成MLP(concat(DIN, Features)),发展到今天大多数的模型研究,还是分立地把MLP换成DCN,增加个LHUC,复杂化为Rank Mixer或Transformer,把DIN叠加MHA,直接换成Transformer,可以写成RankMixer(concat(Transformer, Features))。 从MLP(concat(DIN, Features))到RankMixer(concat(Transformer, Features)),本质没有变,就是序列处理和特征交叉是一个隐式的两阶段处理,序列被压缩到Vector Space才和特征发生交叉。而LLM的有趣之处,就是在Next Token Prediction利用到的交叉发生在词序列的Token Space之中,它能启发推荐排序模型的,就是每一个特征的交叉应该发生在用户序列的Token Space之中。