perCLTV游戏个性化用户生命周期价值预测的通用系统

摘要

在线游戏在收入和玩家数量方面构成了蓬勃发展的全球游戏市场中最大的部分。与通过一次性销售游戏获利的游戏不同,在线游戏通过大量活跃玩家的游戏内购买来赚钱。因此,用户生命周期价值(CLTV)对游戏公司来说尤为重要,以改善营销决策并增加游戏收入。如今,随着虚拟游戏世界变得越来越创新、复杂和多样化,海量玩家的 CLTV 高度个性化。也就是说,不同玩家的 CLTV 模式可能非常不同,尤其是在流失和支付方面。然而,当前的解决方案在个性化方面不足,从而限制了预测性能。首先,大多数方法仅试图解决 CLTV 的某一任务,即流失或支付,并且只考虑其中之一的个性化。其次,流失和支付之间的相关性没有得到足够的重视,其个性化也未得到充分探索。最后但同样重要的是,大多数此类解决方案都是基于历史数据进行的,若没有真实世界的测试,其评估结果并不令人信服。

为了解决这些问题,我们提出了一个通用系统来预测在线游戏中个性化用户生命周期价值,命名为 perCLTV。具体来说,我们从流失预测和支付预测这两个子任务出发,以序列门控多任务学习的方式重新审视个性化 CLTV 预测问题。在此基础上,我们开发了一个通用框架,通过异构玩家行为数据(包括个体行为序列数据和社交行为图数据)来建模不同类型游戏的 CLTV。在三个真实世界数据集上的综合实验验证了 perCLTV 的有效性和合理性,其显著优于其他基线方法。我们的工作已在网易游戏发布的许多在线游戏中实现和部署。生产中的在线 A/B 测试表明,perCLTV 在弹窗推荐和流失干预的两个精准营销应用中取得了显著的改进。

1 引言

2020 年,全球 27 亿玩家在游戏上花费了 1593 亿美元。在线游戏在收入和玩家数量方面构成了全球游戏市场中最大的部分。与通过一次性销售游戏获利的游戏(如主机游戏和下载/盒装 PC 游戏)不同,在线游戏通过大量活跃玩家的游戏内购买来赚钱。换句话说,一款在线游戏的总体收入是由每个玩家的综合价值决定的,特别是玩家会玩多长时间(即流失)和玩家会支付多少钱(即支付)。为此,游戏公司需要从流失和支付两方面入手,以改善营销决策,从而增加游戏收入。一方面,关注玩家流失对延长玩家生命周期和保持足够数量的活跃玩家非常有帮助。另一方面,通过有效的货币化策略促进玩家支付可以直接实现游戏收入的显著增长。由于这些原因,用户生命周期价值(CLTV)在在线游戏的开发和运营过程中尤为重要。

CLTV 是一个广泛应用于各个领域的概念,用于从流失和支付两个方面衡量用户价值。在在线游戏中,CLTV 指的是玩家在整个生命周期内产生的预期货币收入。严格来说,CLTV 最初是一个平均描述统计量,来源于某一群体的流失和支付。然而,当具体到个体时,传统的 CLTV 变得不可行。如今,具有丰富游戏元素(如道具、装备和皮肤)的虚拟游戏世界变得越来越创新、复杂和多样化。在游戏过程中,玩家在欲望、需求、兴趣和行为方面存在差异,这导致不同玩家的 CLTV 模式可能非常不同,尤其是在流失和支付方面。因此,很难用平均描述统计量来建立如此高度个性化的差异。

如图 1 所示,个性化 CLTV 最近变得更受欢迎,因为它有助于个性化。传统的 CLTV 来自于一组人的平均流失和支付,导致所有玩家的 CLTV 相同。事实上,CLTV 因玩家而异。例如,玩家 B 由于在线时间和支付的稳定高水平,CLTV 逐渐增高。尽管单次支付金额较小,但玩家 A 由于在线时间高且稳定,CLTV 相对较高。即使玩家 C 支付了大量金钱,高流失风险也导致其 CLTV 较低。

尽管取得了令人印象深刻的进展,个性化 CLTV 在在线游戏中仍然是一个实际但具有挑战性的问题。一方面,当前的解决方案仅试图解决 CLTV 的某一任务,即流失或支付,因此只考虑其中之一的个性化。然而,CLTV 的定义要求我们在估计玩家的 CLTV 时全面考虑流失和支付及其个性化。因为 CLTV 的差异本质上是由个性化流失和个性化支付共同引起的。直观地说,生命周期足够长的玩家可能比那些只在短期内玩或支付的玩家带来更大的长期收入。尽管流失预测和支付预测在性能和个性化方面表现良好,但它们都不能完全代表玩家的 CLTV。另一方面,流失和支付之间的相关性没有得到足够的重视,其个性化也未得到充分探索。通过对真实游戏数据的广泛分析(见第 4.2 节),我们观察到流失和支付之间的相关性不仅总体上显著,而且在个体上也是个性化的。例如,活跃玩家似乎更容易支付,而支付玩家则不太可能流失。更重要的是,这种相关性的程度因玩家而异。出于这些原因,现有研究在个性化方面不足,从而限制了预测性能。为了解决这个问题,从流失预测和支付预测这两个子任务出发,以多任务学习的方式重新审视在线游戏中的个性化 CLTV 预测是自然且合理的。

我们之前的工作《在线游戏中玩家画像的多源数据多任务学习》已被 CoG 2020 接收。基于流失和支付之间的潜在相关性,我们提出了一种多源数据方法,以多任务学习的方式在在线游戏中同时预测流失和支付。在这项工作中,我们主要扩展了在线游戏中个性化用户生命周期价值的技术和应用,具体如下:

首先,我们提出了一种在线游戏中个性化用户生命周期价值预测的新方法,命名为 perCLTV,该方法可以有效改善之前文献中 CLTV 个性化的不足。具体来说,我们提供了多方面的证据,支持多任务学习在 CLTV 预测的个性化和性能方面的显著改进。受此启发,我们将个性化 CLTV 预测形式化为一个多任务学习问题,即流失预测和支付预测。在此基础上,我们设计了一种序列门控多任务学习方式,以进一步增强流失和支付之间的个性化相关性,从而提高两个子任务的性能。

其次,我们开发了一个通用框架,通过异构玩家行为数据(包括个体行为序列数据和社交行为图数据)来建模不同类型游戏中的个性化 CLTV,而无需任何外部特征工程。由于当前游戏中的 CLTV 解决方案要么基于详细的行业知识,要么特定于某个游戏,因此在实践中难以形成通用解决方案。最新的努力是通过玩家行为建模来改进它,但现有的大多数工作对行为一视同仁。经验表明,不同的行为会导致不同的决策,并促使模型学习不同的行为表示,即行为语义接近相关性。为此,我们引入了区分性行为学习,以更好地学习个体行为序列数据中的行为偏好。

第三,我们在线上线下评估了我们提出的方法 perCLTV,展示了其在性能和应用方面的优越性。我们在三个真实世界数据集上进行了综合实验,以证明 perCLTV 的有效性和合理性。基于我们提出的方法,我们总结并实现了一个完整的在线游戏个性化 CLTV 系统解决方案,该方案已在网易游戏发布的许多在线游戏中部署了一段时间。此外,我们通过两个应用案例(即弹窗推荐和流失干预)展示了如何在实际游戏场景中使用个性化 CLTV 进行精准营销。在线 A/B 测试表明,在 perCLTV 的帮助下,这两个应用都取得了显著的改进,分别将转化率(CVR)提高了约 3.12 倍,并将流失率(CR)降低了约 2.0%。

2 相关工作

在本节中,我们将简要回顾与本文相关的工作,包括流失预测、付费预测、用户生命周期价值(CLTV)预测和在线游戏中的多任务学习。

2.1 流失预测

