“A Deep Probabilistic Model for Customer Lifetime Value Prediction” 论文笔记

背景

现有 LTV 预测工作主要分为两种:一种是直接基于 MSE 建模 LTV;一种是两阶段建模,先用BCE建模付费概率,然后用MSE建模付费金额,排除 LTV 为0的样本的影响

但是LTV 数据的分布及其特殊,存在大量零值(大量客户是"一次性购买者",其 residual LTV = 0)和严重的高偏态连续值(少数高价值客户的 LTV 比普通客户高出几个数量级)。现有使用 MSE 损失的工作试图用一个单一的连续分布去拟合两个本质不同的群体,结果是"两边不讨好";使用两阶段建模又需要两个模型、复杂度高,MSE 对异常值敏感

ZILN 混合损失

本文主要提出了 Zero-Inflated LogNormal**(ZILN)** 损失函数本文来同时建模用户是否付费以及付费金额,其中第一项用交叉熵来建模用户是否付费,第二项用对数正态分布建模 LTV(假设了用户在已知付费的前提下付费金额服从对数正态分布),其中 \(x\) 为真实值,均值 \(\mu\) 和方差 \(\sigma\) 为模型的输出值:

\L_{\\text{ZILN}}(x; p, \\mu, \\sigma) = L_{\\text{CrossEntropy}}(1_{\\{x\>0\\}}; p) + 1_{\\{x\>0\\}}L_{\\text{Lognormal}}(x; \\mu, \\sigma) \\

\L_{\\text{Lognormal}}(x; \\mu, \\sigma) = \\log(x\\sigma\\sqrt{2\\pi}) + \\frac{(\\log x - \\mu)\^2}{2\\sigma\^2} \\

线上 infer 时模型的预估输出为学到的分布的期望 \(\exp(\mu + \sigma^2 / 2)\),最优预测会自动大于观测样本的算术平均;此外,从图中可以看到(真实值是 20,横坐标是模型输出的点预测值),在原始值空间中 lognormal loss 对高值的惩罚比 MSE 小。综上所述,对数正态分布所以更匹配 LTV 数据 "零值多、右尾厚" 的分布特征

模型架构

本文使用 DNN 作为模型架构,DNN 的最后一层包含 3 个输出,分别表示付费概率、均值 μ 和方差 σ(分别使用 sigmoid、identity、softplus 激活函数)。最终通过 ZILN 混合损失实现一个模型同时完成分类和回归两个任务

评估指标

Gini 系数

Gini 系数是经济学中衡量收入或财富不平等程度的指标,值越大代表越不平等,本文对这个原始概念做了改造以用于 LTV 数据:

  • 按客户的真实 LTV 从大到小排序

  • 画出 Lorenz 曲线:横轴是累积客户百分比,纵轴是累积 LTV 百分比(20% 的客户贡献了 80% 的 LTV 即 80/20 法则)

  • Gini 系数 = Lorenz 曲线与 45° 对角线之间面积的两倍

所以标签 Gini 系数反映了客户消费的不平等程度,值越大说明头部客户越集中。本文还引入归一化 Gini 系数:Normalized Gini = (模型 Gini 系数) / (标签 Gini 系数) 用来衡量模型的区分度,有没有把真正的高价值用户排到前面

校准图

校准图(Decile Chart)的构建方法:

  • 把所有客户按预测 LTV 从低到高排序

  • 均匀分成 10 组(每组 10% 的客户,称为一个 decile)

  • 对每个 decile,分别计算 该组内预测 LTV 的平均值 和 真实 LTV 的平均值

  • 用柱状图并排展示这两个均值

总结

这篇是谷歌在 LTV 领域非常经典的一篇论文,给出了一个将分类和回归集成在一个 Loss 中的比较好的方案(ZILN 混合损失),也给后续所有工作都提供了一个新的视角

相关推荐
EQUINOX12 小时前
【论文阅读】| MoCo精读
论文阅读·人工智能·python·深度学习·机器学习
程序喵大人3 小时前
【AI专栏】图解Transformer - 第05章:LLM 推理工程
人工智能·深度学习·llm·transformer
Day(AKA Elin)5 小时前
【Day】MTP(Multi Token Prediction)技术学习
python·深度学习·学习·llama
卡梅德生物科技小能手5 小时前
卡美德生物科普IL25:2型免疫反应的核心调控靶点
经验分享·深度学习·生活
AI人工智能+6 小时前
护照OCR识别技术,依托深度神经网络模型,实现了从像素到语义的端到端智能解析
深度学习·计算机视觉·自然语言处理·ocr·护照ocr识别
手写码匠11 小时前
注意力机制全家桶:从 Multi-Head 到 GQA 再到 Flash Attention 的手写实现
人工智能·深度学习·算法·aigc
大鱼>11 小时前
模型公平性与偏差检测:AI伦理实战指南
人工智能·深度学习·算法·机器学习
大鱼>12 小时前
AI+资产监控:农业设施智能监控系统
人工智能·深度学习·算法·机器学习
qq_263_tohua13 小时前
第110期 FCN 语义分割学习
深度学习·学习
盼小辉丶13 小时前
PyTorch强化学习实战(18)——基于DQN处理股票交易问题
pytorch·深度学习·强化学习