1 千川由来
得物的举荐场景,除了首页瀑布流等几个比拟大的场景之外,还有很多长尾的小场景,包含:频道、会场、购中购后场景、品牌墙等。这类场景存在单个场景体量小(UV 和 GMV 均偏小)、场景零散、类型多元的状况。如需对这类场景进行独自优化,波及的老本投入远高于产出。而随着业务倒退,这类长尾场景只会越来越多,对这类场景的优化亟待解决。因而,咱们须要这样一个通用举荐平台,来承接住这些小场景,并可能继续优化,带来收益。“化零为整”、“兼容并包”、“对立平台”,这就是千川。
2 千川须要解决的难题
联合各类需要及定位,千川作为对立举荐零碎,面临不少难题,至多需具备五种能力。
3 工程和算法解决方案
应答上述艰难,千川提出对立举荐框架。在千川 ID 体系根底上,实现多场景举荐的对立优化。
千川举荐框架总体分五层
- APP 服务层:对接各个长尾场景,目前接入了包含主题、频道、会场、购中购后独立流、出图等场景
- 千川接入层:目前提供两种接入形式,一种是通过商品投放服务接入,一种是注册千川直连。千川根据接入场景的差别建设千川 ID 体系,会为每个接入的场景提供特定的千川 ID(或者千川 ID 汇合)。
- 千川 DPP 层:提供多种 DPP 举荐模块,满足多类型举荐需要,包含商品举荐 DPP,多类型举荐 DPP,楼层举荐 DPP,品牌举荐 DPP。每个 DPP 模块框架基本一致,会依据举荐类型设计差异化举荐策略。
-
算法层:搭建残缺举荐链路,在召回、粗排、精排、策略等全流程上进行效率和体验优化。
- 召回阶段:设计包含 I2I、U2I 等在内 5 类召回,尽可能解决场景、行为、趣味偏差,召回用户爱好商品。
- 粗排阶段:在满足高性能要求上,提供单指标及多指标粗排能力,为后续精排晋升空间。
- 精排阶段:针对场景差别、用户趣味、多种指标、大促利用方面进行一系列模型迭代。
- 策略阶段:联合业务需要提供策略干涉、场景差异化配置、流控调权、多样性重排、多类型散发等能力。
- 基建层:依靠包含机器学习平台、索引平台、特色服务、流控平台等在内的弱小能力反对,方可打造出整套千川举荐框架。
4 算法迭代过程
4.1 召回粗排练进
因千川多业务场景的特色,召回和粗排阶段面临一系列挑战,包含:场景行为偏好差别、多场景下用户趣味偏差、场景指标定位差别。
挑战 1:场景行为偏好差别
千川用户行为较为扩散,不同场景下行为稠密且差别较大。为解决这类偏差,千川会集全场景下用户的长短期行为,设计 I2I、重定向、Trigger 选取、向量化等一系列策略。
- I2I、重定向捕捉行为偏好
- 不同的 Trigger 选取策略兼顾长短期行为
- GraphEmb、RankI2I 实现行为偏好的向量化
挑战 2:多场景下用户趣味偏差
不同场景下用户的趣味不完全一致,具体表现如:男性用户 A 在主题落地页更多关注鞋、静止、3C 等之类的商品,在送礼频道更关注化妆品相干商品;女性用户 B 在主题落地页更偏向于包袋、玩偶等,在送礼频道更关注篮球、休闲服之类的商品。用户在不同场景之间的趣味体现既有共性又存在差别,千川通过实现全场景的 DSSM 向量表征与联合场景特色的 MIND 向量表征多场景下用户的趣味偏差。
- DSSM 引入全场景数据表征用户对商品的根底趣味
- MIND 联合场景特色扩大用户在多场景多趣味上的表征
挑战 3:场景指标定位差别
因场景定位不同,对应的指标也不统一。整体可演绎为 dpv 导向场景和 uv 价值导向场景。dpv 导向场景对应的是对点击的预估,uv 价值导向场景须要同时预估点击和转化。千川针对两类场景指标,设计了粗排双塔和粗排 ESMM 模型实现分指标差异化预估,打消场景指标定位差别。
- 粗排双塔模型实现点击预估
- 粗排 ESMM 实现点击与转化的多指标预估
4.2 排序模型迭代
挑战 1: 用户趣味建模
用户趣味建模始终是举荐零碎中重要的优化点之一,用户的历史行为则是用户潜在趣味最间接的表白。
之前的工作次要针对用户实时和中短期行为进行建模,仅应用近期行为无奈建模用户长期以来稳固的趣味和周期性的行为,同时也会将举荐零碎的数据反馈循环限度在部分的热门的内容中。
另一方面则是特色穿插的有余,模型从 deepFM 单指标范式迁徙到基于 dmt 范式下的多指标模型,去掉了 fm 侧构造,尽管能够充沛开掘用户行为序列特色,然而对稠密特色在模型上的穿插还较少,有肯定的优化空间。
挑战 2: 场景差别建模
因为不同的场景往往具备本身独特的定位,服务的用户、蕴含的商品都有较大的差别。而小场景自身的用户散布和行为偏好也随流动和经营策略等变动产生较大的稳定。
新人落地页、新人频道等场景,新用户占比拟高,点击率偏高而转化率显著偏低;补贴频道次要以性价比高商品为主,点击、转化的动向都不错,然而 aov 较整体有显著的降落;女性频道的受众根本是女性,这个场景的商品集较支流场景有着显著差别,女性用户在爱好上也有显著偏差,数据上看这个场景的女装、箱包占比有显著晋升;而会场等场景,日常和大促用户散布和商品池变化很大,用户行为也有相应的变动,在预热期珍藏志愿继续晋升,直到大促当天集中实现转化。而对于购后、领取后等场景,因为用户需要曾经局部满足,浏览深度就相应偏低。
迭代 1: 用户趣味建模
为了充沛建模用户的趣味的差别,咱们在构建场景下用户、商品各种显式穿插统计特色的根底上,进一步通过优化对用户行为序列的充沛建模和隐式的特色穿插形式,晋升咱们对用户偏好刻画的准确性。
- 首先咱们减少了 transformer 的构造来解决用户的长短期用户行为序列,并对行为序列做了合并和去重解决来增大信息容量。
- 咱们减少了显式的对用户统计特色、稠密特色的穿插,晋升模型成果。
-
减少千川 id、商品、用户属性对用户行为的穿插特色,并利用 co-action 构造做隐式穿插。
a. 用户行为序列作为 Feed Feature, 复用 attention 之前的 sequence embedding
b. cspu、qcid、gender、brand 等作为 Induction Feature,构建 3 层 mlp
c. 做 3 次阶乘,减少高阶的特色穿插
迭代 2: 多场景差别建模
为了充沛建模不同场景的差别,咱们在构建场景下商品、品牌、类目标穿插统计特色根底上,进一步通过模型构造的优化,充沛学习用户在不同场景的偏好差别。
- 通过构建特色刻画场景偏好以及场景效率的差别
-
通过构建特色刻画用户活跃度、用户生命周期标签等特色
a. 用户标签 - 生命周期
b. 用户 - 不同场景 - 活跃度【exp|clk|buy|clickbuy && cspu|brand|cate】
c. 用户 - 全场景 - 活跃度【exp|clk|buy|clickbuy && cspu|brand|cate】
-
通过 mmoe 构造,使得模型进一步学习到场景的差别。
a. 只管丰盛了特色,然而不同场景的样本混合,只用一个模型会使得不同场景相互烦扰笼罩,难以达到最优的成果,所以进一步对模型构造做了调整,复用了 mmoe 的构造。
b. 为了凸显场景的差异性,须要对原始的 MMoE 的 Gate 网络的输出做调整,为此只抉择千川 id 的自身信息作为特色,利用场景 id 的信息对 experts 进行抉择,使得不同场景通过 softmax 输入不同的 Gate 权重。
c. 针对不同的场景,模型可能感知场景的差别,不同场景可能抉择不同的 experts 子网络的组合,从而实现不同场景的差异化建模。
-
通过 poso 构造,使得模型能进一步学习到用户群的差别。
a. 在初步应用用户特色时,发现新用户的特色因为数据稀少 (新用户的样本只占所有样本的 4.6%),并没有被网络充沛学习利用,导致这些特色即便被 MASK 也简直不影响网络参数散布。
b. 为了解决不均衡散布的特色的解决,采纳了 POSO 的构造,次要在 Gate 侧输出用户标签特色,例如是否新客、是否卖家、性别等特色。而后在全连接结构应用 POSO 时,全连贯的每层输入和 gate 的输入按位相乘。
依照预估点击率分桶,能够看到模型在对新客的预估上,准确率显著晋升,而且从整体的 pcoc 上看,模型建模成果也显著晋升。
5 将来瞻望
5.1 业务
千川判若两人的反对各类业务倒退:
- 标准对接流程,持续扩大新场景,做到精确高效,如:会场主图,金刚位出图等。
- 演绎业务诉求,提炼需要共性,进一步扩大能力,如:多类型散发能力、多样性重排能力等。
- 保护零碎稳固,欠缺监控、神盾巡检,及时发现、解决相干问题。
5.2 算法
千川召回迭代会持续聚焦在解决场景、行为、趣味偏差上:一方面从场景相干特色动手,围绕场景特色进行召回模型迭代,如:将场景特色作为独立塔引入,退出场景、用户、商品之间的特色穿插,摸索 SDM 模型构造等;一方面继续深挖用户、商品特色,强化价格因素占比,丰盛价格特色、加深价格与场景、用户、商品的关联,实现精准建模。
千川精排迭代会持续聚焦在多场景差别建模方向上,一方面摸索现有建典范式的进阶方向,例如 PepNet 等。一方面持续开掘特色,例如场景内的用户行为序列等,并摸索与之适配的模型构造,如 SAR-Net 等。
另外在许多千川的理论利用中,有许多非瀑布流场景,K 个商品可能一次性出现给用户。例如金刚位、中通位、会场楼层内、商品分类等等场景。此时,这 K 个商品如同被出现在一张卡片上,且这 K 个举荐位之间是相互影响的。会尝试摸索生成重排等整屏优化的算法方向。
而千川会场商品举荐很容易受外界干涉和大促日程节点的影响,排序模型经常呈现日常体现优于基线,然而到了大促就效率大幅下滑的景象。这既是挑战也是算法技术创新的时机。会进一步摸索诸如继续学习、实时 ODL、LTR 等方向。
5.3 通用性
此外,咱们会持续降级,将千川变得更加通用,争取做到组件化、构建算法库、灵便扩大和可复制。
扫码增加小助手微信
如有任何疑难,或想要理解更多技术资讯,请增加小助手微信:
文: Tmac, 阿寿, Yaobik
本文属得物技术原创,更多精彩文章请看: 得物技术官网
未经得物技术许可严禁转载,否则依法追究法律责任!