流失预测是许多领域中的一个重要问题,它威胁着服务或系统的健康和盈利能力。当前文献主要将其视为一个二元分类问题,即用户是否会离开。一般来说,这些方法使用观察窗口中的用户活动来预测定义的流失窗口中的用户流失。早期的工作侧重于设计手工特征,然后在不同的机器学习方法上评估其性能,如决策树、逻辑回归和随机森林。随着深度学习技术在用户建模中的广泛应用,最近的研究致力于从各种数据中学习潜在表示以进行流失预测,如序列数据和图数据。另一类工作以不同的方式处理流失预测。他们尝试预测每个用户的确切返回时间或相应的确切缺席间隔,以预测用户是否会离开。在这种情况下,一个直观的方法是将其形式化为回归问题,然后使用上述类似技术来解决它。此外,一些研究尝试通过生存分析来进行流失预测,旨在预测感兴趣事件的时间及其在纵向数据上的概率。

2.2 付费预测

付费预测是提供个性化服务给用户的一个重要挑战,吸引了学术界和工业界的广泛关注。当前相关研究主要集中在两个问题上:(1) 购买项目预测,(2) 购买行为预测。前者是基于用户的历史行为预测用户将购买什么,这在推荐领域得到了广泛研究,如市场篮预测和下一项推荐。后者旨在预测购买行为本身,即用户是否会购买或在给定时期内用户将支付多少,这与我们的工作更相关。与电子商务和其他场景不同,在线游戏中的物品数量和类型通常非常有限。因此,游戏公司更关注玩家的购买行为,以更好地了解其购买力的变化,从而改进营销策略以增加游戏收入。最近,一系列工作取得了令人印象深刻的进展。这些方法利用机器学习技术从丰富的历史行为数据中捕捉潜在的行为偏好,然后将此问题作为分类问题或回归问题来处理。

2.3 用户生命周期价值预测

现有的 CLTV 预测研究可以分为历史方法和预测方法。历史方法仅根据用户的过去购买计算用户的价值,而忽略了未来行为的变化。这些方法中的基本元素最初来自于最近-频率-货币价值(RFM),它基于最近性、频率和货币价值对用户进行分组。在此基础上,概率模型“买到死”(BTYD)假设在业务关系结束之前存在重复购买模式,用于预测 CLTV,其中 Pareto/NBD 和 BG/NBD 是两个流行的公式。相反,预测方法考虑了用户未来行为变化和生命周期的潜在性。最近的工作充分利用机器学习技术来处理 CLTV 预测,从传统机器学习、深度学习到强化学习。此外,CLTV 在游戏中也很常见。例如,Drachen 等人利用社交特征通过两步梯度提升过程预测 CLTV。Chen 等人使用卷积神经网络(CNN)进行 CLTV 预测。

2.4 在线游戏中的多任务学习

多任务学习(MTL)是一种机器学习中的学习范式,旨在使模型在所有任务上都能更好地泛化,已成功应用于许多领域。与从单个任务独立学习相比,多任务学习可以通过在多个相关任务之间共享表示来捕捉任务之间的潜在相关性,并通过有用的信息互补。近年来,多任务学习在在线游戏领域受到了广泛关注,并已应用于一系列实际问题。特别是,基于多任务学习的游戏玩家画像的最新研究为理解本文中的问题提供了背景。例如,Xie 等人观察到事件频率可以直观地反映实际的玩家活动,并可用于同时预测玩家脱离和首次付费。Bonometti 等人利用基于参与度和行为科学研究的理论框架,构建了一个能够在多个单人游戏中对长期生存时间和流失概率进行联合估计的模型。Tao 等人首次将多任务学习应用于在线游戏中的多社交-时间预测任务,并提出了一种基于图注意力循环网络(GART)的多任务学习模型(GMTL),以融合多个预测任务中的信息。Zhao 等人研究了如何充分利用多源数据来获取高质量的游戏玩家表示,并尝试以多任务学习的方式预测玩家流失和付费。

备注:表 1 总结了当前文献中关于流失预测、付费预测和 CLTV 预测的研究。一方面,流失预测和付费预测仅尝试解决 CLTV 的某一任务,因此仅考虑其中之一的个性化。另一方面,大多数 CLTV 预测方法考虑了流失和付费及其个性化,但忽略了它们之间的个性化相关性。因此,当前的 CLTV 解决方案在个性化方面不足,从而限制了预测性能。受多任务学习在许多领域成功应用的启发,我们提出的方法以序列门控多任务学习的方式从流失和付费两个方面重新审视个性化 CLTV,有效解决了现有方法的局限性。

3 数据集

在本文中,我们使用了来自网易游戏的两个不同类型的游戏数据集,包括动作游戏(ACT)和集换式卡牌游戏(CCG),以及一个来自阿里巴巴的公开广告数据集。

表 2 总结了三个真实世界数据集的基本统计信息。

ACT 描述了一款名为《流星蝴蝶剑》的动作手游的玩家数据。在游戏过程中,玩家可以自由体验其具有挑战性的玩家对环境(PvE)和玩家对玩家(PvP)玩法,并享受主机级别的动作游戏体验。

CCG 收集了一款名为《爱即正义》的古风恋爱手游的玩家活动数据。在游戏过程中,玩家可以通过收集卡牌任务模拟与非玩家控制角色(NPC)的情侣关系,并通过精彩的游戏故事和顶级声优享受非凡的游戏体验。

淘宝数据集是淘宝 APP 用户行为数据的一个子集,包含了一个月内的数百万条商品信息。与我们的数据类似,该数据以用户-商品交互形式组织,包括用户 ID、商品 ID、类别 ID、行为类型和时间戳。由于我们的研究问题的特殊性,很难找到在其他领域具有完全相同任务和数据的公开数据集。因此,我们选择了一个与我们相对类似的领域(在任务和数据方面),即推荐系统,并在其中使用淘宝数据集进行实验。

3.1 数据集描述

我们从在线游戏的原始游戏日志中收集了 ACT 和 CCG 数据集,通常包括四个字段,即时间戳、玩家 ID、事件 ID 和对象 ID。两个数据集都包含两种行为数据,包括 2019 年 11 月 25 日至 12 月 1 日的个人行为和 2019 年 6 月 1 日至 12 月 1 日的社交行为。对于每个游戏,我们选择在 2019 年 11 月 29 日至 12 月 1 日期间登录的玩家,并确定 2019 年 12 月 2 日至 12 月 8 日的标签。需要注意的是,7 天的标签窗口是衡量玩家行为的广泛标准时间框架,也是大多数游戏公司的开发和运营周期。最后,如果玩家在 7 天内不活跃,我们定义其为流失玩家,玩家的付费标签是玩家在 7 天内的总付费金额。

由于目标任务的不同,我们对淘宝数据集进行了必要的预处理。首先,只保留至少有 10 条记录的用户。然后,为了简化处理,我们使用商品类别代替具体商品,并关注占所有记录 99.99%的商品类别。受[34]中对购买行为分析的启发,我们将点击、购买和原始行为序列分别视为流失显性、付费显性和通用隐性序列。最后,我们将购买相同商品类别的用户视为社交行为。需要注意的是,由于缺乏价格信息,我们将流失预测和付费预测都定义为二元分类问题。我们使用玩家 7 天内的行为来预测接下来的 7 天内的流失和付费,并通过滑动窗口增强数据。

3.2 个人行为序列数据

玩家的个人行为之间存在不同的关联,即行为语义接近度关联。例如,在 ACT 中,我们可视化了一些典型玩家的个人行为,以说明流失和付费之间的行为差异。

图 2 揭示了一些有趣的发现:(1) 玩家在决定流失之前,往往会急切地消耗资源和代币,如精炼装备(紫色)、锻造武器(青色)和升级技能(红色)。我们通过过滤常规行为展示了流失玩家中最频繁的五种行为:结算奖励、抽奖、预留经验转换、每日或主任务奖励和礼品兑换,得出了相同的结论。(2) 高付费玩家享受游戏带来的满足感,更喜欢竞争性玩法(橙色条纹部分)。因此,他们必须花费大量时间和金钱来提高竞争力。例如,他们愿意不惜一切代价追求无敌的武器(青色)。此外,公会活动和好友活动也是高付费玩家中最频繁的行为,表明社交需求对驱动玩家继续充值很重要。(3) 未付费或少量付费的留存玩家行为多样且随机,没有特定模式。

