1. 项目概述
在联盟营销生态中,推广者(Promoter)的价值评估一直是个关键问题。传统方法只关注推广者直接带来的销量(Self-sales),却忽视了他们在社交网络中通过转发、分享所产生的链式传播价值。这种"直接贡献"评估范式存在明显缺陷:它无法识别那些不直接产生销量但作为关键传播节点的推广者,导致资源配置失衡和激励机制不公平。
阿里妈妈技术团队提出的DNTS框架创新性地解决了这个问题。我们首次定义了"传播规模"(Propagation Scale)这一新指标,用于量化推广者的间接传播价值。传播规模的计算基于完整的推广链路分析,考虑了推广者参与的所有订单,无论这些订单是由其直接促成还是通过其传播行为间接促成。
关键突破:DNTS框架将复杂的传播规模预测问题解耦为两个更易处理的子任务——基础信号(自销量)预测和动态网络结构预测,再通过合成机制得到最终结果。这种两阶段方法克服了直接预测高度波动信号和动态网络的困难。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心问题解析
2.1 传统评估范式的局限性
传统"直接贡献"评估范式存在两个主要问题:
-
价值衡量偏差:无法识别"播种者"型推广者。如图1(a)所示,推广者P2虽然自身销量(a)为0,但通过激活下游推广者P3和P4,间接促成了销量(b)。传统方法会错误地将P2判定为无效推广者。
-
资源分配失准:资源过度倾斜给"收割者"型推广者(如P4),而忽视了对生态健康至关重要的"播种者"(如P2)。长期来看,这会损害生态多样性。
2.2 传播规模的数学定义
传播规模的形式化定义为:
$$
PS(p) = \sum_{o \in O(p)} q(o)
$$
其中:
- $p$代表推广者
- $O(p)$是推广者$p$直接或间接参与促成的订单集合
- $q(o)$是订单$o$的销量
以图1(a)为例:
- 订单$o_1$(销量=1)的链路:P2→P3
- 订单$o_2$(销量=2)的链路:P2→P3→P4
- P2的传播规模:$PS(P2)=q(o_1)+q(o_2)=3$
- P3的传播规模:$PS(P3)=q(o_1)+q(o_2)=3$
- P4的传播规模:$PS(P4)=q(o_2)=2$
3. DNTS框架设计
3.1 整体架构
DNTS采用两阶段预测架构:
-
基础信号预测通路:预测每个推广者未来的自销量(Self-sales)
- 使用一维时间卷积模块(多尺度Inception策略)
- 通过门控机制融合不同时间尺度的模式
- 输出:$\hat{S}_{t+1}^{(p,i)}$
-
结构预测通路:预测未来的推广网络结构
- 局部动态编码:基于注意力机制聚合后代信息
- 全局动态编码:超图卷积捕捉跨商品推广模式
- 输出:更新后的结构表征$H_{struct}$
-
合成模块:将两个通路的结果结合,计算最终传播规模
- 预测贡献系数矩阵$A_{t+1}^{(i)}$
- 使用Gumbel-Softmax采样后代集合
- 最终传播规模:$\hat{PS}{t+1}^{(p,i)} = A^{(i)} \times \hat{S}_{t+1}^{(p,i)}$
3.2 关键技术细节
3.2.1 局部动态编码
- 使用DFS算法预处理获取每个推广者的后代集合:
$$D^{(p,i)} = {d | path(p→d) \ exists}$$ - 注意力机制聚合后代信息:
$$h_{local}^{(p,i)} = \sum_{d \in D^{(p,i)}} \alpha_{p,d} \cdot h_d$$ - GRU捕捉时序模式:
$$h_{local,t}^{(p,i)} = GRU(h_{local,t-1}^{(p,i)}, x_t^{(p,i)})$$
3.2.2 全局动态编码
- 构建超图:
- 节点:推广者
- 超边:商品推广关系
- 关联矩阵:$B^{(i)} \in \mathbb{R}^{|P|×|I|}$
- 超图卷积:
- 节点到超边聚合:$e_j = \sigma(\sum_{p \in P_j} W_p h_p)$
- 超边到节点更新:$h_p' = \sigma(\sum_{j \in J_p} W_j e_j)$
- 时序建模:
$$H_{global,t} = GRU(H_{global,t-1}, X_t)$$
3.2.3 合成机制
- 后代关系概率矩阵:
$$R_{t+1}^{(i)} = softmax(\frac{QK^T}{\sqrt{d_k}})$$- $Q = H_{struct}W_Q$
- $K = H_{struct}W_K$
- 激活率矩阵:
$$\Gamma_{t+1}^{(i)} = \sigma(W_\gamma[H_{struct}||\hat{S}_{t+1}])$$ - 最终贡献系数:
$$A_{t+1}^{(i)} = GumbelSoftmax(R_{t+1}^{(i)} \odot \Gamma_{t+1}^{(i)})$$
4. 工业级挑战与解决方案
4.1 数据稀疏性问题
问题描述:线上商品数量达亿级,但每个商品相关的推广者只占很小比例,导致数据极度稀疏。
解决方案:
- 构建商品级推广者子表
- 所有图计算限定在相关推广者子集内
- 动态维护子表,定期更新
4.2 高波动性问题
问题描述:商品推广热度可能突然爆发,推广者活动大部分时间处于"沉默"状态,预测难度大。
解决方案:
- 增加推广者激活预测辅助任务
- 使用预测的激活状态作为门控
- 过滤掉"沉默"推广者,降低噪声影响
5. 实验验证
5.1 数据集
使用阿里妈妈真实业务数据构建三个数据集:
- 7-days:短期预测
- 14-days:中期预测
- 30-days:长期预测
其中30-days数据集包含:
- 推广者:>100,000
- 推广连边:~6,000,000
5.2 基线模型
对比五种SOTA图时序预测模型:
- DCRNN(ICLR 2018)
- STGCN(IJCAI 2018)
- LSGCN(IJCAI 2020)
- MTGNN(KDD 2020)
- TPGNN(NeurIPS 2022)
5.3 评估指标
- MAPE(平均绝对百分比误差):
$$MAPE = \frac{100%}{n} \sum_{t=1}^n \left| \frac{y_t - \hat{y}_t}{y_t} \right|$$ - MSLE(均方对数误差):
$$MSLE = \frac{1}{n} \sum_{t=1}^n (\log(y_t + 1) - \log(\hat{y}_t + 1))^2$$
5.4 离线实验结果
| 模型 | 7-days MSLE | 14-days MSLE | 30-days MSLE |
|---|---|---|---|
| DCRNN | 0.891 | 0.843 | 0.812 |
| STGCN | 0.876 | 0.827 | 0.798 |
| LSGCN | 0.862 | 0.819 | 0.784 |
| MTGNN | 0.847 | 0.801 | 0.772 |
| TPGNN | 0.832 | 0.792 | 0.763 |
| DNTS | 0.738 | 0.712 | 0.677 |
关键发现:
- DNTS在30-days数据集上相比TPGNN:
- MSLE相对提升11.3%
- MAPE相对提升4.1%
- 模型性能随历史信息增加而提升(30-days > 14-days > 7-days)
5.5 诊断性实验
比较三种预测模式:
- 模式一(传统):直接预测传播规模
- 模式二(基础):仅预测自销量
- 模式三(DNTS):两阶段预测
结果分析:
- 自销量预测(模式二)误差显著低于直接传播规模预测(模式一),验证了基础信号更易预测
- 在传统范式下(模式一),GNN的引入几乎无提升,说明直接处理非平滑信号效果差
- 在两阶段范式下(模式三),GNN对结构预测带来显著提升
5.6 在线AB测试
在阿里妈妈推荐平台部署DNTS,优化召回阶段排序:
$$recall(p,i) = \alpha \cdot PS(p,i) + (1-\alpha) \cdot sales(p,i)$$
三个月测试结果:
| 指标 | 对照组 | 实验组 | 提升 |
|---|---|---|---|
| GMV | 基准 | +2.52% | 显著 |
| 销量 | 基准 | +2.40% | 显著 |
6. 实操经验与注意事项
6.1 数据预处理要点
-
链路归因准确性:
- 确保订单归因链路的完整性和准确性
- 处理边缘情况:多路径归因、循环传播等
- 建议采用多维度校验机制
-
网络构建优化:
- 按天离散化推广网络时,注意跨天传播的处理
- 对低频推广者适当聚合,降低稀疏性
- 使用高效的图存储格式(如CSR)
6.2 模型训练技巧
-
损失函数设计:
- 主任务:传播规模预测(MSLE损失)
- 辅助任务:推广者激活预测(交叉熵损失)
- 加权组合:$\mathcal{L} = \lambda_1 \mathcal{L}{main} + \lambda_2 \mathcal{L}$
-
训练策略:
- 采用课程学习(Curriculum Learning)
- 先训练基础信号预测通路
- 再联合训练整个框架
- 学习率动态调整
6.3 线上部署考量
-
实时性保障:
- 基础信号预测:天级别批量预测
- 结构预测:动态更新,触发式执行
- 合成模块:轻量级矩阵运算
-
资源优化:
- 推广者子表分区存储
- 热门商品单独处理
- 冷启动商品降级策略
7. 常见问题排查
7.1 预测值偏差大
可能原因:
- 归因链路不完整
- 推广者沉默期未被正确识别
- 商品热度突变未捕捉到
解决方案:
- 检查归因逻辑,补充缺失链路
- 调整激活预测阈值
- 加入外部事件信号(如促销活动)
7.2 训练不稳定
可能原因:
- 传播规模数值跨度大
- 动态网络结构变化剧烈
- 梯度爆炸
解决方案:
- 对目标变量做log变换
- 增加梯度裁剪
- 使用更稳定的注意力变体(如Reformer)
7.3 线上效果衰减
可能原因:
- 推广者行为模式变化
- 商品生命周期影响
- 季节性因素
解决方案:
- 建立模型性能监控体系
- 设计增量学习机制
- 加入时间衰减因子
在实际部署DNTS框架的过程中,我们发现对推广者行为的深入理解至关重要。例如,某些推广者虽然整体传播规模不大,但在特定商品类别中表现突出。为此,我们在模型中加入了商品类别感知的注意力机制,进一步提升了预测精度。另一个实用技巧是在合成模块中加入人工可调节的权重参数,便于运营人员根据业务需求灵活调整传播规模的权重。