3.3 社交行为图数据

在网络游戏中,玩家的行为偏好通常来自两个方面:个人行为偏好和群体行为偏好。如上所述,个人行为偏好是由玩家行为模式的差异引起的。除此之外,玩家之间的社交行为也很重要,这使我们能够从另一个角度描述玩家。玩家行为偏好的潜在相似性驱使玩家建立关系并相互互动。

我们以 ACT 中的好友关系为例,说明社交行为的差异。流失玩家自然会聚集在一起形成许多小的本地群体,因为他们的游戏参与度受到周围玩家的影响。如果玩家周围的大多数朋友都流失了,该玩家也很可能很快流失。而如果玩家周围的大多数朋友都活跃,该玩家也很可能保持活跃。同样,具有不同付费水平的玩家也倾向于聚集并相互影响,通常形成大量的小群体。显然,玩家可能因为相似的购买偏好而成为朋友,他们也愿意购买朋友推荐的商品。

4 预备知识

在本节中,我们首先介绍理解所讨论问题所需的基本定义。然后,我们从两个方面展示支持使用多任务学习进行个性化 CLTV 预测的证据:(1) CLTV 定义,(2) 流失和付费之间的经验分析。

4.1 在线游戏中的个性化 CLTV

在在线游戏的背景下,CLTV 被定义为一个玩家在整个游戏生命周期内产生的预期货币收入。与许多其他领域一样,严格定义下的 CLTV 是根据特定群体计算的平均描述统计量。通常,CLTV 可以通过以下公式得出:

CLTV = ARPU ⋅ LT = ARPU ⋅ 1 CR \text{CLTV} = \text{ARPU} \cdot \text{LT} = \text{ARPU} \cdot \frac{1}{\text{CR}} CLTV=ARPULT=ARPUCR1

具体来说,一些关键概念如下:

  • 每用户平均收入(ARPU):预期从每个玩家获得的平均货币收入。
  • 生命周期(LT):预期每个玩家在游戏中的平均生命周期,通常可以估计为 1 CR \frac{1}{\text{CR}} CR1
  • 流失率(CR):在给定时期内离开游戏的玩家的平均百分比。

根据上述定义,CR 和 ARPU 通常根据特定群体粗略计算为一个固定的平均值。这就是为什么 CLTV 最初被认为是一个平均描述统计量,因为所有玩家共享相同的值。然而,当具体到个体时,传统的 CLTV 变得不可行:(1) 玩家之间的行为差异可能产生不同的影响,而基于群体的 CR 和 ARPU 无法体现个体差异。(2) 即使对于同一个玩家,流失和付费也会根据当前行为动态变化。基于这些原因,个性化 CLTV 通过个体建模变得更加普遍,因为它有助于个性化。需要注意的是,为了简化,我们在下文中使用 CLTV 来表示个性化 CLTV。

4.2 使用多任务学习进行个性化 CLTV 预测

尽管付出了巨大努力,目前的解决方案在个性化方面仍然不足,从而限制了预测性能。一方面,大多数以往的研究只尝试解决 CLTV 的一个任务,即流失或付费。这就是说,他们也仅从 CLTV 定义的两个因素中的一个独立考虑个性化。另一方面,流失和付费之间的关联没有得到足够的关注,其个性化尚未得到充分探索。为了解决上述限制,个性化 CLTV 应该来自两个方面:(1) 个性化流失和个性化付费,(2) 流失和付费之间的个性化关联。

首先,CLTV 定义要求我们全面考虑流失和付费,因为两者只是 CLTV 的一个方面,不能完全代表它。受公式 1 中传统 CLTV 的启发,个性化 CLTV 应从个体的流失和付费中计算,且更重要的是,两者都是个性化的。因此,个性化 CLTV 问题的关键是以动态方式预测更符合个体行为偏好的个性化流失和个性化付费。为此,我们可以将公式 1 中的 CR 和 ARPU 形式化为两个子任务:流失预测和付费预测,然后将它们结合起来得到个性化 CLTV,如下所示:

y ^ c l t v = y ^ p a y ⋅ 1 y ^ c h u r n \hat{y}_{cltv} = \hat{y}_{pay} \cdot \frac{1}{\hat{y}_{churn}} y^cltv=y^payy^churn1

其次,流失和付费之间的个性化关联促使我们同时考虑它们。

图4. 流失和付费之间的群体分析。总在线时间和总充值金额分别表示玩家的活跃度和付费水平。Y轴为了数据隐私保护进行了遮蔽。

图 4 中的群体分析显示,这种关联可以进一步表示为:

y p a y = 0 , 如果 y c h u r n = 1 , y_{pay} = 0, \text{如果} y_{churn} = 1, ypay=0,如果ychurn=1,

COR ( y c h u r n , y p a y ) < 0 , 如果 y c h u r n ≠ 1 \text{COR}(y_{churn}, y_{pay}) < 0, \text{如果} y_{churn} \neq 1 COR(ychurn,ypay)<0,如果ychurn=1

总体而言,流失和付费之间存在强烈的负相关,即 COR ( y c h u r n , y p a y ) < 0 \text{COR}(y_{churn}, y_{pay}) < 0 COR(ychurn,ypay)<0,更重要的是,这种相关性的程度因玩家而异。与不付费的玩家相比,付费玩家更集中在高活跃度,尤其是那些付费更多的玩家。同样,活跃玩家似乎更有可能付费,并且这种趋势随着活跃度的增加而变得更加显著。特别是,由于我们的标签定义,流失和付费是互斥的,如流失玩家和付费玩家的交集为空所示。换句话说,流失玩家不会付费,即 y c h u r n = 1 ⇒ y p a y = 0 y_{churn} = 1 \Rightarrow y_{pay} = 0 ychurn=1ypay=0

此外,我们还进一步研究了流失和付费之间的双向 Granger 因果关系。Granger 因果关系检验是一种统计假设检验,用于确定一个时间序列是否对另一个时间序列的预测有用。具体来说,在时间序列的情况下,如果对变量 X 的滞后值(以及包含变量 Y 的滞后值)的 T 检验和 F 检验显示,这些变量 X 值对变量 Y 的未来值提供了统计显著的信息,则称变量 X Granger 导致变量 Y。为此,我们分别收集了 ACT 和 CCG 数据集中所有玩家过去 3 个月的每日在线时间和每日充值金额的数据。对于每个玩家,我们可以将其每日在线时间和每日充值金额视为两个时间序列,并对这两个变量进行 7 滞后 Granger 因果关系检验。注意,我们将滞后设置为 7,以考虑游戏运营周期和玩家游戏习惯导致的周期性。最后,我们能够分别获得 ACT 和 CCG 数据集中所有玩家的流失和付费的双向 Granger 因果关系分布。

图5. 流失和付费之间的双向Granger因果关系测试包括四个T检验和F检验,即基于回归平方和(SSR)的F检验、基于回归平方和(SSR)的卡方检验、似然比检验和参数F检验。所有四个检验的原假设是时间序列𝑋不Granger导致𝑌。如果P值低于所需的检验水平,我们将拒绝原假设。绿色表示流失不Granger导致付费的原假设,橙色表示付费不Granger导致流失的原假设。

如图 5 所示,我们可以得出两个结论:(1) 流失和付费之间确实整体上存在强相关性。(2) 在此基础上,双向 Granger 因果关系分布的数值范围差异也反映了相关性对于个体而言是个性化的。这与图 4 中的群体分析结果一致。然而,基于 P 值的四次检验结果显示,两种潜在因果关系,即流失对付费的因果关系和付费对流失的因果关系都不显著,P 值基本大于 0.1。根据我们的行业知识,这种不显著性可能是由于当前大规模在线游戏中各种元素和活动引起的许多未解决因素所致。尽管如此,我们也可以观察到流失对付费的因果关系略显可能,P 值分布在较低部分。沿着这条线,流失对付费的相关影响可以合理地假设大于付费对流失的相关影响。

综上所述,流失和付费之间的相关性不仅整体上显著,而且对个体而言是个性化的。从流失和付费之间的双向 Granger 因果关系检验结果来看,我们可以合理地假设流失对付费的相关影响大于付费对流失的相关影响。考虑到这一点,我们可以进一步将流失和付费视为两个连续的子任务,即流失是付费的前提。受上述直觉和观察的启发,从多任务学习的角度重新审视个性化 CLTV 是自然且合理的。通过在多个相关任务之间共享表示,多任务学习可以利用更多的互补信息,使模型在所有子任务上更好地泛化。在这项工作中,我们引入了一种顺序门控多任务学习方式,以增强流失和付费之间的个性化关联,从而提高两个子任务的性能。

5 方法论

在本节中,我们详细介绍了我们提出的方法 perCLTV 的设计,如图 6 所示。首先,我们描述了我们的研究问题的概念性陈述。然后,我们详细介绍了 perCLTV 各个模块的架构。最后,我们简要介绍了我们部署在线的 CLTV 系统。

5.1 问题陈述

给定玩家的两种不同的异质行为数据:(1) 个体行为序列数据 S = { s v ∣ v ∈ V } S = \{s_v | v \in V\} S={svvV},以及(2) 社交行为图数据 G = ( V , E ) G = (V, E) G=(V,E),其中节点 v i ∈ V v_i \in V viV 和边 ( v i , v j ) ∈ E (v_i, v_j) \in E (vi,vj)E,V 表示玩家集合,E 表示玩家之间的关系集合,我们的目标是预测玩家是否会流失(即 y ^ c h u r n \hat{y}_{churn} y^churn)以及在给定时期内玩家会付费多少(即 y ^ p a y \hat{y}_{pay} y^pay)。在实践中,我们将流失预测定义为一个二分类问题,将付费预测定义为一个回归问题。

5.2 个体行为模块

个体行为指的是玩家在游戏中一系列随时间变化的动作,例如登录和退出、购买和战斗。基于个体行为,可以通过特征工程构建复杂的手工特征来预测游戏中的流失和购买。然而,这些方法并没有强调序列数据的时间信息,并且需要大量的人力投入。本质上,玩家的潜在行为偏好是一系列随时间变化的隐性反馈。它可以通过原始的序列行为数据直接反映出来,因此不需要任何外部特征工程。此外,大多数基于个体行为序列数据的方法往往缺乏辨别性,忽略了行为语义的接近性关联。这一点很重要,因为不同的行为会导致玩家做出不同的决策,因此需要模型学习不同的行为表示。

直观地说,玩家个体行为与流失或付费之间存在不同程度的关联,例如,战斗与流失更相关,而购买和充值与付费更相关。

为了进一步说明,图 7 展示了流失玩家和付费玩家的行为频率差异。流失行为在流失玩家中占主导地位,但随着行为频率的增加,其重要性减弱。对于付费玩家,付费行为也表现出非常重要的作用,远超过流失玩家。行为之间的语义接近性关联促使我们区分对待行为,以强调重要性差异。

为此,我们引入了辨别行为序列(DBS)和层次行为注意网络(HBAN),以在个体行为序列数据中实现辨别行为学习(DBL),如图 8 所示。

5.2.1 辨别行为序列

我们采用辨别行为序列(DBS)从显性和隐性角度分别挑选出与流失和付费相关的行为。

非参数硬搜索

在实践中,我们采用通用的非参数硬搜索来选择和聚合 DBS。基于行业知识,原始游戏日志被预先分类为一系列不同类别以形成规则库。

表 3 展示了一些与流失和付费相关的重要日志类别。注意,同一日志可以同时划分为不同类别。根据规则库中的匹配关系,可以确定行为是流失行为还是付费行为,从而构建 DBS。硬搜索方法直观但非常适合实际应用。一方面,大多数游戏公司在游戏开发和运营过程中积累了丰富的知识和经验,使得区分哪些游戏行为与流失或付费相关变得容易。另一方面,同一家游戏公司的游戏产品在大多数情况下遵循相同的日志格式和类型。因此,构建一个通用的可重用规则库以跨游戏实现自动 DBS 构建是可行且普遍的。因此,硬搜索方法并不意味着特征工程或游戏特定,而是通用的。

辨别行为序列构建

在上述硬搜索方法的帮助下,从原始行为集合 B 中分离出两个与流失和付费相关的独立行为集合,即流失行为集合 C 和付费行为集合 P。如图 8(a)所示,我们设计了两个显性和一个隐性行为序列,以辨别性地学习流失和付费的显性和隐性表示。给定行为序列 s ∈ S s \in S sS,其中 s = { ( t 1 , e 1 ) , ( t 2 , e 2 ) , ⋯   , ( t i , e i ) } s = \{(t_1, e_1), (t_2, e_2), \cdots, (t_i, e_i)\} s={(t1,e1),(t2,e2),,(ti,ei)} 表示事件流,即在时间 t t t 发生的特定类型事件 e e e,我们从 s s s 构建 DBS 如下:

s c = { e ∣ ∀ e ∈ s , e ∈ C } s_c = \{e | \forall e \in s, e \in C\} sc={e∣∀es,eC}
s p = { e ∣ ∀ e ∈ s , e ∈ P } s_p = \{e | \forall e \in s, e \in P\} sp={e∣∀es,eP}
s u = { e ∣ ∀ e ∈ s , e ∈ B } s_u = \{e | \forall e \in s, e \in B\} su={e∣∀es,eB}

这里 s c s_c sc s p s_p sp s u s_u su 分别表示从原始行为序列 s s s 生成的流失显性行为序列、付费显性行为序列和通用隐性行为序列。

5.2.2 层次行为注意网络

如上所述,原始行为序列 s s s 被划分为三个 DBS,即 s = ( s c , s p , s u ) s = (s_c, s_p, s_u) s=(sc,sp,su)。在此基础上,我们开发了一种基于层次注意的深度神经架构,称为层次行为注意网络(HBAN),以从流失和付费的显性和隐性表示中联合学习个体行为偏好。如图 8(b)所示,HBAN 实现了信息的层次注意交互,可以捕捉 DBS 之间和 DBS 内部行为语义接近性关联的差异。第一层 HBAN 捕捉同一 DBS 内不同行为的潜在信息,并在将其压缩为单一隐藏表示时区分重要性。第二层 HBAN 通过非线性加权求和方法融合不同 DBS 的隐藏表示,并学习不同 DBS 之间的高级信息交互。具体来说,在第一层 HBAN 中,我们通过长短期记忆网络(LSTM)对每个序列进行编码,并结合序列到一(seq2one)注意机制,在同一 DBS 的编码过程中关注重要的行为参与度,可以表示为一个函数 F N ( X ) FN(X) FN(X),如下所示:

F N ( X ) = A t t e n t i o n ( L S T M ( X ) ) FN(X) = Attention(LSTM(X)) FN(X)=Attention(LSTM(X))

受注意力机制序列到序列(seq2seq)模型在神经机器翻译中成功的启发,我们描述了 seq2one 注意机制的过程,以为同一序列中的行为分配不同的权重,如下所示:

α s = exp ⁡ ( h ⊤ W h s ) ∑ s ′ exp ⁡ ( h ⊤ W h s ′ ) \alpha_s = \frac{\exp(h^\top W h_s)}{\sum_{s'} \exp(h^\top W h_{s'})} αs=sexp(hWhs)exp(hWhs)

这里 α \alpha α 表示注意力权重,通过将目标隐藏状态 h h h 与每个源隐藏状态 h s h_s hs 进行比较得出。注意,目标隐藏状态 h h h 指的是最终时间步的隐藏状态,这与传统的基于注意力的 seq2seq 模型不同。上下文向量 c c c 计算为所有源隐藏状态的加权平均值,注意向量 a a a 根据上下文向量 c c c 和目标隐藏状态 h h h 计算,其中 ⊕ \oplus 表示通过连接聚合输入,如下所示:

a = Tanh ( W c [ c ⊕ h ] ) a = \text{Tanh}(W_c [c \oplus h]) a=Tanh(Wc[ch])
c = ∑ s α s h s c = \sum_s \alpha_s h_s c=sαshs

在第二层 HBAN 中,我们执行一个网络中的网络(NIN)变体,包括一个具有 1×1 卷积核的卷积层和一个全局平均池化层,以加权非线性聚合所有隐藏表示的堆叠,如下所示:

X = Stack ( F N ( s c ) , F N ( s p ) , F N ( s u ) ) X = \text{Stack}(FN(s_c), FN(s_p), FN(s_u)) X=Stack(FN(sc),FN(sp),FN(su))
X = GlobalPoolavg ( Conv1×1 ( X ) ) X = \text{GlobalPoolavg}(\text{Conv1×1}(X)) X=GlobalPoolavg(Conv1×1(X))

这里 Stack ( ⋅ ) \text{Stack}(·) Stack() 表示沿新轴连接一系列数组,X 是个体行为模块的最终嵌入向量。此外,处理长序列是实际中值得探索的一个常见问题。在大多数情况下,由于游戏玩法的多样性,玩家的行为序列可能非常长。更重要的是,玩家的行为序列也是周期性的。由于玩家在游戏中的日常活动相似,因此直接将玩家的所有行为连接作为输入是不可行的。在实践中,我们将原始全序列 s ∈ S s \in S sS 预处理为多个片段,即 s = { s ( 1 ) , s ( 2 ) , ⋅ ⋅ ⋅ , s ( ∣ D ∣ ) } s = \{s^{(1)}, s^{(2)}, · · ·, s^{(|D|)}\} s={s(1),s(2),⋅⋅⋅,s(D)}。考虑到大多数普通玩家的日常作息,我们通常将片段按天从早上 8 点到第二天早上 8 点分割。然后,我们通过序列模型对每个片段序列进行编码,并堆叠输出以形成新的序列输入 S S S,如下所示:

S = Stack ( LSTM ( S ( d ) ) ) , 对于 d ∈ D S = \text{Stack}(\text{LSTM}(S^{(d)})), \text{对于} d \in D S=Stack(LSTM(S(d))),对于dD

5.3 社交行为模块

为了丰富玩家行为的多样性,我们还考虑了玩家之间的社交行为。游戏中玩家之间的互动可以产生社交效应,并传播影响周围的玩家,尤其是一些长期稳定的关系,如朋友、情侣和组织。同样,具有相似偏好的玩家往往会聚集在一起并相互影响。例如,顶级玩家总是喜欢一起承担更具挑战性的任务。而且玩家更愿意与朋友和熟人组队或购买他们推荐的商品。丰富的社交行为可以从社交群体的角度描绘玩家,这已被证明在在线游戏中具有竞争力的表现 [45, 46, 64]。因此,我们可以构建一个社交网络,从社交行为图数据中挖掘群体行为偏好。

得益于图神经网络(GNNs)的发展,深度学习最近能够充分释放图数据的力量 [6, 10, 62],例如图卷积网络(GCN)[29] 和图注意网络(GAT)[50]。与个体行为相似,社交行为的重要性也各不相同 [45, 46, 64]。关系更密切的玩家往往对决策有更大的影响。如图 6 左下部分所示,我们利用 GAT 充分结合个体行为序列数据和社交行为图数据之间的互补异质信息,共同学习玩家的行为偏好。与允许每个节点关注每个其他节点的最常规公式不同,GAT 通过执行遮蔽注意力将图结构引入机制。换句话说,GAT 仅计算节点 v j ∈ N v i v_j \in N_{v_i} vjNvi 的注意力权重 α v i , v j \alpha_{v_i,v_j} αvi,vj,其中 N v i N_{v_i} Nvi 是图中节点 v i v_i vi 的某个邻域,然后使用 softmax 函数在所有 v j v_j vj 的选择上进行归一化:

α v i , v j = exp ⁡ ( LeakyReLU ( a ⊤ [ W h v i ⊕ W h v j ] ) ) ∑ v k ∈ N v i exp ⁡ ( LeakyReLU ( a ⊤ [ W h v i ⊕ W h v k ] ) ) \alpha_{v_i,v_j} = \frac{\exp(\text{LeakyReLU}(a^\top [W h_{v_i} \oplus W h_{v_j}]))}{\sum_{v_k \in N_{v_i}} \exp(\text{LeakyReLU}(a^\top [W h_{v_i} \oplus W h_{v_k}]))} αvi,vj=vkNviexp(LeakyReLU(a[WhviWhvk]))exp(LeakyReLU(a[WhviWhvj]))

这里 a a a 是一个可训练的注意力向量, W W W 是一个可训练的权重矩阵,将输入特征映射到隐藏空间, h v h_v hv 表示节点 v v v 的隐藏表示。在此基础上,我们采用多头注意力机制通过加权求和聚合邻居表示,并为 v i v_i vi 获得新的隐藏表示 h v i ′ h'_{v_i} hvi,如下所示:

h v i ′ = σ ( 1 K ∑ k = 1 K ∑ v j ∈ N v i α v i , v j k W k h v j ) h'_{v_i} = \sigma \left( \frac{1}{K} \sum_{k=1}^{K} \sum_{v_j \in N_{v_i}} \alpha^k_{v_i,v_j} W_k h_{v_j} \right) hvi=σ K1k=1KvjNviαvi,vjkWkhvj

这里 σ \sigma σ 表示非线性函数, K K K 表示头的数量。总而言之,给定个体行为模块的嵌入向量 X X X 和图的邻接矩阵 A A A,我们将它们一起输入到 GATs 中,并获得最终的隐藏表示 O O O。为了简便起见,社交行为模块的整个过程可以表示如下:

O = G A T s ( X , A ) O = GATs(X, A) O=GATs(X,A)

5.4 序列门控多任务学习

如上所述,当前的解决方案在个性化方面不足,导致性能有限。在此基础上,多任务学习的多条证据表明,它在个性化和 CLTV 预测性能方面是一个有前途的改进。首先,从 CLTV 的原始定义(公式 1)开始,我们推导出个性化 CLTV 应从个体的流失和付费中计算。因此,自然地将公式 1 中的 CR 和 ARPU 形式化为两个子任务:流失预测和付费预测,然后在多任务学习的方式下将它们结合起来以获得个性化的 CLTV,即公式 2。其次,图 4 中的群体分析显示了流失和付费之间的个性化相关性,这也促使我们同时考虑它们。第三,图 5 中的流失和付费之间的双向格兰杰因果关系测试使我们可以合理地假设流失对付费的相关影响大于付费对流失的相关影响。最后,我们通过在第 6.3 节中对不同多任务学习策略的三种变体进行消融实验验证了我们的假设。

为此,我们将 CLTV 预测作为一个多任务学习问题,即流失预测和付费预测。具体来说,我们共享两个任务的相同特征输入和表示,以共同捕捉流失和付费的丰富互补信息。此外,我们观察到在我们的研究问题中,流失和付费这两个子任务是顺序的,而传统的并行多任务学习可能会限制性能。考虑到这一点,我们在传统多任务学习方式中引入了门控机制,称为序列门控多任务学习(SGMTL),以进一步增强个性化相关性并提高两个子任务的性能。如图 6 右侧所示,我们采用了一个层次序列预测架构,针对流失预测和付费预测这两个特定任务。首先,给定最终的隐藏表示 o ∈ O o \in O oO,我们采用一个全连接网络(FC)来学习流失表示 h c h u r n h_{churn} hchurn 并获得目标玩家 v ∈ V v \in V vV 的流失预测 y ^ c h u r n \hat{y}_{churn} y^churn,如下所示:

h c h u r n = ReLU ( W c h u r n ⋅ o + b c h u r n ) h_{churn} = \text{ReLU}(W_{churn} \cdot o + b_{churn}) hchurn=ReLU(Wchurno+bchurn)
y ^ c h u r n = Sigmoid ( W c h u r n ′ ⋅ h c h u r n + b c h u r n ′ ) \hat{y}_{churn} = \text{Sigmoid}(W'_{churn} \cdot h_{churn} + b'_{churn}) y^churn=Sigmoid(Wchurnhchurn+bchurn)

从第一级预测中,我们获得了流失任务的结果,即玩家 v v v 是否会流失。然后,我们执行一个 GM 来利用流失预测的结果来增强付费预测的性能。具体来说,我们从最终的隐藏表示 o ∈ O o \in O oO 中获得门控 F F F 和付费表示 h p a y h_{pay} hpay,其中 F F F 用于加权流失表示 h c h u r n h_{churn} hchurn。然后我们将付费表示 h p a y h_{pay} hpay 与加权后的流失表示 h c h u r n h_{churn} hchurn 连接起来,以获得目标玩家 v ∈ V v \in V vV 的付费预测 y ^ p a y \hat{y}_{pay} y^pay

F = Sigmoid ( W F ⋅ o + b F ) F = \text{Sigmoid}(W_F \cdot o + b_F) F=Sigmoid(WFo+bF)
h p a y = ReLU ( W p a y ⋅ o + b p a y ) h_{pay} = \text{ReLU}(W_{pay} \cdot o + b_{pay}) hpay=ReLU(Wpayo+bpay)
y ^ p a y = W p a y ′ ⋅ ( h p a y ⊕ ( h c h u r n ⊗ F ) ) + b p a y ′ \hat{y}_{pay} = W'_{pay} \cdot (h_{pay} \oplus (h_{churn} \otimes F)) + b'_{pay} y^pay=Wpay(hpay(hchurnF))+bpay

这里 ⊗ \otimes 代表 Hadamard 积。与 y ^ c h u r n \hat{y}_{churn} y^churn 相同, y ^ p a y \hat{y}_{pay} y^pay 是付费任务的结果,即玩家 v v v 会付费多少。最后,我们考虑两个不同的损失函数用于两个预测任务,即流失任务(二分类任务)的交叉熵损失和付费任务(回归任务)的均方误差损失。具体来说, y c y_c yc y ^ c \hat{y}_c y^c 分别对应流失预测任务的标签和预测, y p y_p yp y ^ p \hat{y}_p y^p 分别对应付费预测任务的标签和预测,我们计算一个联合评估所有任务性能的损失函数,如下所示:

L = ∑ v ∈ V ( − β 1 y c h u r n log ⁡ ( y ^ c h u r n ) − β 2 ( y p a y − y ^ p a y ) 2 ) L = \sum_{v \in V} (-\beta_1 y_{churn} \log(\hat{y}_{churn}) - \beta_2 (y_{pay} - \hat{y}_{pay})^2) L=vV(β1ychurnlog(y^churn)β2(ypayy^pay)2)

这里损失 L L L 是针对所有训练数据的, β 1 \beta_1 β1 β 2 \beta_2 β2 是用于平衡不同约束影响的超参数。为了在训练过程中保持两个损失在同一数量级,我们在付费标签数据中使用了对数变换。

5.5 CLTV 系统

我们的工作已经实现并部署在生产环境中,长期服务于网易游戏发布的许多在线游戏的主要流量。如图 9 所示,我们的 CLTV 系统由三个模块组成:数据模块、模型模块和服务模块。

数据模块。数据模块负责管理游戏数据,包括个体行为序列数据和社交行为图数据。具体来说,由游戏客户端生成的原始游戏日志每天汇总并离线流入我们的 CLTV 系统。然后,数据被预处理并以标准格式存储在数据仓库(DW)中。为了提高系统的稳定性和可扩展性,所有数据存储和处理操作都建立在分布式系统上,例如 Apache Hadoop 和 Apache Hive。

模型模块。在模型服务的调度下,数据通过两个工作流分别流入模型训练和模型推理。模型训练定期训练和更新模型,而模型推理每天预测并存储结果。为了避免浪费计算资源,我们只对过去一个月内活跃的玩家进行离线推理,并将预测结果存储在高性能数据库中以便快速检索。一般来说,一款在线游戏会持续很长时间(几年甚至几十年),因此会积累大量的玩家。然而,其中相当一部分玩家已经不活跃甚至流失。因此,直接预测所有玩家的 CLTV 既不实际也没有必要。一种简单但有效的策略是预先选择一部分有价值的玩家作为 CLTV 预测的候选者。大量的真实游戏数据表明,过去一个月内活跃的玩家值得进行 CLTV 预测,并对后续干预措施有积极回应(根据统计,5.32%的玩家满足这一要求)。此外,这一策略对新玩家同样适用和公平。换句话说,每个在一个月内注册的新玩家都会被选为 CLTV 预测的候选者。

服务模块。游戏客户端通过服务模块与系统交互,以请求和接收所需的数据。根据实际应用场景,游戏客户端可以自定义请求玩家的流失、付费或 CLTV 预测值,以实现复杂的游戏玩法。为了支持海量玩家的实时 CLTV 查询,我们建立了一系列完整的设施,如分布式 Web 服务架构、列存储数据库和分层索引。此外,我们还建立了一个玩家画像的可视化平台,可以帮助我们更好地管理和分析玩家的生命周期数据。可视化平台定期生成的服务报告还可以监控 CLTV 系统的运营和维护,帮助我们迭代系统。

备注。尽管我们提出的方法是在在线游戏的背景下,但其思想和方法在许多领域都具有兴趣和应用。一方面,CLTV 是许多领域广泛使用的概念,因此传统 CLTV 面临的挑战和经验是普遍的。考虑到这一点,个性化 CLTV 与多任务学习在其他 CLTV 问题中广泛应用,以解决个性化的缺乏,特别是在服务个体的领域,例如电子商务和营销。因为由于个体之间的差异,客户流失和付费之间的差异被放大,而这正是基于群体的平均描述方法所忽略的。另一方面,辨别行为学习考虑了行为序列数据中的行为语义接近性关联,这对其他用户行为建模方法及其应用具有参考意义。例如,流失和付费是大多数领域用户行为建模关注的问题。辨别行为学习可以在流失预测和付费预测中取得显著改进。此外,CLTV 的可解释性仍然是一个具有挑战性的问题。在大多数实际应用中,抽象的 CLTV 难以进行有益的分析,因为不清楚它是由于流失还是付费。因此,通过流失预测和付费预测的独立结果来解释 CLTV 在业务中至关重要。换句话说,公司必须了解是什么驱动客户价值,以更好地提高 CLTV。

6 实验

在本节中,我们在三个真实数据集上进行实验。首先,我们描述实验设置。然后,我们从两个方面验证perCLTV的有效性:(1)在流失和付费方面的CLTV评估性能比较,以及(2)消融研究的性能比较。最后,我们展示并分析参数分析和案例研究的结果。

6.1 实验设置

我们在相同的实验设置中评估所有方法的性能。对于每个数据集,我们将80%的数据集分为训练集,其余20%分为测试集。所有实验均通过5折交叉验证进行,并报告平均结果。

6.1.1 基线方法

由于当前大多数解决方案在数据输入和问题定义上的差异,我们选择了几组典型的最先进(SOTA)基线:

经典CLTV模型。我们选择了五个经典的CLTV基线:传统CLTV(traCLTV),描述见公式1 [11, 38],Pareto/NBD [41],BG/NBD [14],和RFM [13]。traCLTV是基于群体平均的最原始的CLTV方法,而其他三种是基于概率模型的最流行的CLTV预测方法。此外,我们还考虑了Cox比例风险模型 [27],这是流失预测中常用的生存分析方法,作为我们的CLTV基线。

基于特征的模型。我们首先从几个方面提取一些统计特征:基本属性、社会关系、行为习惯和消费偏好 [64]。在此基础上,我们选择了一些代表性的方法进行比较:随机森林(RF) [52],XGBoost [9],和多层感知器(MLP) [44]。此外,我们还选择了频率 [53]作为基线,提取行为事件的频率作为特征。

序列模型。序列模型是另一组典型的方法,用于捕捉序列数据的潜在信息。我们使用了几个著名的序列模型作为基线,即LSTM,卷积神经网络(CNN) [8],时间卷积网络(TCN) [3],Transformer [49],和卷积Transformer(ConvTrans) [33]。

基于GNN的模型。为了验证社交行为图数据的有效性,我们将perCLTV与两种经典的GNN方法进行比较,即GCN和GAT,其中手工特征与MLP嵌入(-feature)和行为序列与LSTM嵌入(-behavior)分别用作节点特征。此外,为了更公平的比较,我们还使用了GCN和GAT的变体,这些变体将特征和行为嵌入的连接值作为节点特征,即GCN-multimodal和GAT-multimodal。

变体。我们首先将perCLTV与我们之前的工作MSDMT [64]进行比较。然后,我们通过修改一些关键组件来比较perCLTV及其衍生物,看看它们的表现。我们主要关注以下几个关键组件:(1)个体行为模块中的不同DBS及其组合的DBL,分别表示为DBL-u,DBL-c,DBL-p,DBL-cu,DBL-pu和DBL-cpu,(2)社交行为模块中的GAT,和(3)多任务学习模块中的SGMTL不同策略,其中SGMTL-naive表示没有顺序门控机制的简单多任务学习策略,SGMTL-churn表示先流失后付费的顺序门控多任务学习策略,SGMTL-pay表示先付费后流失的顺序门控多任务学习策略。

需要注意的是,由于缺乏用户和商品信息,我们不比较在淘宝数据集上需要手工特征或商品价格的方法。

6.1.2 评估指标

我们将曲线下面积(AUC)和均方根误差(RMSE)作为流失预测任务和付费预测任务的评估指标。请注意,由于缺乏价格信息,淘宝数据集中的流失预测和付费预测都定义为二分类任务。因此,对于淘宝数据集上的两个任务,我们使用AUC作为评估指标。

6.1.3 参数配置

我们将行为序列的最大长度设置为64,行为嵌入的大小设置为32。在个体行为模块中,我们采用一个具有64个单元和64个注意权重长度的经典LSTM层。在社交行为模块中,我们使用两个具有64个隐藏单元的GAT层,丢弃率设置为0.5。我们使用Adam优化器,学习率设置为 l r = 0.0001 lr = 0.0001 lr=0.0001进行优化。所有超参数都在验证集上仔细调整,并在第6.4节的参数敏感性分析中介绍参数选择的依据。

6.2 性能比较

表4显示了流失预测和付费预测的性能比较结果。首先,传统的CLTV模型在我们的数据集上表现最差。与其他场景相比,游戏场景更加复杂,影响玩家付费的因素也更加多样化。RFM元素在 [13] 中并不能完全代表在线游戏中玩家的行为模式。毕竟,大多数玩家玩游戏的目的是体验游戏玩法,而不仅仅是消费(这与电子商务和营销领域有很大不同)。此外,这些基于概率的方法容易受到极值的影响,例如少数超高付费玩家,导致标准差波动很大。然后,从数据源的角度来看,玩家行为数据,包括个体行为序列数据和社交行为图数据,在两个任务上都取得了竞争性的表现。在长期的实际游戏业务中,我们积累了深厚的专家经验和行业知识,这指导我们构建了一个包含许多非常有效和高效的手工特征的特征库。基于特征的方法的性能强烈依赖于所使用的特征,这就是为什么它们在两个任务上已经表现良好的原因。

然而,设计手工特征非常昂贵且耗时,并且通常针对不同的游戏逐案处理,难以在实践中推广。这对于拥有多个产品的大型游戏公司来说尤其不可接受。为此,这项工作的一个重要出发点是仅使用原始行为数据而不进行特征工程来获得竞争性的预测性能。从实验结果来看,确实如此。与基于手工特征的方法相比,仅基于玩家行为数据的方法表现几乎相同(在某些情况下甚至更好)。特别是一些最新的SOTA序列模型,例如Transformer和ConvTrans,已经能够捕捉非常有效的时间和上下文信息,并通过改进注意力机制实现了令人印象深刻的预测结果。相比之下,我们提出的perCLTV大大优于SOTA序列模型,这进一步验证了所提出方法的有效性。通过融合社交行为中的图结构,基于手工特征和个体行为的模型的性能可以进一步提高。基于GNN的模型可以从群体角度丰富和增强玩家表示,这是基于特征的模型和序列模型无法实现的。我们在GCN和GAT上进行了不同节点特征的实验,例如特征、行为和多模态嵌入。实验结果证明了社交行为图数据的有效性,这与我们的预期一致。相比之下,GAT在强调不同邻居节点的重要性方面表现更好。总之,实验结果表明,LSTM和GAT在序列数据和图数据上的整体表现更好。此外,实验结果还验证了我们方法perCLTV中不同模块的合理性。

最后,得益于两大模型改进,perCLTV在流失任务和付费任务上分别比我们之前的工作MSDMT提高了1.41%,0.35%,1.82%和3.08%,12.39%,4.95%。一方面,得益于DBL,perCLTV可以区分性地捕捉丰富的显性和隐性信息,并从流失和付费行为中联合学习个体行为偏好,比其他无差别的序列模型表现更好。另一方面,perCLTV通过SGMTL增强了流失和付费之间的个性化关联性,从而提高了所有子任务的泛化性能。与单任务方法相比,perCLTV在所有数据集上都取得了非常显著的改进。此外,在MTL的帮助下,perCLTV本身也得到了极大的改进。具体来说,perCLTV在流失任务上相对于perCLTV(无MTL)分别提高了1.77%,1.25%,-0.15%,在付费任务上分别提高了-0.72%,10.0%,0.61%。

6.3 消融研究

为了进一步研究我们方法中提出的不同关键组件的效果,我们在表5中对perCLTV进行了消融研究。实验结果表明,显性和隐性序列在不同任务中确实存在差异,并且可以互补。首先,与通用隐性行为序列DBL-u相比,流失显性行为序列DBL-c在流失任务中分别提高了1.37%、0.86%和0.59%,而付费显性行为序列DBL-p在付费任务中分别提高了5.55%、16.36%和4.51%。这表明序列与任务之间的相关性确实对性能有显著影响。然后,显性和隐性序列可以互补,以提高单一显性或隐性序列的性能。通过融合通用隐性序列,两个显性序列DBL-cu和DBL-pu可以捕捉到更多与任务相关的互补信息,并在所有子任务上取得显著改进。最后,当融合所有DBS时,性能最佳。融合的序列越多,包含的信息越多样,模型性能提升越大。

总之,关键组件对我们提出的方法perCLTV做出了显著贡献。一方面,实验结果证明了DBL在个体行为序列数据中的重要性,它可以区分性地捕捉丰富的显性和隐性信息,并从不同的角度联合学习个体行为偏好。在DBL的帮助下,perCLTV在流失任务和付费任务上的AUC分别提高了1.61、1.94、1.75,RMSE分别降低了11.82、11.15(淘宝数据集AUC提高了5.52),相比于没有DBL的模型。另一方面,通过结合玩家之间的社交行为图数据,GAT在两个任务中都产生了有益的效果,它捕捉了群体行为偏好,以改进变体模型。此外,多任务学习可以捕捉流失和付费之间的相关性,进一步提高多个子任务的泛化性能。与简单的多任务学习策略(SGMTL-naive)相比,我们提出的顺序门控多任务学习策略可以更好地增强流失和付费之间的相关性个性化,并取得显著的性能提升。在此基础上,我们还研究了顺序门控多任务学习策略中流失和付费两个子任务的两种顺序关系,即先流失后付费(SGMTL-churn)和先付费后流失(SGMTL-pay)。实验结果表明,SGMTL-churn策略优于SGMTL-pay策略,这为我们在第4.2节中的假设(即流失对付费的相关影响大于付费对流失的影响)提供了直接证据,也证明了我们提出的方法perCLTV中顺序门控多任务学习(SGMTL)设计的有效性和合理性。

6.4 参数分析

如图10所示,我们检查了四个重要超参数的敏感性:行为序列的最大长度 m m m,行为嵌入的大小 n n n,LSTM的隐藏单元 l l l,以及GAT的隐藏单元 k k k。从结果中我们看到,行为序列的最大长度 m m m应足够大以鼓励模型捕捉行为序列的足够信息,而当 m m m过大时,改进变得有限或稳定。另一个需要调整的参数是行为嵌入大小 n n n

从图10b可以看出,在大多数情况下,随着其增加,AUC和RMSE有所改善。然而,由于行为类型的限制,如果值过大,性能反而会下降。至于LSTM的隐藏单元 l l l,当 l l l为64时,结果最佳,这正好适合我们的数据集大小。同样,适当的GAT隐藏单元 k k k对于更好的性能也是必要的。总之,超参数应根据原始数据源的物理特性仔细选择。此外,我们提出的方法的参数敏感性可以为类似数据提供参考。

6.5 案例研究

我们进行了几项案例研究,以进一步探索perCLTV的个性化。表6展示了一些典型玩家的真实值和预测结果。我们选择了一些代表性统计数据,以展示玩家流失和付费的实际表现:登录次数、平均在线时间(OT)、付费次数和平均付费金额。流失和付费的差异导致了CLTV的个性化。更重要的是,流失和付费之间的相关性因玩家而异。例如,玩家A由于高在线时间和付费而具有高CLTV,而玩家D的低在线时间和付费导致低CLTV。请注意,尽管B和C的CLTV相似,但两者的原因完全不同(这种发现无法从其他现有的CLTV方法中得出)。尽管单次付费较小,但玩家B由于较高且稳定的在线时间仍然具有中等CLTV。尽管玩家C支付了大量费用,但高流失风险导致中等CLTV。总之,个性化CLTV由流失和付费共同决定,即使相同水平的CLTV也可能由于不同的原因。

7 应用

随着精准营销的日益普及,CLTV已成为游戏公司做出营销决策的重要参考。精准营销通过分析个体的具体需求、兴趣和行为模式,强调个性化操作。目前的CLTV解决方案只能针对某一群体计算,或者只能在流失和付费方面获得一个抽象的值估计,难以进行有成效的分析。我们最新的努力是通过对流失和付费的独立预测来改进它,这为实际应用提供了可解释和解释性的见解。因为除了获得CLTV,游戏公司还关心为什么玩家的CLTV是这样的,更重要的是,这是否是由于流失或付费。

如图11所示,游戏公司可以进一步划分玩家群体并进行差异化操作。流失低且付费高的玩家是游戏公司的核心群体和关键投资,而流失高且付费低的玩家则是外围群体,应选择性投资。至于其他玩家,游戏公司应根据具体情况决定是侧重流失还是付费。为了进一步说明,我们通过两个应用案例展示了如何在实际游戏场景中使用个性化CLTV进行精准营销。在线A/B测试显示,在perCLTV的帮助下,这两个应用都取得了显著的改进。

7.1 弹窗推荐

弹窗推荐是一种新颖的推荐方式,它放宽了固定推荐展示的限制,可以随时曝光。因此,在适当的时间为每个玩家个性化的弹窗推荐可以帮助他们更快、更容易地找到自己喜欢的产品,同时增加收入。与传统推荐场景相比,弹窗推荐的一个重要问题是选择触发哪些玩家。毕竟,在游戏时间出现的弹窗并不总是令人愉快的体验。无论如何,选择CLTV高的玩家,尤其是那些也有高购买意愿的玩家,是明智的。为此,我们在《蝶舞剑》中部署了基于perCLTV的弹窗推荐。我们旨在选择具有高付费意图的有价值玩家作为候选人,而不是所有人,并结合个性化推荐结果(来自我们的推荐系统,这里不再详细讨论)更有效地触发弹窗推荐,从而增加游戏收入。

如图12(a)所示,我们在生产环境中进行了在线A/B测试,具体如下:

  • 因素。我们设置了不同的过滤策略作为我们的因素,以研究弹窗推荐的主要效果。
  • 变体。我们设计了四个流量相等的变体:(1)对照组:没有任何曝光过滤的个性化推荐结果。(2)处理a:没有任何曝光过滤的随机推荐结果。(3)处理b:通过VIP等级过滤的个性化推荐结果。(4)处理c:通过perCLTV过滤的个性化推荐结果。
  • 环境。对于每个变体,我们可以在相同的环境中确定相应的候选人并触发弹窗推荐。
  • 指标。我们主要观察转化率(CVR)和每用户平均收入(ARPU)来评估不同变体的主要效果。

如表7所示,从2020年11月17日到11月23日,在线A/B测试显示,基于perCLTV的过滤策略在所有处理变体中表现最佳,与对照变体相比,转化率(CVR)提高了约3.12倍,每用户平均收入(ARPU)提高了约3.54倍,配对样本t检验的P值<0.01。

7.2 流失干预

在网络游戏中,通过奖励来留住那些打算离开的玩家是常见做法。流失干预旨在充分利用奖励资源,最大化玩家的留存,而不影响正常玩家的体验。因此,流失干预的关键不仅是选择流失意图高的玩家,更重要的是筛选出具有高价值、能为游戏公司带来更大回报的玩家。为此,我们在《爱即正义》中部署了基于perCLTV的玩法来留住玩家。在perCLTV的帮助下,我们可以选择具有高流失意图的有价值玩家作为候选人。一旦选定的玩家登录,一些定制任务将被推送。玩家接受任务后,只要完成相应的活动,例如连续登录,就可以获得丰厚的奖励。同样,我们通过在线A/B测试在生产环境中评估它,如图12(b)所示,具体如下:

  • 因素。我们设置了不同的推送策略作为我们的因素,以研究流失干预的主要效果。
  • 变体。我们设计了两个流量相等的变体:(1)对照组:随机推送给所有玩家。(2)处理组:基于perCLTV预测的选择性推送。
  • 环境。对于每个变体,我们可以确定相应的候选人,并在他们登录时推送定制任务作为流失干预。
  • 指标。我们主要观察四个指标:7天在线天数(OD)、7天在线时间(OT)、3天转化率(CR)和7天转化率(CR),以评估不同变体的主要效果。

如表8所示,从2020年10月1日到10月30日,在线A/B测试显示,处理变体在配对样本t检验中显著优于对照变体,P值<0.01。结果显示,7天OD和OT分别增加了约0.19天和约0.08小时,而3天CR和7天CR分别减少了约2.5%和约2.0%。

8 结论

在这项工作中,我们提出了一种新的在线游戏个性化用户生命周期价值预测方法,称为perCLTV。具体来说,我们提供了多条证据支持多任务学习,表明它在CLTV预测的个性化和性能方面有着很大的改进潜力。受此启发,我们从流失预测和付费预测两个子任务的多任务学习方式重新审视了个性化CLTV预测。此外,我们设计了一种顺序门控多任务学习方式,以进一步增强流失和付费之间的个性化关联,从而提高两个子任务的性能。在此基础上,我们开发了一个通用框架,用于跨不同类型游戏的CLTV建模,利用异构玩家行为数据,包括个体行为序列数据和社交行为图数据,无需外部特征工程。对三个真实数据集的综合实验验证了我们提出的方法perCLTV的有效性和合理性,显著优于其他基线方法。此外,我们的工作已在网易游戏发布的许多在线游戏中实施和部署,在实际游戏场景中实现了显著有效的流失干预和弹窗推荐。在线A/B测试显示,在perCLTV的帮助下,这两个应用分别取得了显著改进,转化率(CVR)增加了约3.12倍,流失率(CR)减少了约2.0%。未来,我们将进一步研究我们提出的方法以获得更好的性能,并将我们的工作扩展到在线游戏中的更多应用。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值